Universidad ORT Uruguay Facultad de Ingeniería Sindicación de Contenidos Web - RSS Feeds Artículo Técnico Entregado como requisito para la obtención del título de Licenciado en Análisis de Sistemas de Información Ricardo Leite - 137495 Profesor: Julio Fernández 2008 Abstract La Sindicación de Contenidos por medio de canales RSS es un medio para distribuir contenidos en la Web que brinda al usuario la posibilidad de personalizar los contenidos que desea acceder. RSS es el acrónimo de RDF Site Summary, Rich Site Summary, Really Simple Sindication pero también se lo utiliza para nombrar el formato Atom. Este artículo aborda una serie de aspectos acerca de la Sindicación de Contenidos y los canales RSS. Primero se realiza una introducción a la Sindicación de Contenidos, su evolución histórica pasando por todos los formatos conocidos hasta llegar a los formatos utilizados actualmente, luego se describe la estructura básica de las versiones RSS 1.0, 2.0 y Atom 1.0. Finalmente, se presenta una breve reseña respecto a herramientas que permiten realizar la lectura de los feeds RSS y ejemplos de algunos sitios que permiten realizar búsquedas avanzadas para la localización de feeds de interés. 1 Índice 1. INTRODUCCIÓN .................................................................................................................. 3 2. SINDICACIÓN DE CONTENIDOS WEB .............................................................................. 3 3. HISTORIA DE LA SINDICACIÓN DE CONTENIDOS WEB ................................................ 5 4. ARQUITECTURA RSS ......................................................................................................... 6 4.1. 4.2. 4.3. 4.4. 5. RSS 2.0 - REALLY SIMPLE SYNDICATION ........................................................................ 7 RSS 1.0 - RDF SITE SUMMARY ..................................................................................... 9 ATOM 1.0..................................................................................................................... 12 FEED VALIDATORS........................................................................................................ 14 FUNCIONAMIENTO BÁSICO DE LA TECNOLOGÍA RSS................................................ 14 5.5. 5.6. ¿COMO INDICAR LA EXISTENCIA DE FEEDS?................................................................... 14 DISTINTAS FORMAS DE ACCEDER A FEEDS RSS............................................................. 14 6. CONCLUSIÓN .................................................................................................................... 16 7. REFERENCIAS .................................................................................................................. 17 2 1. Introducción El aumento de información disponible en sitios Web es un problema por la dificultad de mantenerse actualizado debido al volumen de nueva información generada diariamente. En ese escenario surgen servicios capaces de notificar automáticamente a los usuarios sobre nuevos contenidos y actualizaciones de sitios previamente seleccionados. Así surge la Sindicación de Contenidos y la tecnología RSS (acrónimo de RDF1 Site Summary, Rich Site Summary, Really Simple Sindication). El acrónimo RSS también se usa para denominar el formato Atom. Ésta tecnología permite a los usuarios recibir notificaciones de actualizaciones sin acceder a los sitios, facilitando así la selección de información relevante por parte del usuario. En este artículo trataremos conceptos básicos de la Sindicación de Contenidos Web; luego se presenta la evolución histórica de la Sindicación de Contenidos y la tecnología RSS. Profundizaremos en la arquitectura de los distintos formatos de sindicación RSS utilizados actualmente (RSS 1.0, RSS 2.0 y Atom 1.0) enfocado a la utilización de los elementos básicos para la construcción de un feed RSS. Por último veremos el funcionamiento de la tecnología con herramientas que permiten realizar la lectura y búsqueda de nuevos feeds. Con esto se busca proporcionar al lector un conocimiento básico de la tecnología para que logre incursionar en la creación de feeds RSS. No se cubrirá en este artículo la tecnología Podcasting que es un nuevo formato de Sindicación de Contenidos multimedia dentro de un archivo RSS. Para mayor información se podrá consultar los siguientes autores: Holzner (2006) y Johnson (2006). 2. Sindicación de Contenidos Web Para Richards (2006) la Sindicación de Contenidos Web o Content Syndication ha estado disponible desde hace varios años pero nunca fue tan utilizada como actualmente. Según Holzner (2006) “es un proceso por el cual un productor o distribuidor de contenidos proporciona información en formato digital a un suscriptor o una red de suscriptores”. Por lo tanto la Sindicación de Contenidos permite a un 1 Resource Description Framework (RDF) es un lenguaje para representar información acerca de recursos en la World Wide Web. Es especialmente destinado a la representación de metadatos sobre recursos Web. (W3C Consortium, 2004) 3 sitio informar a los interesados respecto a sus actualizaciones por medio de titulares y una breve descripción del contenido, logrando así personalizar los contenidos que ofrecen las publicaciones electrónicas, portales y sitios, brindando un valor agregado respecto a los mecanismos tradicionales de distribución de contenido electrónico. (Powers, 2005) Holzner (2006) señala que el proceso de Sindicación de Contenidos se realiza mediante distintos formatos, donde se tratarán todos como RSS, término que es un acrónimo de al menos tres frases diferentes, pero la más común es Really Simple Syndication. El formato RSS según Powers (2005) “es un conjunto de especificaciones para la distribución de contenidos Web, que facilitan el proceso de consulta y distribución de información proveniente de diversas fuentes sujetas a cambios o actualizaciones periódicas”. Para Hammersley (2003) una de las ventajas de la tecnología RSS es su simplicidad, ya que es un archivo de texto plano con un formato basado en Extensible Markup Language (de aquí en más XML2). Este archivo también puede ser denominado feed, por ser alimentado constantemente a medida que se realizan las actualizaciones. Según Yee (2008) la popularidad alcanzada por la tecnología RSS se debe a la agilidad ofrecida por este formato para la lectura de nuevos contenidos, debido a que no es necesario acceder a los sitios donde la información ha sido publicada originalmente. De hecho, la principal característica del patrón RSS es permitirle al lector de un determinado sitio realizar el seguimiento de las actualizaciones sin necesidad de acceder al sitio. La lectura de archivos RSS es realizada por programas que se denominan feed readers o feed agreggators; mediante estos el usuario realiza la suscripción a los canales. Estos programas se encargan de verificar si el canal dispone de un contenido nuevo desde la última verificación y de ser así recupera ese contenido y lo presenta al usuario. (Pilgrim, 2002) 2 XML es un metalenguaje extensible de etiquetas desarrollado por la W3C. Es una simplificación y adaptación del SGML y permite definir la gramática de lenguajes específicos. (W3C Consortium, 2006) 4 3. Historia de la Sindicación de Contenidos Web Antes de RSS existieron otros formatos que apoyaron la Sindicación de Contenidos. Estos proyectos reunían contenidos variados y dispersos en la Web por medio de una tecnología denominada push. La idea de la tecnología push era empujar informaciones seleccionadas por los usuarios de los servicios en vez de esperar que estos visitaran los sitios para tirar (pull) de los contenidos que deseaban. (Johnson, 2006) Conociendo la historia del desarrollo de los distintos formatos de Sindicación de Contenidos Web comprendemos mejor la razón por los diferentes significados del acrónimo RSS. Para profundizar sobre la historia de la Sindicación de Contenidos y la evolución de la tecnología RSS consultar los siguientes autores: Hammersley (2005), Hammersley (2003), Wittenbrink (2005), Holzner (2006) y RSS Advisory Board (2007a). En la tabla 1 se muestra la evolución de la Sindicación de Contenidos Web. Formato Fecha Autor Especificación MCF (Meta Content Format) 1995 R. Guha/Apple (Guha, 1995) CDF (Channel Definition Format) Marzo 1997 Ellerman/Microsoft (Ellerman, 1997) MCF (Meta Content Format) Junio 1997 Guha & Bray/Netscape (Guha & Bray, 1997) Diciembre 1997 D. Winer/Userland (Winer, 1997) RSS 0.90 Marzo 1999 R. Guha/Netscape (Guha, 1999) Scripting News 2.0b1 Junio 1999 D. Winer/Userland (Winer, 1999) RSS 0.91 (Netscape) Julio 1999 D. Libby/Userland (Libby, 1999) RSS 0.91 (Userland) Abril 2000 D. Winer/Userland (Winer, 2000) RSS 1.0 Agosto 2000 RSS-DEV Working Group (RSS-DEV, 2008) RSS 0.92 Diciembre 2000 D. Winer/Userland (Winer, 2000) RSS 2.0 Setiembre 2002 D. Winer (Winer, 2003) Atom 1.0 Diciembre 2005 M. Nottingham, R. Sayre et al. RSS Advisory Board (Nottingham & Sayre, 2005) (RSS Advisory Board, 2007b) Scripting News RSS 2.0.10 Octubre 2007 Tabla 1 - Principales formatos de la Sindicación de Contenidos Web. 5 La figura 1 muestra por medio de un esquema de grafos la evolución y los distintos caminos tomados por los formatos RSS y Atom. En ella podemos ver las dos corrientes RSS (D. Winner y RSS-DEV Group) creadas a partir del formato RSS 0.91 de Netscape. Figura 1 - Historia del desarrollo de feeds RSS y Atom (Johnson, 2006). 4. Arquitectura RSS Para Yee (2008) “los feeds son documentos utilizados para transferir las actualizaciones de los contenidos digitales a los usuarios”. Aunque se pueden encontrar feeds en diferentes formatos se analizarán en profundidad tres formatos que son los más utilizados actualmente. Estos son RSS 2.0, RSS 1.0 y Atom 1.0. La arquitectura de un feed RSS sigue la especificación XML y su vocabulario está compuesto por elementos, subelementos, atributos, etc. (W3C Consortium, 2006) Para Kyrnin (2008) el modelo básico en cualquier versión RSS tiene las siguientes características. 1- Se trata de un documento basado en XML, por lo consiguiente debe ser wellformated3. 2- El primer elemento de un documento RSS es el tag que indica el comienzo de un archivo RSS. 3 Well-Formated son aquellos documentos XML que cumplen con todas las definiciones básicas de formato y pueden analizarse correctamente por cualquier analizador sintáctico (parser) que cumpla con la norma. (W3C Consortium, 2006) 6 3- El siguiente elemento es el canal, que contiene los metadatos que lo describen, un título, una breve descripción y la URL del recurso descripto, normalmente la dirección del sitio o la dirección del feed RSS. 4- Por último, el elemento que especifica cada artículo o contenido del documento RSS. Este elemento al igual que el canal contiene metadatos que lo describen. 4.1. RSS 2.0 - Really Simple Syndication La especificación de la versión RSS 2.0 proporciona una descripción detallada de cada uno de los elementos permitidos en un feed (RSS Advisory Board, 2007b). En la figura 2 se pueden observar los elementos permitidos para la declaración de un documento RSS 2.0 válido. 7 Figura 2 - Elementos XML que componen la versión RSS 2.0 (Johnson, 2006). Ejemplo de documento RSS 2.0, haciendo uso únicamente de elementos básicos (los números hacen referencia a la tabla 2). <?xml version=”1.0”?> <rss version="2.0"> <channel> <title>Example Channel</title> <link>http://example.com/</link> <description>My example channel</description> <item> <title>News for September the Second</title> <link>http://example.com/2002/09/01</link> <description>other things happened today</description> </item> <item> <title>News for September the First</title> <link>http://example.com/2002/09/02</link> 8 <description>other things happened today</description> </item> </channel> </rss> Cuadro 1 - Ejemplo de documento RSS 2.0 - Adaptado de Nottingham (2005). En la tabla 2 se explican los elementos más importantes de un documento RSS 2.0. (RSS Advisory Board, 2007b) ELEMENTOS BÁSICOS RSS 2.0 <rss version =”2.0” > Este tag indica el comienzo de un documento RSS versión 2.0. <channel> El elemento canal contiene metadatos que describen el canal en sí. Debe existir un único elemento <channel> en el documento. <title> Descripción del titulo del feed. <link> URL de la página a la que corresponde el canal. <description> Frase o resumen que describe el canal. <item> Representa el contenido del feed. Un canal puede contener n elementos item. <title> Título que describe al item. <link> URL al contenido del item. <description> Descripción del ítem. Tabla 2 - Elementos básicos RSS 2.0 - Adaptado de RSS Advisory Board (2007b). 4.2. RSS 1.0 - RDF Site Summary RSS 1.0 utiliza el formato RDF para especificar la información de los feeds y sus metadatos (W3C Consortium, 2004). Cada documento RSS 1.0 se reconoce como un documento RDF válido. La especificación proporciona una descripción detallada de cada uno de los elementos permitidos en un feed RSS 1.0 (Ayers & Watt, 2005; RSS-DEV, 2008). En la figura 3 podemos ver los elementos permitidos para la declaración de un documento RSS 1.0. 9 Figura 3 - Elementos XML que componen la versión RSS 1.0 (Johnson, 2006). Ejemplo de documento RSS 1.0, haciendo uso únicamente de elementos básicos (los números hacen referencia a la tabla 3). <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" > <channel rdf:about="http://example.com/news.rss"> <title>Example Channel</title> <link>http://example.com/</link> <description>My example channel</description> <items> <rdf:Seq> <rdf:li resource="http://example.com/2002/09/01/"/> <rdf:li resource="http://example.com/2002/09/02/"/> </rdf:Seq> </items> </channel> <item rdf:about="http://example.com/2002/09/01/"> <title>News for September the First</title> <link>http://example.com/2002/09/01/</link> <description>other things happened today</description> </item> <item rdf:about="http://example.com/2002/09/02/"> <title>News for September the Second</title> <link>http://example.com/2002/09/02/</link> 10 <description>other things happened today</description> </item> </rdf:RDF> Cuadro 2 - Ejemplo de documento RSS 1.0 - Adaptado de Nottingham (2005). Para Johnson (2006) el formato RSS 1.0 es más complejo que la versión RSS 2.0, pero también más flexible y extendible. Como podemos ver en el cuadro 2 la versión RSS 1.0 tiene una sintaxis diferente en relación a la versión RSS 2.0 (presentada previamente en el cuadro 1). En la tabla 3 se realiza la explicación de elementos requeridos para un documento RSS 1.0 válido. ELEMENTOS BÁSICOS RSS 1.0 <rdf: RDF > La apertura del tag RDF asocia la etiqueta rdf: a la sintaxis del esquema RDF y establece el esquema RSS 1.0 como el espacio de nombre (namespace) por defecto. <channel rdf:about El elemento canal contiene metadatos que describen el =”recurso"> canal en sí. <title> Descripción del titulo del feed. <link> URL de la página a la que corresponde el canal. <description> Frase que describe el canal. <items> <item rdf:about ="{item_uri}"> Este elemento representa una lista de secuencias de ítems del feed representados por su URL. <rdf:Seq><rdf:li El elemento rdf:seq resource= (secuencia) contiene n elementos rdf:li que "{item_uri}" /> sirven para ordenar la secuencia de los elementos item. Este elemento representa el contenido del feed. Un canal puede contener n elementos item. <title> Título que describe al item. <link> URL al contenido del item. <description> Descripción del ítem. Tabla 3 - Elementos básicos RSS 1.0 - Adaptado de RSS-DEV (2008). 11 4.3. Atom 1.0 Según Yee (2008) el nombre Atom se aplica a dos estándares propuestos, el Atom Format Syndication y Atom Publication Protocol (AtomPub4). Atom es un documento basado en el formato XML que describe a los feeds. Los Atom feeds están compuestos por una serie de ítems conocidos como entries, cada uno con un conjunto de metadatos adjunto (Nottingham & Sayre, 2005). En la figura 4 se pueden observar los elementos que conforman el formato Atom 1.0. Figura 4 - Elementos XML que componen Atom 1.0 (Johnson, 2006). 4 AtomPub es una aplicación a nivel de protocolo para la publicación y edición de recursos de la Web usando HTTP y XML 1.0. (Gregorio & De Hora, 2007) 12 Ejemplo de documento Atom 1.0, haciendo uso únicamente de elementos básicos (los números hacen referencia a la tabla 4). <?xml version="1.0" encoding="utf-8"?> <feed xmlns="http://www.w3.org/2005/Atom"> <title>Example Feed</title> <link href="http://example.org/"/> <updated>2003-12-13T18:30:02Z</updated> <author> <name>John Doe</name> </author> <id>urn:uuid:60a76c80-d399-11d9-b93C-0003939e0af6</id> <entry> <title>Atom-Powered Robots Run Amok</title> <link href="http://example.org/2003/12/13/atom03"/> <id>urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa6a</id> <updated>2003-12-13T18:30:02Z</updated> <summary>Some text.</summary> </entry> </feed> Cuadro 3 - Ejemplo de documento Atom 1.0 - Adaptado de Nottingham (2005). Como podemos ver en el cuadro 3 existen diferencias en cuanto a la sintaxis del formato Atom 1.0 y las versiones RSS 1.0 y 2.0, pero se mantiene el mismo concepto para la utilización de los elementos (Johnson, 2006). En la tabla 4 se describen los elementos de un feed Atom 1.0. ELEMENTOS BÁSICOS ATOM 1.0 <feed xmlns= “namespace”> El elemento raíz de todo documento Atom 1.0 es el elemento feed y establece el esquema Atom 1.0 como el namespace por defecto. El elemento feed es el elemento que contiene los datos y metadatos. <title> Descripción del titulo del feed. <link> URL de la página a la que corresponde el canal. <updated> Indica la última vez que el feed fue actualizado. <author> Nombre de un autor del feed. <id> Identifica al feed utilizando un sistema único y permanente 5 Uniform Resource Identifiers (URI ). Un documento Atom no requiere un elemento feed para contener un elemento entry. Un elemento entry puede ser parte de un feed y también puede ser su propio documento. Independiente de ello el formato de los subelementos no varía. Un elemento entry es equivalente al elemento item analizado en la declaración de los formatos RSS 1.0 y 2.0. <title> Título de que describe la entrada. <entry> <link> URL de la entrada. 5 Uniform Resource Identifiers (URI) es una cadena corta de caracteres que identifica inequívocamente un recurso. (The Internet Society, 2005) 13 <id> <updated> <summary> Identifica al elemento entry utilizando un sistema único y permanente URI. Indica la última vez que la entrada fue actualizada. Descripción o resumen de la entrada. Tabla 4 - Elementos básicos Atom 1.0 - Adaptado de Nottingham & Sayre (2005). 4.4. Feed Validators Existen distintas herramientas que nos ayudan a corregir posibles errores en la especificación de nuestros feeds. Feed Validator es un servicio en línea que se utiliza para validar feeds. Es capaz de validar documentos RSS 0.9, 0.91, 0.92, 0.93, 0.94, 1.0, 1.1 y 2.0 mediante la especificación de la RSS Advisory Board. También se puede utilizar para validar Atom feeds (Ruby et al., 2007; W3C Consortium, 2007). 5. Funcionamiento Básico de la tecnología RSS 5.5. ¿Como indicar la existencia de Feeds? Para indicar que existen feeds RSS, se utiliza un icono de color naranja que contiene en su interior un círculo y dos líneas curvas de color blanco (como muestra la figura 5). Este icono demuestra que el sitio visitado cuenta con feeds para la subscripción. Figura 5 - Representación gráfica para indicar la existencia de Feeds. 5.6. Distintas formas de acceder a Feeds RSS Existen diferentes formas de acceder o subscribirse a canales RSS. Las podemos clasificar de la siguiente manera: 14 Feed Readers (Lectores): Los lectores son aplicaciones que se instalan en la máquina del usuario, permiten subscribirse a canales de contenidos proporcionando una interface intuitiva. Estas herramientas se encargan de chequear el canal en busca de nuevas actualizaciones para luego presentarlas al usuario en un formato amigable. (Ayers & Watt, 2005) Algunas herramientas son: • RSSReader (http://www.rssreader.com) • FeedReader (http://www.feedreader.com) • FeedDemon (http://www.newsgator.com/individuals/feeddemon) Feed Aggregators (Agregadores). Los agregadores son lectores que se utilizan desde la Web. Existen muchas herramientas en línea disponibles con diferentes funcionalidadades que proporcionan opciones similares a los lectores de contenido (Ayers & Watt, 2005). Para hacer uso de estas herramientas basta realizar una subscripción para acceder al servicio. Esto brinda la facilidad al usuario de acceder a sus feeds desde cualquier computadora que tenga una conexión a Internet. Algunos de los agregadores más utilizados son: • • • Google Reader (http://www.google.com/reader) Blog Lines (http://www.bloglines.com) Yahoo (http://my.yahoo.com) Navegadores: Las versiones recientes de los navegadores más utilizados (Internet Explorer 7.0 y Mozila Firefox 3.0) incluyen un sistema para suscripción de fuentes RSS. Teléfonos Móviles y PDA: Estos servicios permiten recibir feeds RSS en teléfonos móviles y PDA. Las empresas que brindan este servicio se encargan de convertir los archivos RSS a contenidos accesibles mediante la tecnología WAP6 (Holzner, 2006). Es el caso de la empresa (Odin Metatech, s.f.). Motores de Búsquedas para Feeds: De la misma manera que existen los buscadores de contenidos para la Web, podemos encontrar distintos sitios que sirven como motores de búsqueda para feeds RSS. (Holzner, 2006) Algunos motores de búsqueda para feeds son: 6 Wireless Application Protocol es un estándar internacional para aplicaciones que utilizan las comunicaciones inalámbricas, p.ej. acceso a servicios de Internet desde un teléfono móvil. 15 • • • • Syndic8 (http://www.syndic8.com) Feeds4All (http://www.feeds4all.com) Feed See (http://www.feedsee.com) RSS Feeds (http://www.rssfeeds.com) 6. Conclusión La tecnología RSS permite al usuario recibir información de distintos sitios y clasificarla rápidamente, logrando así procesar una mayor cantidad de información en un menor período de tiempo. La lectura de noticias fue el uso tradicional de los canales RSS, pero en este momento existen otras formas de utilizar los feeds. Actualmente por medio de los canales RSS no solo se pueden leer noticias, sino también aprender, compartir, seguir temas de interés y mucho más. Algunos de los usos más frecuentes son: • • • • Lectura de noticias: Médicas, internacionales, nacionales, negocios, etc. Entretenimientos: Programación de tv, video juegos, estrenos de películas. Seguimiento de Novedades tecnológicas. Actualizaciones de blogs de interés. 16 7. Referencias Ayers, D. & Watt, A. (2005). Beginning RSS and Atom Programming. : Wiley Publishing, Inc.. Ellerman, C. (1997). Channel Definition Format. Retrieved from http://www.w3.org/TR/NOTE-CDFsubmit.html. Guha, R. (1995). Meta Content Framework Specification. Retrieved from http://www.guha.com/mcf/mcf_spec.html. Guha, R. (1999). Netscape RSS 0.90 Specification. Retrieved from http://www.purplepages.ie/rss/netscape/rss0.90.html. Guha, R. & Bray, T. (1997). Meta Content Framework-XML Specification. Retrieved from http://www.w3.org/TR/NOTE-MCF-XML.html. Hammersley, B. (2003). Content Syndication with RSS. : O'Reilly & Associates, Inc.. Hammersley, B. (2005). Developing Feeds with RSS and Atom. : O'Reilly Media, Inc.. Holzner, S. (2006). Secrets of RSS. : Peachpit Press. Johnson, D. (2006). RSS and Atom in Action. : Manning Publications Co.. Kyrnin, J. (2008). What is RSS and how do you use it. Retrieved from http://webdesign.about.com/od/rss/a/what_is_rss.htm. Libby, D. (1999). Netscape RSS 0.91 Specification. Retrieved from http://www.purplepages.ie/rss/netscape/rss0.91.html. Nottingham, M. (2005). RSS Tutorial. Retrieved from http://www.mnot.net/rss/tutorial/. Nottingham, M. & Sayre, R. (2005). The Atom Syndication Format - RFC 4287. Retrieved from http://tools.ietf.org/html/rfc4287. Odin Metatech, I. (s.f.). Phone Feed. Retrieved from http://www.phonefeeds.com. 17 Pilgrim, M. (2002). What is RSS?. Retrieved from http://xml.com/pub/a/2002/12/18/dive-into-xml.html. Powers, S. (2005). What Are Syndication Feeds. : O’Reilly Media, Inc.. RSS Advisory Board (2007a). RSS Specification History. Retrieved from http://www.rssboard.org/rss-history. RSS Advisory Board (2007b). RSS 2.0.10 Specification. Retrieved from http://www.rssboard.org/rss-specification. RSS-DEV (2008). RDF Site Summary 1.0 Specification. Retrieved from http://web.resource.org/rss/1.0/spec. Richards, R. (2006). Pro PHP XML and Web Services. : Apress. Ruby, S., Pilgrim, M., Walton, J. & Ringnalda, P. (2007). Feed Validator. Retrieved from http://feedvalidator.org. W3C Consortium (2004). RDF Primer W3C Recommendation. Retrieved from http://www.w3.org/TR/REC-rdf-syntax/. W3C Consortium (2006). XML Specification. Retrieved from http://www.w3.org/TR/2006/REC-xml-20060816/. W3C Consortium (2007). W3C Feed Validation Service. Retrieved from http://validator.w3.org/feed. Winer, D. (1997). Scripting News Specification. Retrieved from http://www.scripting.com/davenet/1997/12/15/scriptingNewsInXML.html. Winer, D. (1999). Scripting News 2.0b1 Specification. Retrieved from http://my.userland.com/stories/storyReader$11. Winer, D. (2000). RSS 0.91 Userland Specification. Retrieved from http://backend.userland.com/rss091. Winer, D. (2003). RSS 2.0.1 Specification. Retrieved from http://cyber.law.harvard.edu/rss/rss.html. Wittenbrink, H. (2005). RSS and Atom: Understanding and Implementing Content Feeds and Syndication. : Packt Publishing. 18 Yee, R. (2008). Pro Web 2.0 Mashups: Remixing Data and Web Services. : Apress. 19