xml的约束
* 为什么要约束?
** 比如现在定义一个person的xml文件,只想要这个文件里面保存
人的信息,比如name age 等,但是如果在xml文件中些了一个
标签<猫>,发现可以正常显示,因为符合语法规范,但是猫肯定
不是人的信息,xml的标签是自定义的,需要技术来规定xml中只
能出现的元素,这时候需要约束。
* xml约束的技术:dtd的约束 和 schema约束(看懂)
dtd的入门
*创建一个文件 后缀名为 .dtd
步骤:
(1)看xml有多少个元素, 有几个元素,在dtd文件中写几个
<!ELEMENT>
(2) 判断这个元素是简单元素还是复杂元素
- 复杂元素 :有子元素的元素
写法 :<ELEMENT 元素名称 (子元素)>
- 简单元素 :没有子元素
<!ELEMENT 元素名称 (#PCDATA)>
(3)需要在xml文件中引入dtd文件
<!DOCTEPE 根元素名称 SYSTEM(表示当前文件)"dtd文件路径")>
** 打开xml文件是使用浏览器打开的,浏览器只负责检验xml的语法,不负责检验约束
** 如果想要检验xml的约束,需要使用工具(myeclipse工具)
**打开myeclipse开发工具
***创建一个项目
***在这个项目的src目录下面创建一个xml文件和dtd文件
***当xml中引入dtd文件之后,比如只能出现name,age,多写了其他东西
会提示出错。
* 为什么要约束?
** 比如现在定义一个person的xml文件,只想要这个文件里面保存
人的信息,比如name age 等,但是如果在xml文件中些了一个
标签<猫>,发现可以正常显示,因为符合语法规范,但是猫肯定
不是人的信息,xml的标签是自定义的,需要技术来规定xml中只
能出现的元素,这时候需要约束。
* xml约束的技术:dtd的约束 和 schema约束(看懂)
dtd的入门
*创建一个文件 后缀名为 .dtd
步骤:
(1)看xml有多少个元素, 有几个元素,在dtd文件中写几个
<!ELEMENT>
(2) 判断这个元素是简单元素还是复杂元素
- 复杂元素 :有子元素的元素
写法 :<ELEMENT 元素名称 (子元素)>
- 简单元素 :没有子元素
<!ELEMENT 元素名称 (#PCDATA)>
(3)需要在xml文件中引入dtd文件
<!DOCTEPE 根元素名称 SYSTEM(表示当前文件)"dtd文件路径")>
** 打开xml文件是使用浏览器打开的,浏览器只负责检验xml的语法,不负责检验约束
** 如果想要检验xml的约束,需要使用工具(myeclipse工具)
**打开myeclipse开发工具
***创建一个项目
***在这个项目的src目录下面创建一个xml文件和dtd文件
***当xml中引入dtd文件之后,比如只能出现name,age,多写了其他东西
会提示出错。