[
Lists Home |
Date Index |
Thread Index
]
At 2006-05-23 12:00 +0100, Fraser Goffin wrote:
>>Basically it seems to me that the question as to whether it is
>>nondeterministic revolves on whether local is within other,
>
>Quoting from 'Essential XML Quick Reference - Skonnard/Gudgin' when
>describing the xs:any namespace attribute value :-
>
>'.. The value of this attribute is either the string ##any, the string
>##other, or a list of namespace URIs, and/or the string
>##targetNamespace and/or the string ##local.'
There are many ways to read the use of the commas
and conjunctions in that sentence. And all it is
doing is describing the lexical limitations from
the W3C Schema Part 1 spec section 3.10.2:
namespace = ((##any | ##other) |
List of (anyURI | (##targetNamespace | ##local))
) : ##any
So it doesn't answer my question about the scopes
of ##any and ##local and whether they conflict.
>Hence it is not legal to include both of them on a single xs:any. E.g.
>this is not legal AFAIK :-
>
><xs:any namespace="##other ##local" minOccurs="0"/>
Fine ... I'm not trying to do that.
>The example shown that uses both ##other and ##local in a content
>model has a element in-between
Fine ... but that doesn't address my question:
>> > Date: Thu, 18 May 2006 09:35:26 +0200
>> > To: xmlschema-dev@w3.org
>> > From: "G. Ken Holman" <gkholman@CraneSoftwrights.com>
>> > Subject: Question of reports of non-determinism
>> >...
>> > Does ##other imply ##local or does ##other require there be a target
>> > namespace that is different in the particle? If ##other implies
>> > ##local then Xerces is wrong ... otherwise these other tools are wrong.
>> >...
>> > <xs:complexType name="any-non-UBL">
>> > <xs:choice minOccurs="0" maxOccurs="unbounded">
>> > <xs:any namespace="##other" processContents="skip"
>> > minOccurs="0" maxOccurs="unbounded"/>
>> > <xs:any namespace="##local" processContents="skip"
>> > minOccurs="0" maxOccurs="unbounded"/>
>> > </xs:choice>
>> > </xs:complexType>
So, given that I'm not violating any lexical
requirements for the value of the attribute, the
question remains which of Xerces or other tools
is correct in the interpretation of ##other at the same time as ##local.
Xerces believes there is no particle confusion, other tools believe there is.
Reading Schema part 1:
##any
any
##other
a pair of not and the ·actual value· of the
targetNamespace [attribute] of the <schema>
ancestor element information item if present, otherwise ·absent·.
otherwise
a set whose members are namespace names
corresponding to the space-delimited substrings of the string, except
1 if one such substring is
##targetNamespace, the corresponding member is
the ·actual value· of the targetNamespace
[attribute] of the <schema> ancestor element
information item if present, otherwise ·absent·.
2 if one such substring is ##local, the corresponding member is ·absent·.
With today's reading (it feels different each
time I read the above), I'm thinking the TC
cannot exclude the set of UBL namespaces because
there are many namespaces in UBL that need to be
excluded and I see that ##other only looks at the
ancestral one, which is insufficient.
But I cannot see there is any way of saying "all
namespaces other than the following four namespaces".
So we have a new problem other than particle
conflict ... let's forget the above example of ##other and ##local ...
Now ... how best to enumerate a *list* of
namespaces to be excluded from a content
model? I know how to do it in RELAX-NG, but not in XSD.
Oh, I know how to do it with Schematron, but I'm
being asked for a W3C Schema pure solution.
Any suggestions?
. . . . . . . . . . . Ken
--
Registration open for XSLT/XSL-FO training: Wash.,DC 2006-06-12/16
Also for XSL-FO/XSLT training: Minneapolis, MN 2006-07-31/08-04
Also for XML/XSLT/XSL-FO/UBL training: Varo,Denmark 06-09-25/10-06
World-wide corporate, govt. & user group UBL, XSL, & XML training.
G. Ken Holman mailto:gkholman@CraneSoftwrights.com
Crane Softwrights Ltd. http://www.CraneSoftwrights.com/x/
Box 266, Kars, Ontario CANADA K0A-2E0 +1(613)489-0999 (F:-0995)
Male Cancer Awareness Aug'05 http://www.CraneSoftwrights.com/x/bc
Legal business disclaimers: http://www.CraneSoftwrights.com/legal
|