XML约束
1. 什么是XML约束
1)在XML技术里,可以编写一个文档来约束一个XML文档的书写规范,这称之为XML约束。 常见的xml约束:
- DTD
- Schema
2)作为程序员只要掌握两点
- 会阅读
- 会引入
- 不用自己编写
2. DTD约束
DTD(Document Type Definition),文档类型定义,用来约束XML文档。规定XML文档中元素的名称,子元素的名称及顺序,元素的属性等。
2.1 编写DTD
- 开发中,我们不会自己编写DTD约束文档
- 常情况我们都是通过框架提供的DTD约束文档,编写对应的XML文档。常见框架使用DTD约束有:Struts2、hibernate等。
创建约束文件 student.dtd,代码如下:
<!ELEMENT students (student+) >
<!ELEMENT student (name,age,sex)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT age (#PCDATA)>
<!ELEMENT sex (#PCDATA)>
<!ATTLIST student number ID #REQUIRED>
<!--
ELEMENT 定义元素
students (student+): students 代表根元素
student+ : 根标签中 至少有一个 student子元素
student (name,age,sex) : student标签中可以 包含的子元素 按顺序出现
#PCDATA : 普通的文本内容
ATTLIST : 用来定义属性
student number ID : student标签中 有一个ID属性 叫做 number
#REQUIRED : number的属性必须填写
ID 唯一的值 不能重复 值只能是字母或者下划线开头
-->
2.2 引入DTD
引入dtd文档到xml文档中,两种方式
- 内部dtd:将约束规则定义在xml文档中
- 外部dtd:将约束