OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]
Re: [xml-dev] Rick Jelliffe quotable quote on the purpose of schemas

Michael Kay wrote:
>>Except that you will need 3000 tags to express all that 
>>people expect and will expect.
> I'm not sure what you're getting at here. Why should a constraint expressed
> in a declarative language be harder to express than the same constraint in a
> procedural language?  Why are multiple tags needed?

Because the expressiveness of W3C XML Schema is (explicitely or 
implicitely) well-defined in the spec : some things can be expressed 
others can't, for example co-occurence constraints ; I remember that the 
guy who talked about co-occurence constraints last week in Boston 
introduced a new element (or an attribute, I don't really remember) for 
that purpose : so, new feature, new tag.

> Can you give me an example of a constraint which is difficult, or verbose,
> to express in a declarative language such as XQuery?

Here is one that you can't express in W3C XML Schema :
-the number of cells must be the same in all columns of the table
(this was expressed by someone who asked for a W3C XML Schema, and that 
gurus said it was impossible ; if it is, please just let me know)

If this discussion were reduced to schemata, a language such as XQuery 
could be used to express additional constraints that you can't express 
with your favorite schema language ; this is the same as using 
Schematron, or by using XSLT for further validation. However, none of 
them act at the component level, that is to say at the content model 
level : an editor would propose you to insert an element which would be 
rejected by XQuery/Schematron/XSLT.

What is missing in operating and declarative tag libs in general 
(including but not limited to schemata) is an intrusive mean to act at 
the component level. XQuery is irrelevant in this case. But it could 
help : Active Tags is based on XPath, and could rely on XQuery (some 
arrangements would be required : in Active Tags, some tags are litteral 
others are "active").

> Michael Kay
> http://www.saxonica.com/


              (. .)
|      Philippe Poulard       |
        Have the RefleX !

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 1993-2007 XML.org. This site is hosted by OASIS