Elemento <xsd:schema>
Contiene la definición de un esquema.
<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>
Atributos
attributeFormDefault
Formato de los atributos declarados en el espacio de nombres de destino de este esquema. El valor debe ser una de las cadenas siguientes: qualified o unqualified. El valor predeterminado es unqualified.Si el valor es unqualified, no se requiere certificar los atributos del espacio de nombres de destino con el prefijo del espacio de nombres.
Si el valor es qualified, se deben certificar los atributos del espacio de nombres de destino con el prefijo del espacio de nombres.
Este valor es el predeterminado global para todos los atributos declarados en el espacio de nombres de destino. Cada atributo puede invalidar esta configuración en su ámbito local mediante el atributo form.
Opcional.
blockDefault
Tipo de derivación. El atributo blockDefault establece el valor predeterminado del atributo block de los elementos element y complexType en el espacio de nombres de destino de este esquema. El atributo block evita que se utilice un tipo complejo (o elemento) que tenga el tipo especificado de derivación en lugar del tipo complejo (o elemento) heredado. Este valor puede contener #all o una lista que sea un subconjunto de extension, restriction o substitution.extension
Evita que se utilicen tipos complejos derivados por extensión en lugar de este tipo complejo.
restriction
Evita que se utilicen tipos complejos derivados por restricción en lugar de este tipo complejo.
substitution
Evita la sustitución de elementos. Un elemento se puede declarar a sí mismo como sustitución de otro si especifica el nombre del otro elemento en su atributo substitutionGroup.
#all
Evita que se utilicen todos los tipos complejos derivados en lugar de este tipo complejo.
Opcional.
elementFormDefault
Formato de los elementos declarados en el espacio de nombres de destino de este esquema. El valor debe ser una de las cadenas siguientes: qualified o unqualified. El valor predeterminado es unqualified.Si el valor es unqualified, no se requiere certificar los elementos del espacio de nombres de destino con el prefijo del espacio de nombres.
Si el valor es qualified, se deben certificar los elementos del espacio de nombres de destino con el prefijo del espacio de nombres.
Éste es el valor predeterminado global de todos los elementos declarados en el espacio de nombres de destino. Cada elemento puede invalidar esta configuración en su ámbito local mediante el atributo form.
Opcional.
finalDefault
Tipo de derivación. El atributo finalDefault establece el valor predeterminado del atributo final de los elementos element, simpleType y complexType en el espacio de nombres de destino de este esquema. El atributo final evita el tipo especificado de derivación de un elemento element, simpleType o complexType. En elementos element y complexType, este valor puede contener #all o una lista que sea un subconjunto de extension o restriction. En elementos simpleType, el valor puede contener adicionalmente list y union.extension
De manera predeterminada, los elementos de este esquema no se pueden derivar por extensión. Solo se aplica a elementos element y complexType.
restriction
Evita la derivación por restricción.
lista
Evita la derivación por lista. Solo se aplica a elementos simpleType.
union
Evita la derivación por unión. Solo se aplica a elementos simpleType.
#all
#all. De manera predeterminada, los elementos de este esquema no se pueden derivar por ningún método.
Opcional.
id
Identificador de este elemento. El valor id debe ser de tipo ID y debe ser único dentro del documento que contiene este elemento.Opcional.
targetNamespace
Referencia de la dirección URI del espacio de nombres de este esquema. También se puede asignar un prefijo para el espacio de nombres. Si no se asigna un prefijo, los componentes del esquema del espacio de nombres se pueden utilizar con referencias sin certificar.Opcional.
version
Versión del esquema.Opcional.
xml:lang
Indicador del idioma utilizado en el contenido.Parámetro opcional.
Información del elemento
Número de apariciones |
Una vez |
Elementos primarios |
(No hay elementos primarios). |
Contenido |
include, import, annotation, redefine attribute, attributeGroup, element, group, notation, simpleType, complexType |
Otro |
Los elementos include, import y redefine deben ir antes que los otros elementos, excepto del elemento annotation, que puede aparecer en cualquier parte. |
Comentarios
El elemento schema es el elemento de documento (el de nivel superior) en una definición de esquema.
Los espacios de nombres especificados mediante el atributo xmlns deben incluir el espacio de nombres de los elementos y atributos que definen el esquema (schema, element, etcétera). Se puede utilizar cualquier prefijo, pero es conveniente que el espacio de nombres schema sea el predeterminado para evitar la utilización de un prefijo en cada elemento del esquema XML.
El espacio de nombres de todos los componentes del esquema en este esquema es targetNamespace, así como en cualquier esquema incluido mediante el elemento include. Los esquemas incluidos deben tener el mismo espacio de nombres de destino que el esquema contenedor o carecer de espacio de nombres de destino. En el ejemplo siguiente, los componentes del esquema (nombre de elemento, tipo) del espacio de nombres http://www.w3.org/2001/XMLSchema son incompletos y los de http://tempuri.org/myschema (mydecimal) se han certificado con el prefijo msc.
Para el esquema XML, el espacio de nombres es el siguiente:
http://www.w3.org/2001/XMLSchema
Además, el elemento schema también debe contener las declaraciones de espacios de nombres de cualquier otro esquema que utilice.
Ejemplo
En el esquema siguiente se utiliza el espacio de nombres del esquema XML como espacio de nombres predeterminado y se define el espacio de nombres de destino para esquema como http://mynamespace/myschema
.
Otros recursos
Para obtener más información, vea la parte 1 sobre recomendación sobre estructuras de esquema XML en W3C en la dirección www.w3.org/TR/2001/REC-xmlschema-1-20010502/\#element-all.
Vea también
Referencia
Referencia de esquemas XML (XSD)
Elementos de los esquemas XML
Elemento <xsd:include>