Область применения Схемы и Схематрона - PullRequest
0 голосов
/ 29 августа 2011

У меня есть элемент, который может иметь различную структуру в зависимости от определенных ограничений.Элемент определен как:

<xs:complexType name="MyElement">
    <xs:sequence>
        <xs:element name="Child"/>
        <xs:element name="Child1" minOccurs="0"/>
    </xs:sequence>
</xs:complexType>

У меня также есть элемент, который имеет несколько MyElement.Но я хочу сказать, что

  • Первое вхождение должно иметь Child1, а для всех других вхождений Child1 может быть необязательным.
  • Все нечетные вхождения должны иметь Child1 и длячетные вхождения Child1 могут быть необязательными.
  • Если значение Child равно R, то должен присутствовать элемент Child1.

Я не хочу решения;Я хочу знать, какую технологию вы бы использовали для решения такого рода проблем.Только схема или Схема и Схематрон ?Я заинтересован в знании области действия XML Schema и Schematron.

1 Ответ

0 голосов
/ 30 августа 2011

Вам потребуется использовать Schematron со схемой 1.0.

Схема не имеет возможности выразить условную логику, которую вы описываете. Schematron идеально подходит для этого сценария и может быть легко использован для кодирования и проверки этих правил проверки.

Возможно определить такие ограничения / проверки, используя Утверждения схемы 1.1 .

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