XML y tecnolog - PowerPoint PPT Presentation

1 / 70
About This Presentation
Title:

XML y tecnolog

Description:

Permitir que los subsistemas de edici n y formateado de textos y los de RI ... utilizaci n en diferente hardware (ordenadores personales, tel fonos celulares, ... – PowerPoint PPT presentation

Number of Views:36
Avg rating:3.0/5.0
Slides: 71
Provided by: adelaida
Category:

less

Transcript and Presenter's Notes

Title: XML y tecnolog


1
XML y tecnologías asociadas
  • Hacia la Web Semántica

2
Antecedentes históricos
  • 1960 Utilización de etiquetas descriptivas para
    codificación
  • 1967 Separación entre el contenido de los
    documentos y su formato
  • 1969 GML (Lenguaje de Marcación Generalizado).
  • Permitir que los subsistemas de edición y
    formateado de textos y los de RI compartieran
    documentos
  • Introduce el concepto de tipo de documento
  • 1985 SGML (estándar ISO 88791986). Estándar
    internacional para la descripción de la
    codificación electrónica de textos
  • 1990 HTML
  • 1998 XML

3
Motivaciones aparición XML
  • Tratar datos semi-estructurados de la web
  • Organizar colecciones de datos de distintas
    fuentes y formatos
  • Intercambiar datos entre diferentes
    sitios/organizaciones

4
XMLeXtended Markup Language
  • Metalenguaje que nos permite definir lenguajes de
    marcado adecuados a usos determinados
  • Subconjunto de SGML, simplificado y adaptado a
    Internet
  • Marcación descriptiva
  • Extensible
  • Los proveedores de información pueden definir
    nuevas etiquetas y atributos

5
Ventajas de XML
  • No pertenece a ninguna compañía y su utilización
    es libre
  • Fácilmente procesable por personas y por software
  • Permite su utilización en diferente hardware
    (ordenadores personales, teléfonos celulares,
    terminales de Braille, ...)
  • Diseñado para ser utilizado con cualquier
    alfabeto
  • Sustitución de cadenas de caracteres (entidades)
  • Separa radicalmente la información o contenido de
    su presentación o formato
  • Un documento (XML) ? muchas formas de
    presentación (PDF, HTML, WML, RTF, VRML, ...)

6
Ventajas XML (cont.)
  • Permitirá integrar sistemas de información hasta
    ahora separados
  • Documentos
  • estructura irregular
  • anidados profundamente
  • tipos de datos relativamente simples
  • se da gran importancia al orden
  • Relaciones
  • estructura muy regular
  • relativamente planas
  • tipos de datos relativamente complejos
  • se da poca importancia al orden  

7
Terminología
  • Elemento
  • Unidad de texto considerada como un componente
    estructural
  • Atributos
  • Características y propiedades asociadas con
    elementos de un tipo determinado
  • DOM (Document Object Model)
  • Árbol cuyos nodos son los elementos.
  • Para acceder y manipular los datos almacenados
    en un documento XML se utiliza una colección de
    objetos, con varias propiedades y métodos, que
    representan el árbol y sus nodos.

8
Estructura de un documento XML
  • Ejemplo
  • Instrucciones de procesamiento
  • Declaraciones de tipo de documento (DTD)
  • Etiquetas de elementos y atributos
  • Entidades
  • Comentarios
  • Secciones marcadas

9
Ejemplo de documento XML
lt?xml version"1.0"?gt lt!DOCTYPE MENSAJE SYSTEM
"mensaje.dtd"gt
prólogo
  • ltmensajegt
  • ltremitegt
  • ltnombregtAdelaida Delgadolt/nombregt
  • ltemailgtadelaida_at_ipc4.uib.eslt/emailgt
  • lt/remitegt
  • ltdestinatariogt
  • ltnombregtAntonio F. Cocalt/nombregt
  • ltemailgtantonioc_at_ipc4.uib.eslt/emailgt
  • lt/destinatariogt
  • ltasuntogtSaludoslt/asuntogt
  • ltcuerpogt
  • ltparrafogtHola qué tal? Hace ltenfasisgtmucholt/enfas
    isgt que
  • no escribes. A ver si
    llamas y quedamos para tomar algo.
  • lt/parrafogt
  • lt/cuerpogt
  • lt/mensajegt

10
Instrucciones de procesamiento
  • Sintaxis
  • Ejemplo

lt? Instrucción ?gt
lt?xml version"1.0"?gt
11
Documentos XML bien formados/válidos
  • XML está diseñado para ser utilizado con o sin
    DTD
  • Un documento XML es válido si tiene una DTD
    concordante.
  • La DTD puede está contenida en el propio
    documento XML o contenida en un fichero externo
  • Un documento XML está bien formado si cumple las
    reglas descritas en la especificación oficial XML
    v1.0 (http//www.w3.org/TR/REC-xml)

12
Documentos XML bien formados
  • Estructura jerárquica de elementos
  • Los elementos deben estar correctamente anidados,
    no se pueden superponer
  • Sólo puede haber un elemento raíz, en el que
    están contenidos todos los demás
  • Etiquetas
  • Deben estar balanceadas
  • Las etiquetas vacías (de los elementos sin
    contenido) han de presentar el símbolo / al
    final
  • Atributos
  • Los valores de los atributos han de estar entre
    comillas
  • Mayúsculas y minúsculas
  • XML es case-sensitive

13
Documentos XML bien formados, sin DTD
  • Cuando no se utiliza DTD el documento debe
    comenzar por una declaración de documento único
    standalone
  • Los documentos XML sin DTD pueden utilizar
    atributos pero han de ser del tipo CDATA por
    defecto

lt? xml version1.0 standaloneyes ?gt
14
Declaración de tipo de documento
  • La DTD puede residir en un fichero externo (que
    puede ser compartido por otros documentos) o bien
    estar contenida en el propio documento XML, como
    parte de su declaración de tipo de documento.
  • Si la DTD es externa, en la declaración de tipo
    de documento se indica dónde encontrarla
  • Mediante un identificador público (PUBLIC)
  • Mediante un Identificador Universal de Recursos
    (URI) precedido por la palabra SYSTEM.
  • Ejemplos
  • lt!DOCTYPE MENSAJE SYSTEM "mensaje.dtd"gt
  • lt!DOCTYPE PRODUCTOS SYSTEM "http//www.empresa
    .com/dtds/productos.dtd"gt
  • lt!DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.0//ENgt

15
Elementos y atributos en XML
  • Etiquetas de elementos
  • Cada tipo de elemento tendrá un nombre
    (etiqueta), indicativa de la función, su
    identificador genérico
  • o bien
  • si el contenido del elemento es vacío
  • Es importante comprender la estructura del
    documento para representarla utilizando las
    etiquetas apropiadas

ltetiquetagtcontenido_elemento lt/etiquetagt
ltetiqueta/gt
16
Elementos y atributos en XML
  • Atributos
  • Suelen ser opcionales
  • Atributo especial de identificación id ? se
    utiliza para dar un valor único a la ocurrencia
    de un elemento particular.
  • Se puede utilizar para hacer referencias cruzadas
  • Valores de los atributos ? se darán en la
    instancia del documento como un par
    atributovalor, en la ocurrencia de la
    etiqueta de principio del elemento
  • Ejemplo

ltpoema idP1 estadoborradorgt ... lt/poemagt
17
Entidades
  • XML utiliza entidades para referenciar a objetos
    (ficheros, páginas web, imágenes, cualquier cosa)
    que no deben ser analizados sintácticamente según
    las reglas de XML.
  •  
  • Sintaxis
  •  

entidad
18
Entidades predefinidas
  • Al usar una referencia a una entidad, el
    analizador sintáctico reemplaza la referencia con
    su contenido.

Entidad Carácter -------------------------
lt lt gt gt amp apos quot
19
Entidades generales internas
  • Son abreviaturas declaradas en la DTD mediante el
    uso de "lt!ENTITY".
  • Ejemplo

lt!DOCTYPE texto lt!ENTITY nombre "Pepito de los
Palotes Sabelotodo"gt gt ...   lttextogtlttitulogtHisto
ria de nombrelt/titulogtlt/textogt
20
Entidades generales externas analizadas
  • Obtienen su contenido en cualquier otro sitio del
    sistema.
  • Se referencian mediante la palabra SYSTEM seguida
    de un URI.
  • Ejemplo

lt!ENTITY mientidad SYSTEM "http//www.servidor.co
m/entidades.xml"gt
21
Entidades generales externas no analizadas
  • Son aquéllas cuyo contenido no es texto sino por
    ejemplo una imagen, un archivo de vídeo, un
    ejecutable, etc.
  • Ejemplo

lt!ENTITY foto SYSTEM "http//www.servidor.com/fot
o.gif"gt
22
Entidades parámetro
  • Se usan para agrupar ciertos elementos que se
    repitan mucho.
  • Para declararlas y referenciarlas se usa el
    símbolo "".
  • Pueden ser internas y externas.
  • Ejemplo

lt!DOCTYPE texto lt!ENTITY elem_parrafo
"lt!ELEMENT parrafo (PCDATA)gt"gt
... elem_parrafo gt
23
Comentarios
  • Son ignorados por los procesadores XML
  • Pueden aparecer en cualquier lugar de la
    instancia del documento o del prólogo pero no en
    las declaraciones, en las etiquetas o dentro de
    otros comentarios
  • Sintaxis

lt!-- comentario --gt
24
Secciones CDATA
  • Sirven para definir texto que no será tratado por
    los analizadores XML.
  • Sintaxis

lt! CDATA texto_libre gt
25
Tecnologías asociadas a XML
  • Modularidad y reutilización de documentos XML
  • Espacios de Nombres
  • Definición de Documentos
  • DTDs y XML Schemas
  • Definición de estilos
  • CSS y XSL
  • Referencias a partes de los documentos
  • XPath
  • Enlazado de documentos
  • XLink, XPointer
  • Aplicaciones
  • RDF, XHTML, ...

26
Espacios de nombres XML
  • Colección de nombres universales identificada por
    un URI (URL o URN) que se utiliza en los
    documentos XML como tipos de elementos y nombres
    de atributos.
  • Declaración por defecto declara un espacio de
    nombres que se utilizará para todos los elementos
    dentro de ese ámbito.
  • Declaración explícita se define un prefijo que
    se utilizará para calificar los elementos que
    pertenezcan al espacio de nombres que se le ha
    asociado como xmlnsprefijoespacio_de_nombres

27
Espacios de nombres XML. Ejemplos
ltBOOK xmlns"urnBookLovers.orgBookInfo"gt
ltTITLEgtA Suitable Boylt/TITLEgt ltPRICE
currency"US Dollar"gt22.5lt/PRICEgt lt/BOOKgt
ltBOOKSgt ltbkBOOK xmlnsbk"urnBookLovers.org
BookInfo" xmlnsmoney"urnFinanc
eMoney"gt ltbkTITLEgtA Suitable
Boylt/bkTITLEgt ltbkPRICE
moneycurrency"US Dollar"gt 22.5lt/bkPRICEgt
lt/bkBOOKgt lt/BOOKSgt
28
DTDs
  • Conjunto de reglas que definen un documento XML y
    que sirven para etiquetarlo adecuadamente
  • Indica qué elementos, atributos y entidades están
    permitidas y algunas limitaciones de cómo
    combinarlos
  • Crear una DTD es como crear nuestro propio
    lenguaje de marcado para una aplicación
    específica
  • Sintaxis

lt! DOCTYPE tipo_doc ... gt
29
DTDs. Declaración de elementos
  • Estructura arborescente
  • Sintaxis

lt! ELEMENT id_gen
especificac_contenido gt
  • Ejemplo de declaración de elementos

lt!DOCTYPE etiqueta
lt!ELEMENT etiqueta (nombre, calle, ciudad, pais,
codigo)gt lt!ELEMENT nombre
(PCDATA)gt lt!ELEMENT calle
(PCDATA)gt lt!ELEMENT ciudad
(PCDATA)gt lt!ELEMENT pais
(PCDATA)gt lt!ELEMENT codigo
(PCDATA)gt gt
30
lt! ELEMENT id_gen especificac_contenido gt
  • indica un identificador genérico asignado al
    elemento que se quiere definir (su nombre)

31
lt! ELEMENT id_gen especificac_contenido gt
  • La especificación de contenido de un elemento
    puede ser
  • EMPTY Se utiliza para etiquetas vacías
  • Ejemplo lt!ELEMENT br EMPTYgt
  • ANY Puede tener cualquier contenido
  • Ejemplo lt!ELEMENT container ANYgt
  • Mixed Puede tener caracteres de tipo datos
    (PCDATA), opcionalmente mezclados con elementos
    de tipo hijos (children)
  • Ejemplo lt!ELEMENT enfasis (PCDATA)gt
  • lt!ELEMENT parrafo (PCDATAenfasis)gt
  • Children Contiene sub-elementos. Se especifica
    un modelo de contenido (una simple gramática que
    gobierna los tipos permitidos para los elementos
    hijos y el orden en el cual pueden aparecer)
  • Ejemplo lt!ELEMENT aviso (titulo?, (parrafo,
    grafico))gt

32
lt! ELEMENT id_gen especificac_contenido gt
  • Modelos de contenido
  • Si la especificación de contenido contiene más de
    un componente hay que especificar el orden
    mediante conectores
  • , (mismo orden que el especificado),
  • (sólo puede aparecer uno),
  • (cualquier orden)
  • Cada partícula de contenido puede llevar un
    indicador de frecuencia
  • (una o más veces),
  • ? (como mucho una ocurrencia) y
  • (ausente, o una o más veces)
  • Ejemplo lt!ELEMENT aviso (titulo?, (parrafo,
    grafico))gt
  • En este caso, ltavisogt puede tener lttitulogt o no
    (pero sólo uno), y puede tener cero o más
    conjuntos ltparrafogtltgraficogt, ltparrafogtltparrafogtltg
    raficogt, etc.

33
DTDs. Declaración de atributos
  • En la DTD los atributos suelen declararse a
    continuación del elemento
  • Sintaxis


lt! ATTLIST id_gen nombre tipo_valor
estado/valor_defecto gt
  • Ejemplo de declaración de atributos

lt!ATTLIST poema id ID IMPLIED estado (bo
rradorrevisadopublicado) borradorgt
34
lt!ATTLIST id_gen nombre tipo_valor
estado/valor_defectogt
  • Indica el identificador genérico del elemento del
    que se declaran los atributos
  • Si varios elementos comparten los mismos
    atributos se daría la lista de los elementos
    implicados entre paréntesis
  • A continuación vienen tantas líneas
  • nombre tipo_valor estado/valor_defecto
  • como atributos tenga el elemento

35
lt!ATTLIST id_gen nombre tipo_valor
estado/valor_defectogt
  • indica el nombre del atributo

36
lt!ATTLIST id_gen nombre tipo_valor
estado/valor_defectogt
  • Atributos de cadena
  • CDATA cadenas de caracteres cualesquiera, no
    analizadas sintácticamente
  • Atributos enumerados
  • Sólo pueden contener un valor de entre un número
    determinado de opciones
  • Atributos con símbolo
  • Normalización del valor del atributo y validación
    en base al tipo de atributo que se declare
  • Símbolos
  • ID, IDREF, IDREFS
  • ENTITY, ENTITIES
  • NMTOKEN, NMTOKENS
  • NOTATION

37
lt!ATTLIST id_gen nombre tipo_valor
estado/valor_defectogt
  • default
  • indica el valor predeterminado del atributo
  • REQUIRED
  • significa que no tiene valor por defecto ya que
    es obligatorio especificar este atributo
  • IMPLIED
  • se utiliza cuando interesa que se pueda omitir
    un atributo, sin que se adopte automáticamente un
    valor por defecto
  • FIXED
  • indica que el atributo tiene un valor fijo

38
XML Schemas
  • Similar a una DTD en cuanto a que
  • define qué elementos puede contener un documento
    XML,
  • cómo están organizados,
  • y que atributos y de qué tipo pueden tener sus
    elementos

39
XML Schemas. Ventajas
  • Usan sintaxis de XML
  • Mayor riqueza de tipos de datos
  • Tipos predefinidos (booleanos, fechas y horas,
    URIs, enteros, decimales, reales, intervalos de
    tiempo, etc.)
  • Tipos definidos por los usuarios
  • Permite agrupar atributos
  • Modelos de contenido
  • Abierto todos los elementos requeridos han de
    estar presentes, pero no es un error que también
    aparezcan elementos adicionales.
  • Refinable permite que aparezcan elementos
    adicionales pero sólo si el esquema define
    cuáles son
  • Soportan los espacios de nombres

40
XML Schemas. Frenos
  • La existencia de un gran número de herramientas,
    tanto SGML como XML, que pueden procesar DTDs
  • La existencia de un gran número de tipos de
    documentos ya definidos usando DTDs HTML, XHTML,
    etc.
  • Una larga experiencia de aplicación práctica de
    las DTDs y conocimiento de éstas por parte de la
    comunidad de programadores de XML y SGML

41
XML Schemas. Validación
  • Es posible convertir automáticamente las DTDs
    existentes en esquemas XML, con lo cual se
    mejoraría la descripción de los documentos
  • Para validar documentos frente a esquemas XML o
    DTDs se puede usar la herramienta XML Validator
    de Microsoft, accesible en http//msdn.microsoft.c
    om/downloads/samples/internet/xml/xml_validator/

42
XML Schemas. Ejemplo
ltdocumento xmlns"x-schemapersonaSchema.xml"gt ltpe
rsona id"43027584Y"gt ltnombregtPepito Pérez
Pérezlt/nombregt lt/personagt lt/documentogt
  • ltSchema xmlns"urnschemas-microsoft-comxml-data"
  • xmlnsdt"urnschemas-microsoft-comdatatypes"gt
  • ltAttributeType name'id' dttype'string'
    required'yes'/gt
  • ltElementType name'nombre' content'textOnly'/gt
  • ltElementType name'persona' content'mixed'gt
  • ltattribute type'id'/gt
  • ltelement type'nombre'/gt
  • lt/ElementTypegt
  • ltElementType name'documento' content'eltOnly'gt
  • ltelement type'persona'/gt
  • lt/ElementTypegt
  • lt/Schemagt

43
CSS (Cascade Style Sheet)
  • Lenguaje de hojas de estilos diseñado para HTML
  • Las reglas de las hojas de estilos se pueden
    colocar
  • directamente en un documento HTML o XML,
  • en documentos de hojas de estilos externas con la
    extensión de archivo .css.
  •  

lt?xml-stylesheet type"text/css"
href"mystyle.css"?gt
  • CSS1, diciembre 1996 (IE 4.x, Netscape 4.x)
  • CSS2, mayo 1998 (IE 5.x, Netscape 6.0)
  • CSS3, en proceso

44
CSS. Reglas de estilo
  • Constan de dos partes el selector y la cadena de
    estilos.
  • Selectores
  • Construcciones CSS que identifican partes de un
    documento HTML o XML.
  • Cadena de estilos
  • Conjunto de
  • propiedad valor

45
CSS1. Tipos de selectores
  • Tipo de elemento selecciona un elemento de un
    determinado tipo y le aplica un estilo o conjunto
    de estilos.
  • Clase de atributo permite aplicar estilos a un
    atributo especial. El atributo class se utiliza
    para definir clases de estilos de un determinado
    tipo de elemento.
  • ID de atributo establece una regla de estilo
    que se puede aplicar a cualquier elemento,
    independientemente de su tipo.

46
Ejemplo de definición de un conjunto de estilos
para el elemento p de un documento HTML
p display block margin-bottom 10px
font-family Times, serif font-size 12pt
En el documento HTML se marcaría el código de
párrafo de manera habitual
ltpgt Parrafo de texto. lt/pgt
47
Ejemplo de definición de una clase especial de
párrafos
p.especial display block
margin-bottom 10px font-family Times,
serif font-size 12pt font-style
italic
En el documento HTML se marcaría el código de
párrafo especial utilizando el atributo class
ltp classespecialgt Parrafo de texto. lt/pgt
48
Ejemplo de creación de una regla de estilo por
medio del selecto ID de atributo
azul color blue font-family
Times, serif
En el documento HTML se marcaría utilizando el
atributo id
lth1 idazulgt Esto es un encabezamiento de color
azul. lt/h1gt
49
CSS1. Propiedades
  • display describe cómo aparece un elemento y si
    tiene que aparecer. Los posibles valores son
  • block (aparece en un recuadro),
  • list-item (aparece con una viñeta en un
    recuadro),
  • inline (aparece en un recuadro a continuación
    del contenido adyacente),
  • none (no aparece).
  • width y height determinan el ancho y alto del
    recuadro o las dimensiones de una imagen.
  • border, border-left, border-right, border-top,
    border-bottom. Además también se puede indicar el
    grosor (border-width), el color (border-color) y
    el estilo (border-style).

50
CSS1. Propiedades (cont.)
  • margin, margin-left, margin-right, margin-top,
    margin-bottom.
  • background-color y color
  • text-align y text-indent se usan para
    establecer, respectivamente, la alineación y el
    sangrado de un elemento.
  • Las propiedades font se utilizan para establecer
    los distintos parámetros que están asociados a
    las fuentes, como la familia (font-family), el
    tamaño (font-size), el estilo (font-style), etc.

51
CSS2
  • Añade nuevos selectores y se pueden seleccionar
    elementos basándose en un patrón.
  • Se han añadido pseudoClases, y pseudoElementos
    que permiten dar formato a objetos seleccionados,
    objetos apuntados, etc.
  • Se han añadido los tipos de medios de manera que
    permite crear formatos diferentes dependiendo del
    tipo de medio que se vaya a utilizar para
    mostrarlo, video, TV, impresoras, etc.
  • Permite fuentes descargables
  • Permite el posicionamiento de elementos y tablas

52
CSS3
  • Propone modularizar las especificaciones de CSS
  • Los selectores permiten seleccionar elementos en
    base a si contienen o no cierta palabra, o si son
    el único elemento de cierta clase

53
XSL (eXtensible Style Language)
  • Sintaxis XML
  • Un mismo documento XML puede tener varias hojas
    de estilo XSL que lo muestren en diferentes
    formatos (HTML, PDF, RTF, VRML, PostScript,
    sonido, etc.).
  • El procesador XML lleva a cabo dos procesos
  • Transformación (tecnología XSLT)
  • Formateo (tecnología XSLFO)

54
XSLT
  • A partir del árbol XML fuente se construye un
    árbol transformado, el cual puede tener una
    estructura significativamente diferente del
    original.
  • Una hoja de estilo XSL consta de una serie de
    reglas de transformación.
  • Cada regla se compone de un patrón (pattern) y
    una acción o plantilla (template).
  • XSLT utiliza el patrón para seleccionar partes de
    un documento XML para su transformación.
  • Al cotejar un patrón con una parte del árbol, se
    usa una plantilla para determinar cómo se
    transforma esa parte de árbol.
  • XSLT utiliza expresiones XPath para recorrer un
    documento XML y llegar a un nodo determinado.

55
XSLT. Espacio de nombres
ltxslstylesheet versión1.0
xmlsxslhttp//www.w3.org/1999/XSL/Transformgt
  • Elementos
  • xsltemplate contiene los patrones y datos de
    transformación.
  • xslvalue-of se usa para insertar el valor de un
    elemento o atributo en la salida resultante de la
    hoja de estilos.
  • xslif
  • xslfor-each
  • xslapply-templates se usa para aplicar
    plantillas que se definen en una hoja de estilos.

56
XSLT. Ejemplos
  • lt?xml version"1.0" encoding"ISO-8859-1"
    standalone"yes"?gt
  • lt?XML-STYLESHEET type"text/xsl"
    href"ejemplo1.xsl" ?gt
  • ltLIBROSgt
  • ltLIBROgt
  • ltTITULOgtAutoSketchlt/TITULOgt
  • ltAUTOR NACIONALIDAD"Española"gtRamón
    Monterolt/AUTORgt
  • ltPRECIO MONEDA"Euros"gt15.02lt/PRECIOgt
  • lt/LIBROgt
  • ltLIBROgt
  • ltTITULOgtWindows 98lt/TITULOgt
  • ltAUTOR NACIONALIDAD"Española"gtJaime de
    Yraolagoitialt/AUTORgt
  • ltPRECIO MONEDA"Pesetas"gt3.250lt/PRECIOgt
  • lt/LIBROgt
  • ltLIBROgt
  • ltTITULOgtWeb Graphicslt/TITULOgt
  • ltAUTORgtRon Wodaskilt/AUTORgt
  • ltPRECIO MONEDA"Dolares"gt49.95lt/PRECIOgt
  • lt/LIBROgt
  • ltLIBROgt

Documento XML
57
XSLT. Ejemplos
  • lt?xml version"1.0" encoding"ISO-8859-1"?gt
  • ltxslstylesheet xmlnsxsl"http//www.w3.org/1999/
    XSL/Transform"gt
  • ltxsltemplate match"/"gt
  • ltHTMLgt
  • ltBODYgt
  • lttable border"1"gt
  • lttrgtltthgtTitulolt/thgtltthgtAutorlt/thgtltthgtPreci
    olt/thgtlt/trgt
  • ltxslfor-each select"/LIBROS/LIBRO"
    order-by" AUTOR"gt
  • lttrgt
  • lttdgtltFONT SIZE"2" COLOR"red"
    FACE"Verdana"gt
  • ltxslvalue-of select"TITULO"/gtlt/FO
    NTgtlt/tdgt
  • lttdgtltFONT SIZE"2" COLOR"blue"
    FACE"Verdana"gt
  • ltxslvalue-of select"AUTOR"/gtlt/FON
    Tgtlt/tdgt
  • lttdgtltFONT SIZE"2" COLOR"green"
    FACE"Verdana"gt
  • ltxslvalue-of select"PRECIO"/gt
  • ltxslvalue-of select"PRECIO/_at_MONED
    A"/gtlt/FONTgtlt/td
  • lt/trgt
  • lt/xslfor-eachgt
  • lt/tablegt

ejemplo1.xsl
58
XSLT. Ejemplos
Aplicación de la hoja de estilo ejemplo1.xsl
59
  • lt?xml version"1.0" encoding"ISO-8859-1"?gt
  • ltxslstylesheet xmlnsxsl"http//www.w3.org/1999/
    XSL/Transform"gt
  • ltxsltemplate match"/"gt
  • ltHTMLgt
  • ltBODYgt
  • lttable border"1"gt
  • lttrgtltthgtTitulolt/thgtltthgtAutorlt/thgtltthgtPreci
    olt/thgtlt/trgt
  • ltxslfor-each select"/LIBROS/LIBRO"
    order-by" AUTOR"gt
  • ltxslif match".PRECIO/_at_MONEDA
    'Dolares'"gt
  • lttrgt
  • lttdgtltFONT SIZE"2" COLOR"red"
    FACE"Verdana"gt
  • ltxslvalue-of
    select"TITULO"/gtlt/FONTgtlt/tdgt
  • lttdgtltFONT SIZE"2" COLOR"blue"
    FACE"Verdana"gt
  • ltxslvalue-of
    select"AUTOR"/gtlt/FONTgtlt/tdgt
  • lttdgtltFONT SIZE"2" COLOR"green"
    FACE"Verdana"gt
  • ltxslvalue-of select"PRECIO"/gt
  • ltxslvalue-of select"PRECIO/_at_MON
    EDA"/gtlt/FONTgtlt/tdgt
  • lt/trgt
  • lt/xslifgt

ejemplo2.xsl
60
XSLT. Ejemplos
Aplicación de la hoja de estilo ejemplo2.xsl
61
XSLFO
  • Superconjunto de CSS
  • Cada uno de los nodos del árbol se trata como un
    objeto de formateo, donde cada nodo soporta una
    amplia gama de estilos de presentación.
  • Cuando el procesador XSL procesa un objeto de
    formateo, se asigna a un área rectangular en la
    superficie de la pantalla.
  • Las propiedades del objeto determinan qué formato
    tiene, junto con los parámetros del área en la
    que está asignada.

62
XPath
  • Con Xpath podemos seleccionar y hacer referencia
    a texto, elementos, atributos y cualquier otra
    información contenida en un fichero XML.
  • Su nombre le viene de utilizar una notación de
    ruta (path) para navegar a través de la
    estructura jerárquica de un documento XML.
  • XPath opera sobre la estructura lógica de un
    documento XML, modelándolo como un árbol de
    nodos.
  • Una expresión Xpath devuelve una lista de
    punteros a los elementos que encajan con el
    patrón que representa dicha expresión.

63
  • ltlibrogt
  • lttitulogtDos calleslt/titulogt
  • ltautorgtPepa Pepolt/autorgt
  • ltcapitulo num"1"gt
  • La primera calle
  • ltparrafogt
  • Era una sombría noche del mes de
    agosto...
  • lt/parrafogt
  • ltparrafo destacar"si"gt
  • Ella, inocente cual
  • ltenlace href"http//www.mariposa.com"gtm
    ariposalt/enlacegt
  • que surca el cielo...
  • lt/parrafogt
  • lt/capitulogt
  • ltcapitulo num"2" public"si"gt
  • La segunda calle
  • ltparrafogt
  • Era una oscura noche del mes de
    septiembre...
  • lt/parrafogt

64
Ejemplos de expresiones XPath
  • /libro/capitulo/parrafo
  • referencia a todos los elementos parrafo que
    sean hijos de cualquier elemento capitulo que a
    su vez sean hijos de cualquier elemento libro que
    cuelgue del nodo raíz.
  • /libro/capitulo/_at_num
  • selecciona el atributo num que posean los
    elementos capitulo
  • /libro/capitulo_at_num"1"/parrafo
  • referencia todos los elementos parrafo de todos
    los elementos capitulo que tengan un atributo
    llamado num al cual se le haya asignado el valor
    "1"
  • /libro/capitulo_at_public/
  • selecciona todos los elementos hijos de los
    elementos capitulo que posean el atributo public
  • //parrafo//_at_href
  • selecciona todos los descendientes de parrafo que
    tienen un atributo href
  • //parrafo/text()
  • selecciona el texto de todos los nodos parrafo

65
Xpointer (XML Pointer Language)
  • Describe cómo apuntar a un elemento de XML. Es
    similar a utilizar etiquetas para apuntar a una
    parte de los documentos HTML.
  • Sintaxis
  • donde expresión es una expresión Xpath con
    algunas propiedades extra.

URIxpointer(expresion)
66
XLink(XML Linking Language)
  • XLink describe cómo enlazar dos o más recursos.
  • Atributos
  • type. Valores simple, extended, locator, arc,
    resource, title, none
  • href
  • show. Valores replace, new, embed, other, none
  • actuate. Valores onLoad, onRequest, other, none
  • label
  • from
  • to
  • role
  • arcrole
  • title

xmlsxlink"http//www.w3.org/XML/XLink/1.0"
67
XLink. Ejemplo enlace simple
  • ltmi_documento xmlnsxlink"http//www.w3.org/1999/
    xlink"gt
  • ...
  • ltenlazar xlinktype"simple"
    xlinkhref"http//www.uib.es"gt
  • xlinklabel"UIB"
  • xlinkshow"new"gt
  • Este enlace apunta a la pagina de inicio de la
    UIB y hace que se visualice en una nueva
    instancia del navegador.
  • lt/enlazargt
  • ...
  • lt/mi_documentogt

68
XLink. Ejemplo enlace extendido
  • ltmi_documento xmlnsxlink"http//www.w3.org/1999/
    xlink"gt
  • ...
  • ltdirecciones xlinktype"extended"gt
  • ltlocator xlinktype"locator" xlinkhref"ht
    tp//realmadrid.com" xlinkshow"replace"
    xlinkactuate"onRequest"/gt
  • ltlocator xlinktype"locator" xlinkhref"ht
    tp//fcbarcelona.com" xlinkshow"new" xli
    nkactuate"onRequest"/gt
  • ltlocator xlinktype"locator" xlinkhref"ht
    tp//athmadrid.com" xlinkshow"replace" x
    linkactuate"onRequest"/gt
  • Los clubes de fútbol de hoy en día...
    lt/direccionesgt
  • ...
  • lt/mi_documentogt

69
RDF (Resource Description Framework)
  • Aplicación de XML para escribir metadatos que
    describan recursos Web (cualquier recurso
    identificable a través de un URI) de tal manera
    que puedan ser intercambiados y procesados por
    los ordenadores.
  • XML permite dotar de estructura a los documentos,
    RDF expresa el significado de esa estructura
  • Tripletas sujeto, verbo y objeto
  • (Sujetos) (tienen propiedades) (con ciertos
    valores)
  • (Adelaida Delgado)(es la autora de)(XML y
    tecnologías asociadas)
  • (field 5 in database A) (is a field of type)
    (zip code)
  • Sujeto, verbo y objeto se identifican con URIs

70
XHTML
  • Versión de HTML conforme a XML
  • DTD para XML
  • Características
  • Existen elementos obligatorios (html, head,
    title, body, etc.)
  • Todas las etiquetas deben tener principio y fin
  • Se ha de respetar el anidamiento de etiquetas
  • El código ha de estar en minúsculas
  • Los valores de atributos han de ir entre comillas
    dobles
  • Servicio de validación en http//validator.w3.org/
Write a Comment
User Comments (0)
About PowerShow.com