おはよう!私はPythonにrdflibを適用します。質問があります。 SPARQLのクエリにどのように変数を入れることができますか? コースでは「OSPF」の代わりに:OSPF!私は、コンソールで私の変数を入力したいmsalvadores @SPARQLでパラメータ化されたクエリ
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.....
。 ---> python parse.py OSPF変数の値(OSPF)は別の値かもしれません。どのようにしてクエリに初期化できますか(WHERE)?私は数日前に変数の補間によって私の質問を解決しました。このように:
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
しかし、私は、それは別の方法を行うことができると仮定します。私の意見では、解決策は私には間違いなく正しく提示されているからです。
あなたの答えをありがとう! – zhalnin
これが正解だと思われる場合は、それを受け入れるを選択してください。 http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work –
私の質問を編集し、私の解決策を追加しました。 – zhalnin