On occasion, these lists see a question about indexing XML metadata into the 
Resource Index. It has been possible to do that, but has required writing fresh 
Java to engage with the RDF triple generation gear that Fedora provides.

Recently I wrote a component, housed here:

http://ajs6f.github.com/fcrepo-xslt-triplegenerator

that allows one to extract RDF triples from XML metadata datastreams and have 
them available in the Resource Index using only XSLT stylesheets (and a little 
adjustment to the configuration of your repository). This extraction affects 
_only_ the Resource Index: it does not affect the relationships that you 
explicitly store with your objects (in RELS-EXT and RELS-INT), and the API 
methods that work over those explicit relationships will not see or modify 
these generated triples. Why then would you want to use it? The most important 
reason is that this module will allow you to manage triples in the Resource 
Index that have subjects that are not URIs for Fedora objects or their 
datastreams. The normal Fedora API and the conditions of validity for RELS-INT 
and RELS-EXT will _not_ allow you to do this.

By using this capability, you can create very powerful and rich descriptions of 
your resources in the RI (e.g. using Qualified Dublin Core). By using it 
without forethought and care, you can hose your RI very badly. See here:

http://ajs6f.github.com/fcrepo-xslt-triplegenerator/warnings.html

My hope is that this will allow folks to experiment with advanced uses of the 
Resource Index and RDF description without breaking the commitment and desire 
that many of us have to maintain XML metadata as the authoritative description 
of curated objects. I also hope that this will serve as an advertisement of the 
fact that Fedora's triple generation system is configurable and extensible, 
which doesn't seem to be well-known.

This is _not_ a component that has been heavily tested or is in production here 
at UVa. It relies on young code from the Apache Any23 project. There may be 
bugs in it. Please don't throw this into the works of a production repository. 
It's meant for experimentation, and if it proves useful, we can always advance 
this idea into the main development of Fedora Commons. Please let me know if it 
does prove useful (or even sounds interesting) to you, and feel free to direct 
questions or comments to me as well.

Happy tinkering!

---
A. Soroka
Software & Systems Engineering :: Online Library Environment
the University of Virginia Library


------------------------------------------------------------------------------
Monitor your physical, virtual and cloud infrastructure from a single
web console. Get in-depth insight into apps, servers, databases, vmware,
SAP, cloud infrastructure, etc. Download 30-day Free Trial.
Pricing starts from $795 for 25 servers or applications!
http://p.sf.net/sfu/zoho_dev2dev_nov
_______________________________________________
Fedora-commons-developers mailing list
Fedora-commons-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/fedora-commons-developers

Reply via email to