Hi, I'm not member of the development team but I've got some remarks. - metadata attributes (created, modified...) depends of the target application, by examples my current application need some metadatas but my users is more important to know the source of data and is validity degree. So metadata are considered like other data and the association is done by using namespace <data metadata:created="2001-10-22T18:33:56"> <metadata:modification date="2001-10-24T09:11:37" by="Toto" state="draf"/> <metadata:modification date="2001-10-30T10:11:37" by="Mike" state="draf"/> ... </data> Others exemple if you need to mixed metadata used by several applications. - target of metadata isn't only document. A document can be a collection of sub-info and application can need "metadata" on each. By examples a document can be a complete faq, todo-list because the source is one file.
So (IHMO) your API is more a part for a Xindice application toolkit, optionnal pack, or guide lines, tips... Because metadata is only a point of view : metadata are data. > ------------------------------------------------------------------------ > > Description > > Since Xindice has no general method for associating metadata with each > "record" in the database, XNode was developed for this purpose. XNode > is a very simple API, only five files (including an Exception class). > > An XNode is an object acting as a container for XML content by providing > an envelope element and some basic metadata attributes such as a node ID > (nid), a timestamp, etc. If you're familiar with SOAP, it'll seem similar. > > An instance of such markup (wrapping an XHTML document) might appear as: > > <xnode:Envelope xmlns:xnode="http://www.apache.org/xnode/1.0/" > xnode:id="n3892"> > <xnode:Header > xnode:created="2001-10-22T18:33:56" > xnode:modified="2001-10-24T09:11:37" /> > <xnode:Body> > <html xmlns="http://www.w3.org/1999/xhtml"> > [document content] > </html> > </xnode:Body> > </xnode:Envelope> > > Substituting "SOAP-ENV" for "xnode", this is notably similar to a > *very* simplified SOAP (which for having "Simple" in its title > isn't in the end all that simple). The above code is how an XNode > is stored in Xindice, such that upon extraction the XNode object > can be reconstituted. The XNode <xnode:Header> element is designed > to be extended for other purposes, though 'created' and 'modified' > should be supported. > > ---------------------- > > Classes and Interfaces > > XNode abstract class: > the XNode object, a wrapper for XML content. > > XNodeException class: > extends Exception for exceptions thrown in XNode processing. > > XNodeState final class: > defines a fixed set of enumerated types as processing states. > > XNodeFactory interface: > defines an interface for a factory for creating XNode objects. > > XNodeStore interface: > defines an interface for a processor for connecting and > disconnecting from a Xindice server as well as common > Collection and Node manipulations (create, get, delete, etc.) > > ---- > > Comments welcome. > > Murray > > ........................................................................... > Murray Altheim <mailto:murray.altheim@sun.com> > XML Technology Center, Java and XML Software > Sun Microsystems, Inc., MS MPK17-102, 1601 Willow Rd., Menlo Park, CA 94025 > > Corporations do not have human rights, despite the > altogether too-human opinions of the US Supreme Court. -- -------------------------------------------------------------- David "Dwayne" Bernard Freelance Developer (Java) mailto:[EMAIL PROTECTED] \|/ http://dwayne.java-fan.com --o0O @.@ O0o-------------------------------------------------
