Пол дня искал нужный XSD на сайте налоговой, нашёл, но не могу воспользоваться. При загрузке в дерево конфигурации - ругается:
Ошибка проверки модели XDTO: xdto-valueType-6.1 (определение анонимного типа) свойство: Индекс (определение анонимного типа) свойство: Документ (определение анонимного типа) свойство: Файл пакет: https://lalala Атомарная модель содержания не соответствует определению типа значения
Если подгружать фабрику через файл:
Фабрика = СоздатьФабрикуXDTO(ФайлФабрики);
Вылетает та же ошибка.
Работал последний раз XDTO давно, уже ничерта не помню, но не забыл как собрать XDTO пакет руками. И этот навык я оставлю на крайний случай.
Люди опытные, подскажите, стоит ли уповать на XSD с налоговой, можно ли что-то с ними сделать? (Или сразу выкинуть и забыть)
Интересует именно методика исправления под возможность использования подобных схем в 1С, вознаграждение будет отдано за неё.
Интернет я сегодня терзал пол дня - не нашёл.
(1)В файле у xsd схемы объявлено пространство имен для типов текущей схемы ns1 - xmlns:ns1="https://lalala".
При этом типы ДатаТип и КНДТип в элементе Файл не содержат пространство имен.
Починить легко.
В заголовке заменить пространство имен xmlns:ns1="https://lalala" на xmlns="https://lalala".
Второй вариант не менять пространство имен в заголовке, а назначить его для типов ДатаТип и КНДТип, у элементов, которые используют этот тип.
Файл с исправленным пространством имен во вложении.
(1)В файле у xsd схемы объявлено пространство имен для типов текущей схемы ns1 - xmlns:ns1="https://lalala".
При этом типы ДатаТип и КНДТип в элементе Файл не содержат пространство имен.
Починить легко.
В заголовке заменить пространство имен xmlns:ns1="https://lalala" на xmlns="https://lalala".
Второй вариант не менять пространство имен в заголовке, а назначить его для типов ДатаТип и КНДТип, у элементов, которые используют этот тип.
Файл с исправленным пространством имен во вложении.
(1) Вот с таким изменением прошла проверку. Что-то было подобное, но не помню, по какой причине нужно было указать базовый тип.
В руководстве разработчика есть только:
Если свойство Вариант (модель содержания) определения типа установлено, то оно не должно противоречить определению типа:
● если свойство имеет значение Атомарный, то тип имеет атомарную модель содержания и должен удовлетворять правилам xdto-valueType-5.1;
Дополню: xmlns должно быть не просто уникальным, а и должно соответствовать targetNamespace
Собственно, в файле примере так и есть. targetNamespace="https://lalala" xmlns="https://lalala".
Пояснение: атрибутом targetNamespace мы определяем пространство имен для текущей схемы, а атрибут xmlns без префикса определяет пространство имен по умолчанию.