我已经解析了FreeBase数据转储,现在具有以下内容的RDF:

<http://rdf.freebase.com/ns/m.0mspb64> <http://rdf.freebase.com/ns/type.object.type> <http://rdf.freebase.com/ns/music.release_track>
<http://rdf.freebase.com/ns/m.0mspb64> <http://rdf.freebase.com/ns/type.object.name> "Mit Rees und Hans im Bürgli"@de
<http://rdf.freebase.com/ns/m.0mspd6m> <http://rdf.freebase.com/ns/type.object.type> <http://rdf.freebase.com/ns/music.release_track>
<http://rdf.freebase.com/ns/m.0mspd6m> <http://rdf.freebase.com/ns/type.object.name> "Granny Scratch Scratch"@en
.

具有此RDF数据集,我如何提取特定资源的名称和类型?例如,从上面的数据,我想提取:

Mit Rees und Hans im Bürgli ### music.release_track
Granny Scratch Scratch ### music.release_track 
.

有帮助吗?

解决方案

你用什么解析它?您所显示的格式是原始数据格式。

如果您将其加载到RDF商店中,则应能够轻松查询以获取使用SPARQL或商店提供的其他查询接口所需的信息。

如果您只是使用原始文本文件,您应该能够利用它由主题ID排序的事实(您应该验证这仍然是正确的),以便在不需要大量的情况下处理它作为流工作存储(即RAM)。

您需要的唯一临时存储是1)当前主题ID,2)当前主题的名称和3)当前主题的类型。如果类型不是所需的类型(Reford_track),则可以跳到下一组主题三元群。如果它是正确的类型,只要您拥有名称和类型,就可以在三倍输出一行。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top