Pulling together some threads ...

I've certainly learned a lot from the first few days of discussions here,
although I can imagine that it's a bit overwhelming for some!

Let's consider the "requirements" for an XPath API, or perhaps a family of
APIs.  Here's my attempt at a first cut; I offer these mostly as a way of
focussing and structuring the discussion so that we don't go off into too
many directions at once.

1. It must be DOM-compatible, i.e., use DOM concepts rather than invent any
   new infrastructure (such as Nodes, lists, iterators, etc.) unless
   absolutely necessary.

2. It must be language neutral and vendor neutral.  As much as we all
   like [insert favorite language or system here], it's important
   to have as much consistency as possible across "language bindings".

3. It must allow XPath expressions to define some subset of an XML
   document, stream, or database and provide a way of iterating over
   or otherwise processing that subset.

4. It must not require all DOM implementers to support this functionality.

5. It should provide some level of compatability or migration path
   for users of existing XPath extensions to the DOM (e.g., those of
   Microsoft and Oracle).  For example, we could imagine holding our
   noses and suggesting a Node::selectNodes() interface as a minimal,
   but compatible and convenient, interface as well as a much more
   powerful and flexible XpathQuery or whatever interface.

6. It may extend the DOM Node interface, or it may add one or more
   new interfaces to the DOM, or it may be quite tangential to the DOM.

7. ??? help me out here!


This list (which we can discuss, refine, etc.) doesn't restrict the space of
possible outcomes very much, I'll admit, but should make clear what we all
agree on and what we may choose to "agree to disagree" on.  For example, I
can see two "flavors" of an XPath API, one that is built INTO the DOM (for
vendors such as us who have deeply imbedded XPath implementations that we
need to expose an API to) and one that is built ON TOP OF the DOM (for
vendors who want to make their XPath implementation available to any DOM
implementation).  So long as they share everything that they CAN share, I
see no problem in an W3C Note or DOM spec that allows either or both.

Comments, thoughts, flames, suggestions???

Received on Wednesday, 3 May 2000 16:14:34 UTC