RDFa était-il utile ?
Par Nicolas le jeudi 28 février 2008, 13:03 - Informatique - Lien permanent
Got lance une suite de billets sur RDFa, où il explique d’abord ce que c’est puis comment le mettre en pratique. À la fin de la première partie présentation, un paragraphe rejoint ma principale préoccupation sur le sujet :
Mais, je vous vois venir. Vous allez me répondre que c'est très joli, mais que la syntaxe est tout de même un poil complexe. Je ne peux pas vous donner tort. Mais, entre nous, n'est-ce-pas le but du Web dynamique et des CMS de générer le code HTML ? Toutes les données d'un CMS ne sont-elles pas parfaitement structurées dans une base de données ?
Je suis parfaitement d’accord avec lui. Allons même plus loin : le but de
RDFa est de permettre l'extraction de donnée d’un document HTML, pour
fournir normalement des données au format RDF. Très
bonne idée… Mais Got et moi sommes d'accord, c'est à un programme de rajouter
ces informations. Et s’il doit le faire, pourquoi ne pas le faire directement
au format RDF ? La réponse usuelle, c’est que justement, on ne peut pas
embarquer facilement le RDF dans du HTML. C’est vrai
mais il est également vrai qu'avec HTTP, le
client peut demander au serveur le format qu’il préfère (en précisant le format
désiré dans le champ Accept, d'une requête). Ainsi,
un serveur pourrait fournir pour une même page, soit les données au format
HTML, soit les données au format RDF, soit
dans tout autre format, y compris du HTML avec du RDFa dedans (beurk).
Quelle différence ? Peu et beaucoup à la fois. Tout d’abord, on évite d’alourdir le document de base. Certes, ce n’est que quelques données supplémentaires, mais ce raisonnement vaut pour plein de choses : javascript, feuilles de style, pour tout cela, la séparation est préférable, pourquoi les données sémantiques devraient elles avoir un traitement particulier ? Ensuite, on évite de se mordre la queue : RDF fournit des informations sémantique d’un document HTML qui contient des informations sémantiques au format RDFa. Cette phrase vous semble redondante et absurde ? C’est que vous devriez également trouver RDFa absurde.
Commentaires
Merci pour ce commentaire sur mon billet qui me remet les pendules à l'heure
Effectivement, une négociation de contenu remplirait l'office de bien
meilleur manière que mon très compliqué RDFa. D'ailleurs, j'avais pensé à le
faire et donc à appliquer ta dernière phrase, même si elle est excessive, car
si tu regardes le code RDF généré à partir d'une page de mon blog, le RDFa
n'apparaît pas (sur le sujet : http://ivanherman.wordpress.com/200...
).
Pour être tout à fait honnête, je n'avais pas réfléchi à la question dans ce sens-là, c'est mon enthousiasme qui, parfois/souvent, me fait oublier des choses évidentes...
Néanmoins, je ne jetterais pas complètement RDFa. Si mon exemple est excessif et serait bien plus logique en RDF directement, je pense que RDFa peut tout de même avoir son utilité. J'y vois en premier lieu un moyen pour s'approprier les technologies du Web sémantique, une sorte de première étape, car il me semble qu'il existe un enchaînement logique partant d'une bonne structuration des données en HTML, puis les microformats, puis, ceux-ci étant limités, RDFa qui me semble plus simple à appréhender que directement RDF (sans parler de RDF/XML
).
D'autre part, si on veut ajouter simplement quelques informations, RDFa est un bon moyen et, encore une fois, assez simple à faire et il est possible d'exploiter ces données pour ajouter des fonctionnalités au navigateur (cf. Operator et http://www.lespetitescases.net/amus...)
Dernière raison, avant qu'un crawler n'attaque une URI en demandant le mime type application/RDF+XML, de l'eau aura coulé sous les ponts. Par conséquent, il récupère les différentes infos directement dans la page HTML et il peut tout de même construire certaines applications qui améliorent l'expérience de recherche (sur le sujet, cf. l'expérience microsearch : http://www.yr-bcn.es/demos/microsea... )
Je n’ai peut-être pas été assez clair car j'apprécie vraiment tes efforts de vulgarisation dans les billets que j’ai cité. Oui, la manipulation simple des données dans une page HTML est un avantage. En fait, mon billet est excessif, surtout parce que je trouvais nécessaire de contre-balancer un engouement qui veut tout faire faire à RDFa, sans se soucier de la cohérence de l’approche. Ton didacticiel m'a donné un point d'entrée pour cela. Le dernier point de ton commentaire en est également la preuve : RDFa permet d'éviter d'utiliser une solution existante et plus efficace pour les robots.