Редактировать: Это не мой последний вопрос, потому что я больше не хотел задавать оба вопроса одновременно.
Я хочу указать, что мой узел настройки имеет:
<setting name='Some Setting'>
SomeData
</setting>
схема:
<xs:element name="setting">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="name" type="xs:string" use="required" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
или
<setting name='Some Setting'>
<value>SomeData</value>
</setting>
схема:
<xs:element minOccurs="0" name="setting">
<xs:complexType>
<xs:sequence>
<xs:element name="value" type="xs:string" />
</xs:sequence>
<xs:attribute name="name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
но не оба.
Я не могу понять, как объединить их в общую схему. Я пытался использовать <xs:choice />
, но жалуется, что элементы с одинаковыми именами должны быть одного типа