blog-post-brainstorming-fr: Difference between revisions

From Microformats Wiki
Jump to navigation Jump to search
mNo edit summary
Line 148: Line 148:
</nowiki></pre>
</nowiki></pre>


== EntryGroup Title ==
== Groupe Entry Titre ==
Not covered by this proposal yet.
Non couvert par cette proposition à cette heure.


== EntryGroup Permalink ==
== Groupe Entry Permalien ==
Not covered by this proposal yet.
Non couvert par cette proposition à cette heure.


== Individual Entry ==
== Entrée Individuelle ==


This corresponds almost exactly to the <code>atom:entry</code> or <code>rss2:item</code> elements. See [[blog-post-examples#Individual_Entry]] for the various forms seen in the wild.
Ceci correspond presque exactement aux éléments <code>atom:entry</code> ou <code>rss2:item</code>. Voir [[blog-post-examples-fr#Entrée_Individuelle]] pour les différentes formes vues dans la jungle.


=== Recommandation Microformat ===
=== Recommandation Microformat ===


* weblog entries MUST be enclosed in a single <code>atom:entry</code> element
* Les entrées de weblog DOIVENT être enveloppées dans un élément unique <code>atom:entry</code>
* <code>atom:entry</code> elements MUST NOT be nested
* Les éléments <code>atom:entry</code> NE DOIVENT PAS être imbriqués
* <code>atom:entry</code> MUST NOT belong to more than one <code>atom:feed</code> element
* <code>atom:entry</code> NE DOIT PAS appartenir à plus d'un élément <code>atom:feed</code>


=== Exemple Transformation ===
=== Exemple Transformation ===
''Note that the string 'atom:entry' is a placeholder for something to be decided later.''
''Notez que la chaîne 'atom:entry' est un gardien de place pour quelque chose devant être décidé plus tard.''


==== Entrées dans bloc existant ====
==== Entrées dans bloc existant ====


Original:
Original :


<pre><nowiki>
<pre><nowiki>
  <div class="entry">
  <div class="entry">
   <h3 id="post-60">
   <h3 id="post-60">
   <a href="http://www.microformats.org/blog/2005/...">Wiki Attack</a>
   <a href="http://www.microformats.org/blog/2005/...">Attaque Wiki</a>
   </h3>
   </h3>
   ... rest of entry ...
   ... reste de l'entrée ...
  </div>
  </div>
</nowiki></pre>
</nowiki></pre>


Transformed:
Transformé :


<pre><nowiki>
<pre><nowiki>
Line 186: Line 186:
  <div class="atom:entry entry">
  <div class="atom:entry entry">
   <h3 id="post-60">
   <h3 id="post-60">
   <a href="http://www.microformats.org/blog/2005/...">Wiki Attack</a>
   <a href="http://www.microformats.org/blog/2005/...">Attaque Wiki</a>
   </h3>
   </h3>
   ... rest of entry ...
   ... reste de l'entrée ...
  </div>
  </div>
  ... additional entries ...
  ... entrées additionnelles ...
</div>
</div>
</nowiki></pre>
</nowiki></pre>
Line 196: Line 196:
==== Entrées n'étant pas dans un bloc existant ====
==== Entrées n'étant pas dans un bloc existant ====


Original:
Original :


<pre><nowiki>
<pre><nowiki>
Line 205: Line 205:
</nowiki></pre>
</nowiki></pre>


Transformed:
Transformé:


<pre><nowiki>
<pre><nowiki>
Line 213: Line 213:
   <strong>Just one problem, Minister.</strong> Last week, Bill Rammell,  
   <strong>Just one problem, Minister.</strong> Last week, Bill Rammell,  
   <br />
   <br />
   ... rest of entry ...
   ... reste de l'entrée
  </div>
  </div>
  ... additional entries ...
  ... entrées additionnelles ...
</div>
</div>
</nowiki></pre>
</nowiki></pre>


Note the additional changes were also made:
Notez les modifications additionnelles aussi produites :  
* <code>&lt;br></code> was made XHTML compliant
* <code>&lt;br></code> a été rendu conforme XHTML
* <code>&lt;a name="..."></code> was converted to a <code>id="..."</code> (''confirm this is OK'')
* <code>&lt;a name="..."></code> a été converti ver un <code>id="..."</code> (''confirmez que c'est OK'')


==== Entrées Disjointes====
==== Entrées Disjointes====


Ignore any existing blocks and treat as the previous case of no block.
Ignorer tout bloc existant et les traiter comme dans le cas précédent de pas de bloc.


== Entry Title ==
== Entrée Titre ==


This corresponds almost exactly to the <code>atom:title</code> or <code>rss2:title</code> elements. See [[blog-post-formats#Titles]] for examples from which we see that there are two fundemental ways titles are used in the wild: at the block level and inline. Our proposal must be capable of handling both forms.
Ceci correspond presque exactement aux éléments <code>atom:title</code> ou <code>rss2:title</code>. Voir [[blog-post-formats-fr#Titres]] pour des exemples à partir desquels nous voyons qu'il y a deux manières fondamentales dont les titres sont utilisés dans la jungle : au niveau bloc et dans la ligne. Notre proposition doit être capable de gérer les deux formes.


=== Microformat Recommandation ===
=== Microformat Recommandation ===


* <code>atom:entry</code>s SHOULD have at most one title
* <code>atom:entry</code>s DEVRAIENT avoir au plus un titre
* block level titles SHOULD be represented using <code>&lt;h#></code>, the first such element in a <code>atom:entry</code> should be considered the title; this need not be marked up or identified in any other way as the title
* les titres au niveau bloc DEVRAIENT être représentés en utilisant <code>&lt;h#></code>, le premier élément <code>atom:entry</code> devrait être considéré comme le titre ; ceci devrait ne pas être balisé ou identifié sous quelque autre forme que le titre
* inline titles MUST be marked as <code>atom:title</code>; it is also possible to do this using block level formatting such as <code>&lt;div></code>, but this is discouraged
* les titres dans la ligne DOIVENT être balisés sous <code>atom:title</code> ; il est aussi possible de faire ça en utilisant la mise en forme au niveau bloc telle que <code>&lt;div></code>, mais ceci est découragé


=== Discussion : pourquoi pas toujours <code>&lt;h#></code>? ===
=== Discussion : pourquoi pas toujours <code>&lt;h#></code>? ===


Using CSS <code>display: inline</code>, block level elements can be converted to inline elements. Unfortunately, we cannot nest <code>&lt;h#></code> inside of a <code>&lt;p></code> block to achieve the correct effect. I.e. we cannot convert ...
En utilisant CSS <code>display: inline</code>, les éléments de niveau bloc peuvent être convertis vers des éléments dans la ligne. Malheureusement, nous ne pouvons pas imbriquer <code>&lt;h#></code> à l'intérieur d'un bloc <code>&lt;p></code> pour parvenir à l'effet correct. C'est à dire que nous ne pouvons pas convertir ...  


<pre><nowiki>
<pre><nowiki>
<p><strong>The Title</strong>: The Text...</p>
<p><strong>Le Titre</strong> : Le Texte...</p>
</nowiki></pre>
</nowiki></pre>


... into ...
... en ...


<pre><nowiki>
<pre><nowiki>
<p><h3 style="display: inline">The Title</h3>: The Text ...</p>
<p><h3 style="display: inline">Le Titre</h3> : Le Texte...</p>
</nowiki></pre>
</nowiki></pre>


... because the XHTML will not validate. Also...
... parce que le XHTML ne validera pas. Aussi...


<pre><nowiki>
<pre><nowiki>
<h3 style="display: inline">The Title</h3><p>: The Text ...</p>
<h3 style="display: inline">Le Titre</h3><p> : Le Texte...</p>
</nowiki></pre>
</nowiki></pre>


... will not work because presentation effect will be different than what the user intends (because the <code>&lt;p></code> will introduce a line break).
... ne fonctionnera pas parce que l'effet de présentation sera différent de ce que l'utilisateur désire (parce qu le <code>&lt;p></code> introduira un saut de ligne).


=== Exemple Transformation ===
=== Exemple Transformation ===


''Note that the string 'atom:title' is a placeholder for something to be decided later.''
''Notez que la chaîne 'atom:title' est un gardien de place pour quelque chose devant être décidé plus tard.''


==== Header dans <code>&lt;h#></code> block ====
==== Header dans le bloc <code>&lt;h#></code> ====
Original (and Final):
Original (et Final) :


<pre>
<pre>
<div class="atom:entry">
<div class="atom:entry">
  <h2 id="post-59">Web Essentials Audio</h2>
  <h2 id="post-59">Web Essentials Audio</h2>
  ... reset of entry ...
  ... réinitialisation de l'entrée ...
</div>
</div>
</pre>
</pre>


No transformation is needed -- the blog-post microformat will recognize this as the <code>atom:title</code>.
Aucune transformation n'est requise -- le microformat blog-post reconnaîtra ça come le  <code>atom:title</code>.


==== Header dans un autre élément bloc  ====
==== Header dans un autre élément bloc  ====


Original:
Original :


<pre>
<pre>
Line 285: Line 285:
</pre>
</pre>


Transformed (the header level is to taste):
Transformé (le niveau titre est à essayer) :


<pre>
<pre>
Line 293: Line 293:
</pre>
</pre>


It is possible to add <code>class"atom:title"</code> to the <code>div</code> but we recommend against it. However, we recognize that there may be certain [http://microformats.org/wiki/blog-post-formats#Discussion_Forum_.2F_Bulletin_Board_Formats BB Tools] that making this change may be too difficult.
Il est possible d'ajouter <code>class"atom:title"</code> à la <code>div</code> mais nous ne le recommandons pas. Néanmoins nous reconnaissons qu'il peut y avoir certains  [[blog-post-formats-fr#Forum_de_Discussion_.2F_Formats_de_Bulletin_Board Outils de BB]] que produire ce changement puisse être trop difficile.


==== Header dans l'élément dans la ligne  ====
==== Header dans l'élément dans la ligne  ====


Original:
Original :


<pre><nowiki>
<pre><nowiki>
Line 304: Line 304:
   <strong>Just one problem, Minister.</strong> Last week, Bill Rammell,  
   <strong>Just one problem, Minister.</strong> Last week, Bill Rammell,  
   <br />
   <br />
   ... rest of entry ...
   ... reste de l'enrée ...
  </div>
  </div>
</nowiki></pre>
</nowiki></pre>


Transformed:
Transformé :


<pre><nowiki>
<pre><nowiki>
Line 315: Line 315:
   <strong class="atom:title">Just one problem, Minister.</strong> Last week, Bill Rammell,  
   <strong class="atom:title">Just one problem, Minister.</strong> Last week, Bill Rammell,  
   <br />
   <br />
   ... rest of entry ...
   ... reste de l'entrée ...
  </div>
  </div>
</nowiki></pre>
</nowiki></pre>


== Entry Content ==
== Entrée Contenu ==


This roughly corresponds to <code>atom:content</code> and/or <code>atom:summary</code> elements. See [[blog-post-examples#Entry_Content]] for the various forms seen in the wild.
Ceci correspond en gros aux éléments <code>atom:content</code> et/ou <code>atom:summary</code>. Voir [[blog-post-examples-fr#Entrée_Contenu]] pour les différentes formes vues dans la jungle.


=== Discussion : le problème du découpage du contenu ===  
=== Discussion : le problème du découpage du contenu ===  
Line 574: Line 574:
A permalink is called '''canonical''' if it is the best representation of the URI for that entry; the definition of what 'best representation' is is entirely at the discretion of the weblog's publisher. We recommend that weblogs use canonical URIs because it allows "threading" together multiple posts and sources with byte-level comparisons. In general, the canonical URI should be the link used in an Atom entry.
A permalink is called '''canonical''' if it is the best representation of the URI for that entry; the definition of what 'best representation' is is entirely at the discretion of the weblog's publisher. We recommend that weblogs use canonical URIs because it allows "threading" together multiple posts and sources with byte-level comparisons. In general, the canonical URI should be the link used in an Atom entry.


===  Microformat Recommandation ===
=== Recommandation Microformat ===


* an Entry MUST NOT have more than one permalink marked as <code>atom:link</code>
* an Entry MUST NOT have more than one permalink marked as <code>atom:link</code>
Line 583: Line 583:
=== Exemple Transformations ===
=== Exemple Transformations ===


Original:
Original :


<pre><nowiki>
<pre><nowiki>
Line 597: Line 597:
</nowiki></pre>
</nowiki></pre>


Transformation:
Transformation :


<pre><nowiki>
<pre><nowiki>
Line 611: Line 611:
</nowiki></pre>
</nowiki></pre>


Original:
Original :


<pre><nowiki>
<pre><nowiki>
Line 634: Line 634:
</nowiki></pre>
</nowiki></pre>


== Entry Datetimes - Creation and Modified ==
== Entrée Datetimes - Création et Modified ==
Weblogs typically display (in HTML) the creation time of their posts (roughly but not exactly corresponding to <code>atom:published</code>) and not so much the last modified time (<code>atom:updated</code>).
Weblogs typically display (in HTML) the creation time of their posts (roughly but not exactly corresponding to <code>atom:published</code>) and not so much the last modified time (<code>atom:updated</code>).


Line 642: Line 642:
See [[blog-post-formats#Datetimes-fr]]
See [[blog-post-formats#Datetimes-fr]]


=== Microformat Recommandation ===
=== Recommandation Microformat ===


* date headers between weblog entries are outside of this microformat
* date headers between weblog entries are outside of this microformat
Line 654: Line 654:
''Note that the string 'atom:published' is a placeholder for something to be decided later.''
''Note that the string 'atom:published' is a placeholder for something to be decided later.''


Original:
Original :


<pre>
<pre>
Line 660: Line 660:
</pre>
</pre>


Transformed:
Transformé :


<pre>
<pre>
Line 668: Line 668:
</pre>
</pre>


== Entrée Author ==
== Entrée Auteur ==
A work in progress
A work in progress


=== Microformat Recommandation ===
=== Recommandation Microformat ===


* Entry Authors SHOULD be inside a <code>&lt;address></code> block
* Entry Authors SHOULD be inside a <code>&lt;address></code> block


= Possible Atom to microformat(s) mapping =
= Atom Possible vers mapping microformat(s) =


* feed - "hfeed"
* feed - "hfeed"
** title - imply from &lt;title&gt; element
** title - imply from &lt;title&gt; element
** subtitle - re-use "description" per vCalendar, iCalendar, [[hcalendar|hCalendar]], [[xfolk|xFolk]], and [[hreview|hReview]].
** subtitle - re-use "description" per vCalendar, iCalendar, [[hcalendar-fr|hCalendar]], [[xfolk-fr|xFolk]], and [[hreview-fr|hReview]].
** id - imply from page URL
** id - imply from page URL
** updated - "updated"
** updated - "updated"
** author - "author", if none found, imply from &lt;address&gt; (which SHOULD be used anyway), either way, MUST be an [[hcard|hCard]].
** author - "author", if none found, imply from &lt;address&gt; (which SHOULD be used anyway), either way, MUST be an [[hcard-fr|hCard]].
** generator - set by the converting script / XSLT, omit from hAtom.  Similar to PRODID in [[hcalendar|hCalendar]].
** generator - set by the converting script / XSLT, omit from hAtom.  Similar to PRODID in [[hcalendar|hCalendar]].
** logo - re-use "logo" from [[hcard|hCard]]
** logo - re-use "logo" from [[hcard-fr|hCard]]
** icon - define new [[rel-icon]] (see XHTML2) for this
** icon - define new [[rel-icon]] (see XHTML2) for this
** category - [[rel-tag]] + [[rel-directory]]
** category - [[rel-tag-fr]] + [[rel-directory-fr]]
** rights - [[rel-license]]
** rights - [[rel-license-fr]]
* entry - "hentry"
* entry - "hentry"
** title - "headline"
** title - "headline"
** link - [[rel-bookmark]] from HTML4
** link - [[rel-bookmark-fr]] from HTML4
** id - imply from permalink
** id - imply from permalink
** summary - "excerpt"
** summary - "excerpt"
Line 696: Line 696:
** published - "published"
** published - "published"
** updated - "updated"
** updated - "updated"
** author - "author", MUST be [[hcard|hCard]], SHOULD be &lt;address&gt;
** author - "author", MUST be [[hcard-fr|hCard]], SHOULD be &lt;address&gt;
** rights - [[rel-license]]
** rights - [[rel-license-fr]]


== Plusieurs fils sur une page ==
== Plusieurs fils sur une page ==

Revision as of 05:39, 24 July 2006

Participants à la Discussion

Editeurs

Auteurs

(Traduction en cours par Christophe Ducamp à mettre en to-do-fr)

Objectif

Le 'blog-post-microformat' propose une codification de la manière dont les billets de blogs sont identifiés dans les blogs. Il est espéré que ceci devrait être considéré pour être 'expansif' : par exemple la proposition pourrait être utilisé sur CNN.com pour baliser les articles d'actualités et les pages résumé.

Terminologie

Cette section explore la terminologie qui devrait être utilisée pour discuter d'un microformat de billet de blog. Pour qu'il soit plus facile de parler des différents types de terminologie, nous utilisons une version d'espace-nom ala XML de façon à ce que nous puissions produire des déclarations comme atom:entry est approximativement équivalent à rss20:feed, atom:feed/atom:link@relalternate est approximativement équivalent à rss20:channel/rss20:link ou atom:author n'est pas équivalent à rss:entry/rss:author (parce que RSS 2.0 est uniquement la définition d'une adresse email).

Terminologie Commune dans les weblogs

En rédigeant les blog-post-formats-fr#Outils, on peut voir qu'il y a peu de standardisation parmi les outils ou même dans un outil individuel (tel que 'blogger') pour les noms des éléments des billets de blogs. Il existe néanmoins beaucoup d'éléments communs, comprenant :

  • un conteneur pour tous les billets/entrées
  • un conteneur pour les billets individuels
  • le contenu du billet, qui peut être complet, résumé avec un lien vers le lien complet, ou deux paragraphes avec des trucs javascript/CSS pour révéler le reste du contenu
  • le nom de l'auteur
  • la date du billet (dans beaucoup beaucoup de formats)

Bien que cela puisse ressembler un peu à un petit-déjeuner pour chien, il y a généralement une quantité raisonnable de rigueur derrière la présentation, parce que les fils Atom et/ou RSS peuvent être aussi produits à partir des mêmes outils.

En outre, en développant un microformat pour les billets de weblog, nous voulons être prudents pour ne pas casser n'importe quel (ou beaucoup) de gabarits. Notez que beaucoup de gabarits de weblog devront être mis à jour car ils produisent quelque chose comme du HTML pauvrement construit plutôt que du XHTML clair.

Terminologie Atom

Voir ici pour la spec et blog-post-formats-fr#Atom pour l'analyse.

  • atom:feed - (composite) une collection d'entrées plus de l'information à leur propos.
    • atom:author - (composite) l'auteur d'un fil (peut contenir atom:email, atom:name, atom:uri)
    • atom:id - un identifiant permanent pour un fil
    • atom:title - le titre d'un atom:entry ou un atom:feed
    • atom:updated - la dernière fois que le fil a été mis à jour
    • atom:link@relalternate - la page d'accueil du fil
    • atom:link@relself - l'URI du fil (où elle peut être téléchargée)
    • atom:entry - (composite) une entrée dans le fil
      • atom:content - le contenu du fil
      • atom:summary - un résumé du contenu du fil
      • atom:entry/link - l'URI permanente de l'entrée
      • atom:published - le moment de la création initiale ou la première disponibilité de l'entrée

Terminologie RSS 2.0

Regardez ici la spécification et blog-post-formats-fr#RSS pour l'analyse. Il y a beaucoup plus d'éléments dans RSS mais cela couvre ceux les plus communément utilisés. analysis.

  • rss2:channel - (composite) une collection d'entrées plus de l'information à leur propos
    • rss2:author - (composite) l'auteur d'un fil (peut contenir atom:email, atom:name, atom:uri)
    • rss2:link - L'URL vers le site web HTML correspondant au canal (comparer à atom:link@relalternate)
    • rss2:title - le titre d'un rss2:channel ou un rss2:item
    • rss2:pubDate - La date de publication pour le contenu dans le canal.
    • rss2:item - (composite) une entrée dans le fil
      • rss2:item/link - L'URL de l'item. Notez que cela peut ne pas être un lien permanent pour l'item ; ce peut être un lien vers quelque autre page sur l'Internet dont traite le rss2:item
      • rss2:description - Le synopsis item [sic]. Il n'y pas d'indication spéciale si c'est le contenu complet d'une entrée, un résumé ou une précision de ce que le rss2:item/link est en train de pointer
      • rss2:author - adresse email de l'auteur de l'item

Recommandation

Atom a un mécanisme beaucoup plus précis pour définir les fils de syndication et les données de weblog. Une transformation mécanique à partir de Atom -> RSS mènera toujours à un fil RSS correct ; une traduction RSS -> Atom devrait prendre une décision parmi de multiples définitions qui peuvent ne pas toujours être correctes. Par exemple, le format du balisage, le rôle d'un auteur, ou le sens d'un lien.

IMPORTANT : nous parlerons de choses comme le 'balisage d'éléments atom:feed' ; considérez cela purement comme une chose conceptuelle. Le texte 'atom:feed' n'apparaîtra pas dans le microformat XHTML -- nous pourrons décider plus tard d'utiliser la phrase exacte 'atom_feed', 'feed', 'items' ou 'googlybear'. Dans le cas où il n'y a pas de terminologie atom claire ou applicable, nous utiliserons 'weblog:xxx'.

Eléments Découverts

Cette section explore l'information découverte à partir des blog-post-formats en utilisant la terminologie discutée au-dessus. Nous nous concentrerons seulement sur les principaux éléments des billets de weblog :

  • l'Entrée Groupe
  • L'Entry individuelle
  • l'Entrée Titre
  • l'Entrée Contenu
  • l'Entrée Permalink
  • l'Entrée Datetimes

A cette heure, la codification des éléments suivants majeurs seront différés car il y a/peut avoir un chevauchement avec d'autres microformats qui devraient être explorés plus en profondeur.

  • L'EntréeGroupe Titre
  • L'EntréeGroupe Permalien
  • L'Entrée Posteur/Auteur - en particulier, est-ce que la hCard devrait être utilisée ?

Des entrées plus approfondies provenant de la communauté devraient être appréciées ici

GroupeEntry

En gros, ceci correpond à 'atom:feed' ou 'rss2:channel' (en particulier, les items dans ces éléments XML). Voir blog-post-examples-fr#GroupeEntry pour les différentes formes dans la jungle.

Recommandation Microformat

  • les pages weblog (y compris les pages d'accueil, archives, pages de catégories, pages tag et ainsi de suite) qui peuvent contenir plusieurs entrées DOIVENT enfermer les entrées dans un élément atom:feed
  • les pages weblog PEUVENT avoir plusieurs éléments atom:feed enfermant différents groupes d'entrées
  • les éléments atom:feed ne DOIVENT PAS être imbriqués
  • les pages weblog qui ont exactement une entrée PEUVENT utiliser le atom:feed

Exemple Transformation

Notez que la chaîne 'atom:feed' est un gardien de place pour quelque chose devant être décidé plus tard.

Original (évidemment, s'il n'y a pas d'élément de bloc GroupeEntry, un peut être ajouté) :

<div id="content">
 <h2 id="home-title">
  Dernières nouvelles des microformats
  <a href="http://www.microformats.org/feed/" title="lien vers le fil RSS" id="feed-link">
   <img src="/img/xml.gif" width="23" height="13" alt="XML" />
  </a>
 </h2>

 <div class="entry">
  <h3 id="post-60">
   <a href="http://www.microformats.org/blog/2006/...">Attaque Bliki</a>
  </h3>
  ...
 </div>

 ...
</div>

Transformé :

<div id="content" class="atom:feed">
 <h2 id="home-title">
  Dernières nouvelles des microformats
  <a href="http://www.microformats.org/feed/" title="lien vers le fil RSS" id="feed-link">
   <img src="/img/xml.gif" width="23" height="13" alt="XML" />
  </a>
 </h2>

 <div class="entry">
  <h3 id="post-60">
   <a href="http://www.microformats.org/blog/2006/...">Attaque Bliki</a>
  </h3>
  ...
 </div>

 ...
</div>

Groupe Entry Titre

Non couvert par cette proposition à cette heure.

Groupe Entry Permalien

Non couvert par cette proposition à cette heure.

Entrée Individuelle

Ceci correspond presque exactement aux éléments atom:entry ou rss2:item. Voir blog-post-examples-fr#Entrée_Individuelle pour les différentes formes vues dans la jungle.

Recommandation Microformat

  • Les entrées de weblog DOIVENT être enveloppées dans un élément unique atom:entry
  • Les éléments atom:entry NE DOIVENT PAS être imbriqués
  • atom:entry NE DOIT PAS appartenir à plus d'un élément atom:feed

Exemple Transformation

Notez que la chaîne 'atom:entry' est un gardien de place pour quelque chose devant être décidé plus tard.

Entrées dans bloc existant

Original :

 <div class="entry">
  <h3 id="post-60">
   <a href="http://www.microformats.org/blog/2005/...">Attaque Wiki</a>
  </h3>
  ... reste de l'entrée ...
 </div>

Transformé :

<div class="atom:feed">
 <div class="atom:entry entry">
  <h3 id="post-60">
   <a href="http://www.microformats.org/blog/2005/...">Attaque Wiki</a>
  </h3>
  ... reste de l'entrée ...
 </div>
 ... entrées additionnelles ...
</div>

Entrées n'étant pas dans un bloc existant

Original :

 <a name="112877372228959075">&nbsp;</a>
 <br>
  <strong>Just one problem, Minister.</strong> Last week, Bill Rammell, 
 <br>

Transformé:

<div class="atom:feed">
 <div class="atom:entry" id="112877372228959075">
  <br />
   <strong>Just one problem, Minister.</strong> Last week, Bill Rammell, 
  <br />
  ... reste de l'entrée
 </div>
 ... entrées additionnelles ...
</div>

Notez les modifications additionnelles aussi produites :

  • <br> a été rendu conforme XHTML
  • <a name="..."> a été converti ver un id="..." (confirmez que c'est OK)

Entrées Disjointes

Ignorer tout bloc existant et les traiter comme dans le cas précédent de pas de bloc.

Entrée Titre

Ceci correspond presque exactement aux éléments atom:title ou rss2:title. Voir blog-post-formats-fr#Titres pour des exemples à partir desquels nous voyons qu'il y a deux manières fondamentales dont les titres sont utilisés dans la jungle : au niveau bloc et dans la ligne. Notre proposition doit être capable de gérer les deux formes.

Microformat Recommandation

  • atom:entrys DEVRAIENT avoir au plus un titre
  • les titres au niveau bloc DEVRAIENT être représentés en utilisant <h#>, le premier élément atom:entry devrait être considéré comme le titre ; ceci devrait ne pas être balisé ou identifié sous quelque autre forme que le titre
  • les titres dans la ligne DOIVENT être balisés sous atom:title ; il est aussi possible de faire ça en utilisant la mise en forme au niveau bloc telle que <div>, mais ceci est découragé

Discussion : pourquoi pas toujours <h#>?

En utilisant CSS display: inline, les éléments de niveau bloc peuvent être convertis vers des éléments dans la ligne. Malheureusement, nous ne pouvons pas imbriquer <h#> à l'intérieur d'un bloc <p> pour parvenir à l'effet correct. C'est à dire que nous ne pouvons pas convertir ...

<p><strong>Le Titre</strong> : Le Texte...</p>

... en ...

<p><h3 style="display: inline">Le Titre</h3> : Le Texte...</p>

... parce que le XHTML ne validera pas. Aussi...

<h3 style="display: inline">Le Titre</h3><p> : Le Texte...</p>

... ne fonctionnera pas parce que l'effet de présentation sera différent de ce que l'utilisateur désire (parce qu le <p> introduira un saut de ligne).

Exemple Transformation

Notez que la chaîne 'atom:title' est un gardien de place pour quelque chose devant être décidé plus tard.

Header dans le bloc <h#>

Original (et Final) :

<div class="atom:entry">
 <h2 id="post-59">Web Essentials Audio</h2>
 ... réinitialisation de l'entrée ...
</div>

Aucune transformation n'est requise -- le microformat blog-post reconnaîtra ça come le atom:title.

Header dans un autre élément bloc

Original :

<div class="atom:entry">
 <div class"header">Web Essentials Audio</div>
</div>

Transformé (le niveau titre est à essayer) :

<div class="atom:entry">
 <h3>Web Essentials Audio</h3>
</div>

Il est possible d'ajouter class"atom:title" à la div mais nous ne le recommandons pas. Néanmoins nous reconnaissons qu'il peut y avoir certains blog-post-formats-fr#Forum_de_Discussion_.2F_Formats_de_Bulletin_Board Outils de BB que produire ce changement puisse être trop difficile.

Header dans l'élément dans la ligne

Original :

 <div class="atom:entry" id="112877372228959075">
  <br />
   <strong>Just one problem, Minister.</strong> Last week, Bill Rammell, 
  <br />
  ... reste de l'enrée ...
 </div>

Transformé :

 <div class="atom:entry" id="112877372228959075">
  <br />
   <strong class="atom:title">Just one problem, Minister.</strong> Last week, Bill Rammell, 
  <br />
  ... reste de l'entrée ...
 </div>

Entrée Contenu

Ceci correspond en gros aux éléments atom:content et/ou atom:summary. Voir blog-post-examples-fr#Entrée_Contenu pour les différentes formes vues dans la jungle.

Discussion : le problème du découpage du contenu

The last item above (content broken into multiple sections) introduces a few unique problems. It is not sufficient to enclose all the different content sections in a atom:content element, as the following example illustrates:

 <div class="atom:entry">
  <div class="atom:content">
   ... first part of the content ...
   "Read More"
   ... second part of the content ...
  </div>
 </div>

"Read More" is not part of the content! Therefore, we propose that multiple content sections be allowed in a single atom:entry. The concatenation of all these content blocks will define the complete content:

 <div class="atom:entry">
  <div class="atom:content">
   ... first part of the content ...
  </div>
   "Read More"
  <div class="atom:content">
   ... second part of the content ...
  </div>
 </div>

The same argument is applicable to atom:summary.

Recommandation Microformat

  • an atom:entry MAY have zero or more atom:summary sections. There is no requirement that different representations of the same entry (on different URIs) use the same summaries.
  • an atom:entry MAY have zero or more atom:content sections. The serial concatenation of all the atom:content sections within the entry MUST represent the complete content of the entry. Note that the rule here is slightly different than Atom which only allows one atom:content.

Exemple Transformation

Note that the strings 'atom:summary' and 'atom:content' (etc.) are placeholders for something to be decided later.

Entrée avec contenu résumé

Original:

<div class="inlineBlog">
 <h3 id="a003068">
  <a href="http://thecommunityengine.com/h.../xfolk_vegomatic.html" class="taggedlink">xFolk Veg-o-matic Alpha</a>
 </h3>
 <p class="abstract extended">
  We provide a way to surf the web and slice and dice information you find there into your own custom output stream.
 </p>
 ... some tag and category stuff ...
 <p>
  The folks at ... the rest of the content
 </p>
 <p class="extended">
  <a href="http://thecommunityengine.com/.../xfolk_vegomatic.html#more">Continue reading "xFolk Veg-o-matic Alpha"</a>
 </p>
 ...
</div>

Transformation:

<div class="inlineBlog atom:entry">
 <h3 id="a003068">
  <a href="http://thecommunityengine.com/h.../xfolk_vegomatic.html" class="taggedlink atom:permalink">xFolk Veg-o-matic Alpha</a>
 </h3>
 <p class="abstract extended">
  We provide a way to surf the web and slice and dice information you find there into your own custom output stream.
 </p>
 ... some tag and category stuff ...
 <div class="atom:summary">
  <p>
   The folks at ... the rest of the content
  </p>
 </div>
 <p class="extended">
  <a href="http://thecommunityengine.com/.../xfolk_vegomatic.html#more">Continue reading "xFolk Veg-o-matic Alpha"</a>
 </p>
 ...
</div>

Notes:

  • we didn't do anything with the "abstract" section -- this is a discussion for another day
  • we didn't include the tag stuff in the summary, and probably wouldn't if this was the complete content

Entrée avec contenu complet

Original:

<div class="entry single">
 <h2 id="post-61">Class attributes are about more than styling</h2>

 <p>When people talk about microformats, ... </p>
 
 <blockquote cite="http://www.w3.org/TR/REC-html40/struct/global.html#h-7.5.2">
  ... quoted text from elsewhere
 </blockquote>

 <p>There’s a couple of points I’d like to highlight here:</p>
 
 ... more content ...

 <h4 class="tags">Technorati Tags:</h4>
 <ul class="tags">
  <li><a href="http://www.technorati.com/tag/css" rel="tag">css</a></li>
  ...
 </ul>

 <ul class="post-info">
  ... footer stuff ...
 </ul>
</div>

Transformation:

<div class="entry single atom:entry">
 <h2 id="post-61">Class attributes are about more than styling</h2>

 <div class="atom:content">
  <p>When people talk about microformats, ... </p>

  <blockquote cite="http://www.w3.org/TR/REC-html40/struct/global.html#h-7.5.2">
   ... quoted text from elsewhere
  </blockquote>

  <p>There’s a couple of points I’d like to highlight here:</p>

  ... more content ...
 </div>

 <h4 class="tags">Technorati Tags:</h4>
 <ul class="tags">
  <li><a href="http://www.technorati.com/tag/css" rel="tag">css</a></li>
  ...
 </ul>

 <ul class="post-info">
  ... footer stuff ...
 </ul>
</div>

Notes:

  • the only thing that really needed to be done is enclose the content
  • my preference would be to move the post id to the atom:entry

Entrée avec contenu découpé (plusieurs sections)

Original:

<div class="blogbody">
 <a name="008148"></a>

 <div class="title">
  Face to face: why places will continue to exist
 </div>

 <div class="posted">
  <strong>Brian Micklethwait (London)</strong>
    
  <a href="...">Science & Technology</a>
 </div>

 <p>It is not just that I dislike filling in forms....</p>
 ... the first section of the content ...

 ... this link makes the extended section show ...
 <span id="varP8148">
  <img src="http://www.samizdata.net/blog/img/bullet_tri.gif" width="16" height="10" alt="" />
  <a href="..." onclick="showMore(8148,'...');return false;">
   Read more.
  </a>
 </span>
  
 <div id="varXYZ8148" style="display: none">
  <p>The very gadgets – computers linked...</p>
  ... the rest of the extended content ...

  ... this link makes the extended section hide ...
  <img src="..." width="16" height="10" alt="" />
   <a href="#008148" onclick="showMore(8148,0);return true;">
    Read less.
   </a>
  </div>
 </div>
</div>

Transformation:

<div class="blogbody atom:entry" id="008148">
 <h3>
  Face to face: why places will continue to exist
 </h3>

 <div class="posted">
  <strong>Brian Micklethwait (London)</strong>
    
  <a href="...">Science & Technology</a>
 </div>

 <div class="atom:content">
  <p>It is not just that I dislike filling in forms....</p>
  ... the first section of the content ...
 </div>

 ... this link makes the extended section show ...
 <span id="varP8148">
  <img src="http://www.samizdata.net/blog/img/bullet_tri.gif" width="16" height="10" alt="" />
  <a href="..." onclick="showMore(8148,'...');return false;">
   Read more.
  </a>
 </span>
  
 <div id="varXYZ8148" style="display: none">
  <div class="atom:content">
   <p>The very gadgets – computers linked...</p>
   ... the rest of the extended content ...
  </div>

  ... this link makes the extended section hide ...
  <img src="..." width="16" height="10" alt="" />
   <a href="#008148" onclick="showMore(8148,0);return true;">
    Read less.
   </a>
  </div>
 </div>
</div>

Note:

  • atom:content divs were created for each the of the text sections, so that non-content coded would not be incorrectly marked
  • there are two atom:content sections; together they make the complete content
  • the conversion of <div class="header"> to <h3>
  • the addition of atom:entry as needed
  • the removal of the <a name="008148"> in favor of placing an id on the atom:entry
  • further manipulation of the author could be done
  • further manipulation of the category could be done

Entrée Permalink

Permalinks roughly correspond to atom:link. See blog-post-examples#Entry_Permalinks for examples.

A permalink is called canonical if it is the best representation of the URI for that entry; the definition of what 'best representation' is is entirely at the discretion of the weblog's publisher. We recommend that weblogs use canonical URIs because it allows "threading" together multiple posts and sources with byte-level comparisons. In general, the canonical URI should be the link used in an Atom entry.

Recommandation Microformat

  • an Entry MUST NOT have more than one permalink marked as atom:link
  • permalinks SHOULD be absolute URIs
  • permalinks SHOULD be canonical
  • permalinks SHOULD be the same as the atom:link used in syndication feeds

Exemple Transformations

Original :

<div class="entry">
 <h3 id="post-45">
  <a 
   href="http://www.microformats.org/blog/2005/08/21/foobar-microformats/" 
   rel="bookmark"
   title="Permanent Link to FooBar Microformats">FooBar Microformats</a>
  </h3>
   ...
</div>

Transformation :

<div class="atom:entry entry">
 <h3 id="post-45">
  <a 
   href="http://www.microformats.org/blog/2005/08/21/foobar-microformats/" 
   rel="atom:link bookmark"
   title="Permanent Link to FooBar Microformats">FooBar Microformats</a>
  </h3>
   ...
</div>

Original :

<h3>YET ANOTHER INSTANCE OF THE WORLD FINALLY CATCHING UP TO THE BLOG</h3>
<p>Today's news: Neuticles win ... award.</p>
<p class="posted">
Posted by judi on October  7, 2005 at 05:00 PM |
<a href="http://blogs.herald.com/dave_barrys_blog/2005/10/yet_another_ins.html">Permalink</a>
</p>

Transformation:

<div class="atom:entry">
 <h3>YET ANOTHER INSTANCE OF THE WORLD FINALLY CATCHING UP TO THE BLOG</h3>
 <p>Today's news: Neuticles win ... award.</p>
 <p class="posted">
 Posted by judi on October  7, 2005 at 05:00 PM |
 <a rel="atom:link" href="http://blogs.herald.com/dave_barrys_blog/2005/10/yet_another_ins.html">Permalink</a>
</p>

Entrée Datetimes - Création et Modified

Weblogs typically display (in HTML) the creation time of their posts (roughly but not exactly corresponding to atom:published) and not so much the last modified time (atom:updated).

Also see datetime-design-pattern for more information on specifying datetimes. The recommendation here is styled after datetimes in hcalendar.

Formes vues dans la jungle

See blog-post-formats#Datetimes-fr

Recommandation Microformat

  • date headers between weblog entries are outside of this microformat
  • atom:published SHOULD be indicated by an abbr element around the human readable version of the date or datetime.
    • the 'class' attribute MUST indicate atom:published
    • the 'title' attribute MUST be a complete datetime, in the format of datetime-design-pattern
  • likewise for atom:updated, if present

Exemple transformation

Note that the string 'atom:published' is a placeholder for something to be decided later.

Original :

<a href"...">Friday, September 30th, 2005 at 12:31 pm</a>

Transformé :

<a href"..."><abbr 
 class"atom:published" 
 title"200050930T12:31:01-0500">Friday, September 30th, 2005 at 12:31 pm</abbr></a>

Entrée Auteur

A work in progress

Recommandation Microformat

  • Entry Authors SHOULD be inside a <address> block

Atom Possible vers mapping microformat(s)

  • feed - "hfeed"
    • title - imply from <title> element
    • subtitle - re-use "description" per vCalendar, iCalendar, hCalendar, xFolk, and hReview.
    • id - imply from page URL
    • updated - "updated"
    • author - "author", if none found, imply from <address> (which SHOULD be used anyway), either way, MUST be an hCard.
    • generator - set by the converting script / XSLT, omit from hAtom. Similar to PRODID in hCalendar.
    • logo - re-use "logo" from hCard
    • icon - define new rel-icon (see XHTML2) for this
    • category - rel-tag-fr + rel-directory-fr
    • rights - rel-license-fr
  • entry - "hentry"
    • title - "headline"
    • link - rel-bookmark-fr from HTML4
    • id - imply from permalink
    • summary - "excerpt"
    • content - "content"
    • published - "published"
    • updated - "updated"
    • author - "author", MUST be hCard, SHOULD be <address>
    • rights - rel-license-fr

Plusieurs fils sur une page

Post hAtom 1.0: support multiple feeds on a single page. Changes from above.

  • feed
    • title - "headline", same as entry
    • id - define new rel-canonical microformat for this.
    • author - "author" required.
  • entry

Discussion

titre du fil

I initially thought "fn" would make sense for the feed title, but having looked at some blogs/feeds, though in many cases the title of the blog/feed *is* the name of the blog/feed, this is often not the case.

Two examples:

  1. . Some blog titles consist of the blog name and the date, e.g. Scripting News does this.
  2. . Some blog titles consist of the blog name and a short temporary phrase or saying

I have seen both of these in the wild often enough to believe that blog title and blog name are not the same, thus it is inappropriate to re-use "fn" from hCard, since the feed title does not mean the same thing as the *name* of the feed. Thus I have removed the suggestion to re-use "fn" for feed title, and instead propose re-using "headline" from the entry, which does appear to have the same semantic.

Possibilités Supplémentaires

More post hAtom 1.0 thoughts:

  • entry
    • summary - "excerpt" or "abstract"
    • contributor - "contributor"
    • source - use <blockquote cite="">, put source in cite attribute.

Possible Uses

This section describes potential applications for a blog post microformat

Usages Transformationnels

By transformational, we mean feeding a weblog post to some sort of transformation tool (such as XSLT) to produce a different version of the post fit for a different use.

Imprimer les Billets de Blogs

Reblogging

  • ZDNet has a reblog button that would be made obsolete (or could be substantially improved) by use of this microformat
  • Reblog.com was the inspiration for this idea. This may be renamed RedirectThis?

Usages d'Archives

By 'archival', we mean taking weblog entries and placing them in a database for later analysis, searching, aggregation and so forth.

Database Personnelle

Moteur de Recherche

Blogs avec Texte Partiels

Partial content blogs can be created by producing the full html content of a blog entry but not marking it up as such. The atom:summary portion of that entry can be marked up as summary, or could be written up and placed in a hidden block element within the html. hAtom parsers would ignore the unannotated content and produce summary information only.

Obstacles

Header Tag pour Entry Title?

--Bryan 14:55, 14 Aug 2005 (PDT)

Many weblog CMSes allow for concurrent publishing of entries in the following ways:

  • multiple entries on a page (an "Index," monthly archive, category archive, etc. see Example)
  • one entry on a page (see Example)

Early attempts at blog-post-formats have set the title of the blog post to use the h3 tag.

At least where individual entry pages are concerned (and possible including indexes and archives), I recommend using h1 for the entry title, given that the entry is by far the most important chunk of information on the page, and it's what we'd want search engines to recognize as such. In the case where the h1 was used for the site title, fears about "losing" this information should be allayed by simply including the site name in the title tag, after the title of the article / entry / post.

Whether an h3 or h1 is used is irrelevant, the semantics will be applied with classnames. This is a non-issue. --RyanKing 22:35, 18 Aug 2005 (PDT)


Voir aussi