您的位置:首页 > 其它

XML schema学习笔记

2006-12-21 13:00 190 查看
XML schema学习笔记
写在前面的话,很多文章里面把schema和XML Schema当成了一个东东,其实schema或XML schema泛指XML文档的模式,而XML Schema是schema中的一种。除XML Schema以外,DTD也是一种schema。
在XML Schema出来之前,我们一直使用的是DTD来定义XML结构的方式。而DTD对于XML Schema来说最大的不足就是:DTD只能把内容类型定义为一个字符串。而XML Schema允许你把内容类型定义为整型、浮点型、数据型、布尔型或者许多其他的数据类型,而无须重定义。并且DTD的语法复杂,并且它不符合XML文件的标准。
其实通过一个简单的代码就能看出区别:
XML 文档:


<ID>k123456</ID>
DTD:


<!ELEMENT ID (#PCDATA)>
XML Schema:


<element name='ID' type='ProductCode'/>


<simpleType name='ProductCode' base='string'>


<pattern value='[A-Z]{1}d{6}'/>


</simpleType>
通过上面我们看出,XML Schema片段中检查元素ID 的首字符是否为 A 到 Z 之间的字母,后面为六个阿拉伯数字。相反,DTD只是检查这些元素是否用字符串表示。 简单的说DTD只能说明XML"哪个在前面,哪个在后面,那个一定有,哪个可以没用"这些结构,而不能说明"这个只能是数字,那个性别只能是男或女"这些数据类型的东东。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: