unidaddidáctica7.1_xslt-curso2014-15
TRANSCRIPT
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
1/43
JJ Taboada LenIES San Sebastin, Departamento de Informtica
LENGUAJE DE MARCAS Y SGICurso 2014 / 2015
Unidad 77.1 XSLT y XPATH
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
2/43
Guon del tema
Qu es XSLT?
Aplicacin de las
transformaciones Estructura y sintxis
XSLT
Elemetos XSLT XSLT con CSS
EJERCICIOS
Transformar documentos
XML con Notepad++ y
Dreamwaver
Prcticas con XML, XSLT,
HTML y CSS
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
3/43
QU ES XSLT? XSLT (eXtensible Stylesheet LanguageTransformations),
Lenguaje de hoja de estilo ampliable para transformaciones Describe un lenguaje basado en XML para transformar documentos
XML a cualquier otro formato
XSLT es el lenguaje de hojas de estilo recomendado de XML. XSLT es mucho ms sofisticado que el CSS.
XSLT puede ser utilizado para transformar documentos XML enHTML, antes de ser mostrados en un navegador.
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
4/43
Aplicacin de las transformaciones
Utilizaremos XSLT para transformar documentos entre esquemas
XML que permitan su procesamiento por distintos sistemas Utilizaremos XSLT para transformar documentos XML en HTML,
WML, o cualquier otro formato que facilite su presentacin en lapantalla de un ordenador o en impresora
La transformacin de XML a HTML es el principal uso que sehace de XSLT
WML(Wireless Markup Language)
lenguaje que se utiliza para construir las
pginas que aparecen en las pantallas de
los telfonos mviles y los asistentes
personales digitales (PDA)
http://es.wikipedia.org/wiki/PDAhttp://es.wikipedia.org/wiki/PDA -
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
5/43
Aplicacin de las transformaciones No debemos confundir lastransformaciones XSLT con la
presentacin de documentos XML conCSS
Con XSLT, generaremos un documentoHTML a partir de un documento XML.Se tratar de dos documentos distintos
Con CSS, el navegador recibe undocumento XML que formatea utilizandolas reglas CSS para presentarlo en pantallade forma que sea ms fcilmente legible,pero es el mismo documento
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
6/43
HERRAMIENTAS Actualmente contamos con varias herramientas para realizar
transformaciones XSLT: Saxon, desarrollado en Java por Michael Kay (un gur de XSLT)
xt, diseado por James Clark
Dreamweaver XMLspy
En las prcticas usaremos Notepad++ con el complemento XMLtools yDreamweaver
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
7/43
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
8/43
Estructura de una hoja de estilo XSLT (II)
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
9/43
Estructura de una hoja de estilo XSLT (III) Entre las marcas de inicio y de fin del elemento raz xsl:stylesheet,
se escribirn las reglas de transformacin que se llamanplantillas
Cada regla se definir mediante un elemento xsl:template (una
plantilla) Se utiliza el atributo match para asociar una plantilla con un
elemento XML. El atributo match tambin se puede utilizar paradefinir un modelo para todo el documento XML. El valor del
atributo match es una expresin de XPath (eje. match = "/"define todo el documento).
La regla indica qu instancias de los elementos del documentoXML se van a transformar.
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
10/43
Estructura de una hoja de estilo XSLT (IV)REGLAS DE TRANSFORMACIN
EJEMPLO:
La regla se aplicar a todas las instancias del elemento nombre. Esto se indica mediante elatributo match que acompaa al elemento xsl:template.
Entre las etiquetas de inicio y de fin del elemento xsl:template se escribe la transformacin
que se debe realizar... es decir, qu texto y qu marcas se escribirn en el documento resultado de la
transformacin, cada vez que se encuentre una instancia del elemento nombre en eldocumento origen.
Con , se recupera y escribe en el documento resultado el contenido delelemento que est siendo procesado.
rbol de origen al que seaplica esta plantilla
salida
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
11/43
Ejemplo de transformacin XSLT (I)Documento XML
Madrid
3500000
Huelva150000
Toledo50000
Documento XML
Referencia aldocumento XSL
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
12/43
Ejemplo transformacin XSLT (II)Documento xsl
Ejemplo XSLT
CIUDADES DE ESPAA
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
13/43
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
14/43
Resultado
El resultado de la transformacin es el siguiente:
Ejemplo XSLT
CIUDADES DE ESPAA Madrid
MlagaToledo
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
15/43
Ejemplossimple.xml
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
16/43
Simple.xsl
Ejemplo XSLT simple
Nombre encontrado
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
17/43
Actividades
1. Con Notepad++ escribir cada uno de los ejemplos anteriores yhacer todas las pruebas que se os ocurran.2. Con Notepad++, crear una primera hoja de estilo XSLT que, a
partir del documento XML tienda1.xml (este documento se encuentraen adjunto), extraiga en un documento HTML los artculos de latienda
3. Formatear la lista de artculos para que se presente como una lista noordenada (sin numerar), de HTML4. Cambiar la hoja de estilo XSLT para que los artculos se presenten en
una tabla con una nica columna5. Cambiar la hoja de estilo para que los artculos se presenten en una
tabla con dos columnas. En la primera de ellas se escribir un textofijo: ARTICULOS DE MI TIENDA
6. Aplicar esta ltima hoja de estilo al documentos XMLtiendecilla.xml(este documento se encuentra en adjunto).
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
18/43
El elemento I)
En el elemento se puede indicar que se quieremostrar el valor del elemento que estamos procesando Tambin podemos indicar que queremos mostrar el valor de un
elemento hijo, o descendiente, del elemento que se est procesando En el ejemplo anterior, podramos utilizar xsl:value-of para mostrar en
el documento resultado de la transformacin el artculo, la marca y elmodelo de cada producto.
Esto es posible porque en el atributo select podemos utilizar unaexpresin XPATH
XPATH es un lenguaje que nos permite direccinarnos a las seccionesde un documento XML y obtener las partes de la informacin quedeseamos (nodo de contexto)
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
19/43
El elemento (II)
Por ejemplo, para mostrar el valor del elemento articulo, que es unhijo del elemento producto, podramos utilizar la siguiente regla:
El valor del atributo select se puede leer de la siguiente forma: dameel valor del elemento articulo que es hijo del elemento que estoyprocesando. En este caso, cada uno de los elementos producto
Esto se indica mediante ./
Seleccin de nodos
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
20/43
Actividades
Utilizando el documentotienda1.xml, crear una hoja XSLT quetransforme el documento xml en un documento HTML con lasiguientes especificaciones:
El documento HTML deber mostrar una tabla. La tabla contendr unafila para cada producto. Las filas tendrn tres celdas, en la que aparecer el cdigo, el artculo y la
cantidad.
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
21/43
Resumen
En las reglas XSLT, entre sus marcas de inicio y de fin, se puedeincluir:
Texto que se escribir tal cual en el documento resultado de latransformacin.
Marcas HTML o XML que se aadiran al documento resultado dela transformacin.
Elementos reservados de la especificacin XSLT que realizarn
una accin como recuperar el valor de un elemento, ordenar losresultados, llamar a otras reglas de la hoja de estilo, etc (llamadasexpresiones XPATH).
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
22/43
Procesamiento de nodos por lotes
El elemento permite hacer unbucle en XSLT se puede utilizar para
seleccionar todos loselementos XML del nodoactual
Actividad Aplicarlo en tiendecilla
CIUDADES DE ESPAA
CiudadesHabitantes
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
23/43
Orden de procesamiento
Las reglas se van activando y ejecutando a medida que se recorre eldocumento origen que se quiere transformar. De esta forma, las reglas se ejecutan en el orden en el que se van
encontrando los elementos en el documento. Este comportamiento por defecto puede cambiarse en las hojas de
estilo XSLT, a diferencia de lo que suceda en las hojas de estilo CSS Esto permite reordenar los contenidos del documento XML, de
una forma distinta a como estn ordenadas en el documento XMLinicial
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
24/43
Orden de procesamiento
Para ordenar los contenidos, se utiliza el elemento xsl:sort xsl:sort es un elemento hijo de xsl:apply-templates Acepta dos atributos:
selectque toma como valor el nombre del elemento que se va a utilizar comocriterio de ordenacin y
orderque indica si se debe utilizar un orden ascendente o descendente.
ACTIVIDADES1. Modificar la hoja xsl del ltimo ejercicio (salida en tres columnas) para que los
artculos se ordenen en orden descendente.
2. Aplicar la hoja de estilo XSL a tiendecilla, pero ordenado por cantidad.(especificardata-type)
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
25/43
Asociar una hoja de estilo XSL a un documento
Debemos incluir, tras la declaracin XML, la siguiente instruccinde procesamiento:
Ejemplo
Programar ASP
4562001
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
26/43
Leer y obtener el valor de atributos en XSLT
En XSLT podemos filtrar o indicar qu instancias de un elemento queremosprocesar, tomando como criterio de seleccin el valor de los atributos que acompaan
a los elementos Para hacer esto, en un elemento xsl:value-of, podemos recuperar el valor de un
atributo mediante la expresin @nombreAtributo , por ejemplo:
ACTIVIDADES: Disear una hoja de estilo paratiendecilla.xml que presente los datos en una
tabla donde aparezcan el rticulo, la cantidad y el precio junto con la moneda de cada producto.
Deepak Chopra
El sendero del Mago
950-15-1727
Harmany Book... nos muestra cmo debemos ... Por medio de
historias como
/tr>
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
27/43
Elemento xsl:if
El elemento contiene una plantilla que se aplicarslo si la condicin especificada es verdadera.
SINTAXIS
OPERADORES XSL
Igualdad (=) =
Desiguldad () !=
Menor que () >
EJEMPLO
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
28/43
Elemento xsl:choose
El elemento se utiliza en conjuncin con y para expresar mltiplespruebas condicionales.
SINTAXIS
... Hacer algo...
...
... Hacer algo ....
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
29/43
Ejemplo de xsl:choose
EJEMPLO
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
30/43
Actividades
1. Aadir a tiendecilla.xml dos productos nuevos. Susprecios sern 100 y 350 respectivamente.
2. Disear una hoja de estilos xsl para que los artculos conprecio menores o iguales que 100 aparezcan en color
verde, los artculos con precios >100 y < 1000 decolor azul y el resto rojo.
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
31/43
RESUMEN ELEMENTOS XSLT (1)
xsl:apply-imports Invoca una regla de plantilla reemplazada.
xsl:apply-templates Dirige el procesador XSLT para que busque la plantilla adecuada que se debe aplicar, segn el tipoy el contexto del nodo seleccionado.
xsl:attribute Crea un nodo de atributo y lo asocia a un elemento resultante.
xsl:attribute-set Define un conjunto de atributos con nombre.
xsl:call-template Invoca una plantilla por nombre.xsl:choose Proporciona mltiples pruebas condicionales junto con los
elementos y .
xsl:comment Genera un comentario en el resultado.
xsl:copy Copia el nodo actual del origen al resultado.
xsl:copy-of Inserta subrboles y fragmentos del rbol de resultados en el rbol de resultados.
xsl:decimal-format Declara un formato-digital, que controla la interpretacin de un modelo de formato utilizado por
la funcin format-number.xsl:element Crea un elemento con el nombre especificado en el resultado.
xsl:fallback Llama al contenido de la plantilla que puede proporcionar un sustituto razonable alcomportamiento del nuevo elemento cuando se encuentre.
http://msdn.microsoft.com/es-es/library/ms256178(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256184(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256165(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256163(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256487(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256169(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256145(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256128(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256183(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256092(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256047(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256234(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256234(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256047(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256092(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256092(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256092(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256183(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256183(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256183(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256128(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256145(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256169(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256487(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256487(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256487(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256163(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256163(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256163(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256165(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256184(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256184(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256184(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256178(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256178(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256178(v=vs.80).aspx -
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
32/43
RESUMEN ELEMENTOS XSLT (2)xsl:for-each Aplica una plantilla repetidamente, aplicndola a su vez en cada nodo de un conjunto.
xsl:if Permite obtener fragmentos de plantillas condicionales simples.
xsl:import Importa otro archivo XSLT.
xsl:include Incluye otro archivo XSLT.
xsl:key Declara una clave para utilizar con la funcin key() en expresiones de lenguaje de rutaXML (XPath).
xsl:message Enva un mensaje de texto al bfer del mensaje o al cuadro de dilogo del mensaje.
xsl:namespace-alias Sustituye el prefijo relacionado con un espacio de nombres dado por otro prefijo.
xsl:number Inserta un nmero con formato en el rbol de resultados.
xsl:otherwise Proporciona mltiples pruebas condicionales junto con loselementos y .
xsl:output Especifica las opciones que se deben utilizar a la hora de serializar el rbol de resultados.
xsl:param Declara un parmetro con nombre que se puede utilizar dentro de unelemento o un elemento . Permite especificar un valor
predeterminado.xsl:preserve-space Conserva los espacios en blanco en un documento.
xsl:processing-instruction Genera una instruccin de proceso en el resultado.
http://msdn.microsoft.com/es-es/library/ms256166(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256209(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256126(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256094(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256203(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256441(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256448(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256084(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256147(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256187(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256096(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256144(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256461(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256461(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256461(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256461(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256144(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256144(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256144(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256096(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256187(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256147(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256084(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256448(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256448(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256448(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256441(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256203(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256094(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256126(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256209(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256166(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256166(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256166(v=vs.80).aspx -
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
33/43
RESUMEN ELEMENTOS XSLT (3)msxsl:script* Define variables y funciones globales para extensiones de secuencias de comandos.
xsl:sort Especifica los criterios de ordenacin para las listas de nodos seleccionadas por o .
xsl:strip-space Elimina espacios en blanco en un documento.
xsl:stylesheet Especifica el elemento de documento en un archivo XSLT. El elemento de documento contieneotros elementos XSLT.
xsl:template Define una plantilla reutilizable para generar los resultados deseados para los nodos de un tipoy contexto en particular.
xsl:text Genera texto en el resultado.
xsl:transform Lleva a cabo la misma funcin que .
xsl:value-of Inserta el valor del nodo seleccionado como texto.
xsl:variable Especifica un valor enlazado de una expresin.
xsl:when Proporciona mltiples pruebas condicionales junto con loselementos y .
xsl:with-param Pasa un parmetro a una plantilla.
http://msdn.microsoft.com/es-es/library/ms256042(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256196(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256473(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256204(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256110(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256107(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256040(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256181(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256447(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256164(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256091(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256091(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256091(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256091(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256164(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256447(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256181(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256181(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256181(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256040(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256107(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256110(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256204(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256473(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256473(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256473(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256196(v=vs.80).aspxhttp://msdn.microsoft.com/es-es/library/ms256042(v=vs.80).aspx -
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
34/43
Resumen de funciones XPATH Existe una gran cantidad de funciones que se pueden usar en
las expresiones XPATH
Tipos: Funciones de nodo name(), node(), text() Funciones de posicinposition(), last(), count(), Funciones numricas number(), sum(), Funciones booleanasboolean(), not(), true(), false() Funcones de cadenastring(), string-length(), contains(),
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
35/43
Uso de XSLT en Dreamwaver
Dreamweaver proporciona mtodos para crear pginas XSLT que admitantransformaciones XSL en el lado del servidor y en el lado del cliente
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
36/43
Crear una pgina XSL Se pueden crear pginas XSL o fragmentos (sin html) que
permitan mostrar datos XML en pginas Web.Para crear una pgina XSL:1. Configure un sitio de Dreamweaver.
2. Seleccione Archivo > Nuevo.
3. En la ficha General del cuadro de dilogo Nuevo documento, seleccione Pgina bsicaen la columna Categora y, despus, realice una de las siguientes opciones:
1. Seleccione XSLT (pgina completa) en la columna Pgina bsica para crear unapgina XSLT completa.
2. Seleccione XSLT (fragmento) en la columna Pgina bsica para crear un fragmentode XSLT.
4. Haga clic en Crear. Aparece el cuadro de dilogo Buscar origen XML para adjuntar unafuente de datos XML.
5. Seleccione Adjuntar un archivo local en mi equipo o en la red de rea local
6. Guarde la nueva pgina (Archivo > Guardar) con la extensin .xsl o .xslt (.xsles la extensin predeterminada).
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
37/43
Visualizacin de datos XML en pginas XSL
Para mostrar los datos XML:
1. Abra una pgina XSL con una fuente de datos XMLadjunta.
2. (Opcional) Seleccione Insertar > Tabla para aadir unatabla a la pgina.
3. En la mayora de los casos, conviene utilizar el objeto
XSLT Repetir regin para mostrar elementos XMLrepetidos en una pgina. Si ste fuera el caso, puederesultar conveniente crear una tabla de una sola fila conuna o varias columnas, o bien una tabla de dos filas sidesea incluir un encabezado de tabla.
4. En el panel Vinculaciones, seleccione un elemento XMLy arrstrelo hasta el lugar de la pgina en el que deseainsertar los datos.
5. Obtenga una vista previa de su trabajo en un navegador(Archivo > Vista previa en el navegador)
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
38/43
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
39/43
Actividades Utilizando Dreamwaver crear un documento XSL para
tiendecilla.xml que genere un documento HTML dondeaparezca en una tabla todos los producto de la mismaindicando el cdigo, artculo, marca y modelo, ordenados
por marca. Aadir una hoja de estilo CSS para que dicho documento
HTML presente la mejor apariencia.
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
40/43
Conversin de pginas HTML en pginas XSLT
Abra la pgina HTML que desea convertir. Seleccione Archivo > Convertir > XSLT 1.0.
Se abre una copia de la pgina en la ventana de documento conextensin xsl
Una vez convertida podemos vincular un documento xml:Para ello seleccionar Ventana/vinculaciones
Ya podemos aadir datos xml a nuestra pgina XSL
Actividad: Crear una pgina html, convertirla en xsl y mostrar datos detiendecilla.xml en la misma mediante una tabla.
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
41/43
Actividad I: xml-xsl-css
Crear un fichero XML que almacene datos de un catlogo de mviles. Debe almacenar los siguientes datos:
Marca Modelo. Como atributo tendr si es 3G o 4G Caractersticas (sistema operativo, dimensiones, conectividad, memoria interna, procesador) Imagen del mvil si es posible (nombre de un fichero .gif . El fichero debe estar almacenado en
mismo directorio o carpeta que el fichero XML Precio Comentarios
Debe almacenar al menos 10 mviles
Crear un documento XSL llamado movil1.xsl que muestre una tabla con todos los datosincluso la imagen
Crear un documento XSL llamado movil2.xsl que muestre una tabla con la Marca,
modelo y precio resaltando con color verde los modelos con 3G y en rojo los modeloscon 4G Crear un documento XSL llamado movil3.xsl junto con una hoja de estilos movil.css que
muestre una tabla slo aquellos mviles con sistema operativo Android.
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
42/43
Actividad II: xml-xsl-css
Crear un fichero XML que almacene datos de un diccionario bilinge inglsespaol.
Debe almacenar los siguientes datos: Palabra con atributo indicando el tipo (sustantivo, adjetivo, verbo, adverbio, etc) Transcripcin fontica Traduccin1 Traduccin2 Imagen de referencia si es posible (nombre de un fichero .gif . El fichero debe estar
almacenado en mismo directorio o carpeta que el fichero XML Ejemplo en frase en ingls
Debe almacenar al menos 15 palabras
Crear un documento XSL llamado diccionario1.xsl que muestre una tabla con
todos los datos incluso la imagen Crear un documento XSL llamado verbos.xsl que muestre una tabla con la
palabra en ingls y su traduccin que sea verbo Crear un documento XSL llamado sustantivos.xsl junto con una hoja de estilos
sustativos.css que muestre una tabla con la palabra en ingls y su traduccin quesea sustantivo
-
8/12/2019 UnidadDidctica7.1_XSLT-curso2014-15
43/43
Unidad 7
7.1 XSLT y XPATH
Fin de la presentacin
Gracias!