xml схема: проверить, возрастает ли список - PullRequest
0 голосов
/ 24 апреля 2020

У меня в элементе xml есть атрибут «period», который представляет собой список из 2 дат. например period = "2020-01-01 2020-03-31"

Есть ли способ проверить с помощью схемы xml, является ли этот список возрастающим (первая дата меньше или равна второй дате)?

мой xml код схемы:

'''
<xsd:simpleType name="type-list-date">
    <xsd:list itemType="xsd:date"/>
</xsd:simpleType>

<xsd:simpleType name="type-period">
    <xsd:restriction base="type-list-date">
        <xsd:length value="2"/>
    </xsd:restriction>
</xsd:simpleType>
'''

Большое спасибо.

1 Ответ

0 голосов
/ 24 апреля 2020

Боюсь, что нет. Простой тип схемы описывает одно значение atomi c, а тип List - это просто последовательность несвязанных экземпляров простого типа. Похоже, что в вашем списке ровно два члена, поэтому можно написать логическое выражение XPath, которое возвращает true, если ваше ограничение выполнено.

Если бы я проектировал этот формат XML, я бы поставил две даты в отдельных атрибутах / тегах с именами «startDate» и «endDate» (или аналогичными).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...