I think, I have explained the surface and abstract model pretty well in the article, therefore, I won't re-iterate myself. I am sorry it didn't work for you.
Do you always respond that way when someone either does not understand you or finds your writing to be flawed? What that the equivalent of throwing up your hands in despair at communicating, or the equivalent of turning away in an offended huff?
But I think realize the source of your confused model descriptions. In the one case you use "works on" to talk about what the parser reads, and in the other case you use it to mean what the parser generates from what it reads.
You do define what you mean by surface model but you seem to define it as the text representation of the XML. Well of course...both types of parsing do, any parser does that. (I gave you the benefit of the doubt, considering the possibility that you meant something deeper than that, more specific to the inner workings of the parser.) In the SAX case it generates a stream of events (which can be considered a model), in the DOM case an object model. Both act on the "surface model" and produce something that conforms to a model, neither more abstract than the other.
I didn't meant to be rude. Agreed that the phrase "works on" is sort of misleading. I think you have a point, and I understand your confusion. We'll surely try to change that statement to something more clear. Thanks for pointing it out.