02-xml

42
XML: eXtensible Markup Language (Parte I) DTDs DTDs Ingeniería de la Información

Upload: zipysat

Post on 04-Oct-2015

8 views

Category:

Documents


0 download

DESCRIPTION

xml

TRANSCRIPT

  • 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