Hi all,

I've just committed a new version to

http://svn.apache.org/viewvc/commons/sandbox/rdf/trunk/

The most obvious change if that instead of having TripleCollection, MGraph
and Graph there is now Graph and ImmutableGraph. With this change the usage
of the term "graph" is a bit closer to the colloquial usage (at the price
of being a bit more distant to the usage in the specs).

I've also added some questions and answers to the Readme highlighting the
points where the API offers advantages compared with other APIs and API
proposals.

The API goes beyond the most minimalistic API by allowing for graph
listeners to be notified when a graph is changed. This is a popular feature
that cannot easily be added on top of the core API so it is included.

I've added the getLock method to the main Graph interface. API notes
describe how implementation can easily provide such a lock and what to do
in situation where no such lock is needed. In clerezza we have been using a
subinterface LockableMGraph to provide this feature. Experience has shown
however that this approach makes it unnecessary difficult to write generic
code, for example generic methods processing a Graph often had to check the
type and downcast to do the locking on graphs than can be locked.


Please let me know about what you think about this proposal.

Cheers,
Reto

Reply via email to