Linking fragments to full resources in Fedora

Skip to first unread message

Andrew Ashton

Jan 31, 2012, 10:30:27 AM1/31/12
to, Park, Michael
We are working on an OAC experiment with Fedora that aims to provide some basic OAC functionality without requiring any additional overhead (e.g. additional indexers, etc.).

In our sandbox, we're creating Fedora objects for annotations (A-1 in the spec), and optionally creating objects for the body and target (B1 and T1).  This is all fine, but if the target is a fragment of a larger resource (Figure 7-1 in the spec), the spec says to link it to the parent object via dcterms:IsPartOf.  The problem in our implementation is that, as far as I know, Fedora's RDF index only handles two "flavors" of RDF: RELS-EXT (relationships to other resources) and RELS-INT (relationships between parts of the object).  As far as I know, the built-in indexer won't pick up RDF data stored in any other datastreams.  We can safely put most of the OAC relationships in the A1 object's RELS-EXT.  However, if the target is a fragment, and the fragment itself is not a Fedora object, then there is no place to hang the the assertion that the fragment is part of the larger object.  

The RELS-EXT has a rule that only one rdf:Description statement can exist within it, so it doesn't seem like we can add the Fragment->IsPartOf->Whole relationship to the A-1 RELS-EXT. It is possible to make the assertion within the rdf:Description about A1, but that is semantically incorrect, since we aren't trying to say that the annotation (A1) is a part of the larger resource.  

In the case of targets that are actually Fedora objects, I have tried putting the relationship into the RELS-INT of the target object.  However, in that case we run into the problem that any subject within the RELS-INT has to be a resource that is a dissemination or datastream of the object.  A fragment identifier such as URI#foo is not valid unless it is explicitly built into the model for that object.

So, given these constraints, I'm wondering if there is any obvious and OAC-friendly way to make the link between the fragment and the whole object.  I considered using oac:Annotates to link A-1 to the larger resource, but it appears that is intended to provide a direct link between the Target and Body. I'd prefer not to involve a stand-off indexer because the purpose of this experiment is to make it easy to deploy OAC in Fedora.  

Any ideas?  

Thanks, Andy

Robert Sanderson

Feb 7, 2012, 5:29:09 PM2/7/12
to, Park, Michael
Hi Andy,

If the Annotation is a first class object in Fedora, can you just
associate an RDF datastream with it as a blob?

I understand that then the ability to query it would be limited to
what can go into RELS-* but at least you'd be serving out the right


Andrew Ashton

Feb 7, 2012, 7:20:52 PM2/7/12
to, Park, Michael

Thanks, that's pretty much what we'll end up doing.  This experiment is trying to see how much the existing Fedora stuff can support OAC, so this is a good example of a place where it doesn't.  Thanks for wading through my novel ;).

Reply all
Reply to author
0 new messages