On Tuesday, January 22, 2002, at 01:51 PM, Murray Altheim wrote:

This message describes the XNode, an API for use with Xindice that I've
sent on to Tom and Kimbro for review. This is considered a proposal, a
donation to the Apache project's Xindice code base. I'm interested in
hearing feedback, and if it's generally positive, the API would be
donated as part of Xindice. Sun will be releasing a UDDI registry project
soon that includes an implementation of this API. If accepted as part of
Xindice it'll be under an Apache license, if not, Sun will probably
maintain copyright of it. Since I'm leaving the company next week to
return to school I'm hoping the Xindice community accepts this donation,
as I'd like to see it become a part of Xindice (I'm the author).

I'm hoping to post online the entire javadoc of the API sometime
soon. I'd send it to the list (a 32K zip), but I know how people
feel about attachments on listservers, and I'm not sure it'd get
through anyway. So below is a brief description in lieu of the more
extensive documentation.



I posted your docs online http://www.xmldatabases.org/projects/xndoc/.

------------------------------------------------------------------------

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).

This is really an issue that we should resolve properly, i.e. by directly exposing this type of meta-data, rather then by just wrapping the content.
I'm not sure how extensible we'll want that mechanism to be though. So it would be cool to have this available for people who want to have fully extensible meta-data. The real question is whether this is part of the core server or not. To me it doesn't seem like it should be, but then I also understand that may be the only way this can be released.


Is there more to this that I'm not seeing? If this was included, is it something other people would find valuable? Would you be able to continue maintaining it?



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&#x40;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.


Kimbro Staken
XML Database Software, Consulting and Writing
http://www.xmldatabases.org/



Reply via email to