Salut,
La syntaxe SPARQL permet t-elle d'ajouter des valeurs "en dur" aux résultats ? Ca donnerait un peu comme ça :
je n'ai rien trouvé dans la doc W3C. Merci d'avance !Citation:
SELECT ?x ?y "val" as ?z WHERE {
...
}
Version imprimable
Salut,
La syntaxe SPARQL permet t-elle d'ajouter des valeurs "en dur" aux résultats ? Ca donnerait un peu comme ça :
je n'ai rien trouvé dans la doc W3C. Merci d'avance !Citation:
SELECT ?x ?y "val" as ?z WHERE {
...
}
Non (pour lever ce genre de doutes, voir la grammaire SPARQL : http://www.w3.org/TR/rdf-sparql-query/#sparqlGrammar) . Par contre tu peux soit :Citation:
La syntaxe SPARQL permet t-elle d'ajouter des valeurs "en dur" aux résultats ?
1/ fixer la valeur d'une variable dans un FILTER et sélectionner celle-ci
2/ le faire dans un CONSTRUCTCode:SELECT ?o WHERE { ?s ?p ?o . FILTER (?o = "toto") }
Code:CONSTRUCT { ?x ?y <http://www...> . ?a ?b "toto" } WHERE { ... }
Avec SPARQL 1.1, on peut le faire, mais il te faudra des parenthèses :
Cela te renverra quelque chose du genre :Code:
1
2
3 SELECT ?x ?y ("val" as ?z) WHERE { ... }
Code:
1
2
3
4
5
6 ===================== | x | y | z | ===================== | <a> | <b> | "val" | | ... | ... | "val" | =====================
Merci pour vos réponses :-) Il faut donc passer par CONSTRUCT avec SPARQL 1.0 !
J'aurais plutôt conclu qu'il te faut SPARQL 1.1. De toute façon, la plupart des bons outils SPARQL implémente 1.1.Citation:
Merci pour vos réponses :-) Il faut donc passer par CONSTRUCT avec SPARQL 1.0 !