Latest web development tutorials

XML Schema any 元素

XML Schema 參考手冊 完整XML Schema參考手冊

定義和用法

any 元素使創作者可以通過未被schema 規定的元素來擴展XML 文檔。

元素信息

  • 父元素: choice, sequence

語法

<any
id=ID
maxOccurs=nonNegativeInteger|unbounded
minOccurs=nonNegativeInteger
namespace=namespace
processContents=lax|skip|strict
any attributes
>

(annotation?)

</any>

(? 符號聲明元素可在任何元素內出現零次或一次。)

属性 描述
id 可选。规定该元素的唯一的 ID。
maxOccurs 可选。规定 any 元素在父元素中可出现的最小次数。该值可以是大于或等于零的整数。若要指定该 any 组是可选的,请将此属性设置为零。 默认值为 1。
minOccurs Optional. Specifies the minimum number of times the any element can occur in the parent element. The value can be any number >= 0. Default value is 1
namespace

可选。规定包含可以使用的元素的命名空间。如果没有指定命名空间,则 ##any 为默认值。 如果指定命名空间,则必须是以下值之一:

  • ##any - 来自任何命名空间的元素都可以出现(默认)。
  • ##other - 来自该元素的父元素的目标命名空间之外的任何命名空间的元素都可以出现。
  • ##local - 未由命名空间限定的元素可以出现。
  • ##targetNamespace - 来自包含该元素的父元素的目标命名空间的元素可以出现。
  • {URI references of namespaces, ##targetNamespace, ##local} 的列表 - 来自通过空格分隔的命名空间列表的元素可以出现。 该列表可以包含以下内容: 命名空间 ##targetNamespace 和 ##local 的 URI 引用。
processContents

可选。一个指示符,指示应用程序或 XML 处理器应如何根据由该 any 元素指定的元素处理 XML 文档的验证。 如果没有指定 processContents 属性,则默认为 strict。 如果指定了 processContents,必须是以下值之一:

  • strict - XML 处理器必须获得所需命名空间的架构,并且必须验证来自这些命名空间的所有元素。(默认)
  • lax - 与 strict 相同;但是,即使不能获取该架构,也不会发生任何错误。
  • skip - XML 处理器不尝试验证来自指定命名空间的所有元素。
any attributes 可选。规定带有 non-schema 命名空间的任何其他属性。

實例1

下面的例子展示了"person" 元素的一個聲明。 通過使用<any> 元素,創作者可以用任何元素擴展"person" 的內容(在<lastname> 之後):

<xs:element name="person">
<xs:complexType>
<xs:sequence>
<xs:element name="firstname" type="xs:string"/>
<xs:element name="lastname" type="xs:string"/>
<xs:any minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>


XML Schema 參考手冊 完整XML Schema參考手冊