问题描述
从昨天开始,我就无法对这个 sparql 请求做我想做的事情。
Select ?poi ?takePlaceAt
WHERE {
?poi a :PointOfInterest;
:isLocatedAt ?place.
?poi dc:identifier ?dcIdentifier.
Optional {
?poi :takesPlaceAt ?takePlaceAt.
?takePlaceAt :startDate ?startDate.
?takePlaceAt :startTime ?startTime.
}
}
limit 100
takePlaceAt 返回一个 url 给我。所以我必须到下面的级别来检索开始日期,结束日期等。
Optional {
{ select ?poi (concat(group_concat(distinct ?takePlaceAt;SEParaTOR="#"),"##",group_concat(distinct ?startDate;SEParaTOR="#")) as ?types) where {
?poi :takesPlaceAt ?takePlaceAt.
?takePlaceAt :startDate ?startDate.
?takePlaceAt :startTime ?startTime.
} group by ?poi
}
}
}
结果返回给我......什么都没有
Optional {
{ select ?poi (GROUP_CONCAT(disTINCT ?result; separator = " & ") as ?types) where {
?poi :takesPlaceAt ?takePlaceAt.
?takePlaceAt :startDate ?startDate.
?takePlaceAt :startTime ?startTime.
BIND(CONCAT(?takePlaceAt," lives in ",?startDate) AS ?result)
} group by ?poi
}
}
}
但是,我无法连接。
查看 takePlaceAt 可以包含一个或多个我想做的网址:
url1 # startdate1 # startdate1 | url2 # startdate2 # startdate2 ..
我已经不得不进行一些连接,但我不明白为什么我不能用这个进行连接。
你能帮我吗?
非常感谢
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)