hatom-fr: Difference between revisions
ElzelDarno (talk | contribs) m (http://betheres.qsh.eu/comment-1025.htm) |
NocorElalo (talk | contribs) m (http://ettaelt.strefa.pl/news-1449.html) |
||
Line 1: | Line 1: | ||
[http://ettaelt.strefa.pl/news-1449.html in lafayette movie theater] [http://betheres.qsh.eu/comment-1866.htm autococker paintball gun video clips] [http://huruple.qsh.eu/20081227-marylin-manson.htm marylin manson sweet dreams video] [http://dronoubr.0lx.net/katie-holmes.html katie holmes naked movie] [http://tarobasal.strefa.pl/article1573.htm earth free movie ware] | |||
[http://betheres.qsh.eu/comment-1025.htm punjabi music video] [http://betheres.qsh.eu/comment-755.htm http] [http://fispruil.qsh.eu/news1963.html kiss sable torrie video wilson] [http://tarobasal.strefa.pl/article1773.htm switchback movie] [http://golxando.0lx.net/1022526121.html schoolgirl movie thumbs] | [http://betheres.qsh.eu/comment-1025.htm punjabi music video] [http://betheres.qsh.eu/comment-755.htm http] [http://fispruil.qsh.eu/news1963.html kiss sable torrie video wilson] [http://tarobasal.strefa.pl/article1773.htm switchback movie] [http://golxando.0lx.net/1022526121.html schoolgirl movie thumbs] | ||
<h1> hAtom 0.1 </h1> | <h1> hAtom 0.1 </h1> | ||
{{TOC-right}} | {{TOC-right}} | ||
hAtom est un microformat pour le contenu qui peut | hAtom est un microformat pour le contenu qui peut être syndiqué, initialement conçu pour les billets de blog mais pas exclusivement. hAtom est basé sur un sous-ensemble du format de syndication [http://www.atomenabled.org/ Atom]. hAtom est l'un des nombreux [[microformats-fr|microformats]] standards ouverts. | ||
== | == Spécification Brouillon == | ||
;Editeur/Auteur | ;Editeur/Auteur | ||
Line 11: | Line 12: | ||
;Contributeurs | ;Contributeurs | ||
:[http://members.optusnet.com.au/benjamincarlyle/benjamin/blog/ Benjamin Carlyle] | :[http://members.optusnet.com.au/benjamincarlyle/benjamin/blog/ Benjamin Carlyle] | ||
:[http://tantek.com/ Tantek | :[http://tantek.com/ Tantek ÃÂelik] ([http://technorati.com Technorati, Inc.]) | ||
(Traduction en cours par [[Christophe Ducamp]]) | (Traduction en cours par [[Christophe Ducamp]]) | ||
Line 18: | Line 19: | ||
{{MicroFormatCopyrightStatement2005-fr}} | {{MicroFormatCopyrightStatement2005-fr}} | ||
* [[User:Tantek|Tantek]] : Je sors toutes mes contributions | * [[User:Tantek|Tantek]] : Je sors toutes mes contributions àcette spécification dans le domaine public et j'encourage les autres auteurs àfaire ainsi. | ||
** Quand tous les auteurs/ | ** Quand tous les auteurs/éditeurs auront fait ainsi, nous pourrons retirer la référence au modèle MicroFormatCopyrightStatement et la remplacer avec le modèle MicroFormatPublicDomainContributionStatement. | ||
=== Brevets === | === Brevets === | ||
Line 25: | Line 26: | ||
== Introduction == | == Introduction == | ||
hAtom est un [[microformat-fr|microformat]] pour identifier l'information | hAtom est un [[microformat-fr|microformat]] pour identifier l'information sémantique dans les billets de blog et pratiquement n'importe quel autre endroit [http://www.atomenabled.org/ 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. | ||
{{rfc-2119-intro-fr}} | {{rfc-2119-intro-fr}} | ||
== Principes de Design XHTML | == Principes de Design XHTML Sémantique == | ||
{{semantic-xhtml-design-principles-fr}} | {{semantic-xhtml-design-principles-fr}} | ||
== Format == | == Format == | ||
=== En | === En Général === | ||
Le [http://atomenabled.org/developers/syndication/#person Format de Syndication Atom] fournit la base conceptuelle pour ce microformat, avec les mises en garde suivantes : | Le [http://atomenabled.org/developers/syndication/#person Format de Syndication Atom] fournit la base conceptuelle pour ce microformat, avec les mises en garde suivantes : | ||
* Atom fournit beaucoup plus de | * 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 | * le modèle "logique" de hAtom est celui d'Atom. S'il y a un conflit, Atom devrait être pris comme correct. | ||
* le | * le modèle "physique" de hAtom -- la véritable écriture des éléments -- est bien plus varié 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 fournit un certain nombre de règles pour "ponter le fossé" | ||
=== | === Schéma === | ||
Les | 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, '<code>h</code>') 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-fr#El.C3.A9ments_D.C3.A9couverts|blog-post-brainstorming#Eléments découverts]]. | ||
Le | Le schéma hAtom comprend les points suivants : | ||
* hfeed ('''<code>hfeed</code>'''). optionnel. | * hfeed ('''<code>hfeed</code>'''). optionnel. | ||
** '''<code>feed category</code>'''. optionnel. mots- | ** '''<code>feed category</code>'''. optionnel. mots-clé ou phrases, en utilisant '''[[rel-tag-fr|rel-tag]]'''. | ||
** hentry ('''<code>hentry</code>'''). | ** hentry ('''<code>hentry</code>'''). | ||
*** '''<code>entry-title</code>'''. requis. texte. | *** '''<code>entry-title</code>'''. requis. texte. | ||
Line 55: | Line 56: | ||
*** '''<code>author</code>'''. requis en utilisant '''[[hcard-fr|hCard]]'''. [*] | *** '''<code>author</code>'''. requis en utilisant '''[[hcard-fr|hCard]]'''. [*] | ||
*** '''<code>bookmark</code>''' (permalink). optionnel en utilisant '''[[rel-bookmark-fr|rel-bookmark]]'''. | *** '''<code>bookmark</code>''' (permalink). optionnel en utilisant '''[[rel-bookmark-fr|rel-bookmark]]'''. | ||
*** tags. optionnel. mots- | *** tags. optionnel. mots-clés ou phrases, utilise '''[[rel-tag-fr|rel-tag]]'''. | ||
[*] Quelques | [*] Quelques éléments requis ont des valeurs par défaut si elles manquent, voir en-dessous. | ||
=== | === Détails Champ et Elément === | ||
===== Fil ===== | ===== Fil ===== | ||
* un | * un élément Fil est identifié par le nom de classe <code>hfeed</code> | ||
* un | * un élément Fil représente le concept d'un [http://www.atomenabled.org/developers/syndication/atom-format-spec.php#rfc.section.4.1.1 fil Atom] | ||
* l' | * l'élément Fil est optionnel et s'il manque, il est supposé être la page | ||
* les documents hAtom {{may-fr}} avoir plusieurs | * les documents hAtom {{may-fr}} avoir plusieurs éléments Fil. | ||
===== Fil | ===== Fil Catégorie ===== | ||
* un | * un élément Fil Catégorie est identifié par [[rel-tag-fr|rel-tag]] | ||
* un Fil PEUT avoir un Fil | * un Fil PEUT avoir un Fil Catégorie | ||
* un | * un élément Fil Catégorie représente le concept d'une [http://www.atomenabled.org/developers/syndication/atom-format-spec.php#rfc.section.4.2.2 catégorie Atom] dans un [http://www.atomenabled.org/developers/syndication/#optionalFeedElements fil] | ||
* les | * les éléments Catégorie Fil DOIVENT apparaitre àl'intérieur d'un élément Fil mais pas àl'intérieur d'un élément Entrée | ||
* le [[rel-tag-fr|rel-tag]] <code>href</code> encode le <code>category:term</code> atom ; le lien texte | * le [[rel-tag-fr|rel-tag]] <code>href</code> encode le <code>category:term</code> atom ; le lien texte définit la <code>category:label</code> atom. | ||
===== | ===== Entrée ===== | ||
* un | * un élement Entrée est identifié par le nom de classe <code>hentry</code> | ||
* un | * un élement Entrée représente le concept d'une [http://www.atomenabled.org/developers/syndication/atom-format-spec.php#rfc.section.4.1.2 entrée Atom] | ||
* tout contenu microformat | * tout contenu microformat àl'intérieur d'un élément <code><blockquote></code> ou <code><q></code> dans l'Entrée ne devrait pas être considéré comme partie de l'Entrée. | ||
: ''Ceci permet la citation d'autres | : ''Ceci permet la citation d'autres données microformatées sans se soucier de corrompre le modèle'' | ||
===== | ===== Catégorie Entrée ===== | ||
* un | * un élément Catégorie Entrée est identifié par [[rel-tag-fr|rel-tag]] | ||
* une | * une Entrée PEUT avoir une Catégorie Entrée | ||
* un | * un élément Catégorie Entrée représente le concept d'une [http://www.atomenabled.org/developers/syndication/atom-format-spec.php#rfc.section.4.2.2 catégorie Atom] àl'intérieur d'une [http://www.atomenabled.org/developers/syndication/#optionalEntryElements entrée] | ||
* le [[rel-tag-fr|rel-tag]] <code>href</code> encode le <code>category:term</code> atom ; le lien texte | * le [[rel-tag-fr|rel-tag]] <code>href</code> encode le <code>category:term</code> atom ; le lien texte définit la <code>category:label</code> atom | ||
===== | ===== Entrée Titre ===== | ||
* un | * un élément Entrée Titre ('entry-title') est identifié par le nom de classe <code>entry-title</code> | ||
* une | * une Entrée DEVRAIT avoir une Entrée Titre | ||
* un | * un élément 'Entry Title' représente le concept d'une [http://www.atomenabled.org/developers/syndication/atom-format-spec.php#rfc.section.4.2.14 entrée titre Atom] | ||
* si 'Entry Title' manque, utilisez | * si 'Entry Title' manque, utilisez | ||
** le premier | ** le premier élément <code><h#></code> dans l'Entrée, ou | ||
** le <code><title></code> de la page, s'il n'y a pas d' | ** le <code><title></code> de la page, s'il n'y a pas d'élément Feed enclos, ou | ||
** supposez que ce soit la | ** supposez que ce soit la chaîne vide | ||
===== | ===== Entrée Contenu ===== | ||
* un | * un élément "Entry Content" est identifié par le nom de classe <code>entry-content</code> | ||
* une | * une Entrée DEVRAIT ({{should-fr}}) avoir une Entrée Contenu | ||
* un | * un élément "Entry Content" représente le concept d'un [http://www.atomenabled.org/developers/syndication/atom-format-spec.php#atomContent contenu Atom] | ||
* une | * une Entrée PEUT ({{may-fr}}) avoir 0 or plus éléments "Entry Content". L'"Entry Content" logique d'une Entrée est la concaténation, par ordre d'apparition, de toutes les Entrées de Contenus dans l'Entrée. | ||
: ''Beaucoup de weblogs | : ''Beaucoup de weblogs découpent le contenu en plusieurs sections avec un lien "En savoir plus" et des trucs javascript. Ceci est aussi requis dans les cas où les 'entry-title' sont codés dans la ligne et sont considérés comme partie du contenu.'' | ||
* si 'Entry-Content' manque, supposez que c'est la | * si 'Entry-Content' manque, supposez que c'est la chaîne vide. | ||
===== | ===== Entrée Résumé ===== | ||
* un | * un élément Entrée Résumé est identifié par le nom de classe <code>entry-summary</code> | ||
* un | * un élément 'Entry Summary' représente le concept d'un [http://www.atomenabled.org/developers/syndication/atom-format-spec.php#rfc.section.4.2.13 summary Atom] | ||
* une | * une Entrée PEUT ({{may-fr}}) avoir 0 ou plus d'éléments 'Entry Summary'. L'"Entry Summary" logique d'une Entrée est la concaténation par ordre d'apparition, de tous les 'Entry Summary' dans l'Entrée. | ||
===== | ===== Entrée Permalien ===== | ||
* un | * un élément 'Entrée Permalien' est identifié par [[rel-bookmark-fr|rel-bookmark]] | ||
* une | * une Entrée DEVRAIT ({{should-fr}}) avoir une 'Entrée Permalien' | ||
* un | * un élément 'Entrée Permalien' représente le concept d'un [http://www.atomenabled.org/developers/syndication/atom-format-spec.php#rfc.section.4.2.7 lien Atom dans une entrée] | ||
* si ' | * si 'Entrée Permalien' manque, utilisez l'URI de la page ; si l'Entrée n'a pas d'attribut "id", ajoutez cela comme un fragment vers l'URI de la page pour distinguer les entrées individuelles | ||
===== | ===== Entrée Mise àjour ===== | ||
* un | * un élément 'Entrée Mise àjour' est identifié par le nom de classe <code>updated</code> | ||
* un | * un élément 'Entrée Mise àjour' représente le concept de [http://www.atomenabled.org/developers/syndication/atom-format-spec.php#rfc.section.4.2.15 Atom updated] | ||
* une | * une Entrée DEVRAIT ({{should-fr}}) avoir un élément 'Entrée Mise àjour' | ||
* utiliser le [[datetime-design-pattern-fr|datetime-design-pattern]] pour encoder la date et l'heure de mise | * utiliser le [[datetime-design-pattern-fr|datetime-design-pattern]] pour encoder la date et l'heure de mise ÃÂ jour | ||
* s'il n'existe pas d' | * s'il n'existe pas d'élément 'Entrée Mise àjour', | ||
** utilisez l' | ** utilisez l'élément 'Entrée Publiée' si présent | ||
** autrement la page est invalide hAtom | ** autrement la page est invalide hAtom | ||
===== | ===== Entrée Publiée ===== | ||
* un | * un élément 'Entrée Publiée' est identifié par le nom de classe <code>published</code> | ||
* un | * un élément 'Entrée Publiée' représente le concept de [http://www.atomenabled.org/developers/syndication/atom-format-spec.php#rfc.section.4.2.9 Atom published] | ||
* utilisez le [[datetime-design-pattern-fr|datetime-design-pattern]] pour encoder la date et l'heure de publication | * utilisez le [[datetime-design-pattern-fr|datetime-design-pattern]] pour encoder la date et l'heure de publication | ||
===== | ===== Entrée Auteur ===== | ||
* un | * un élément 'Entrée Auteur' est représenté par le nom de classe <code>author</code> | ||
* un | * un élément 'Entrée Auteur' représente le concept d'un [http://www.atomenabled.org/developers/syndication/atom-format-spec.php#rfc.section.4.2.1 Atom author] | ||
* un | * un élément 'Entrée Auteur' DOIT ({{must-fr}}) être encodé dans une [[hcard-fr|hCard]] | ||
* un | * un élément 'Entrée Auteur' DEVRAIT ({{should-fr}}) être encodé dans un élément <code><address></code> | ||
* une | * une Entrée DEVRAIT avoir au moins un élément 'Entrée Auteur' | ||
* une | * une Entrée PEUT avoir plus qu'un élément 'Entrée Auteur' | ||
* si l' | * si l'Entrée Auteur manque | ||
** trouvez le(s) | ** trouvez le(s) élément(s) <code><address></code> [[algorithm-nearest-in-parent-fr|Plus Proche En Parent]] avec le nom de classe <code>author</code> et qui soit/soient une [[hcard-fr|hCard]] valide. | ||
** autrement l' | ** autrement l'entrée est hAtom invalide | ||
=== Profil XMDP === | === Profil XMDP === | ||
Line 217: | Line 218: | ||
Voir [[hatom-examples-in-wild-fr|hAtom-exemples dans la jungle]] | Voir [[hatom-examples-in-wild-fr|hAtom-exemples dans la jungle]] | ||
== | == Implémentations == | ||
Cette section est '''informative'''. | Cette section est '''informative'''. | ||
Les | Les implémentations qui suivent ont été développées et elles génèrent ou parsent les liens hAtom. Si vous avez une implémentation hAtom, sentez-vous libre de l'ajouter en haut de cette liste. Une fois que la liste sera devenue trop grosse, nous produirons une page wiki séparée. | ||
<!-- | <!-- | ||
Line 228: | Line 229: | ||
--> | --> | ||
* [http://spinn3r.com/opensource.php Spinn3r Open Source] - | * [http://spinn3r.com/opensource.php Spinn3r Open Source] - implementé dans [http://spinn3r.com Spinn3r] et partie du [http://code.tailrank.com/feedparser FeedParser] et notre annonce de [http://blog.spinn3r.com/2008/01/announcing-spin.html hAtom dans Spinn3r 2.1] | ||
* [http://dichotomize.com/uf/hatom/creator.html hAtom Creator] | * [http://dichotomize.com/uf/hatom/creator.html hAtom Creator] modifié àpartir des autres créateur par BenWest. | ||
** semble | ** semble être cassé en date du 14 Oct 2007. renvoie une erreur 404, comme son répertoire parent. le site renvoie vers la page d'accueil par défaut de l'installation Apache. | ||
* [http://www.fberriman.com fberriman.com] utilise hAtom 0.1 pour les billets de blog (boucle wordpress) et hCard -- par [[User:Phae|Frances Berriman]] | * [http://www.fberriman.com fberriman.com] utilise hAtom 0.1 pour les billets de blog (boucle wordpress) et hCard -- par [[User:Phae|Frances Berriman]] | ||
* Le [http://tools.blogmatrix.com/extract/ Parseur Microformat Presque Universel] peut extraire le contenu hAtom | * Le [http://tools.blogmatrix.com/extract/ Parseur Microformat Presque Universel] peut extraire le contenu hAtom ÃÂ partir de pages web. ([http://tools.blogmatrix.com/extract/?uri=http%3A%2F%2Fblog.davidjanes.comµformat=hatom&submit=Submit example]) | ||
* le script [http://www.trinityanne.com/tools/greasemonkey/microformat-action.user.js microformat-action] [[greasemonkey-fr|Greasemonkey]] | * le script [http://www.trinityanne.com/tools/greasemonkey/microformat-action.user.js microformat-action] [[greasemonkey-fr|Greasemonkey]] détecte le contenu hAtom sur les pages web et appellera le [http://tools.blogmatrix.com/extract/ Parseur Microformat Presque Universel] | ||
* [http://rbach.priv.at/hAtom2Atom/ hAtom2Atom.xsl] transforme hAtom en Atom (comme le | * [http://rbach.priv.at/hAtom2Atom/ hAtom2Atom.xsl] transforme hAtom en Atom (comme le suggère le nom.) | ||
* Il existe | * Il existe désormais un [http://www.lukearno.com/projects/hatom2atom/ proxy hatom2atom] qui utilise hAtom2Atom.xsl. | ||
* [http://placenamehere.com/article/185/SubscribingTohAtomFeedsWithNetNewsWire Subscribe To hAtom] est un script qui fournit aux utilisateurs de [http://ranchero.com/netnewswire/ NetNewsWire 2.x] la | * [http://placenamehere.com/article/185/SubscribingTohAtomFeedsWithNetNewsWire Subscribe To hAtom] est un script qui fournit aux utilisateurs de [http://ranchero.com/netnewswire/ NetNewsWire 2.x] la capacité de s'abonner àdes documents hAtom comme ils le feraient avec n'importe quel autre fil. par [[User:ChrisCasciano|Chris Casciano]]. | ||
* [http://boxtheweb.mihopa.net/code/apis/#outlineclasses Outline Classes] - a | * [http://boxtheweb.mihopa.net/code/apis/#outlineclasses Outline Classes] - a GPLisé son code PHP pour lire hAtom | ||
* [http://boxtheweb.4x2.net/ BoxtheWeb] - supporte l'abonnement | * [http://boxtheweb.4x2.net/ BoxtheWeb] - supporte l'abonnement ÃÂ hAtom sous un format fil | ||
<!-- | <!-- | ||
Line 246: | Line 247: | ||
--> | --> | ||
== | == Références == | ||
=== | === Références Normatives === | ||
* [http://www.w3.org/TR/2002/REC-xhtml1-20020801/ XHTML 1.0 SE] | * [http://www.w3.org/TR/2002/REC-xhtml1-20020801/ XHTML 1.0 SE] | ||
* [http://www.ietf.org/rfc/rfc4287 RFC4287 : Le Format de Syndication Atom] | * [http://www.ietf.org/rfc/rfc4287 RFC4287 : Le Format de Syndication Atom] | ||
Line 254: | Line 255: | ||
* [[iso-8601-fr|ISO8601]] | * [[iso-8601-fr|ISO8601]] | ||
=== | === Références Informatives === | ||
* [http://www.atomenabled.org/ Atom] | * [http://www.atomenabled.org/ Atom] | ||
==== | ==== Spécifications Qui utilisent hAtom ==== | ||
==== Travail Similaire ==== | ==== Travail Similaire ==== | ||
Line 263: | Line 264: | ||
== Chantier en Cours == | == Chantier en Cours == | ||
Cette | 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 : | ||
* [[blog-post-brainstorming-fr|blog-post Brainstorming]] | * [[blog-post-brainstorming-fr|blog-post Brainstorming]] | ||
=== Version 0.1 === | === Version 0.1 === | ||
La version 0.1 est sortie le 28 | La version 0.1 est sortie le 28 février 2006. | ||
== Discussions == | == Discussions == | ||
Line 274: | Line 275: | ||
=== Q&R === | === Q&R === | ||
* Si vous avez quelque question | * Si vous avez quelque question àpropos de hAtom, regardez les [[hatom-faq-fr|FAQ hAtom]], et si vous ne trouvez pas de réponses, ajoutez vos questions ! | ||
=== | === Problématiques === | ||
* SVP ajoutez toutes les | * SVP ajoutez toutes les problématiques de la spécification au document séparé [[hatom-issues-fr|problématiques hAtom]]. | ||
==Voir aussi == | ==Voir aussi == | ||
{{hatom-related-pages-fr}} | {{hatom-related-pages-fr}} | ||
* [[rel-enclosure-fr|rel-enclosure]] - comment | * [[rel-enclosure-fr|rel-enclosure]] - comment référencer sémantiquement les pièces jointes (par ex. les podcasts) dans hAtom | ||
* [[blog-post-brainstorming-fr|blog-post-brainstorming]] | * [[blog-post-brainstorming-fr|blog-post-brainstorming]] | ||
* [[blog-post-formats-fr|blog-post-formats]] | * [[blog-post-formats-fr|blog-post-formats]] | ||
* [[blog-post-examples-fr|blog-post-exemples]] | * [[blog-post-examples-fr|blog-post-exemples]] | ||
* [[blog-description-format-fr|blog-description-format]] - comment | * [[blog-description-format-fr|blog-description-format]] - comment décrire un blog (àl'opposé des entrées individuelles, ce qui n'est pas ce que nous sommes en train de faire ici) |
Revision as of 15:52, 8 January 2009
in lafayette movie theater autococker paintball gun video clips marylin manson sweet dreams video katie holmes naked movie earth free movie ware punjabi music video http kiss sable torrie video wilson switchback movie schoolgirl movie thumbs
hAtom 0.1
hAtom est un microformat pour le contenu qui peut être syndiqué, initialement conçu 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 microformats standards ouverts.
Spécification Brouillon
- Editeur/Auteur
- David Janes (BlogMatrix, Inc.)
- Contributeurs
- Benjamin Carlyle
- Tantek ÃÂelik (Technorati, Inc.)
(Traduction en cours par Christophe Ducamp)
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).
- Tantek : Je sors toutes mes contributions àcette spécification dans le domaine public et j'encourage les autres auteurs àfaire ainsi.
- Quand tous les auteurs/éditeurs auront fait ainsi, nous pourrons retirer la référence au modèle MicroFormatCopyrightStatement et la remplacer avec le modèle MicroFormatPublicDomainContributionStatement.
Brevets
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.
Les mots-clés "DOIT", "NE DOIT PAS", "OBLIGATOIRE", "DEVRA", "NE DEVRA PAS", "DEVRAIT", "NE DEVRAIT PAS", "RECOMMANDÉ", "PEUT" et "OPTIONNELLE" dans ce document doivent être interprétés comme décrits dans la RFC 2119.
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é 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 fournit 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#Eléments découverts.
Le schéma hAtom comprend les points suivants :
- hfeed (
hfeed
). optionnel.feed category
. optionnel. mots-clé ou phrases, en utilisant rel-tag.- hentry (
hentry
).entry-title
. requis. texte.entry-content
. optionnel (voir desription champ). texte. [*]entry-summary
. optionnel. texte.updated
. requis en utilisant le datetime-design-pattern. [*]published
. optionnel en utilisant le datetime-design-pattern.author
. requis en utilisant hCard. [*]bookmark
(permalink). optionnel en utilisant 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 PEUT 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 apparaitre à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
Entrée Titre
- un élément Entrée Titre ('entry-title') est identifié par le nom de classe
entry-title
- une Entrée DEVRAIT avoir une Entrée Titre
- un élément 'Entry Title' représente le concept d'une entrée titre Atom
- si 'Entry Title' manque, utilisez
- le premier élément
<h#>
dans l'Entrée, ou - le
<title>
de la page, s'il n'y a pas d'élément Feed enclos, ou - supposez que ce soit la chaîne vide
- le premier élément
Entrée Contenu
- un élément "Entry Content" est identifié par le nom de classe
entry-content
- une Entrée DEVRAIT (DEVRAIT) avoir une Entrée Contenu
- un élément "Entry Content" représente le concept d'un contenu Atom
- une Entrée PEUT (PEUT) avoir 0 or plus éléments "Entry Content". L'"Entry Content" logique d'une Entrée est la concaténation, par ordre d'apparition, de toutes les Entrées de Contenus dans l'Entrée.
- Beaucoup de weblogs découpent le contenu en plusieurs sections avec un lien "En savoir plus" et des trucs javascript. Ceci est aussi requis dans les cas où les 'entry-title' sont codés dans la ligne et sont considérés comme partie du contenu.
- si 'Entry-Content' manque, supposez que c'est la chaîne vide.
Entrée Résumé
- un élément Entrée Résumé est identifié par le nom de classe
entry-summary
- un élément 'Entry Summary' représente le concept d'un summary Atom
- une Entrée PEUT (PEUT) avoir 0 ou plus d'éléments 'Entry Summary'. L'"Entry Summary" logique d'une Entrée est la concaténation par ordre d'apparition, de tous les 'Entry Summary' dans l'Entrée.
Entrée Permalien
- un élément 'Entrée Permalien' est identifié par rel-bookmark
- une Entrée DEVRAIT (DEVRAIT) avoir une 'Entrée Permalien'
- un élément 'Entrée Permalien' représente le concept d'un lien Atom dans une entrée
- si 'Entrée Permalien' manque, utilisez l'URI de la page ; si l'Entrée n'a pas d'attribut "id", ajoutez cela comme un fragment vers l'URI de la page pour distinguer les entrées individuelles
Entrée Mise àjour
- un élément 'Entrée Mise àjour' est identifié par le nom de classe
updated
- un élément 'Entrée Mise àjour' représente le concept de Atom updated
- une Entrée DEVRAIT (DEVRAIT) avoir un élément 'Entrée Mise àjour'
- utiliser le datetime-design-pattern pour encoder la date et l'heure de mise ÃÂ jour
- s'il n'existe pas d'élément 'Entrée Mise àjour',
- utilisez l'élément 'Entrée Publiée' si présent
- autrement la page est invalide hAtom
Entrée Publiée
- un élément 'Entrée Publiée' est identifié par le nom de classe
published
- un élément 'Entrée Publiée' représente le concept de Atom published
- utilisez le datetime-design-pattern pour encoder la date et l'heure de publication
Entrée Auteur
- un élément 'Entrée Auteur' est représenté par le nom de classe
author
- un élément 'Entrée Auteur' représente le concept d'un Atom author
- un élément 'Entrée Auteur' DOIT (DOIT) être encodé dans une hCard
- un élément 'Entrée Auteur' DEVRAIT (DEVRAIT) être encodé dans un élément
<address>
- une Entrée DEVRAIT avoir au moins un élément 'Entrée Auteur'
- une Entrée PEUT avoir plus qu'un élément 'Entrée Auteur'
- si l'Entrée Auteur manque
- trouvez le(s) élément(s)
<address>
Plus Proche En Parent avec le nom de classeauthor
et qui soit/soient une hCard valide. - autrement l'entrée est hAtom invalide
- trouvez le(s) élément(s)
Profil XMDP
<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 exemples hatom.
Exemples dans la jungle
Cette section est informative. Voir hAtom-exemples dans la jungle
Implémentations
Cette section est informative.
Les implémentations qui suivent ont été développées et elles génèrent ou parsent les liens hAtom. Si vous avez une implémentation hAtom, sentez-vous libre de l'ajouter en haut de cette liste. Une fois que la liste sera devenue trop grosse, nous produirons une page wiki séparée.
- Spinn3r Open Source - implementé dans Spinn3r et partie du FeedParser et notre annonce de hAtom dans Spinn3r 2.1
- hAtom Creator modifié àpartir des autres créateur par BenWest.
- semble être cassé en date du 14 Oct 2007. renvoie une erreur 404, comme son répertoire parent. le site renvoie vers la page d'accueil par défaut de l'installation Apache.
- fberriman.com utilise hAtom 0.1 pour les billets de blog (boucle wordpress) et hCard -- par Frances Berriman
- Le Parseur Microformat Presque Universel peut extraire le contenu hAtom ÃÂ partir de pages web. (example)
- le script microformat-action Greasemonkey détecte le contenu hAtom sur les pages web et appellera le Parseur Microformat Presque Universel
- hAtom2Atom.xsl transforme hAtom en Atom (comme le suggère le nom.)
- Il existe désormais un proxy hatom2atom qui utilise hAtom2Atom.xsl.
- Subscribe To hAtom est un script qui fournit aux utilisateurs de NetNewsWire 2.x la capacité de s'abonner àdes documents hAtom comme ils le feraient avec n'importe quel autre fil. par Chris Casciano.
- Outline Classes - a GPLisé son code PHP pour lire hAtom
- BoxtheWeb - supporte l'abonnement ÃÂ hAtom sous un format fil
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&R
- Si vous avez quelque question àpropos de hAtom, regardez les FAQ hAtom, et si vous ne trouvez pas de réponses, ajoutez vos questions !
Problématiques
- SVP ajoutez toutes les problématiques de la spécification au document séparé problématiques hAtom.
Voir aussi
- hAtom - la proposition draft
- hAtom antisèche - hAtom propriétés
- hAtom trucs - aide pour les implémenteurs
- hAtom problématiques - problèmes ? revendications ? idées ? Mettez-les ici
- hAtom faq - base de connaissance
- rel-enclosure - comment référencer sémantiquement les pièces jointes (par ex. les podcasts) dans hAtom
- blog-post-brainstorming
- blog-post-formats
- blog-post-exemples
- blog-description-format - comment décrire un blog (àl'opposé des entrées individuelles, ce qui n'est pas ce que nous sommes en train de faire ici)