incubator-clerezza-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Henry Story <henry.st...@bblfish.net>
Subject Naming Graphs
Date Fri, 20 May 2011 11:25:04 GMT
In another thread I wrote:

>  think it would be interesting to add a method for getting the graph name, btw, null
if there is none


Equality
--------

So as Reto pointed out this could bring up an issue of what the equality criterion of two
graphs are. 

Currently the equality function is inherited from java.util.AbstractCollection which just
verified that all members internally are the same. (Btw, that looks like something one should
be careful about: calculating identity of large graphs seems a bit dangerous)

(I think that's why there is a TripleCollection which does not define equality.)

So there are a few answers one could have.
 - two graphs are equal if their names are the same
 - two graphs are equal if their statements are the same

With statements based equality it is already clear that that will depend on whether inferencing
is enabled or not, and it could change as more information is available for inferencing.

I wonder where graph equality is used at all, as it seems like a difficult to define matter.

Use Cases
---------

  From a graph be able to find meta data about it easily: who said it, where when, is the
 current graph up to date?

  When fetching a graph from TcProvider with methods such as 

  tc.getGraph("http://xmlns.com/foaf/knows") 

  have the returned graph indicate the proper name of the graph where that object is defined.
That makes it easier to automate spiders. 

 (not so sure but as a thought: It could allow for a very strict quasi identity criterion,
that could be easy to calculate: 
two graphs are the same  if
  the objects are the same
  or the names are the same and the hashes of all their statements are the same
 )

Henry
 
Social Web Architect
http://bblfish.net/


Mime
View raw message