与DTD相比,XML Schema的优势是什么?

与DTD相比,XML Schema的优势是什么?


哆啦的时光机
浏览 947回答 3
3回答

米琪卡哇伊

DTD 的局限性DTD不遵守XML语法(写XML文档实例时候用一种语法,写DTD的时候用另外一种语法)DTD数据类型有限(与数据库数据类型不一致)DTD不可扩展DTD不支持命名空间(命名冲突)Schema的新特性Schema基于XML语法Schema可以用能处理XML文档的工具处理Schema大大扩充了数据类型,可以自定义数据类型Schema支持元素的继承—Object-Oriented’ishSchema支持属性组

浮云间

个人观点:作用基本相同,都是对xml文档做进一步的限制。dtd不是针对xml文档的,它是针对另外一种文档的,在xml中也可以用一下,效果弱弱的。schema是针对xml文档的,在对xml的处理上比dtd强很多。

GCT1015

XML Schema 和DTD 都是用来定义各种文件中XML标记的使用规范.XML Schema 是标准的XML文件,而DTD则使用自己的特殊语法,因此,只需要知道XML的语法规则就可以编写Schema了,不需要再学习其它语法规则. 可以使用相同的处理器来解读,XML文件与XML Schema文件.XML Schema 利用命名空间将文件中特殊的节点与Schema说明相联系,一个XML文件可以有多个对应的Schema ,若是DTD的话,一个XML文件只能有一个相对应的DTD文件.XMLSchema 的内容模型是开放的,可以随意扩充,而DTD则无法解读扩充的内容.DTD只能把文件类型定义为一个字符串,而XML Schema 却允许把文件类型定义为整数,浮点数,字符串,布尔值或其他各各数据类型,而无须重新定义.XMLSchema 相对DTD的明显优势是XMLSchema 文件本身也是XML文件,而不是像DTD那样使用特殊格式,因而方便了用户和设计者. 因为他们可以使用相同的工具来处理与开发XML Schema和其他的XML数据,而不必用专门的开发或处理工具. 
打开App,查看更多内容
随时随地看视频慕课网APP