Lists Home |
Date Index |
On Friday 24 December 2004 14:36, Uche Ogbuji wrote:
> Kevin Jones wrote:
> Of course XPath is always streamable, if you have no
> practical limitations (e.g. you're willing to store all
> node data and implement unbounded look-ahead). When
> people speak of a "streamable subset", they mean a subset
> that works practically with most streaming host
> languages, meaning that these host languages should not
> have to compromise too much memory or state complexity in
> order to satisfy the scope of node requests from the
> XPath subset.
I was probably being a little brief. I was not intending
just to comment that XPath was theoretically possible, but
the assumption you need a subset for this case may be
wrong. Taking the examples of storing all node data and
unbounded look-ahead, clearly neither of these are
requirements of streaming XPath, just features of some way
of implementing it.
I would say that having written/supported one streamable
subset for a few years they never implemement enough. Some
of the harder features to implement in a streamable way are
just the ones that make XPath better than any old pattern
language, e.g. predicates as expressions.
> BTW, I don't know what you mean by "XPath execution from
> a context node". XPath *always* has a context node.
Loose language, I meant as apposed to the context node being
the document root which is a special case that allows
reverse axis removal via path re-writing.