Envoyer un mail à l’auteur
xavier at ultra-fluide.com

Switch to
English

Marquage sémantique XSLT

Marquage sémantique par transformation XSL

Semark.xsl, un outil universel de marquage sémantique pour contenus XML.

 

Semark.xsl working principle

 

Semark.xsl réalise le marquage d'un contenu XML en s'appuyant sur un lexique externe. L'outil, une transformation XSL, recherche dans le contenu XML source les instances des mots ou expressions listées dans le lexique, puis introduit un marquage pour chacune de ces instances.

Dans notre schéma, le lexique contient une entrée pour le mot "content". Semark.xsl recherche la présence du mot "content" dans le document source, et marque ce mot en posant la balise <a href="link">content</a>. Le type de marque utilisée, a/href dans notre exemple, est un paramètre dynamique à l'exécution de semark.xsl. La valeur de l'attribut, "link" dans l'exemple, est une variable disponible dans le lexique pour chaque entrée de ce lexique.

Si cette brève explication ne vous a pas permis de vous faire une idée satisfaisante du sujet, je vous propose de tester la démonstration en ligne. Si vous être pressé vous pouvez télécharger le package et essayer ultérieurement les exemples proposés sur votre ordinateur.

Dans quelles circonstances utiliser Semark.xsl ?

Son utilisation vous déchargera d'une tâche ingrate lorsque :

L'intérêt de Semark.xsl est amplifié lorsque les contenus de ces documents sont évolutifs, et mis à jour par des auteurs variés.

Au vu de ces critères, un site web (réalisé en XHTML, ou disposant de sources de contenus XML) est une cible évidente pour la mise en oeuvre de Semark.xsl. Dans le domaine du web, sans être exhaustif, nombreux sont les marquages utiles : acronym/title, abbr/title, a/href, strong, em ... Rien n'empêche d'envisager également un marquage span/class, mais cette pratique traite moins de la sémantique du contenu que de la problématique de présentation web.

Voici des exemples justifiant de s'intéresser à Semark.xsl :

Mieux comprendre les notions introduites par la définition.

Outil

Outil désigne dans notre esprit un dispositif qui prend en charge certaines tâches en vue d'une simplification des interventions humaines. Effectivement Semark.xsl automatise un processus de marquage. Il rend ce processus régulier, rigoureux et introduit la possibilité d'un traitement de masse.

Universel

Aujourd'hui une fraction importante (et croissante) des documents électroniques sont enregistrés dans un format basé sur le méta langage XML. XSL le langage utilisé pour coder Semark.xsl est un standard disponible sur tous les OS (Linux, Windows, Unix...) et dans tous les environnements (JAVA, PHP, .NET...). Il est donc possible de traiter un grand nombre de documents sans dépendance vis à vis de la plate-forme utilisée.

Contenus XML (documents structurés)

XML est un méta langage (ensemble de règles syntaxiques) qui autorise la constitution de documents structurés. Réaliser un document structuré à partir d'un contenu, c'est diviser ce contenu et le répartir au sein d'une structure définie par un langage fondé sur XML. La structure est une arborescence, elle définit donc des ensembles, sous-ensembles, sous-sous-ensembles... au sein desquels pourront se loger les éléments du contenu.

Semark.xsl est écrit dans le langage XSLT, lui même respectant la syntaxe XML. XSLT a été conçu spécialement pour manipuler les documents XML. Il en résulte que Semak.xsl est capable de traiter tout document XML, c'est à dire tout contenu écrit dans un langage XML.

Marquage sémantique

La sémantique d'un document structuré est constituée de l'ensemble des règles qui définissent la structure du document (ou de la classe de documents à laquelle le document appartient). Prenons un exemple avec ce contenu : "Une magnifique histoire, écrite par Xxxx Yyyy se compose de 256 pages". Dans sa version structurée, ce même contenu pourrait être :

<livre>
    <titre>Une magnifique histoire</titre>
    <auteur>
      <prenom>Yyyy</prenom>
      <nom>Xxxx</nom>
    </auteur>
    <taille>256</taille>
</livre>

A l'évidence, le contenu structuré contient beaucoup plus d'information. Une partie de l'information provient du contenu lui même, mais la présence de la structure et le fait que le contenu soit organisé dans cette structure complète notablement cette information. Ainsi il est clair que "Une magnifique histoire" est le titre d'un livre, ce qui n'était pas évident à partir du contenu brut. De même qu'à l'origine il était impossible de déterminer le prénom de l'auteur, le contenu structuré donne "Yyyy" sans ambiguïté.
En revanche utiliser ou comprendre un contenu structuré nécessite une connaissance de son organisation et de sa signification. Ainsi il faut savoir que <taille> utilise l'unité page pour comprendre que ce livre fait 256 pages.

De cet exemple il est facile de deviner que :

Semark.xsl est un outil de marquage sémantique car :

Il en résulte un document refermant le même contenu, respectant la sémantique d'origine mais présentant un niveau d'information légèrement supérieur. Semark.xsl recherche cette information complémentaire au sein d'un lexique externe.

Sémantique et présentation

Les discussions concernant le web font souvent ressortir, en opposition, les questions relatives à la sémantique d'un document, et celles relatives à sa présentation. La pensée actuelle et les technologies indiquent qu'il est utile de séparer la présentation et la sémantique afin d'obtenir une factorisation efficace de ces deux notions.

Dans ce contexte nous devrions affirmer que notre outil ne traite pas la problématique *présentation de document*. Nous considérons cependant qu'il est nécessaire d'infléchir cette position :

En conclusion Semark.xsl touche par nature la sémantique des documents, mais rien n'empêche cependant d'avoir en l'utilisant des visées dépassant la sémantique, selon le sens éminemment varié que l'on peut voir en celle-ci.


Agence de communication Ultra-Fluide : 01 47 70 23 32 - contact at ultra-fluide.com - 44 rue Richer 75009 Paris.