XML/XML Schema/enumeration
Версия от 18:22, 25 мая 2010; (обсуждение)
enumeration restriction on anyURI
File: Data.xml
<?xml version="1.0"?>
<images xmlns="http://www.wbex.ru"
xmlns:ex="http://www.wbex.ru"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=
"http://www.wbex.ru
Schema.xsd">
<image/> <!-- Using the default value -->
<image src="http://www.wbex.ru/style/logo.png"/> <!-- Not using the default value -->
</images>
File: Schema.xml
<?xml version="1.0"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.wbex.ru"
xmlns="http://www.wbex.ru"
elementFormDefault="qualified">
<xsd:element name="image">
<xsd:complexType>
<xsd:attribute name="src" default="http://www.wbex.ru">
<xsd:simpleType>
<xsd:restriction base="xsd:anyURI">
<xsd:enumeration value="http://www.wbex.ru"/>
<xsd:enumeration value="http://www.wbex.ru/style/logo.png"/>
<xsd:enumeration value="http://www.wbex.ru/isbn.html"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
</xsd:complexType>
</xsd:element>
<xsd:element name="images">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="image" maxOccurs="2"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
xs:enumeration allows definition of a list of possible values as well as works on the value space
File: Data.xml
<?xml version="1.0"?>
<data xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.wbex.ru Schema.xsd"
xmlns="http://www.wbex.ru"
>
2001
</data>
File: Schema.xsd
<?xml version="1.0"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.wbex.ru" xmlns="http://www.wbex.ru"
elementFormDefault="qualified">
<xsd:element name="data" type="myDates"/>
<xsd:simpleType name="myDates">
<xsd:restriction base="xsd:gYear">
<xsd:enumeration value="2001" />
<xsd:enumeration value="2002" />
<xsd:enumeration value="2003" />
</xsd:restriction>
</xsd:simpleType>
</xsd:schema>
xs:enumeration and xs:float
File: Data.xml
<?xml version="1.0"?>
<data xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.wbex.ru Schema.xsd"
xmlns="http://www.wbex.ru"
>
1.618033989
</data>
File: Schema.xsd
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.wbex.ru" xmlns="http://www.wbex.ru"
elementFormDefault="qualified">
<xs:element name="data" type="myEnumeration"/>
<xs:simpleType name="myEnumeration">
<xs:restriction base="xs:float">
<xs:enumeration value="-INF" />
<xs:enumeration value="1.618033989" />
<xs:enumeration value="3e3" />
</xs:restriction>
</xs:simpleType>
</xs:schema>