[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: XQuery -- Reinventing the Wheel?
- From: Evan Lenz <email@example.com>
- To: firstname.lastname@example.org
- Date: Wed, 21 Feb 2001 16:08:15 -0800
Bob Kline wrote:
> I have been given to understand that XQuery supports searches across a
> collection of XML documents and XPath does not. Are you saying that
> this understanding is incorrect?
This is correct, but XSLT already extends the XPath model to support
non-well-formed source trees. Thus, the XQuery "ordered forest" is very much
like the XSLT data model.
Explanation from my paper:
XSLT operates on a single source tree whose data model is the same as that
used by XPath, except with a few small additions. The most notable addition
is the relaxation of what may be contained by the root node. The root node
in the XPath tree model may contain more than one child, so that processing
instructions and comments outside of the root element may be modeled. The
XSLT tree model extends this to allow the root node to contain text nodes
and multiple element nodes as well. What this means is that the source tree
does not need to model a well-formed XML document that has only one root
element. However, the source tree must always be a "well-formed external
general parsed entity". All this means is that elements must be properly
nested, special characters properly escaped, etc.
A collection of XML documents, and even XML fragments, could be modeled by
an XSLT processor as one source tree by logically concatenating them all
together in some order. In this framework, the root node would contain the
entire repository. Each well-formed XML document in the repository would
correspond to an element child of the root node. This is similar to how
XQuery models a collection as an "ordered forest".
Hope this helps,