搜索

pdf文档 Google XML Document Format Style Guide Version 1.0

51.99 KB 13 页 0 下载 141 浏览 0 评论 0 收藏
语言 格式 评分
英语
.pdf
3
摘要
该文档提供了设计新的XML文档格式的一系列指南,适用于机器生成和消费的XML数据。指南强调了命名空间的使用、元素与属性的区分、二进制数据的处理、字符编码的选择以及XML schema的设计原则。文档建议使用UTF-8字符编码、RELAX NG紧凑语法作为模式语言,并推荐使用Salami Slice风格进行模式设计。此外,文档还强调了避免混合内容、合理使用属性以及处理二进制数据时使用Base64编码。
AI总结
《Google XML Document Format Style Guide Version 1.0》提供了设计新的XML文档格式的通用指南,适用于机器生成和消费的XML文档,而非人类阅读的文本格式(如XHTML或ODF)。以下是总结的核心内容: ### 1. **设计原则** - **重用现有格式**:尽量重用或扩展已有的XML格式,避免从头开始设计新格式。 - **避免随意扩展**:在扩展现有格式时,应遵循其隐含的设计风格,而非强制遵循本指南。 - **模式语言**:文档格式应使用模式语言定义,推荐使用RELAX NG紧凑语法,并可嵌入Schematron规则以实现更精细的控制。 ### 2. **元素使用** - **避免混合内容**:元素应仅包含字符内容或子元素,禁止混合内容(字符与子元素混杂)。 - **避免空壳元素**:不要使用仅用于包裹重复子元素的空壳元素。 - **自然语言文本**:将自然语言文本放在元素中,以便使用`xml:lang`属性指定语言。 - **大型数据**:将非常大的数据放在元素中,以便支持流处理。 ### 3. **属性使用** - **代码和元数据**:将枚举、代码列表、元数据等放在属性中。 - **标识符和引用**:将标识符或引用放在属性中,使用`xml:id`作为标识符属性。 - **超文本引用**:将超文本引用放在`href`属性中。 - **避免过多属性**:元素属性数不应过多(建议不超过10个),可使用子元素封装相关属性。 ### 4. **二进制数据** - **Base64编码**:二进制数据应使用Base64编码,避免直接嵌入XML。 - **类型信息**:可使用`xsi:type="xs:base64Binary"`属性指示Base64编码。 ### 5. **命名空间** - **命名空间使用**:所有元素名称必须位于命名空间中,推荐使用默认命名空间以提高可读性。 - **属性命名空间**:属性名称不应位于命名空间中,除非来自外部文档类型或用于外部文档类型。 - **命名空间URI**:命名空间应使用HTTP URI形式,格式为`https://example.com/whatever/year`。 ### 6. **架构设计** - **模式风格**:推荐使用“Salami Slice”风格(每条规则对应一个元素),短小简单的模式可使用“Russian Doll”风格。 - **正则表达式**:提供正则表达式以协助验证复杂值。 ### 7. **处理指令** - **避免创建新指令**:除非是为了指定本地处理约定,否则不应创建新的处理指令。 ### 8. **XML实例表示** - **字符编码**:推荐使用UTF-8编码。 - **命名空间声明**:尽可能在根元素中声明命名空间。 - **标签格式**:标签前使用单个空格分隔属性,长标签可换行。 - **空元素表示**:空元素可表示为空标签或起始标签直接跟结束标签。 - **注释**:不应在公开传输的文档中使用注释,注释仅用于手写XML。 ### 9. **结束语** - **常识与一致性**:设计时需使用常识,并保持一致性。 - **可扩展性**:设计时需考虑可扩展性。 - **借鉴现有格式**:在设计XML格式时,参考其他格式的风格。 ### 10. **附录** - **术语定义**:指南中使用的`MUST`、`MUST NOT`、`SHOULD`等术语遵循RFC 2119定义。 总结而言,该指南强调了XML设计的规范性和可扩展性,旨在通过一致性和简洁性提高文档的可读性和可维护性。
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余 6 页请下载阅读 -
文档评分
请文明评论,理性发言.