assemblee-virtuelle / semapps

A toolbox to create semantic web applications
https://semapps.org
Apache License 2.0
87 stars 8 forks source link

Activer l'inférence RDFS sur le triplestore #817

Open tfrancart opened 3 years ago

tfrancart commented 3 years ago

Tension Il est bien compliqué de configurer Sparnatural sur le modèle PAIR si l'inférence sur les sous-classes n'est pas activée dans le triplestore. Et il n'est pas possible de montrer l'interopérabilité sémantique sans inférence sur les sous-classes.

Proposition Activer l'inférence RDFS dans Fuseki (voir https://jena.apache.org/documentation/fuseki2/fuseki-configuration.html, § Inference, RDFS Rule Reasoner: http://jena.hpl.hp.com/2003/RDFSExptRuleReasoner), de façon à ce qu'une requête SPARQL sur une super-classe ramène aussi les instances des sous-classes.

On peut lister les events sur https://data.virtual-assembly.org/sparql :

  SELECT ?uri 
  WHERE {
    ?uri a <http://virtual-assembly.org/ontologies/pair#Event> .
  }

Mais on ne peut pas lister toutes les Activities (Event ou Projets), cette requête ne ramène rien :

  SELECT ?uri 
  WHERE {
    ?uri a <http://virtual-assembly.org/ontologies/pair#Activity> .
  }

C'est de l'interopérabilité de base en terme de sémantique, ce serait bien de pouvoir démontrer / illustrer qu'on peut interroger les données sans forcément connaitre la sémantique précise de tout.

Alternatives Une alternative possible est de requêter sur les sous-classes de l'ontologie, mais cela implique que le OWL de l'ontologie soit charger dans le triplestore, ce qui ne semble pas être le cas; cette requête ne ramène rien:

PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
  SELECT ?uri 
  WHERE {
  ?uri a [ rdfs:subClassOf* <http://virtual-assembly.org/ontologies/pair#Activity> ] .
  }
GuillaumeAV commented 3 years ago

Huuum ca s'est une mission pour @nikoPLP ou pour @srosset81 je crois :) Je peux aussi m'y coller, mais je ne garantis pas le résultat haha :)

srosset81 commented 3 years ago

Oui Niko avait fait une issue similaire (moins détaillée): https://github.com/assemblee-virtuelle/semapps/issues/590 Je pense qu'il pourrait être l'homme de la situation ;)