Re: XML Schema 1.1 suggestion - allow defining of namespaces for named elements or attributes

Dear Lee Humphries,

Several years ago, you commented on the XML Schema 1.0 specification
in comments now archived at
http://lists.w3.org/Archives/Public/www-xml-schema-comments/ 
2002AprJun/0155.html
and
http://lists.w3.org/Archives/Public/www-xml-schema-comments/ 
2002AprJun/0164.html

Some time has passed, and I don't know whether you still take any
interest in the issue you raised then against XML Schema 1.0.  If you
do not, you may prefer to ignore this email.

At some point, your comment was attached to an issue being tracked by
the W3C's XML Schema working group, on the possibility of adding
'negative wildcards' to the spec.  That is, wildcards which can
effectively match any name in any namespace EXCEPT a particular set of
namespaces, or any name in a set of namespaces, EXCEPT a particular
list of qualified names.

We have now introduced such negative wildcards in the spec, and are
planning to close the issue.  And so I am writing to those who raised
the question in the first place to let them know and ask if the new
construct successfully addresses the issue they raised in the first
place.

In examining the documentation of the issue, I have come to believe
that what you were asking for in the comments mentioned above was not,
after all, a negative wildcard at all, and that your comments were
attached to the negative wildcard issue by mistake.  I think that what
you were seeking was in fact the ability to refer, in a content model,
to elements in other namespaces.  Your imaginary complex type

   <xsd:element name="MessageBody">
     <xsd:complexType>
       <xsd:choice>
         <xsd:element name="SomethingSpecific"
                      namespace="www.mymessage.com"
                      type="SomethingSpecificType"/>
         <xsd:element name="SomeError"
                      namespace="www.myerror.com"
                      type="SomeErrorType"/>
       </xsd:choice>
     </xsd:complexType>
   </xsd:element>

(or something very like it) can in fact be written in XML Schema 1.0:

<xsd:element name="MessageBody"
   xmlns:mb="www.mymessage.com"
   xmlns:err="www.myerror.com">
   <xsd:complexType>
    <xsd:choice>
     <xsd:element ref="mb:SomethingSpecific"/>
     <xsd:element ref="err:SomeError"/>
    </xsd:choice>
   </xsd:complexType>
</xsd:element>

There is some difference: the child elements are not local to the
MessageBody element, and they have to be declared in separate schema
documents.  If those are crucial points, then you may not be happy
with this alternative solution.  And in any case, I apologize for the
fact that it has taken so long for the working group to respond
formally to your comment.

It would be helpful if you could confirm that my understanding of your
original comment is correct, that you were not requesting negative
wildcards, and that the ability to refer to (top-level) elements in
other namespaces provides the functionality you were seeking.  Or
not, as the case may be.

Since your comments got attached to the issue of negative wildcards,
I'll go ahead and mention that the most recent working draft of XML
Schema 1.1 has the functionality you described then: a 'notNamespace'
attribute and a 'notQName' attribute have been added to the xsd:any
element, with the meanings that the wildcard matches names which are
not in those namespace, and not in that list of QNames.

Fuller details can be found in section 3.10 of the most recent working
draft (http://www.w3.org/TR/xmlschema11-1/#Wildcards).

If you still have any interest in this topic, the working group would
be grateful to know whether you believe this revision successfully
addresses your original issue or not.  You will find a record of the
issue and our disposition of it in the W3C's public Bugzilla
installation, at http://www.w3.org/Bugs/Public/show_bug.cgi?id=2867
and we would be glad if you added a comment to the issue record
indicating whether you agree, or do not agree, with our resolution of
the issue.  Alternatively, you can reply to this email, which I am
copying to the public comments list.

If we do not hear from you in the next two weeks, we will assume you
agree with the WG decision, or have lost interest in XML Schema,
if not in all XML schema languages.

best regards,

--Michael Sperberg-McQueen
   Staff contact, W3C XML Schema Working Group

Received on Tuesday, 19 September 2006 01:36:03 UTC