模式作用域:初级读本和最佳实践
2010-10-22 17:18:49 来源:WEB开发网模式 是一个格式良好的 XML 文档,它使用强大的 XML 模式定义语言(XSDL,有时也叫做 W3C Schema)来建模和验证其他 XML 数据。根据您是如何定义的,模式粒子(元素、类型、属性和其他构造)都具有一个相关的作用域,可以是全局/暴露的,也可以是局部/隐藏的。模式的作用域设计极大地影响了模式可以如何被改进、重用以及与其他技术协作。
无论您是刚开始使用模式,还是想要更大地发挥当前解决方案的作用,理解模式作用域都是您成功的关键。在本文中,我们首先展示如何为各种模式粒子定义全局或局部作用域,并解释作用域将如何影响它们的行为。然后我们将描述基本的模式设计范式,并将探索创建满足项目需求的作用域设计方面的考虑因素和最佳实践。
常用缩略词
W3C:万维网联盟
XML:可扩展标记语言
XSDL:XML 模式定义语言
定义全局作用域元素
模式的最高层容器元素是 schema。schema 元素的直接子元素是全局定义的(就是说,具有全局作用域)。您可以使用全局元素作为根节点,并且可以从模式的其他部分引用它们。元素只要定义一次,您然后就可以在整个模式中使用它。
清单 1 中的模式例子展示了一个简单的数据模型,带有一个名叫 postalCode 的全局元素:
清单 1. 带有单个全局元素的模式
<xs:schema>
<xs:element name='postalCode' type='xs:string'/>
</xs:schema>
可以使用 清单 1 中的模式来成功地验证以下数据实例:
<postalCode>14534</postalCode>
在这个数据实例中,postalCode 是 根元素 — 即数据实例中的最高层容器。只有在相关模式的最高层定义的元素才可以充当数据实例中的根元素。清单 1 中的模式只定义了一个元素,所以很容易理解只有 postalCode 可以充当实例中的根元素。
更多精彩
赞助商链接