DBPedia SPARQL,return 一定数量的实体相关页面 URI,除了实体属于 Owl:Thing 的一组子类的 URI
DBPedia SPARQL, return certain number of relevant page URIs for entity EXCEPT the URIs where the entity belongs to a set of subclasses of Owl:Thing
- 寻找 SPARQL 查询以执行以下操作:
比如我有Apple
这个词。根据 ontology,Apple
可能指的是组织 Apple_Inc
或 Plants
class 的 Species
。 Owl: Thing
有一个名为 Species
的子 class,所以我想 return 那些关键字 Apple
不属于的大多数 relevant/maximum-hit URI Species
子class。因此,当您 return 所有 URI 时,http://dbpedia.org/page/Apple
不应是其中之一,Species
subclass.[= 下的任何相关 link 也不得39=]
maximum-hit/most 相关是指与查询匹配的前 returned 结果!就像当你访问 PrefixSearch (i.e. Autocomplete)
API 时,它有一个名为 MaxHits
.
的参数
例如 http://lookup.dbpedia.org/api/search/PrefixSearch?QueryClass=&MaxHits=2&QueryString=berl 是一个 link,您想要 return 与 QueryString=berl
.
匹配的前 2 个 URI
好像我真的很难解释我到目前为止所做的工作,因为我无法理解结构以及如何制定正确的查询。
关于 SPARQL 中的否定,我在 link here 中找到了文档的相关部分。但是我不知道如何以及从哪里开始,也无法理解为什么使用 ?person
这样的关键字..我可以理解 person
用于 select 很好.. 人名,但我想知道如何以及在哪里找到这些关键字?person
、?name
表示特定实体..
SELECT ?uri ?label
WHERE {
?uri rdfs:label ?label .
filter(?label="car"@en)
}
如果有人能 link 我可以清楚地阅读和理解 ?uri
用于 select 形式的 URI 的文档部分,我将不胜感激 www.dbpedia.org'/page/SomeEntity
以及这些?person
、?name
、?label
代表什么。
我真的迷路了..我会上去开始一次吃一头大象。现在,如果我能得到答案,我将不胜感激。
- 如果你知道我在哪里可以避免学习和使用 SPARQL,那也行!我很了解 Python,所以利用 API 来提取这些信息对我来说也很好。这个question是我发的
@Stanislav-Kravin 发布的答案 --
SELECT DISTINCT ?s
WHERE
{ ?s a owl:Thing .
?s rdfs:label ?label .
FILTER ( LANGMATCHES ( LANG ( ?label ), 'en' ) )
?label bif:contains '"apple"' .
FILTER NOT EXISTS { ?s rdf:type/rdfs:subClassOf* dbo:Species }
}
- 寻找 SPARQL 查询以执行以下操作:
比如我有Apple
这个词。根据 ontology,Apple
可能指的是组织 Apple_Inc
或 Plants
class 的 Species
。 Owl: Thing
有一个名为 Species
的子 class,所以我想 return 那些关键字 Apple
不属于的大多数 relevant/maximum-hit URI Species
子class。因此,当您 return 所有 URI 时,http://dbpedia.org/page/Apple
不应是其中之一,Species
subclass.[= 下的任何相关 link 也不得39=]
maximum-hit/most 相关是指与查询匹配的前 returned 结果!就像当你访问 PrefixSearch (i.e. Autocomplete)
API 时,它有一个名为 MaxHits
.
例如 http://lookup.dbpedia.org/api/search/PrefixSearch?QueryClass=&MaxHits=2&QueryString=berl 是一个 link,您想要 return 与 QueryString=berl
.
好像我真的很难解释我到目前为止所做的工作,因为我无法理解结构以及如何制定正确的查询。
关于 SPARQL 中的否定,我在 link here 中找到了文档的相关部分。但是我不知道如何以及从哪里开始,也无法理解为什么使用 ?person
这样的关键字..我可以理解 person
用于 select 很好.. 人名,但我想知道如何以及在哪里找到这些关键字?person
、?name
表示特定实体..
SELECT ?uri ?label
WHERE {
?uri rdfs:label ?label .
filter(?label="car"@en)
}
如果有人能 link 我可以清楚地阅读和理解 ?uri
用于 select 形式的 URI 的文档部分,我将不胜感激 www.dbpedia.org'/page/SomeEntity
以及这些?person
、?name
、?label
代表什么。
我真的迷路了..我会上去开始一次吃一头大象。现在,如果我能得到答案,我将不胜感激。
- 如果你知道我在哪里可以避免学习和使用 SPARQL,那也行!我很了解 Python,所以利用 API 来提取这些信息对我来说也很好。这个question是我发的
@Stanislav-Kravin 发布的答案 --
SELECT DISTINCT ?s
WHERE
{ ?s a owl:Thing .
?s rdfs:label ?label .
FILTER ( LANGMATCHES ( LANG ( ?label ), 'en' ) )
?label bif:contains '"apple"' .
FILTER NOT EXISTS { ?s rdf:type/rdfs:subClassOf* dbo:Species }
}