sindicación de contenidos (RSS)
1) Una bastante sencilla es suscribiendo la fuente con un agregador de noticias.
2) Otra, si compartimos aquella información insertada en otros lugares web, así, la persona encargada de recibir las noticias, actúa también como emisor. De
esta forma, existe un proceso al que denominamos redifusión web.
− Sigue un formato para los datos de tipo texto plano. Presenta bastante rapidez a la hora de transmitir los datos por lo que es bastante recomendable para los dispositivos móviles.
− Ofrece la posibilidad de poder filtrar información de diferentes sitios sin perder tiempo utilizando la agrupación.
- Este elemento puede contener uno o más elementos .
>?xml versión=”1.0” encoding=”utf-8”?>
>rss versión=”2.0”>
>channel>
>tittle>Hola mundo>/tittle>
>link>...>/link>
>description>...>/description>
>item>
...
>/item>
>/channel>
>/rss>1) >channel>
- Su función principal es describir la fuente RSS mediante tres elementos obligatorios, que son:
− >tittle>. Hace referencia al nombre del canal.
− >link>. Define el hipervínculo al canal.
− >description>. Se encarga de describir el contenido correspondiente al canal.
− Debe analizar la hoja de instrucciones pasando a convertirse en una estructura árbol.
− Debe procesar el documento XML y convertirlo en una estructura árbol.
− El procesador XSLT debe posicionarse en la raíz del documento XML
− Aquellos elementos que no formen parte del espacio de nombres (con prefijo xsl), se pasan a la cadena de salida sin que haya existido modificación alguna.
− El procesador XSLT solo puede llevar a cabo una única regla a cada nodo.
Una hoja de transformaciones debe ir compuesta por lo siguiente:
• Declaración del documento XML.
>?xml versión=”1.0?”>
• Elemento raíz. >xsl:stylesheet versión=”1.0” xmlns= “http://www.w3.org/1999/XSL/Transform” ... /xsl:stylesheet>
• Espacio de nombres. http://www.w3.org/1999/XSL/Transform, donde xsl corresponde al prefijo.
• Otra serie de elementos que denominamos de nivel superior que, es conveniente que aparezcan en la hoja de transformaciones, siempre como hijos de >xsl:stylesheet>.
− A continuación, vamos a ver una serie de casos en los que es conveniente hacer uso de diferentes trasformaciones especiales, como:
• Si tenemos una hoja de transformación sin plantillas (template), el contenido de texto del documento XML se va a enviar directamente a la salida, sin tener en cuenta los distintos valores de los atributos, ni los comentarios ni las instrucciones específicas de procesamiento. • Si la hoja de transformación solo tiene una plantilla, la asocia al nodo raíz del documento XML sin contenido alguno, es decir, no va a enviar nada a la salida. • Si tenemos una hoja de transformaciones, pero esta no tiene asociada ninguna plantilla al nodo raíz, aunque, sí cuenta con otras que pueden ir asociadas a otros elementos, se va a ir realizando un recorrido por el árbol del documento XML. De esta forma, puede enviar contenido textual a la salida y aplicar las reglas que se hayan definido en cuanto se localice el elemento con la plantilla asociada. • Si tenemos una hoja de transformaciones con alguna plantilla, se va a ir realizando un recorrido por el árbol del documento XML en el mismo orden en el que está escrito y, cuando encuentre una plantilla que coincida con el elemento que nos encontramos, se aplicará a la plantilla.
− Existen un grupo de instrucciones que nos van a permitir poder generar un gran número de salidas, entre los que destacamos:
1) xsl:stylesheet y xsl:transform
- Son unos elementos que podemos utilizar para poder definir el elemento raíz en la hoja de transformaciones.
• Atributos obligatorios
a) versión: determina la versión seleccionada XSLT del documento.
b) xmlns: hace referencia al espacio de nombres del documento XML.
• Atributos optativos principales
a) exclude-result-prefixes: lista los espacios de nombres separados por un espacio. Estos no se deben enviar a la salida.
____________________
2) xsl:output
− Es el elemento encargado de definir el formato del documento de salida. Este elemento corresponde a un nivel superior y tiene que aparecer como “hijo de”.
>xsl:stylesheet> o >xsl: transform>
• Atributos optativos principales
a) method: tiene como valor por defecto, XML y va a definir el formato de salida.
b) versión: determina la versión del formato de salida.
c) encoding: apunta al juego de caracteres de salida.
e) indent: determina si la salida está preparada conforme a la estructura jerárquica.
f) omit-xml-declaration: determina si la instrucción declarada para procesar el documento se puede omitir en la salida.
g) standalone: determina si es necesario añadir el atributo standalone a la instrucción que declara el tipo. Su valor asignado por defecto es, no. \_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_ 3) xsl:template − Es una de las instrucciones más importantes de las hojas de transformaciones, junto con >xsl:apply-templates>.− Puede representar una plantilla que dispone de una serie de acciones encargadas de realizar el patrón de una plantilla.
− Si aplicamos una plantilla a un nodo determinado, se va a aplicar solo a ese nodo, pero lo que hace es sustituir al nodo y a sus descendientes por el resultado que hemos obtenido de la aplicación de la plantilla. Este hecho nos va a eliminar toda la información de los descendientes.
• Atributos optativos principales
a) name: asigna un nombre a una plantilla.
b) match: señala el patrónXPath al que se le va a aplicar la plantilla.
c) priority: valor que oscila entre -9 y 9 (de menos a más prioridad) que le asignamos a las diferentes reglas de resolución de conflictos.
d) mode: diferencia entre dos plantillas con el mismo atributo match. \_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_ 4) xsl:apply-templates − Es otra de las funciones principales en el ámbito del lenguaje de las transformaciones XSLT. Si comprendemos su funcionamiento sin ningún tipo de problema, vamos a conseguir sacar el máximo rendimiento a la hora de trabajar con las distintas transformaciones.
• Atributos optativos principales
a) select: selecciona los nodos que se van a procesar.
b) mode: diferencia entre distintas plantillas que tengan el mismo atributo match.