J'ai un jeu-questionnaire dans lequel l'utilisateur doit répondre à des questions telles que: Qu'est-ce que le nom de la capitale allemande? Les options sont: Berlin Madrid Londres Les données sont dans mon fichier owl.Comment filtrer une requête SPARQL avec des variables Java
J'ai aussi une autre ontologie dans laquelle j'ai rdfs: commentaire de ressources (options de questions) comme rdfs: commentaire de Berlin, Londres etc Je veux si l'utilisateur choisit la mauvaise option ie Londres, rdfs: commentaire de droite option devrait être affichée à l'utilisateur, Berlin dans ce cas.
The right (correct) option I have is in java variable 'correct' and if user click wrong option, I want to show the rdfs:comment of correct option as:
"SELECT * " +
" WHERE { ?x rdfs:comment ?y " + "FILTER regex(?x ,'"+correct+"') " +
"}";
System.out.println(queryString);
Query query = QueryFactory.create(queryString);
QueryExecution qexec = QueryExecutionFactory.create(query, model) ;
ResultSet results = qexec.execSelect() ;
while (results.hasNext())
{
QuerySolution binding = results.nextSolution();
Literal l=binding.getLiteral("y");
String s=l.toString();
The problem is that it does not show me the filtered value rdfs:comment. When I remove Filter, it shows all rdfs:comment of resources but with Filter value, it simply does not work.
When I print the query, it shows the options values but does not display the rdfs:comment of that resources.
PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#> prefix dbr: <http://dbpedia.org/page/>PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#> SELECT * WHERE { ?x rdfs:comment ?y FILTER regex(?x ,"Berlin") }
PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#> prefix dbr: <http://dbpedia.org/page/>PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#> SELECT * WHERE { ?x rdfs:comment ?y FILTER regex(?x ,"Rome") }
My owl for rdfs:comment is like: Berlin--> rdfs:comment
Rome--> rdfs:comment etc
Combien d'étudiants dans votre université font le même exercice/projet? Je suis sûr que vous avez déjà demandé sur la liste de diffusion Jena par quelqu'un de votre classe. – AKSW