OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   Re: [xml-dev] More on taming SAX (was Re: [xml-dev] ANN: Amara XML Toolk

[ Lists Home | Date Index | Thread Index ]

* Jeff Rafter <lists@jeffrafter.com> [2004-12-23 13:43]:
> >While on the topic of SAX taming features in Amara, there is also
> >amara.saxtools.xpattern_sax_state_machine, which I didn't even bother
> >mentioning in the announcement (too much to cram in).
> 
> Can you expand on your expansion? As I was reading this I was thinking 
> that in the Java/C# world an interesting approach would be to keep a 
> pseudo DOM stack for the event hierarchy. Maybe something where you keep 
> everything at an ancestral level intact while parsing
> 
> 
> <foo>
>   <bar1>
>     <baz1/>
>     <baz2/>
>   </bar1>
>   <bar2>
>     <baz1>
>       <sub/>
>     </baz1>
>     <baz2>text</baz2>
>   </bar2>
> </foo>
> 
> So when the event stream reached /foo/bar2/baz2/text() you would have 
> the following in a DOM like structure:
> 
>   foo
>     \
>      bar1 (... no children)
>      bar2
>        \
>         baz1 (... no children, just the previous sibling and attrs)
>         baz2 (only the StartTag)
> 
> I am not sure that the preceding siblings would be very useful and have 
> more chances for pathological cases but when I construct mini-trees this 
> is the subset I find handy. It is useful when working with an editor to
> understand the immediate context. Unfortunately by requiring the 
> previous siblings you have to maintain quite a bit more... the whole 
> preceding branch of the tree.

    I have a SAX library (in Java) that keeps the stack around, but
    not the preceeding siblings. It is quite useful.

    It is, actually, very useful to keep a stack around that has a
    hash table for each level of the stack, it allows for the
    devleopment of strategies that are themselves stateless.

    Adding the implied stack goes a long way to make SAX event
    processing a more practical solution for a lot of problems.

--
Alan Gutierrez - alan@engrm.com




 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS