[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] About SAX Filters
All examples available on XML filters show how to convert <foo>foo</foo> to <bar>foo</bar>. What they do is, in startElement(name, ...), check if name is foo and call handler's startElement with name as bar. I am looking for a way to convert <foo>foo</foo> to <foo><bar>foo</bar></foo> ie., insert XML elements. The problem is with generating sax events: Am I supposed to do if name is foo then startElement foo startElement bar end-if and similarly for endElement. I can do this provided the xml I providing as replacement is known in advance, i can generate sax events at design time. What if I dont know that xml. For example, startElement(name, ...) { if (name is foo) then Element e = transform(foo) // Now how do I generate // eventsnt 'e' // note that it is more than // one level deep. } In other words, is there a way to push new xml fragment back into the input source so that the parser continues reading it as if it were originally available in that xml source. I am looking for a parser-independant soln. thanks! --st
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|