hatom-fr
hAtom 0.1
hAtom est un microformat pour le contenu qui peut être syndiqué, initialement conçus pour les billets de blog mais pas exclusivement. hAtom est basé sur un sous-ensemble du format de syndication Atom. hAtom est l'un des nombreux standards ouverts microformats.
Spécification Brouillon
Editeur/Auteur
Contributeurs
Copyright
Cette spécification est (C) 2005-2024 par les auteurs. Néanmoins, les auteurs ont pour but de soumettre cette spécification à un corps de standards avec une politique libérale de copyright/licence telle que GMPG, IETF, et/ou W3C. Quiconque souhaite contribuer devrait lire avant de contribuer leurs principes de copyright, politiques et licences (par ex. les Principes GMPG) et être d'accord avec eux, y compris le fait de licencier toutes les contributions sous les licences nécessaires (par ex. CC-by 1.0 et suivantes).
Patents
Cette spécification est sujette à une politique de brevets libres de droits, par ex. pour la Politique de Brevet du W3C, IETF RFC3667 et RFC3668.
Introduction
hAtom est un microformat pour identifier l'information sémantique dans les billets de blog et pratiquement n'importe quel autre endroit Atom peut être utilisé, comme les articles d'actualités. Le contenu hAtom est facilement ajouté à la plupart des blogs par de simples modifications aux définitions du gabarit du blog.
Principes de Design XHTML Sémantique
Note : les Principes de Design XHTML Sémantique ont été écrits initialement dans le contexte de développement de hCard et hCalendar, par conséquent il peut être plus facile de comprendre ces principes dans le contexte de la méthodologie de design hCard (ce qui veut dire, lisez ça d'abord). Tantek
XHTML est construit sur du XML, et par conséquent les formats fondés sur XHTML peuvent être utilisés non seulement pour une présentation d'affichage pratique, mais aussi à des fins d'échanges de données. A bien des façons, les formats fondés sur XHTML illustrent le meilleur des mondes tant du HTML que du XML. Néanmoins au moment de construire des formats basés sur XHTML, cela aide d'avoir un ensemble de principes directeurs.
- Réutilisez autant que possible le schéma (noms, objets, propriétés, valeurs, types, hiérarchies, contraintes) à partir des standards de référence établis et bien supportés. Evitez de redéclarer les contraintes exprimées dans le standard source. Des mentions à titre d'information peuvent passer.
- Pour les types avec plusieurs composants, utilisez des éléments imbriqués avec des noms de classe équivalents aux noms des composants.
- Les composants pluriels sont produits au singulier, et par conséquent plusieurs éléments imbriqués sont utilisés pour représenter plusieurs valeurs de texte qui sont délimitées par des virgules.
- Utilisez la sémantique XHTML la plus précise pour construire des blocs pour chaque objet, etc.
- Autrement utilisez un élément générique structurel (par ex.
<span>
ou<div>
), ou l'élément contextuel approprié (par ex. un<li>
dans un<ul>
ou<ol>
). - Utilisez des noms de classes basés sur des noms extraits du schéma original, à moins que le XHTML sémantique de construction de bloc ne représente précisément cette partie du schéma original. Si les noms dans le schéma original ne sont pas sensibles la casse, alors mettez tout dans un équivalent en bas de casse. Les noms de composants implicites en prose (plutôt qu'explicites dans le schéma défini) devraient aussi utiliser les équivalents bas de casse pour une facilité d'utilisation. Les espaces dans les noms des composants deviennent des caractères tiret '-'.
- Pour finir, si le format de la donnée selon le schéma original est trop long et/ou non amical sur le plan humain, utilisez
<abbr>
au lieu d'un élément générique structurel, et placez les données littérales dans l'attribut 'title' (là où vont les expansions abbr), et l'équivalent le plus bref et le plus lisible humainement dans l'élément lui-même. De plus amples explications de cet usage de<abbr>
: Human vs. ISO8601 dates problem solved
Format
En Général
Le Format de Syndication Atom fournit la base conceptuelle pour ce microformat, avec les mises en garde suivantes :
- Atom fournit beaucoup plus de fonctionnalités qu'il n'en faut pour un microformat "billet blog", aussi nous avons pris le nombre minimal d'éléments requis.
- le modèle "logique" de hAtom est celui d'Atom. S'il y a un conflit, Atom devrait être pris comme correct.
- le modèle "physique" de hAtom -- la véritable écriture des éléments -- est bien plus variée que ce que fournit Atom, du fait de la variété des manières dont sont effectivement produits les weblogs dans la jungle. Le microformat hAtom fourni un certain nombre de règles pour "ponter le fossé"
Schéma
Les éléments du schéma sont basés sur la nomenclature Atom et suivent le modèle de préfixer un identifiant unique (dans ce cas, 'h
') sur la plupart des éléments conteneurs -- le Fil ou l'Entrée. Les parties de ce microformat sont basées sur l'analyse de beaucoup de weblogs, de bulletin board et de billets média et peuvent être lus sur blog-post-brainstorming#Discovered_Elements.
Le schéma hAtom comprend les points suivants :
- hfeed (
hfeed
). optionnell. - hentry (
hentry
).entry-title
. requis. texte.entry-content
. requis. texte.entry-summary
. optionnel. texte.updated
. requis utilise le datetime-design-pattern.published
. optionnel, utilise le datetime-design-pattern.author
. requis utilise hCard.bookmark
(permalien). optionnel, utilise rel-bookmark.- tags. optionnel. mots-clés ou phrases, utilise rel-tag.
Quelques éléments requis ont des valeurs par défaut si elles manquent, voir en-dessous.
Détails Champ et Elément
Fil
- un élément Fil est identifié par le nom de classe
hfeed
- un élément Fil représente le concept d'un fil Atom
- l'élément Fil est optionnel et s'il manque, il est supposé être la page
- les documents hAtom PEUVENT avoir plusieurs éléments Fil.
Fil Catégorie
- un élément Fil Catégorie est identifié par rel-tag
- un Fil PEUT avoir un Fil Catégorie
- un élément Fil Catégorie représente le concept d'une catégorie Atom dans un fil
- les éléments Catégorie Fil DOIVENT apparaître à l'intérieur d'un élément Fil mais pas à l'intérieur d'un élément Entrée
- le rel-tag
href
encode lecategory:term
atom ; le lien texte définit lacategory:label
atom.
Entrée
- un élement Entrée est identifié par le nom de classe
hentry
- un élement Entrée représente le concept d'une entrée Atom
- tout contenu microformat à l'intérieur d'un élément
<blockquote>
ou<q>
dans l'Entrée ne devrait pas être considéré comme partie de l'Entrée.
- Ceci permet la citation d'autres données microformatées sans se soucier de corrompre le modèle
Catégorie Entrée
- un élément Catégorie Entrée est identifié par rel-tag
- une Entrée PEUT avoir une Catégorie Entrée
- un élément Catégorie Entrée représente le concept d'une catégorie Atom à l'intérieur d'une entrée
- le rel-tag
href
encode lecategory:term
atom ; le lien texte définit lacategory:label
atom
Entry Title
- an Entry Title element is identified by the class name
entry-title
- an Entry SHOULD have an Entry Title
- an Entry Title element represents the concept of an Atom entry title
- if the Entry Title is missing, use
- the first
<h#>
element in the Entry, or - the
<title>
of the page, if there is no enclosing Feed element, or - assume it is the empty string
- the first
Entry Content
- an Entry Content element is identified by class name
entry-content
- an Entry SHOULD have Entry Content
- an Entry Content element represents the concept of an Atom content
- an Entry MAY have 0 or more Entry Content elements. The "logical Entry Content" of an Entry is the concatenation, in order of appearance, of all the Entry Contents within the Entry
- Many weblogs split content into multiple sections with a "Read More" link and javascript tricks. This is also needed in cases where Entry Titles are coded inline and are considered part of the content.
- if the Entry Content is missing, assume it is the empty string
Entry Summary
- an Entry Summary element is identified by class name
entry-summary
- an Entry Summary element represents the concept of an Atom summary
- an Entry MAY have 0 or more Entry Summary elements. The "logical Entry Summary" of an Entry is the concatenation, in order of appearance, of all the Entry Summarys within the Entry
Entry Permalink
- an Entry Permalink element is identified by rel-bookmark
- an Entry SHOULD have an Entry Permalink
- an Entry Permalink element represents the concept of an Atom link in an entry
- if the Entry Permalink is missing, use the URI of the page; if the Entry has an "id" attribute, add that as a fragment to the page URI to distinguish individual entries
Entry Updated
- an Entry Updated element is identified by class name
updated
- an Entry Updated element represents the concept of Atom updated
- an Entry SHOULD have an Entry Updated element
- use the datetime-design-pattern to encode the updated datetime
- if there is no Entry Updated element,
- use the Entry Published element, if present
- otherwise the page is invalid hAtom
Entry Published
- an Entry Published element is identified by the class name
published
- an Entry Published element represents the concept of Atom published
- use the datetime-design-pattern to encode the published datetime
Entry Author
- an Entry Author element is represented by class name
author
- an Entry Author element represents the concept of an Atom author
- an Entry Author element MUST be encoded in an hCard
- an Entry Author element SHOULD be encoded in an
<address>
element - an Entry SHOULD have at least one Entry Author element
- an Entry MAY have more than one Entry Author elements
- if the Entry Author is missing
- find the Nearest In Parent
<address>
element(s) with class nameauthor
and that is/are a valid hCard - otherwise the entry is invalid hAtom
- find the Nearest In Parent
XMDP Profile
<dl class="profile"> <dt>class</dt> <dd><p> <a rel="help" href="http://www.w3.org/TR/html401/struct/global.html#adef-class"> HTML4 definition of the 'class' attribute.</a> This meta data profile defines some 'class' attribute values (class names) and their meanings as suggested by a <a href="http://www.w3.org/TR/WD-htmllink-970328#profile"> draft of "Hypertext Links in HTML"</a>. <dl> <dt>hfeed</dt> <dd> The concept of atom:feed from <a href="http://www.atomenabled.org/developers/syndication/atom-format-spec.php">The Atom Syndication Format</a>, constrained and modified as per the <a href="http://microformats.org/wiki/hatom">hAtom microformat spec</a>. </dd> <dt>hentry</dt> <dd> The concept of atom:entry from <a href="http://www.atomenabled.org/developers/syndication/atom-format-spec.php">The Atom Syndication Format</a>, constrained and modified as per the <a href="http://microformats.org/wiki/hatom">hAtom microformat spec</a>. </dd> <dt>entry-title</dt> <dd> The concept of atom:title inside of an atom:entry from <a href="http://www.atomenabled.org/developers/syndication/atom-format-spec.php">The Atom Syndication Format</a>, constrained and modified as per the <a href="http://microformats.org/wiki/hatom">hAtom microformat spec</a>. </dd> <dt>entry-content</dt> <dd> The concept of atom:content from <a href="http://www.atomenabled.org/developers/syndication/atom-format-spec.php">The Atom Syndication Format</a>, constrained and modified as per the <a href="http://microformats.org/wiki/hatom">hAtom microformat spec</a>. </dd> <dt>entry-summary</dt> <dd> The concept of atom:summary from <a href="http://www.atomenabled.org/developers/syndication/atom-format-spec.php">The Atom Syndication Format</a>, constrained and modified as per the <a href="http://microformats.org/wiki/hatom">hAtom microformat spec</a>. </dd> <dt>bookmark</dt> <dd> The concept of atom:link (without any "rel") with an atom:entry from <a href="http://www.atomenabled.org/developers/syndication/atom-format-spec.php">The Atom Syndication Format</a>, constrained and modified as per the <a href="http://microformats.org/wiki/hatom">hAtom microformat spec</a>. </dd> <dt>published</dt> <dd> The concept of atom:published from <a href="http://www.atomenabled.org/developers/syndication/atom-format-spec.php">The Atom Syndication Format</a>, constrained and modified as per the <a href="http://microformats.org/wiki/hatom">hAtom microformat spec</a>. </dd> <dt>updated</dt> <dd> The concept of atom:updated from <a href="http://www.atomenabled.org/developers/syndication/atom-format-spec.php">The Atom Syndication Format</a>, constrained and modified as per the <a href="http://microformats.org/wiki/hatom">hAtom microformat spec</a>. </dd> <dt>author</dt> <dd> The concept of atom:author from <a href="http://www.atomenabled.org/developers/syndication/atom-format-spec.php">The Atom Syndication Format</a>, constrained and modified as per the <a href="http://microformats.org/wiki/hatom">hAtom microformat spec</a>. </dd> </dl> </dd> </dl>
Exemples
Voir hatom-examples.
Exemples dans la jungle
Cette section est informative.
0.1 implémentations hAtom
- Capital University uses hAtom 0.1 to mark up the feed of latest posts by student bloggers on its home page.
- Ranting and Roaring (David Janes)
- ChunkySoup.net has redesigned using hAtom 0.1 and hCards on the entire site -- by Chris Casciano
- Sedna RSS (a feed aggregator based on SPIP, by Fil, IZO and others; GPLd sources are available at SPIP-Zone)
- Sound Advice (Benjamin Carlyle)
- Scribbish is a Typo theme which uses hAtom.
- hAtom2Atom.xsl’s Changelog is published as hAtom and Atom.
- federali.st's webbed Federalist Papers are each marked up in hAtom.
Implémentations Pre 0.1 hAtom
Ces pages se conforment à un standard brouillon plus ancien et ont besoin d'être mises à jour.
- Second p0st (Phil Pearson)
Implémentations
Cette section est informative.
- the Almost Universal Microformat Parser can extract hAtom content from webpages (example)
- the microformat-action Greasemonkey script detects hAtom content on webpages and will call the Almost Universal Microformat Parser
- hAtom2Atom.xsl transforms hAtom to Atom (as the name suggests.)
- There is now an hatom2atom proxy that uses hAtom2Atom.xsl.
- Subscribe To hAtom is a script that provides NetNewsWire 2.x users with the ability to subscribe to hAtom documents as they would any other feed. by Chris Casciano.
Références
Références Normatives
Références Informatives
Spécifications Qui utilisent hAtom
Travail Similaire
Chantier en Cours
Cette spécification est un chantier en cours. Au fur et à mesure que des aspects supplémentaires sont discutés, compris et écrits, ils seront ajoutés. Il existe un document séparé où nous conservons nos brainstorms et autres explorations en rapport avec hAtom :
Version 0.1
La version 0.1 est sortie le 28 février 2006.
Discussions
Q&A
- If you have any questions about hAtom, check the hAtom FAQ, and if you don't find answers, add your questions!
Issues
- Please add any issues with the specification to the separate hAtom issues document.
See Also
- hAtom - the draft proposal
- hAtom Hints - help for implementors
- hatom-issues - problems? complaints? ideas? Put them here
- hatom-faq - knowledge base
- blog-post-brainstorming
- blog-post-formats
- blog-post-examples
- blog-description-format - how to describe a blog (as opposed to the individual entries, which is what we're doing here)