Не могу экспортировать в xml-файл при абсолютно валидном xsd (валидировал онлайн и python

0 голосов
Igor Akulov в категории Интеграция
Фрагмент xsd:

<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="Rows">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="Row">
          <xs:complexType>
            <xs:sequence>
              <xs:element type="xs:string" name="cnt_doubles"/>

Это прямой экспорт из excel. Типы данных excel и xsd совпадают (string)

Ошибка: СООБЩЕНИЕ: XSD-схема не позволяет экспортировать элемент /Rows{}/Row/cnt_doubles в текущий XML-документ\r\n", "ExceptionClass": "EBGException"}

Нагуглить не смог. Как и где получить расширенную диагностику валидатора.

Есть ощущение, что из источника excel приходят какие-то не те типы. Но в xml-мэппере они оба обозначены как "string" и мэппер с успехом автоматически соединяет все поля между собой.

Ответ: 1 шт.

+1 голос
Анастасия Жук
 
Лучший ответ

Добрый день!

XSD-схема, описанная в вопросе, позволяет экспортировать только одну строку.

Для экспорта массива строк необходимо добавить индикаторы частотности maxOccurs и minOccurs

Например, строка xsd-файла будет выглядеть так:

 <xs:element name="Row" minOccurs="0" maxOccurs="unbounded">

В таком случае можно будет экспортировать неограниченное число строк, начиная от нуля.

...