`

XML Schema续

阅读更多

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:simpleType name="myType">
		<xs:list itemType="xs:integer"/>
	</xs:simpleType>
	<xs:element name="hello" type="myType"/>
</xs:schema>
hello元素是一个简单类型 基于整数的list 用空格分开即可
对应的有效xml:
<?xml version="1.0" encoding="UTF-8"?>
<hello xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="test6.xsd">

1 2 3 4

</hello>


complexType与simpleType区别(重要)
1 simpleType类型的元素中不能包含元素或者属性
2 当需要声明一个元素的子元素和/或属性时,用complexType;
3 当需要基于内置的基本数据类型定义一个新的数据类型时,用simpleType。

targetNamespace

在Schema中targetNamespace定义了Schema定义出的新元素与属性的名称空间。也就是它是对所定义的XML模型进行限制:限制定义出的元素,或者属性的名称空间。与targetNamespace相关的还有两个属性:elementFormDefault ,attributeFormDefault,这两个属性的缺省值都是unqualified。 如果定义为unqualified表示定义的元素的名称空间可以缺省,此时直接引用父元素的名称空间。如果是qualified则表示,必需要指明名称空间,不能直接引用其父元素的,要指明。(如果Schema限定的文档,刚好定义了”空的名称空间“并且刚好与targetNamespace一至,可以缺省)。

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://tempuri.org/po.xsd" targetNamespace="http://tempuri.org/po.xsd" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:element name="purchaseOrder" type="PurchaseOrderType"/>
	<xs:element name="comment" type="xs:string"/>
	<xs:element name="test" type="xs:string"/>
	<xs:complexType name="PurchaseOrderType">
		<xs:sequence>
			<xs:element name="shipTo" type="USAddress"/>
			<xs:element name="billTo" type="USAddress"/>
			<xs:element ref="comment" minOccurs="0"/>
			<xs:element ref="test"/>
			<xs:element name="items" type="Items"/>
		</xs:sequence>
		<xs:attribute name="orderDate" type="xs:date"/>
	</xs:complexType>
	<xs:complexType name="USAddress">
		<xs:sequence>
			<xs:element name="name" type="xs:string"/>
			<xs:element name="street" type="xs:string"/>
			<xs:element name="city" type="xs:string"/>
			<xs:element name="state" type="xs:string"/>
			<xs:element name="zip" type="xs:decimal"/>
		</xs:sequence>
		<xs:attribute name="country" type="xs:NMTOKEN" fixed="US"/>
	</xs:complexType>
	<xs:complexType name="Items">
		<xs:sequence>
			<xs:element name="item" minOccurs="0" maxOccurs="unbounded">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="productName" type="xs:string"/>
						<xs:element name="quantity">
							<xs:simpleType>
								<xs:restriction base="xs:positiveInteger">
									<xs:maxExclusive value="100"/>
								</xs:restriction>
							</xs:simpleType>
						</xs:element>
						<xs:element name="USPrice" type="xs:decimal"/>
						<xs:element ref="comment" minOccurs="0"/>
						<xs:element name="shipDate" type="xs:date" minOccurs="0"/>
					</xs:sequence>
					<xs:attribute name="partNum" type="SKU" use="required"/>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<!-- Stock Keeping Unit, a code for identifying products -->
	<xs:simpleType name="SKU">
		<xs:restriction base="xs:integer">
			<xs:minInclusive value="2"/>
			<xs:maxInclusive value="10"/>
		</xs:restriction>
	</xs:simpleType>
</xs:schema>



<?xml version="1.0" encoding="UTF-8"?>
<n:purchaseOrder xmlns:n="http://tempuri.org/po.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://tempuri.org/po.xsd
D:\MLDN\[北京圣思园教育]20101031.Web.Service公开课.文档、源码、安装文件[ED2000.COM]\ws公开课\schema\order.xsd">
	<n:shipTo country="US">
		<n:name>testName</n:name>
		<n:street>testStreet</n:street>
		<n:city>testCity</n:city>
		<n:state>testState</n:state>
		<n:zip>5</n:zip>
	</n:shipTo>
	<n:billTo country="US">
		<n:name>testName</n:name>
		<n:street>testStreet</n:street>
		<n:city>testCity</n:city>
		<n:state>testState</n:state>
		<n:zip>5</n:zip>
	</n:billTo>
	<n:comment>
		cc
	</n:comment>
	<n:test>ttt</n:test>
	<n:items>
		<n:item partNum="2">
			<n:productName>thinking in java</n:productName>
			<n:quantity>10</n:quantity>
			<n:USPrice>70</n:USPrice>
			<n:comment>
				java
			</n:comment>
			<n:shipDate>2013-04-15</n:shipDate>
		</n:item>
	</n:items>
</n:purchaseOrder>

分享到:
评论

相关推荐

    根据xml schema生成xml

    这篇博客文章“根据XML Schema生成XML”探讨了如何使用XML Schema来创建符合规范的XML文档。 首先,理解XML Schema的基本元素是关键。XML Schema定义了一系列的元素(element)、属性(attribute)和数据类型(data...

    XmlSchema-1.4.6.jar

    XML Schema,简称XSD,是一种用于定义XML文档结构和数据类型的规范。`XmlSchema-1.4.6.jar` 是一个包含Java绑定的XML Schema API的库,它为处理XML Schema文档提供了支持。在开发Web服务客户端时,尤其是与基于SOAP...

    XmlSchema-1.2.jar,xmlschema-1.2.jar,xml.jar

    XmlSchema-1.2.jar,xmlschema-1.2.jar,xml.jar

    XML文件XML Schema.docXML Schema.doc

    "XML Schema知识点" XML Schema是XML语言为基础的,它用于可替代DTD。它用于描述XML文档的结构。XML Schema语言也被称为XML Schema Definition(XSD)。XML Schema的作用是定义一份XML文档的合法组件群,就像DTD的...

    理解XML Schema XML Schema进阶

    XML Schema是目前国际标准的XML建模工具,本文将对XML Schema进行详细的介绍,帮助读者初步掌握XML Schema的使用方法和XML Schema文档实例的具体语义。 1. 命名空间的使用 XML Schema中命名空间的使用是非常重要的...

    xmlschema-core-2.0.3的jar

    XML Schema(通常缩写为XSD)是W3C组织定义的一种XML语言,用于描述XML文档的结构和数据类型。它是XML文档验证的重要工具,确保数据遵循特定的规则和格式。在Java编程环境中,XML Schema Core库是处理XSD相关的操作...

    XML与XMLSchema

    【XML与XMLSchema】 XML,全称可扩展标记语言(eXtensible Markup Language),是一种基于标准通用标记语言SGML的简化版本,由万维网联盟(W3C)于1996年开始制定,并在1998年2月10日发布了XML 1.0规范。它的设计...

    XML Schema教程

    ### XML Schema 教程知识点详解 #### 一、XML Schema 概述 - **XML Schema 定义**:XML Schema 是一种基于 XML 的语言,用于描述 XML 文档的结构。它定义了 XML 文档中可以出现的元素、属性及其结构,并且指定了...

    XmlSchema-1.4.7.jar

    XmlSchema-1.4.7.jar 是一个Java库,它实现了W3C的XML Schema标准,用于处理XML Schema文档。这个版本(1.4.7)可能是该库的一个稳定版本,提供给用户免费使用。XML Schema是XML的一种规范,定义了如何验证XML文档的...

    西工大服务计算实验2-1_XML Schema

    XML Schema,全称为XML Schema Definition,是用于定义XML文档结构和数据类型的规范,它是W3C(World Wide Web Consortium)制定的一种标准。在本实验"西工大服务计算实验2-1_XML Schema"中,你的任务是编写一个程序...

    XmlSchema-1.1.jar

    XmlSchema-1.1.jar XmlSchema-1.1.jar

    XMLSchema经典例题

    XML Schema,全称为XML Schema Definition (XSD),是一种用于描述XML文档结构和数据类型的规范,它是W3C(World Wide Web Consortium)所制定的标准。XML Schema的出现是为了替代早期的DTD(Document Type ...

    apache xmlschema api文档

    Apache XML Schema API是Java开发人员用来处理XML Schema的工具包,它是Apache Xerces项目的一部分。XML Schema(通常缩写为XSD)是一种W3C标准,用于定义XML文档的结构和数据类型,确保XML数据的准确性和一致性。...

    XmlSchema-1.4.7 jar包

    好不容易找到的XmlSchema-1.4.7 jar包,需要的同学速度下载吧。不黑心,只要1分~~~

    XMLSchema.chm

    XML Schema,简称为XSD,是XML(可扩展标记语言)的一个重要组成部分,用于定义XML文档的结构和数据类型。这个“XMLSchema.chm”文件很可能是一个帮助文档,旨在为学习XML Schema的用户提供详细的指导和参考资料。...

    xmlschema实验及答案.doc

    XML Schema实验及答案 XML Schema是基于XML的_schema语言,是一种用于定义XML文档结构的语言。它是W3C制定的一个标准,用于描述XML文档的结构、约束和关系。XML Schema提供了一个强大的工具,用于定义和验证XML文档...

    XML Schema简明教程-W3C.rar

    XML Schema 是基于 XML 的 DTD 替代者。 XML Schema 描述 XML 文档的结构。 XML Schema 语言也称作 XML Schema 定义(XML Schema Definition,XSD)。 在此教程中,你将学习如何在应用程序中读取和创建 XML ...

    xmlschema-core-2.0.3.jar

    xmlschema-core-2.0.3.jar;xmlschema-core-2.0.3.jar;xmlschema-core-2.0.3.jar

    xmlschema-1.4.5.jar.zip

    XML Schema,简称为XSD(XML Schema Definition),是W3C组织制定的一种XML文档结构的规范,用于定义和约束XML文档的结构和数据类型。它为XML提供了强大的语义定义能力,使得XML文档的结构更加严谨,提高了数据交换...

Global site tag (gtag.js) - Google Analytics