[Zebralist] Mixing dublin core with other attributes
walter at katipo.co.nz
Tue Nov 28 03:48:08 CET 2006
I'm writing a Ruby on Rails application that uses ruby-zoom and Zebra
for the backend of search capabilities. I've written a first draft
of a RoR plugin called acts_as_zoom that talks to Zebra via ZOOM. It
uses both ruby-zoom and the Perl ZOOM library for extended services
(via a script call in my Ruby code). I have a couple Zebra databases
up and running and successfully inserting, updating, and deleting
records from acts_as_zoom, as well as having querying working. All
good there, although I'm very new to the Z39.50 world.
Currently I use a slightly modified version of meta.abs that I have
renamed record.abs. Records looks basically like this:
All of the record elements, except for localControlNumber, are Dublin
Core and handled by meta.abs/record.abs fine. Now, I would really
like records that look like this:
<Body-of-text>our text content</Body-of-text>
<!-- this nesting is necessary for indexing/searching arbitrary
fields and added in our abs file, as is Body-of-Text-->
If I want the Dublin Core XML namespace (dc), I could rename
record.abs to dc.abs and do something like so:
<Body-of-text>our html content</Body-of-text>
However, I would rather demarcate with XML via nested elements what
is meta data (Dublin core dc stuff) and what is content (Body-of-text
and Note). Do people have tried and true strategies for using Dublin
Core and Zebra? How about elements that are in DC intermixed in?
Would intermixing other elements invalidate my DC? Recommendations?
One of the reasons I picked Zebra/Z39.50 was so that other systems
could query the Zebra server for my applications records using
standards (Koha is the likely candidate). So I would like to go with
something that will still stay within standards and make mapping to
things like MARC relatively painless.
I'm also not married to using bib1's Note field for arbitrary fields,
so recommendations also accepted there, too.
More information about the Zebralist