anyAttribute 元素使创作者可以通过未被 schema 规定的属性来扩展 XML 文档。
项目 | 说明 |
---|---|
出现次数 | 无限制 |
父元素 | complexType、restriction (simpleContent)、extension (simpleContent)、restriction (complexContent)、extension (complexContent)、attributeGroup |
内容 | annotation |
<anyAttribute id=ID namespace=namespace processContents=lax|skip|strict any attributes > (annotation?) </anyAttribute>
(? 符号声明该元素可在 anyAttribute 元素内出现零次或一次。)
可选。规定该元素的唯一的 ID。
可选。规定包含可以使用的元素的命名空间。如果没有指定命名空间,则 ##any 为默认值。如果指定命名空间,则必须是以下值之一。
可选。一个指示符,指示应用程序或 XML 处理器应如何根据由该 any 元素指定的元素处理 XML 文档的验证。 如果没有指定 processContents 属性,则默认为 strict。 如果指定了 processContents,必须是以下值之一。
可选。规定带有 non-schema 命名空间的任何其他属性。
下面的例子展示了针对 "person" 元素的一个声明。通过使用 <anyAttribute> 元素,创作者能够向 "person" 元素添加任意数量的属性:
<xs:element name="person"> <xs:complexType> <xs:sequence> <xs:element name="firstname" type="xs:string"/> <xs:element name="lastname" type="xs:string"/> </xs:sequence> <xs:anyAttribute/> </xs:complexType> </xs:element>