使用 XML Schema 定义元素的基本知识

http://tech.ddvip.com   2007年12月25日    社区交流

内容摘要:本文展示了模式的灵活性,说明如何使用 XML Schema 系统来定义最基本的 XML 文档构造块——元素。

  清单 4:目标名称空间和源名称空间

以下是引用片段:
<!--XMLSchemafragmentinfileschema1.xsd-->
<xsd:schematargetNamespace='http://www.SampleStore.com/Account'
xmlns:xsd='http://www.w3.org/1999/XMLSchema'
xmlns:ACC='http://www.SampleStore.com/Account'>
<xsd:elementname='InvoiceNo'type='xsd:positive-integer'/>
<xsd:elementname='ProductID'type='ACC:ProductCode'/>
<xsd:simpleTypename='ProductCode'base='xsd:string'>
<xsd:patternvalue='[A-Z]{1}d{6}'/>
</xsd:simpleType>

  在 清单 4的 XML Schema 中, targetNamespace 的名字是 http://www.SampleStore.com/Account ,其中包含的名字有 InvoiceNo 、 ProductID 和 ProductCode 。 schema 、 element 、 simpleType 、 pattern 、 string 和 positive-integer 这些名字属于源名称空间 http://www.w3.org/1999/XMLSchema ,通过 xmlns 声明缩写为 xsd 。别名 xsd 没有任何特殊的地方,我们可以选择任何其他的名字。在本文后面的部分为了方便和简化起见,我们使用 xsd 代表名称空间 http://www.w3.org/1999/XMLSchema ,在一些代码片段中省略了限定符 xsd 。在这个例子中, targetNamespace 偶尔也作为一个源名称空间,因为要使用名字 ProductCode 定义其他的名字。

  清单 4中的模式片段不需要指定源模式文件的位置。对于整个“模式的模式”, http://www.w3.org/1999/XMLSchema ,不需要指定位置,因为它的位置是人所共知的。对于源名称空间 http://www.SampleStore.com/Account ,也不需要指定位置,因为它恰好是该文件中定义的目标名称空间。为了更好地理解如何指定模式的位置和使用默认名称空间,看一看 清单 5中扩展的例子。

  清单 5:多个源名称空间,导入一个名称空间

责编:豆豆技术应用

正在加载评论...