Я пытаюсь передать параметр в запрос SPARQL; он не показывает никакого результата, а также не показывает никаких ошибок. Я прочитал предыдущие сообщения, такие как Как создать параметризованный запрос в SPARQLWrapper на Python, но эта проблема ранее не обсуждалась.
from rdflib import Graph
sparql = SPARQLWrapper("https://agrovoc.uniroma2.it/sparql")
my_variable = 'biomass'
sparql.setQuery("""
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX skosxl: <http://www.w3.org/2008/05/skos-xl#>
SELECT *
WHERE {
?subject a skos:Concept .
?subject skosxl:prefLabel ?xLab .
?xLab skosxl:literalForm "+my_variable+"@en .
} """)
sparql.setReturnFormat(JSON)
results = sparql.query().convert()
print(results)
Однако следующее ниже работает нормально.
from SPARQLWrapper import SPARQLWrapper, RDFXML, JSON, XML, N3
from rdflib import Graph
sparql = SPARQLWrapper("https://agrovoc.uniroma2.it/sparql")
sparql.setQuery("""
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX skosxl: <http://www.w3.org/2008/05/skos-xl#>
SELECT *
WHERE {
?subject a skos:Concept .
?subject skosxl:prefLabel ?xLab .
?xLab skosxl:literalForm "biomass"@en .
} """)
sparql.setReturnFormat(JSON)
results = sparql.query().convert()
print(results)