On Thu, 2009-07-30 at 12:14 -0400, Chris Wilper wrote:

> For notification of relationship-level (err.. statement-level)
> changes, currently apps can subscribe to the appropriate RELS-*
> changes, but as you point out, determining the diffs is difficult
> because you have to look at the previous revision, and if it's a purge
> operation, that's not available.

In addition, since the RDF model of a fedora object** includes factors
outside of RELS-EXT/RELS-INT (such as state, modification date, DC
datastream content, and the existence of datastreams in general) the
task of determining diffs is even more difficult.  The number of
operations on a fedora object that may imply statement-level changes is
fairly large.

** By this, I mean the particular RDF model that has been chosen to be
indexed in the Resource Index, composed "user" and "system" statements.

> Although this problem (communicating diffs) is general and not
> restricted to RDF, I think it's fair for the Fedora repository to be
> format-aware in this case because we've already acknowledged RELS-* as
> special citizens of the core repository.

At first glance, I see at least three possibilities for conveying RDF
diffs via messaging:

1) Extend message format to include statement diffs for RELS-* modifying
operations
2) Extend message format to include implied statement diffs for ALL
operations
3) Create new message topic (distinct from fedora.apim or fedora.apia)
that can be enabled/disabled wholesale, for the purpose of sending diff
messages created whenever some operation implies adding or removing
statements from the RDF model**

(3) seems attractive because it could possibly be a general pattern for
other sorts of diffs, but (2) is pretty simple and perhaps more
lightweight.  (1) would fail to address the issue of non RELS-*
statements, if that's important.  I still need to convince myself that
diffs via messages is the best approach in general, though...

Anyway, I'm just thinking out loud to share some thoughts

  -Aaron



------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Fedora-commons-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/fedora-commons-developers

Reply via email to