建站学 - 轻松建站从此开始!

建站学-个人建站指南,网页制作,网站设计,网站制作教程

当前位置: 建站学 > 网站开发 > xml/XSLT教程 >

模式作用域:初级读本和最佳实践(2)

时间:2011-12-17 18:58来源: 作者: 点击:
在这个数据实例中,postalCode 是 根元素 即数据实例中的最高层容器。只有在相关模式的最高层定义的元素才可以充当数据实例中的根元素。清单 1 中的模式只定义了一个元素,所以很容易理解只有 postalCode 可以充当

  在这个数据实例中,postalCode 是 根元素 — 即数据实例中的最高层容器。只有在相关模式的最高层定义的元素才可以充当数据实例中的根元素。清单 1 中的模式只定义了一个元素,所以很容易理解只有 postalCode 可以充当实例中的根元素。

  清单 2 中的例子模式在根层次定义了两个元素:

清单 2. 带有两个可能根元素的模式

 

双击代码全选
1
2
3
4
<xs:schema> 
 <xs:element name='postalCode' type='xs:string'/> 
 <xs:element name='zipCode' type='xs:string'/> 
</xs:schema> 

  postalCode 或 zipCode 都可以充当 清单 2 中模式所建模的实例中的根元素。

  定义局部作用域元素

  将元素定义为局部的可以防止它们被暴露给模式的其他部分。局部元素的上下文局限于它的当前位置,所以不能从模式的其他部分引用它。在 清单 3 的例子中,zipCode 元素不是全局定义的。相反,它被作为 address 元素的子元素,定义在一个元素定义的 complexType 中。

清单 3. 单个带有局部子元素的全局元素

 

双击代码全选
1
2
3
4
5
6
7
8
9
10
11
<xs:schema> 
<xs:element name='address'> 
 <xs:complexType> 
 <xs:sequence> 
  <xs:element name='street' type='xs:string'/> 
  <xs:element name='city' type='xs:string'/> 
  <xs:element name='state' type='xs:string'/> 
  <xs:element name='zipCode' type='xs:string'/> 
 </xs:sequence> 
 </xs:complexType> 
</xs:schema> 
(责任编辑:admin)
织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片