Etirez, réduisez, déplacez et empilez les blocs... >>> Retour page R&D
7 janvier 2008

Une notion introduite par les Wcag 2 - et qui est amenée à prendre l'importance
dans les années à venir - est celle de robustesse des contenus.
Par "robustesse" il faut comprendre plusieurs choses :
- la première est que ça vient en remplacement de validité, cette
dernière notion étant trop orientée achèvement d'un process : "on
est valide W3C, le but est atteint..." n'est pas une attitude satisfaisante
en ce qu'elle clôt un cycle (accessibilité globale au stade de la production
: le cycle se clôt lors de la mise en ligne) alors qu'elle devrait
l'initier (non-discriminance étendue jusqu'à la restitution : le
cycle se clôt à la fermeture de l'UA par son utilisateur).
- la seconde relève de la durabilité des contenus. A priori
un projet web est un investissement lourd, mûrement réfléchi et inscrit dans
une stratégie comprenant notamment la durée de vie des contenus. Le choix
d'habiller ces contenus par des couches séparées (graphiques, événementielles,
etc.) garantit cette pérennité d'un point de vue aspectuel : changer la charte
d'un site n'est plus, comme ça l'était autrefois, refaire intégralement celui-ci.
La durabilité des contenus garantissant des restitutions encore utilisables
demain et après-demain, ne doit donc pas s'évaluer à l'instant T de la production
mais dans une perspective incluant les avancées technologiques potentielles
et dans la limite des visibilités qu'on peut en avoir.
- la troisième est celle d' interopérabilité, cette capacité
qu'à un contenu à rester utilisable (y compris sous un taux de dégradation
acceptable) sur tous UA à partir du moment où ils sont capables de le rapatrier.
Si le respect des règles de non-discriminance assure en partie la robustesse des contenus tant qu'ils sont portés par un protocole web standard, leur migration vers (ou interprétation par...) d'autres outils ne garantit plus cette robustesse, ne serait-ce que parce que les Wcag 2 ne le prévoient pas. L'apparition de nouveaux contextes d'utilisation (web 3D) impliqueront probablement d'anticiper la question de l'interopérabilité sous un autre angle.
Un angle proposé est celui de mutabilité : c'est la capacité qu'à un contenu à se modifier selon la demande et à s'adapter aux requêtes. Une "demande web" n'est nécessairement une "demande 3D" : le type d'objet appelé n'interagit pas avec l'utilisateur de la même façon.... dans une demande web "classique", c'est la sémantique de l'objet qui est sollicitée : en tant qu'objet à plat parmi d'autres, j'utilise un titre dans sa fonction de titre balisé <h1>, car tout UA normalisé sait que h1 détermine une certaine sémantique hiérarchisante. Dans un environnement 3D en revanche, je peux avoir à interagir avec un équivalent-h1 en tant qu'objet virtuel, où l'objet est utilisé en tant que tel et non en tant que sens porté. Or les règles et recommandations WAI, axées sur une rationnalisation du sens, peuvent entrer en conflit avec ce nouvel usage.
La notion de mutabilité propose que les contenus orientés objets soient capables d'être à la fois appréhendés comme sémantiques (usage web W3C) et comme objets utilisables indépendamment du sens qu'ils portent. Même si la sémantique (x)Html est faible - certains avancent qu'elle n'existe pas - elle est tout ce que nous avons à disposition pour faire comprendre à un UA comment le contenu que nous lui distribuons devra être restitué pour être le plus utilisable possible : c'est tout le sens de la notion de robustesse.
Un exemple proposé : envisager l'utilisation de la balise <div>, sémantiquement neutre, comme "support volumétrique" plutôt que comme "support de séquencement sémantique", c'est-à -dire partageant le contenu global d'un document en entités faisant sens par et pour le sens des sous-contenus qu'elle enferme. Utilisée par exemple pour définir le volume d'un objet déplaçable individuellement dans un environnement 3D, <div> n'aurait plus à porter d'attributs décrivant autre chose que ceux du volume qu'elle requiert pour remplir sa fonction d'objet, laissant aux autres balises (x)Html, via les #id et les .class nécessaires, tout ce qui concerne la mise en forme des contenus selon des feuilles Css adaptées (screen, print, handheld, etc.). Cette façon d'envisager l'usage de <div> n'est ni révolutionnaire ni novatrice, elle est parfaitement conforme à sa définition de "balise neutre" ; c'est l'usage graphique qui en est fait (porteuse de design) ou sur-sémantisant (définition de blocs-sens dans le contenu) qui lui ont affecté un rôle qui eut ses raisons d'être à une certaine époque, mais dont la pertinence en terme de durabilité et de robustesse n'est pas démontrée dans d'autres contextes d'utilisation.
Le principe de non-discrimination consiste donc, dans ce cas-là , à déterminer une classe d'utilisateurs (web 3D, pour aller vite) à qui des conditions particulières d'utilisation vont être proposées, sans que toutefois les autres utilisateurs en pâtissent. Il y a bien techno-discrimination positive, mais pour l'utilisateur lambda non-déterminé un résultat équivalent est fourni par le transfert des attributs portés par <div> aux objets-balises qu'elle contient : <h[n]>, <p>, <span>, etc.
Et que l'auteur parvienne, si le contenu l'autorise ou est conçu pour, à faire que <div> soit à la fois "objet en tant que tel" et "séquenceur de contenu" signera alors une belle expertise :-)