Гость
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / xsd choice sequence / 2 сообщений из 2, страница 1 из 1
23.08.2017, 17:34
    #39509488
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xsd choice sequence
Можно ли на XSD описать такие правила
1) есть элементы a, b, c
2) если элемент с отсутствует, то элементы а, b обязательны
3) если элемент с присутствует, а элемент а отсутствует, то вместо b нужно вставить элемент d
4) элемент b идет строго за a, а d, за с

Примеры валидных документов
Код: xml
1.
2.
<a/>
<b/>


Код: xml
1.
2.
3.
<a/>
<b/>
<c/>


Код: xml
1.
2.
<c/>
<d/>


Если это упрощает задачу, то элемент c можно объявить перед а
Код: xml
1.
2.
3.
<c/>
<a/>
<b/>



С уважением, Vasilisk
...
Рейтинг: 0 / 0
23.08.2017, 17:43
    #39509501
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xsd choice sequence
Странно, вот так
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
            <xsd:choice>
              <xsd:sequence>
                <xsd:element name="c"/>
                <xsd:element name="d"/>
              </xsd:sequence>
              <xsd:sequence>
                <xsd:element name="a"/>
                <xsd:element name="b"/>
                <xsd:element name="c" minOccurs="0"/>
              </xsd:sequence>
            </xsd:choice>

заработало. А я думал, что будет конфликт определений элемента с
...
Рейтинг: 0 / 0
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / xsd choice sequence / 2 сообщений из 2, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]