Я читал различные источники и тестировал различные методы, но я до сих пор не могу понять это правильно.Как объявить атрибут для элемента в XSD
Произнесите XML является:
<?xml version="1.0"?>
<zoo xmlns="http://www.example.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.example.com zoo.xsd">
<animal id="l123444">
<name>Mighty</name>
<type>lion</type>
<kg>135</kg>
</animal>
<animal id="b343234">
<name>Lucky</name>
<type>bear</type>
<kg>205</kg>
</animal>
</zoo>
Как я должен написать XSD?
Вот что я получил:
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.example.com"
xmlns="http://www.example.com"
elementFormDefault="qualified">
<xs:element name="zoo"><xs:complexType><xs:sequence>
<xs:element name="animal" maxOccurs="unbounded">
<xs:complexType>
<xs:extension base="xs:string">
<xs:attribute name="id"/>
</xs:extension>
<xs:sequence>
<xs:element name="name" type="xs:string"/>
<xs:element name="type"><xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="lion"/>
<xs:enumeration value="bear"/>
<xs:enumeration value="tiger"/>
</xs:restriction>
</xs:simpleType></xs:element>
<xs:element name="kg"><xs:simpleType>
<xs:restriction base="xs:integer">
<xs:minInclusive value="10"/>
<xs:maxInclusive value="5000"/>
</xs:restriction>
</xs:simpleType></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence></xs:complexType></xs:element>
</xs:schema>
я мог получить документ подтверждено изначально. Когда я попытался добавить и объявить атрибут id, проверка не удалась. Любая подсказка?
Спасибо. Теперь я работаю. Мне никогда не приходило в голову, что порядок имеет значение. –