RE: Xml Schema profile

Paul Downey asks:

> Do people have good experiences using Substitution Groups in 
> conjunction with Databinding tools? 

(BTW:  here I offer my personal opinion which may or may not be exactly 
that of my employer, IBM)

As we discussed at the workshop, I think it's important to note that some 
of the issues with things like substitution groups have to do with 
characteristics of some of the programming languages that are being 
commonly used.  Languages like Java and C have no standard means of doing 
tag'd unions, which are arguably a natural model for binding substitution 
groups.  As several respondents on this thread have noted, substitution 
groups can be very useful in XML.  While I'm not insensitive to the 
practical issues that arise in building simple databinding tools, I don't 
think we should "dumb down" XML to work around what might be viewed as 
deficiences of certain programming languages.   FWIW,  other languages 
(PASCAL, among others, as I recall) have had tagged unions over the years.

For some of the same reasons, I think it's important that use of mixed 
content not be deprecated, as it's crucial to some of the most powerful 
uses of XML.  To pick just one, you can't handle XHTML if you don't handle 
mixed content, and that too is clumsy in certain programming languages.  I 
think that programming languages and data formats tend somewhat to 
leapfrog each other.  When IEEE binary floating point was standardized, it 
was not natural in lots of existing languages, but it was worthwhile over 
the years to adapt the languages to this valuable interchange form.  I 
think we are realizing that our traditional languages were, in subtle 
ways, better optimized to deal with data as atoms than in richer 
structures, and XML is showing the value of some of those richer 
structures. 

I do think that the databinding wg is doing a service in trying to get 
everyone to focus most carefully on an agreed set of common cases.  It 
looks to me like there's some sentiment that substitution groups are 
indeed sufficiently common to be interesting, regardless of whether they 
add some complexity in bindings to certain particular programming 
languages.

--------------------------------------
Noah Mendelsohn 
IBM Corporation
One Rogers Street
Cambridge, MA 02142
1-617-693-4036
--------------------------------------

Received on Monday, 25 September 2006 22:56:47 UTC