[
Lists Home |
Date Index |
Thread Index
]
> -----Original Message-----
> From: Jeff Rafter [mailto:jeffrafter@defined.net]
> Sent: April 20, 2003 6:37 PM
> To: Rick Jelliffe; xml-dev@lists.xml.org
> Subject: Re: [xml-dev] Does SAX make sense?
>
> > * have the SAX stream kept cached for the lifetime of the document
> > (or have some kind of weak reference perhaps) since they are in
memory
> > anyway (though unreachable), allowing backward-looking XPaths; or
>
> XPath comes up here and came up in several of the other responses.
Perhaps
> someone could answer what class of XPaths, if known prior to document
> parse,
> can not be satisfied during the document parsing?
>
> <root>
> <child name="C1">Foo</child>
> <child name="C2">Bar</child>
> </root>
>
> If, before parsing, we know that we need to satisfy
> "/root/child[@name='C2']" Why could this not be satisfied? Maybe
coming up
> with a common SAX->XPath->Results Filter which had a standard
mechanism
> (e.g. Interface?) for passing back XPath results as encountered in the
> process of a SAX stream would be a good plan.
>
> It strikes me that even the preceding-sibling and ancestor axes could
be
> handled with a simple stack. This would still limit memory consumption
and
> the objects in the stack could be reused for different "branches".
This simple stack mechanism is how I implemented this. Of course you
have to protect against DoS attacks through user input infinite
recursive expressions.
> If all of this was embedded in an interface so that you could register
> XPaths before the document parse, and then receive callbacks (or
store)
> the
> results of those XPaths you would have something pretty nice. Does
this
> already exist?
There are several implementations, but I don't know of any standard
interface. I have been thinking that having a standard interface just
for passing XPath expressions to an event parser would be great. Anyone
know of a standard being worked, implementations, or interested in
starting a working group? If so, I'm in.
Martin.
> Cheers,
> Jeff Rafter
>
>
> -----------------------------------------------------------------
> The xml-dev list is sponsored by XML.org <http://www.xml.org>, an
> initiative of OASIS <http://www.oasis-open.org>
>
> The list archives are at http://lists.xml.org/archives/xml-dev/
>
> To subscribe or unsubscribe from this list use the subscription
> manager: <http://lists.xml.org/ob/adm.pl>
|