2010-12-07 4 views
1

J'ai la requête suivante qui ne fonctionne pas:problème avec SPARQL

PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema%23> 
PREFIX i: <http://evolizer.org/ontologies/seon/2010/09/softwaremetrics.owl%23> 
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns%23> 
SELECT ?metric ?value 
WHERE { 
?metric rdf:type i:SoftwareDesignMetric . 
?metric i:hasName "NOM" . 
?metric i:hasValue ?value 
?metric i:isMetricOf "http://130.60.156.155:8080/famixParser/projects/argouml/org.argouml.pattern.cognitive" .} 

J'ai utilisé un query validator qui lève l'exception suivante:

Encountered " "?metric "" at line 9, column 1. 
Was expecting one of: 
    "graph" ... 
    "optional" ... 
    "service" ... 
    "minus" ... 
    "filter" ... 
    "{" ... 
    "}" ... 
    ";" ... 
    "," ... 
    "." ... 

Mais je ne sais pas ce que cela signifie

Répondre

3

Vous souhaitez probablement ajouter une période . après le modèle de graphique ?metric i:hasValue ?value.

+0

Merci qui a résolu le problème. Cependant, j'ai une question supplémentaire. Avec le validateur de requête, je peux valider une requête, mais y a-t-il aussi un outil basé sur un navigateur web pour exécuter une telle requête? – RoflcoptrException

+0

@Roflcoptr: Il y a http://librdf.org/query/ au moins, probablement aussi d'autres. – laalto

+0

Aussi http://www.dotnetrdf.org/demos/leviathan/ et http://sparql.org/sparql.html (qui est un processeur de requête à usage général sur le même site que vous mentionnez dans votre message). De plus, si vous voulez simplement valider une requête, utilisez n'importe quel point de terminaison public et ajoutez LIMIT 0 à la fin de la requête - cela signifie que le point de terminaison n'a pas besoin de travailler pour traiter la requête (à condition qu'elle soit correctement optimisée). mais doit analyser la requête de toute façon. Utilisez simplement le point de terminaison comme un validateur, ceci est particulièrement utile si vous trouvez un point de terminaison qui donne de bons messages d'erreur. – RobV