Lists Home |
Date Index |
Norman Gray wrote:
> Was this addressed to me?
No. Not really. You just got caught in the cross-fire of the
meta-discussion. What you have done, mapping to and from SAX events,
is a correct way to approach this problem. Because you have done this,
it means, in theory, that I am completely shielded from your syntax.
i.e. I can read it with the same tools that I might be reading XML and
if I really want to, I should be able to convert it either to XML or
to some other syntax of my own choosing. If the mapping is complete
and correct, and I have an XML editor that uses SAX to read XML files,
it should also be possible for me to use that XML editor to edit your
stuff... (I would see "XML" even though what was read was your
This is very much like what we did with ALL-IN-1 way back in
the early 80's. I defined a thing we called a "Text-Dataset Access
Block" (Text-DSAB) which allowed us to do things like edit Wang, IBM,
or Xerox wordprocesing documents with a single editor. The idea was to
define a single in-memory datastructure that defined a superset of
what wordprocessor files could express and then create mappings to and
from the Text-DSAB for each file format. It was sweet... We could edit
"anything" with a single editor and thus were able to gain quite a bit
of business in the commericial office automation world... While other
vendors were constantly fighting for "their" document format, we
simply didn't care -- our code worked with anything...
One problem: SAX isn't Infoset. Thus, there are some
limitations to your mappings that might have been better addressed by
mapping to Infoset. Ideally, SAX would map to Infoset as well and thus
give you the mapping to and from XML or any other syntax derived from
Infoset. However, the SAX and Infoset discussion is yet another
permathread that we probably shouldn't open up in this context...