可扩展标记语言(XML)1.0(第二版)
W3C 建议 2000年10月6日
本版本: http://www.w3.org/TR/2000/REC-xml-20001006 (XHTML 格式,XML 格式,PDF 格式,用不同颜色标示增删改的 XHTML 审阅版)
最新版本: http://www.w3.org/TR/REC-xml
以前版本: http://www.w3.org/TR/2000/WD-xml-2e-20000814 http://www.w3.org/TR/PR-xml-971208
编者:
Tim Bray,Textuality and Netscape
Jean Paoli,Microsoft
C. M. Sperberg-McQueen,University of Illinois at Chicago and Text Encoding Initiative mailto:cmsmcq@uic.edu
Eve Maler, Sun Microsystems, Inc. mailto:elm@east.sun.com - 第二版
摘要
本文档完整地描述了可扩展标记语言(Extensible Markup Language,XML),它是标准通用标记语言(Standard Generic Markup Language,SGML)的一个子集。其目的在于使得在 Web 上能以现有超文本标记语言(Hypertext Markup Language,HTML)的使用方式提供,接收和处理通用的 SGML 成为可能。XML 的设计既考虑了实现的方便性,同时也顾及了与 SGML 和 HTML 的互操作性。
本文档规定了一种用于 World Wide Web 的语法,此语法是通过取一个业已存在并已广泛使用的文本处理国际标准(标准通用标记语言,经增补和更正的 ISO 8879:1986(E))的子集而创建的。它是 W3C XML 行动组(XML Activity)的工作成果,关于 XML 行动组的详细信息可以在 http://www.w3.org/XML 找到。英文版是唯一的正式版。本文档的翻译见 http://www.w3.org/XML/#trans。在 http://www.w3.org/TR 可以找到现有 W3C 建议和其他技术文档的一个列表。
XML 文件由称为实体的存储单元组成,实体可以包含已析(parsed)数据或未析(unparsed)数据。已析数据由字符组成,其中一些字符组成字符数据,另一些字符组成标记。标记中包含了对文件存储格式(storage layout)和逻辑结构的描述。XML 提供了一种机制用于约束存储格式和逻辑结构。
[定义:称为 XML 处理器的软件模块用于读取 XML 文件,存取其中的内容和结构。] [定义:XML 处理器被设想为是为另一个称为应用的模块作处理。] 本规范从 XML 处理器应如何读取 XML 数据以及应向应用提供哪些信息的这两个方面,描述了要求 XML 处理器作出的动作。
1.1 开发者和开发目标
XML 由 XML 工作组(原先的 SGML 编辑审查委员会)开发,此工作组由 World Wide Web Consortium (W3C) 在 1996 年主持成立。工作组由 Sun Microsystems 的 Jon Bosak 负责,同样由 W3C 组织的 XML SIG (Special Interest Group)(原先的 SGML 工作组)积极参与了 XML 工作组的工作。XML 工作组的成员在附录中给出。工作组与 W3C 的联系人是 Dan Connolly。
XML 的设计目标如下:
XML 应该可以直接在因特网(Internet)上使用。
XML 应该支持大量不同的应用。
XML 应该与 SGML 兼容。
处理 XML 文件的程序应该容易编写。
XML 中的可选项应无条件地保持最少,理想状况下应该为 0 个。
XML 文件应该能够让人直接阅读,而且应该有足够的可读性。
XML 的设计应快速完成。
XML 的设计应该是形式化的,简洁的。
XML 文件应易于创建。
XML 标记的简洁性是最不重要的设计目标。
本规范与其他相关的标准一起(Unicode 和 ISO/IEC 10646 定义了字符集,Internet RFC1766 定义了语言识别码,ISO 639 定义了语言名称代码,ISO 3166 定义了国家名称代码),提供了理解 XML 版本 1.0 和构建相应计算机处理程序所需的所有信息。
在完整保留所有文本和法律注意事项的前提下,本版本的 XML 规范可以自由分发。
1.2 术语
用于描述 XML 文件的术语在此规范的正文中定义。在这些定义中以及描述一个 XML 处理器的动作时,使用了下表中的术语:
可以(may)
[定义:允许合乎规范的文件和 XML 处理器按所描述的方式工作,但不要求必须如此。]
必须(must)
[定义:要求合乎规范的文件和 XML 处理器按所描述的方式工作; 否则它们出现错误。]
错误(error)
[定义:对本规范中的规则的违反;其结果不确定。合乎规范的软件可以检测和报告错误,并可以从中恢复。]
严重错误(fatal error)
[定义:合乎规范的 XML 处理器必须检测到,并向应用报告的一类错误。在遇到严重错误之后,处理器可以继续处理数据以发现更多的错误并可以向应用报告这些错误。为了支持错误的更正,处理器可以向应用提供文件中未经处理的数据(字符数据和标记的混合体)。但是,一旦检测到一个严重错误,处理器必须停止正常的处理(也就是说,它必须停止以正常的方式向应用提供与文件逻辑结构有关的数据和信息)。]
由使用者选择(at user option)
[定义:合乎规范的软件可以或者必须(取决于句子中的情态动词)按所描述的方式工作; 如果它满足这个条件,它必须同时提供使用者一种手段,使得使用者能够启用和禁用所描述的工作方式。]
有效性约束(validity constraint)
[定义:适用于所有有效的 XML 文件的一种规则。违反有效性约束属于错误;进行验证的 XML 处理器必须,由使用者选择,报告这些错误。]
格式正确性约束(well-formedness constraint)
[定义:适用于所有格式正确的 XML 文件的一种规则。违反格式正确性约束属于严重错误。]
匹配(match)
[定义:(对于字符串和名字:)被比较的两个字符串或名字必须完全相同。在 ISO/IEC 10646 中有多种可能表示方式的字符(例如,既有预定义 (precomposed) 形式和基字符 (base) + 变音符形式的字符)只在两个字符串中的表示方式相同时才匹配。不进行字符的大小写转换。(对于文法中的字符串和规则:)如果一个字符串属于一个文法产生式产生的语言,则它匹配这个产生式。(对于内容和内容模型:)当一个元素符合 "元素有效性"约束中的描述时,它匹配其声明。]
出于兼容性考虑(for compatibility)
[定义:指出此句描述的 XML 特性完全只是为了和 SGML 保持兼容 。]
出于互操作性考虑(for interoperability)
[定义:指出此句是一个不具约束性的建议,目的是增加 XML 文件能被在 ISO 8879 的 WebSGML 改编附件之前已有的 SGML 处理器处理的可能性。]
[ 本帖最后由 dick_jj 于 2006-7-1 21:30 编辑 ]
Jgwy.Com - Free Web Hosting Guide & Directory In China since 2001!
Jgwy.Net-Jglt.Net