RSS - Really Simple Syndication

Construire et utiliser un fil RSS

Sommaire Tutoriel RSS avec exemples
  • Exemple: le fichier complet
  • Comment indiquer la présence d'un flux RSS au navigateur
  • Spécifications et outils
  • Qu'est-ce que RSS?

    C'est un format d'échange de données, défini en XML version 1.0. Vous pouvez délivrer des données en les intégrant dans ce format, et l'on peut recueillir des données de sources multiples dans ce format. On désigne les sources par fil ou flux RSS.
    Les navigateurs récents peuvent directement lire des fichiers RSS, mais on peut aussi utiliser un logiciel spécialisé que l'on appelle lecteur RSS ou aggrégateur.

    Histoire

    Créé par Netscape an 1999. La première version est la 0.90. Elle est suivie par la 0.91 version, améliorée avec la contribution de la société Userland en 2000.
    Apparaît en 2000 une version 1.0 définie O'Reilly, par la suite maintenue par le groupe RSS-DEV, basée sur RDF et nommée RDF Site Summary.
    RSS 2.0 a été défini par Dave Winer (qui travaillait auparavant chez Userland) à l'université Harvard en 2002.
    Cette page se base sur la spécification Really Simple Syndication 2.01 de Harvard.

    Pourquoi utiliser RSS?

    Pour recueillir l'actualité ou les informations fournies par des sites web, sous une forme exploitable par des ordinateurs. Pour l'afficher sur un site ou simplement la lire si vous êtes utilisateur final.
    Et pour l'éditeur à l'origine du contenu, cela permet de faire connaître les nouvelles sur son site.

    RSS, comment cela fonctionne?

    Le système RSS de publication d'articles ou d'informations sur le web est très simple:

    1. De simples pages web, que l'on veut voir afficher sur d'autres sites.
      Cet ensemble de pages provenant d'un site (ou de plusieurs) s'appelle un flux RSS.
    2. Un fichier XML qui définit le flux RSS. Ce fichier contient pour chacune des pages en question l'adresse (URL) un titre et un résumé.
    3. Soit une personne qui veut lire ce flux sur son poste. Elle utilise son navigateur ou ajoute simplement le fichier RSS sur un lecteur de flux, ou aggrégateur.
    4. Soit un autre site web qui veut afficher ce flux. Pour cela il lui faut télécharger le fichier RSS, extraire l'addresse des pages, le titre et le résumé pour les afficher. Cela peut être accompli par un script en PHP. Quand on affiche la page du site client, le script est exécuté, il récupère le fichier RSS sur le site éditeur et il construit sur la page, une liste à partir des titres, descriptions et liens extraits du fichier RSS.
    5. L'internaute en cliquant sur les liens affichés se trouve redirigé sur les pages du site éditeur.

    Structure d'un document RSS

    C'est un fichier XML.
    Le conteneur global est une balise "RSS" pour le format 2.0.
    Elle contient au moins un canal, désignant un distributeur qui fournit de l'information, et qui est un site web.
    Ce canal procure un certain nombre d'articles ou d'élément d'information de diverses sortes. Ils correspondent à des pages web, venant de sites quelconques (donc pas forcément le site du canal).

    Comment utiliser RSS?

    1 - Utilisation sur le bureau

    Les navigateur Internet Explorer 7 et Firefox notamment permettent d'afficher les flux RSS. On peut aussi installer un logiciel lecteur RSS (aggrégateur) fonctionnant sous son système d'exploitation (Windows, Linux, Mac OS). Voir dans la section ressources. Noter qu'il en existe un dont l'interface est faite en XUL.
    L'accès au contenu RSS dépend du logiciel, cela peut consister simplement à ajouter une source avec le bouton "add", elle augmentera une liste.
    Le fournisseur du contenu peut moduler la façon dont il sera utilisé par les lecteurs.

    2 - Utilisation sur un site web

    On affiche sur une page un flux RSS, donc une liste de titres. Cliquer sur un titre donne accès à une page web sur un autre site. Les titres sont mis à jour automatiquement.
    Pour que l'information soit mise à jour, il faut un script qui charge le fichier du flux sur le site éditeur, extraie les adresses des pages, et affiche la liste. Des adresses sont données en ressources.

    Comment publier le contenu de son site dans un flux RSS?

    Il y a plusieurs moyens de générer un flux RSS.

    Pour faire connaître l'existence d'un flux RSS, une balise de lien est utilisée: ou

    <a type="application/rss+xml"
       href="http://www.xul.fr/rss.xml">Flux RSS de cette page
    </a> 

    Les flux au format Atom utilisent la valeur: "application/atom+xml".
    Remplacez xul.fr par le nom de domaine de votre site.

    Vocabulaire

    Principales balises RSS

    rss. Le conteneur global.
    channel. Un canal. Il contient plusieurs balises descriptives, et une série de balises "item", les informations.

    <rss version="2.0">
    <channel>
    ...
    </channel>
    </rss>

    Les balises descriptives obligatoires du canal

    <rss version="2.0">
    <channel>
        <title>XUL</title>
        <link>http://www.xul.fr</link>
        <description></description>
        <item>
        ...
        </item>
    </channel>
    </rss>

    Balises optionnelles pour le canal

    Les articles du canal

    Chaque balise item correspondant à une information contient les balises suivantes:

    <item>
      <title>XUL news</title>
      <link>http://www.xul.fr/index.php</link>
      <description>...texte quelconque...</description>
    </item>  

    Plus quelques indications optionnelles pour l'article

    Créer votre propre flux RSS, pas à pas

    Au départ un simple fichier de texte, créé avec un éditeur quelconque. Un éditeur XML étant préférable. (Voir la page "logiciels"). On l'appelera dans cet exemple: "flux.xml".
    La structure générale du fichier sera la suivante:

    <?xml version="1.0" ?>
    <rss version="2.0">
    <channel>
    ...
    </channel>
    </rss> 

    1) Définir le canal dans la balise channel

    Ce sera le même pour tous vos fichiers RSS. Il doit comporter ces balises:
    - title: le titre de votre site, le même que dans la balise title sur la page d'accueil.
    - link: l'adresse de votre site: ex: http://www.xul.fr
    - description: description de votre site en 200 caractères, ce peut être la même description que dans la méta-tag de la page d'accueil

    <channel>
      <title>XUL et XML</title>
      <link>http://www.xul.fr/</link>
      <description>L'interface graphique XML  etc.</description>
    </channel>         

    2) Ajouter une image

    C'est facultatif. Créer une petite image (88x31 par exemple) au format usuel (gif, jpg, png) et placez la dans le même répertoire que ce fichier RSS.
    La balise image est un élément de la balise channel
    - url est l'adresse de l'image elle-même.
    - link est l'adresse de la page affichée quand on clique sur l'image.

    <channel>
        <title> </title>
        <link> </link>
        <image>
            <url>http:///www.xul.fr/xul.gif</url>
            <link>http:///www.xul.fr/index.php</link>
        </image>
     </channel> 

    3) Ajouter un article

    Un article n'est rien d'autre qu'une page Web. A partir de là, on crée une balise item contenue dans channel, avec les éléments suivants:
    - title: le titre de l'article, donc de la page.
    - link: l'adresse de la page.
    - description: résumé de l'article en 200 caractères environ.

    <item>
        <title>Nouvelle du jour</title>
        <link>http://www.xul.fr/xml-rss.html</link>
        <description>Tout savoir sur RSS</description>
    </item> 

    4) Ajouter d'autres articles si besoin

    Ajouter d'autres balises item à l'intérieur du canal.

    5) Uploader le fichier sur le site

    Placer le fichier flux.XML sur votre site, parmi les pages web.

    6) Valider le fichier

    Vous pouvez utiliser le valideur indiqué dans les liens en fin de page.

    7) Rendre le flux accessible

    Pour cela il faut placer un bouton RSS sur la page d'accueil. En cliquant sur le bouton on doit afficher le fichier précédemment créé. ou

    <a href="http://www.xul.fr/rss-fr.xml">
      <img  src="rss.gif">
    </a>

    Si l'image ne s'affiche pas, utiliser une URL complète comme http://www.xul.fr/rss.gif.

    8) Mettre à jour le flux

    Pour fournir de nouveaux articles, il suffit d'ajouter des items, et de supprimer les plus anciens lorsque la taille du fichier devient trop imposante.

    Exemple: le fichier complet

    <?xml version="1.0" ?>
    <rss version="2.0">
    <channel>
      <title>Ajax et XML</title>
      <link>http://www.xul.fr/</link>
      <description>L'interface graphique XML etc...</description>
      <image>
      <url>http:///www.xul.fr/xul-icon.gif</url>
      <link>http:///www.xul.fr/index.php</link>
       </image>
       <item>
          <title>Nouvelle  du jour</title>
          <link>http://www.xul.fr/xml-rss.html</link> 
          <description>Tout  savoir sur RSS</description>
       </item>
       <item>
         <title>Nouvelle  du lendemain</title>
        <link>http://www.xul.fr/xml-rdf.html</link> 
        <description>Et  tout savoir sur RDF</description>
       </item>
      </channel>
    </rss> 
    Un document RSS

    Vous pouvez télécharger l'exemple et l'utiliser comme point de départ pour votre propre fichier RSS, en remplaçant bien sur "xul.fr" par le nom de votre site.

    Vous avez créé un flux et vous l'avez placé sur votre site web, à la racine par exemple. Il faut en informer les navigateurs lorsqu'ils affichent la page d'accueil du site (ou toutes autres pages si vous voulez). Firefox affichera l'icône dans le champ d'URL, Internet Explorer sur la barre de commandes.
    Pour les activer, insérez la ligne suivante dans le code source de la page, n'importe où à l'intérieur de la section <head> </head>:

    <link rel="alternate" type="application/rss+xml"
        href="http://www.xul.fr/rss.xml" title="Votre titre">

    Remplacer l'URL de l'exemple par celle de votre domaine avec le chemin et le nom du fichier RSS.
    Et si le fichier est au format atom, remplacer rss+xml par atom+xml .

    Spécifications et outils

    Spécifications et références

    Outils de génération et de test de flux RSS

    Outils de lecture et affichage de flux RSS