Skip to content
Jean-Marc Vanel edited this page Jul 31, 2016 · 31 revisions

User Manual in english

Introduction

Semantic_forms est une application générique à la fois de navigation du web sémantique et d'annotation, et un cadriciel (framework) pour construire des applications d'entreprise centrées sur les formulaires (entrée ou lecture seule). Toutes les données et tous les modèles de données (ontologies) s'appuient sur les recommandations du Web sémantique du W3C: https://en.wikipedia.org/wiki/Semantic_Web

Un bac à sable est ici: http://212.47.232.171:9111/

On peut aussi télécharger la distribution et lancer l'application web sur sa machine, voir: obtaining-the-zipped-application

Usages possibles

Les usages peuvent être personnels (via la distribution zip qui est une application web), ou collective lorsque hébergé sur un serveur. Avec seulement les modèles par défaut et les formulaires associés, ces usages sont possibles:

  • gestionnaire de contacts,
    
  • gestionnaire de projets,
    
  • moteur de blog,
    
  • gestionnaire de notes,
    
  • ...
    

On peut créer son profil FOAF (pour l'héberger en statique ailleurs ou le visualiser dans l'application), naviguer sur le Web de données en gardant trace, ou tout type de gestion de données structurées.

La techniques sous-jacente

En ce qui concerne la mise en œuvre, Semantic_forms tire parti de Jena TDB, de Play! Framework, Scala et Banana-RDF.

Semantic_forms est fonctionnel en sortant de la boîte, une fois qu'on a dézippé le logiciel, ou qu'on l'a construit à partir des sources. Pas besoin d'installer séparément une base de données ou d'autres composants. Vous pouvez naviguer dans vos données RDF (Turtle, JSON-LD) chargées dans la base locale Jena TDB aussi facilement que dans les profils FOAF sur Internet, ou mélanger les deux. Semantic_forms ressemble aux pages de DBPedia (par exemple http://dbPedia.org/resource/Cycas), et où l'on peut aussi modifier tous les champs, et charger n'importe quelles données du LOD, y compris des modèles de données et des formulaires.

Le code et la façon de construire à partir de sources sont ici: https://github.com/jmvanel/semantic_forms/tree/master/scala/forms_play

Authentification et comptes

Avant de faire quoi que ce soit, il faut s'authentifier et/ou créer un compte avec un nom d'utilisateur et un mot de passe.

NOTE: pour l'instant il n'y a pas de mail associé aux compte. Cependant le nom d'utilisateur peut être votre mail, précédé par mailto: , ainsi transformé en URL.

ATTENTION il faut choisir un nom d'utilisateur qui soit un URI absolu (comme "u:uu"). Certaines choses ne marcheront pas avec un URI relatif (comme "bla" ou "/ble").

Naviguer

Essayez de glisser / déposer cet URI dans le champ "URI pour afficher": http://dbpedia.org/resource/Bobby_Bland

Vous allez voir des paires propriété-valeur au sujet de ce chanteur, Bobby Bland. Cela constitue autant de triplets sujet-propriété-valeur, qui sont l'essence du Web Sémantique.

D'une manière générale, coller dans le champ "URI pour afficher" un URI téléchargeable, disons <U1>, que ce soit un dbpedia ou profil FOAF, ou une ontologie, affiche les triplets

<U1> ?P ?O.

comme l'application web DBPedia le fait aussi. Ensuite, vous pouvez naviguer à partir de liens en liens, aussi comme DBPedia.

Il y a quelques points de départ dans le champ de saisie "URI pour afficher", cliquez sur le triangle sur la droite.

Chargement de données sémantiques

Il s'agit d'URL (URI) qui contiennent non pas du contenu destiné à la visualisation directe (HTML), mais des triplets. Typiquement, ces URI téléchargeables sont:

  • des profils personnels FOAF
  • des entrées de dbpedia.org
  • l'URL d'un conteneur LDP (Linked Data Platform)

La chose principale à comprendre pour l'utilisation de l'application est que la navigation et l'affichage d'un URI téléchargeable, charge également dans la base de données Jena TDB. Et alors, les données téléchargées sont utilisées pour tous les usages de l'applications: affichage des triplets, des formulaires, des libellés (à partir de rdfs:label et autres prédicats), recherche, ... Ainsi, au fur et à mesure de la navigation, on se fait sa propre sélection de l'Internet des données.

Le cache et la base de données RDF

La base de données Jena TDB agit comme un cache pour les données RDF Internet, ce qui signifie:

  • Afficher la deuxième fois est beaucoup plus rapide;
  • En tenant compte des en-têtes HTTP, les données peuvent être rechargées si la source distante est modifiée

A l'intérieur de la base de données RDF (SPARQL), les triplets téléchargés à partir de l'URI <U1> sont chargés dans un graphe nommé dont le nom est aussi <U1>.

Vous pouvez avoir une vue sur les graphes nommés dans la page "outils", ici dans le sandbox : http://212.47.232.171:9111/tools

Avertissement sur l'usage

Si vous voulez juste naviguer sur une source de données, par exemple dbPedia.org, sans vouloir enrichir la base commune avec les URL parcourus, s'il vous plait n'utilisez pas semantic_forms. Vous pouvez naviguer à peu près de la même façon sur dbPedia.org lui-même.

Édition

Modification des données existantes

Lors de l'affichage d'un objet par son URI, cliquez sur le lien à droite après "Propriétés" pour afficher un formulaire de saisie pour cet URI. Vous pouvez modifier n'importe quel triplet, et créer plusieurs valeurs avec le bouton "+". Lorsque vous avez terminé l'édition, le bouton SAUVER met à jour la base de données.

ATTENTION: il n'y a pas de vérification que des données entrées pourraient être perdues si on appuie sur autre chose que le bouton SAUVER.

Création d'une nouvelle ressource d'un certain type RDF

Une fois que vous avez téléchargé une ontologie, vous pouvez coller l'URI d'une classe dans le champ "créer une instance", appuyer sur le bouton "Créer", et le formulaire inféré pour la classe sera affiché. Vous pouvez également sélectionner dans le menu déroulant à proximité l'une des classes pré-définies (les classes FOAF, etc). Essayez de chercher une classe RDF dans les moteurs de recherche LOV ou Swoogle, et de le glisser / déposer dans le champ "créer une instance". Par exemple glisser-déposer cette URL pour créer une espèce biologique: http://dbpedia.org/ontology/Species

REMARQUE: par défaut de nombreuses ontologies utiles sont pré-chargées, comme l'ontologie DBPedia (voir README  pour en pré-charger plus). Dans le cas où l'ontologie ne serait pas pré-chargée, vous pouvez la charger comme les données à partir de son URL, comme expliqué ci-dessus dans Navigation.

Les champs littéraux (chaînes de caractères) sont entrés en fonction de leur type de données (chaîne simple, nombre, date, ...) avec des champs d'entrée conformes à HTML5. Le bouton "EDIT" à proximité ouvre une fenêtre pour entrer un texte de plusieurs lignes.

Champs de resources (liens sémantiques) sont saisis soit par:

  1. le choix d'une valeur possible par menu déroulant, et qui a été déduite des triplets rdfs:range et rdf:type,
  2. Coller un URI venant d'ailleurs,
  3. Entrer n'importe quelle chaîne, qui sera ajoutée dans la base de données comme un URI, avec des espaces remplacés par des soulignés; le rdf:type de cette nouvelle URI est défini selon les ontologies dans la base de données (lors de l'enregistrement du formulaire).

L'option 3 crée une nouvelle ressource dans la base de données, qui peut déjà exister; il vaut mieux regarder d'abord dans le menu déroulant pour entrer une ressource déjà existante.

Remarquez les champs marqués avec "complétion dbPedia», comme compétences et points d'intérêt. Là, on tape quelques lettres, et c'est complété par les concepts pertinents de Wikipedia (en anglais). La complétion ne fonctionne sur Firefox, Chrome, Opéra, et Android.

Clone this wiki locally