XML系列:(2)XML约束-创新互联

1、什么是XML约束

在XML技术中,可以编写一个文档来约束一个XML文档的书写规范,这称之为XML约束。

创新互联建站拥有网站维护技术和项目管理团队,建立的售前、实施和售后服务体系,为客户提供定制化的网站设计制作、网站建设、网站维护、四川电信科技城机房解决方案。为客户网站安全和日常运维提供整体管家式外包优质服务。我们的网站维护服务覆盖集团企业、上市公司、外企网站、商城网站建设、政府网站等各类型客户群体,为全球成百上千企业提供全方位网站维护、服务器维护解决方案。

2、XML语法和XML约束的区别

XML语法和XML约束的区别

作用制定者
XML语法规范XML文件的基本编写规则由w3c组织制定的
XML约束规范XML文件数据内容格式的编写规则由开发者自行定义

3、常用的XML约束技术

DTD约束:语法相对简单,功能也相对简单。学习成本也低。

Schema约束:语法相对复杂,功能也相对强大。学习成本相对高!!!(名称空间)

4、XML约束DTD

DTD(DocumentTypeDefinition):文档类型定义

4.1、DTD与XML文件关联的三种方式

三种方式:内部DTD、引用本地DTD和引用公共DTD

4.1.1、内部DTD

语法:

实例:



   
   
   
   
]>

   美国
   中国
   Hello
   主体

4.1.2、引用本地DTD

语法:

实例:

文件note.dtd





文件note.xml




   美国
   中国
   Hello
   主体

4.1.3、引用公共DTD

语法:

实例:

4.2、DTD语法

4.2.1、元素

元素声明使用下面的语法:

或者

类别:

元素的类别
类型类型值作用
空标签EMPTY表示元素一定是空元素
普通字符串(#PCDATA)表示元素的内容一定是普通字符串(不能含有子标签)
任何内容ANY表示元素的内容可以是任意内容(包括子标签)

(元素内容)

顺序问题:  按顺序出现子标签

次数问题:

元素出现的次数
标签含义语法示例
(空)必须且只出现1次
+至少出现1次
*0或n次
?0 或1次

4.2.2、属性

语法:

默认值:

#REQUIRED 属性值是必需的

#IMPLIED   属性不是必需的

#FIXED value 属性不是必须的,但属性值是固定的

属性类型:控制属性值的

CDATA :表示普通字符串

(en1|en2|..): 表示一定是任选其中的一个值,枚举值

ID:表示在一个xml文档中该属性值必须唯一。值不能以数字开头

4.2.3、实体

实体是用于定义引用普通文本或特殊字符的快捷方式的变量。

在DTD定义中,通过定义一个实体,在 XML文件中就可以引用这个实体了。

语法:

实例:



	
]>

&author;住在&home;

展示:

XML系列:(2)XML约束

注释: 一个实体由三部分构成: 一个和号 (&), 一个实体名称, 以及一个分号 (;)。

5、Schema

XML Schema 是基于 XML 的 DTD 替代者。

XML Schema 描述 XML 文档的结构。

XML Schema 语言也称作 XML Schema 定义(XML Schema Definition,XSD)。

5.1、XML Schema与DTD

XML Schema符合XML语法结构,本身就是XML文档

DTD文档的结构是平铺性,如果定义复杂的XML文档,很难把握各元素之间的嵌套关系, Schema相对文档结构较强

XML Schema比DTD支持更多的数据类型,并支持用户自定义数据类型

XML Schema定义约束的能力更强大

XML Schema 对命名空间进行支持

5.2、XML Schema快速入门

Schema本身就是一个XML文档,但扩展名为.xsd。

一个Schema文档通常称之为约束文档,遵循这个约束书写的XML文件称之为实例文档。

和XML文件一样,一个Schema文档必须有一个根节点,并且这个根节点的名称必须为schema。

编写一个Schema文档后,通常需要把这个文件中声明元素绑定到一个URI上, 在XML Schema技术中有一个专业术语来描述这个过程,即把XML Schema文档声明的元素绑定到一个名称空间上, 以后XML文件就可能通过这个URI(即名称空间)来告诉解析引擎,XML文档中编写的元素来自哪里,被谁约束。

5.3、实例

books.xsd(XML Schema文件)



	
	
	
		
			
				
					
						
							
							
							
						
						
						
					
				
			
		
	

books.xml(XML实例文件)



	
	
  
    往事并不如烟
    49.9
  
  
  	XML学习
  	23.2
  

booksWithDefaultNameSpace.xml(XML实例文件)



	
	
  
    最后的贵族
    49.9
  

创新互联www.cdcxhl.cn,专业提供香港、美国云服务器,动态BGP最优骨干路由自动选择,持续稳定高效的网络助力业务部署。公司持有工信部办法的idc、isp许可证, 机房独有T级流量清洗系统配攻击溯源,准确进行流量调度,确保服务器高可用性。佳节活动现已开启,新人活动云服务器买多久送多久。


当前名称:XML系列:(2)XML约束-创新互联
网页链接:http://pwwzsj.com/article/dpgisd.html