извиняюсь, если об этом уже спрашивали, но я искал сайт ...
В любом случае, я пытался решить, как обеспечить выбор одного и только одного элемента в XML-схеме.
Например, скажем, вам нужно выбирать между одним яблочным, апельсиновым или банановым элементом, но у вас НЕТ яблок, апельсинов или банановых элементов.
Теперь я попробовал это:
<?xml version="1.0" encoding="utf-8" ?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://tempuri.org/Fruit"
xmlns="http://tempuri.org/Fruit"
elementFormDefault="qualified">
<xsd:complexType mixed="true">
<xsd:sequence>
<xsd:choice minOccurs="0" maxOccurs="1">
<xsd:element name="banana" type="xsd:string"/>
<xsd:element name="apple" type="xsd:string"/>
<xsd:element name="orange" type="xsd:string"/>
</xsd:choice>
</xsd:sequence>
</xsd:complexType mixed="true">
</xsd:schema>
Теперь это здорово, однако <choice>
не один и только один , но на самом деле ноль или только один . Как бы я обеспечил, чтобы количество элементов в файле определения схемы XML было единичным?