星期五, 二月 27, 2009

xml基础之Schema与DTD

什么是DTD?
DTDs提供了定义文档规范的一种方法。这是在W3C XML1.0说明书中描述的数据描述的方法。下面我将给出关于DTDs相关事实的一些简短的纲要:
DTDs描述XML文档。
DTDs可用来检查XML文档的语义有效性和定义ID/IDREF关系。
DTDs使用尖括号、惊叹号、空格符、圆括号、问号和星号来定义哪些元素和属性可以使用以及它们能包含哪些内容。
DTDs能够为IE5所支持。
下面是个DTD的例子:
根据上面的DTD,下面的XML元素是有效的:
什么是XML Schema?
XML schema是用来描述XML元素和属性的。它基本上包括属性和元素类型说明,可以为XML元素和属性提供内容模块。
它很多情况下作用跟DTD差不多。但它的功能要超过DTD。
随着IE5一起发布的MSXML分析器,支持XML Schemas。
大家都知道浏览器可以自动验证XML文档的良好性,可以创建DTD文件验证XML文档的有效性。但是有许多常用的限制不能用DTD来表述,这就促使Schema(大纲)诞生。Schema与DTD相比,有一个明显的好处是XML Schema文档本身也是XML文档,而不是像DTD一样使用特殊格式。这大大方便了用户和开发者,因为可以使用相同的工具来处理XML Schema和其他XML信息,而不必专门为Schema使用特殊工具。DTD对用户来说是一种神秘的黑色艺术,Schema却简单易懂,人人都可以立刻理解。

没有评论:

发表评论