[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [xml-dir] Re: [Simple] Presence Relax NG schemas



inline.

Ned Freed wrote:

>> > I'll agree that it is not definitely an optimal solution to have two
>> > definitions. Anyway, as you know, with the current W3C schemas you
>> > cannot express where to put e.g. some extension elements when there are
>> > many possible extension points: you could add e.g. <dm:person> element
>> > under <presence>, <tuple> and <status>. And once you add new schemas
>> > extension points just increase. However, these Relax NG schemas do not
>> > allow this ambiguity. So they follow more strictly the intention of the
>> > specs. Of course if these schemas don't correctly follow the specs,
>> I am
>> > glad to receive fixes.
>
>
>> > Secondly, I am aware that ietf/xml-dev had these schema tool
>> discussions
>> > awhile back ago. AFAIK the recommendation does not mandate to use only
>> > W3C schemas, it just seems to be the prevailing habit. At least in this
>> > particular case Relax NG fits better for the task, imo.
>
>
>> Sure, working groups should always be able to discuss XML schema vs.
>> RELAX vs. DTD. However, that discussion is appropriate in the beginning
>> of the cycle. The group has already chosen XML schema, and I don't
>> believe you are proposing to change that decision. As such, I think its
>> far more important to have a single definition of the grammar.
>
>
> I'm afraid I have to agree with Jonathan here. I don't especially care what
> definition tool is used (although I like it when one is used...), but using
> more than one could lead to all sorts of unnecessary excitement. I
> personally
> haven't used Relax NG for much, but I use both DTDs and Schemata all the
> time
> and the overlaps between the two can be... well, interesting.
>
> I guess having more than one defintion is OK as long as only one of them is
> considered to be normative.

What is it mean for a grammar definition to be informative though?

It means the definition is provided for convenience only, it cannot be used to determine compliance (or lack thereof).

If
its used in any way at all, its for validation of message content, and
that fundamentally leads to the interoperability problems I'm talking
about above.

We see this sort of thing all the time with language compilers. It is common for such tools to perform checks that are simultaneously less and more stringent than the language standard requires. As long as the compiler doesn't call any more stringent checks it performs an error there isn't a problem.

> There's some similarity between this issue and the issue of recasting
> existing
> data formats in XML. It may make sense to define, say, an XML variant of
> the
> iCalendar format, but unless a wholesale migration to the XML format is
> planned the original format needs to be the normative one.

I think thats different though. The XML version of iCal is a different
document than the existing one. When you receive a calendar document,
there is no confusion about which grammar it complies to. Its either
XML, or its not. Here, we're talking about the same document, but with
two different syntaxes that define the rules for its construction. There
is no way from looking at the document to know which it was actually
created from and validated against.

This is really a matter of intent, isn't it? If the intent in using an additional specification language is simply to have an alternative in there, then I see little purpose in it and some potential for harm. (This goes for the XML variant of iCalendar, BTW.) If, OTOH, the intent is to provide, say, a test for potentially expensive usage, or some other check for legal but potentially problematic constructs, I think there could be some utillity in having a second informative definition. In fact it might even make sense to have two definitions in the same specification language.

However, I don't believe XML Schema lends itself to this sort of usage. (The
error messages I usually get from schema validators aren't exactly a model of
clarity...) I haven't used Relax NG enough to know if it does or not.

				Ned

_______________________________________________
Simple mailing list
Simple at ietf.org
https://www1.ietf.org/mailman/listinfo/simple