HTML 5 : quel sens donner à la balise
 ?

Cet article de Bruce Lawson aborde le sujet de la balise HTML 5  <article> qui est très utile puisqu'elle donne de nouvelles possibilités très intéressantes pour la structuration des documents HTML.

Le problème est qu'on trouve sur le web beaucoup de sémantiques différentes associées à cette balise <article>.

Bruce Lawson indique qu'il ne faut pas penser à <article> comme un article de journal (c'est le sens qu'on lui donne le plus souvent) mais comme un simple élément discret.

Avec cette sémantique, <article> peut représenter n'importe quelle granularité (aussi bien un email dans une messagerie qu'un tweet individuel dans un client Twitter. Cela a pour conséquence immédiate qu'il n'y a pas de granularité minimale induite par la balise <article> (qui peut d'ailleurs contenir d'autres balises <article>) : un produit individuel peut être un article dans une liste de produits, mais la description de ce produit individuel peut aussi être à son tour un article et ainsi de suite.

Les commentaires de l'article originel apportent des éclaircissements assez intéressants :

Une réponse serait de considérer qu'en fait, la balise <article>a justement pour intérêt de définir une granularité donnée : un <article>aurait pour seule qualité d'être une entité discrète, distincte, autonome du document. Et la sémantique associée serait limitée à cette qualité (un des commentateurs rappelle à juste raison qu'il faut éviter que la sémantique soit portée par un contexte - ou un framework - extérieur ; si l'on veut conserver la sémantique initiale, il faut qu'elle soit portée par la balise elle-même).

Cette définition est elle la même que celle portée par l'existence d'un identifiant unique (attribut id) sur une balise ? Si une balise a un attribut id, elle définit elle aussi une entité discrète, distincte du document ? Pas vraiment, l'id pouvant avoir un rôle uniquement technique et ne définissant pas vraiment une frontière.

Du coup, on utiliserait la balise <article> pour identifier une entité distincte et discrète du document. Seulement cette qualité pourrait être intéressante pour toute balise HTML... un des contributeurs rappelle que justement, l'attribut role défini par XHTML-1 sert justement à définir des caractéristiques qui peuvent s'appliquer à toute balise. C'est ce même mécanisme qu'utilise WAI-ARIA.
On pourrait donc introduire l'attribut role=article.

Sinon, que conclure sur la balise article ? utilisez-là pour définir la granularité qui vous convient : elle doit définir une entité (fragment) discrète, distincte autonome d'un document. En tant quelle telle, elle permet de structurer votre contenu pour pouvoir être recherchée, permettre une navigation spécifique dans la page, pouvoir être partagée ou réutilisée dans d'autres documents (éventuellement associée à un véritable identifiant unique) et éventuellement posséder un cycle de vie.

5 commentaires

  1. While waiting for help, the homeowner may call their insurance provider to inform them
    of the problem and inquire if it’s part of the coverage. You can put a dehumidifier to keep the moisture out of the air so it will not affect your things and your home. It is critical to consider the features of your product.

    Also visit my website; Shella

  2. While waiting for help, the homeowner may call their insurance provider
    to inform them of the problem and inquire if it’s part of the coverage. A study in the British Medical Journal found a significant connection between a person ». The first step in the process of maintaining a mosquito-free bedroom is to secure the structure of the house.

  3. Please note doctors don’t prescribe oral medicines for vaginal infections, it can lead to side-effects. It has a 2-megapixel rear-facing camera and a 5-megapixel front-facing one. Some manufacturers call their product a Cover while others use the name Case.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Captcha *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.