[Home] [By Thread] [By Date] [Recent Entries]
Clark C . Evans wrote: > On Sun, Nov 25, 2001 at 11:43:49AM -0800, Dare Obasanjo wrote: > | No. The pull model has *nothing* to do with an in-memory > | representation of the document. > > Yes. Random vs. sequential access is an othogonal issue. > > > Sequential Random > +---------------------------------------------------------- > | > Push | SAX (recursive visitor) > | > Pull | Pull Parser DOM > | > +------------------------------------------------------- > > The confusion arises since SAX and DOM are different > in two regards: (a) processing model (push vs pull) > and (b) access model (random vs sequential). The way I see it the DOM is more of a "slurp" model -- the application doesn't get involved during parsing, instead it gets the whole tree in one big gulp. I'd describe the main difference as "event-driven" vs. "tree-based". Event-driven processing models can have a "push" interface (like SAX, where the parser calls the application) or a "pull" interface (where the application calls the parser). There are interesting variants on the tree-based model too: with the DOM the application crawls caterpillar-like from node to node, and in XSLT it iterates over node sets generated from XPath statements. With DOM and XSLT the entire document is accessible from any node, but in other models (HaXml, possibly XQuery) you can only access the children and descendants of a node. --Joe English jenglish@f...
|

Cart



