Lists Home |
Date Index |
- To: "XML Developers List" <firstname.lastname@example.org>
- Subject: RE: Re: [xml-dev] Making a silk purse out of the schema sows ear -was [xml-dev] Minimal XML Specification
- From: "Michael Champion" <email@example.com>
- Date: Wed, 8 Feb 2006 15:13:17 -0800
Replying to a couple of replies in one message. Politics and aesthetics aside, I'm wondering what RELAX NG offers that XSD and Schematron (as essentially complementary specs ) offer in combination.
>> Atom and ODF can't be used with most commercial XML tools.
> Unless you use relax ng tools to convert to xsd?
But Atom uses constraints that can't be expressed in XSD, so those people are going to be unhappy at some point, right? ... I'm wondering whether Atom (or one of the other specs that is normatively defined with RELAX NG) could do what they need to do with XSD+Schematron.
> I've always viewed Schematron as providing additional functionality
> beyond what
> my schema validation gives me, not as a replacement? Rick?
I agree. I'm not sure whether to call a check against schematron-defined constraints "validation" or not, but it could be used to refine a "data contract" that had to be left open in XSD because of the lack of, for example, occurrence constraints.
> I haven't heard of anything merging Schematron with xsd validation.
> A single stage validation is helpful, rather than pipelining.
That's the idea I'm exploring here. Now the only way to do it is to roll one's own pipeline. I can at least imagine tools supporting both sets of constraint checking in a single phase. But merging them in the same language is problematic because of some intrinsic conflicts between the needs of data binding (which are horribly complicated AFAIK by occurrence constraints) and the needs of real people defining useful formats (who frequently ask for constraints that XSD can't express).
> "Demand" for W3C
> Schema support came from on high as edict, to which W3C-related
> vendors responded; the grassroots demand for RELAX NG is merit-based
> and users are in a position to make demands of vendors for support.
I used to believe that :-) Nobody here will take the blame for the edict to line up behind XSD, however. (MS people tend to blame "the W3C" for the XSD mess, figure in hindsight that the world would be better off if they had been more evil and forced XSD to compete with the XDR technology that MS deprecated in favor of XSD as soon as the WG was formed, and are surprised to hear that the world blames MS and Oracle as the alleged string pullers!). All I know is that Dare before me, and myself before the bonds of Redmondthink became too strong, tried to look for compelling evidence of customer demand for RELAX NG support and simply couldn't come close to being able to make a case. Maybe that will change as the popularity of the specs that are defined in terms of RELAX NG grows, we shall see.
> Yes, W3C Schema Part 2 can be
> used, but ISO/IEC 19757-5 Data Types is the standardization of the
Datatype Library Language (DTLL)
http://www.jenitennison.com/datatypes/DTLL.html proposed by Jeni Tennison
Thanks, I hadn't been aware of that. I'm of course shocked, SHOCKED to see examples of a single well-informed person doing a better job than Design by Committee can. :-) Apparently the open source world is figuring this out too, cf. http://mail.gnome.org/archives/desktop-devel-list/2006-February/msg00115.html
That post is actually pretty relevant to this conversation, but takes a different point of view than I am. Maybe in the GNOME world, "anyone who yells "fork" deserves to get one stuck in them" ... but the whole value proposition of XML is that it is one interoperable data format that the world has agreed on, warts and all. Forking over different view of what is a wart and what is a beauty mark does a lot more damage in the XML world than it does in the UI world ... at least I would argue as someone who has to worry about potentially breaking literally hundreds of millions of customers if we do something just because it is The Right Thing. Sigh.
Express yourself instantly with MSN Messenger! MSN Messenger