全局声明:
也就是直接处于<xs:schema>下元素或属性的声明。
局部声明:
处于复杂类型定义之下元素或属性的声明。
例:
XML文档:
<?xml version="1.0"?>
<books xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="027.xsd" id="3">
<name id="001">XML学习天下
<author>张三</author>
<price>88.50</price>
</name>
<name id="002">XML百例
<author>李四</author>
<author>赵五</author>
<price>68.00</price>
</name>
</books>
Schema文档:
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="books">
<xs:complexType>
<xs:sequence>
<xs:element name="name" type="name_book" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute ref="id" use="required"/>
</xs:complexType>
</xs:element>
<xs:complexType name="name_book" mixed="true">
<xs:sequence>
<xs:element name="author" type="xs:string" maxOccurs="3"/>
<xs:element name="price" type="xs:decimal"/>
</xs:sequence>
<xs:attribute ref="id" use="required"/>
</xs:complexType>
<xs:attribute name="id" type="xs:integer"/>
</xs:schema>
说明:
<books>元素声明为全局声明;
<name>、<author>和<price>均为局部声明;
<books>里的属性id为全局元素属性;
<name>里的属性id为局部元素属性。
也就是直接处于<xs:schema>下元素或属性的声明。
局部声明:
处于复杂类型定义之下元素或属性的声明。
例:
XML文档:
<?xml version="1.0"?>
<books xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="027.xsd" id="3">
<name id="001">XML学习天下
<author>张三</author>
<price>88.50</price>
</name>
<name id="002">XML百例
<author>李四</author>
<author>赵五</author>
<price>68.00</price>
</name>
</books>
Schema文档:
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="books">
<xs:complexType>
<xs:sequence>
<xs:element name="name" type="name_book" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute ref="id" use="required"/>
</xs:complexType>
</xs:element>
<xs:complexType name="name_book" mixed="true">
<xs:sequence>
<xs:element name="author" type="xs:string" maxOccurs="3"/>
<xs:element name="price" type="xs:decimal"/>
</xs:sequence>
<xs:attribute ref="id" use="required"/>
</xs:complexType>
<xs:attribute name="id" type="xs:integer"/>
</xs:schema>
说明:
<books>元素声明为全局声明;
<name>、<author>和<price>均为局部声明;
<books>里的属性id为全局元素属性;
<name>里的属性id为局部元素属性。