XML基础知识学习六(XML 确认)
2006-08-20 14:28
441 查看
符合语法的XML文档称为结构良好的XML文档。
通过DTD验证的XML文档称为有效的XML文档。
一个结构良好的XML文档应该遵守XML语法规则,前面一章给出的例子就是一个结构良好的XML文档:
一个有效的XML文档也是一个结构良好的XML文档,同时还必须符合DTD的规则。
DTD的意图在于定义XML文档的合法建筑模块。他通过定义一系列合法的元素决定了XMl文档的内部结构。结构良好的XML文档不一定是有效的XML文档,但有效的XML文档一定是结构良好的XML文档。如果你想了解更多关于DTD的知识可以参考DTD 指南。
W3C使得DTD和Schema可以相互替代,读者可以在Schema 指南中了解到更多信息。
W3C的XML规范声明:如果程序在处理XML文档中发现一个有效的错误,那么此程序应该终止。这就是XML软件相对于容易编写的原因。所有的XML文档地都应该是协调一致的。
在HTML中,HTML文件可能包含很多错误,(比如一个元素有开始标记没有结束标记)这也是HTML浏览器体积之所以很大的一个原因,当他们发现错误的时候,他们有各自不同的方法来决定此HTML文件应该如何显示。
在XML中决不会发生这种情况。
通过DTD验证的XML文档称为有效的XML文档。
"结构良好的" XML文档
一个结构良好的XML文档应该使用正确的语法。一个结构良好的XML文档应该遵守XML语法规则,前面一章给出的例子就是一个结构良好的XML文档:
<?xml version="1.0" encoding="ISO-8859-1"?> <note> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend!</body> </note> |
"有效的" XML文档
一个有效的XML文档应该遵守DTD的描述。一个有效的XML文档也是一个结构良好的XML文档,同时还必须符合DTD的规则。
<?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE note SYSTEM "InternalNote.dtd"> <note> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend!</body> </note> |
XML DTD
DTD定义了XML文档中可用的合法元素。DTD的意图在于定义XML文档的合法建筑模块。他通过定义一系列合法的元素决定了XMl文档的内部结构。结构良好的XML文档不一定是有效的XML文档,但有效的XML文档一定是结构良好的XML文档。如果你想了解更多关于DTD的知识可以参考DTD 指南。
XML Schema
XML Schema(XML模式)是基于XML的DTD的替代品。W3C使得DTD和Schema可以相互替代,读者可以在Schema 指南中了解到更多信息。
错误
XML文档中发生的错误将导致XML程序停止。W3C的XML规范声明:如果程序在处理XML文档中发现一个有效的错误,那么此程序应该终止。这就是XML软件相对于容易编写的原因。所有的XML文档地都应该是协调一致的。
在HTML中,HTML文件可能包含很多错误,(比如一个元素有开始标记没有结束标记)这也是HTML浏览器体积之所以很大的一个原因,当他们发现错误的时候,他们有各自不同的方法来决定此HTML文件应该如何显示。
在XML中决不会发生这种情况。
相关文章推荐
- XML基础知识学习九(XML数据岛)
- 学习Spring必学的Java基础知识(4)----XML基础知识
- Spring AOP基础知识学习——XML配置
- XML基础知识学习十(微软的XML解析器)
- XML基础知识学习
- XML基础知识学习一(如何使用XML?)
- XML基础知识学习
- xml基础知识学习笔记
- XML基础知识学习二(如何使用XML?)
- XML基础知识学习三(XML 语法)
- .net学习笔记---xml基础知识
- XML基础知识学习四(XML元素)
- xml基础知识的学习
- XML基础知识学习五(XML 属性)
- Android入门学习笔记(一)|基础知识|文件数据存储读取|解析XML
- XML基础知识学习七(XML 浏览器(Netscape、Explorer))
- XML基础知识学习
- XML基础知识学习八(使用XSL来显示XML数据)
- 你怎么做动画学习如何为3D动画的基础知识
- Javascript 基础知识学习--javascript中的参数传递都是按值传递的