引言
本文档提供了一套通用指南,用于设计新的 XML
文档格式(在一定程度上也适用于 XML 文档本身;参见第 11 节)。
文档格式通常包括形式化部分(DTD、模式)和以规范性英文散文表达的部分。
这些指南适用于新的设计,并非旨在强制对现有设计进行追溯性修改。
在参与创建公共或私有文档格式设计时,这些指南可能会有所帮助,但不应凌驾于团队共识之上。
本指南适用于由机器生成和消费的 XML 设计,而非供人类阅读。
其规则不适用于诸如 XHTML(应尽可能按照 HTML 格式化)或 ODF
等旨在表达富文本的格式。 如果文档包含 XHTML
或其他富文本格式的嵌入内容,但同时也包含纯机器可解析的部分,则机器可解析部分应遵循本风格指南。
本指南同样不影响通过 proto buffers 转换或其他类型格式转换而创建的 XML
文档格式。
大多数指南都附有简要的理由说明。
它们与指南维护在同一文档中,以期不会过时,但不被视为规范性内容。
本文档中使用的术语 MUST(必须)、MUST
NOT(禁止)、SHOULD(应该)、SHOULD NOT(不应该)和
MAY(可以)的含义遵循
RFC 2119 的定义。
\
1. 设计还是不设计,这是个问题
- 尽可能尝试重用现有的 XML 格式,特别是那些允许扩展的格式。
创建全新的格式应谨慎考虑;请先阅读 Tim Bray 的警告 。
如果可能的话,尽量让组织外部的人对你的格式进行广泛审查。 [理由:
新的文档格式有其成本:它们必须被审查、文档化,并由用户学习。]
\ - 如果你正在重用或扩展现有格式,请合理地
使用所规定的元素和属性,特别是那些必需的元素和属性。
不要完全改变它们的用途,但要尝试在原始语义不适用时以创造性的方式使用它们。
作为最后的手段,当格式要求某个元素或属性但不适用于你的用例时,可以使用某个固定字符串作为其值。
[理由: 标记重用是好的,标记滥用是坏的。]
\ - 在扩展格式时,使用现有格式的隐含风格,即使它与本指南矛盾。 [*理由:*一致性。]\
\
Last updated on