Визуальная часть схемы и обозначения необходимо понимать по следующим правилам.

Элементы

Те поля в XML, которые выглядят, как название поля над подчиненными называются элементами схемы.

Принцип обязательности наличия элемента в XML-сообщении определяется следующим обозначениями на схеме XSD:

ОбозначениеОписаниеПример
1..1Обязательно наличие элемента, но не более 1 во вложенном элементе верхнего уровня.

0..1Необязательно наличие элемента, но если применяется, то не более одного во вложенном элементе верхнего уровня.

1..∞Обязательно наличие, как минимум одного элемента. Количество неограниченно во вложенном элементе верхнего уровня.

0..∞Необязательно, наличие элемента, но если применяется, то количество не ограничено во вложенном элементе верхнего уровня.

Атрибуты

Используемые типы данных на схемах XSD для интеграции

Тип данныхНазваниеПример 
string

Текст

Строка символов в виде последовательности символов Unicode и ISO/IEC 10646, включая символы пробела. 

Для SetRetail без перевода строки или табуляции


<name>Мясо свежее 2389/333</name>


boolean

Логический

Принимает только значения в виде true или false.

Не принимаются значения 1 или 0 при импорте в SetRetail.


<marked>true</marked>



list

Список

Перечисление списка значений через пробел в одном элементе.


<shop-indices>123 455 3988 3498</shop-indices>


int

Числовой

Любое целое число.


<AdvertisingAction ....>
        ....
		<actionResults>
            <notification limit="4"/>
		</actionResults>
</AdvertisingAction>


decimal

Числовые десятичные типы данных, используемые для определения числовых значений разделенный точкой


price="5.6"

<price-entry 

marking-of-the-good="1224" 
currency="RUB" 

price="5.6" 

price-type="DISCOUNT_PERCENT">


float32-х битное число с плавающей точкой. Разделение точкой обязательно.


<vat>18.0</vat>


double64-х битное число с плавающей точкой. Разделение точкой обязательно.


<AdvertisingAction priority = "12.344" ....>
      ....
</AdvertisingAction>


long64-разрядное (большое) целое число без разделителя.


<AdvertisingAction ....>
    ....
	<actionResults>
            <bonus AccountTypeID="34923784872349878"/>
	</actionResults>
</AdvertisingAction>


dateTimeВремя в виде комбинации календарной даты и времени.


<begin-date>2012-02-21T00:00:00Z</begin-date>


nonNegativeIntegerНеотрицательное целое число, от 0 и больше.


<AdvertisingAction ....>
    ....
	<externalConditions>
        <birthday-condition days-before="10"/>
	</externalConditions>
</AdvertisingAction>


positiveIntegerПоложительное целое число, от 0 и больше.


<AdvertisingAction ....>
    ....
	<pricetag-template count="1"/>
</AdvertisingAction>


[...]Type

Комплексный тип элемента. Если присутствует, то у элемента есть наличие атрибутов.

Если такой тип есть у атрибута, то, тогда у него есть список из значений.


<AdvertisingAction mode = "by-condition" ....>
     ....
</AdvertisingAction>