Имя: Пароль:
1C
 
EnterpriseData - sequence, вы что, серьёзно?
0 Гений 1С
 
гуру
12.07.21
08:34
В ОРП есть раздел оплаты платежными картами, там такая XSD схема:

    <xs:complexType name="ОплатаПлатежнымиКартами.Строка">
        <xs:sequence>
            <xs:element name="СуммаОплаты" type="tns:ТипСумма"/>
            <xs:element name="ВидКарты" type="xs:string" minOccurs="0"/>
            <xs:element name="НомерКарты" type="xs:string"/>
            <xs:element name="Эквайрер" type="tns:КлючевыеСвойстваКонтрагент" minOccurs="0"/>
            <xs:element name="ДоговорЭквайринга" type="tns:КлючевыеСвойстваДоговор" minOccurs="0"/>
            <xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
        <xs:anyAttribute namespace="##any" processContents="lax"/>
    </xs:complexType>

Правильно ли я понимаю, что если сначала написать ВидКарты, а потом СуммаОплаты, то будет ошибка?
Спрашивается - нельзя ли было использовать не упорядоченную последовательность XSD или XSD не имеет такой последовательности?
Что за бред?
1 acht
 
12.07.21
08:41
Геня, как же ты задолбал.
2 Ненавижу 1С
 
гуру
12.07.21
08:41
(0) Что за бред так формулировать вопросы
Где будет ошибка?
Почему так решил?
Может стоит говорить о конкретной особенности реализации?

https://coderoad.ru/1131495/В-XML-году-важен-ли-порядок
3 Гений 1С
 
гуру
12.07.21
08:53
(2) БП3. Загрузка данных из EnterpriseData
e1cib/app/Обработка.ВыгрузкаЗагрузкаEnterpriseData
4 RomaH
 
naïve
12.07.21
09:01
(0) правильно понимаешь
согласен - бред
(2) ошибка будет, если порядок элементов нарушить, потому как "sequence"
5 Василий Алибабаевич
 
12.07.21
09:12
Ну так все правильно. Последовательность оно для того и предназначена. В общем случае следующее значение в кортеже зависит от значения предыдущего. Типовой пример - отношение к воинской обязанности в зависимости от пола. Странно было бы начинать понимать воинское звание у невоеннообязанного.
6 Вафель
 
12.07.21
09:17
Так вроде при работе с объектами оно само все.
Или ты руками хмл собираешь?
7 Гений 1С
 
гуру
12.07.21
09:17
(5) это была хорошая попытка, но объект XDTO грузится целиком, поэтому какая разница, какой порядок полей?
8 Гений 1С
 
гуру
12.07.21
09:17
(6) руками
9 Вафель
 
12.07.21
09:20
Наверно хотели чтобы сумма оплаты первая шла. Для тех кто читает последовательно
10 Вафель
 
12.07.21
09:20
(8) а что за задача что руками нужно?
11 Гений 1С
 
гуру
12.07.21
09:43
(10) там не я формирую XSD, а чуваки с сайта.
12 acht
 
12.07.21
09:49
(7) Геня, кроме объекта XDTO есть и другие способы чтения.
13 mistеr
 
12.07.21
09:57
(0) >Спрашивается - нельзя ли было использовать не упорядоченную последовательность XSD

Можно. Но так проще. Для них в первую очередь, т.к. тестировать все возможные последовательности пустая трата ресурсов. Да и для всех остальных не проблема обеспечить нужный порядок. Как в любом бинарном формате, например.

Так что не раздувай из мухи слона.
14 Eiffil123
 
12.07.21
10:13
(11) так что мешает снять с поддержки пакет и внести изменения. поставщик xml должен поставлять данные в соответствии с контрактом. контракт определяет структуру через xsd.
15 Eiffil123
 
12.07.21
10:14
(1) к чему такие ценные комментарии при обсуждении технических вопросов? неужели для этого мало ветки с флудом по коронавирусу, политике и тд?
16 Вафель
 
12.07.21
10:27
(13) зачем нужно тестировать все последовательности?
17 Вафель
 
12.07.21
10:27
(14) за такое сразу к стенке
18 mistеr
 
12.07.21
10:42
(16) См. (5)
19 Вафель
 
12.07.21
10:44
И что тут от чего зависит?
20 acht
 
12.07.21
10:52
(14) Совет, достойный Гени.
21 Гений 1С
 
гуру
12.07.21
11:43
(14) а чем заменить секвенс?
22 Гений 1С
 
гуру
12.07.21
11:43
(13) прям аблокат диавола
23 Василий Алибабаевич
 
12.07.21
11:53
(21) "xsd:all элемент позволяет элементам в группе быть (или не быть) в любом порядке в составе элемента."

"
All group
The All group specifies that all the elements defined in this group must appear once in the XML document. These elements can appear in any order in the XML document.
"
ЦЫ https://docs.oracle.com/cd/B14099_19/integrate.1012/b14069/xsd.htm
24 Garykom
 
гуру
12.07.21
12:04
(23) немного не так https://coderoad.ru/16101488/Разница-между-xsd-all-и-xsd-sequence-в-определении-схемы

xsd:all 0 или 1 раз в любом порядке

xsd:sequence maxOccurs="unbounded" в (0)
25 Garykom
 
гуру
12.07.21
12:06
короче строчка <xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
чтобы "доп. реквизиты" засунуть любое кол-во от 0 до хз сколько
26 Eiffil123
 
12.07.21
12:28
(20) еще один комментарий не по теме топика от вас. В чем видите недостатки данного решения?
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой