XML Schema

定义:它的作用是定义一份XML文档的合法组件群,就像文档类型定义(外语缩写:DTD)的作用一样,一份XML Schema定义了:

  • 可以出现在文档里的元素;
  • 可以出现在文档里的属性;
  • 哪些元素是子元素;
  • 子元素的顺序;
  • 子元素的数量;
  • 一个元素应是否能包含文本,或应该是空的;
  • 元素和属性的数据类型;
  • 元素和属性的默认值和固定值。

schema规范中:

1.所有标签和属性都需要有schema文件来定义

2.所有的schema文件都需要有一个id,但他在这里叫namespace

3.namespace里面的值由什么来指定?

由targetNamespace属性来指定,他的值是一个URL(很有可能不存在)

4.如何引入一个schema约束?

属性?:使用xmlns属性

属性值:对应的schema文件的id(namespace值)

 5.如果引入的约束不是w3c组织定义的,必须指定schema文件的位置

 6.schema文件的位置由什么属性来指定?

 属性?:schemaLocation

 属性值: namespace path

 7.如果引入了N个约束,需要给n-1个取别名

schema约束中重点:

namespace:

 相当于schema文件中的id

 targetNamespace属性:

 用来指定schema文件的namespace的值

 xmlns属性:

 引入一个约束,它的值是一个schema文件的namespace

 schemaLocation属性:

 用来指定引入的schema文件的位置

demo:

book.xsd:

<?xml version="1.0" encoding="UTF-8" ?>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
    targetNamespace="http://www.atguigu.cn" 
    elementFormDefault="qualified">
  <element name="书架">
  	<complexType>
  		<sequence maxOccurs="unbounded">
  			<element name="书">
  				<complexType>
  					<sequence>
  						<element name="书名" type="string"></element>
  						<element name="作者" type="string"></element>
  						<element name="售价" type="string"></element>
  					</sequence>
  				</complexType>
  			</element>
  		</sequence>
  	</complexType>
  </element>
</schema>
book.xml:
<?xml version="1.0" encoding="UTF-8"?>
<tt:书架 xmlns:tt="http://www.atguigu.cn"
	 xmlns:dd="http://www.w3.org/2001/XMLSchema"
	 dd:schemaLocation="http://www.atguigu.cn book.xsd">
	<tt:书>
		<tt:书名>西游记</tt:书名>
		<tt:作者>吴承恩</tt:作者>
		<tt:售价>99.00元</tt:售价>
	</tt:书>
</tt:书架>




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值