Re: RDF-Entailment: Remove duplicate anonymous resources - looking for an algorithm

Andreas Andreakis wrote:

> could you list more usecases of your project, in which 
> resource-dublication occurs ?

Actually I'm looking for a generic approach, if the application knows 
about the ontologies there are always better approaches (at least in 
terms of performance), but the generic approach is useful at least to 
find where the domain-aware code wasn't smart enough to keep the model 
lean all over the time.

But your example:

Given the graph

g1:
[ foaf:mbox <mailto:test@example.org>;
  foaf:knows [ foaf:name "Jo"];
  foaf:knows [ foaf:name "Peter"]
].

and the graph
g2:
[ foaf:mbox <mailto:test@example.org>;
  foaf:knows [ foaf:name "Jo"];
  foaf:knows [ foaf:name "Bill"]
].

With a non-IFP-aware merging we get
g3:
[ foaf:mbox <mailto:test@example.org>;
  foaf:knows [ foaf:name "Jo"];
  foaf:knows [ foaf:name "Peter"]
].
[ foaf:mbox <mailto:test@example.org>;
  foaf:knows [ foaf:name "Jo"];
  foaf:knows [ foaf:name "Bill"]
].


Using IFPs but without creating a lean graph we get
g4:
[ foaf:mbox <mailto:test@example.org>;
  foaf:knows [ foaf:name "Jo"];
  foaf:knows [ foaf:name "Peter"]
  foaf:knows [ foaf:name "Jo"];
  foaf:knows [ foaf:name "Bill"]
].

Now, the algorithm I'm looking for would produce the lean graph:
g5:
[ foaf:mbox <mailto:test@example.org>;
  foaf:knows [ foaf:name "Jo"];
  foaf:knows [ foaf:name "Peter"]
  foaf:knows [ foaf:name "Bill"]
].


But of course, this is about the easiest possible case, but it should 
that the algorithm is not only of use with pathological graphs. You may 
make the example a bit more complex using the foaf-address vocabulary 
located at http://rdfweb.org/topic/AddressVocab, where the anonymous 
property values would have in turn properties with anonymous values.

regards,
reto

Received on Monday, 21 November 2005 12:38:33 UTC