Я пытаюсь создать XSD, который проверяет XML только в том случае, если оба узла A и B существуют или оба не существуют (шлюз XNOR).
Однако я проверил Интернет без какой-либо удачи.
<root> <A>a</A> <B>b</B> <C>c</C> </root>
Я нашел решение:
<?xml version="1.0" encoding="utf-8"?> <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="root" type="root"/> <xs:complexType name="root"> <xs:sequence> <xs:choice> <xs:sequence> <xs:element name="a" type="xs:string" /> <xs:element name="b" type="xs:string" /> </xs:sequence> <xs:sequence></xs:sequence> </xs:choice> <xs:element name="c" type="xs:string" /> </xs:sequence> </xs:complexType>