使用 spaqrl 访问 dbpedia。如何为每部电影找到多个演员?

发布于 2024-12-19 18:20:35 字数 552 浏览 1 评论 0原文

我想获取 dbpedia 上所有电影的数据以及与每部电影相关的演员列表。 我运行了一个查询:

PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>

PREFIX foaf: <http://xmlns.com/foaf/0.1/>

SELECT DISTINCT ?film_title ?star_name
where {?film_title rdf:type <http://dbpedia.org/ontology/Film> .
?film_title  foaf:name ?film_name .
?film_title rdfs:comment ?film_abstract .
?film_title dbpedia-owl:starring ?star .
?star dbpprop:name ?star_name
}

这只给了我第一个演员的名字。如何获取每部电影的完整演员列表?

I want to get data of all movies present on dbpedia and list of actors associated with each movie.
I ran a query:

PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>

PREFIX foaf: <http://xmlns.com/foaf/0.1/>

SELECT DISTINCT ?film_title ?star_name
where {?film_title rdf:type <http://dbpedia.org/ontology/Film> .
?film_title  foaf:name ?film_name .
?film_title rdfs:comment ?film_abstract .
?film_title dbpedia-owl:starring ?star .
?star dbpprop:name ?star_name
}

This is giving me only first actor name. How do I get complete list of actors for each movie?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

浪漫之都 2024-12-26 18:20:35

DPedia 可能无法在其记录中保存所有电影的所有演员。在某些情况下,只有一个演员与一部电影相关联,在某些情况下,有多个演员与电影相关联。尽管您可能会得到重复项,但您的查询似乎是正确的,因为参与者可能有多个与其关联的 dbpprop:name 属性。或者,您可以使用以下使用子查询的查询:

PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>

PREFIX foaf: <http://xmlns.com/foaf/0.1/>

SELECT ?film_title ?star WHERE { {SELECT DISTINCT ?film_title
where {?film_title rdf:type <http://dbpedia.org/ontology/Film> } limit 10} . 
?film_title dbpedia-owl:starring ?star .
}

DPedia might not hold all the actors for all the movies in it's records. In some cases only a single actor is associated with a movie, in some cases several. Your query seams to be correct although you might be getting duplicates because an actor might have several dbpprop:name properties associated with it. Alternativlly you can use the following query using subqueries:

PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>

PREFIX foaf: <http://xmlns.com/foaf/0.1/>

SELECT ?film_title ?star WHERE { {SELECT DISTINCT ?film_title
where {?film_title rdf:type <http://dbpedia.org/ontology/Film> } limit 10} . 
?film_title dbpedia-owl:starring ?star .
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文