XML Schema anyAttribute 元素

定义和用法

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

元素信息

项目 说明
出现次数 无限制
父元素 complexType、restriction (simpleContent)、extension (simpleContent)、restriction (complexContent)、extension (complexContent)、attributeGroup
内容 annotation

语法

<anyAttribute
id=ID
namespace=namespace
processContents=lax|skip|strict
Enhver attribut
>
(annotation?)
</anyAttribute>

(? tegnet indikerer, at elementet kan forekomme nul eller én gang inden for anyAttribute-elementet.)

Egenskab

id

Valgfri. Definerer det unikke ID for elementet.

navnerum

Valgfri. Definerer navnerummet, der indeholder de elementer, der kan bruges. Hvis ingen navnerum er specificeret, er standardværdien ##any.

  • ##any - Elementer fra ethvert navnerum kan forekomme (standard)
  • ##other - Elementer fra ethvert navnerum uden for det målnavnerum, der indeholder dette element, kan forekomme.
  • ##local - Elementer, der ikke er begrænsede af et navnerum, kan forekomme.
  • ##targetNamespace - Elementer fra den målnavnerum, der indeholder det element, der indeholder dette element, kan forekomme.
  • En liste over {URI-referencer af navnerum, ##targetNamespace, ##local} - Elementer fra en adskilt med mellemrum liste af navnerum kan forekomme. Listen kan indeholde følgende indhold: URI-referencer af navnerummet ##targetNamespace og ##local.

processContents

Valgfri. En indikator, der angiver, hvordan applikationen eller XML-håndtereren skal behandle validering af XML-dokumentet baseret på elementet specificeret af "any"-elementet. Hvis processContents-egenskaben ikke er specificeret, er standardværdien strict. Hvis processContents er specificeret, skal det være en af følgende værdier.

  • Strict - XML-håndtereren skal få fat i nødvendige navnerums skema og skal validere alle elementer fra disse navnerum. (Standard)
  • Lax - Samme som strict; men ingen fejl opstår, selvom skemaet ikke kan fås.
  • Spring over - XML-håndtereren forsøger ikke at validere alle elementer fra det specificerede navnerum.

Enhver attribut

Valgfri. Definerer hvilke andre attributter, der er tilladt i non-schema navnerum.

Eksempel

En eksempel viser en deklaration for elementet "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>