在这个数据实例中,postalCode 是 根元素 — 即数据实例中的最高层容器。只有在相关模式的最高层定义的元素才可以充当数据实例中的根元素。清单 1 中的模式只定义了一个元素,所以很容易理解只有 postalCode 可以充当实例中的根元素。 清单 2 中的例子模式在根层次定义了两个元素: 清单 2. 带有两个可能根元素的模式
postalCode 或 zipCode 都可以充当 清单 2 中模式所建模的实例中的根元素。 定义局部作用域元素 将元素定义为局部的可以防止它们被暴露给模式的其他部分。局部元素的上下文局限于它的当前位置,所以不能从模式的其他部分引用它。在 清单 3 的例子中,zipCode 元素不是全局定义的。相反,它被作为 address 元素的子元素,定义在一个元素定义的 complexType 中。 清单 3. 单个带有局部子元素的全局元素
|