天天看点

XML:XML约束

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

常见的xml约束: 

  dtd

  schema

作为程序员只要掌握两点:

  会阅读 

  会引入 

  不用自己编写

XML:XML约束

  dtd(document type definition),文档类型定义,用来约束xml文档。规定xml文档中元素的名称,子元素的名称及顺序,元素的属性等。 

1 编写dtd 

  开发中,我们不会自己编写dtd约束文档 

  通常情况我们都是通过框架提供的dtd约束文档,编写对应的xml文档。常见框架使用dtd约束有: struts2、hibernate等。 

创建约束文件 student.dtd

2 引入dtd 

<1>引入dtd文档到xml文档中,两种方式 

  内部dtd:将约束规则定义在xml文档中 (通常不这么做)

  外部dtd:将约束的规则定义在外部的dtd文件中

    1. 本地方式引入: <!doctype 根标签名 system "dtd文件的位置">  

    2. 网络方式引入: <!doctype 根标签名 public "dtd文件名字" "dtd文件的位置url"> 

<2>  student.xml

XML:XML约束

1 什么是schema

  1. schema是新的xml文档约束, 比dtd强大很多,是dtd 替代者;

  2. schema本身也是xml文档,但schema文档的扩展名为xsd,而不是xml。

    3. schema 功能更强大,内置多种简单和复杂的数据类型

       4. schema 支持命名空间 (一个xml中可以引入多个约束文档)

2 schema约束示例

student.xsd

xml schema的根元素:

XML:XML约束

3 xml引入schema约束

xml中引入schema约束的步骤:

1) 查看schema文档,找到根元素,在xml中写出来

2) 根元素来自哪个命名空间。使用xmlns指令来声明

3) 引入 w3c的标准命名空间, 复制即可

4) 引入的命名空间,跟哪个xsd文件对应?

使用schemalocation来指定:两个取值:第一个为命名空间  第二个为xsd文件的路径

XML:XML约束

5) 命名空间

6) student.xml