Murray Altheim wrote: > Dave Viner wrote: > [...] > >> Have you contacted Murray about the XNode implementation? It was >> put into >> the scratchpad, and looked promising but we hit some odd licensing issues >> that were never resolved. (Or at least thats the last I remember of it.) > > If the code in the scratchpad has the wrong license, that's my > fault. All of the XNode API code *should* have an Apache license. > The API was designed for release to Apache, and I know that nobody > at Sun would care to alter that idea.
Evidence of this (if anyone cares to know) is the XNode XML namespace URI, which is an Apache URL.
> If you need a copy that does I'd be happy to send it on to whoever > is willing to update the scratchpad (I'm behind a firewall that > won't let my cvs work remotely). > > Sorry, I've been buried under in a lit review lately and am only > resurfacing today... There's no reason XNode couldn't include > hierarchical metadata in its <xnode:Header> element. We'd just > need to add a method to obtain it (I can't remember right now > where I left that issue).
Okay, I looked at my notes and here's a syntax example. The asterisked line is the beginning of what could be used to store hierarchical metadata, in this case Dublin Core RDF. You'd just obtain the entire element rather than simply its name-value attributes. We would have to add a method to do this, since the current one returns the property value from the attribute, not the entire element. It's an easy fix.
I'd still recommend using 'name' to identify the metadata though.
<xnode:Envelope xmlns:xnode="http://www.apache.org/xnode/1.0/"> <xnode:Header xnode:created="2001-10-22T18:33:24"> <xnode:Property name="type" value="application/xhtml+xml" /> * <xnode:Property name="DC"> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/"> <rdf:Description rdf:about="http://www.ilrt.bristol.ac.uk/people/cmdjb/"> <dc:title>Dave Beckett's Home Page</dc:title> <dc:creator>Dave Beckett</dc:creator> <dc:publisher>ILRT, University of Bristol</dc:publisher> <dc:date>2002-07-31</dc:date> </rdf:Description> </rdf:RDF> </xnode:Property> </xnode:Header> <xnode:Body> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Dave Beckett's Home Page</title> [rest of stored content...] </html> </xnode:Body> </xnode:Envelope>
I stole the RDF from
http://dublincore.org/documents/2002/07/31/dcmes-xml/
One potential failing of XNode is it was not designed to add metadata to Collections. I've not thought a whit about this and would certainly entertain any suggestions on what changes to the API might be needed, if any. I'm not sure there would be. The <xnode:Body> would just contain the entire Collection -- there might be some Xindice-based problems with that though.
API javadocs at
http://kmi.open.ac.uk/projects/ceryle/doc/api/org/apache/xnode/package-summary.html
Murray
...................................................................... Murray Altheim <http://kmi.open.ac.uk/people/murray/> Knowledge Media Institute The Open University, Milton Keynes, Bucks, MK7 6AA, UK
"In Las Vegas Mr Gates also demonstrated a prototype fridge magnet which can be programmed to receive traffic reports, sports results and advertisements from local restaurants using the same FM signal as the wristwatch." -- The Guardian, 10 Jan 2003.