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

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

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

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

时间:2011-12-17 18:58来源: 作者: 点击:
由于 zipCode 元素的定义位于 address 元素的声明中,所以它是一个局部定义,它的作用域只在 address 元素中。对于有效的文档实例,zipCode 元素必须出现在 address 元素中,如 清单 4 所示: 清单 4. 清单 3 中模

  由于 zipCode 元素的定义位于 address 元素的声明中,所以它是一个局部定义,它的作用域只在 address 元素中。对于有效的文档实例,zipCode 元素必须出现在 address 元素中,如 清单 4 所示:

清单 4. 清单 3 中模式的有效数据实例

 

双击代码全选
1
2
3
4
5
<address> 
 <!-- street, city and state hidden for example purposes --> 
 
 <zipCode>14534</zipCode> 
</address> 

  在 清单 4 中,address 元素是根元素。zipCode 元素不能充当实例中的根元素,因为它不是在模式模块中的根层次被全局定义的。局部定义的元素只能出现在定义它们的元素定义上下文中。

  在局部作用域内引用全局元素和属性

  除了充当根元素之外,任何全局定义的元素也可以在任何需要它们的局部作用域内被引用和出现。在 清单 5 的例子中,全局定义的 zipCode 元素被用于局部作用域上下文中的 address 元素的定义中:

清单 5. 局部作用域内引用的全局元素

 

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