XML Schema any 元素

定义和用法

any 元素使来自指定命名空间的任何元素可以显示在包含 sequence 或 choice 元素中。

该元素使创作者可以通过未被 schema 规定的元素来扩展 XML 文档。

元素信息

项目 说明
出现次数 无限制
父元素 choice、sequence
内容 annotation

语法

<any
id=ID
maxOccurs=nonNegativeInteger|unbounded
minOccurs=nonNegativeInteger
namespace=namespace
processContents=lax|skip|strict
beliebige Eigenschaften
>
(annotation?)
</any>

(? 符号声明元素可在任何元素内出现零次或一次。)

属性

id

可选。规定该元素的唯一的 ID。

maxOccurs

可选。规定 any 元素在父元素中可出现的最大次数。该值可以是大于或等于零的整数。若不想对最大次数设置任何限制,请使用字符串 "unbounded"。默认值为 1。

minOccurs

Optional. Definiert die minimale Anzahl der Auftretensmöglichkeiten des any-Elements im übergeordneten Element. Der Wert kann ein nicht negativer Integer sein. Um das any-Gruppenelement optional zu machen, setzen Sie diesen Attribut auf Null. Der Standardwert ist 1.

namespace

Optional. Definiert den Namensraum, in dem die Elemente verwendet werden können. Wenn kein Namensraum angegeben ist, ist der Standard ##any. Wenn ein Namensraum angegeben ist, muss einer der folgenden Werte sein:

  • ##any - Elemente aus jedem Namensraum können auftreten (Standard).
  • ##other - Elemente aus jedem anderen Namensraum außer dem Zielnamensraum des übergeordneten Elements können auftreten.
  • ##local - Elemente ohne Namensraum können auftreten.
  • ##targetNamespace - Elemente aus dem Zielnamensraum des übergeordneten Elements, das dieses Element enthält, können auftreten.
  • Liste von {URI-Referenzen von Namensräumen, ##targetNamespace, ##local} - Elemente aus der durch Leerzeichen getrennten Namensraumliste können auftreten. Die Liste kann das Folgende enthalten: URI-Referenzen der Namensräume ##targetNamespace und ##local.

processContents

Optional. Ein Indikator, der angibt, wie das XML-Dokument von der Anwendung oder dem XML-Verarbeiter validiert werden soll, basierend auf den durch das any-Element angegebenen Elementen. Wenn der processContents-Attribut nicht angegeben ist, ist der Standard strict. Wenn processContents angegeben ist, muss einer der folgenden Werte sein:

  • strict - Der XML-Verarbeiter muss das Schema des erforderlichen Namensraums erhalten und alle Elemente aus diesen Namensräumen überprüfen (Standard).
  • lax - Wie strict; aber es gibt keine Fehler, selbst wenn der Schema nicht erreicht werden kann.
  • skip - Der XML-Verarbeiter überprüft keine Elemente aus der angegebenen Namensraum.

beliebige Eigenschaften

Optional. Definiert jede andere Eigenschaft mit einer non-schema Namensraum.

Beispiel

Ein Beispiel zeigt die Deklaration eines "person"-Elements. Der Ersteller kann den Inhalt von "person" durch Verwendung des <any>-Elements mit beliebigen Elementen erweitern (nach <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>