WEB开发网
开发学院WEB开发Xml 模式作用域:初级读本和最佳实践 阅读

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

 2010-10-22 17:18:49 来源:WEB开发网   
核心提示: Salami slice 范式利用 Salami slice 范式,您可进入暴露内容模型的下一步,模式作用域:初级读本和最佳实践(7),在该范式中,您可以将自己所有局部定义的元素都移动到全局定义中,在 清单 10 中,Section 元素与 Title 和 Body 元素是全局耦合的,清单 10

Salami slice 范式

利用 Salami slice 范式,您可进入暴露内容模型的下一步。在该范式中,您可以将自己所有局部定义的元素都移动到全局定义中。清单 10 展示了 清单 8 中 Russian doll 风格例子修改为满足 Salami slice 范式后的样子:

清单 10. Salami slice 范式

<xs:schema> 
 <xs:element name="Body" type="xs:string"/> 
 <xs:element name="Title" type="xs:string"/>  
 
<xs:element name="Section">   
 <xs:complexType> 
 <xs:sequence>   
  <xs:element ref="Title"/>   
  <xs:element ref="Body"/> 
 </xs:sequence> 
 <xs:attribute name="name" type="xs:string"/> 
 </xs:complexType> 
 </xs:element> 
 
 <xs:element name="HelpDocs"> 
 <xs:complexType> 
  <xs:sequence>   
  <xs:element ref="Section"/> 
  </xs:sequence> 
 </xs:complexType> 
 </xs:element> 
</xs:schema> 

Salami slice 范式暴露所有元素,所以您可以在模式的其他部分引用和重用它们,并且它让它们对其他模式是透明的。该方法一个主要的优点是,元素高度可重用。但是,这也意味着所有名称空间都是全局暴露的,并且元素之间的耦合增大了。在 清单 10 中,Section 元素与 Title 和 Body 元素是全局耦合的。对 Title 和 Body 元素的任何修改随后都会影响 Section 定义。

上一页  2 3 4 5 6 7 8 9 10  下一页

Tags:模式 作用 初级

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接