Esquema XML define / Facetas
Limited (restricción) se utiliza para definir elemento XML aceptable o valores de atributos. Para definir los elementos XML se llaman facetas.
valores límite
En el siguiente ejemplo se define un elemento con una "edad" definido y con nombre de. El valor de la edad no puede ser menor que 0 o mayor que 120:
<xs:simpleType>
<xs:restriction base="xs:integer">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="120"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
La definición de un conjunto de valores
Para el contenido del elemento XML se limita a un conjunto de valores aceptables, usaríamos la restricción de enumeración (restricción de enumeración).
En el siguiente ejemplo se define un elemento con un "coche" calificado nombre es. Sólo los valores aceptables son: Audi, Golf, BMW:
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Audi"/>
<xs:enumeration value="Golf"/>
<xs:enumeration value="BMW"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
El ejemplo anterior también se puede escribir como:
<xs:simpleType name="carType">
<xs:restriction base="xs:string">
<xs:enumeration value="Audi"/>
<xs:enumeration value="Golf"/>
<xs:enumeration value="BMW"/>
</xs:restriction>
</xs:simpleType>
Nota: En este caso, el tipo "Cartype" puede ser utilizado por otros elementos, ya que no es parte del elemento de "coche".
Una serie de valor limitado
Para limitar el contenido de un elemento XML se define como una serie de números o letras que se pueden utilizar, queremos utilizar el confinamiento de modo (patrón de restricción).
En el siguiente ejemplo se define un elemento con una llamada "letra" definido de. Los únicos valores aceptables letras minúsculas a - z uno:
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[a-z]"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
El siguiente ejemplo define un elemento con un definido denominado "iniciales" de. Los valores aceptables son las letras mayúsculas A - Z en la que tres de ellos:
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[A-Z][A-Z][A-Z]"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
El siguiente ejemplo también define un elemento con un definido denominado "iniciales" de. Los valores aceptables son letras mayúsculas o minúsculas a - z tres de ellos:
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[a-zA-Z][a-zA-Z][a-zA-Z]"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
El siguiente ejemplo define un elemento con una selección limitada llamada "valor aceptable es las letras x, y o z en un:
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[xyz]"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
El siguiente ejemplo define un elemento con un nombre calificado "prodid" de. Los valores aceptables son una secuencia de cinco dígitos, y cada número en el intervalo de 0-9:
<xs:simpleType>
<xs:restriction base="xs:integer">
<xs:pattern value="[0-9][0-9][0-9][0-9][0-9]"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
Una serie de valores definidos para otro
En el siguiente ejemplo se define un elemento con una llamada "letra" definido de. Los valores aceptables son a - z cero o más letras:
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="([a-z])*"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
En el siguiente ejemplo se define un elemento con una llamada "letra" definido de. Los valores aceptables son uno o más pares de letras, cada par consiste en una letra minúscula seguido de una letra mayúscula. Por ejemplo, "Stop" validará este modelo, pero el "Stop", "STOP" o "parada" no puede ser verificada:
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="([a-z][A-Z])+"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
En el siguiente ejemplo se define un elemento con un llamado "género" es definido. Los valores aceptables son hombres o mujeres:
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="male|female"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
En el siguiente ejemplo se define un elemento con un nombre "contraseña" calificado de. Los valores aceptables son una fila de caracteres consta de ocho caracteres, estos caracteres deben ser mayúsculas o minúsculas a - z o voluntad digitales 0--9:
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[a-zA-Z0-9]{8}"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
carácter en blanco definido
Para especificar enfoque de caracteres de espacio en blanco (espacios en blanco), tenemos que utilizar whiteSpace limitado.
En el siguiente ejemplo se define un elemento de "dirección" con un llamado definido. Este whiteSpace Limited está ajustado a "preservar", lo que significa que el procesador XML no se eliminarán todos los caracteres de espacio en blanco:
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:whiteSpace value="preserve"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
Este ejemplo también define un elemento de "dirección" con un llamado definido. Este whiteSpace Limited se establece en "reemplazar", lo que significa que el procesador XML eliminará todos los caracteres de espacio en blanco (saltos de línea, retornos de carro, espacios y pestañas):
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:whiteSpace value="replace"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
Este ejemplo también define un elemento de "dirección" con un llamado definido. Este whiteSpace Limited se establece en "colapso", lo que significa que el procesador XML eliminará todos los caracteres de espacio en blanco (saltos de línea, retornos de carro, espacios y tabuladores se sustituyen por espacios, espacios iniciales y finales serán eliminados, y múltiples espacios consecutivos se reducen a un solo espacio):
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:whiteSpace value="collapse"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
De longitud definida
Para limitar la longitud de los valores de los elementos, tenemos que utilizar la longitud, maxLength y minLength limitados.
Los elementos con una "contraseña" definido y nombrado en este caso se define. Su valor debe ser exactamente ocho caracteres:
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:length value="8"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
Este ejemplo también define un elemento con un nombre "contraseña" calificado de. Su valor es de un mínimo de 5 caracteres y un máximo de ocho caracteres:
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="5"/>
<xs:maxLength value="8"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
tipos de datos definidos
limitado | descripción |
---|---|
enumeración | Definir una lista de valores aceptables |
fractionDigits | Define el número máximo permitido de decimales. Se debe ser mayor que 0. |
longitud | Definir el número exacto de caracteres permitidos o elementos de la lista. Se debe ser mayor que o igual a 0. |
maxExclusive | Definir el valor límite superior. valor permitido debe ser inferior a este valor. |
maxInclusive | Definir el valor límite superior. Valor permitido debe ser menor que o igual a este valor. |
maxLength | Define el número máximo de caracteres permitidos o elementos de la lista. Se debe ser mayor que o igual a 0. |
minExclusive | Se define el valor límite inferior. El valor debe ser permitido mayor que este valor. |
minInclusive | Se define el valor límite inferior. Valor permitido debe ser mayor o igual a este valor. |
minLength | Define el número mínimo de caracteres permitidos o elementos de la lista. Se debe ser mayor que o igual a 0. |
patrón | Definir la secuencia exacta de caracteres aceptables. |
totalDigits | En él se definen los números arábigos precisión dígitos permitidos. Se debe ser mayor que 0. |
whiteSpace | La definición de los caracteres en blanco el espacio (saltos de línea, retornos de carro, tabulaciones y espacios) se manejan. |