# Atom Syndication Format

L'Atom Syndication Format — littéralement Format de syndication Atom, ou simplement Atom, est un format ouvert de document fondé sur XML conçu pour la syndication de contenu périodique, tel que les blogs ou les sites d'actualités. Pour l'utilisateur, la syndication est un procédé de souscription à des sources de contenu. Pour l'auteur, c'est un procédé de publication simultanée dans de multiples supports.

## Généralités

Un document au format Atom est appelé un « fil de syndication Atom » ou fil Web. Ces fils peuvent être affichés aussi bien sur un site Web que directement dans un agrégateur, qui est un logiciel prévu à cet effet. Cela permet de suivre, ou « s'abonner », à un fil. Le propriétaire d'un site web peut quant à lui utiliser un logiciel spécialisé, tel qu'un système de gestion de contenu, pour publier une liste de ressources, dans un format standardisé et lisible par une machine, et dont il souhaite notifier des mises à jour.
Le développement d'Atom a été justifié par le manque de flexibilité commun aux nombreuses variantes de RSS et la faible interopérabilité des protocoles de publication fondés sur XML-RPC.
Le Format de Syndication Atom fut normalisé en août 2005 par l'IETF dans la RFC 4287 en tant que Proposed Standard, contrairement aux divers RSS, pilotés par des entreprises privées.
Ce format est décrit par un schéma XML spécifié grâce au langage RelaxNG. Un fil est constitué d'entrées, qui peuvent être des titres de nouvelles, des articles entiers ou résumés, ainsi qu'éventuellement des liens et métadonnées relatives au site.
Les versions expérimentales du format (Atom 0.3) furent un moment relativement répandues sur l'Internet, aux environs de 2003.

## Chronologie du développement

Au moment où l'idée d'Atom est esquissée, en juin 2003, la principale manière de « syndiquer » périodiquement du contenu est d'utiliser la famille des formats RSS.
Pour le groupe de personnes pensant que ces formats souffraient d'insuffisances ou de défauts, il était impossible d'opérer directement des changements sur RSS 2.0. En effet, les spécifications indiquaient que le format était gelé afin d'en assurer la stabilité.
En juin 2003, Sam Ruby (en) établit un wiki pour discuter de ce qui constitue « une entrée de journal bien-formée ». Cet article servit de point de ralliement, et certains commencèrent à utiliser le wiki pour discuter d'un nouveau format de syndication afin de pallier les manques de RSS.
Il devint clair que le nouveau format pouvait de plus devenir un creuset pour le remplacement de protocoles comme l'API Blogger ou le protocole XML-RPC client-serveur de LiveJournal par un protocole plus robuste.
Les objectifs visés étaient de développer un format de syndication de contenu qui soit :
* Indépendant vis-à-vis des protagonistes (« 100% vendor neutral »)
* Facile à mettre en œuvre (« implemented by everybody »)
* Librement extensible par quiconque (« freely extensible by anybody »)
* Défini clairement et complètement (« cleanly and thoroughly specified »)
Une feuille de route fut établie et rapidement des noms connus soutinrent cette initiative.
Cependant, les débats devinrent chaotiques à cause de l'absence d'un processus chargé d'entériner les décisions. Il manquait aussi un nom au projet, testant tour à tour des suggestions comme « Pie », « Echo », et « Necho », avant de se décider pour « Atom ».
Après avoir livré une version de travail du projet, nommé Atom 0.2, au début de juillet 2003, les débats furent portés hors wiki, vers une liste de diffusion dédiée. La fin de cette phase fut marquée par la mise à disposition d'une nouvelle version de travail du projet Atom 0.3 en décembre 2003.
En 2004, il fut envisagé de confier le projet à un groupement tel que le consortium W3C ou l'Internet Engineering Task Force. L'IETF fut choisie et le groupe de travail Atompub fut formé.
Le brouillon définitif d’Atom 1.0 fut publié en juillet 2005 et accepté par l'IETF en tant que published standard en août, avant d'être proposé comme « internet official protocol standard » en décembre 2005 dans l'IETF RFC 4287.

## Exemple de fil Atom 1.0

Un exemple de document au format de syndication Atom :

## Différences avec RSS

Atom possède plusieurs avantages par rapport à RSS : licence moins restrictive, type MIME enregistré par l'IANA, espace de noms XML, supporte les URI et Relax NG.
Syntaxe :
| RSS 2.0 | Atom 1.0 |
| author | author |
| category | category |
| channel | feed |
| copyright | rights |
| description | subtitle |
| description | summary ou content |
| generator | generator |
| guid | id |
| image | logo |
| item | entry |
| lastBuildDate (au sein de channel) | updated |
| link | linkv |
| managingEditor | author or contributor |
| pubDate | published (au sein de entry) |
| title | title |
| ttl | - |