这是我的SPARQL查询,不能用于dbpedia.org
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX uni: http://www.semanticweb.org/admin/ontologies/2017/4/untitled ontology-19#
SELECT ?property ?subject ?prop ?object
WHERE {
uni:Product ?property ?subject .
OPTIONAL {
?subject ?prop ?object
}
}
答案 0 :(得分:0)
您的语法是非法的。我通过用下划线替换uni:definition中的非法空格字符来“修复”它。毫不奇怪,修改后的查询运行但返回0结果。
您确定DBpedia中有实体甚至是远程的任何路径,例如<http://www.semanticweb.org/admin/ontologies/2017/4/untitled_ontology-19#>
吗?您是在尝试查询您创建的数据,还是查询公共DBpedia数据集中的数据?如果您创建了以<http://www.semanticweb.org/admin/ontologies/2017/4/untitled_ontology-19#>
开头的实体,那么它们将无法在DBpedia SPARQL端点上使用。
# all prefix expansions were missing angle brackets
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
# replaced whitespace with underscore
PREFIX uni: <http://www.semanticweb.org/admin/ontologies/2017/4/untitled_ontology-19#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
SELECT ?property ?subject ?prop ?object
WHERE
{ uni:Product ?property ?subject
OPTIONAL
{ ?subject ?prop ?object }
}
答案 1 :(得分:0)
正如Mark所说,首先查询中的非法字符会阻止其运行。其次,如果您在<http://www.semanticweb.org/admin/ontologies/2017/4/untitled_ontology-19#>
下创建了数据,则它将无法在DBpedia中使用。如果您愿意整合<http://www.semanticweb.org/admin/ontologies/2017/4/untitled_ontology-19#>
和DBpedia
的结果,您有两种选择:
uni:Product
在DBpedia上有URI,请使用它。