Lists Home |
Date Index |
Sean McGrath wrote:
> Article entitiled "Speaking XML" by Adam Bosworth:
> I'm intrigued by "it is becoming increasingly necessary for developers to
> directly access and manipulate XML documents."
> My reading of the article suggests that "direct access" here means "lets make
> the XML a direct serialization syntax for objects"
Yes, Sean, I fear that you have understood only too well the implications and,
worse, the only imperfectly-realized premises on which Bosworth speaks. For
example: "Language has nothing even remotely equivalent to mixed content, for
example." I assume that 'language' here is synecdoche for 'computer programming
languages', which is of course a vastly different matter. Mixed content is the
very meat of natural languages, and for that matter of poetry, whether the
admixture is of verbal time, aspect, or mood. Perhaps the most fascinating
characteristic of the variety in human language is the myriad ways in which they
deal idiosyncratically--but deal beyond a doubt--with the mixed content of human
syntax, semantics, and ultimately communication.
Calling Bosworth to task on this is not a quibble: if you're going to deal with
XML and not just an eviscerated subset for programming weenies who are are
infinitesimal fraction of the users of language, then at the very least you owe
the XML user and developer community the courtesy not to conflate your cranky
subset with the much broader principles and ultimately syntactic characteristics
which many of us make the daily effort to accord respect and obedience.
Likewise, "Mapping XML into program data structures inherently risks losing
semantics and even data because any unexpected annotations may be stripped out or
the schema may be simply too flexible for the language", has the place of syntax
and semantics exactly backwards. Mapping XML into any schematic structure is a
process, not an abstract equation nor even a simple declaration. To map is to
instantiate a particular form of data structure. What the semantics of the
resulting populated structure might be are far more the consequence of the process
which does the instantiation, the selection of data (not necessarily entirely, or
even at all, from the ostensible source document), and the particular aspect and
perspective necessarily reflected in the schematic of the target data structure
itself than they are the product of anything absent or present in the ostensible
source. In other words, the mapping or instantiation of data necessarily add, more
precisely elaborates, semantics; it does not subtract from them.