Freigeben über


<xsd:schema>-Element

Enthält die Definition eines Schemas.

<schema
  attributeFormDefault = (qualified | unqualified): unqualified
  blockDefault = (#all | List of (extension | restriction | substitution) : ''
  elementFormDefault = (qualified | unqualified): unqualified
  finalDefault = (#all | List of (extension | restriction | list |
union): ''
  id = ID
  targetNamespace = anyURI
  version = token
  xml:lang = language
  {any attributes with non-schema Namespace}...>
Content: ((include | import | redefine | annotation)*, (((simpleType |
complexType | group | attributeGroup) | element | attribute | notation),
annotation*)*)
</schema>

Attribute

  • attributeFormDefault
    Die Form für Attribute, die im Zielnamespace dieses Schemas deklariert werden. Der Wert muss einer der folgenden Zeichenfolgen entsprechen: qualified oder unqualified. Der Standardwert ist unqualified.

    Wenn der Wert unqualified ist, müssen Attribute aus dem Zielnamespace nicht mit dem Namespacepräfix qualifiziert werden.

    Wenn der Wert qualified ist, müssen Attribute aus dem Zielnamespace mit dem Namespacepräfix qualifiziert werden.

    Dieser Wert ist der globale Standardwert für alle im Zielnamespace deklarierten Attribute. Einzelne Attribute können diese Einstellung für ihren lokalen Gültigkeitsbereich mithilfe des form-Attributs überschreiben.

    Optional.

  • blockDefault
    Der Typ der Ableitung. Mit dem blockDefault-Attribut wird der Standardwert des block-Attributs für element-Elemente und complexType-Elemente im Zielnamespace dieses Schemas festgelegt. Das block-Attribut verhindert, dass ein komplexer Typ (bzw. ein komplexes Element) mit dem angegebenen Ableitungstyp anstelle des geerbten komplexen Typs (bzw. Elements) verwendet wird. Der Wert kann #all bzw. eine Liste enthalten, die eine Teilmenge von extension, restriction oder substitution darstellt.

    extension

    Verhindert, dass durch Erweiterung abgeleitete Typen anstelle dieses komplexen Typs verwendet werden.

    restriction

    Verhindert, dass durch Einschränkung abgeleitete Typen anstelle dieses komplexen Typs verwendet werden.

    substitution

    Verhindert die Ersetzung von Elementen. (Ein Element kann sich selbst als Ersatz für ein anderes Element deklarieren, indem es den Namen des anderen Elements in seinem substitutionGroup-Attribut angibt.)

    #all

    Verhindert, dass alle abgeleiteten komplexen Typen anstelle dieses komplexen Typs verwendet werden.

    Optional.

  • elementFormDefault
    Die Form für Elemente, die im Zielnamespace dieses Schemas deklariert werden. Der Wert muss einer der folgenden Zeichenfolgen entsprechen: qualified oder unqualified. Der Standardwert ist unqualified.

    Wenn der Wert unqualified ist, müssen Elemente aus dem Zielnamespace nicht mit dem Namespacepräfix qualifiziert werden.

    Wenn der Wert qualified ist, müssen Elemente aus dem Zielnamespace mit dem Namespacepräfix qualifiziert werden.

    Dieser Wert ist der globale Standardwert für alle im Zielnamespace deklarierten Elemente. Einzelne Elemente können diese Einstellung für ihren lokalen Gültigkeitsbereich mithilfe des form-Attributs überschreiben.

    Optional.

  • finalDefault
    Der Typ der Ableitung. Mit dem finalDefault-Attribut wird der Standardwert des final-Attributs für element-Elemente, simpleType-Elemente und complexType-Elemente im Zielnamespace dieses Schemas festgelegt. Das final-Attribut verhindert den angegebenen Ableitungstyp eines element-Elements, simpleType-Elements oder complexType-Elements. Bei element-Elementen und complexType-Elementen kann dieser Wert #all oder eine Liste enthalten, die eine Teilmenge von extension oder restriction ist. Bei simpleType-Elementen kann dieser Wert zusätzlich list und union enthalten.

    extension

    Standardmäßig können Elemente in diesem Schema nicht durch Erweiterung abgeleitet werden. Gilt nur für element-Elemente und complexType-Elemente.

    restriction

    Verhindert eine Ableitung durch Einschränkung.

    list

    Verhindert eine Ableitung durch Liste. Gilt nur für simpleType-Elemente.

    union

    Verhindert eine Ableitung durch Union. Gilt nur für simpleType-Elemente.

    #all

    #all. Standardmäßig können Elemente in diesem Schema durch keine Methode abgeleitet werden.

    Optional.

  • id
    Die ID dieses Elements. Der id-Wert muss vom Typ ID sein und innerhalb des Dokuments, in dem dieses Element enthalten ist, eindeutig sein.

    Optional.

  • targetNamespace
    Der URI-Verweis für den Namespace dieses Schemas. Ein Präfix für den Namespace kann auch zugewiesen werden. Wenn kein Präfix zugewiesen wird, können die Schemakomponenten des Namespaces mit nicht qualifizierten Verweisen verwendet werden.

    Optional.

  • version
    Die Version des Schemas.

    Optional.

  • xml:lang
    Der Indikator der in den Inhalten verwendeten Sprache.

    Optional.

Elementinformationen

Anzahl der Vorkommen

Einmal

Übergeordnete Elemente

(Keine übergeordneten Elemente)

Inhalt

include, import, annotation, redefine

attribute, attributeGroup, element, group, notation, simpleType, complexType

Sonstige

Die Elemente include, import und redefine müssen vor den anderen Elementen angegeben werden. Nur das annotation-Element kann an beliebiger Stelle stehen.

Hinweise

Das schema-Element ist das Dokumentelement (Element der höchsten Ebene) in einer Schemadefinition.

Die mithilfe des xmlns-Attributs angegebenen Namespaces müssen den Namespace für die schemadefinierenden Elemente und Attribute (schema, element usw.) enthalten. Obwohl beliebige Präfixe verwendet werden können, wird empfohlen, den schema-Namespace als Standardnamespace festzulegen, um zu vermeiden, dass für jedes XML-Schemaelement ein Präfix verwendet werden muss.

targetNamespace ist der Namespace aller Schemakomponenten in diesem Schema sowie in allen eingebundenen Schemata, die das include-Element verwenden. (Enthaltene Schemata müssen entweder über den gleichen Zielnamespace wie das Schema verfügen, in dem diese enthalten sind, oder es darf kein Zielnamespace angegeben sein.) Im folgenden Beispiel sind die Schemakomponenten (Elementname, Typ) im **http://www.w3.org/2001/XMLSchema**-Namespace nicht gekennzeichnet, und jene für http://tempuri.org/myschema ("mydecimal") sind mit dem msc-Präfix gekennzeichnet.

Für XML-Schema lautet der Namespace folgendermaßen:

http://www.w3.org/2001/XMLSchema

Darüber hinaus muss das schema-Element auch Namespacedeklarationen für alle anderen von ihm verwendeten Schemata enthalten.

Beispiel

Im folgenden Schema wird der XML-Schema-Namespace als Standardnamespace verwendet und definiert den Zielnamespace für das Schema als http://mynamespace/myschema.

Weitere Ressourcen

Weitere Informationen finden Sie in der Spezifikation "W3C XML Schema Part 1: Structures Recommendation" unter "www.w3.org/TR/2001/REC-xmlschema-1-20010502/#element-all".

Siehe auch

Verweis

Referenz zu XML-Schemata (XSD)
Elemente des XML-Schemas
<xsd:include>-Element