• No se han encontrado resultados

Estudio de un caso Análisis de esquemas XML [2]

N/A
N/A
Protected

Academic year: 2021

Share "Estudio de un caso Análisis de esquemas XML [2]"

Copied!
5
0
0

Texto completo

(1)

      Val or añadid o Danys oft | www.d any sof t.com 1

Estudio de un caso

Análisis de esquemas XML [2]

Dirigido a: Administradores de Bases de Datos | Área: Bases de Datos Autor: Pablo F. Dueñas | Servicios Profesionales Danysoft

  

Resumen

 

En nuestro anterior artículo vimos la importancia de los esquemas dentro de las definiciones XML.  Comenzamos con la introducción de qué es un esquema y nos pusimos manos a la obra con un caso real.  Para mejorar la comprensión de dicho esquema nos guiamos por una de las herramientas líderes del  mercado: XMLSpy. Nos queda terminar de ver en profundidad el caso en estudio para comprender los  esquemas XML. 

Introducción

 

Vamos a continuar con nuestro estudio de un caso real. La ventaja de usarlo es que vamos a ir aprendiendo  qué es un esquema, qué componentes tiene, cómo analizarlo, etc. Todo esto no como algo teórico, sino  como producto del análisis progresivo del esquema real del Certificado de Empresa, por lo que va a ser más  fácil aprender XML Schema.    El anterior artículo lo terminamos viendo gráficamente un elemento complejo, por lo que este lo  iniciaremos con los elementos simples que lo componen. 

Elementos

 

simples

 

Los elementos dentro de Datos_Representante, ¿cómo están definidos? Muy fácil, hacemos clic en uno  de ellos, por ejemplo CIF_NIF y vemos sus detalles: 

      La ventana detalles nos muestra que es obligatorio que aparezca una y sólo una vez, es del tipo  CIF_NIF_SIMPLETYPE definido más adelante en el esquema, y es de contenido simple. ¡Por fin hemos  llegado a un elemento simple! Por lo tanto, sólo puede contener texto, nada de otros elementos o  atributos.    Un elemento simple puede estar restringido mediante lo que se llama facetas, por ejemplo el elemento  Nombre: 

(2)

Puede tener una longitud mínima de 1 carácter y máxima de 15.    También podemos ver otro elemento simple en la pestaña rejilla:        En la imagen vemos que es de tipo simple, que el texto que caracteriza a un elemento simple en este caso  es una cadena de caracteres, y que dicha cadena no puede ser cualquiera sino que obedece a un patrón.  Luego veremos cómo interpretarlo. En la ventana anterior, Facets, también se pueden ver los patrones en  una pestaña: Patterns.    Como podemos esperar de un editor tan potente, es muy fácil elegir el tipo de datos de un elemento. En la  ventana de propiedades:        Podemos «restringir» el tipo de datos simplemente seleccionando entre los que nos ofrece el estándar del  esquema.    La definición de un elemento simple puede tener más facetas, aunque en el presente caso ninguno de los  elementos definidos las tiene.  

Editor

 

de

 

texto

 

Obviamente la definición del esquema la podemos ver en texto, debidamente formateada: 

(3)

      Val or añadid o Danys oft | www.d any sof t.com 3     En la ventana texto podemos apreciar, no sólo el texto debidamente formateado, como hemos dicho, con  sangrías y botones para colapsar cada elemento, sino con líneas para unir el principio y fin de los elementos  y coloreado de sintaxis que permite ver inmediatamente cada parte de una definición. Para la edición de  estos elementos contamos además con una ventana Elementos donde están los definidos por el estándar  XSD, los atributos que puede tener la definición de un elemento y, también importante, hay varios  caracteres que están prohibidos en el texto de un elemento y que podemos escoger en la ventana  Entidades.   

Aquí podemos ver completo el patrón que se le exige a un elemento CIF_NIF_SIMPLETYPE, y que  analizaremos a continuación. 

Patrones

 

Por fin vamos a ver esta restricción o faceta. El valor de este elemento es una expresión regular. Hay varios  elementos que la tienen, por ejemplo el tipo CIF_NIF_SIMPLETYPE:        Tiene dos restricciones, una que debe ser una cadena de caracteres y la otra el patrón que ha de seguir.  Como veremos, hay una tercera, y es que la cadena tiene que tener única y exclusivamente 9 caracteres y  que se infiere del patrón.    Los paréntesis se usan para agrupar expresiones regulares. La pleca (barra vertical) indica que la expresión  anterior o la siguiente valen. Por lo tanto, en este caso encontramos tres grupos, cualquiera de los cuales  puede usarse.    Los corchetes especifican una lista de caracteres que son válidos en la cadena. Se pueden poner  individualmente o se puede indicar un rango de caracteres separando el primero y el último mediante un  guión. Por último las llaves son un cuantificador. En esta ocasión, al haber un solo número, indican el  número exacto de veces que debe aparecer la definición anterior. 

(4)

números y terminado por una letra mayúscula o un número.    Un caso que nos puede extrañar es en la definición:        Vemos que se dice que el grupo puede aparecer un mínimo de una vez y un máximo de una vez. Es  equivalente a {1}.    Otro caso especial lo vemos en la definición:        En este caso se usa una Clase de Caracteres marcados por la barra inversa y que representan un dígito. Por  lo tanto la cuenta de cotización es una cadena (no un número) que consta de 15 dígitos (por ende siempre  debe tener una longitud de 15).    Por último tenemos un caso especial complejo que queremos comentar:        En este caso no se usa el tipo fecha estándar definido en los esquemas. Vemos que primero se define el  siglo como 19 o 20, seguido de los dos dígitos del año. Luego viene el mes que puede empezar por cero  seguido de un dígito o por uno seguido de 0, 1 o 2. El último grupo es el mes. Es decir, es el formato  «aaaammdd».    Como podemos esperar, XMLSpy nos ayuda con la generación de patrones permitiéndonos elegir éstos  caracteres y grupos de caracteres por su significado:       

(5)

      Val or añadid o Danys oft | www.d any sof t.com 5

Elementos

 

complejos

 

en

 

el

 

texto

 

Si revisamos el texto del esquema, veremos que la definición de los elementos complejos usa tipos. Esta  complejidad nos la evita XMLSpy, que nos muestra los esquemas como si todos los elementos tuviesen la  definición en línea. Pero en este esquema se usan dos formas para la definición de los elementos  complejos.    La primera es usar un atributo Tipo que refiere el nombre del tipo complejo que se usa. De esta manera,  varios elementos se pueden referir al la misma definición. Por ejemplo:        El elemento cuenta de cotización usa tres Tipos, el que define el representante, el que define la empresa y  el que define el trabajador. Además, estos tipos deben aparecer en el orden definido, al usarse el elemento  secuencia para rodearlos.    También encontramos ejemplos donde se usa extensión para añadir elementos a un tipo definido:        Todo esto, como hemos podido ver, está en la definición del esquema, pero XMLSpy lo simplifica mucho,  especialmente sus gráficos. 

Conclusión

 

Hemos analizado un caso real de definición de esquema y nos hemos ayudado con el programa líder en  edición XML. Hemos podido ver la gran diferencia que hay entre visualizar el esquema con XMLSpy y leer el  texto, a pesar de que este texto está muy ordenado y es «fácil» seguirlo. En otras ocasiones, si el esquema  está desordenado o es aún más complejo, resulta muy difícil seguir el esquema sin una herramienta tan  cooperativa como la que hemos usado.      Para más información.    Danysoft, es el representante oficial de XMLSpy en la península ibérica, ofreciéndole tanto las licencias de  XMLSpy 2011 en las mejores condiciones, como los servicios de formación y consultoría necesarios para su  correcto uso. Puede contactar con Danysoft en el 902 123146, o ver más información en  www.danysoft.com 

Referencias

Documento similar

Además de aparecer en forma de volumen, las Memorias conocieron una primera difusión, a los tres meses de la muerte del autor, en las páginas de La Presse en forma de folletín,

Después de una descripción muy rápida de la optimización así como los problemas en los sistemas de fabricación, se presenta la integración de dos herramientas existentes

En un congrés, convé disposar d’un pla o full de ruta per tal de garantir la igualtat d’accés de totes les persones, tant ponents com participants.. Comunicació : Tant si el

En primer lugar, se ha tratado de sensibilizar al claustro sobre esta experiencia (en cierto modo ya imperativa por la loe - tc ), a través del equipo técnico de

Para la presente investigación seleccionaremos el estudio de caso de Tipo 2, Carácter incrustado (múltiples unidades/subunidades de análisis) – Caso único. Como

saginata, se considera común en Europa del este (15), con una prevalencia mucho más baja en Europa occidental (del orden de 0.01%) (16).. Las infecciones humanas son endémicas

El objetivo final del proyecto es aportar procedimientos e instrumentos que permitan al profesorado universitario disponer de las bases para diseñar, elaborar, implementar y

Nuestro interés principal se enfoca en la evaluación de la calidad de enseñanza de profesores individuales. En otro congreso podríamos hablar sobre la evaluación de la calidad