La syndication de contenu
Le terme syndication vient de l'anglais. À l'origine, il désigne la vente de contenu télévisuel à plusieurs autres chaînes simultanément, une émission TV pouvant ainsi être relayée sur plusieurs networks. La syndication de contenu sur Internet pouvait à l'origine être définie comme le partage de contenu entre sites ou portails.
Mais le terme a ensuite été utilisé, peut-être à tort, pour recouvrir de nouvelles réalités :
- l'abonnement à des sites Web via un logiciel spécifique que l'on appelle agrégateur ;
- la mise à disposition du contenu d'un site sous une forme facilement compréhensible et indexable par des robots ou n'importe quelle autre application.
À défaut d'un terme meilleur, nous utiliserons celui de
syndication ainsi défini par
la spécification
RSS 1.0 : mise en ligne de données disponibles pour
récupération et retransmission, agrégation ou publication en
ligne
.
Aujourd'hui, en pratique, les principes de syndication conviennent en fait à tout type de contenu régulièrement mis à jour :
- fils d'information : actualité générale, weblogs, résultats sportifs ;
- fils de discussion : forums, mailing-lists, commentaires de weblogs ;
- petites annonces : offres d'emplois, annonces immobilières, enchères ;
- suivi / « tracking » : changements CVS, wikis, gestionnaires de bugs.
RSS
RSS est aujourd'hui le format de syndication le plus populaire. RSS est une application XML créée en 1999 par la société Netscape. Par la suite, la spécification a été la victime de mésententes et de divergences politiques. RSS n'est donc, du coup, pas une spécification à proprement parler, mais un ensemble de normes co-existantes pas forcément compatibles. Dans ce grand bazar, nous retiendrons :
- RSS 0.91 (Rich Site Summary) : une évolution mineure de la spécification originale de Netscape ;
- RSS 1.0 (RDF Site Summary) : une spécification basée sur RDF conçue par un groupe de développeurs indépendants dans l'esprit originel de ses concepteurs ;
- RSS 2.0 (Really Simple Syndication) : une spécification écrite par Dave Winer, le plus fervent acteur du monde de la syndication.
Dans un autre registre, on notera aussi le projet de spécification Atom qui est actuellement en cours de développement et de normalisation. Même si on ne peut juger des chances de succès de cette inititative, des poids lourds de l'industrie informatique ainsi que beaucoup de personnes y placent beaucoup d'espoir.
Création d'un fil RSS simple avec RSS 0.91
- En-tête XML et DTD
-
<?xml version="1.0" encoding="iso-8859-1"?> <!DOCTYPE rss PUBLIC "-//Netscape Communications//DTD RSS 0.91//EN" "http://my.netscape.com/publish/formats/rss-0.91.dtd">
- Racine XML
-
<rss version="0.91">
- Ouverture du canal
-
<channel>
- Informations sur le canal
-
<title>Openweb.eu.org</title> <link>http://www.openweb.eu.org/</link> <description>Description du site OpenWeb</description> <language>fr</language>
Ensuite, le cœur du fil RSS se compose d'une
suite d'éléments item
correspondant chacun à un article
(pour le cas d'un site de contenu). Pour un fil RSS
minimal, l'élément item
contient 3
sous-éléments :
-
title
: le titre de l'élément ; -
link
: un lien vers l'élément ou son URL ; -
description
: une description de moins de 500 caractères. Pour un article, son chapeau, un résumé ou un extrait.
Ainsi, si l'on créait le fil RSS des articles du site OpenWeb (à l'heure où cet article est écrit), cela donnerait :
<item> <title>Le PNG face au GIF</title> <link>http://openweb.eu.org/articles/png_vs_gif/</link> <description>Qui est donc ce remplaçant du GIF, datant de 1996 et méconnu de la plupart des graphistes, amateurs comme professionnels ?</description> </item> <item> <title>Passer aux feuilles de style</title> <link>http://openweb.eu.org/articles/initiation_css/</link> <description>Vous utilisiez les balises HTML de présentation ? Pour tirer parti des avantages offerts par les standards, découvrez le vocabulaire élémentaire des feuilles de style.</description> </item> <item> <title>Les bénéfices des standards par un graphiste Web</title> <link>http://openweb.eu.org/articles/interview_ned_baldessin/</link> <description>Ned Baldessin, professionnel du Web, nous présente le point de vue des graphistes sur les différentes technologies qui forment les standards de l'Internet.</description> </item>
Pour les besoins de l'exemple nous n'avons mis que 3 articles, mais la spécification RSS 0.91 précise que l'on peut en mettre jusqu'à 15.
Enfin, pour clore notre fil RSS, il suffit de fermer les balises que nous avons ouvertes au tout début :
</channel> </rss>
Le fichier que nous avons créé est disponible ici : exemple_RSS_091.xml.
Notes
Comme la plupart des fichiers sur le Web, l'extension du fichier et
son nom n'ont aucune importance. Un fil RSS peut aussi
bien s'appeler rss.php
, index.xml
que feed.rss
.
Le type MIME envoyé est par contre beaucoup plus
important
(qu'est-ce
qu'un type/mime ?). En tant que fichier XML, il
peut être envoyé en tant que text/xml
mais l'idéal est de
l'envoyer avec le type MIME
application/rss+xml
.
Aussi, une bonne pratique consiste à indiquer la présence d'un fil
RSS pour un site en mentionnant son
URLdans la section head
HTML de la page.
<link rel="alternate" type="application/rss+xml" title="RSS" href="http://example.com/feed.xml" />
Validité
Pour être considéré comme valide, le fil RSS doit tout d'abord être bien formé XML. La méthode la plus facile pour tester cela consiste à l'ouvrir dans Mozilla ou dans Internet Explorer qui vous mentionneront les éventuelles erreurs.
Ensuite, il faut tester sa validité RSS. L'outil recommandé pour cela est le Feed Validator disponible à l'adresse http://feedvalidator.org/.
Conclusion
Dans cet article, nous ne sommes volontairement pas allés très loin et n'avons pas non plus utilisé toutes les possibilités de la spécification RSS 0.91. Il s'agissait juste de poser les bases de la syndication de contenu sur Internet. Pour inclure plus de méta-données et faire quelque chose de plus complet, nous utiliserons la spécification RSS 1.0 dans un prochain article.
Vos commentaires
Suivre les commentaires : |