RE: simple attribute question

Michael Kay writes:

>> I find the syntax extremely unmemorable

I do too and I fought hard against this and other similar strangeness, 
much of which came late in the design process. 

For what it's worth, my recollection is that a fair amount of the current 
deeply nested syntax was justified by the view that our language should be 
able to do a reasonably good job of validating its own syntax.  Many of 
the options that are simpler for users would involve co-occurrence 
contstraints in the .xsd syntax;  for example, you might find that a 
baseType attribute would be allowed only if a derivation by restriction or 
extension were specified.   The decision was made that since the language 
was not good for enforcing such constraints (and perhaps because some 
members of the WG considered such usage to be sub-optimal markup), we went 
for the clumsy, deeply nested and "unmemorable" syntax that we have today. 
 I think there were also those who felt that ease of hand authoring is a 
secondary goal, as is "terseness" [1], and that most schemas would be 
created automatically by tools.  I have never agreed with that view. 
Indeed, I have always thought that our deeply nested "no co-occurrence 
constraints" syntax was one of the most damaging decisions we made.   With 
a more straightforward syntax, the language would appear quite a bit more 
simple and straightforward for many purposes, and that an 80/20 subset 
would be very easy to learn and remember.  No doubt some subtleties and 
unfortunate complexities would remain for power users. 

Anyway, that's the history as I remember it.

Noah

[1] http://www.w3.org/TR/1998/REC-xml-19980210#sec-origin-goals

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

Received on Thursday, 12 August 2004 14:11:00 UTC