Here is the snippet in question: > What if we implement only the subset of XPath which satisfies > 90% of the > needs and can work with a SAX stream. > Many times the test would be like: > 1) Does element A exist, or > 2) Does element A have value b, or > 3) Does element A appear n times, or > 4) similar tests against attributes
5) Combinations of all the above methods, e.g.: does element A exits, then check if element B has value b. ----- Original Message ----- From: "Daniel Fagerstrom" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Monday, April 08, 2002 4:20 PM Subject: RE: [SUMMARY] Viva la Multiplexer! (was: [Contribution] Pipe-aware selection) > Ivelin Ivanov wrote: > > Without taking any side in this argument, simply because I don't > > have enough > > real world experience with pipe-aware selectors, I would like to share an > > RT. > > > > If xpath selector is chosen to make it in Cocoon, it can be implemented > > very efficiently. > > Those who have followed the discussion remember Konstantin and I proposing > > an XPath subset which > > can cover majority of the use cases. > I didn't find your mail about the XPath subset in the archive could you > please send a pointer? > > > Indeed there is a readily available library of good quality which can be > > utilized. > > It is the Digester tool from Apache Jakarta Commons. > > http://jakarta.apache.org/commons/digester.html > > > > If I am not mistaken, for a sitemap like the following, Digester can be > > initialized with all the selector when tests. > > Then it can cash the sax stream until any of the tests is satisfied, at > > which point, the cached sax stream can be unleashed to the next SAX > > consumer. > I got the impression that Digester parses the sax input and applies rules on > it that typically creates an object hierarchy, but I didn't found any > methods for creating sax output, did you? Or do you suggest an > implementation where the input sax is sent booth to Digester for testing and > to a cache? > > /Daniel Fagerstrom > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, email: [EMAIL PROTECTED] > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]