0

我有一个问题问你。

我想删除文件 RDF 中的重复三元组​​。例如,我有这两个 RDF 三元组:

三重 1=

  • rdf:描述 rdf:about="http://Group/row1"
    • vocab:regione 坎帕尼亚 /vocab:regione
    • vocab:nome 那不勒斯 /vocab:nome
    • vocab:codice 不适用 /vocab:codice
  • /rdf:描述

其中 vocab:regione、vocab:nome 和 vocab:codice 是谓词。

三重 2=

  • rdf:描述 rdf:about="http://Group/row1"
    • vocab:nome 那不勒斯 /vocab:nome
    • vocab:codice 不适用 /vocab:codice
  • /rdf:描述

其中 vocab:nome 和 vocab:codice 是谓词。

在这种情况下,“Triple2”包含在“Triple1”中。是否应该删除“Triple2”?

提前致谢。

4

1 回答 1

4

RDF 是基于图的表示,而图(在这个意义上)是一边。根据定义,集合没有重复的元素。当然,RDF 图的特定序列化可能会多次描述同一个三元组,并且您可能希望避免这种情况。作为术语说明,您所谓的“三元组 1”实际上是三个三元组:

group:row1  vocab:codice  "NA" .
group:row1  vocab:nome  "Napoli".
group:row1  vocab:regione "Campania".

而你所谓的“三元组 2”实际上是两个三元组:

group:row1  vocab:codice  "NA" .
group:row1  vocab:nome  "Napoli".

无论如何:(i)在数据中多次表示相同的三元组实际上应该不是问题;(ii) 如果你想删除它,那么读入图表(使用几乎任何 RDF 处理工具)并再次写出它应该会给你一个没有重复信息的表示。例如,假设您有以下内容data.rdf

<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:group="http://stackoverflow.com/q/23241612/1281433/group/"
    xmlns:vocab="http://stackoverflow.com/q/23241612/1281433/vocab/">
  <rdf:Description rdf:about="http://stackoverflow.com/q/23241612/1281433/group/row1">
    <vocab:regione>Campania</vocab:regione>
    <vocab:nome>Napoli</vocab:nome>
    <vocab:codice>NA</vocab:codice>
  </rdf:Description>
  <rdf:Description rdf:about="http://stackoverflow.com/q/23241612/1281433/group/row1">
    <vocab:nome>Napoli</vocab:nome>
    <vocab:codice>NA</vocab:codice>
  </rdf:Description>
</rdf:RDF>

当你用 Jena's 读它rdfcat并再次写出来时,你会得到以下结果:

$ rdfcat data.rdf
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:group="http://stackoverflow.com/q/23241612/1281433/group/"
    xmlns:vocab="http://stackoverflow.com/q/23241612/1281433/vocab/">
  <rdf:Description rdf:about="http://stackoverflow.com/q/23241612/1281433/group/row1">
    <vocab:regione>Campania</vocab:regione>
    <vocab:nome>Napoli</vocab:nome>
    <vocab:codice>NA</vocab:codice>
  </rdf:Description>
</rdf:RDF>
于 2014-04-23T11:42:22.273 回答