Sparql 如何排除重复项
我想通过名字得到一个人的出生日期,但不要重复 我在这里看到它们是因为日期格式不同:Sparql 如何排除重复项,sparql,dbpedia,Sparql,Dbpedia,我想通过名字得到一个人的出生日期,但不要重复 我在这里看到它们是因为日期格式不同:03和3 但我不知道如何实际忽略它,尝试了选择distinct,但没有帮助 PREFIX dbo: <http://dbpedia.org/ontology/> PREFIX foaf: <http://xmlns.com/foaf/0.1/> select distinct ?person ?birthDate where { ?person foaf:name "Julius Cae
03
和3
但我不知道如何实际忽略它,尝试了选择distinct
,但没有帮助
PREFIX dbo: <http://dbpedia.org/ontology/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
select distinct ?person ?birthDate
where {
?person foaf:name "Julius Caesar"@en.
?person a foaf:Person.
?person dbo:birthDate ?birthDate
}
当我只需要3个结果而不是5个结果时。好吧,这些是不同的
结果行
如果您不关心哪些日期不一定有效,可以使用SAMPLE()
,如下所示
前缀dbo:
前缀foaf:
选择不同的人
(样本(?出生日期)为?DoB)
哪里
{
人物foaf:名字“朱利叶斯·凯撒”@en。
?人员a foaf:人员。
?个人dbo:生日?生日
}
几乎不可能,问题在于数据集中仍然包含无效的日期文本,即“-100-7-13”^^xsd:date
无效,然后他们添加了有效的表单“-100-07-13”^^xsd:date
。您应该联系DBpedia的工作人员和/或尝试dbpedialiveendpoint
person birthDate
1 http://dbpedia.org/resource/Julius_Caesar "-100-07-13"^^xsd:date
2 http://dbpedia.org/resource/Julius_Caesar "-100-7-13"^^xsd:date
3 http://dbpedia.org/resource/Julius_Caesar_(cricketer) "1830-03-25"^^xsd:date
4 http://dbpedia.org/resource/Julius_Caesar_(cricketer) "1830-3-25"^^xsd:date
5 http://dbpedia.org/resource/Julius_Caesar_(judge) "1557-1-1"^^xsd:date
PREFIX dbo: <http://dbpedia.org/ontology/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
SELECT DISTINCT ?person
( SAMPLE(?birthDate) AS ?DoB )
WHERE
{
?person foaf:name "Julius Caesar"@en .
?person a foaf:Person .
?person dbo:birthDate ?birthDate
}