W3C home > Mailing lists > Public > www-tag@w3.org > February 2006

RE: Principle of Least Power

From: Dan Connolly <connolly@w3.org>
Date: Wed, 08 Feb 2006 09:10:10 -0600
To: "Bullard, Claude L (Len)" <len.bullard@intergraph.com>
Cc: Elliotte Harold <elharo@metalab.unc.edu>, "'Henry S. Thompson'" <ht@inf.ed.ac.uk>, noah_mendelsohn@us.ibm.com, Vincent.Quint@inrialpes.fr, www-tag@w3.org
Message-Id: <1139411410.12577.209.camel@dirk.w3.org>

On Wed, 2006-02-08 at 08:39 -0600, Bullard, Claude L (Len) wrote:
> Schematron can express co-occurrence constraints.  DTDs can't.
> 
> It is more expressive.  The trick is to know if that is something 
> you want to express and should you use it.  Metrics of power. To 
> know that, one has to understand the difference of power between 
> a declarative approach based on paths and one based on a hierarchy 
> or named structures in a BNF analog.  Both are used to express schemas 
> but are not equally powerful.  One could compare xsd and some of its 
> antecedents for an apples to apples comparison but that doesn't really 
> make the point.  For example, the Microsoft submission for xsd was 
> quite a bit less powerful but the W3C selected xsd.  Did the W3C 
> violate the principle or is the principle not a design criteria?

Interesting question.

We didn't do a requirements document... er... oops... yes,
we did! I just forgot about it: http://www.w3.org/TR/NOTE-xml-schema-req
  http://www.w3.org/TR/1999/NOTE-xml-schema-req-19990215

I think we might have done well to discuss this requirement more
and refine it:

"inheritance: Existing mechanisms use content models to specify part-of
relations. But they only specify kind-of relations implicitly or
informally. Making kind-of relations explicit would make both
understanding and maintenance easier"

It doesn't seem testable, as stated. And I'm not sure it clearly
states a requirement that the ultimate XSD design meets that the
earlier submissions did not meet.

It also would have been good to explicitly decide on and publish
the requirements that separte XSD from relax-NG. As I recall,
they relate to knowing types early or something, and the use
cases have to do with databinding. I know the community has discussed
them at length, and it would have been nice to have that
discussion reflected in the requirements document.

Hmm... this question is much more "close to home" than some
of the more academic topics. It might be worth adding it
as an example in the finding. It would take quite a bit of
research to establish the relevant facts, and it might
involve some post-hoc judgement calls. Hmm.


-- 
Dan Connolly, W3C http://www.w3.org/People/Connolly/
D3C2 887B 0F92 6005 C541  0875 0F91 96DE 6E52 C29E
Received on Wednesday, 8 February 2006 15:10:23 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Thursday, 26 April 2012 12:47:38 GMT