Requêtes paramétrées SPARQL
-
29-10-2019 - |
Question
Bonne journée! J'applique rdflib pour python. J'ai une question. Comment puis-je mettre la variable dans la requête de Sparql? Au lieu de «OSPF» en cours: OSPF!
qres = g.query(
"""SELECT ?x ?z ?y
WHERE {
course:OSPF course:termName ?x.
course:OSPF ?s ?t.
?s ?d ?z.
?t course:termName ?y.
FILTER (regex(?z,"[^a-z]","i") && isLiteral(?z) )
}"""
,initNs=dict(course=Namespace.....
@msalvadoresJe veux entrer ma variable par console. ---> python parse.py ospf Une valeur de variable (OSPF) peut en être une autre. Comment puis-je l'initialiser dans la requête (où)? J'ai résolu ma question par interpolation de variables il y a plusieurs jours. Comme ça:
qtest = "OSPF","OSPF"
q =( """SELECT ?x ?z ?y\
WHERE {\
course:%s course:termName ?x.\
course:%s ?s ?t.\
?s ?d ?z.\
?t course:termName ?y.\
FILTER (regex(?z,'[^a-z0-9]','i') && isLiteral(?z) )\
}ORDER BY ASC(?s)\
""")% qtest
qres = g.query(q, initNs=dict(course=Namespace
Mais je suppose que cela pourrait être fait d'une autre manière. Parce qu'à mon avis, la solution n'est pas tout à fait correcte par moi.
Pas de solution correcte
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow