02 principales componentes de xml - colimbo.net · 2011-09-14 · documentos xml un documento xml...

33
Análisis y diseño de sistemas de if I informacn para Internet 2. Principales componentes de XML Luís Rodríguez Baena ([email protected]) Universidad Pontificia de Salamanca (campus Madrid) Facultad de Informática

Upload: others

Post on 23-Apr-2020

29 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Análisis y diseño de sistemas de i f ió Iinformación para Internet

2. Principales componentes de XML

Luís Rodríguez Baena ([email protected])

Universidad Pontificia de Salamanca (campus Madrid)Facultad de Informática

Page 2: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Documentos XML

Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o esquema utilizados para declarar suscontenidos a partir de una DTD o esquema utilizados para declarar sus entidades, tipo de contenido y atributos que lo describen.● Una vez creado puede mostrar su contenido mediante una plantilla XSL.

Tres componentes:U D t XML● Un Documento XML.

● Opcionalmente, una DTD o esquema con la descripción del contenido.● Opcionalmente una plantilla XSL con las especificaciones para mostrar el

contenido.

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

2

Page 3: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Documentos XMLTipos de documentos según el contenidop g

Si tenemos en cuenta el contenido de un documento XML podemos distinguir:● Aquellos en los que cada etiqueta sólo puede contener otra etiqueta

o contenido de texto.P t t t i il l i t d b d d tPresentan un estructura similar a los registros de una base de datos.

● Documentos narrativos, de formato libre en los que cada etiqueta puede contener una mezcla de texto libre u otras etiquetas.

<personas><persona>

<nombre>Mi nombre</nombre><apellidos>Mis apellidos</apellidos><ciudad>Mi ciudad</ciudad>

<biografía><párrafo> <persona><nombre>Juan</nombre><apellidos>Martínez Pérez</apellidos></persona>nació en la ciudad de <ciudad>Madrid</ciudad>cuando sólo<ciudad>Mi ciudad</ciudad>

</persona></personas>

ciudad de <ciudad>Madrid</ciudad>cuando sólo tenía <negrita>un año</negrita></párrafo></biografía>

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

3

Page 4: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Documentos XMLTipos de documentos: bien formados y validados

Según su nivel de conformidad pueden ser:g p● Documentos bien formados. Cumple las especificaciones del

lenguaje respecto a las reglas sintácticas y tiene una estructura jerárquica estricta.j á qu a a

Todo documentos XML debe estar bien formado.

● Documentos validados. Además de bien formado, presenta una estructura y un semántica determinada por una DTD o esquemaestructura y un semántica determinada por una DTD o esquema que define sus elementos, valores y jerarquía.

Un documento XML puede no estar validado.

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

4

Page 5: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Documentos XMLDocumentos bien formados

1. Toda etiqueta de inicio debe tener una de cierre.Si ti t ti t id d b t t bié ti t d i● Si una etiqueta no tiene contenido debe tener también una etiqueta de cierre.

<etiqueta></etiqueta>● Una etiqueta sin etiqueta de cierre deberá acabar con la secuencia />.

<etiqueta />

2 Se pueden anidar elementos pero no superponer2. Se pueden anidar elementos, pero no superponer.● Esta combinación no es posible en xml:

<strong><em>Contenido</strong></em>, aunque si en html.3. Debe tener un único elemento raíz.4 Los alo es de los at ib tos deben esta ent ecomillados4. Los valores de los atributos deben estar entrecomillados.5. Un elemento no puede tener dos atributos con el mismo nombre.6. Los comentarios y órdenes de procesamiento no pueden estar dentro

de las etiquetas.q7. No pueden aparecer signos < y & individuales dentro del contenido de

un elemento o atributo.● En su lugar deben aparecer las entidades &lt; o &amp;.

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

5

Page 6: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Documentos XMLEstructura

Estructura lógica.g● Se puede considerar cualquier documento se puede dividir en

componentes.● En XML estos componentes se denominan elementos, cada uno

óde los cuales representa un componente lógico del documento.● Estos elementos pueden, a su vez, estar compuestos de otros

elementos.E lti i t i t á t d f l b● En ultima instancia, estarán compuestos de frases, palabras y caracteres: datos de carácter del documento.

● Siempre existe un elemento llamado raíz o elemento de documentodocumento.

● Los elementos incluidos en la raíz son los subelementos.Si contienen otros subelementos se denominan ramas.Si no contienen más subelementos se denominan hojas

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

6

Si no contienen más subelementos se denominan hojas.

Page 7: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Documentos XMLEstructura (II)( )

Estructura lógica de un mensaje de correo electrónico.

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

7

Page 8: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Documentos XMLEstructura (III)( )

Estructura física.C b d l d t● Cabecera del documento.

Declaración XML.o Declaración opcional pero conveniente.

Declaración del tipo de documento.o Opcional.o Opcional.

Información adicional del documento (enlaces a hojas de estilo).o Opcional.

● Elementos.Representación de las estructuras lógicas del documento.Constituyen la base física del documento.Pueden o no tener contenido.La DTD o los esquemas pueden indicar el formato de los elementos del documento.

● Atributos● Atributos.Información adicional de un elemento.

● Entidades.Unidad virtual de almacenamiento. Representan información que se puede insertar en el documento

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

8

Representan información que se puede insertar en el documento.

Page 9: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Elementos, etiquetas y datos de caracteres

A cada una de las porciones de información se le

<persona><dni>123456C</dni>de información se le

denomina elemento.● persona, dni, nombre, etc.

Cada elemento está

<nombreCompleto><primerApellido>Pérez</primerApellido><segundoApellido>Gómez</segundoApellido><nombre>Ana María</nombre>

</nombreCompleto>3 9123 3 6 /compuesto por una etiqueta

de inicio <nombre> y una de cierre </nombre>.Entre esta dos etiquetas

<telefono>+34912343456</telefono><telefono>+34678675678</telefono>

</persona>

Entre esta dos etiquetas aparece el contenido del elemento.● Puede contener casi

cualquier carácter Unicode.q● Los espacios en blanco

también forman parte del contenido.

Algunos analizadores pueden ignorarlo

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

9

ignorarlo.

Page 10: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Elementos, etiquetas y datos de caracteres (II)ca acte es ( )

Sintaxis de la etiqueta.U ti t d i i i i l í b l● Una etiqueta de inicio comienza por el símbolo <.

● Una etiqueta de fin comienza por los símbolos </.● Ambas etiquetas terminan con el símbolo >.

Etiquetas vacías.q● Toda etiqueta de inicio debe ir acompañada por una de cierre.

En HTML esto no es obligatorio.o La etiqueta <br> no tiene por qué tener cierre.

En XHTML (un lenguaje XML), la etiqueta <br> debe tener una de cierre, aunque t t idno tenga contenido <br></br>.

● Si un elemento no tiene etiqueta de cierre, debe acabar con la secuencia />.

En XHTML es equivalente poner <br></br> que <br />.

Los nombres de las etiquetas son sensibles a mayúsculasLos nombres de las etiquetas son sensibles a mayúsculas.● Si la etiqueta de inicio comienza en minúsculas, la etiqueta de cierre

también.<persona>…</Persona> no sería válido.

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

10

Page 11: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Elementos, etiquetas y datos de caracteres (III)ca acte es ( )

Un documento XML tiene una estructura jerárquica.● El elemento de nivel superior es el elemento padre a sus descendientes se les llama hijos● El elemento de nivel superior es el elemento padre, a sus descendientes se les llama hijos.

Cada elemento sólo puede tener un elemento padre.Esto implica que todos los elementos deben estar correctamente anidados.

o En HTML es correcto poner <b><i>Hola</b></i>.o En XML es incorrecto poner <nombreCompleto><nombre>Pepe</nombreCompleto></nombre>.

● El elemento de jerarquía superior no tiene padre● El elemento de jerarquía superior no tiene padre.Elemento raíz o elemento del documento.Sólo puede haber un elemento raíz.

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

11

Page 12: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Elementos, etiquetas y datos de caracteres (III)ca acte es ( )

En el elemento persona…● Algunos elementos sólo tienen caracteres (dni, telefono, nombre).● Otros elementos sólo tienen etiquetas (persona, nombreCompleto).● Esta estructura es común cuando se trabaja con documentos jerárquicos

similares a los registrossimilares a los registros.

XML también se puede utilizar para definir documentos en formato libre: documentos narrativos.<biografía>á<párrafo>

<persona><nombre>Juan</nombre><apellidos>Martínez Pérez</apellidos></persona>nació en la ciudad de <ciudad>Madrid</ciudad>cuando sólo tenía <negrita>un año</negrita></párrafo><hechos><persona><nombre>Juan</nombre><apellidos>Martínez Pérez</apellidos></persona> ha sido un destacado miembro de la <abreviatura>XJK</abreviatura>bla, bla, bla…

● El elemento raíz sería biografía, que tendría dos elementos hijos (párrafo y hechos).Estos elementos tienen algunos elementos como nombre, apellidos, ciudad o negrita.También contienen datos de caracteres sin marcar

</hechos></biografía>

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

12

También contienen datos de caracteres sin marcar.Tienen contenido mixto.

Page 13: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Atributos

Un elemento XML puede tener atributos.● Un atributo es una pareja de valores separados por el signo igual en la etiqueta de inicio de● Un atributo es una pareja de valores separados por el signo igual en la etiqueta de inicio de

un elemento.Por ejemplo:

<telefono tipo="casa">+34912343456</telefono><telefono tipo="trabajo">+34678675678</telefono>

● El nombre del atributo es un nombre XML válido.El nombre del atributo es un nombre XML válido.● El contenido del atributo puede contener casi cualquier carácter encerrado entre comillas

(simples o dobles).Cada elemento sólo puede tener un atributo con un nombre determinado.¿Cuándo elegir un atributo para meter información?● Normalmente se utilizan cuando se requiere dar información adicional de un elemento (meta

información).Por ejemplo en la etiqueta img de html.

● En ocasiones no está muy claro que es información.Se podría sustituir el elemento DNI por un atributo del elemento persona.

<persona dni= "123456C">

● Como una etiqueta sólo puede tener un atributo con el mismo nombre, no sería posible utilizarlos para meter los teléfonos de la persona.

● Una estructura basada en atributos suele ser más flexible y ampliable que una basada en atributos.

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

13

Page 14: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Nombres XML

Los nombres de los atributos, las etiquetas y de otros elementos de XML b XMLXML son nombres XML.Para formarlos se deben seguir las mismas reglas:● Pueden contener cualquier carácter alfanumérico Unicode (o ideograma en

el caso del algunos idiomas)el caso del algunos idiomas).La diferencia entre XML 1.0 y XML 1.1 es que la versión 1.1 utiliza la versión 3 de Unicode que incluye idiomas como el camboyano, el mongol o el birmano.

● Pueden incluir los caracteres de puntuación _ (guión bajo), - (guión) o . (punto)(punto).

No se permiten espacios en blanco.Se pueden utilizar también los dos puntos, pero se reserva para los espacios de nombre.

● Deben comenzar con un carácter alfabético (o ideograma) o por el guión● Deben comenzar con un carácter alfabético (o ideograma) o por el guión bajo (_).

● Todos los nombres que comienzan por la cadena XML en cualquier combinación de minúsculas o mayúsculas se reservan para las especificaciones del W3C

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

14

especificaciones del W3C.

Page 15: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Referencias, entidades y notaciones

Una referencia es un forma de llamar a un elemento de forma abreviada.● Ese elemento puede ser un carácter predefinido (referencias de carácter) o estar definido en una● Ese elemento puede ser un carácter predefinido (referencias de carácter) o estar definido en una

DTD.● Se utilizan de la forma &nombreReferencia;.

Referencias de carácter.● En el contenido de un elemento no se pueden utilizar determinados caracteres.

El símbolo < siempre se interpreta como el inicio de una etiqueta.El símbolo < siempre se interpreta como el inicio de una etiqueta. El símbolo & siempre se interpreta como el inicio de una referencia.

● Si se quieren utilizar estos elementos, en el contenido de un elemento se debe utilizar:&lt; para el carácter <.&amp; para el carácter &.

● Además se pueden utilizar las referencias de carácter:l á t t i ió &lt&gt;, para el carácter >, por contraposición a &lt;

&quot;, para el carácter ".&apos;, para el carácter '.

● Se puede hacer referencia a cualquier carácter mediante la secuencia &#NúmeroCarácterDecimal; o mediante &#xNúmeroCarácterHexadecimal;.

En la DTD se pueden definir entidades con valor predefinido que se utilizarán en elEn la DTD se pueden definir entidades con valor predefinido que se utilizarán en el documento XML como una referencia de entidad.Sólo se pueden utilizar en el contenido de un elemento o en el valor de un atributo.El analizador reemplazará las referencias por su valor determinado en las especificaciones XML o por el valor determinado por la entidad en la DTD.

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

15

Page 16: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Secciones CDATA

Una sección CDATA se utiliza para incluir en ella código literal.N l t t t d ódi f t HTML XML● Normalmente se trata de código fuente HTML o XML.

● Permite que no nos preocupemos de sustituir los caracteres < y & por las referencias a entidad.

● El analizador inserta de forma literal todo lo que haya en una sección CDATA sin procesarlosin procesarlo.

Una sección CDATA tiene el siguiente formato:<!CDATA

...lo que sea]]>]]>

● Dentro se puede incluir cualquier cosa excepto la secuencia ]]>.En su lugar se puede utilizar ]]&gt;.

En XHTML su uso es fundamental para incluir código Javascript.U j lUn ejemplo…<p>La etiqueta &lt;img&gt; tiene el siguiente formato: </p><pre><![CDATA[

<img src="url de la imagen" alt ="texto alternativo">

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

16

<img src url de la imagen alt texto alternativo >]]></pre>

Page 17: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Comentarios

Los comentarios XML son sintácticamente iguales que los g qcomentarios HTML:<!-- Cualquier cosa -->

● Puede contener cualquier cosa excepto el doble guión● Puede contener cualquier cosa excepto el doble guión.

Pueden aparecer en cualquier lugar del documento, excepto:● Dentro de una etiqueta.● Dentro de otro comentario.

Los analizadores de XML pueden incluir o no laLos analizadores de XML pueden incluir o no la información de los comentarios

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

17

Page 18: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Instrucciones de procesamiento

XML proporciona un mecanismo para indicar a una aplicación que realice un proceso:realice un proceso:Las instrucciones de procesamiento…● Comienzan con la secuencia de inicio <? y terminan con la secuencia de fin ?>.● A continuación aparece un nombre XML que hace referencia al nombre de la

aplicaciónaplicación.● Por último aparece información para a aplicación a la que va destinada la

instrucción.Algunos ejemplos…● XML ha propuesto una instrucción estándar para indicar a los motores de● XML ha propuesto una instrucción estándar para indicar a los motores de

búsqueda cómo deben indexar una página:<?robots index="yes" follow="no" ?>

Indica a los robots de búsqueda que deben indexar la página y que no deben seguir sus enlaces.

l ód h l● Para incluir código php en XHTML se utiliza…<?php

código php?>

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

18

Page 19: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Declaración XML

Un documento XML debe llevar al comienzo una declaración XML.● Su formato es:

<?xml version="númeroVersión" encoding="codificacionCaracteres" standalone="yes | no">

● No es obligatorio su inclusión,A d l d l li i i t t l t id d l d tAyuda al procesador y a la aplicaciones a interpretar el contenido del documento XML de manera más eficiente.

● Si la incluye debe estar al comienzo del documento y no puede estar precedida por espacios en blanco, saltos de línea ni ningún otro elemento.

L XML tili l i i t ( l) liLos parser XML utilizan los cinco primero caracteres (<?xml) para realizar suposiciones acerca del contenido.

Atributo version.● Debe tener el valor 1.0 o 1.1.

Utilizar el atributo version="1.1" limita el documento a los parser más recientes.

o La versión 1.1 prácticamente sólo aporta la inclusión de lenguajes como el camboyano o el mongol.

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

19

Page 20: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Declaración XML (II)

Atributo encoding.● Permite especificar el juego de caracteres a utilizar● Por omisión XML utiliza el conjunto de caracteres UTF-8 que se

corresponde con el ASCII estándar.l j d i d SO 88 9 álid l● El conjunto de caracteres Unicode ISO-8859-1 es válido para los

idomas de Europa Occidental.Atributo standalone.

I di i l d t ti lid d TDT t● Indica si el documento se tiene que validad con una TDT externa.● Por omisión toma el valor yes, es decir se trata de un documento

independiente.● Habrá que poner el valor no si se desea validar el documento con● Habrá que poner el valor no si se desea validar el documento con

una TDT externa.Un ejemplo de declaración XML…<?xml version="1.0" encoding="ISO-88591" standalone="yes">

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

20

g y

Page 21: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Comprobar la estructura de un documentodocu e to

Un analizador XML se fijará primero en la estructura del documento que tiene que estar bien formado (tener una estructura correcta)que tiene que estar bien formado (tener una estructura correcta).● Comprobará:

1. Toda etiqueta de inicio debe tener una de cierre.2. Se pueden anidar elementos, pero no superponer.3 Debe tener un único elemento raíz3. Debe tener un único elemento raíz.4. Los valores de los atributos deben estar entrecomillados.5. Un elemento no puede tener dos atributos con el mismo nombre.6. Los comentarios y órdenes de procesamiento no pueden estar dentro de las

etiquetas.q7. No pueden aparecer signos < y & individuales dentro del contenido de un

elemento o atributo.El parser informará a la aplicación de la buena estructura del documento.● En caso contrario devolverá un error.

En algunos casos parará la comprobación, en otros devolverá todos los errores que acarrea el primero.La aplicación puede informar del error o no hacer nada.

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

21

Page 22: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Comprobar la estructura de un documento (II)docu e to ( )

Se puede comprobar la estructura del documento XML cargándolo en Internet Explorer o Firefoxen Internet Explorer o Firefox.● Si no aparece nada, hay un error en la estructura.● Si aparece el árbol de elementos, la estructura es correcta.

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

22

Page 23: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Comprobar la estructura de un documento (III)docu e to ( )

Comprobación con libxml.p● Una analizador de Gnomo Project.

Proporciona unas bibliotecas de funciones en C e incluye un ejecutable con interfaz de línea de órdenes: xmllint.exe.jEstá disponible en http://www.zlatkovic.com/pub/libxml/. o Es necesario bajarse libxml, zlib y iconv.o Lo más fácil: colocar iconv.lib, libxml2.dll, zdll.lib, zlib.lib, xmlcatalog.exe y xmllint.exe en el mismo directorio (por ejemplo c:\xmllib).

● Ejecución.D d l lí d ó dDesde la línea de órdenes.c:\xmllint.exe nombreArchivoXML

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

23

Page 24: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Comprobar la estructura de un documento (IV)docu e to ( )

Si todo está correcto saca la estructura del árbol

Si todo está correcto sale el árbol XML

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

24

Page 25: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Comprobar la estructura de un documento (V)docu e to ( )

Si hay errores indica el problema.● Puede que se arrastren otros errores.

En el ejemplo se ha cambiado la primera etiqueta persona por Persona y se han quitado las comillas de cierre de atributo casa.

Se han quitado las segundas comillas a casa

Se ha cambiado l dla etiqueta de inicio persona por Persona

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

25

Page 26: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Comprobar la estructura de un documento (VI)docu e to ( )

Visual Studio 2005 también proporciona un analizador XML.Para crear un nuevo documento XML en cualquier proyecto de cualquier tipo dar la opción “Agregar elemento” del● Para crear un nuevo documento XML, en cualquier proyecto de cualquier tipo, dar la opción “Agregar elemento” del menú “Proyecto” y seleccionar “Archivo XML”.

● En la parte inferior de la pantalla, en la lista de errores, irán apareciendo los errores de estructura del documento.

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

26

Page 27: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Comprobar la estructura de un documentoValidadores on line

Validador XML del W3Schools (www.w3schools.com/XML/xml_validator.asp).

Pegar aquí el código XML

Al pulsar el botón Validate, un

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

27

cuadro de texto informa del error

Page 28: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Comprobar la estructura de un documentoValidadores on line (II)( )

XMLValidation.com (www.xmlvalidation.com/).

Pegar aquí el código XML

… o seleccionar un archivo local

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

28

Page 29: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Comprobar la estructura de un documentoValidadores on line (III)( )

XMLValidation.com (www.xmlvalidation.com/).● Salida de resultados● Salida de resultados

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

29

Page 30: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Comprobar la estructura de un documentoValidadores on line (IV)( )

Validator for XML Schema del W3C (www.w3.org/2001/03/webdata/xsv).● Es un validador de esquemas.

Si el documento no tiene esquemas, aunque esté bien formado mostrará las advertencias.

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

30

Page 31: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Comprobar la estructura de un documentoValidadores on line (V)( )

Validator for XML Schema del W3C (www.w3.org/2001/03/webdata/xsv).● Salida de un documento mal formado.

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

31

Page 32: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Comprobar la estructura de un documentoValidadores on line (VI)( )

Validator for XML Schema del W3C (www.w3.org/2001/03/webdata/xsv).● Salida de un documento bien formado.

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

32

Page 33: 02 Principales componentes de XML - colimbo.net · 2011-09-14 · Documentos XML Un documento XML es un documento de texto que puede describir los contenidos a partir de una DTD o

Ejemplos

Crear un documento XML que permita guardar los datos de un alumno (expediente apellidos y nombre)(expediente, apellidos y nombre).Modificar el documento anterior de forma que contenga un elemento nombre_completo con los elementos hijo apellidos y nombre.Modificar el documento anterior de forma que permita almacenar la i f ió d i linformación de varios alumnos.Modificar el elemento anterior de forma que por cada alumno se puedan almacenar las notas de cada asignatura.● Por cada asignatura se almacenará el código y la descripción de la misma, la

f h d l l b d l ú d l h l dfecha del examen, la nota obtenida, el número de veces que la ha matriculado y el número de convocatorias a las que se ha presentado.

Crear un documento XML que permita almacenar la información de un CD.

P d álb l á id tifi d l b d l álb l ti t● Por cada álbum se almacenará un identificador, el nombre del álbum, el artista, la duración, el género, el año, un campo de observaciones en formato HTML e información de las pistas que contiene.

Por cada pista se almacenará el número de pista, el nombre de la canción, el artista, la duración, el año, el género y un campo de observaciones en formato HTML

Universidad Pontificia de Salamanca (Campus Madrid)Luis Rodríguez Baena, Facultad de Informática, 2008

33