02-xml
DESCRIPTION
xmlTRANSCRIPT
-
XML: eXtensible Markup Language(Parte I)DTDsDTDs
Ingeniera de la Informacin
-
Tabla de Contenidos
Introduccin histrica
XML vs. HTML
Caractersticas de XML
Mi primer documento XML
El lenguaje XMLEl lenguaje XML
Entidades
Espacios de nombres: NamespacesLa familia de XML
Dominios de utilizacin de XML
2
-
Introduccin histrica (i)
XML se constituy como estndar de la W3C en el ao 1998. En 2000 se aprueba su versin 1.0.
Se trata de un lenguaje de marcas, igual que HTML o su precursor SGML.
Se diferencia de SGML por su sencillez.Se diferencia de SGML por su sencillez.
Se diferencia de HTML por su flexibilidad: el nmero de etiquetas que puede incluir un documento XML es ilimitado.
Al igual que HTML, es portable a cualquier plataforma.
3
-
Introduccin histrica (ii)
1983 1992 1996 1997 1998 1999 2000
SGML HTML HTML2
CSS HTML3
XML
HTML4
XHTML
4
-
Introduccin histrica (iii)
Objetivos principales: Directamente utilizable en Internet.
Soporte para una amplia variedad de aplicaciones.
Compatible con SGML.
Posibilidad de crear sencillos procesadores de XML. Posibilidad de crear sencillos procesadores de XML.
Nmero de opciones mnimo (lo ptimo son cero).
Documentos XML legibles y medianamente claros.
Diseo rpido del lenguaje.
Simple, pero perfectamente formalizado.
Documentos XML fciles de crear.
5
-
XML vs. HTML
HTML carece de un chequeo sintctico. Pginas con errores son mostradas en los navegadores.
HTML carece de estructura.
HTML mezcla contenido y representacin.HTML mezcla contenido y representacin.
Por todo esto: HTML no puede ser fcilmente ledo por una mquina.
HTML nunca ser un estndar de intercambio de datos.
XML cubre todo esto con un lenguaje de sencillez extrema.
6
-
Caractersticas de XML (i)
Es un subconjunto del lenguaje SGML.
Al igual que l, se utiliza para representar datos de forma estructurada.
Se basa en una gramtica de obligado cumplimiento. Esto facilita el desarrollo de parsers y, por lo tanto, su utilizacin masiva.su utilizacin masiva.
La estructura interna de un documento XML puede reflejarse en: DTD (Document Type Definition) XML Schema
A diferencia de HTML, separa radicalmente la semntica del documento, de su representacin grfica.
7
-
Caractersticas de XML (ii)
XML, eXtensible Markup Language, se ha convertido en el estndar para intercambio de datos no slo en el WWW.
Fcil de usar por estar basado en un conjunto extensible de etiquetas semnticas entendibles extensible de etiquetas semnticas entendibles por humanos y mquinas.
Ya se encuentra en una fase de madurez y expansin absoluta.
Gracias al soporte de Unicode se soportan los alfabetos de todo el mundo.
8
-
Mi primer documento XML. HTML (i)
Libros de mi infancia
Don Quijote de la ManchaMancha
Miguel de Cervantes
La vida es sueo
Caldern de la Barca
9
-
Mi primer documento XML. HTML (ii)
En apariencia, el documento HTML anterior es correcto, sin embargo: Existen etiquetas que nunca se cierran:
Algunas etiquetas no estn bien anidadas: el primer nunca se cierra. nunca se cierra.
Para un lector no humano, no se sabe qu es un libro y qu es un autor.
XML erradica todos estos problemas!!
10
-
Mi primer documento XML (iii)
Don Quijote de la
ManchaManchaMiguel de
Cervantes
La vida es suenno
Calderon de la Barca
11
-
El lenguaje XML. Reglas generales
Un nico elemento raz (elemento documento).
Todo elemento debe tener etiquetas de apertura y cierre.
Distincin entre maysculas/minsculas.
Anidamiento perfecto entre elementos.Anidamiento perfecto entre elementos.
Los valores de atributos van siempre entre comillas.
Los espacios en blanco se conservan.
Los caracteres CR/LF se transforman en LF.
12
-
El lenguaje XML. Documentos vlidos
Se dice que un documento es bien formadocuando: Cumple con todas las reglas anteriormente expuestas.
Contiene uno o ms elementos.
Hay un nico elemento documento. Hay un nico elemento documento.
Si el documento consta de ms de una parte, todas estn bien formadas.
No se encuentran caracteres prohibidos en el texto.
Un documento es vlido cuando, adems de ser bien formado, cumple con las especificaciones semnticas expuestas en su plantilla (DTD o XML Schema).
13
-
El lenguaje XML. Elementos (i)
Comentarios:
Instrucciones de procesamiento:
La instruccin no puede incluir los caracteres ?>
Secciones CDATA: ]]>
No son tratadas por el parser. Pueden incluir cualquier carcter prohibido (, , &, >,
14
-
El lenguaje XML. Elementos (ii)
Prlogo:
Es una instruccin de procesamiento obligatoria.
Version: indica la versin de XML que se est utilizando (1.0 en la actualidad). Es obligatoria.utilizando (1.0 en la actualidad). Es obligatoria.
Encoding: indica cmo se codific el documento, y no es obligatoria (por defecto UTF-8). Vlido para otros juegos de caracteres.
Standalone: yes indica que el documento no va acompaado de DTD ni de XML Schema; no indica que requiere una DTD o XML Schema. No es un atributo obligatorio.
15
-
El lenguaje XML. Elementos (iii)
DOCTYPE:
Indica la referencia (URI) a la DTD, as como el nombre (MiDTD) del elemento raz de la misma.
La DTD podra ir incorporada en el propio documento XML, sin requerir otro fichero aparte.otro fichero aparte.
El documento XML deber cumplir con el contenido de la DTD.
Tambin se puede utilizar para definir entidades.
Don Quijote de la Mancha
Miguel de Cervantes
La vida es suenno
Calderon de la Barca
16
-
El lenguaje XML. Elementos (iv)
Para referenciar un XML Schema:
-
El lenguaje XML. Elementos (v)
Etiquetas: Deben ir correctamente anidadas: apertura y cierre.
Etiqueta de apertura: comienza por . Ejemplo .de la etiqueta y terminan por >. Ejemplo .
Etiqueta de cierre:
Etiqueta vaca:
Debe comenzar por una letra o un _.
No puede comenzar por xml.
18
-
El lenguaje XML. Elementos (vi)
Elemento: Es el conjunto de la etiqueta (marcador) de apertura, su contenido y la de cierre.
Por ejemplo: Don Quijote de la Mancha
Hay algunos caracteres reservados (prohibidos): Hay algunos caracteres reservados (prohibidos): Signo de mayor: >
Signo de menor: , ,
-
El lenguaje XML. Entidades (ii)
Entidades predefinidas: Signo menor lt < > Signo mayor gt > >
Ampersand amp & &
Apstrofe apos '
Comilla doble quot "
24
-
El lenguaje XML. Entidades (iii)
Tipos de entidades: General y de Parmetro:
General: contiene texto XML u otros caracteres.
De Parmetro: contiene texto XML que puede insertarse dentro de una DTD.de una DTD.
Interna y Externa: Interna: contiene el texto dentro de una cadena entrecomillada.
Externa: hace referencia a un archivo externo.
Analizada y no Analizada: Analizada: texto XML que ser procesado en su punto de insercin.
No Analizada: no ser procesada.
25
-
El lenguaje XML. Entidades (iv)
Tipos de entidades:
Entidad
General De Parmetro
Interna Externa Interna Externa
AnalizadaNo
Analizada
AnalizadaNo
Analizada
AnalizadaNo
AnalizadaAnalizada
No
Analizada
26
-
Entidades generales internas analizadas (i)
Permiten que una determinada cadena se repita fcilmente a lo largo de un documento XML
Se definen dentro del fichero XML o de la DTD .
]>
...
27
-
Don Quijote de la Mancha
Miguel de Cervantes
Entidades generales internas analizadas (ii)
La vida es sueo
Caldern de la Barca
El nombre de la rosa
Umberto Eco
El alquimista
Paulo Coelho
28
-
Entidades generales internas analizadas (iii)
El alquimistaPaulo Coelho
A orillas del ro Piedra&Coelho;
29
-
Su misin es idntica a las Entidades Internas Analizadas.
No definen su contenido entre comillas, sino en un fichero externo.
Entidades generales externas analizadas
fichero externo.
El fichero externo puede incluir entidades. Si stas son externas ojo a las referencias circulares.
Slo pueden ser incluidas dentro de un elemento.
Declaracin:
30
-
Permiten incluir dentro de un fichero XML informacin, procedente de otro fichero externo, que no tiene porqu ser XML. Por ejemplo: imgenes, documentos Office...
Entidades generales externas no analizadas
Se basa en la definicin de notaciones: Ubicacin del programa que reconoce al fichero externo, y de atributos de tipo ENTITY.
31
-
Entidades generales externas no analizadas (ii)
El alquimista&Coelho;
32
-
Al igual que las generales, permiten la sustitucin de cadenas de caracteres, pero esta vez dentro de documentos DTD.
No pueden usarse dentro de una etiqueta, sino
Entidades de parmetro internas analizadas
No pueden usarse dentro de una etiqueta, sino para sustituir una etiqueta completa.
Declaracin:
Precio CDATA #IMPLIEDEditorial CDATA #IMPLIED
>
%Nacion; 33
-
Su uso es idntico a las Entidades de Parmetros Internas Analizadas.
Hacen referencia a un fichero externo que contiene un trozo de DTD.
Entidades de parmetro externas analizadas
contiene un trozo de DTD.
Precio CDATA #IMPLIED
Editorial CDATA #IMPLIED
>
%Nacion;34
-
....
ISO-10646.dtd
Entidades con referencias a carcteres
%isolat1;
Y tambin lo que
ISOLat.dtd
35
-
Namespaces
XML permite crear etiquetas casi sin ninguna limitacin en sus nombres.
Esto implica que, mezclar dos documentos, con diferentes etiquetas, podra resultar en una duplicidad de etiquetas.duplicidad de etiquetas.
Mediante la definicin de espacios de nombres, se pueden evitar estas colisiones.
Tecnologas como XSL y otras muchas hacen uso de Namespaces.
36
-
Namespaces. Definicin
Un namespace se identifica por su prefijo. Ejemplo:
Donde:Donde: xsl es el prefijo del namespace.
Stylesheet es el nombre completo del namespace.
http://www.... es la URI donde se puede encontrar ms informacin sobre el estndar.
Puede incluir otros atributos como version...
Como todo elemento XML, ha de cerrarse. 37
-
Namespaces. Utilizacin
Tras la definicin del espacio de nombres, los elementos que pertenezcan a dicho espacio debern prefijarse.
...
...
38
-
La familia de XML (i)
Para sacar todo el partido a XML, ste viene acompaado de un conjunto de lenguajes hermanos: XSL (eXtensible StyleSheet Language): junto con CSS es utilizado para modificar el aspecto de los documentos XML.
XSLT (eXtensible StyleSheet Language Translation): XSLT (eXtensible StyleSheet Language Translation): extensin de XSL que permite transformar un documento XML en otro diferente.
XSL-FO: objetos de formateo que gobiernan cmo los datos transformados se presentan al usuario.
DOM (Document Object Model): componente creado por Microsoft para el procesamiento de documentos XML.
SAX: procesador XML orientado a eventos.39
-
La familia de XML (ii)
XLink/XPointer: permiten referenciar a diferentes recursos, dentro o fuera del documento XML.
XQL (XML Query Language): til para localizar y extraer elementos de un documento XML.extraer elementos de un documento XML.
XPath: lenguaje de consulta para recorrer ficheros XML.
40
-
La familia de XML (iii)
41
-
Dominios de utilizacin de XML
Intercambio de datos sobre frmacos.
Tratamiento de informacin matemtica (XMath).
Intercambio de informacin entre programas ejecutables (SOAP).
Intercambio de informacin entre herramientas CASE Intercambio de informacin entre herramientas CASE (XMI).
Intercambio de informacin sobre RRHH (HR-XML).
Intercambio de informacin sobre bolsa y financiera (IFX).
Amplia utilizacin en el sector de EDI (Electronic Data Exchange).Estndares Web como WML y XHTML.
...42