SPARQL - 从skos中选择:category - Virtuoso 37000
我有SPARQL问题。我想从类别中选择一些东西。例如科目。我在http://dbpedia.org/snorql中提出这样的查询。SPARQL - 从skos中选择:category - Virtuoso 37000
SELECT ?category ?subject WHERE
{
?category a skos:Concept .
?category skos:Concept: American_punk_rock_guitarists.
?category dct:subject ?subject .
} LIMIT 1000
我有错误Virtuoso 37000.我不明白为什么。
P.S. SPARQL - 学习SPARQL,第二版 使用SPARQL 1.1查询和更新?
您至少有一个语法错误:第二个三元组中的第二个冒号(:)。
语义上......我并不真正了解dbpedia中的类或谓词...但是可以使用skos:Concept既是一个类型又是一个谓词?
我给你写了一个返回类别“American_punk_rock_guitarists”的10名成员
我把这个一起前往dbpedia's faceted free text search和熟悉自己与American punk rock guitarists概念有效的查询,具体Joey Ramone
prefix dbpcat: <http://dbpedia.org/resource/Category:>
SELECT ?subject ?category
WHERE
{ values ?category { dbpcat:American_punk_rock_guitarists } .
?subject dct:subject ?category }
LIMIT 10
在Virtuoso 37000错误方面,您的错误如下:
您在之后: skos:概念在第2行,并且您错过了“American_punk_rock_guitarists”的前缀。
-
American_punk_rock_guitarists应该已经dbpcat:American_punk_rock_guitarists。虽然这是要给你一个空的结果,语法正确的版本,或者您的查询是:
prefix dbpcat: <http://dbpedia.org/resource/Category:> SELECT ?category ?subject WHERE { ?category a skos:Concept . ?category skos:Concept dbp:catAmerican_punk_rock_guitarists. ?category dct:subject ?subject . } LIMIT 1000
这将返回因为下面的空集:
一个。 skos:概念是一个类,而不是一个属性。根据{?Subject?Predicate?Object},您只能在合适的SPARQL查询中将skos:Concept视为?主体和/或?对象[1]。区分类和属性的简单方法是,类应以大写字母(例如:skos:概念)开头,属性(谓词)应以小写字母开头(例如:rdf:type)。
b。 dbpcat:American_punk_rock_guitarists属于“skos:Concept”类型。如果您查看此实体(?主题)的DBPedia页面,您将在“rdf:type”行中看到这一点。仔细观察,你会发现这个概念是一个dct:subject各种其他实体[2]。
除了@马克·米勒的查询这一块也将提供结果:
prefix dbpcat: <http://dbpedia.org/resource/Category:>
SELECT ?subject ?category
WHERE
{ ?subject dct:subject ?category.
?category a skos:Concept.
filter(?category = dbpcat:American_punk_rock_guitarists).
}
LIMIT 10
SKOS:这里不需要概念,仅仅因为它是如何被使用的例子,如果你正在寻找的东西如“所有类型 - skos:概念”。
链接:
二三折模式显然是错误的。请检查那里的语法。 – AKSW
然后,你想“从类别中选择一些东西,例如主题” - 这完全令人困惑,你在混合东西:属于一个类别的东西具有类别的主题。看到下面的答案,这是正确的方法。 – AKSW
为了将来的参考,完整的错误文本通常比错误代码本身更具启发性。另外,至少在您学习SPARQL时,您可能会发现使用[拖放式图形查询构建器iSPARQL](http://dbpedia.org/isparql/)很有帮助。 – TallTed