[Home] [By Thread] [By Date] [Recent Entries]


I'm still trying to invent some lightweight helper-routines
for updating and binding data using SAX (I'm bit behind my time ;-) ).
I'm not calling this random access update anymore since it's more like 
forward-only cursor
update or something (if somebody has seen my previous posting "sax random 
access update"
  - which was really crappy idea).

But anyway, I've fixation about doing two passes (with serializing) on xml 
document (or using
intermediate temp document, whatever you call that) and I'm thinking it 
would still
be more effective (if optimized properly) than doing DOM processing for 
example.

Here's some pseudo code with some explanations:

the aim is to get book Effective XML and modify its title, xpath would be:
"/books/book[@title='Effective XML']"

getbook(uri, localname, qname, atts, isStartTag)
// this will be called in first pass for binding data
{
     if (isStartTag && equals(atts[0].value, "Effective XML")) {
         new book();
         book.title = atts[0].value;
         book.author = atts[1].value;
     }
     // drop update-namespaced action item here, might even call serializer
     // (setbook here) if some "later" conditions aren't met
}

setbook(item)
// this will be called in second pass for serializing altered node
{
     print("<book title=\"%s\" author=\"%s\"/>", item->title, item->author);
}

main()
{
     xmlupdate.addbinding("/books/book", getbook);
     parse();
     // modify book:
     book.title = "Effective XML update";

     xmlupdate.resetbindings();
     xmlupdate.flush(); // do second pass resolving update items
}

original document:
<books>
     <book title="inside networks" author="Bill Bream"/>
     <book title="Effective XML" author="Elliotte Rusty Harold"/>
</books>

document after first pass:
<books xmlns:xmlupdate="www.xmlupdaterules.org">
     <book title="inside networks" author="Bill Bream"/>
     <xmlupdate:action item="#98239823" event="#92389239"/>
     <!-- item is pointer/binding to book, event is pointer to setbook -->
</books>

comments?

with respect,
Toni Uusitalo

"And I wish that I was made of stone
So that I would not have to see
A beauty impossible to define
A beauty impossible to believe"
- Nick Cave (Brompton Oratory) - romanticist?

"There are lots of myths that people have around issues of beauty and 
attraction, and part of the issue is to stop thinking about things in terms 
of myth, but to use the tools of neuroscience, and start dissecting and 
understanding how things actually function," said Dr. Hans Breiter, a 
psychiatrist and co-author of the study."
- The Brain Is Stimulated by Beauty, Study Finds - abcnews.com - scientist?




Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member