Just a remark on the extensions, which was one of the two issues raised
by Steve. As I said, it seems to me that a natural way of handling
extensions is letting the user register a handler for a particular
namespace, and handing any instructions in the namespace over to him.
But how to pass the subtree that's under the instruction? I'd like to
avoid giving access to the internal representation. So how about a
SAX-like interface? In a basic version, this would involve making
Sablotron call a registered C function for every element in the subtree,
passing its name and attributes (the way one uses expat for parsing). We
may forget about comments/processing instructions/namespace declarations
at this stage, and just pass the elements. Is this OK?
How about the other issue, i.e. the pre-parsed tree caching? Any new
ideas?
Tom