RELAX NG

表示 XML 词汇表的语法规则

developerWorks

级别: 中级

投稿者:OASIS, ISO

2007 年 8 月 28 日

RELAX NG(读作“relaxing”),是一种基于语法的 XML 模式语言,可用于描述、定义和限制 XML 词汇表。通过本文了解某些人不喜欢使用文档类型定义(Document Type Definition,DTD)的原因,以及 RELAX NG 如何针对它进行改善。

RELAX NG [OASIS Committee Specification and ISO Standard ISO/IEC 19757-2:2003] 是一种 XML 模式语言,即一种可用来定义和限制 XML 词汇表的语言。最初的 XML 模式语言是 XML 1.0 自己定义的 DTD。但是,一些人不喜欢 DTD,因为它丑陋的语法、表达文本和标记结构的局限性,并且难以处理 XML Namespaces。出现了几种新的 XML 模式语言以替代或增强 DTD,其中包括 RELAX NG,它以简洁性和表达能力著称。RELAX NG 核心规范还为架构定义了一种 XML 语法,此外, RELAX NG Compact Syntax [OASIS 委员会规范和 ISO Standard ISO/IEC 19757-2:2003/Amd.1:2006] 还为 RELAX NG 架构定义了一种简单的文本语法。RELAX NG 的 ISO 版本现在可从 ISO 的 Freely Available Standards 页面免费获得。


参考资料