Использование XSD схем с сайта nalog.ru (Атомарная модель содержания не соответствует определению типа значения)
День добрый! С наступающим праздником!
Пол дня искал нужный XSD на сайте налоговой, нашёл, но не могу воспользоваться. При загрузке в дерево конфигурации - ругается:
Ошибка проверки модели XDTO: xdto-valueType-6.1 (определение анонимного типа) свойство: Индекс (определение анонимного типа) свойство: Документ (определение анонимного типа) свойство: Файл пакет:
Атомарная модель содержания не соответствует определению типа значения
Если подгружать фабрику через файл:
Фабрика = СоздатьФабрикуXDTO(ФайлФабрики);
Вылетает та же ошибка.
Работал последний раз XDTO давно, уже ничерта не помню, но не забыл как собрать XDTO пакет руками. И этот навык я оставлю на крайний случай.
Люди опытные, подскажите, стоит ли уповать на XSD с налоговой, можно ли что-то с ними сделать? (Или сразу выкинуть и забыть)
Интересует именно методика исправления под возможность использования подобных схем в 1С, вознаграждение будет отдано за неё.
Интернет я сегодня терзал пол дня - не нашёл.
Пол дня искал нужный XSD на сайте налоговой, нашёл, но не могу воспользоваться. При загрузке в дерево конфигурации - ругается:
Ошибка проверки модели XDTO: xdto-valueType-6.1 (определение анонимного типа) свойство: Индекс (определение анонимного типа) свойство: Документ (определение анонимного типа) свойство: Файл пакет:
Атомарная модель содержания не соответствует определению типа значения
Если подгружать фабрику через файл:
Фабрика = СоздатьФабрикуXDTO(ФайлФабрики);
Вылетает та же ошибка.
Работал последний раз XDTO давно, уже ничерта не помню, но не забыл как собрать XDTO пакет руками. И этот навык я оставлю на крайний случай.
Люди опытные, подскажите, стоит ли уповать на XSD с налоговой, можно ли что-то с ними сделать? (Или сразу выкинуть и забыть)
Интересует именно методика исправления под возможность использования подобных схем в 1С, вознаграждение будет отдано за неё.
Интернет я сегодня терзал пол дня - не нашёл.
Прикрепленные файлы:
KO_RRMORNDS.2_1_815_02_05_01_01.xsd
Найденные решения
(1)В файле у xsd схемы объявлено пространство имен для типов текущей схемы ns1 - xmlns:ns1="https://lalala".
При этом типы ДатаТип и КНДТип в элементе Файл не содержат пространство имен.
Починить легко.
В заголовке заменить пространство имен xmlns:ns1="https://lalala" на xmlns="https://lalala".
Второй вариант не менять пространство имен в заголовке, а назначить его для типов ДатаТип и КНДТип, у элементов, которые используют этот тип.
Файл с исправленным пространством имен во вложении.
При этом типы ДатаТип и КНДТип в элементе Файл не содержат пространство имен.
Починить легко.
В заголовке заменить пространство имен xmlns:ns1="https://lalala" на xmlns="https://lalala".
Второй вариант не менять пространство имен в заголовке, а назначить его для типов ДатаТип и КНДТип, у элементов, которые используют этот тип.
Файл с исправленным пространством имен во вложении.
Прикрепленные файлы:
KO_RRMORNDS.2_1_815_02_05_01_01.xsd
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1)В файле у xsd схемы объявлено пространство имен для типов текущей схемы ns1 - xmlns:ns1="https://lalala".
При этом типы ДатаТип и КНДТип в элементе Файл не содержат пространство имен.
Починить легко.
В заголовке заменить пространство имен xmlns:ns1="https://lalala" на xmlns="https://lalala".
Второй вариант не менять пространство имен в заголовке, а назначить его для типов ДатаТип и КНДТип, у элементов, которые используют этот тип.
Файл с исправленным пространством имен во вложении.
При этом типы ДатаТип и КНДТип в элементе Файл не содержат пространство имен.
Починить легко.
В заголовке заменить пространство имен xmlns:ns1="https://lalala" на xmlns="https://lalala".
Второй вариант не менять пространство имен в заголовке, а назначить его для типов ДатаТип и КНДТип, у элементов, которые используют этот тип.
Файл с исправленным пространством имен во вложении.
Прикрепленные файлы:
KO_RRMORNDS.2_1_815_02_05_01_01.xsd
(1) Вот с таким изменением прошла проверку. Что-то было подобное, но не помню, по какой причине нужно было указать базовый тип.
В руководстве разработчика есть только:
В руководстве разработчика есть только:
Если свойство Вариант (модель содержания) определения типа установлено, то оно не должно противоречить определению типа:
● если свойство имеет значение Атомарный, то тип имеет атомарную модель содержания и должен удовлетворять правилам xdto-valueType-5.1;
● если свойство имеет значение Атомарный, то тип имеет атомарную модель содержания и должен удовлетворять правилам xdto-valueType-5.1;
Прикрепленные файлы:
Закомментировать описание типа и значение (пример ниже)
<xs:attribute name="КНД" type="КНДТип" use="required">
<xs:annotation>
<xs:documentation>Код формы по КНД</xs:documentation>
</xs:annotation>
<!--
<xs:simpleType>
<xs:restriction base="КНДТип">
<xs:enumeration value="1167005"/>
</xs:restriction>
</xs:simpleType>
-->
</xs:attribute>
<xs:attribute name="КНД" type="КНДТип" use="required">
<xs:annotation>
<xs:documentation>Код формы по КНД</xs:documentation>
</xs:annotation>
<!--
<xs:simpleType>
<xs:restriction base="КНДТип">
<xs:enumeration value="1167005"/>
</xs:restriction>
</xs:simpleType>
-->
</xs:attribute>
Дополню: xmlns должно быть не просто уникальным, а и должно соответствовать targetNamespace
Собственно, в файле примере так и есть. targetNamespace="https://lalala" xmlns="https://lalala".
Пояснение: атрибутом targetNamespace мы определяем пространство имен для текущей схемы, а атрибут xmlns без префикса определяет пространство имен по умолчанию.
Собственно, в файле примере так и есть. targetNamespace="https://lalala" xmlns="https://lalala".
Пояснение: атрибутом targetNamespace мы определяем пространство имен для текущей схемы, а атрибут xmlns без префикса определяет пространство имен по умолчанию.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот