Die unten aufgelisteten Altova-Erweiterungsfunktionen geben Schemainformationen zurück. Weiter unten finden Sie Beschreibungen der Funktionen zusammen mit (i) Beispielen und (ii) einer Liste von Schemakomponenten und den dazugehörigen Eigenschaften.
Schemainformationen aus Schema-Dokumenten
Die Funktion altova:schema hat zwei Argumente: eines mit null Argumenten und das andere mit zwei Argumenten. Die Funktion mit null Argumenten gibt das gesamte Schema zurück. Sie können anschließend von diesem Ausgangspunkt aus durch das Schema navigieren und zu den gewünschten Schemakomponenten gehen. Die Funktion mit zwei Argumenten gibt eine bestimmte, durch Ihren QName identifizierte Komponentenart zurück. Der Rückgabewert ist in beiden Fällen eine Funktion. Um durch die zurückgegebene Komponente zu navigieren, müssen Sie eine Eigenschaft dieser spezifischen Komponente auswählen. Wenn es sich bei der Eigenschaft um ein nicht atomares Element handelt (d.h. wenn es sich um eine Komponente handelt), können Sie weiter navigieren, indem Sie eine Eigenschaft dieser Komponente auswählen. Wenn es sich bei der ausgewählten Eigenschaft um ein atomares Element handelt, wird der Wert des Elements zurückgegeben und Sie können nicht weiter navigieren.
Anmerkung: In XPath-Ausdrücken muss das Schema in die Verarbeitungsumgebung, z.B. in XSLT mit der Anweisung xslt:import-schema importiert werden. In XQuery-Ausdrücken muss das Schema explizit mit Hilfe eines Schemaimports importiert werden.
Schemainformationen aus XML-Nodes
Die Funktion altova:type übermittelt den Node eines XML-Dokuments und gibt die Typinformationen des Node aus dem PSVI zurück.
Anmerkung zur Benennung von Funktionen und zur Anwendbarkeit der Sprache
Altova-Erweiterungsfunktionen können in XPath/XQuery-Ausdrücken verwendet werden. Dadurch stehen neben den Funktionen in der Standardbibliothek der XPath-, XQuery- und XSLT-Funktionen zusätzliche Funktionen zur Verfügung. •Um Altova-Erweiterungsfunktionen von Funktionen in der Standardbibliothek zu unterscheiden, wurde Altova-Erweiterungsfunktionen in dieser Dokumentation das Suffix [altova:] angehängt, z.B. add-years-to-date [altova:]. •Wenn Sie Altova-Erweiterungsfunktionen jedoch in Ihren XPath/XQuery-Ausdrücken verwenden, müssen Sie die Funktion genau wie jede andere XPath/XQuery-Standardfunktion ohne Präfix oder Suffix verwenden. Verwenden Sie eine Altova-Erweiterungsfunktion folgendermaßen: add-years-to-date(xs:date("2014-01-15"), 10). XPath-Funktionen (in XPath-Ausdrücken in XSLT verwendet): | XP1 XP2 XP3.1 | XSLT-Funktionen (in XPath-Ausdrücken in XSLT verwendet): | XSLT1 XSLT2 XSLT3 | XQuery-Funktionen (in XQuery-Ausdrücken in XQuery verwendet): | XQ1 XQ3.1 |
|
altova:schema() als (function(xs:string) als item()*)? XP3.1 XQ3.1 Gibt die schema-Komponente als ganzes zurück. Durch Auswahl einer der Eigenschaften der schema-Komponente können Sie weiter in die schema-Komponente navigieren. •Wenn es sich bei dieser Eigenschaft um eine Komponente handelt, können Sie durch Auswahl einer dieser Komponenteneigenschaften einen Schritt tiefer navigieren. Dieser Schritt kann wiederholt werden, um weiter in das Schema zu navigieren. •Wenn es sich bei der Komponente um einen atomaren Wert handelt, wird der atomare Wert zurückgegeben und Sie können nicht tiefer navigieren. Die Eigenschaften der schema-Komponente sind: "type definitions" "attribute declarations" "element declarations" "attribute group definitions" "model group definitions" "notation declarations" "identity-constraint definitions" Die Eigenschaften aller anderen Komponentenarten (neben schema) sind unten aufgelistet. Anmerkung: In XQuery-Ausdrücken muss das Schema explizit importiert werden. In XPath-Ausdrücken muss das Schema in die Verarbeitungsumgebung, z.B. in XSLT mit der Anweisung xslt:import importiert worden sein. •import schema "" at "C:\Test\ExpReport.xsd"; for $typedef in altova:schema() ("type definitions") return $typedef ("name") gibt die Namen aller simpleTypes oder complexTypes im Schema zurück. •import schema "" at "C:\Test\ExpReport.xsd"; altova:schema() ("type definitions")[1]("name") gibt den Namen des ersten aller simpleTypes oder complexTyps im Schema zurück. |
Komponenten und ihre Eigenschaften Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Assertion" | test | XPath-Eigenschaftsdatensatz |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Attribute Declaration" | name | String | Lokaler Name des Attributs | target namespace | String | Namespace URI des Attributs | type definition | SimpleType oder ComplexType |
| scope | Eine Funktion mit Eigenschaften ("class":"Scope", "variety": "global" oder "local", "parent": der enthaltende ComplexTyp bzw. die enthaltende Attributgruppe) |
| value constraint | Falls vorhanden, eine Funktion mit Eigenschaften ("class": "Value Constraint", "variety": "fixed" oder "default", "value": atomarer Wert, "lexical form": String. Beachten Sie, dass die Eigenschaft "value" für Namespace-sensitive Typen nicht zur Verfügung steht. |
| inheritable | Boolean |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Attribute Group Definition" | name | String | Lokaler Name der Attributgruppe | target namespace | String | Namespace URI der Attributgruppe | attribute uses | Sequenz von (Attribute Use) |
| attribute wildcard | Optionale Attribut-Wildcard |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Attribute Use" | required | Boolean | true, wenn das Attribut obligatorisch ist, false, wenn es optional ist. | value constraint | Siehe Attribute Declaration |
| inheritable | Boolean |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | string | "Wildcard" | namespace constraint | Funktion mit Eigenschaften ("class": "Namespace Constraint", "variety": "any"|"enumeration"|"not", "namespaces": Sequenz von xs:anyURI, "disallowed names": Liste mit QNames und/oder den Strings "defined" und "definedSiblings" |
| process contents | String ("strict"|"lax"|"skip") |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Complex Type" | name | String | Lokaler Name des Typs (leer, wenn anonym) | target namespace | String | Namespace URI des Typs (leer, wenn anonym) | base type definition | Complex Type Definition |
| final | String-Sequenz ("restriction"|"extension") |
| context | Leere Sequenz (nicht implementiert) |
| derivation method | String ("restriction"|"extension") |
| abstract | Boolean |
| attribute uses | Attribute Use-Sequenz |
| attribute wildcard | Optionale Attribute Wildcard |
| content type | Funktion mit Eigenschaften: ("class":"Content Type", "variety":string ("element-only"|"empty"|"mixed"|"simple"), particle: optionales Partikel, "open content": Funktion mit Eigenschaften ("class":"Open Content", "mode": string ("interleave"|"suffix"), "wildcard": Wildcard), "simple type definition": Simple Type) |
| prohibited substitutions | String-Sequenz ("restriction"|"extension") |
| assertions | Assertion-Sequenz |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Complex Type" | name | String | Lokaler Name des Typs (leer, wenn anonym) | target namespace | String | Namespace URI des Typs (leer, wenn anonym) | type definition | Simple Type oder Complex Type |
| type table | Funktion mit Eigenschaften ("class":"Type Table", "alternatives": Type Alternative-Sequenz, "default type definition": Simple Type oder Complex Type) |
| scope | Funktion mit Eigenschaften ("class":"Scope", "variety": ("global"|"local"), "parent": optionaler Complex Type) |
| value constraint | siehe Attribute Declaration |
| nillable | Boolean |
| identity-constraint definitions | Identity Constraint-Sequenz |
| substitution group affiliations | Element Declaration-Sequenz |
| substitution group exclusions | String-Sequenz ("restriction"|"extension") |
| disallowed substitutions | String-Sequenz ("restriction"|"extension"|"substitution") |
| abstract | Boolean |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Wildcard" | namespace constraint | Funktion mit Eigenschaften ("class": "Namespace Constraint", "variety": "any"|"enumeration"|"not", "namespaces": xs:anyURI-Sequenz, "disallowed names": Liste mit QNames und/oder den Strings "defined" und "definedSiblings" |
| process contents | String ("strict"|"lax"|"skip") |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | Der Name des Facet, z.B. "minLength" oder "enumeration" | value | abhängig vom Facet | Der Wert des Facet | fixed | Boolean |
| typed-value | Nur für das Enumeration Facet, Array(xs:anyAtomicType*) | Ein Array, das Enumeration-Werte, von denen jeder im Allgemeinen eine Sequenz atomarer Werte sein kann, enthält. (Anmerkung: Die Eigenschaft "value" ist unabhängig vom tatsächlichen Typ für das Enumeration Facet eine String-Sequenz) |
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Identity-Constraint Definition" | name | String | Lokaler Name des Constraint | target namespace | String | Namespace URI des Constraint | identity-constraint category | String ("key"|"unique"|"keyRef") |
| selector | XPath-Eigenschaftsdatensatz |
| fields | Sequenz von XPath-Eigenschaftsdatensätzen |
| referenced key | (nur für keyRef): Identity Constraint | Der entsprechende Key Constraint |
|
Property name | Eigenschaftstyp | Eigenschaftswert | kind | String | "Model Group" | compositor | String ("sequence"|"choice"|"all") |
| particles | Partikel-Sequenz |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Model Group Definition" | name | String | Lokaler Name der Model Group | target namespace | String | Namespace URI der Model Group | model group | Model Group |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Notation Declaration" | name | String | Lokaler Name der Notation | target namespace | String | Namespace URI der Notation | system identifier | anyURI |
| public identifier | String |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Particle" | min occurs | Integer |
| max occurs | Integer oder String("unbounded") |
| term | Element Declaration, Element Wildcard oder ModelGroup |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Simple Type Definition" | name | String | Lokaler Name des Typs (leer, wenn anonym) | target namespace | String | Namespace URI des Typs (leer, wenn anonym) | final | String-Sequenz("restriction"|"extension"|"list"|"union") |
| context | enthaltende Komponente |
| base type definition | Simple Type |
| facets | Facet-Sequenz |
| fundamental facets | Leere Sequenz (nicht implementiert) |
| variety | String ("atomic"|"list"|"union") |
| primitive type definition | Simple Type |
| item type definition | (nur für Listentypen) Simple Type |
| member type definitions | (nur für Union-Typen) Simple Type-Sequenz |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Type Alternative" | test | XPath-Eigenschaftsdatensatz |
| type definition | Simple Type oder Complex Type |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | namespace bindings | Sequenz von Funktionen mit Eigenschaften ("prefix": string, "namespace": anyURI) |
| default namespace | anyURI |
| base URI | anyURI | Die statische Basis-UI des XPath-Ausdrucks | expression | String | Der XPath-Ausdruck als String |
|
|
altova:schema(ComponentKind als xs:string, Name als xs:QName) als (function(xs:string) als item()*)? XP3.1 XQ3.1 Gibt die im ersten Argument angegebene Komponentenart zurück, welche einen Namen hat, der mit dem im zweiten Argument angegebenen Namen übereinstimmt. Durch Auswahl einer der Eigenschaften der Komponente können Sie weiter navigieren. •Wenn es sich bei dieser Eigenschaft um eine Komponente handelt, können Sie durch Auswahl einer dieser Komponenteneigenschaften einen Schritt tiefer navigieren. Dieser Schritt kann wiederholt werden, um weiter in das Schema zu navigieren. •Wenn es sich bei der Komponente um einen atomaren Wert handelt, wird der atomare Wert zurückgegeben und Sie können nicht tiefer navigieren. Anmerkung: In XQuery-Ausdrücken muss das Schema explizit importiert werden. In XPath-Ausdrücken muss das Schema in die Verarbeitungsumgebung, z.B. in XSLT mit der Anweisung xslt:import importiert worden sein. •import schema "" at "C:\Test\ExpReport.xsd"; altova:schema("element declaration", xs:QName("OrgChart"))("type definition")("content type")("particles")[3]!.("term")("kind") gibt die kind-Eigenschaft des Terms der dritten particles-Komponente zurück. Diese particles-Komponente ist ein Nachfahr der Element-Deklaration mit dem QName QName OrgChart. •import schema "" at "C:\Test\ExpReport.xsd"; let $typedef := altova:schema("type definition", xs:QName("emailType")) for $facet in $typedef ("facets") return [$facet ("kind"), $facet("value")] gibt für jedes facet jeder emailType-Komponente ein Array mit der Art und dem Wert des Facet zurück. |
Komponenten und ihre Eigenschaften Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Assertion" | test | XPath-Eigenschaftsdatensatz |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Attribute Declaration" | name | String | Lokaler Name des Attributs | target namespace | String | Namespace URI des Attributs | type definition | SimpleType oder ComplexType |
| scope | Eine Funktion mit Eigenschaften ("class":"Scope", "variety": "global" oder "local", "parent": der enthaltende ComplexTyp bzw. die enthaltende Attributgruppe) |
| value constraint | Falls vorhanden, eine Funktion mit Eigenschaften ("class": "Value Constraint", "variety": "fixed" oder "default", "value": atomarer Wert, "lexical form": String. Beachten Sie, dass die Eigenschaft "value" für Namespace-sensitive Typen nicht zur Verfügung steht. |
| inheritable | Boolean |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Attribute Group Definition" | name | String | Lokaler Name der Attributgruppe | target namespace | String | Namespace URI der Attributgruppe | attribute uses | Sequenz von (Attribute Use) |
| attribute wildcard | Optionale Attribut-Wildcard |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Attribute Use" | required | Boolean | true, wenn das Attribut obligatorisch ist, false, wenn es optional ist. | value constraint | Siehe Attribute Declaration |
| inheritable | Boolean |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | string | "Wildcard" | namespace constraint | Funktion mit Eigenschaften ("class": "Namespace Constraint", "variety": "any"|"enumeration"|"not", "namespaces": Sequenz von xs:anyURI, "disallowed names": Liste mit QNames und/oder den Strings "defined" und "definedSiblings" |
| process contents | String ("strict"|"lax"|"skip") |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Complex Type" | name | String | Lokaler Name des Typs (leer, wenn anonym) | target namespace | String | Namespace URI des Typs (leer, wenn anonym) | base type definition | Complex Type Definition |
| final | String-Sequenz ("restriction"|"extension") |
| context | Leere Sequenz (nicht implementiert) |
| derivation method | String ("restriction"|"extension") |
| abstract | Boolean |
| attribute uses | Attribute Use-Sequenz |
| attribute wildcard | Optionale Attribute Wildcard |
| content type | Funktion mit Eigenschaften: ("class":"Content Type", "variety":string ("element-only"|"empty"|"mixed"|"simple"), particle: optionales Partikel, "open content": Funktion mit Eigenschaften ("class":"Open Content", "mode": string ("interleave"|"suffix"), "wildcard": Wildcard), "simple type definition": Simple Type) |
| prohibited substitutions | String-Sequenz ("restriction"|"extension") |
| assertions | Assertion-Sequenz |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Complex Type" | name | String | Lokaler Name des Typs (leer, wenn anonym) | target namespace | String | Namespace URI des Typs (leer, wenn anonym) | type definition | Simple Type oder Complex Type |
| type table | Funktion mit Eigenschaften ("class":"Type Table", "alternatives": Type Alternative-Sequenz, "default type definition": Simple Type oder Complex Type) |
| scope | Funktion mit Eigenschaften ("class":"Scope", "variety": ("global"|"local"), "parent": optionaler Complex Type) |
| value constraint | siehe Attribute Declaration |
| nillable | Boolean |
| identity-constraint definitions | Identity Constraint-Sequenz |
| substitution group affiliations | Element Declaration-Sequenz |
| substitution group exclusions | String-Sequenz ("restriction"|"extension") |
| disallowed substitutions | String-Sequenz ("restriction"|"extension"|"substitution") |
| abstract | Boolean |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Wildcard" | namespace constraint | Funktion mit Eigenschaften ("class": "Namespace Constraint", "variety": "any"|"enumeration"|"not", "namespaces": xs:anyURI-Sequenz, "disallowed names": Liste mit QNames und/oder den Strings "defined" und "definedSiblings" |
| process contents | String ("strict"|"lax"|"skip") |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | Der Name des Facet, z.B. "minLength" oder "enumeration" | value | abhängig vom Facet | Der Wert des Facet | fixed | Boolean |
| typed-value | Nur für das Enumeration Facet, Array(xs:anyAtomicType*) | Ein Array, das Enumeration-Werte, von denen jeder im Allgemeinen eine Sequenz atomarer Werte sein kann, enthält. (Anmerkung: Die Eigenschaft "value" ist unabhängig vom tatsächlichen Typ für das Enumeration Facet eine String-Sequenz) |
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Identity-Constraint Definition" | name | String | Lokaler Name des Constraint | target namespace | String | Namespace URI des Constraint | identity-constraint category | String ("key"|"unique"|"keyRef") |
| selector | XPath-Eigenschaftsdatensatz |
| fields | Sequenz von XPath-Eigenschaftsdatensätzen |
| referenced key | (nur für keyRef): Identity Constraint | Der entsprechende Key Constraint |
|
Property name | Eigenschaftstyp | Eigenschaftswert | kind | String | "Model Group" | compositor | String ("sequence"|"choice"|"all") |
| particles | Partikel-Sequenz |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Model Group Definition" | name | String | Lokaler Name der Model Group | target namespace | String | Namespace URI der Model Group | model group | Model Group |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Notation Declaration" | name | String | Lokaler Name der Notation | target namespace | String | Namespace URI der Notation | system identifier | anyURI |
| public identifier | String |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Particle" | min occurs | Integer |
| max occurs | Integer oder String("unbounded") |
| term | Element Declaration, Element Wildcard oder ModelGroup |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Simple Type Definition" | name | String | Lokaler Name des Typs (leer, wenn anonym) | target namespace | String | Namespace URI des Typs (leer, wenn anonym) | final | String-Sequenz("restriction"|"extension"|"list"|"union") |
| context | enthaltende Komponente |
| base type definition | Simple Type |
| facets | Facet-Sequenz |
| fundamental facets | Leere Sequenz (nicht implementiert) |
| variety | String ("atomic"|"list"|"union") |
| primitive type definition | Simple Type |
| item type definition | (nur für Listentypen) Simple Type |
| member type definitions | (nur für Union-Typen) Simple Type-Sequenz |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Type Alternative" | test | XPath-Eigenschaftsdatensatz |
| type definition | Simple Type oder Complex Type |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | namespace bindings | Sequenz von Funktionen mit Eigenschaften ("prefix": string, "namespace": anyURI) |
| default namespace | anyURI |
| base URI | anyURI | Die statische Basis-UI des XPath-Ausdrucks | expression | String | Der XPath-Ausdruck als String |
|
|
altova:type(Node als item?) als (function(xs:string) als item()*)? XP3.1 XQ3.1 Die Funktion altova:type übermittelt einen Element- oder Attribut-Node eines XML-Dokuments und gibt die Typinformationen des Node aus dem PSVI zurück. Anmerkung: Das XML-Dokument muss eine Schema-Deklaration haben, damit das Schema referenziert werden kann. •for $element in //Email let $type := altova:type($element) return $type gibt eine Funktion zurück, die die Typinformationen des Node Email enthält. •for $element in //Email let $type := altova:type($element) return $type ("kind") ermittelt anhand der Typ-Komponente des Node (Simple Type oder Complex Type) den Wert der Eigenschaft kind der Komponente. Der Parameter "_props" gibt die Eigenschaften der ausgewählten Komponente zurück, z.B: •for $element in //Email let $type := altova:type($element) return ($type ("kind"), $type ("_props")) nimmt die Typkomponente des Node Email (Simple Type oder Complex Type) und gibt (i) den Wert der Eigenschaft kind der Komponente zurück und anschließend (ii) die Eigenschaften dieser Komponente. |
Komponenten und ihre Eigenschaften Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Assertion" | test | XPath-Eigenschaftsdatensatz |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Attribute Declaration" | name | String | Lokaler Name des Attributs | target namespace | String | Namespace URI des Attributs | type definition | SimpleType oder ComplexType |
| scope | Eine Funktion mit Eigenschaften ("class":"Scope", "variety": "global" oder "local", "parent": der enthaltende ComplexTyp bzw. die enthaltende Attributgruppe) |
| value constraint | Falls vorhanden, eine Funktion mit Eigenschaften ("class": "Value Constraint", "variety": "fixed" oder "default", "value": atomarer Wert, "lexical form": String. Beachten Sie, dass die Eigenschaft "value" für Namespace-sensitive Typen nicht zur Verfügung steht. |
| inheritable | Boolean |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Attribute Group Definition" | name | String | Lokaler Name der Attributgruppe | target namespace | String | Namespace URI der Attributgruppe | attribute uses | Sequenz von (Attribute Use) |
| attribute wildcard | Optionale Attribut-Wildcard |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Attribute Use" | required | Boolean | true, wenn das Attribut obligatorisch ist, false, wenn es optional ist. | value constraint | Siehe Attribute Declaration |
| inheritable | Boolean |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | string | "Wildcard" | namespace constraint | Funktion mit Eigenschaften ("class": "Namespace Constraint", "variety": "any"|"enumeration"|"not", "namespaces": Sequenz von xs:anyURI, "disallowed names": Liste mit QNames und/oder den Strings "defined" und "definedSiblings" |
| process contents | String ("strict"|"lax"|"skip") |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Complex Type" | name | String | Lokaler Name des Typs (leer, wenn anonym) | target namespace | String | Namespace URI des Typs (leer, wenn anonym) | base type definition | Complex Type Definition |
| final | String-Sequenz ("restriction"|"extension") |
| context | Leere Sequenz (nicht implementiert) |
| derivation method | String ("restriction"|"extension") |
| abstract | Boolean |
| attribute uses | Attribute Use-Sequenz |
| attribute wildcard | Optionale Attribute Wildcard |
| content type | Funktion mit Eigenschaften: ("class":"Content Type", "variety":string ("element-only"|"empty"|"mixed"|"simple"), particle: optionales Partikel, "open content": Funktion mit Eigenschaften ("class":"Open Content", "mode": string ("interleave"|"suffix"), "wildcard": Wildcard), "simple type definition": Simple Type) |
| prohibited substitutions | String-Sequenz ("restriction"|"extension") |
| assertions | Assertion-Sequenz |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Complex Type" | name | String | Lokaler Name des Typs (leer, wenn anonym) | target namespace | String | Namespace URI des Typs (leer, wenn anonym) | type definition | Simple Type oder Complex Type |
| type table | Funktion mit Eigenschaften ("class":"Type Table", "alternatives": Type Alternative-Sequenz, "default type definition": Simple Type oder Complex Type) |
| scope | Funktion mit Eigenschaften ("class":"Scope", "variety": ("global"|"local"), "parent": optionaler Complex Type) |
| value constraint | siehe Attribute Declaration |
| nillable | Boolean |
| identity-constraint definitions | Identity Constraint-Sequenz |
| substitution group affiliations | Element Declaration-Sequenz |
| substitution group exclusions | String-Sequenz ("restriction"|"extension") |
| disallowed substitutions | String-Sequenz ("restriction"|"extension"|"substitution") |
| abstract | Boolean |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Wildcard" | namespace constraint | Funktion mit Eigenschaften ("class": "Namespace Constraint", "variety": "any"|"enumeration"|"not", "namespaces": xs:anyURI-Sequenz, "disallowed names": Liste mit QNames und/oder den Strings "defined" und "definedSiblings" |
| process contents | String ("strict"|"lax"|"skip") |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | Der Name des Facet, z.B. "minLength" oder "enumeration" | value | abhängig vom Facet | Der Wert des Facet | fixed | Boolean |
| typed-value | Nur für das Enumeration Facet, Array(xs:anyAtomicType*) | Ein Array, das Enumeration-Werte, von denen jeder im Allgemeinen eine Sequenz atomarer Werte sein kann, enthält. (Anmerkung: Die Eigenschaft "value" ist unabhängig vom tatsächlichen Typ für das Enumeration Facet eine String-Sequenz) |
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Identity-Constraint Definition" | name | String | Lokaler Name des Constraint | target namespace | String | Namespace URI des Constraint | identity-constraint category | String ("key"|"unique"|"keyRef") |
| selector | XPath-Eigenschaftsdatensatz |
| fields | Sequenz von XPath-Eigenschaftsdatensätzen |
| referenced key | (nur für keyRef): Identity Constraint | Der entsprechende Key Constraint |
|
Property name | Eigenschaftstyp | Eigenschaftswert | kind | String | "Model Group" | compositor | String ("sequence"|"choice"|"all") |
| particles | Partikel-Sequenz |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Model Group Definition" | name | String | Lokaler Name der Model Group | target namespace | String | Namespace URI der Model Group | model group | Model Group |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Notation Declaration" | name | String | Lokaler Name der Notation | target namespace | String | Namespace URI der Notation | system identifier | anyURI |
| public identifier | String |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Particle" | min occurs | Integer |
| max occurs | Integer oder String("unbounded") |
| term | Element Declaration, Element Wildcard oder ModelGroup |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Simple Type Definition" | name | String | Lokaler Name des Typs (leer, wenn anonym) | target namespace | String | Namespace URI des Typs (leer, wenn anonym) | final | String-Sequenz("restriction"|"extension"|"list"|"union") |
| context | enthaltende Komponente |
| base type definition | Simple Type |
| facets | Facet-Sequenz |
| fundamental facets | Leere Sequenz (nicht implementiert) |
| variety | String ("atomic"|"list"|"union") |
| primitive type definition | Simple Type |
| item type definition | (nur für Listentypen) Simple Type |
| member type definitions | (nur für Union-Typen) Simple Type-Sequenz |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | kind | String | "Type Alternative" | test | XPath-Eigenschaftsdatensatz |
| type definition | Simple Type oder Complex Type |
|
|
Eigenschaftsname | Eigenschaftstyp | Eigenschaftswert | namespace bindings | Sequenz von Funktionen mit Eigenschaften ("prefix": string, "namespace": anyURI) |
| default namespace | anyURI |
| base URI | anyURI | Die statische Basis-UI des XPath-Ausdrucks | expression | String | Der XPath-Ausdruck als String |
|
|