XML Tutorial/XML Schema/NMTOKEN — различия между версиями
(нет различий)
|
Версия 21:22, 25 мая 2010
The NMTOKEN datatype is derived from the token type
<source lang="xml">
<xsd:element name="title">
<xsd:complexType> <xsd:complexContent> <xsd:extension base="xsd:anyType"> <xsd:attribute name="degree" type="xsd:NMTOKEN"/> </xsd:extension> </xsd:complexContent> </xsd:complexType>
</xsd:element>
<title degree="MS">Mister</title></source>
Use xs:NMTOKEN
<source lang="xml">
File: Data.xml <?xml version="1.0"?> <library>
<book id="b0836217462" available="true"> <isbn>1111111111</isbn> <title lang="en">Java</title> <author id="CMS"> <name></name> <born>2008-11-26</born> <dead>2000-02-12</dead> </author> <character id="Snoopy"> <name>Snoopy</name> <born>1950-10-04</born> <qualification>not</qualification> </character> </book>
</library> File: Schema.xsd <?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="name" type="xs:token"/> <xs:element name="qualification" type="xs:token"/> <xs:element name="born" type="xs:date"/> <xs:element name="dead" type="xs:date"/> <xs:element name="isbn" type="xs:NMTOKEN"/> <xs:attribute name="id" type="xs:ID"/> <xs:attribute name="available" type="xs:boolean"/> <xs:attribute name="lang" type="xs:language"/> <xs:element name="title"> <xs:complexType> <xs:simpleContent> <xs:extension base="xs:token"> <xs:attribute ref="lang"/> </xs:extension> </xs:simpleContent> </xs:complexType> </xs:element> <xs:element name="library"> <xs:complexType> <xs:sequence> <xs:element ref="book" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="author"> <xs:complexType> <xs:sequence> <xs:element ref="name"/> <xs:element ref="born"/> <xs:element ref="dead" minOccurs="0"/> </xs:sequence> <xs:attribute ref="id"/> </xs:complexType> </xs:element> <xs:element name="book"> <xs:complexType> <xs:sequence> <xs:element ref="isbn"/> <xs:element ref="title"/> <xs:element ref="author" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="character" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> <xs:attribute ref="id"/> <xs:attribute ref="available"/> </xs:complexType> </xs:element> <xs:element name="character"> <xs:complexType> <xs:sequence> <xs:element ref="name"/> <xs:element ref="born"/> <xs:element ref="qualification"/> </xs:sequence> <xs:attribute ref="id"/> </xs:complexType> </xs:element>
</xs:schema></source>