SPARQLWrapper - 没有响应的简单查询

问题描述

我正在寻找一些帮助来启动这个非常简单的查询,以便我可以在它的基础上进行构建。目前我没有检索任何结果,但此查询适用于 Protege。

from SPARQLWrapper import SPARQLWrapper,JSON,XML

sparql = SPARQLWrapper("http://dbpedia.org/sparql")

sparql.setQuery("""
    PREFIX pz: <http://protege.stanford.edu/ontologies/pizza/pizza.owl#>
    PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>

    SELECT ?pizza
    WHERE {
        ?pizza rdfs:subClassOf pz:NamedPizza .
    }
""")
sparql.setReturnFormat(JSON)
results = sparql.query().convert()

解决方法

正在将查询发送到 DBpedia 数据库。

查询包含 pz:NamedPizza。

DBpedia 没有 <http://protege.stanford.edu/ontologies/pizza/pizza.owl#> 信息,因此使用 DBpedia 的数据查询模式不匹配。

当您查询 Protege 时,它​​确实有您的本地披萨数据,因此查询有结果。