XML
XML约束概述
一个 xml 文档一旦有了约束,那么这个 XML 文档就只能使用约束中创建的元素及属性。如果约束没有创建 <a> 元素,那么 XML 文档就不能使用 <a> 元素!!!
1、什么是 XML 约束
(1)因为 xml 文档是可以自定义元素的,这会让使用 xml 文档的应用程序无法知道 xml 文档的真实结构。通常应用程序都会要求xml 文件的结构是固定的,以满足自己的需求,这就说明,不同的应用程序要求自己的 xml 文档必须符合一定的要求。例如,当使用 xml 文档作为某个 Java swing 应用程序的配置文件时,要求 xml 文档结构如下:
<frame title="test xml" layout="java.awt.BorderLayout">
<bgcolor>
<red>200</red>
<green>0</green>
<blue>0</blue>
</bgcolor>
<size>
<width>300</width>
<heigth>200</heigth>
</size>
<content>
<label>
<text>hello xml</text>
<label>
</content>
</frame>
(2)当某个学生管理系统程序需要使用 xml 文档作为数据库时,要求 xml 文档结构如下:
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<students>
<student number="1001">
<name>zhangSan</name>
<age>23</age>
<sex>male</sex>
</student>
<student number="1002">
<name>liSi</name>
<age>32</age>
<sex>female</sex>
</student>
<student number="1003">
<name>wangWu</name>
<age>55</age>
<sex>male</sex>
</student>
</students>
(3)xml 文档约束是用另一个文件来约束 xml 文档的结构,例如要求 xml 文档的根元素必须是<students> ,在 <students> 元素下可以包含 0~n 个 <students> 元素,每个 <students> 元素必须有一个 number 属性,而且还要有三个子元素,分别为 <name>、<age>、<sex>,这三个子元素的内容必须为文本内容,而不能是子元素。
2、XML 文档约束的类型
- dtd:dtd 是平面式文档,dtd 文件不是 xml 文档,通常扩展名为 “.dtd”,它是最早的 xml 约束;
- schema:schema 本身也是 xml 文档,它比 dtd 要更加强大,通常扩展名为 “.xsd”。它是新的 xml 文档约束,用来替代 dtd。