Comment installer OWLIM dans Sesame – et jouer avec

Une des choses frustrante quand vous travaillez dans les technologies du web sémantique c’est que leur intérêt n’est pas facile à expliquer à des techniciens qui ont l’habitude de travailler sur des applications fermées, des bases de données, et du XML; exemple :

« RDF ? hé bien tu vois, c’est un peu comme du XML mais en mieux… »

« OWL ? hé bien tu vois, c’est un peu comme un schéma de base de données mais en mieux… »

« Les données ouvertes ? hé bien tu vois, tu peux partager tes données sur le web et les lier aux autres données existantes pour… comment ça tu t’en fiche ? »

Bref. Non, là où la différence se fait et devient tangible, là où l’on touche du doigt l’opposition « structure d’abord, rentre tes données ensuite » (approche SGBD classique, avec données homogènes, centralisées et fermées) versus « rentre tes données d’abord, puis structure à la volée » (approche du monde RDF, avec données hétérogènes, distribuées et interreliées), c’est lorsqu’on illustre cela avec un moteur d’inférence. Le moteur d’inférence qui va rajouter des nouvelles informations à partir des informations existantes est le composant pour lequel il n’y a pas d’équivalent dans le monde SGBD (1); c’est lui qui vient donner tout son sens au reste de la pyramide des technos (XML, URI, RDF, OWL), en interprétant et « motorisant » une ontologie.

On peut citer plusieurs outils d’inférence que l’on connait ici de près ou de loin :

Pour illustrer les fonctionnalités d’inférence sur une ontologie OWL, voici la démarche pour faire fonctionner OWLIM dans Sesame.

Disclaimer : cette démarche vise uniquement à tester le composant, mais ne convient évidemment pas pour un environnement de production.

  1. Téléchargez :
  2. Dézippez :
    1. Dézippez tomcat dans le répertoire de votre choix (<tomcat> dans le reste de la procédure);
    2. Dézippez sesame dans le répertoire de votre choix (<sesame> dans le reste de la procédure);
    3. Copiez les applications sesame <sesame>/war/openrdf-sesame.war et <sesame>/war/openrdf-workbench.war dans <tomcat>/webapps;
    4. Démarrez tomcat en lançant <tomcat>/bin/startup.bat
    5. Dézippez owlim dans le répertoire de votre choix (<owlim> dans le reste de la procédure)
    6. Copiez les deux fichiers se trouvant dans <owlim>/lib (owlim-3.0.beta8.jar et trree-3.0.beta8.jar) à deux endroits :
      • dans <tomcat>/webapps/openrdf-sesame/WEB-INF/lib
      • dans <sesame>/lib
    7. Important : arrêtez et redémarrez votre serveur Tomcat
  3. Configurez :
    1. Lancez <sesame>/bin/console.bat
    2. Copiez le fichier <owlim>/getting-started/owlim.ttl dans C:\Documents and Settings\<votre nom d’utilisateur Windows>\Application Data\Aduna\OpenRDF Sesame console\templates. le sous-répertoire « templates » n’existe pas, vous devrez le créer.
    3. Dans la console sesame, entrez les commandes suivantes (n’oubliez pas le point à la fin de chacune d’elles) :
      1. connect http://localhost:8080/openrdf-sesame.
      2. create owlim.
  4. Utilisez :
    1. Ouvrez votre navigateur à l’adresse http://localhost:8080/openrdf-workbench;
    2. Cliquez sur le repository « owlim »;
    3. Dans le menu de gauche, cliquez sur « Add »;
    4. Dans le champ de formulaire « RDF Data File », sélectionnez le fichier <owlim>/getting-started/ontology/example.rdfs, laissez tous les autres champs tel quels, puis cliquez sur « Upload »;
    5. Vérifiez qu’une inférence a bien eu lieu :
      1. ouvrez le fichier <owlim>/getting-started/ontology/example.rdfs dans votre éditeur texte préféré, ou dans Protégé ou Swoop si vous ne lisez pas le OWL dans le texte; vous constaterez que :
        1. il définit les classes « Male » et « Female » comme étant l’ensemble des « Humans » ayant la propriété « hasGender » avec une valeur « Male » et « Female » respectivement.
        2. deux instances « John » et « Mary » sont définies comme instance de « Human » avec la propriété « hasGender » valant « Male » et « Female » respectivement;
        3. le fait que « John » soit de classe « Male » et « Mary » de classe « Female » n’est pas dans le fichier;
      2. de retour dans l’interface web de Sesame, cliquez sur « Types » dans le menu de gauche, puis dans la liste qui apparait, cliquez sur « <http://example.org/owlim#Woman> &raquo;;
      3. Dans la liste de triplets qui s’affiche, vous constaterez la présence de ce triplet :<http://example.org/owlim#Mary&gt; rdf:type <http://example.org/owlim#Woman&gt;

        Cette information a été inférée à partir du fichier d’origine;

and voilà ! n’hésitez pas à tester plus avant avec vos propres ontologies. Attention cependant, dans cette configuration d’exemple les données ne sont pas persistentes, c’est-à-dire que vous perdrez le contenu du repository lorsque le serveur Tomcat sera arrêté.

Pour plus d’informations sur OWLIM et ses capacités de raisonnement, consultez les documents dans <owlim>/doc.

Happy testing.

(1) : pour la fonctionnalité de « déduction de nouvelles informations » en tous cas, car pour la focntionnalité de « contrôle d’intégrité des données », le SGBD contrôle de fait l’intégrité des données qu’il enregistre.

Un commentaire pour Comment installer OWLIM dans Sesame – et jouer avec

  1. Doudou Dieye dit :

    Bonjour,
    le lien pour télécharger OWLIM ((http://www.ontotext.com/owlim/index.html)) n’est plus valide.
    Connaissez vous un autre outils d’inférence pour Sesame server

    Merci

Laisser un commentaire

Choisissez une méthode de connexion pour poster votre commentaire:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s

%d blogueurs aiment cette page :