1 / 19

XML / XSL

XML / XSL. CI-2413 Desarrollo de Aplicaciones para Internet. Espacios de nombre XML.

naasir
Download Presentation

XML / XSL

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. XML / XSL CI-2413 Desarrollo de Aplicaciones para Internet

  2. Espacios de nombre XML • Los espacios de nombres de XML se han creado para tener la posibilidad de utilizar varios elementos con el mismo nombre dentro del mismo documento. Este sistema permite adjuntar un URL al nombre de un elemento para proporcionar al procesador de XML la posibilidad de relacionar los diferentes elementos con la fuente correcta. Esto funciona tanto con nombres de elemento como con nombres de atributo, por lo que un atributo font utilizado dentro de un documento con formato estándar de XML o un font utilizado con la notación de MathML se pueden interpretar por separado aplicando las reglas de hojas de estilo correctas.

  3. Espacios de nombre XML • Notación: • <nombre_elemento xmlns:prefijo=“url_de_espacio_de_nombres”> • V.G.: • <MATH xmlns:mm=”http://www.w3.org/TR/REC-MathML”>

  4. XSL • XSL está separado en dos: transformaciones y formato. El vocabulario para transformaciones y el otro para entregar el contenido de documentos se denominan, respectivamente, XSLT y XSL. El que aún se denomina de forma oficial como XSL se conoce comúnmente como XSL-FO.

  5. Transformaciones XSL • Muchas veces el contenido de un documento XML necesita asumir otra forma para resultar más útil. El estándar más popular para llevar a cabo modificaciones al formato del contenido basado en XML, es el lenguaje de transformaciones de hojas de estilo extensible (XSLT, eXtensible Stylesheet Language Transformations). XSLT se utiliza en conjunción con XPath para localizar fragmentos específicos de los documentos.

  6. Conceptos de XSLT • Árbol fuente y árbol resultado • Considere el ejemplo realizado en el laboratorio. El documento XML puede ser visto como el árbol fuente y el árbol resultado sería el documento HTML generado después de aplicar las transformaciones XSLT.

  7. Conceptos de XSLT • Nodos y tipos de nodos. • Un nodo equivale a un componente lógico discreto del documento XML (nodos del árbol). • Tipos: • Nodo raíz (root). • Nodos elemento (element). • Nodos atributo (attribute). • Nodos texto (text). • Nodos PI (processing instruction). • Nodos comentario (comment). • Nodos espacio de nombres (namespaces).

  8. Conceptos de XLST • Los siete tipos de nodos anteriores comprenden todo lo que puede aparecer dentro de un documento XML. Dado un árbol fuente, una vez localizado un nodo, con XSLT es posible transferirlo sin modificar a un nodo del árbol resultado, transferirlo con modificaciones o no transferirlo. Pero, ¿cómo se encuentra un nodo? Se utilizan expresiones XPath.

  9. XPath • XPath NO es un vocabulario XML, sino que define un mecanismo para la utilización de cadenas de texto con formato especial. • Una expresión completa de XPath se codifica como un trayecto de búsqueda, que se compone de uno o varios pasos de búsqueda delimitados. • V.G. (laboratorio): /productDB/product/price

  10. XPath • Contexto • A medida que un procesador compatible con XPath avanza a lo largo de un trayecto de búsqueda, cada paso de búsqueda se considera en el contexto de los precedentes. • V.G.: En el laboratorio cuando utilizamos la expresión XPath “../version” se debió porque nos encontrábamos en el nodo contexto “name”.

  11. XPath • Sintaxis de un paso de búsqueda • eje::comprobación_de_nodo[predicado]

  12. El eje self attribute child parent descendant descendant-or-self ancestor ancestor-or-self preceding preceding-sibling following following-sibling namespace XPath

  13. XPath • Formas abreviadas para ejes • . = self::node() • .. = parent::node() • @ = attribute::comprobación_de_nodo @comprobación_de_nodo • // = descendant-or-self::node()

  14. XPath • Comprobación de nodo • Tipo de nodo • node(), text(),comment() o processing-instruction() • Nombre • Es la comprobación de nodo más frecuente. • parent::version • parent::* • PI específica • descendant::processing-instruction(“for-each”)

  15. XPath • El predicado • nodo operador valor • operador • =, >, <, >=, <=, != • V.G. • product[version = “1.0”] • Comprobación de la existencia de un nodo • product[price] • price[@currency != “”]

  16. XPath • Valores de nodo • Node-set • String • Numérico • Booleano • Funciones de XPath • Para cada uno de los tipos de nodo anteriores hay funciones. (Investigar)

  17. Transformaciones de XML con XSLT • La siguiente es la sintaxis general de la etiqueta de comienzo del elemento xsl:stylesheet: <xsl:stylesheet version=“número” xmlns:xsl=“http://www.w3.org/1999/XSL/Transform” [otras declaraciones de espacios de nombres] id=“id” extension-element-prefixes=“prefijos” exclude-result-prefixes=“prefijos”>

  18. Transformaciones de XML con XSLT • Transformación a HTML: <xsl:stylesheet version="1.0“ xmlns:xsl="http://www.w3.org/1999/XSL/Transform“ xmlns="http://www.w3.org/TR/REC-html40">

  19. Transformaciones de XML con XSLT • Investigar todos los elementos xsl:* • Examen corto sobre XSL durante la próxima lección teórica.

More Related