2014-04-23 7 views
0

질문이 있습니다.중복 된 트리플 RDF

내 파일 RDF에서 중복 된 트리플을 제거하고 싶습니다.

배 1 =

  • RDF : 설명 RDF : 약 = 예를 들어, 나는 트리플이 두 RDF 그룹이 "에 http : // 그룹/ROW1"
    • Vocab의 : regione 캄파/Vocab의 : regione
    • Vocab의 남자 이름 나폴리/Vocab의 남자 이름
    • Vocab의 : codice NA/Vocab의 : codice
  • /RDF : 설명
  • Vocab의

: regione, Vocab의 남자 이름과 Vocab의 : codice 술어이다.

배 2 =

  • RDF : 설명 RDF : 약 = "HTTP : // 그룹/ROW1"
    • Vocab의 남자 이름 나폴리/Vocab의 남자 이름
    • Vocab의 : codice NA/vocab : codice
  • /rdf : 설명

여기서 vocab : nome 및 vocab : codice는 술어입니다.

이 경우 "Triple2"가 "Triple1"에 포함됩니다. "Triple2"가 제거되어야합니까?

미리 감사드립니다.

답변

4

RDF는 그래프를 기반으로 한 표현이며 그래프 (이 의미에서)는 으로 설정되고 가장자리는입니다. 정의에 따라 세트에는 중복 요소가 없습니다. 물론 RDF 그래프의 특정 직렬화는 동일한 트리플을 두 번 이상 나타낼 수 있으며이를 방지하려는 이유가있을 수 있습니다. 용어에 대한 메모, 당신은 전화 한 것으로 "1 트리플"실제로 트리플입니다 :

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

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

당신이 전화 한 일 "2 트리플"실제로 두 세배입니다

어쨌든 : (i) 실제로 데이터에서 동일한 트리플을 여러 번 나타낼 때 문제가되어서는 안됩니다. (ii) 제거하고 싶다면, 그래프를 읽고 (RDF 처리 도구와 함께) 읽고 다시 쓰면 중복 된 정보가없는 표현을 제공해야합니다. 예를 들어, 다음과 같이 data.rdf이 있다고 가정합니다.당신이 예나의 rdfcat 그것을 읽을 때 여기

<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> 

당신이 무엇을 얻을 다시 쓰는 :

$ 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>