Lists Home |
Date Index |
- To: firstname.lastname@example.org
- Subject: XML-aware programming language? - was Re: [xml-dev] Ontolgies, Mappings and Transformations
- From: Michael Champion <email@example.com>
- Date: Wed, 1 Dec 2004 12:47:56 -0500
- Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:reply-to:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:references; b=dGb+DCwDk2qv/xZ721ZfeIt+TOaSbXVUyHAKevfQyfg6gmDF6PDFnQP57B0SoQS75Hr0CnXHhpTorEFT8V3k2b6gnKrZkcubf6jO3wW1pXWUWKEcs3Cjz0ZPJ2y1DILNsMVf0JFlSoPbGUtfClOJWlObsoWSOYBu0lEGKiw0fZI=
- In-reply-to: <B8EB9F86-4360-11D9-9E2D-000393DC762C@mac.com>
- References: <830178CE7378FC40BC6F1DDADCFDD1D103BD1C09@RED-MSG-31.redmond.corp.microsoft.com> <firstname.lastname@example.org> <41AD4552.email@example.com> <B8EB9F86-4360-11D9-9E2D-000393DC762C@mac.com>
- Reply-to: Michael Champion <firstname.lastname@example.org>
This clearly deserves a thread of its own ...
On Tue, 30 Nov 2004 22:17:48 -0800, Daniela Florescu <email@example.com> wrote:
> This experiment raised a lot of positive comments. But in the same time
> the idea of having an XML oriented programming language raised the following
> comments from Tim Bray:
>. That premise is silly on the face of it: here are
> two reasons why: ...
> . If this hasn't
> happened after decades in the relational world, why would we expect it
> to happen in the XML world?
The impedance mismatch between programming objects and relational
databases has been a serious issue for ordinary mortals for decades.
One approach that largely failed was OODBMS; one could at least make a
plausible case that the opposite approach of making programing
languages more RDBMS-friendly could have worked better.
> • The notion that there is an "XML data model" is silly and
> unsupported by real-world evidence.
...other than the fact that most actual users of XML do so via an API
or a tool such as XSLT/XQuery that is based on an abstract XML data
model rather than the concrete syntax? But that is a permathread on
which reasonable people disagree.
> Empirical evidence: I can point to a handful of different popular
> XML-in-Java APIs each of which has its own data model and each of which
> works. So why would you think that there's a data model there to build
> a language around?
Arguably the different flavors of the Infoset/DOM/Xpath/XQuery data
model have much more in common than not. Their differences tend to
come down to:
- how namespaces are represented (as declaration nodes a la the XML
syntax or as element/attribute nodes that "just know" their namespace.
- how "syntax sugar" is represented (or not). The mismatch between
the DOM and XPath data models (e.g. CDATA sections are represented in
DOM but not XPath) causes immense pain for implementers who try to
support both and monumental frustration for users who wonder what
crack we were all smoking when we dreamed this up :-)
- how datatypes are represented or not represented.
> I still don't understand why something like this would be silly.
I guess the non-silly answer (according to
anyway) -- we just have to get used to the fact that programming
languages, database systems, and data interchange formats are three
different things and learn to work with all three comfortably and
(presumably) build code that efficiently builds domain-specific
mappings across them. That's quite practical advice in the short run,
but it seems unnecessarily pessimistic over the longer term. There is
a LOT of interesting stuff going on ... XL of course, but also:
XQuery itself (and XSLT for that matter) are Turing-complete
programming languages ...
Microsoft Xen / X Omega
If the programming environment is integrated with some XML data model,
then database persistence is less of an issue now that there are a
wide range of special-purpose XML databases available and the
mainstream RDBMS products are moving to support XML natively.
Anyway, I certainly agree that this is not at all a silly topic. It
would be interesting to hear from the other side ...