Está en la página 1de 3

7.6 Aplicaciones XML, lenguaje extensible de etiquetas.

Es un meta-lenguaje que nos permite definir lenguajes de marcado para usos determinados. XML se propone como lenguaje para intercambio de informacin estructurada entre diferentes plataformas, se puede usar en bases de datos, editores de texto, hojas de clculo, y casi cualquier cosa que podamos pensar. Los documentos XML estn compuestos por entidades (etiquetas), una entidad puede hacer referencia a otra.

Documentos bien formados: son los que cumplen las especificaciones del lenguaje respecto a las reglas sintcticas para cualquier documento XML. Documentos vlidos: adems de bien formados, siguen una estructura y una semntica determinada por un DTD.

Ejemplo: < ?xml versin = "1.0" encoding = "UTF-8" standalone = "no"?> < !DOCTYPE cliente SYSTEM "Cliente.dtd"> < cliente> < clave> 0150 < clave> < nombre> Jos Prez < nombre> < telfono> 1212016 < telfono> < cliente> < nombre> < pila> Jos < pila> < nombre> Jos Prez < nombre> < paterno> Prez < paterno> < materno> Len < materno> < nombre> Documentos bien formados Estructura jerrquica de elementos Ej. Incorrecto: < li> HTML < b> permite < i> esto < b> < i> Ej. Correcto: < li> En XML la < b> estructura < i> es < i> jerrquica < b>.< li> Ejercicio: ejemplo incorrecto con cliente. Etiquetas vacas < identificador DNI = "3487"> Incorrecto: < li> Esto es HTML < br> casi todo permitido < li> Correcto: < li> En XML, es < br > ms restrictivo < li> < identificador DNI = "3487" > Un solo elemento raz Incorrecto: < Cliente> ----< Cliente> < Cuenta> ----< Cuenta> Correcto: < Banco> < Cliente> ----< Cliente> < Cuenta>

----< Cuenta> < Banco> Valores de atributos Incorrecto: < alumno aprobado = si> Jos Prez < alumno> Correcto: < alumno aprobado = "si"> Jos Prez < alumno> Tipo de letra XML es sensible a maysculas y minsculas Incorrecto. 340XM Nombre de elementos No se pueden crear nombres que empiecen con xml, xML, XML, u otra variante. Pueden usarse letras, subr, guion, dgitos, pero iniciar con letra o subrayado. Las marcas (etiquetas) van entre < y > Comentarios < !- - cdigo Temporal - - > Definicin de tipos de documento (DTD) XHTML MathML BancoML (BML) ClienteML (CML) Ejemplo: < !DOCTYPE cliente [ < !ELEMENT cliente (clave, nombre, direccin, telfono) > < !ELEMENT clave (#PCDATA)> < !ELEMENT nombre (#PCDATA)> < !ELEMENT direccin (#PCDATA)> < !ELEMENT telfono (#PCDATA)> ------------------< !ELEMENT nombre (pila, paterno, materno)> < !ELEMENT pila (#PCDATA)> ---------< !ELEMENT materno (#PCDATA)> ------------------Modelo de contenido < !ELEMENT aviso (prrafo)> solo se puede contener un < prrafo> < !ELEMENT aviso (titulo, prrafo)> debe contener un < titulo> seguido de un < prrafo> < !ELEMENT aviso (prrafo | grafico)> puede contener un < prrafo > o un < grafico> Ejercicio: < !ELEMENT aviso (titulo, (prrafo | grafico))> Aviso debe contener un titulo seguido de un prrafo o un grfico. Indicadores de frecuencia. ? * + 0 o 1 vez 0 o ms veces 1 o ms veces

Ejemplo: < !ELEMENT aviso (titulo?, (prrafo +. Grafico)*) > Declaracin de listas de atributos < !ELEMENT mensaje (de, a, texto)> < !ATTLIST mensaje prioridad (normal | urgente) normal > < !ELEMENT texto (#PCDATA)> < !ATTLIST texto idioma CDATA #REQUIRED> Ejemplo XML < mensaje prioridad = "urgente"> < de> Jos Prez < de>

< a> Laura Gmez < a> < texto idioma = espaol> (NOTA: ESTRUCTURAR) Hola Laura como ests? Te envi el acta de nacimiento. ------------------< texto> < mensaje> Ejercicio: Escribir el DTD completo para el ejemplo anterior. < Cliente> < Cliente> ---------- ---------< Cliente> < cuenta> < Cliente> ------------------- o < cuenta> < Cliente> < cuenta> < Cuenta> ------------------- < cuenta> < Cuenta> < Cliente> ms clientes