2017-01-31 18 views
2

Я пытаюсь написать правило схематрона как таковое: Атрибут владельца существует, только если атрибут name существует. Например:Мне нужно правило схемы, которое обеспечивает существование атрибута только в том случае, если первый атрибут существует первым.

<business name="n1" owner="o1" /> 

Атрибут владельца может существовать только в том случае, если атрибут name существует. Благодаря!

+2

Если вы можете использовать XSD 1.1 можно добавить '' , вам не нужен Schematron. Вам действительно нужен схематор? (Обратите внимание, что вы отметили свой вопрос с помощью xsd, поэтому я предполагаю, что у вас уже есть схема). – potame

+0

@potame: С должным уважением, Schematron имеет свои преимущества. Возможно, более справедливое возражение против рейза было бы просто потому, что вопрос о Schematron имеет тег XSD. – kjhughes

ответ

2

Вы можете утверждать, что либо оба @owner и @name существует, или @owner нет:

<rule context="business"> 
    <assert test="(@owner and @name) or not(@owner)"> 
    The owner attribute requires the name attribute. 
    </assert> 
</rule> 

 Смежные вопросы

  • Нет связанных вопросов^_^