Subject: Re: (dsssl) OT: parsed vs event model From: "Joerg F.Wittenberger" <Joerg.Wittenberger@xxxxxxxxx> Date: 23 Aug 2001 17:35:12 +0200 |
>>>>> "KS" == Kendall Shaw <kshaw@xxxxxxxx> writes: KS> Hi, I hope this is not seen as an abuse of the list. KS> I'm trying to describe the value of groves/DOM etc. vs. event KS> model parsing and I find my self unable to come up with much other KS> than contrived examples. Can you give examples of common KS> situations where it is useful to have access to: IMHO this is not so much a matter of having access to whatever, but what implication it has for the programming style. The problem I observed with the API definitions for event based interfaces is exactly that they implicitly define a process. Even from your question it's visible: "... vs. event based *parsing* ..." there is a processor implied, which parses a serialized presentation of the document tree or traverses the tree by some other means. In other words, there is a process. This has some implications, when you want to enforce code quality (functional programming - yes, after so many thousend years of human experience in math, there is no procedural math anymore): you need some way to "fetch" the next event when needed. Unfortunatley the vent based APIs are to my knowledge defined in a way, that you can not do that (easily). Actually I would love to see an code example how to get just the next event out of a SAX parser by calling a function. I tried this once to no success. I'm myself very much interested in all comparisons as you are about to do, because I can't decide, which modell is better over all. Both modells allow for lazy evaluation, whereby the event based model seems to be a slightly better fit (let alone the API flaw mentioned above). Automatical reordering of calculations, though rarely done in software available in source code, is also possible in both the modells, which solves the "access to: ... before ... has been processed" questions. While this is also a matter of delayed evaluation, the tree modell seems to be the more "natural" way to describe this situation. KS> 1. Children before their content has been processed. I want to implement an <xslt:template match="para[./key]" > So I need to know that this para has a child "key" somewhere (possible the last child), when I encounter the start of the para element. KS> 2. Right siblings, right siblings of an ancestor etc. I want to number all the pages of a document in the "<n> out of <total>" way. /Jerry -- The worst of harm may often result from the best of intentions. DSSSList info and archive: http://www.mulberrytech.com/dsssl/dssslist
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
(dsssl) OT: parsed vs event model, Kendall Shaw | Thread | (dsssl) read-entity, Maltby, David G |
(dsssl) OT: parsed vs event model, Kendall Shaw | Date | Re: (dsssl) wraparound, roconnor |
Month |