Las funciones de extensión de Altova que enumeramos a continuación devuelven información del esquema. Más adelante verá descripciones de las funciones, junto con (i) ejemplos y (ii) una lista de los componentes del esquema y sus correspondientes propiedades. Estas funciones se pueden usar con los motores de Altova XPath 3.0 y XQuery 3.0, y están disponibles en contextos XPath/XQuery.
Información sobre el esquema proveniente de documentos de esquema
La función altova:schema tiene dos argumentos: uno que no tiene argumentos y otro que tiene dos. La función que no tiene argumentos devuelve todo el esquema. A partir de ahí puede navegar por el esquema para encontrar los componentes que necesite. La función con dos argumentos devuelve un tipo concreto de componente al que se identifica por su QName. En ambos casos el valor de retorno es una función. Para ir al componente devuelto debe seleccionar una de sus propiedades. Si esta propiedad es un elemento no atómico (es decir, si es un componente), entonces puede seleccionar también una propiedad de este componente para seguir navegando. Si la propiedad seleccionada sí es un elemento atómico, entonces se devuelve el valor del elemento y no puede seguir navegando.
Nota: | en las expresiones XPath de debe importar primero el esquema en el entorno de procesamiento (por ejemplo, XSLT), con la instrucción xslt:import-schema. En las expresiones XQuery, el esquema se debe importar de forma explícita. |
Información sobre el esquema proveniente de nodos XML
La función altova:type envía el nodo de un documento XML y devuelve la información del tipo del modo desde el PSVI (Conjunto de información posterior a la validación de esquemas).
Nota sobre el nombre de las funciones y lenguajes
Puede utilizar todas las funciones de extensión de Altova en sus expresiones XPath/XQuery. Con ellas conseguirá funciones adicionales no disponibles en la biblioteca de funciones estándar de XPath, XQuery y XSLT. Las funciones de extensión de Altova están en el espacio de nombres https://www.altova.com/xslt-extensions y en esta sección se presentan con el prefijo, que se supone estará enlazado al espacio de nombres señalado. Tenga en cuenta que en futuras versiones del producto algunas funciones pueden dejar de ser compatibles o su comportamiento puede cambiar. Por tanto, consulte siempre la documentación del producto para conocer el funcionamiento de estas funciones en cada versión del producto. Funciones XPath (en expresiones XPath en XSLT): | XP1 XP2 XP3.1.1 | Funciones XSLT (en expresiones XPath en XSLT): | XSLT1 XSLT2 XSLT3 | Funciones XQuery (en expresiones XQuery en XQuery): | XQ1 XQ3.1 |
|
altova:schema() como (function(xs:string) como item()*)? XP3.1 XQ3.1
Devuelve el componente schema al completo. Para navegar por este componente seleccione una de sus propiedades.
•Si esta propiedad es un componente seleccione una de sus propiedades para navegar hasta el siguiente nivel de profundidad. Puede repetir este paso para seguir navegando por el esquema.
•Si el componente es un valor atómico se devuelve este valor y no puede seguir navegando.
Las propiedades del componente schema son:
"type definitions"
"attribute declarations"
"element declarations"
"attribute group definitions"
"model group definitions"
"notation declarations"
"identity-constraint definitions"
Más abajo encontrará las propiedades del resto de tipos de componente.
Nota: en las expresiones XQuery, el esquema se debe importar de forma explícita. En las expresiones XPath debe importar primero el esquema en el entorno de procesamiento, por ejemplo en XSLT con la instrucción xslt:import.
•import schema "" at "C:\Test\ExpReport.xsd"; for \$typedef in altova:schema() ("type definitions") return \$typedef ("name") devuelve los nombres de todos los tipos simples o complejos del esquema •import schema "" at "C:\Test\ExpReport.xsd"; altova:schema() ("type definitions")[1]("name") devuelve el nombre del primero de los tipos simples o complejos del esquema |
Componentes y sus propiedades
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Assertion" | test | Registro de propiedades XPath |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Attribute Declaration" | name | Cadena | Nombre local del atributo | target namespace | Cadena | URI del espacio de nombres del atributo | type definition | Simple Type o Complex Type |
| scope | Una función con propiedades ("class":"Scope", "variety": "global" o "local", "parent": el Complex Type o Attribute Group contenedor) |
| value constraint | Si está presente, una función con propiedades ("class": "Value Constraint", "variety": "fixed" o "default", "value": atomic value, "lexical form": string. Tenga en cuenta que la propiedad "value" no está disponible para los tipos namespace-sensitive |
| inheritable | Booleano |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Attribute Group Definition" | name | Cadena | Nombre local del grupo de atributos | target namespace | Cadena | URI del espacio de nombres del grupo de atributos | attribute uses | Secuencia de (Attribute Use) |
| attribute wildcard | Comodín de atributo opcional |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Attribute Use" | required | Booleano | true si el atributo es obligatorio, false si es opcional | value constraint | Véase la declaración de atributos |
| inheritable | Booleano |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Wildcard" | namespace constraint | Función con propiedades ("class": "Namespace Constraint", "variety": "any"|"enumeration"|"not", "namespaces": secuencia de elementos xs:anyURI, "disallowed names": lista que contiene QNames y/o las cadenas "defined" y "definedSiblings" |
| process contents | Cadena ("strict"|"lax"|"skip") |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Complex Type" | name | Cadena | Nombre local del tipo (vacío si es anónimo) | target namespace | Cadena | URI del espacio de nombres del tipo (vacío si es anónimo) | base type definition | Definición del Complex Type |
| final | Secuencia de cadenas ("restriction"|"extension") |
| context | Secuencia vacía (not implemented) |
| derivation method | Cadena ("restriction"|"extension") |
| abstract | Booleano |
| attribute uses | Secuencia de elementos Attribute Use |
| attribute wildcard | Comodín de atributo opcional |
| content type | Función con propiedades: ("class":"Content Type", "variety":string ("element-only"|"empty"|"mixed"|"simple"), particle: partícula opcional, "open content": función con propiedades ("class":"Open Content", "mode": string ("interleave"|"suffix"), "wildcard": Wildcard), "simple type definition": Simple Type) |
| prohibited substitutions | Secuencia de cadenas ("restriction"|"extension") |
| assertions | Secuencia de elementos Assertion |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Complex Type" | name | Cadena | Nombre local del tipo (vacío si es anónimo) | target namespace | Cadena | Namespace URI del tipo (vacío si es anónimo) | type definition | Simple Type o Complex Type |
| type table | Función con propiedades ("class":"Type Table", "alternatives": secuencia de elementos Type Alternative, "default type definition": Simple Type o Complex Type) |
| scope | Función con propiedades ("class":"Scope", "variety": ("global"|"local"), "parent": Complex Type opcional) |
| value constraint | véase Attribute Declaration |
| nillable | Booleano |
| identity-constraint definitions | Secuencia de restricciones de identidad |
| substitution group affiliations | Secuencia de declaraciones de elementos |
| substitution group exclusions | Secuencia de cadenas ("restriction"|"extension") |
| disallowed substitutions | Secuencia de cadenas ("restriction"|"extension"|"substitution") |
| abstract | Booleano |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Wildcard" | namespace constraint | Función con propiedades ("class": "Namespace Constraint", "variety": "any"|"enumeration"|"not", "namespaces": secuencia de xs:anyURI, "disallowed names": lista que contiene QNames y/o las cadenas "defined" y "definedSiblings" |
| process contents | Cadena ("strict"|"lax"|"skip") |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | El nombre de la faceta, por ejemplo "minLength" o "enumeration" | value | Depende de la faceta | El valor de la faceta | fixed | Booleano |
| typed-value | Solo para facetas de enumeración, Array(xs:anyAtomicType*) | Una matriz que contiene los valores de la enumeración, cada uno de los cuales puede ser una secuencia de valores atómicos. (Nota: para la faceta de enumeración, la propiedad "value" es un secuencia de cadenas, independientemente del tipo) |
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Identity-Constraint Definition" | name | Cadena | Nombre local de la restricción | target namespace | Cadena | URI del espacio de nombres de la restricción | identity-constraint category | Cadena ("key"|"unique"|"keyRef") |
| selector | Registro de propiedades XPath |
| fields | Secuencia de registros de propiedades XPath |
| referenced key | (Solo para keyRef): Identity Constraint | La restricción clave correspondiente |
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Model Group" | compositor | Cadena ("sequence"|"choice"|"all") |
| particles | Secuencia de partículas |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Model Group Definition" | name | Cadena | Nombre local del grupo de modelos | target namespace | Cadena | URI del espacio de nombres del grupo de modelos | model group | Model Group |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Notation Declaration" | name | Cadena | Nombre local de la notación | target namespace | Cadena | URI del espacio de nombres de la notación | system identifier | anyURI |
| public identifier | Cadena |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Particle" | min occurs | Número entero |
| max occurs | Número entero o cadena ("unbounded") |
| term | Element Declaration, Element Wildcard o ModelGroup |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Simple Type Definition" | name | Cadena | Nombre local del tipo (vacío si es anónimo) | target namespace | Cadena | URI del espacio de nombres del tipo (vacío si es anónimo) | final | Secuencia de cadenas ("restriction"|"extension"|"list"|"union") |
| context | Componente contenedor |
| base type definition | Simple Type |
| facets | Secuencia de facetas |
| fundamental facets | Secuencia vacía (no implementada) |
| variety | Cadena ("atomic"|"list"|"union") |
| primitive type definition | Simple Type |
| item type definition | (Solo para tipos de lista) Simple Type |
| member type definitions | (Solo para tipos de unión) Secuencia de elementos Simple Type |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Type Alternative" | test | Registro de propiedades XPath |
| type definition | Simple Type o Complex Type |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | namespace bindings | Secuencia de funciones con propiedades ("prefix": string, "namespace": anyURI) |
| default namespace | anyURI |
| base URI | anyURI | El URI de base estático de la expresión XPath | expression | Cadena | La expresión XPath como cadena de texto |
|
altova:schema(ComponentKind as xs:string, Name as xs:QName) como (function(xs:string) como item()*)? XP3.1 XQ3.1
Devuelve el tipo de componente que se indica en el primer argumento que tiene el mismo nombre que el que se indica en el segundo argumento. Para seguir navegando seleccione una de las propiedades del componente.
•Si esta propiedad es un componente seleccione una de sus propiedades para navegar hasta el siguiente nivel de profundidad. Puede repetir este paso para seguir navegando por el esquema.
•Si el componente es un valor atómico se devuelve este valor y no puede seguir navegando.
Nota: en las expresiones XQuery, el esquema se debe importar de forma explícita. En las expresiones XPath debe importar primero el esquema en el entorno de procesamiento, por ejemplo en XSLT con la instrucción xslt:import.
•import schema "" at "C:\Test\ExpReport.xsd"; altova:schema("element declaration", xs:QName("OrgChart"))("type definition")("content type")("particles")[3]!.("term")("kind") devuelve la propiedad kind del término del tercer componente particles. Este componente desciende de la declaración de elementos que tiene un QName de 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")] devuelve, por cada facet de cada componente emailType, una matriz que contiene el tipo y el valor de ese elemento facet |
Componentes y sus propiedades
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Assertion" | test | Registro de propiedades XPath |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Attribute Declaration" | name | Cadena | Nombre local del atributo | target namespace | Cadena | URI del espacio de nombres del atributo | type definition | Simple Type o Complex Type |
| scope | Una función con propiedades ("class":"Scope", "variety": "global" o "local", "parent": el Complex Type o Attribute Group contenedor) |
| value constraint | Si está presente, una función con propiedades ("class": "Value Constraint", "variety": "fixed" o "default", "value": atomic value, "lexical form": string. Tenga en cuenta que la propiedad "value" no está disponible para los tipos namespace-sensitive |
| inheritable | Booleano |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Attribute Group Definition" | name | Cadena | Nombre local del grupo de atributos | target namespace | Cadena | URI del espacio de nombres del grupo de atributos | attribute uses | Secuencia de (Attribute Use) |
| attribute wildcard | Comodín de atributo opcional |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Attribute Use" | required | Booleano | true si el atributo es obligatorio, false si es opcional | value constraint | Véase la declaración de atributos |
| inheritable | Booleano |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Wildcard" | namespace constraint | Función con propiedades ("class": "Namespace Constraint", "variety": "any"|"enumeration"|"not", "namespaces": secuencia de elementos xs:anyURI, "disallowed names": lista que contiene QNames y/o las cadenas "defined" y "definedSiblings" |
| process contents | Cadena ("strict"|"lax"|"skip") |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Complex Type" | name | Cadena | Nombre local del tipo (vacío si es anónimo) | target namespace | Cadena | URI del espacio de nombres del tipo (vacío si es anónimo) | base type definition | Definición del Complex Type |
| final | Secuencia de cadenas ("restriction"|"extension") |
| context | Secuencia vacía (not implemented) |
| derivation method | Cadena ("restriction"|"extension") |
| abstract | Booleano |
| attribute uses | Secuencia de elementos Attribute Use |
| attribute wildcard | Comodín de atributo opcional |
| content type | Función con propiedades: ("class":"Content Type", "variety":string ("element-only"|"empty"|"mixed"|"simple"), particle: partícula opcional, "open content": función con propiedades ("class":"Open Content", "mode": string ("interleave"|"suffix"), "wildcard": Wildcard), "simple type definition": Simple Type) |
| prohibited substitutions | Secuencia de cadenas ("restriction"|"extension") |
| assertions | Secuencia de elementos Assertion |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Complex Type" | name | Cadena | Nombre local del tipo (vacío si es anónimo) | target namespace | Cadena | Namespace URI del tipo (vacío si es anónimo) | type definition | Simple Type o Complex Type |
| type table | Función con propiedades ("class":"Type Table", "alternatives": secuencia de elementos Type Alternative, "default type definition": Simple Type o Complex Type) |
| scope | Función con propiedades ("class":"Scope", "variety": ("global"|"local"), "parent": Complex Type opcional) |
| value constraint | véase Attribute Declaration |
| nillable | Booleano |
| identity-constraint definitions | Secuencia de restricciones de identidad |
| substitution group affiliations | Secuencia de declaraciones de elementos |
| substitution group exclusions | Secuencia de cadenas ("restriction"|"extension") |
| disallowed substitutions | Secuencia de cadenas ("restriction"|"extension"|"substitution") |
| abstract | Booleano |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Wildcard" | namespace constraint | Función con propiedades ("class": "Namespace Constraint", "variety": "any"|"enumeration"|"not", "namespaces": secuencia de xs:anyURI, "disallowed names": lista que contiene QNames y/o las cadenas "defined" y "definedSiblings" |
| process contents | Cadena ("strict"|"lax"|"skip") |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | El nombre de la faceta, por ejemplo "minLength" o "enumeration" | value | Depende de la faceta | El valor de la faceta | fixed | Booleano |
| typed-value | Solo para facetas de enumeración, Array(xs:anyAtomicType*) | Una matriz que contiene los valores de la enumeración, cada uno de los cuales puede ser una secuencia de valores atómicos. (Nota: para la faceta de enumeración, la propiedad "value" es un secuencia de cadenas, independientemente del tipo) |
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Identity-Constraint Definition" | name | Cadena | Nombre local de la restricción | target namespace | Cadena | URI del espacio de nombres de la restricción | identity-constraint category | Cadena ("key"|"unique"|"keyRef") |
| selector | Registro de propiedades XPath |
| fields | Secuencia de registros de propiedades XPath |
| referenced key | (Solo para keyRef): Identity Constraint | La restricción clave correspondiente |
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Model Group" | compositor | Cadena ("sequence"|"choice"|"all") |
| particles | Secuencia de partículas |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Model Group Definition" | name | Cadena | Nombre local del grupo de modelos | target namespace | Cadena | URI del espacio de nombres del grupo de modelos | model group | Model Group |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Notation Declaration" | name | Cadena | Nombre local de la notación | target namespace | Cadena | URI del espacio de nombres de la notación | system identifier | anyURI |
| public identifier | Cadena |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Particle" | min occurs | Número entero |
| max occurs | Número entero o cadena ("unbounded") |
| term | Element Declaration, Element Wildcard o ModelGroup |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Simple Type Definition" | name | Cadena | Nombre local del tipo (vacío si es anónimo) | target namespace | Cadena | URI del espacio de nombres del tipo (vacío si es anónimo) | final | Secuencia de cadenas ("restriction"|"extension"|"list"|"union") |
| context | Componente contenedor |
| base type definition | Simple Type |
| facets | Secuencia de facetas |
| fundamental facets | Secuencia vacía (no implementada) |
| variety | Cadena ("atomic"|"list"|"union") |
| primitive type definition | Simple Type |
| item type definition | (Solo para tipos de lista) Simple Type |
| member type definitions | (Solo para tipos de unión) Secuencia de elementos Simple Type |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Type Alternative" | test | Registro de propiedades XPath |
| type definition | Simple Type o Complex Type |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | namespace bindings | Secuencia de funciones con propiedades ("prefix": string, "namespace": anyURI) |
| default namespace | anyURI |
| base URI | anyURI | El URI de base estático de la expresión XPath | expression | Cadena | La expresión XPath como cadena de texto |
|
altova:type(Node as item?) como (function(xs:string) como item()*)? XP3.1 XQ3.1
La función altova:type indica un nodo de elemento o atributo de un documento XML y devuelve la información del tipo de nodo del PSVI (Conjunto de información posterior a la validación de esquemas).
Nota: el documento XML debe tener una declaración de esquema para que se pueda hacer referencia al esquema.
•for \$element in //Email let \$type := altova:type(\$element) return \$type devuelve una función que contiene información sobre el tipo de nodo •for \$element in //Email let \$type := altova:type(\$element) return \$type ("kind") toma el componente de tipo del nodo (tipo simple o complejo) y devuelve el valor de la propiedad kind del componente El parámetro "_props" devuelve las propiedades del componente seleccionado. Por ejemplo: •for \$element in //Email let \$type := altova:type(\$element) return (\$type ("kind"), \$type ("_props")) toma el componente de tipo del nodo (tipo simple o complejo) y devuelve (i) el valor de la propiedad kind del componente y después (ii) las propiedades de ese componente |
Componentes y sus propiedades
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Assertion" | test | Registro de propiedades XPath |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Attribute Declaration" | name | Cadena | Nombre local del atributo | target namespace | Cadena | URI del espacio de nombres del atributo | type definition | Simple Type o Complex Type |
| scope | Una función con propiedades ("class":"Scope", "variety": "global" o "local", "parent": el Complex Type o Attribute Group contenedor) |
| value constraint | Si está presente, una función con propiedades ("class": "Value Constraint", "variety": "fixed" o "default", "value": atomic value, "lexical form": string. Tenga en cuenta que la propiedad "value" no está disponible para los tipos namespace-sensitive |
| inheritable | Booleano |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Attribute Group Definition" | name | Cadena | Nombre local del grupo de atributos | target namespace | Cadena | URI del espacio de nombres del grupo de atributos | attribute uses | Secuencia de (Attribute Use) |
| attribute wildcard | Comodín de atributo opcional |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Attribute Use" | required | Booleano | true si el atributo es obligatorio, false si es opcional | value constraint | Véase la declaración de atributos |
| inheritable | Booleano |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Wildcard" | namespace constraint | Función con propiedades ("class": "Namespace Constraint", "variety": "any"|"enumeration"|"not", "namespaces": secuencia de elementos xs:anyURI, "disallowed names": lista que contiene QNames y/o las cadenas "defined" y "definedSiblings" |
| process contents | Cadena ("strict"|"lax"|"skip") |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Complex Type" | name | Cadena | Nombre local del tipo (vacío si es anónimo) | target namespace | Cadena | URI del espacio de nombres del tipo (vacío si es anónimo) | base type definition | Definición del Complex Type |
| final | Secuencia de cadenas ("restriction"|"extension") |
| context | Secuencia vacía (not implemented) |
| derivation method | Cadena ("restriction"|"extension") |
| abstract | Booleano |
| attribute uses | Secuencia de elementos Attribute Use |
| attribute wildcard | Comodín de atributo opcional |
| content type | Función con propiedades: ("class":"Content Type", "variety":string ("element-only"|"empty"|"mixed"|"simple"), particle: partícula opcional, "open content": función con propiedades ("class":"Open Content", "mode": string ("interleave"|"suffix"), "wildcard": Wildcard), "simple type definition": Simple Type) |
| prohibited substitutions | Secuencia de cadenas ("restriction"|"extension") |
| assertions | Secuencia de elementos Assertion |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Complex Type" | name | Cadena | Nombre local del tipo (vacío si es anónimo) | target namespace | Cadena | Namespace URI del tipo (vacío si es anónimo) | type definition | Simple Type o Complex Type |
| type table | Función con propiedades ("class":"Type Table", "alternatives": secuencia de elementos Type Alternative, "default type definition": Simple Type o Complex Type) |
| scope | Función con propiedades ("class":"Scope", "variety": ("global"|"local"), "parent": Complex Type opcional) |
| value constraint | véase Attribute Declaration |
| nillable | Booleano |
| identity-constraint definitions | Secuencia de restricciones de identidad |
| substitution group affiliations | Secuencia de declaraciones de elementos |
| substitution group exclusions | Secuencia de cadenas ("restriction"|"extension") |
| disallowed substitutions | Secuencia de cadenas ("restriction"|"extension"|"substitution") |
| abstract | Booleano |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Wildcard" | namespace constraint | Función con propiedades ("class": "Namespace Constraint", "variety": "any"|"enumeration"|"not", "namespaces": secuencia de xs:anyURI, "disallowed names": lista que contiene QNames y/o las cadenas "defined" y "definedSiblings" |
| process contents | Cadena ("strict"|"lax"|"skip") |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | El nombre de la faceta, por ejemplo "minLength" o "enumeration" | value | Depende de la faceta | El valor de la faceta | fixed | Booleano |
| typed-value | Solo para facetas de enumeración, Array(xs:anyAtomicType*) | Una matriz que contiene los valores de la enumeración, cada uno de los cuales puede ser una secuencia de valores atómicos. (Nota: para la faceta de enumeración, la propiedad "value" es un secuencia de cadenas, independientemente del tipo) |
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Identity-Constraint Definition" | name | Cadena | Nombre local de la restricción | target namespace | Cadena | URI del espacio de nombres de la restricción | identity-constraint category | Cadena ("key"|"unique"|"keyRef") |
| selector | Registro de propiedades XPath |
| fields | Secuencia de registros de propiedades XPath |
| referenced key | (Solo para keyRef): Identity Constraint | La restricción clave correspondiente |
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Model Group" | compositor | Cadena ("sequence"|"choice"|"all") |
| particles | Secuencia de partículas |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Model Group Definition" | name | Cadena | Nombre local del grupo de modelos | target namespace | Cadena | URI del espacio de nombres del grupo de modelos | model group | Model Group |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Notation Declaration" | name | Cadena | Nombre local de la notación | target namespace | Cadena | URI del espacio de nombres de la notación | system identifier | anyURI |
| public identifier | Cadena |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Particle" | min occurs | Número entero |
| max occurs | Número entero o cadena ("unbounded") |
| term | Element Declaration, Element Wildcard o ModelGroup |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Simple Type Definition" | name | Cadena | Nombre local del tipo (vacío si es anónimo) | target namespace | Cadena | URI del espacio de nombres del tipo (vacío si es anónimo) | final | Secuencia de cadenas ("restriction"|"extension"|"list"|"union") |
| context | Componente contenedor |
| base type definition | Simple Type |
| facets | Secuencia de facetas |
| fundamental facets | Secuencia vacía (no implementada) |
| variety | Cadena ("atomic"|"list"|"union") |
| primitive type definition | Simple Type |
| item type definition | (Solo para tipos de lista) Simple Type |
| member type definitions | (Solo para tipos de unión) Secuencia de elementos Simple Type |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | kind | Cadena | "Type Alternative" | test | Registro de propiedades XPath |
| type definition | Simple Type o Complex Type |
|
|
Nombre de la propiedad | Tipo de la propiedad | Valor de la propiedad | namespace bindings | Secuencia de funciones con propiedades ("prefix": string, "namespace": anyURI) |
| default namespace | anyURI |
| base URI | anyURI | El URI de base estático de la expresión XPath | expression | Cadena | La expresión XPath como cadena de texto |
|