XML Schema redefine 元素
定義和用法
redefine 元素允許在當(dāng)前 Schema 中重新定義從外部架構(gòu)文件中獲取的簡(jiǎn)單和復(fù)雜類(lèi)型、組和屬性組。
元素信息
出現(xiàn)次數(shù) | 無(wú)限制 |
父元素 | schema |
內(nèi)容 | annotation、attributeGroup、complexType、group、simpleType |
語(yǔ)法
<redefine id=ID schemaLocation=anyURI any attributes > (annotation|(simpleType|complexType|group|attributeGroup))* </redefine>
屬性 | 描述 |
---|---|
id | 可選。規(guī)定該元素的唯一的 ID。 |
schemaLocation | 必需。對(duì) schema 文檔位置的 URI 引用。 |
any attributes | 可選。規(guī)定帶有 non-schema 命名空間的任何其他屬性。 |
實(shí)例
例子 1
下面的例子展示了一個(gè) schema,Myschama2.xsd,其中存在由 Myschama1.xsd 規(guī)定的元素。pname 類(lèi)型被重新定義。根據(jù)此 schema,被 pname 約束的元素必須以 "country" 元素結(jié)束:
Myschema1.xsd:
<?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:complexType name="pname"> <xs:sequence> <xs:element name="firstname"/> <xs:element name="lastname"/> </xs:sequence> </xs:complexType> <xs:element name="customer" type="pname"/> </xs:schema>
Myschema2.xsd:
<?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:redefine schemaLocation="Myschema1.xsd"> <xs:complexType name="pname"> <xs:complexContent> <xs:extension base="pname"> <xs:sequence> <xs:element name="country"/> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> </xs:redefine> <xs:element name="author" type="pname"/> </xs:schema>