当前位置:首页>网络学院>程序开发>XML教程>文章内容

建立有效的XML文件

[ 来源:www.it55.com | 作者: | 时间:2007-07-14 | 收藏 | 推荐 ] 【

有效的XML 文件必需符合一组比格式正确更严谨的规则。在本章中,首先你将学习有效的XML文件的基本需求,以及探索制作有效文件所带来的好处。接下来,你将学习如何加入所有有效的XML 文件中要求的文件型态宣告。然后呈现在有效的文件中被用来定义元素与属性的指令。最后以一个练习作为结束,该练习是将你在第二章中建立的范例文件进行转换。在下一章中,你将学习如何宣告与使用实体,这是有效的XML 文件中选择性、但却非常有用的要素。

有效的XML 文件的基本条件

    每一份XML 文件都必须是格式正确的,意指它必须符合一组遵从XML 文件规格的最小要求。如果文件不是格式正确的,它不能被视为XML 文件。一个格式正确的XML 文件也可以是有效的XML 文件。而且只要符合两项额外的要求,一个有效的XML 文件也将是格式正确的:
    文件的序文必须包含合适的文件型态宣告,该宣告中包括了文件型态定义(DTD),负责定义文件的结构。
    文件的其余部分必须符合DTD 中所定义的结构。
    在本章及第六章中,你将学习如何建立遵守这两项要求的文件。 www.it55.com在线教程

格式正确与有效性的限制

    格式正确的限制是一组在XML 规格书中定义,你必须遵从的规则-除了基本的语法要求之外-以用来建立格式正确的文件。因为XML 文件必须是格式正确的,任何违反格式正确限制的状况都会被视为毁灭性错误(fatal error)。当XML 处理器遭遇毁灭性错误时,它会停止文件的正常执行,并且不会企图尝试任何的回复动作。
    有效性限制则是XML 规格书中你必须遵守以建立正确文件的附加规则。因为有效性对XML 文件而言只是选择性的条件,所以违反有效性限制只会被视为普通的错误,与毁灭性错误成对比。当XML 处理器遭遇错误时,它只是简单地报告错误,并试着进行回复。有效性限制是一组建立适当的文件型态宣告以及其DTD 的特殊规则,并且也是建立遵从DTD 中规则文件的一组特殊规则。

制作有效XML 文件的好处

    建立一份有效的XML 文件看起来可能是一件不麻烦的事。你必须先在DTD 中彻底定义文件的结构,并根据所有的DTD 规则来建立文件本身。接着立即加入你所需的元素与属性,看起来似乎简单多了,如同你在前一章格式正确的文件范例中所做的一样。 vd;k;l www.it55.com rdfg
    然而,如果你想确定你的文件符合特殊的规格或标准集,那么将定义结构的DTD 含括进来,将允许XML 处理器(如在Microsoft Internet Explorer 5 中的处理器)检查你的文件是否符合其结构。换言之,DTD 提供处理器标准的蓝图,让它在进行文件有效性的检查时,可以执行要求的结构并保证你的文件符合需要的标准。如果文件中的任何部分并未遵守DTD 的规格,处理器会显示错误讯息好让你可以修改文件让文件符合规格。制作有效的XML 文件在确保一组相似文件的唯一性时特别有用。事实上,XML 将DTD 定义成「文件类别的文法」。
    例如,假设一家网站出版公司需要它旗下所有的编辑去建立符合一般结构的XML 文件。建立单一的DTD 并将它放在所有的文件中,可以确保这些文件会完全符合那些要求的结构,而且编辑们并不会任意地加入新属性,不会以错误的顺序放置信息,或者将错误的数据型态放到属性中,以及诸如此类的东西。当然,文件必须经过负责检查其有效性限制的处理器检查并正常执行。
    如果文件正要被针对特殊文件结构的订制软件处理时,则含括DTD 并检查其有效性是特别重要的。如果该软件的全部使用者都在他们的XML 文件中使用了共同的DTD,而且如果文件已经针对有效性进行检查,则使用者将可以确定他们的文件会被处理软件所承认。例如,如果一个数学团体正在建立将使用特定软件来显示的数学文件,那么他们需要为他们的文件使用一个共同的DTD,该DTD 定义了必要的结构、元素、属性与其它特性等。 sflj www.it55.com kg^&fgd
    事实上,在第一章结尾部分所列举的大多数「实际情况」的XML 应用程序,如MathML,是由标准的DTD 组成。这些应用程序的所有使用者会将标准的DTD 含括在XML 文件中,所以检查文件的有效性将确保文件符合应用程序的结构,且可以被任何针对该应用程序所设计的软件识别认可。
提示
    如果你直接在Internet Explorer 5 中开启XML 文件(含有或不含有样式表),Internet Explorer 5 处理器都会检查整份文件(包含文件的型态宣告,如果有的话)是否符合格式正确的,并在任何违法状况发生时显示一个毁灭性错误。然而,Internet Explorer 5 处理器并不会检查文件的有效性。 要测试文件的有效性,你可以使用第九章中提供的 「检查XML 文件的有效性」 的有效性检查script 来测试文件。你可能现在就想要读取该章节中提供的指令,好让你能够开始检查你建立XML 文件的有效性。

新增DTD

    文件的型态宣告是一段你必须加到有效XML 文件序文中的XML 标签。它可以放在序文中的任何地方-其它标签之外-后面接着XML 宣告。(回想一下如果你包含了XML 宣告,它必须位在文件的起始部分。)

www.it55.com在线教程

    文件型态宣告定义了文件的结构。如果你在Internet Explorer 5 中开启一个不含文件型态宣告的文件,Internet Explorer 5 处理器只会检查文件是否为格式正确的。然而,如果你在Internet Explorer 5 中开启一个含有文件型态宣告的文件(参阅下页的 注意 ),处理器将会检查文件的格式正确性与有效性,而且你的文件必须符合文件型态宣告中的所有宣告。例如,你将无法把并未在文件型态宣告区中宣告的元素或属性包含到文件中。而且你所含括的每一个元素与属性必须符合相关宣告中所陈述的规格(例如允许的文件内容或属性允许的型态)。
注意
    只有当你透过HTML 网页来开启文件时(这个技术将在第八章与第九章中学到),Internet Explorer 5 的处理程序才会检查文件的完整性。如果你直接在Internet Explorer 5 中开启XML文件(如同本书中至目前为止所作的,以及第七章与第十章中将要进行的),处理器将会检查文件(包括文件所包括的任何文件型态宣告)的格式正确性,但却不会检查文件是否符合有效性规则,即使文件拥有文件型态宣告也一样。

(编辑:IT资讯之家 www.it55.com

返回顶部
共9页: 上一页 1 [2] [3] [4] [5] [6] [7] [8] [9] 下一页  

网友评论

[以下评论为网友观点,不代表本站。请自觉遵守互联网相关政策法规,所有连带责任均有评论者自负。]
[不超过250字]

图片文章