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
