﻿<?xml version="1.0" encoding="utf-8"?><rss version="2.0"><channel><title>XMLSCHEMA-DEV Mailing List Blog</title><link>http://www.stylusstudio.com/blogs/schemadev/</link><description>XML Schema-DEV is an open, un-moderated email list about W3C XML Schema (XSD) development issues, including XML Schema tools, tutorials, specifications, syntax, data modeling, and more. Learn XML Schema with free resources from the XMLSCHEMA-DEV Blog today. </description><copyright>Copyright 2004-2006 Progress Software Corporation. All Rights Reserved.</copyright><ttl>5</ttl><item><title>[ANN] Python XML Schema Bindings 1.0.0 </title><description><![CDATA[<pre id="body">
<a name="start10" accesskey="j" id="start10"></a>(If the maintainer of http://www.w3.org/XML/Schema#Tools would be so 
kind as to add the link to PyXB's home page, I'd appreciate it.  Thanks.)

PyXB version 1.0.0 is now available from SourceForge at: 
http://sourceforge.net/projects/pyxb/

PyXB (Python XML Schema <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/jaxb.html">Bindings</a>; &quot;pixbee&quot;) is a pure Python package 
that generates Python source code for classes that correspond to data 
structures <a title="XML Schema Tutorial" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xmlschema1/xmlschema1.html">defined by XMLSchema</a>.  In concept it is similar to JAXB for 
<a title="Java" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/configure_jre.html">Java</a> and CodeSynthesis XSD for C++.  The current release supports <a title="XML Schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">XML 
Schema 1.0</a>.

Version 1.0.0 is feature-complete and suitable for production 
development where validation of incoming and generated documents is 
desired.  The following schema constructs are supported:

   * Class constants corresponding to string enumeration constraints
   * Simple and complex type definitions
   * List and union <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/schema_aware.html">datatypes</a>
   * Constraints on (simple) datatypes (e.g., minInclusive, length)
   * Model groups and attribute groups
   * Complex content models (all, sequence, choice); minOccurs and 
maxOccurs
   * Abstract types, xsi:type, substitution groups
   * Nillable elements with xsi:nil
   * Namespace qualified attributes and elements
   * Documentation annotations present in the schema are converted to 
Python docstrings in the generated bindings.
   * Pattern constraints (as long as the simple type derives from 
something that is represented as a Python string)

The full distribution includes generated bindings for twenty-three 
namespaces related to web services (including several versions of <a title="WSDL Viewer" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/webservices/wsdl_editor.html">SOAP 
and WSDL</a>), and twenty-eight namespaces from the Open Geospatial 
Consortium's Geographic Information System schema.

For further information and links to the support forum and <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/feeds/">mailing list</a>, 
please consult the documentation available at: http://pyxb.sourceforge.net/

Peter
</pre>
<span id="received"><dfn>Received on</dfn> Thursday, 19 November 2009 10:39:57 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Nov/post00001.htm</link><pubDate>Wed, 18 Nov 2009 17:03:52 GMT</pubDate></item><item><title>A plea to XSD 1.1 vendors: provide a &amp;quot;switch&amp;quot; to turn on/off  vendor-unique extensions </title><description><![CDATA[<pre id="body">
<a name="start9" accesskey="j" id="start9"></a>
Hi Folks,

In <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">XSD</a> 1.1 vendors are allowed to extend the language with additional (vendor-unique) <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/schema_aware.html">datatypes</a> and facets. 

Example: In some countries the decimal point symbol is the comma; so a vendor may provide a new decimal datatype and a new facet for specifying the decimal point symbol:

&lt;<a title="xs:simpleType" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">xs:simpleType</a> name=&quot;money&quot;&gt;    
      &lt;xs:restriction base=&quot;vendor:decimal&quot;&gt;        
            &lt;vendor:delimiter value=&quot;,&quot; /&gt;    
      &lt;xs:restriction&gt;
&lt;/xs:simpleType&gt;

This is very useful. 

However, this capability represents an uncertainty in what things are in the language (&quot;If you're <a title="using this XSD 1.1" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xmlschema1/xmlschema1.html">using this XSD 1.1</a> <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml/editor/">tool</a> then these x,y,z things are in the language, if you're using that XSD 1.1 tool then these a,b,c things are in the language&quot;). For some of my clients:

     uncertainty = risk

For those clients, risk must be mitigated.

Thus, I issue a plea to all XSD 1.1 vendors: please provide a switch to turn on/off vendor-unique extensions. 
 
I believe that providing a switch to turn on/off vendor-unique extension will give vendors a market advantage.

Thanks for your time.

/Roger
</pre>
<span id="received"><dfn>Received on</dfn> Wednesday, 18 November 2009 20:30:23 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Nov/post09000.htm</link><pubDate>Wed, 18 Nov 2009 15:29:49 GMT</pubDate></item><item><title>Re: Naming in Override Constraints and Semantics </title><description><![CDATA[<pre id="body">
<a name="start8" accesskey="j" id="start8"></a>Thanks Henry.  Just done.

As I know the WG is not looking for extra work I thought I'd post to the 
public list so that members have a low procedure way to object to the 
comment if I've really missed the point!  That said, I think it's a simple 
and useful change to make.

Thanks again,

Pete.
--
=============================================
Pete Cordell
Codalogic Ltd
Interface <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">XML</a> to C++ the easy way using XML C++
<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/jaxb.html">data binding</a> to <a title="convert" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/convert_to_xml.html">convert</a> <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">XSD</a> schemas to C++ classes.
Visit http://codalogic.com/lmx/ or http://www.xml2cpp.com
for more info
=============================================

----- Original Message ----- 
From: &quot;Henry S. Thompson&quot; &lt;<a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=Re%3A%20Naming%20in%20Override%20Constraints%20and%20Semantics&amp;In-Reply-To=%253C1BAC5E4644FF46FF9F4C542722914FC7%40Codalogic%253E&amp;References=%253C1BAC5E4644FF46FF9F4C542722914FC7%40Codalogic%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>&gt;
To: &quot;Pete Cordell&quot; &lt;<a href="mailto:petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Naming%20in%20Override%20Constraints%20and%20Semantics&amp;In-Reply-To=%253C1BAC5E4644FF46FF9F4C542722914FC7%40Codalogic%253E&amp;References=%253C1BAC5E4644FF46FF9F4C542722914FC7%40Codalogic%253E">petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;</a>&gt;
Cc: &lt;<a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20Naming%20in%20Override%20Constraints%20and%20Semantics&amp;In-Reply-To=%253C1BAC5E4644FF46FF9F4C542722914FC7%40Codalogic%253E&amp;References=%253C1BAC5E4644FF46FF9F4C542722914FC7%40Codalogic%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>&gt;
Sent: Wednesday, November 11, 2009 9:40 AM
Subject: Re: Naming in Override Constraints and Semantics



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Requests for changes to the spec should go to
<a href="mailto:www-xml-schema-comments&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20Naming%20in%20Override%20Constraints%20and%20Semantics&amp;In-Reply-To=%253C1BAC5E4644FF46FF9F4C542722914FC7%40Codalogic%253E&amp;References=%253C1BAC5E4644FF46FF9F4C542722914FC7%40Codalogic%253E">www-xml-schema-comments&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a> or into Buzilla -- they may get
overlooked if they are only sent here.

I'd suggest you reduce the length of your requested new names, to,
say, Dold and Dnew. . .

ht
- -- 
       Henry S. Thompson, School of Informatics, University of Edinburgh
                         Half-time member of <a title="W3C" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">W3C</a> Team
      10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
                Fax: (44) 131 651-1426, e-mail: <a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=Re%3A%20Naming%20in%20Override%20Constraints%20and%20Semantics&amp;In-Reply-To=%253C1BAC5E4644FF46FF9F4C542722914FC7%40Codalogic%253E&amp;References=%253C1BAC5E4644FF46FF9F4C542722914FC7%40Codalogic%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>
                       URL: http://www.ltg.ed.ac.uk/~ht/
[mail really from me _always_ has this .sig -- mail without it is forged 
spam]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)

iD8DBQFK+oaRkjnJixAXWBoRAjCyAJ9xWKNKnDOdCgsVHifHkSH+r5oDdwCcCsMy
6PycvCIKjDgwQwoHHLQRtSM=
=045d
-----END PGP SIGNATURE-----
</pre>
<span id="received"><dfn>Received on</dfn> Wednesday, 11 November 2009 15:02:48 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Nov/post08000.htm</link><pubDate>Wed, 11 Nov 2009 15:02:12 GMT</pubDate></item><item><title>Re: Naming in Override Constraints and Semantics </title><description><![CDATA[<pre id="body">
<a name="start7" accesskey="j" id="start7"></a>-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Requests for changes to the spec should go to
<a href="mailto:www-xml-schema-comments&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20Naming%20in%20Override%20Constraints%20and%20Semantics&amp;In-Reply-To=%253Cf5bbpj9e6wi.fsf%40hildegard.inf.ed.ac.uk%253E&amp;References=%253Cf5bbpj9e6wi.fsf%40hildegard.inf.ed.ac.uk%253E">www-xml-schema-comments&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a> or into Buzilla -- they may get
overlooked if they are only sent here.

I'd suggest you reduce the length of your requested new names, to,
say, Dold and Dnew. . .

ht
- -- 
       Henry S. Thompson, School of Informatics, University of Edinburgh
                         Half-time member of <a title="W3C" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">W3C</a> Team
      10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
                Fax: (44) 131 651-1426, e-mail: <a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=Re%3A%20Naming%20in%20Override%20Constraints%20and%20Semantics&amp;In-Reply-To=%253Cf5bbpj9e6wi.fsf%40hildegard.inf.ed.ac.uk%253E&amp;References=%253Cf5bbpj9e6wi.fsf%40hildegard.inf.ed.ac.uk%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>
                       URL: http://www.ltg.ed.ac.uk/~ht/
[mail really from me _always_ has this .sig -- mail without it is forged spam]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)

iD8DBQFK+oaRkjnJixAXWBoRAjCyAJ9xWKNKnDOdCgsVHifHkSH+r5oDdwCcCsMy
6PycvCIKjDgwQwoHHLQRtSM=
=045d
-----END PGP SIGNATURE-----
</pre>
<span id="received"><dfn>Received on</dfn> Wednesday, 11 November 2009 09:41:13 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Nov/post07000.htm</link><pubDate>Wed, 11 Nov 2009 09:40:29 GMT</pubDate></item><item><title>Naming in Override Constraints and Semantics </title><description><![CDATA[<pre id="body">
<a name="start6" accesskey="j" id="start6"></a>In &quot;<a title="Schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">Schema</a> Representation Constraint: Override Constraints and Semantics&quot;, 
is there any chance that:

- D1 could be changed to Doverridden and
- D2 could be changed to Doverriding?

Then:

2 One of the following must be true:
2.1 D2 has a targetNamespace [attribute], and its ·actual value· is 
identical to the ·actual value· of the targetNamespace [attribute] of D1 
(which must have such an [attribute]).
2.2 Neither D2 nor D1 have a targetNamespace [attribute].
2.3 D2 has no targetNamespace [attribute] (but D1 does).

becomes:

2 One of the following must be true:
2.1 Doverriding has a targetNamespace [attribute], and its ·actual value· is 
identical to the ·actual value· of the targetNamespace [attribute] of 
Doverridden (which must have such an [attribute]).
2.2 Neither Doverriding nor Doverridden have a targetNamespace [attribute].
2.3 Doverriding has no targetNamespace [attribute] (but Doverridden does).

This is a lot easier on the old brain!

There are possibly similar name changes that could be made that would make 
the life of the reader much easier.

Thanks,

Pete.
--
=============================================
Pete Cordell
Codalogic Ltd
Interface <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">XML</a> to C++ the easy way using XML C++
<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/jaxb.html">data binding</a> to <a title="convert" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/convert_to_xml.html">convert</a> XSD schemas to C++ classes.
Visit http://codalogic.com/lmx/ or http://www.xml2cpp.com
for more info
=============================================
</pre>
<span id="received"><dfn>Received on</dfn> Tuesday, 10 November 2009 17:58:55 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Nov/post06000.htm</link><pubDate>Tue, 10 Nov 2009 17:57:56 GMT</pubDate></item><item><title>RE: Possible to restrict top-level xs:element names? </title><description><![CDATA[<pre id="body">
<a name="start5" accesskey="j" id="start5"></a>Thank you all for your valuable feedback. I think Henry put it most
succintly:

&quot;The spec doesn't provide a mechanism by which a <a title="schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">schema</a> can constrain the
document element of schema-valid documents.&quot;

That's what I was wanting to know. I apologise if I used confusing
terminology in trying to explain my problem!

Regards,

Richard.
-- 
View this message in context: http://old.nabble.com/Possible-to-restrict-top-level-xs%3Aelement-names--tp26227610p26249237.html
Sent from the <a title="w3" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">w3</a>.org - <a title="xmlschema-dev" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://xsd.stylusstudio.com">xmlschema-dev</a> <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/feeds/">mailing list</a> archive at Nabble.com.
</pre>
<span id="received"><dfn>Received on</dfn> Saturday,  7 November 2009 22:26:09 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Nov/post05000.htm</link><pubDate>Sat, 07 Nov 2009 14:24:52 GMT</pubDate></item><item><title>RE: Possible to restrict top-level xs:element names? </title><description><![CDATA[<pre id="body">
<a name="start4" accesskey="j" id="start4"></a>&gt;    (b) make sure your processor distinguishes between elements
&gt;        with [validity]=invalid and those with [validity]=notKnown
&gt;        (again, how you do this is between you and your processor,
&gt;        and out of scope for the <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">XSD</a> spec); and

You might like to note that <a title="Saxon's schema processor" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/saxon_xslt_processor.html">Saxon's schema processor</a>, and perhaps some other
products, expose this distinction by allowing you to select &quot;strict&quot; or
&quot;lax&quot; validation. Strict validation fails if the outcome is
[validity]=notKnown, whereas lax validation succeeds.

Regards,

<a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a>
http://www.saxonica.com/
http://twitter.com/michaelhkay 
</pre>
<span id="received"><dfn>Received on</dfn> Saturday,  7 November 2009 10:25:46 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Nov/post04000.htm</link><pubDate>Sat, 07 Nov 2009 10:25:13 GMT</pubDate></item><item><title>Re: Possible to restrict top-level xs:element names? </title><description><![CDATA[<pre id="body">
<a name="start2" accesskey="j" id="start2"></a>-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

The spec doesn't provide a mechanism by which a <a title="schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">schema</a> can constrain
the document element of schema-valid documents.

It _does_ provide license for conformant processors to do
schema-validity assessment with such a constraint in place [1].

Different processors allow users to invoke this kind of processing in
different ways -- what validator are you using?

ht

[1] http://www.<a title="w3" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">w3</a>.org/TR/<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/schema0/_index.htm">xmlschema-1</a>/#c-res
- -- 
       Henry S. Thompson, School of Informatics, University of Edinburgh
                         Half-time member of W3C Team
      10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
                Fax: (44) 131 651-1426, e-mail: <a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=Re%3A%20Possible%20to%20restrict%20top-level%20xs%3Aelement%20names%3F&amp;In-Reply-To=%253Cf5bocnfphts.fsf%40hildegard.inf.ed.ac.uk%253E&amp;References=%253Cf5bocnfphts.fsf%40hildegard.inf.ed.ac.uk%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>
                       URL: http://www.ltg.ed.ac.uk/~ht/
[mail really from me _always_ has this .sig -- mail without it is forged spam]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)

iD8DBQFK9Hp/kjnJixAXWBoRAkmzAJ4q7YYJ84l6UmdhZ+gdbrpNdEr9BwCeIxS/
EM49iXoq0GTVWxYb0Vv+bQI=
=muE/
-----END PGP SIGNATURE-----
</pre>
<span id="received"><dfn>Received on</dfn> Friday,  6 November 2009 19:36:17 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Nov/post02000.htm</link><pubDate>Fri, 06 Nov 2009 19:35:27 GMT</pubDate></item><item><title>Re: Possible to restrict top-level xs:element names? </title><description><![CDATA[<pre id="body">
<a name="start3" accesskey="j" id="start3"></a>On 5 Nov 2009, at 23:58 , kennardconsulting wrote:

&gt;
&gt; I'm generating a bunch of <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">XML</a> Schemas that look roughly like:
&gt;
&gt; &lt;<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">xs:schema</a> ...&gt;
&gt;   &lt;xs:element name=&quot;foo&quot;/&gt;
&gt;   &lt;xs:element name=&quot;bar&quot;/&gt;
&gt; &lt;/xs:schema&gt;
&gt;
&gt; You can see the actual ones  http://metawidget.org/xsd here . My  
&gt; question
&gt; is, this schema allows me to declare 'foo' and 'bar' in my XML  
&gt; document, but
&gt; doesn't restrict me declaring, say, 'baz'.

I'm not quite sure what you're saying.  Where I come from, it is
natural to speak of declaring 'foo' and 'bar' elements in a <a title="schema
document" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">schema
document</a> (as is done in the skeleton you give), but odd to speak
of 'declaring' elements in the XML instance being validated.

If you mean &quot;how do I prevent someone else writing a schema
document for my target namespace and including a top-level baz
element in it?&quot;, the answer is that you can't prevent other
people from writing what they like in documents on their own
hard disks.  The world is just structured that way.

On the other hand, you don't have <a title="An Introduction to XML Schema Development" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xmlschema1/xmlschema1.html">to use the schema</a> documents on
their hard disks when you validate.  If you want to ensure that
in a particular validation episode 'foo' and 'bar' will be
global elements in the target namespace, and 'baz' won't be,
you just need to arrange with your <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/open_xsd_validation.html">schema validator</a>, at invocation
time, that it should read your schema documents, and not the
ones on other people's disks that include declaration for
'baz'.  How you arrange with a validator to read certain schema
documents and not read others is out of scope of the schema
language itself; if a particular validator does not allow you
to control things with the degree of precision you need, it's
a quality issue and you should look for a new validator.

If on the other hand you mean &quot;how do I keep someone from
using a 'baz' element in my namespace?&quot;, again, the universe
is so structured that nothing you or XSD or any other schema
language can do could possibly prevent that.

The most you can do is try to arrange that such a usage
counts as invalid when the document is validated against your
schema.  So consider the question &quot;how do I ensure that when
a user uses a 'baz' element in my namespace, it's marked
invalid?&quot; The answer is, roughly:

   (a) tell the validator to read your schema document and
       not some bogus one which defines 'baz' (see above);
   (b) make sure your processor distinguishes between elements
       with [validity]=invalid and those with [validity]=notKnown
       (again, how you do this is between you and your processor,
       and out of scope for the XSD spec); and
   (c) make sure your own code that invokes the validator rejects
       the cases where [validity]=notKnown.


&gt; I was expecting something like...
&gt;
&gt; &lt;xs:schema final=&quot;#all&quot;&gt;
&gt;
&gt; ....so that I could 'close' the set of possible xs:element names. Or  
&gt; maybe
&gt; that the set was closed by default and I'd need...
&gt;
&gt; &lt;xs:schema ...&gt;
&gt;   &lt;xs:element name=&quot;foo&quot;/&gt;
&gt;   &lt;xs:element name=&quot;bar&quot;/&gt;
&gt;   &lt;xs:any /&gt;
&gt; &lt;/xs:schema&gt;
&gt;
&gt; ....to make it open. But instead the set of top-level xs:element names
&gt; appears 'open' by default and I can't find a way to close it? I have  
&gt; looked
&gt; all over the specs and in this <a title="forum" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/SSDN/default.asp">forum</a>, sorry if I'm being dumb.

I'm not sure what you mean by open and closed sets of elements
(or element names) here.  I'm also not sure whether by &quot;top-level&quot;
you mean &quot;can be used as the root element of a document&quot; or
&quot;defined on the top level of a schema document; not local to a
complex type&quot;.  But in a way, I guess, it doesn't really matter:
XSD's design says, essentially, that the way you specify &quot;these
declarations, and no others&quot; is to say just that, but at validation
time, not at schema specification time.

I hope this helps.

-- 
****************************************************************
* C. M. Sperberg-McQueen, Black Mesa Technologies LLC
* http://www.blackmesatech.com
* http://cmsmcq.com/mib
* http://balisage.net
****************************************************************
</pre>
<span id="received"><dfn>Received on</dfn> Saturday,  7 November 2009 00:35:51 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Nov/post03000.htm</link><pubDate>Fri, 06 Nov 2009 17:35:19 GMT</pubDate></item><item><title>Re: Possible to restrict top-level xs:element names? </title><description><![CDATA[<pre id="body">
<a name="start1" accesskey="j" id="start1"></a>I'm not quite sure what you are asking.  Are you trying to restrict how 
your <a title="schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">schema</a> can be extended, or are you trying to restrict what is 
allowed in an instance document?  

Perhaps you have a conceptual misunderstanding?  Note that

&lt;<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">xs:schema</a> ...&gt;
   &lt;xs:element name=&quot;foo&quot;/&gt;
   &lt;xs:element name=&quot;bar&quot;/&gt;
&lt;/xs:schema&gt;

is not the same as

&lt;xs:schema ...&gt;
   &lt;xs:choice&gt;
      &lt;xs:element name=&quot;foo&quot;/&gt;
      &lt;xs:element name=&quot;bar&quot;/&gt;
   &lt;/xs:choice&gt;
&lt;/xs:schema&gt;

(which isn't legal btw).

That is, the children of your &lt;schema&gt; element do not represent a model 
for your instance documents, which is perhaps how you are thinking of 
it?  Rather, they declare the elements, attributes, and types according 
to which an instance document may be validated.  (Note by the way, that 
there are different approaches <a title="XML Schema Tutorial" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xmlschema1/xmlschema1.html">to validating documents against schemas</a>, 
see 
http://www.<a title="w3" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">w3</a>.org/TR/2004/REC-<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/schema0/_index.htm">xmlschema-1</a>-20041028/structures.html#validation_outcome).

I don't believe you can prevent someone from including your <a title="schema 
document" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">schema 
document</a> into theirs while at the same time adding more global elements, 
if that's what you are trying to avoid.

Kevin

-- 
Objective Systems, Inc.
REAL WORLD ASN.1 AND XML SOLUTIONS
Tel: +1 (484) 875-9841
Fax: +1 (484) 875-9830
Toll-free: (877) 307-6855 (USA only)
http://www.obj-sys.com



On 11/6/2009 1:58 AM, kennardconsulting wrote:
&gt; Hi guys,
&gt;
&gt; I'm generating a bunch of XML Schemas that look roughly like:
&gt;
&gt; &lt;xs:schema ...&gt;
&gt;    &lt;xs:element name=&quot;foo&quot;/&gt;
&gt;    &lt;xs:element name=&quot;bar&quot;/&gt;
&gt; &lt;/xs:schema&gt;
&gt;
&gt; You can see the actual ones  http://metawidget.org/xsd here . My question
&gt; is, this schema allows me to declare 'foo' and 'bar' in my XML document, but
&gt; doesn't restrict me declaring, say, 'baz'. I was expecting something like...
&gt;
&gt; &lt;xs:schema final=&quot;#all&quot;&gt;
&gt;
&gt; ....so that I could 'close' the set of possible xs:element names. Or maybe
&gt; that the set was closed by default and I'd need...
&gt;
&gt; &lt;xs:schema ...&gt;
&gt;    &lt;xs:element name=&quot;foo&quot;/&gt;
&gt;    &lt;xs:element name=&quot;bar&quot;/&gt;
&gt;    &lt;xs:any /&gt;
&gt; &lt;/xs:schema&gt;
&gt;
&gt; ....to make it open. But instead the set of top-level xs:element names
&gt; appears 'open' by default and I can't find a way to close it? I have looked
&gt; all over the specs and in this <a title="forum" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/SSDN/default.asp">forum</a>, sorry if I'm being dumb.
&gt;
&gt; Regards,
&gt;
&gt; Richard.
&gt;   
</pre>
<span id="received"><dfn>Received on</dfn> Friday,  6 November 2009 19:32:40 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Nov/post01000.htm</link><pubDate>Fri, 06 Nov 2009 14:30:11 GMT</pubDate></item><item><title>Possible to restrict top-level xs:element names? </title><description><![CDATA[<pre id="body">
<a name="start0" accesskey="j" id="start0"></a>Hi guys,

I'm generating a bunch of <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">XML</a> Schemas that look roughly like:

&lt;<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">xs:schema</a> ...&gt;
   &lt;xs:element name=&quot;foo&quot;/&gt;
   &lt;xs:element name=&quot;bar&quot;/&gt;
&lt;/xs:schema&gt;

You can see the actual ones  http://metawidget.org/xsd here . My question
is, this schema allows me to declare 'foo' and 'bar' in my XML document, but
doesn't restrict me declaring, say, 'baz'. I was expecting something like...

&lt;xs:schema final=&quot;#all&quot;&gt;

....so that I could 'close' the set of possible xs:element names. Or maybe
that the set was closed by default and I'd need...

&lt;xs:schema ...&gt;
   &lt;xs:element name=&quot;foo&quot;/&gt;
   &lt;xs:element name=&quot;bar&quot;/&gt;
   &lt;xs:any /&gt;
&lt;/xs:schema&gt;

....to make it open. But instead the set of top-level xs:element names
appears 'open' by default and I can't find a way to close it? I have looked
all over the specs and in this <a title="forum" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/SSDN/default.asp">forum</a>, sorry if I'm being dumb.

Regards,

Richard.
-- 
View this message in context: http://old.nabble.com/Possible-to-restrict-top-level-xs%3Aelement-names--tp26227610p26227610.html
Sent from the <a title="w3" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">w3</a>.org - <a title="xmlschema-dev" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://xsd.stylusstudio.com">xmlschema-dev</a> <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/feeds/">mailing list</a> archive at Nabble.com.
</pre>
<span id="received"><dfn>Received on</dfn> Friday,  6 November 2009 18:52:00 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Nov/post00000.htm</link><pubDate>Thu, 05 Nov 2009 22:58:55 GMT</pubDate></item><item><title>[ANN] Altova announces v2010 of the MissionKit tool suite </title><description><![CDATA[<pre id="body">
<a name="start59" accesskey="j" id="start59"></a>Altova is pleased to announce general availability version 2010 of its
MissionKit XML, database, and UML tools. v2010 is our MOST WANTED
release and includes over 70 new customer-requested features. Just a few
of these include: 

 

* Support <a title="WSDL Tools" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/webservices/wsdl_editor.html">for WSDL 2.0</a>, <a title="JSON vs XML" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.xmlconverters.com/tutorials/json-and-xquery.html">JSON</a>, and SysML technologies

* New <a title="Stylesheet Design" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/publisher1/publisher1.html">stylesheet design</a> paradigm with advanced support for electronic
form design

* Enhanced <a title="XBRL" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://schemas.stylusstudio.com/xbrl/index.html">XBRL</a> <a title="functionality" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/buy/compare.html">functionality</a>

* Database <a title="schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">schema</a> comparison

* And much more 

 

More info and <a title="screenshots" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_screenshots.html">screenshots</a> are available at
&lt;http://www.altova.com/whatsnew.html&gt; 

 

Download a fully functional free trial at
&lt;http://www.altova.com/download.html&gt; 

Best regards,

Liz

 

Liz Andrews

Technical Marketing Manager
Altova, Inc.

www.altova.com

 

________________________________

This e-mail and any attachments are intended only for the person/entity
to which they are addressed and may contain confidential and/or
privileged material. If you received this in error, please notify the
sender and delete the message.

 

 

 

Liz Andrews

Technical Marketing Manager
Altova, Inc.

www.altova.com

 

________________________________

This e-mail and any attachments are intended only for the person/entity
to which they are addressed and may contain confidential and/or
privileged material. If you received this in error, please notify the
sender and delete the message.

 
</pre>
<span id="received"><dfn>Received on</dfn> Thursday, 29 October 2009 19:39:06 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post09005.htm</link><pubDate>Thu, 29 Oct 2009 15:38:25 GMT</pubDate></item><item><title>Re: redefine and target namespace </title><description><![CDATA[<pre id="body">
<a name="start57" accesskey="j" id="start57"></a>-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Florent Georges writes:

&gt; Henry S. Thompson wrote:
&gt;
&gt;&gt; Without going into tedious and confidential details about
&gt;&gt; personalities and working group <a title="discussions" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/SSDN/default.asp">discussions</a>, suffice it to say
&gt;&gt; that the design we have was the only one that included both
&gt;&gt; possibilities which the WG could reach consensus on.
&gt;
&gt;   Yes, but that does not answer the interesting question: why the
&gt; chosen default value ;-)

That was part of the compromise.

ht
- -- 
       Henry S. Thompson, School of Informatics, University of Edinburgh
                         Half-time member of <a title="W3C" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">W3C</a> Team
      10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
                Fax: (44) 131 651-1426, e-mail: <a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=Re%3A%20redefine%20and%20target%20namespace&amp;In-Reply-To=%253Cf5bk4yiqkbu.fsf%40hildegard.inf.ed.ac.uk%253E&amp;References=%253Cf5bk4yiqkbu.fsf%40hildegard.inf.ed.ac.uk%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>
                       URL: http://www.ltg.ed.ac.uk/~ht/
[mail really from me _always_ has this .sig -- mail without it is forged spam]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)

iD8DBQFK5beVkjnJixAXWBoRAoT5AJ4yFDcwJ5ffeptvNEzg6ORziuap5gCdFrbr
df9/0oDB1kNHtEXZPaHqEks=
=ciuI
-----END PGP SIGNATURE-----
</pre>
<span id="received"><dfn>Received on</dfn> Monday, 26 October 2009 14:54:41 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post07005.htm</link><pubDate>Mon, 26 Oct 2009 14:52:05 GMT</pubDate></item><item><title>Re: redefine and target namespace </title><description><![CDATA[<pre id="body">
<a name="start56" accesskey="j" id="start56"></a>Henry S. Thompson wrote:

  Hi,

&gt; Without going into tedious and confidential details about
&gt; personalities and working group <a title="discussions" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/SSDN/default.asp">discussions</a>, suffice it to say
&gt; that the design we have was the only one that included both
&gt; possibilities which the WG could reach consensus on.

  Yes, but that does not answer the interesting question: why the
chosen default value ;-)

  Regards,

-- 
Florent Georges
http://www.fgeorges.org/























      
</pre>
<span id="received"><dfn>Received on</dfn> Monday, 26 October 2009 14:21:16 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post06005.htm</link><pubDate>Mon, 26 Oct 2009 14:20:39 GMT</pubDate></item><item><title>Re: redefine and target namespace </title><description><![CDATA[<pre id="body">
<a name="start55" accesskey="j" id="start55"></a>-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

<a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a> writes:

&gt; Yes. I've never heard an adequate explanation of why this extraordinary
&gt; decision was made, but in practice everyone changes the default by using
&gt; elementFormDefault=&quot;qualified&quot;.

At the time the spec. was written, the community was pretty evenly
divided between people who thought the attribute model (i.e. not in a
namespace as such) was right for leaf node elements as well, and those
who thought that all elements should be qualified.

Without going into tedious and confidential details about
personalities and working group <a title="discussions" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/SSDN/default.asp">discussions</a>, suffice it to say that
the design we have was the only one that included both possibilities
which the WG could reach consensus on.

ht
- -- 
       Henry S. Thompson, School of Informatics, University of Edinburgh
                         Half-time member of W3C Team
      10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
                Fax: (44) 131 651-1426, e-mail: <a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=Re%3A%20redefine%20and%20target%20namespace&amp;In-Reply-To=%253Cf5b1vkqs71d.fsf%40hildegard.inf.ed.ac.uk%253E&amp;References=%253Cf5b1vkqs71d.fsf%40hildegard.inf.ed.ac.uk%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>
                       URL: http://www.ltg.ed.ac.uk/~ht/
[mail really from me _always_ has this .sig -- mail without it is forged spam]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)

iD8DBQFK5Y5ekjnJixAXWBoRAh2UAJ4gBVgrOq4C+DK22kFTJNRvnLkSFwCfZnsJ
jgNXeNgag92u+CLvC5gXK9o=
=yYHE
-----END PGP SIGNATURE-----
</pre>
<span id="received"><dfn>Received on</dfn> Monday, 26 October 2009 11:57:06 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post05005.htm</link><pubDate>Mon, 26 Oct 2009 11:56:14 GMT</pubDate></item><item><title>Re: redefine and target namespace </title><description><![CDATA[<pre id="body">
<a name="start58" accesskey="j" id="start58"></a>Henry Thompson writes:

&gt; That was part of the compromise.

Stated differently:  you can infer that there were a significant number of 
people involved who strongly took the opposite position from yours, and 
the default you see was in deference to their views of what the community 
needed.  As already noted, it was a long and difficult <a title="discussion" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/SSDN/default.asp">discussion</a>, with 
strongly held opinions on both sides.  I don't think anyone thought the 
resulting design was particularly appealing, but given the strongly 
divergent opinions about what users needed and/or about how namespaces 
were supposed to be used, the design had the advantage of letting users 
choose.  FWIW:  I tend to sympathize with George's feeling that most users 
do want the qualified idiom, that qualified would have been a better 
default, etc.  Still, it's way too late to reopen it now, and there are 
schemas out in the wild that use both options as far as I know.

Noah

--------------------------------------
Noah Mendelsohn 
IBM Corporation
One Rogers Street
Cambridge, MA 02142
1-617-693-4036
--------------------------------------








<a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=Re%3A%20redefine%20and%20target%20namespace&amp;In-Reply-To=%253COFFB5296D8.4C428347-ON8525765B.00540268-8525765B.00546FF1%40lotus.com%253E&amp;References=%253COFFB5296D8.4C428347-ON8525765B.00540268-8525765B.00546FF1%40lotus.com%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a> (Henry S. Thompson)
Sent by: <a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20redefine%20and%20target%20namespace&amp;In-Reply-To=%253COFFB5296D8.4C428347-ON8525765B.00540268-8525765B.00546FF1%40lotus.com%253E&amp;References=%253COFFB5296D8.4C428347-ON8525765B.00540268-8525765B.00546FF1%40lotus.com%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
10/26/2009 10:52 AM
 
        To:     <a href="mailto:lists&#x40;&#0102;&#0103;&#0101;&#0111;&#0114;&#0103;&#0101;&#0115;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20redefine%20and%20target%20namespace&amp;In-Reply-To=%253COFFB5296D8.4C428347-ON8525765B.00540268-8525765B.00546FF1%40lotus.com%253E&amp;References=%253COFFB5296D8.4C428347-ON8525765B.00540268-8525765B.00546FF1%40lotus.com%253E">lists&#x40;&#0102;&#0103;&#0101;&#0111;&#0114;&#0103;&#0101;&#0115;&#0046;&#0111;&#0114;&#0103;</a>
        cc:     <a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a> &lt;<a href="mailto:mike&#x40;&#0115;&#0097;&#0120;&#0111;&#0110;&#0105;&#0099;&#0097;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20redefine%20and%20target%20namespace&amp;In-Reply-To=%253COFFB5296D8.4C428347-ON8525765B.00540268-8525765B.00546FF1%40lotus.com%253E&amp;References=%253COFFB5296D8.4C428347-ON8525765B.00540268-8525765B.00546FF1%40lotus.com%253E">mike&#x40;&#0115;&#0097;&#0120;&#0111;&#0110;&#0105;&#0099;&#0097;&#0046;&#0099;&#0111;&#0109;</a>&gt;, <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20redefine%20and%20target%20namespace&amp;In-Reply-To=%253COFFB5296D8.4C428347-ON8525765B.00540268-8525765B.00546FF1%40lotus.com%253E&amp;References=%253COFFB5296D8.4C428347-ON8525765B.00540268-8525765B.00546FF1%40lotus.com%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>, 
(bcc: Noah Mendelsohn/Cambridge/IBM)
        Subject:        Re: redefine and target namespace


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Florent Georges writes:

&gt; Henry S. Thompson wrote:
&gt;
&gt;&gt; Without going into tedious and confidential details about
&gt;&gt; personalities and working group discussions, suffice it to say
&gt;&gt; that the design we have was the only one that included both
&gt;&gt; possibilities which the WG could reach consensus on.
&gt;
&gt;   Yes, but that does not answer the interesting question: why the
&gt; chosen default value ;-)

That was part of the compromise.

ht
- -- 
       Henry S. Thompson, School of Informatics, University of Edinburgh
                         Half-time member of W3C Team
      10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
                Fax: (44) 131 651-1426, e-mail: <a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=Re%3A%20redefine%20and%20target%20namespace&amp;In-Reply-To=%253COFFB5296D8.4C428347-ON8525765B.00540268-8525765B.00546FF1%40lotus.com%253E&amp;References=%253COFFB5296D8.4C428347-ON8525765B.00540268-8525765B.00546FF1%40lotus.com%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>
                       URL: http://www.ltg.ed.ac.uk/~ht/
[mail really from me _always_ has this .sig -- mail without it is forged 
spam]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)

iD8DBQFK5beVkjnJixAXWBoRAoT5AJ4yFDcwJ5ffeptvNEzg6ORziuap5gCdFrbr
df9/0oDB1kNHtEXZPaHqEks=
=ciuI
-----END PGP SIGNATURE-----
</pre>
<span id="received"><dfn>Received on</dfn> Monday, 26 October 2009 15:23:04 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post08005.htm</link><pubDate>Mon, 26 Oct 2009 11:22:14 GMT</pubDate></item><item><title>Re: redefine and target namespace </title><description><![CDATA[<pre id="body">
<a name="start54" accesskey="j" id="start54"></a><a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a> wrote:

  Hi,

&gt; &gt; I thought the element 'b' was defined in the target
&gt; &gt; namespace, but it seems it has to be in no namespace.

&gt; Just as if you didn't use redefine, your local element
&gt; declaration will only be in the target namespace if you specify
&gt; elementFormDefault=&quot;qualified&quot;

  &lt;blush&gt;Ouch!&lt;/blush&gt;  It's been a long time since I've been
fooled by this one.  I guess I was focused on the redefine...
Sorry for the noise and thanks for the quick answer!

  Regards,

-- 
Florent Georges
http://www.fgeorges.org/






















      
</pre>
<span id="received"><dfn>Received on</dfn> Sunday, 25 October 2009 22:40:11 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post04005.htm</link><pubDate>Sun, 25 Oct 2009 22:39:37 GMT</pubDate></item><item><title>RE: redefine and target namespace </title><description><![CDATA[<pre id="body">
<a name="start53" accesskey="j" id="start53"></a>
&gt; I thought the element 'b' was defined in the target namespace, but it
seems it has to be in no namespace.

Just as if you didn't use redefine, your local element declaration will only
be in the target namespace if you specify elementFormDefault=&quot;qualified&quot; on
your <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">xs:schema</a> element. (Or, of course, form=&quot;qualified&quot; on the local
element declaration itself, but no-one ever does that.) 

&gt; Is it really the intent of the spec?

Yes. I've never heard an adequate explanation of why this extraordinary
decision was made, but in practice everyone changes the default by using
elementFormDefault=&quot;qualified&quot;.

Regards,

<a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a>
http://www.saxonica.com/
http://twitter.com/michaelhkay 

 
</pre>
<span id="received"><dfn>Received on</dfn> Sunday, 25 October 2009 18:51:50 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post03005.htm</link><pubDate>Sun, 25 Oct 2009 18:51:17 GMT</pubDate></item><item><title>redefine and target namespace </title><description><![CDATA[<pre id="body">
<a name="start52" accesskey="j" id="start52"></a>  Hi,

  I have a <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">schema document</a> that redefines a complex type as
following:

    &lt;xs:redefine schemaLocation=&quot;redefine.xsd&quot;&gt;
       &lt;<a title="xs:complexType" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">xs:complexType</a> name=&quot;root&quot;&gt;
          &lt;xs:complexContent&gt;
             &lt;xs:extension base=&quot;tns:root&quot;&gt;
                &lt;xs:sequence&gt;
                   &lt;xs:element name=&quot;b&quot; type=&quot;xs:string&quot;/&gt;
                &lt;/xs:sequence&gt;
             &lt;/xs:extension&gt;
          &lt;/xs:complexContent&gt;
       &lt;/xs:complexType&gt;
    &lt;/xs:redefine&gt;

  I thought the element 'b' was defined in the target namespace,
but it seems it has to be in no namespace.  Is it really the
intent of the spec?  Did I do anything wrong?  I <a title="xerces Tutorial" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml/xerces.html">use Xerces 2 for
Java</a> (as in Java SE 6.)

  redefine.xsd:

    &lt;?xml version=&quot;1.0&quot; <a title="encoding" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_other.html">encoding</a>=&quot;UTF-8&quot;?&gt;

    &lt;xs:schema xmlns:xs=&quot;http://www.<a title="w3" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">w3</a>.org/2001/XMLSchema&quot;
               xmlns:tns=&quot;tns&quot;
               targetNamespace=&quot;tns&quot;
               elementFormDefault=&quot;qualified&quot;&gt;

       &lt;xs:element name=&quot;root&quot; type=&quot;tns:root&quot;/&gt;

       &lt;xs:complexType name=&quot;root&quot;&gt;
          &lt;xs:sequence&gt;
             &lt;xs:element name=&quot;a&quot; type=&quot;xs:string&quot;/&gt;
          &lt;/xs:sequence&gt;
       &lt;/xs:complexType&gt;

    &lt;/xs:schema&gt;

  redefine-red.xsd:

    &lt;xs:schema xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;
               targetNamespace=&quot;tns&quot;
               xmlns:tns=&quot;tns&quot;&gt;

       &lt;xs:redefine schemaLocation=&quot;redefine.xsd&quot;&gt;
          &lt;xs:complexType name=&quot;root&quot;&gt;
             &lt;xs:complexContent&gt;
                &lt;xs:extension base=&quot;tns:root&quot;&gt;
                   &lt;xs:sequence&gt;
                      &lt;xs:element name=&quot;b&quot; type=&quot;xs:string&quot;/&gt;
                   &lt;/xs:sequence&gt;
                &lt;/xs:extension&gt;
             &lt;/xs:complexContent&gt;
          &lt;/xs:complexType&gt;
       &lt;/xs:redefine&gt;

       &lt;xs:element name=&quot;redefined&quot; type=&quot;tns:root&quot;/&gt;

    &lt;/xs:schema&gt;

  Valid redefine.xml:

    &lt;tns:redefined xmlns:tns=&quot;tns&quot;&gt;
       &lt;tns:a&gt;bla&lt;/tns:a&gt;
       &lt;b&gt;bla&lt;/b&gt;
    &lt;/tns:redefined&gt;

  Expected valid redefine.xml (but actually invalid):

    &lt;redefined xmlns=&quot;tns&quot;&gt;
       &lt;a&gt;bla&lt;/a&gt;
       &lt;b&gt;bla&lt;/b&gt;
    &lt;/redefined&gt;

  Regards,

-- 
Florent Georges
http://www.fgeorges.org/






















      
</pre>
<span id="received"><dfn>Received on</dfn> Sunday, 25 October 2009 18:06:15 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post02005.htm</link><pubDate>Sun, 25 Oct 2009 18:05:41 GMT</pubDate></item><item><title>Re: Resolution of &amp;quot;ref&amp;quot; attribute in case of &amp;lt;override&amp;gt; </title><description><![CDATA[<pre id="body">
<a name="start51" accesskey="j" id="start51"></a>Very well.  Thank you, Michael and Michael.

On 10/22/2009 4:08 AM, <a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a> wrote:
&gt;&gt; How will the prefix in the ref attribute in the 
&gt;&gt; attributeGroup element be handled?  If D2' is the result of 
&gt;&gt; applying the xs:override transform, and D2' contains an 
&gt;&gt; element information item that is identical to the one for the 
&gt;&gt; &lt;attributeGroup&gt;, I expect it will have [in-scope namespaces] 
&gt;&gt; based on what we see above; namely, the qrs prefix will 
&gt;&gt; necessarily resolve to &quot;uri:example.com&quot;.  Is that correct?
&gt;&gt;     
&gt;
&gt; Yes. In fact, this doesn't even depend on the <a title="Stylesheet Design" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/publisher1/publisher1.html">stylesheet</a> being <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/schema_aware.html">schema-aware</a>
&gt; and on &#64;ref being known to be a QName. The element is copied using
&gt; &lt;<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xslt.html">xsl</a>:copy-of&gt;, which copies all the in-scope namespaces of an element,
&gt; including therefore the namespace <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/jaxb.html">binding</a> for &quot;qrs&quot;.
&gt;   
&gt;&gt; Also, a second question.  I don't speak XSLT, but the 
&gt;&gt; stylesheet given for the transformation for xs:override 
&gt;&gt; includes a comment that says :
&gt;&gt;
&gt;&gt;   &lt;!--* change xs:override elements:  children which match 
&gt;&gt;       * children of $overrideElement are replaced, others are
&gt;&gt;       * kept, and at the end all children of $overrideElement
&gt;&gt;       * not already inserted are added.
&gt;&gt;       *--&gt;
&gt;&gt;
&gt;&gt; The &quot;at the end all children...&quot; clause doesn't appear to be 
&gt;&gt; consistent with the description that precedes the stylesheet. 
&gt;&gt;  Specifically, I don't see where a child of O1 that does not 
&gt;&gt; correspond to a child of D2 
&gt;&gt; would be put into D2'.   Perhaps I misunderstand the comment, 
&gt;&gt; or perhaps 
&gt;&gt; it isn't consistent with the XSLT that is there (again, I 
&gt;&gt; don't speak XSLT).  Is there an inconsistency here?
&gt;&gt;     
&gt;
&gt; I think Michael Sperberg McQueen has explained this part. It is complex and
&gt; my brain aches a little every time I look at it, but I think I have
&gt; convinced myself that it works. It would benefit, however, from some serious
&gt; testing: there is an assumption that we will produce tests before exiting
&gt; CR.
&gt;
&gt; Regards,
&gt;
&gt; Michael Kay
&gt; http://www.saxonica.com/
&gt; http://twitter.com/michaelhkay 
&gt;
&gt;
&gt;
&gt;   
</pre>
<span id="received"><dfn>Received on</dfn> Thursday, 22 October 2009 14:20:56 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post01005.htm</link><pubDate>Thu, 22 Oct 2009 10:18:39 GMT</pubDate></item><item><title>RE: Resolution of &amp;quot;ref&amp;quot; attribute in case of &amp;lt;override&amp;gt; </title><description><![CDATA[<pre id="body">
<a name="start50" accesskey="j" id="start50"></a>&gt; 
&gt; How will the prefix in the ref attribute in the 
&gt; attributeGroup element be handled?  If D2' is the result of 
&gt; applying the xs:override transform, and D2' contains an 
&gt; element information item that is identical to the one for the 
&gt; &lt;attributeGroup&gt;, I expect it will have [in-scope namespaces] 
&gt; based on what we see above; namely, the qrs prefix will 
&gt; necessarily resolve to &quot;uri:example.com&quot;.  Is that correct?

Yes. In fact, this doesn't even depend on the <a title="Stylesheet Design" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/publisher1/publisher1.html">stylesheet</a> being <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/schema_aware.html">schema-aware</a>
and on &#64;ref being known to be a QName. The element is copied using
&lt;<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xslt.html">xsl</a>:copy-of&gt;, which copies all the in-scope namespaces of an element,
including therefore the namespace <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/jaxb.html">binding</a> for &quot;qrs&quot;.
&gt; 
&gt; Also, a second question.  I don't speak XSLT, but the 
&gt; stylesheet given for the transformation for xs:override 
&gt; includes a comment that says :
&gt; 
&gt;   &lt;!--* change xs:override elements:  children which match 
&gt;       * children of $overrideElement are replaced, others are
&gt;       * kept, and at the end all children of $overrideElement
&gt;       * not already inserted are added.
&gt;       *--&gt;
&gt; 
&gt; The &quot;at the end all children...&quot; clause doesn't appear to be 
&gt; consistent with the description that precedes the stylesheet. 
&gt;  Specifically, I don't see where a child of O1 that does not 
&gt; correspond to a child of D2 
&gt; would be put into D2'.   Perhaps I misunderstand the comment, 
&gt; or perhaps 
&gt; it isn't consistent with the XSLT that is there (again, I 
&gt; don't speak XSLT).  Is there an inconsistency here?

I think Michael Sperberg McQueen has explained this part. It is complex and
my brain aches a little every time I look at it, but I think I have
convinced myself that it works. It would benefit, however, from some serious
testing: there is an assumption that we will produce tests before exiting
CR.

Regards,

<a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a>
http://www.saxonica.com/
http://twitter.com/michaelhkay 
</pre>
<span id="received"><dfn>Received on</dfn> Thursday, 22 October 2009 08:08:58 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post00005.htm</link><pubDate>Thu, 22 Oct 2009 09:08:12 GMT</pubDate></item><item><title>Re: Resolution of &amp;quot;ref&amp;quot; attribute in case of &amp;lt;override&amp;gt; </title><description><![CDATA[<pre id="body">
<a name="start49" accesskey="j" id="start49"></a>On 21 Oct 2009, at 15:22 , Kevin Braun wrote:

 &gt; Here's an <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">XSD</a> 1.1 &lt;override&gt; question.

 &gt; Suppose I have:

 &gt; &lt;schema ...  xmlns:qrs=&quot;uri:example.com&quot;&gt;
 &gt; &lt;override ...&gt;
 &gt;   &lt;complexType name=&quot;SomeType&quot;&gt;
 &gt;     &lt;attributeGroup ref=&quot;qrs:abc&quot;/&gt;
 &gt;   &lt;/complexType&gt;
 &gt; &lt;/override&gt;
 &gt; ...
 &gt; &lt;/schema&gt;

 &gt; How will the prefix in the ref attribute in the attributeGroup
 &gt; element be handled?

 &gt; If D2' is the result of applying the xs:override transform, and D2'
 &gt; contains an element information item that is identical to the one
 &gt; for the &lt;attributeGroup&gt;, I expect it will have [in-scope
 &gt; namespaces] based on what we see above; namely, the qrs prefix will
 &gt; necessarily resolve to &quot;uri:example.com&quot;.  Is that correct?

That's certainly the intent.  The namespace fixup rules of <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xslt.html">XSLT</a> are
complicated enough that I don't want to say more about how it works
in detailuntil I have a chance to work the example through in more
detail.  But at a high level, the <a title="Stylesheet Design" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/publisher1/publisher1.html">stylesheet</a> knows the type of
attributeGroup/@ref, so it knows there are QNames around which may
depend on the current namespace <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/jaxb.html">bindings</a>.  And when the node is
re-serialized in its new context, it should not have lost any
namespace bindings.  (The prefix may change, of course, but not the
expanded name denoted by qrs:abc.)

 &gt; Also, a second question.  I don't speak XSLT, but the stylesheet
 &gt; given for the transformation for xs:override includes a comment
 &gt; that says :

 &gt; &lt;!--* change xs:override elements:  children which match
 &gt;     * children of $overrideElement are replaced, others are
 &gt;     * kept, and at the end all children of $overrideElement
 &gt;     * not already inserted are added.
 &gt;     *--&gt;

 &gt; The &quot;at the end all children...&quot; clause doesn't appear to be
 &gt; consistent with the description that precedes the stylesheet.
 &gt; Specifically, I don't see where a child of O1 that does not
 &gt; correspond to a child of D2 would be put into D2'.  Perhaps I
 &gt; misunderstand the comment, or perhaps it isn't consistent with the
 &gt; XSLT that is there (again, I don't speak XSLT).  Is there an
 &gt; inconsistency here?

The comment correctly describes the template which follows it, I
think.  And it also matches the behavior described in rule 4 of the
prose description.

The template applies to xs:override elements within D2, so we are
dealing with two override elements: O1, which is the override we are
trying to handle by performing the transformation, and E2 (the
override child of D2), which is in the process of being transformed
into a new override element O2, which will appear within D2'.

O2 contains (1) children corresponding to the children of E2.  If a
particular child of E2 matches some child of O1, then what O2
contains is the child of O1 (the child of E2 has been overridden by
the child of O1).  If a particular child of E2 matches no child of
O1, then O2 has that child unchanged.

O2 also contains (2) children corresponding to the children of O1.
If a child of O1 matches a child of E2, it's present in O2 as already
described above.  If a child of O1 matches no child of E2, it's
copied into O2 without change.

Example:

<a title="Schema document" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">Schema document</a> D1 overrides schema document D2, and its override
element contains declarations for elements A, B, and C.

   &lt;schema xmlns=&quot;http://www.w3.org/2001/XMLSchema&quot;&gt;
     &lt;override id=&quot;d1o&quot; schemaLocation=&quot;D2.xsd&quot;&gt;
       &lt;element name=&quot;A&quot; type=&quot;anyURI&quot;/&gt;
       &lt;element name=&quot;B&quot; type=&quot;boolean&quot;/&gt;
       &lt;element name=&quot;C&quot; type=&quot;decimal&quot;/&gt;
     &lt;/override&gt;
   &lt;/schema&gt;

Schema document D2 overrides schema document D3, and the override
element contains declarations for elements C and D.

   &lt;schema xmlns=&quot;http://www.w3.org/2001/XMLSchema&quot;&gt;
     &lt;override id=&quot;d2o&quot; schemaLocation=&quot;D3.xsd&quot;&gt;
       &lt;element name=&quot;C&quot; type=&quot;double&quot;/&gt;
       &lt;element name=&quot;D&quot; type=&quot;duration&quot;/&gt;
     &lt;/override&gt;
   &lt;/schema&gt;

Schema document D3 declares elements A, B, C, D, and E.

   &lt;schema xmlns=&quot;http://www.w3.org/2001/XMLSchema&quot;&gt;
     &lt;element name=&quot;A&quot; /&gt;
     &lt;element name=&quot;B&quot; /&gt;
     &lt;element name=&quot;C&quot; /&gt;
     &lt;element name=&quot;D&quot; /&gt;
     &lt;element name=&quot;E&quot; /&gt;
   &lt;/schema&gt;

Observe first that the end result needs to have A, B, C, and D
declared as anyURI, boolean, decimal, and duration, respectively.

The first draft of override said, essentially, &quot;That's too
complicated, it's not going to happen&quot;, and override only affected
elements declared in D2.  The result here would have been that of all
the overrides in D1, only the override of C would have had any
effect.  (At least, that's my recollection; I have not gone back to
review the details of the original proposal.)

The WG was troubled by the inconvenience this represented, and wanted
the overrides in D1 to affect not only declarations in D2 but
declarations in documents referenced by D2.  We spent some time
working out how to make this happen; the mechanism in the stylesheet
is the result.

The effect of the override of D2 in D1 is, according to the spec, the
same as an include of the transformed schema document D2', which
would look something like this:

   &lt;schema xmlns=&quot;http://www.w3.org/2001/XMLSchema&quot;&gt;
     &lt;override id=&quot;d2o&quot; schemaLocation=&quot;D3.xsd&quot;&gt;
       &lt;element name=&quot;C&quot; type=&quot;decimal&quot;/&gt;
       &lt;element name=&quot;D&quot; type=&quot;duration&quot;/&gt;
       &lt;element name=&quot;A&quot; type=&quot;anyURI&quot;/&gt;
       &lt;element name=&quot;B&quot; type=&quot;boolean&quot;/&gt;
     &lt;/override&gt;
   &lt;/schema&gt;

Note that the overrides for A and B are included here, even though
they matched nothing in override d2o.  They are needed to ensure
that A and B are overridden WHEREVER they were declared.

The meaning of the override in D2' is, again, the same as the meaning
of an include on a transformed target D3', reading:

   &lt;schema xmlns=&quot;http://www.w3.org/2001/XMLSchema&quot;&gt;
     &lt;element name=&quot;A&quot; type=&quot;anyURI&quot;/&gt;
     &lt;element name=&quot;B&quot; type=&quot;boolean&quot;/&gt;
     &lt;element name=&quot;C&quot; type=&quot;decimal&quot;/&gt;
     &lt;element name=&quot;D&quot; type=&quot;duration&quot;/&gt;
     &lt;element name=&quot;E&quot; /&gt;
   &lt;/schema&gt;

If we rewrite the overriding schema documents as well, to show the
change from override to include, we end up with an imaginare D1'
reading

   &lt;schema xmlns=&quot;http://www.w3.org/2001/XMLSchema&quot;&gt;
     &lt;include id=&quot;d1o&quot; schemaLocation=&quot;D2''.xsd&quot;/&gt;
   &lt;/schema&gt;

And a D2'' reading

   &lt;schema xmlns=&quot;http://www.w3.org/2001/XMLSchema&quot;&gt;
     &lt;include id=&quot;d2o&quot; schemaLocation=&quot;D3'.xsd&quot;/&gt;
   &lt;/schema&gt;

If the unmatched overrides of d1o had NOT been copied into the
modified version of d2o, then the final result would have had
a D3' of the form

   &lt;schema xmlns=&quot;http://www.w3.org/2001/XMLSchema&quot;&gt;
     &lt;element name=&quot;A&quot;/&gt;
     &lt;element name=&quot;B&quot;/&gt;
     &lt;element name=&quot;C&quot; type=&quot;decimal&quot;/&gt;
     &lt;element name=&quot;D&quot; type=&quot;duration&quot;/&gt;
     &lt;element name=&quot;E&quot; /&gt;
   &lt;/schema&gt;

By copying even the unmatched children of O1 into O2, we ensure that
the declarations of O1 will override other declarations of the same
component name, no matter where those other declarations occur in the
target set of O1.  The transformation of include elements into
overide elements serves the same purpose.

I hope this helps.


-- 
****************************************************************
* C. M. Sperberg-McQueen, Black Mesa Technologies LLC
* http://www.blackmesatech.com
* http://cmsmcq.com/mib
* http://balisage.net
****************************************************************
</pre>
<span id="received"><dfn>Received on</dfn> Thursday, 22 October 2009 00:12:20 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post09004.htm</link><pubDate>Wed, 21 Oct 2009 18:11:48 GMT</pubDate></item><item><title>Resolution of &amp;quot;ref&amp;quot; attribute in case of &amp;lt;override&amp;gt; </title><description><![CDATA[<pre id="body">
<a name="start48" accesskey="j" id="start48"></a>Hi,

Here's an <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">XSD</a> 1.1 &lt;override&gt; question.

Suppose I have:

&lt;schema ...  xmlns:qrs=&quot;uri:example.com&quot;&gt;
  &lt;override ...&gt;
    &lt;complexType name=&quot;SomeType&quot;&gt;
      &lt;attributeGroup ref=&quot;qrs:abc&quot;/&gt;
    &lt;/complexType&gt;
  &lt;/override&gt;
  ...
&lt;/schema&gt;   

How will the prefix in the ref attribute in the attributeGroup element 
be handled?  If D2' is the result of applying the xs:override transform, 
and D2' contains an element information item that is identical to the 
one for the &lt;attributeGroup&gt;, I expect it will have [in-scope 
namespaces] based on what we see above; namely, the qrs prefix will 
necessarily resolve to &quot;uri:example.com&quot;.  Is that correct?

Also, a second question.  I don't speak <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xslt.html">XSLT</a>, but the <a title="Stylesheet Design" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/publisher1/publisher1.html">stylesheet</a> given 
for the transformation for xs:override includes a comment that says :

  &lt;!--* change xs:override elements:  children which match 
      * children of $overrideElement are replaced, others are
      * kept, and at the end all children of $overrideElement
      * not already inserted are added.
      *--&gt;

The &quot;at the end all children...&quot; clause doesn't appear to be consistent 
with the description that precedes the stylesheet.  Specifically, I 
don't see where a child of O1 that does not correspond to a child of D2 
would be put into D2'.   Perhaps I misunderstand the comment, or perhaps 
it isn't consistent with the XSLT that is there (again, I don't speak 
XSLT).  Is there an inconsistency here?

Regards,
Keviin

-- 
Objective Systems, Inc.
REAL WORLD ASN.1 AND <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">XML</a> SOLUTIONS
Tel: +1 (484) 875-9841
Fax: +1 (484) 875-9830
Toll-free: (877) 307-6855 (USA only)
http://www.obj-sys.com
</pre>
<span id="received"><dfn>Received on</dfn> Wednesday, 21 October 2009 21:24:11 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post08004.htm</link><pubDate>Wed, 21 Oct 2009 17:22:02 GMT</pubDate></item><item><title>Re: Tools to Generate XSD </title><description><![CDATA[<pre id="body">
<a name="start47" accesskey="j" id="start47"></a>Hi Scott,

Trang can <a title="Schema Tutorial" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xmlschema1/xmlschema1.html">generate XML Schema</a> from a set of <a title="XML files" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_file_explorer.html">XML files</a>
http://code.google.com/p/jing-trang/

Best Regards,
George
-- 
George Cristian Bina
&lt;oXygen/&gt; <a title="Best XML Editor" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/">XML Editor</a>, Schema <a title="Building XSLT Stylesheet Applications" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xsltedit1/xsltedit1.html">Editor and XSLT</a> Editor/Debugger
http://www.oxygenxml.com

Tsao, Scott wrote:
&gt; I am wondering if there are good <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml/editor/">tools</a> that would enable (auto) 
&gt; generation of XML schema from multiple instances of <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/learn_xml.html">sample XML</a> document.
&gt;  
&gt; It seems to me that one should be able to specify certain parameters for 
&gt; the resulting schema, e.g., the design pattern [1] to be followed.
&gt;  
&gt; Any comments or suggestions?
&gt;  
&gt; [1] 
&gt; http://developers.sun.com/jsenterprise/archive/nb_enterprise_pack/reference/techart/design_patterns.html
&gt;  
&gt;  
&gt; Thanks,
&gt; 
&gt; /Scott Tsao/ $BAbThT"(B
&gt; Associate Technical Fellow
&gt; The Boeing Company
&gt; 
</pre>
<span id="received"><dfn>Received on</dfn> Tuesday, 20 October 2009 19:34:05 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post07004.htm</link><pubDate>Tue, 20 Oct 2009 22:33:32 GMT</pubDate></item><item><title>Set up </title><description><![CDATA[<pre id="body">
<a name="start46" accesskey="j" id="start46"></a>Hello.

I downloaded <a title="XSV Validator" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema/xsv.html">the XSV validator</a> and am a novice user I think because from the hours I have spent looking for set up instructions, I cannot find them.  Can you provide the steps I need to follow to set up my validator?

Janell Craig
Business Analyst
Oakland Schools&lt;http://oakland.k12.mi.us&gt; Technology Services&lt;http://www.oakland.k12.mi.us/Departments/TechnologyServices/tabid/932/Default.aspx&gt;
2111 Pontiac Lake Rd.
Waterford, MI  48328

(Ofc)  248-209-2020
(Fax)  248-209-2207
</pre>
<span id="received"><dfn>Received on</dfn> Tuesday, 20 October 2009 17:14:09 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post06004.htm</link><pubDate>Tue, 20 Oct 2009 10:51:47 GMT</pubDate></item><item><title>RE: Tools to Generate XSD </title><description><![CDATA[<pre id="body">
<a name="start45" accesskey="j" id="start45"></a>I've had good results on this using <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/">Stylus Studio</a>. It works from a single
instance document, but you can always combine multiple instances into one
before you start. There is some control over the design patterns it uses,
but I generally find the default settings are quite usable. Of course you
have to <a title="tidy" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_well_formed.html">tidy</a> up the <a title="How To Build XML Schemas" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xmlschema1/xmlschema1.html">generated schema</a> by hand afterwards, for example to make
intelligent decisions about when to use enumerations and patterns in your
simple types, or when to impose a hierarchy of types or substitution groups,
but I find it's often a good way of creating a first cut.
 
Regards,

<a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a>
http://www.saxonica.com/
http://twitter.com/michaelhkay 


  _____  

From: <a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Tools%20to%20Generate%20XSD%20from%20Sample%20Instances%1B(B&amp;In-Reply-To=%253CC09F6F3D84954D37B37F434C49D1FF0B%40Sealion%253E&amp;References=%253CC09F6F3D84954D37B37F434C49D1FF0B%40Sealion%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a> [mailto:<a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Tools%20to%20Generate%20XSD%20from%20Sample%20Instances%1B(B&amp;In-Reply-To=%253CC09F6F3D84954D37B37F434C49D1FF0B%40Sealion%253E&amp;References=%253CC09F6F3D84954D37B37F434C49D1FF0B%40Sealion%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>] On
Behalf Of Tsao, Scott
Sent: 20 October 2009 02:06
To: <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Tools%20to%20Generate%20XSD%20from%20Sample%20Instances%1B(B&amp;In-Reply-To=%253CC09F6F3D84954D37B37F434C49D1FF0B%40Sealion%253E&amp;References=%253CC09F6F3D84954D37B37F434C49D1FF0B%40Sealion%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
Subject: <a title="Tools" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml/editor/">Tools</a> to Generate XSD from Sample Instances


I am wondering if there are good tools that would enable (auto) generation
of XML schema from multiple instances of sample XML document.
 
It seems to me that one should be able to specify certain parameters for the
resulting schema, e.g., the design pattern [1] to be followed.
 
Any comments or suggestions?
 
[1]
http://developers.sun.com/jsenterprise/archive/nb_enterprise_pack/reference/
techart/design_patterns.html
 
 
Thanks,



Scott Tsao $BAbThT"(B
Associate Technical Fellow 
The Boeing Company 
</pre>
<span id="received"><dfn>Received on</dfn> Tuesday, 20 October 2009 08:27:15 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post05004.htm</link><pubDate>Tue, 20 Oct 2009 09:26:40 GMT</pubDate></item><item><title>Re: Tools to Generate XSD </title><description><![CDATA[<pre id="body">
<a name="start44" accesskey="j" id="start44"></a>My good advice: don't.

or at least, do not expect too much of it.
If you do, you will still need to do a lot of manual <a title="XML Schema Tutorial" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xmlschema1/xmlschema1.html">work afterwoods improving your schema</a>.

For example, if some attributes are enumerated, how do you know that ? And if you do, how are you sure you have all possible values in your schema ?
How do you know whether the minOccurs for a child element should be 0 or 1 ?

Essentially, automated generation can only be a very first step.

I have seen cases where a believe that XML-Schemas can be generated automatically, without any afterwork, has led to disaster.
For example, the <a title="Convert EDI to XML" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/convert_edi_to_xml.html">HL7</a>-v3 messages are auto-generated from UML diagrams. At least as far as I know, they are not improved after that by someone who has knowledge of  XML-Schema. The result is that the whole stuff is overcomplicated, illogical and even bad XML.
I can advice anyone that wishes to <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_generator.html">generate XML</a>-Schemas to first learn XML-Schema.

Personally, I prefer to make a good model first (not using UML) and then write the XML-Schema by hand.

Best,

Jozef Aerts
XML4Pharma

  ----- Original Message ----- 
  From: Tsao, Scott 
    To: <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20Tools%20to%20Generate%20XSD%20from%20Sample%20Instances%1B(B&amp;In-Reply-To=%253C9C5CDCA91CDA4E018BDC58A29A5E3B46%40D6NXTQ1J%253E&amp;References=%253C9C5CDCA91CDA4E018BDC58A29A5E3B46%40D6NXTQ1J%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a> 
    Sent: Tuesday, October 20, 2009 3:06 AM
    Subject: <a title="Tools" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml/editor/">Tools</a> to Generate XSD from Sample Instances


    I am wondering if there are good tools that would enable (auto) generation of XML schema from multiple instances of sample XML document.
     
    It seems to me that one should be able to specify certain parameters for the resulting schema, e.g., the design pattern [1] to be followed.
     
    Any comments or suggestions?
     
    [1] http://developers.sun.com/jsenterprise/archive/nb_enterprise_pack/reference/techart/design_patterns.html
     
     
    Thanks,


    Scott Tsao $BAbThT"(B
    Associate Technical Fellow 
    The Boeing Company 
</pre>
<span id="received"><dfn>Received on</dfn> Tuesday, 20 October 2009 07:07:48 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post04004.htm</link><pubDate>Tue, 20 Oct 2009 09:07:09 GMT</pubDate></item><item><title>Tools to Generate XSD </title><description><![CDATA[<pre id="body">
<a name="start43" accesskey="j" id="start43"></a>I am wondering if there are good <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml/editor/">tools</a> that would enable (auto) <a title="generation of XML" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_generator.html">generation of XML</a> <a title="schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">schema</a> from multiple instances of <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/learn_xml.html">sample XML</a> document.

It seems to me that one should be able to specify certain parameters for the resulting schema, e.g., the design pattern [1] to be followed.

Any comments or suggestions?

[1] http://developers.sun.com/jsenterprise/archive/nb_enterprise_pack/reference/techart/design_patterns.html


Thanks,


Scott Tsao $BAbThT"(B
Associate Technical Fellow
The Boeing Company
</pre>
<span id="received"><dfn>Received on</dfn> Tuesday, 20 October 2009 01:07:01 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post03004.htm</link><pubDate>Mon, 19 Oct 2009 18:06:26 GMT</pubDate></item><item><title>Re: XML schema </title><description><![CDATA[<pre id="body">
<a name="start41" accesskey="j" id="start41"></a>Hi, Michael

Would it be something like this?
&lt;<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">xs:attribute</a> name=&quot;attribute_id&quot; use=&quot;required&quot;&gt;
   &lt;xs:simpleType&gt;
       &lt;xs:restriction base=&quot;xs:string&quot;&gt;
           &lt;xs:assert test=&quot;&#64;attribute_id=Attributes/Attribute/@id or
&#64;attribute_id='id'&quot;&gt;       &lt;/xs:restriction&gt;
   &lt;/xs:simpleType&gt;
&lt;/xs:attribute&gt;

We are using saxon8 to parse and eclipse and altova <a title="xml" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">xml</a> spy to edit xml.
Are they support 1.1?

Is 1.1 backward compatible with 1.0? I mean: is it enough to change the
header of the xml and <a title="xsd" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">xsd</a> or the whole xsd and xml should have been changed?

Is this the correct header for xsd?
&lt;?xml version=&quot;1.1&quot; <a title="encoding" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_other.html">encoding</a>=&quot;UTF-8&quot;?&gt;
&lt;xs:schema xmlns:xs=&quot;http://www.<a title="w3" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">w3</a>.org/2001/XMLSchema&quot;
elementFormDefault=&quot;qualified&quot; attributeFormDefault=&quot;unqualified&quot;&gt;

Because both eclipse and xml spy says that it is not valid.

Thanks for help.

Regards:
   Bence



On Mon, Oct 19, 2009 at 12:27 AM, <a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a> &lt;<a href="mailto:mike&#x40;&#0115;&#0097;&#0120;&#0111;&#0110;&#0105;&#0099;&#0097;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20XML%20schema&amp;In-Reply-To=%253Cb1a070230910190822g25711efcudd2ecc7899efc6b5%40mail.gmail.com%253E&amp;References=%253Cb1a070230910190822g25711efcudd2ecc7899efc6b5%40mail.gmail.com%253E">mike&#x40;&#0115;&#0097;&#0120;&#0111;&#0110;&#0105;&#0099;&#0097;&#0046;&#0099;&#0111;&#0109;</a>&gt; wrote:

&gt; I don't think this can be done in XSD 1.0
&gt;
&gt; It can be done in XSD 1.1, of course, using assertions.
&gt;
&gt; Regards,
&gt;
&gt; Michael Kay
&gt; http://www.saxonica.com/
&gt; http://twitter.com/michaelhkay
&gt;
&gt; &gt; -----Original Message-----
&gt; &gt; From: <a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20XML%20schema&amp;In-Reply-To=%253Cb1a070230910190822g25711efcudd2ecc7899efc6b5%40mail.gmail.com%253E&amp;References=%253Cb1a070230910190822g25711efcudd2ecc7899efc6b5%40mail.gmail.com%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
&gt; &gt; [mailto:<a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20XML%20schema&amp;In-Reply-To=%253Cb1a070230910190822g25711efcudd2ecc7899efc6b5%40mail.gmail.com%253E&amp;References=%253Cb1a070230910190822g25711efcudd2ecc7899efc6b5%40mail.gmail.com%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>] On Behalf Of btakacs
&gt; &gt; Sent: 18 October 2009 11:32
&gt; &gt; To: <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20XML%20schema&amp;In-Reply-To=%253Cb1a070230910190822g25711efcudd2ecc7899efc6b5%40mail.gmail.com%253E&amp;References=%253Cb1a070230910190822g25711efcudd2ecc7899efc6b5%40mail.gmail.com%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
&gt; &gt; Subject: XML schema
&gt; &gt;
&gt; &gt; Hi
&gt; &gt;
&gt; &gt; I have an xml schema which restricts the
&gt; &gt; Indexes/Tag/@attribute_id values to the ones are defined in
&gt; &gt; the parent element's Attributes/Attribute/@id. Is there a way
&gt; &gt; to extend this and enable one (or more) different static
&gt; &gt; values for example &quot;id&quot;?
&gt; &gt; There are more Indexes/Tag and Attributes/Attribute tags and
&gt; &gt; i would like to use this restriction only for thoose that has
&gt; &gt; the same parent.
&gt; &gt;
&gt; &gt; Here is my current configuration:
&gt; &gt;
&gt; &gt; ....
&gt; &gt; &lt;xs:element name=&quot;Attributes&quot;&gt;
&gt; &gt;   &lt;xs:complexType&gt;
&gt; &gt;     &lt;xs:sequence&gt;
&gt; &gt;       &lt;xs:element name=&quot;Attribute&quot; maxOccurs=&quot;unbounded&quot;&gt;
&gt; &gt;       &lt;xs:complexType&gt;
&gt; &gt;         &lt;xs:complexContent&gt;
&gt; &gt;           &lt;xs:extension base=&quot;Attribute_Type&quot;&gt;
&gt; &gt;             &lt;xs:attribute name=&quot;typedef_id&quot; type=&quot;xs:string&quot;
&gt; &gt; use=&quot;required&quot;/&gt;
&gt; &gt;              &lt;/xs:extension&gt;
&gt; &gt;         &lt;/xs:complexContent&gt;
&gt; &gt;       &lt;/xs:complexType&gt;
&gt; &gt;       &lt;/xs:element&gt;
&gt; &gt;     &lt;/xs:sequence&gt;
&gt; &gt;   &lt;/xs:complexType&gt;
&gt; &gt; &lt;/xs:element&gt;
&gt; &gt; ....
&gt; &gt; &lt;xs:element name=&quot;Indexes&quot; minOccurs=&quot;0&quot;&gt;
&gt; &gt;   &lt;xs:complexType&gt;
&gt; &gt;     &lt;xs:sequence&gt;
&gt; &gt;       &lt;xs:element name=&quot;Tag&quot; maxOccurs=&quot;unbounded&quot;&gt;
&gt; &gt;       &lt;xs:complexType&gt;
&gt; &gt;           &lt;xs:attribute name=&quot;attribute_id&quot; use=&quot;required&quot;&gt;
&gt; &gt;               &lt;xs:simpleType&gt;
&gt; &gt;                 &lt;xs:restriction base=&quot;xs:string&quot;&gt;
&gt; &gt;                   &lt;xs:pattern value=&quot;[a-z0-9]([a-z0-9.]|(_[a-z]))*&quot;/&gt;
&gt; &gt;                      &lt;/xs:restriction&gt;
&gt; &gt;                   &lt;/xs:simpleType&gt;
&gt; &gt;                 &lt;/xs:attribute&gt;
&gt; &gt;              &lt;/xs:complexType&gt;
&gt; &gt;            &lt;/xs:element&gt;
&gt; &gt;         &lt;/xs:sequence&gt;
&gt; &gt;    &lt;/xs:complexType&gt;
&gt; &gt; &lt;/xs:element&gt;
&gt; &gt; ....
&gt; &gt; ....
&gt; &gt; &lt;xs:key name=&quot;ATTRIBUTE&quot;&gt;
&gt; &gt;     &lt;xs:selector xpath=&quot;Attributes/Attribute&quot;/&gt;
&gt; &gt;     &lt;xs:field xpath=&quot;&#64;id&quot;/&gt;
&gt; &gt; &lt;/xs:key&gt;
&gt; &gt; &lt;xs:keyref name=&quot;X001&quot; refer=&quot;ATTRIBUTE&quot;&gt;
&gt; &gt;    &lt;xs:selector xpath=&quot;Indexes/Tag&quot;/&gt;
&gt; &gt;    &lt;xs:field xpath=&quot;&#64;attribute_id&quot;/&gt;
&gt; &gt; &lt;/xs:keyref&gt;
&gt; &gt; ....
&gt; &gt;
&gt; &gt;
&gt; &gt; Thanks:
&gt; &gt;    Bence
&gt; &gt; --
&gt; &gt; View this message in context:
&gt; &gt; http://www.nabble.com/XML-schema-tp25945562p25945562.html
&gt; &gt; Sent from the w3.org - xmlschema-dev mailing list archive at
&gt; &gt; Nabble.com.
&gt; &gt;
&gt; &gt;
&gt; &gt;
&gt;
&gt;
</pre>
<span id="received"><dfn>Received on</dfn> Monday, 19 October 2009 15:22:47 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post01004.htm</link><pubDate>Mon, 19 Oct 2009 17:22:12 GMT</pubDate></item><item><title>RE: XML schema </title><description><![CDATA[<pre id="body">
<a name="start42" accesskey="j" id="start42"></a>This looks correct (from visual inspection).
 
To run it you will need <a title="Saxon" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/saxon_xquery_processor.html">Saxon</a> 9.2 or <a title="Evaluating XPath with Xerces" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml/xerces.html">the development version of Xerces</a> (I
can't speak for Xerces). Most <a title="XML Schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">schema tools</a> do not yet support XSD 1.1, and
both these two are incomplete implementations.
 
You don't need to change the <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">xs:schema</a> element in order <a title="Schema Tutorial" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xmlschema1/xmlschema1.html">to use XSD 1.1</a>. All
you need to do is to use an XSD 1.1 processor.
 
Regards,

<a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a>
http://www.saxonica.com/
http://twitter.com/michaelhkay 


  _____  

From: <a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20XML%20schema&amp;In-Reply-To=%253CA0FE946685264B139BB4E86CC320BD5C%40Sealion%253E&amp;References=%253CA0FE946685264B139BB4E86CC320BD5C%40Sealion%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a> [mailto:<a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20XML%20schema&amp;In-Reply-To=%253CA0FE946685264B139BB4E86CC320BD5C%40Sealion%253E&amp;References=%253CA0FE946685264B139BB4E86CC320BD5C%40Sealion%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>] On
Behalf Of Bence Takács
Sent: 19 October 2009 16:22
To: <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20XML%20schema&amp;In-Reply-To=%253CA0FE946685264B139BB4E86CC320BD5C%40Sealion%253E&amp;References=%253CA0FE946685264B139BB4E86CC320BD5C%40Sealion%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
Subject: Re: XML schema


Hi, Michael

Would it be something like this?
&lt;xs:attribute name=&quot;attribute_id&quot; use=&quot;required&quot;&gt;
   &lt;xs:simpleType&gt;
       &lt;xs:restriction base=&quot;xs:string&quot;&gt;                   

           &lt;xs:assert test=&quot;&#64;attribute_id=Attributes/Attribute/@id or
&#64;attribute_id='id'&quot;&gt; 
       &lt;/xs:restriction&gt;
   &lt;/xs:simpleType&gt;
&lt;/xs:attribute&gt;

We are using saxon8 to parse and eclipse and altova xml spy to edit xml.
Are they support 1.1?

Is 1.1 backward compatible with 1.0? I mean: is it enough to change the
header of the xml and xsd or the whole xsd and xml should have been changed?

Is this the correct header for xsd?
&lt;?xml version=&quot;1.1&quot; <a title="encoding" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_other.html">encoding</a>=&quot;UTF-8&quot;?&gt;
&lt;xs:schema xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;
elementFormDefault=&quot;qualified&quot; attributeFormDefault=&quot; 
unqualified&quot;&gt;

Because both eclipse and xml spy says that it is not valid.

Thanks for help.

Regards:
   Bence




On Mon, Oct 19, 2009 at 12:27 AM, Michael Kay &lt;<a href="mailto:mike&#x40;&#0115;&#0097;&#0120;&#0111;&#0110;&#0105;&#0099;&#0097;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20XML%20schema&amp;In-Reply-To=%253CA0FE946685264B139BB4E86CC320BD5C%40Sealion%253E&amp;References=%253CA0FE946685264B139BB4E86CC320BD5C%40Sealion%253E">mike&#x40;&#0115;&#0097;&#0120;&#0111;&#0110;&#0105;&#0099;&#0097;&#0046;&#0099;&#0111;&#0109;</a>&gt; wrote:


I don't think this can be done in XSD 1.0

It can be done in XSD 1.1, of course, using assertions.

Regards,

Michael Kay
http://www.saxonica.com/
http://twitter.com/michaelhkay


&gt; -----Original Message-----
&gt; From: <a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20XML%20schema&amp;In-Reply-To=%253CA0FE946685264B139BB4E86CC320BD5C%40Sealion%253E&amp;References=%253CA0FE946685264B139BB4E86CC320BD5C%40Sealion%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
&gt; [mailto:<a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20XML%20schema&amp;In-Reply-To=%253CA0FE946685264B139BB4E86CC320BD5C%40Sealion%253E&amp;References=%253CA0FE946685264B139BB4E86CC320BD5C%40Sealion%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>] On Behalf Of btakacs
&gt; Sent: 18 October 2009 11:32
&gt; To: <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20XML%20schema&amp;In-Reply-To=%253CA0FE946685264B139BB4E86CC320BD5C%40Sealion%253E&amp;References=%253CA0FE946685264B139BB4E86CC320BD5C%40Sealion%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
&gt; Subject: XML schema
&gt;
&gt; Hi
&gt;
&gt; I have an xml schema which restricts the
&gt; Indexes/Tag/@attribute_id values to the ones are defined in
&gt; the parent element's Attributes/Attribute/@id. Is there a way
&gt; to extend this and enable one (or more) different static
&gt; values for example &quot;id&quot;?
&gt; There are more Indexes/Tag and Attributes/Attribute tags and
&gt; i would like to use this restriction only for thoose that has
&gt; the same parent.
&gt;
&gt; Here is my current configuration:
&gt;
&gt; ....
&gt; &lt;xs:element name=&quot;Attributes&quot;&gt;
&gt;   &lt;xs:complexType&gt;
&gt;     &lt;xs:sequence&gt;
&gt;       &lt;xs:element name=&quot;Attribute&quot; maxOccurs=&quot;unbounded&quot;&gt;
&gt;       &lt;xs:complexType&gt;
&gt;         &lt;xs:complexContent&gt;
&gt;           &lt;xs:extension base=&quot;Attribute_Type&quot;&gt;
&gt;             &lt;xs:attribute name=&quot;typedef_id&quot; type=&quot;xs:string&quot;
&gt; use=&quot;required&quot;/&gt;
&gt;              &lt;/xs:extension&gt;
&gt;         &lt;/xs:complexContent&gt;
&gt;       &lt;/xs:complexType&gt;
&gt;       &lt;/xs:element&gt;
&gt;     &lt;/xs:sequence&gt;
&gt;   &lt;/xs:complexType&gt;
&gt; &lt;/xs:element&gt;
&gt; ....
&gt; &lt;xs:element name=&quot;Indexes&quot; minOccurs=&quot;0&quot;&gt;
&gt;   &lt;xs:complexType&gt;
&gt;     &lt;xs:sequence&gt;
&gt;       &lt;xs:element name=&quot;Tag&quot; maxOccurs=&quot;unbounded&quot;&gt;
&gt;       &lt;xs:complexType&gt;
&gt;           &lt;xs:attribute name=&quot;attribute_id&quot; use=&quot;required&quot;&gt;
&gt;               &lt;xs:simpleType&gt;
&gt;                 &lt;xs:restriction base=&quot;xs:string&quot;&gt;
&gt;                   &lt;xs:pattern value=&quot;[a-z0-9]([a-z0-9.]|(_[a-z]))*&quot;/&gt;
&gt;                      &lt;/xs:restriction&gt;
&gt;                   &lt;/xs:simpleType&gt;
&gt;                 &lt;/xs:attribute&gt;
&gt;              &lt;/xs:complexType&gt;
&gt;            &lt;/xs:element&gt;
&gt;         &lt;/xs:sequence&gt;
&gt;    &lt;/xs:complexType&gt;
&gt; &lt;/xs:element&gt;
&gt; ....
&gt; ....
&gt; &lt;xs:key name=&quot;ATTRIBUTE&quot;&gt;
&gt;     &lt;xs:selector xpath=&quot;Attributes/Attribute&quot;/&gt;
&gt;     &lt;xs:field xpath=&quot;&#64;id&quot;/&gt;
&gt; &lt;/xs:key&gt;
&gt; &lt;xs:keyref name=&quot;X001&quot; refer=&quot;ATTRIBUTE&quot;&gt;
&gt;    &lt;xs:selector xpath=&quot;Indexes/Tag&quot;/&gt;
&gt;    &lt;xs:field xpath=&quot;&#64;attribute_id&quot;/&gt;
&gt; &lt;/xs:keyref&gt;
&gt; ....
&gt;
&gt;
&gt; Thanks:
&gt;    Bence
&gt; --
&gt; View this message in context:
&gt; http://www.nabble.com/XML-schema-tp25945562p25945562.html
&gt; Sent from the w3.org - xmlschema-dev mailing list archive at
&gt; Nabble.com.
&gt;
&gt;
&gt;
</pre>
<span id="received"><dfn>Received on</dfn> Monday, 19 October 2009 16:01:54 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post02004.htm</link><pubDate>Mon, 19 Oct 2009 16:57:10 GMT</pubDate></item><item><title>Re: Escalation mechanism for different interpretation of W3C XML-Schema specification ? </title><description><![CDATA[<pre id="body">
<a name="start40" accesskey="j" id="start40"></a>-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

<a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a> writes:

&gt;&gt; ...  I think this probably means that I would have to augment my 
&gt;&gt; list of <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">schema document</a> abstraction to actually make it a 
&gt;&gt; list of (<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_doc_gen.html">schemadoc</a>, targetNamespace) pairs, 
&gt;
&gt; That's precisely what I do in my implementation.

And what <a title="XSV XML Schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema/xsv.html">XSV</a> does -- it is necessary to do this to ensure multiple
chameleon includes into different namespaces works properly.

ht
- -- 
       Henry S. Thompson, School of Informatics, University of Edinburgh
                         Half-time member of W3C Team
      10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
                Fax: (44) 131 651-1426, e-mail: <a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253Cf5baaznem00.fsf%40hildegard.inf.ed.ac.uk%253E&amp;References=%253Cf5baaznem00.fsf%40hildegard.inf.ed.ac.uk%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>
                       URL: http://www.ltg.ed.ac.uk/~ht/
[mail really from me _always_ has this .sig -- mail without it is forged spam]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)

iD8DBQFK3DofkjnJixAXWBoRAmnlAJ9I6XnNvI5W6qSgTPvVOqzLg84aWgCfbYYy
lXbIHxYFMPnudei1X12a7IQ=
=F8lC
-----END PGP SIGNATURE-----
</pre>
<span id="received"><dfn>Received on</dfn> Monday, 19 October 2009 10:06:58 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post00004.htm</link><pubDate>Mon, 19 Oct 2009 11:06:23 GMT</pubDate></item><item><title>Re: Escalation mechanism for different interpretation of W3C XML-Schema specification ? </title><description><![CDATA[<pre id="body">
<a name="start39" accesskey="j" id="start39"></a>-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

<a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a> writes:

&gt; Note that dcterms-elem.<a title="xsd" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">xsd</a> is reachable from vac.xsd via one route that
&gt; contain a &quot;redefines&quot; step, and by another route that omits this step (but
&gt; which does contain a different redefines step). This is where the
&gt; interpretation of &quot;pervasiveness&quot; is critical: <a title="Saxon" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/saxon_xquery_processor.html">Saxon</a> takes the view that all
&gt; references to components that have been redefined are references to the
&gt; post-redefinition component. In fact the rule introduced in Saxon 9.2 (whose
&gt; incorrect implementation caused the bug) is that every component has a
&gt; redefinition level, so if A redefines B and B redefines C then a given
&gt; component may have redefinition levels of 2, 1, and 0; all references to a
&gt; component name are taken as references to the highest available redefinition
&gt; level, and if there are two different components at the highest redefinition
&gt; level, it's an error (for example, A redefines C, and B also redefines C).
&gt; There's nothing at all in the spec to justify these rules, but it's the only
&gt; way I could find of handling complex redefinition lattices that seemed to
&gt; make sense.

I agree that this is the best available interpretation.

&gt; But the chameleon includes interfere with this (perhaps deliberately).
&gt; Because the common components have been copied into three different
&gt; namespaces, a redefine occurring in one namespace does not affect copies of
&gt; the component in a different namespace. That's Saxon's interpretation,
&gt; anyway.

I agree again.

&gt; In experimenting further with this schema, I discovered that if the two
&gt; imports from vac.xsd are reversed in order, the import of
&gt; owms-classes-redef.xsd has no effect, because it is then importing a
&gt; namespace that is already known to the processor; Saxon ignores the
&gt; schemaLocation URI in this case. So the <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">schema document</a>
&gt; owms-classes-redef.xsd, and the redefinitions that it contains, are simply
&gt; ignored. This makes the situation very fragile: reversing the order of
&gt; imports does not make the processing fail, it just silently compiles a
&gt; different schema. I think this reinforces Henry's argument that if you're
&gt; going to redefine, then there should be one redefining document for each
&gt; namespace, which acts as a gateway to that namespace, and no other
&gt; includes/imports/redefines from elsewhere in the schema should bypass this
&gt; gateway. This schema breaks this rule, and gets away with it only because of
&gt; gateway document is encountered before the bypassing document.

Right -- a useful analysis, thanks.

ht
- -- 
       Henry S. Thompson, School of Informatics, University of Edinburgh
                         Half-time member of W3C Team
      10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
                Fax: (44) 131 651-1426, e-mail: <a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253Cf5beiozem6k.fsf%40hildegard.inf.ed.ac.uk%253E&amp;References=%253Cf5beiozem6k.fsf%40hildegard.inf.ed.ac.uk%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>
                       URL: http://www.ltg.ed.ac.uk/~ht/
[mail really from me _always_ has this .sig -- mail without it is forged spam]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)

iD8DBQFK3DkzkjnJixAXWBoRAj1IAJ9CVgigXB3xQfzTe9x2OeTovT3E6QCfQNmG
VvXucWnVMMi+LG/RifrT8c4=
=xFVQ
-----END PGP SIGNATURE-----
</pre>
<span id="received"><dfn>Received on</dfn> Monday, 19 October 2009 10:02:59 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post09003.htm</link><pubDate>Mon, 19 Oct 2009 11:02:27 GMT</pubDate></item><item><title>RE: XML schema </title><description><![CDATA[<pre id="body">
<a name="start38" accesskey="j" id="start38"></a>I don't think this can be done in <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">XSD</a> 1.0

It can be done in XSD 1.1, of course, using assertions.

Regards,

<a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a>
http://www.saxonica.com/
http://twitter.com/michaelhkay  

&gt; -----Original Message-----
&gt; From: <a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20XML%20schema&amp;In-Reply-To=%253C5A333B3E4183445A9555462FAD43A535%40Sealion%253E&amp;References=%253C5A333B3E4183445A9555462FAD43A535%40Sealion%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a> 
&gt; [mailto:<a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20XML%20schema&amp;In-Reply-To=%253C5A333B3E4183445A9555462FAD43A535%40Sealion%253E&amp;References=%253C5A333B3E4183445A9555462FAD43A535%40Sealion%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>] On Behalf Of btakacs
&gt; Sent: 18 October 2009 11:32
&gt; To: <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20XML%20schema&amp;In-Reply-To=%253C5A333B3E4183445A9555462FAD43A535%40Sealion%253E&amp;References=%253C5A333B3E4183445A9555462FAD43A535%40Sealion%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
&gt; Subject: XML schema
&gt; 
&gt; Hi
&gt; 
&gt; I have an xml schema which restricts the 
&gt; Indexes/Tag/@attribute_id values to the ones are defined in 
&gt; the parent element's Attributes/Attribute/@id. Is there a way 
&gt; to extend this and enable one (or more) different static 
&gt; values for example &quot;id&quot;?
&gt; There are more Indexes/Tag and Attributes/Attribute tags and 
&gt; i would like to use this restriction only for thoose that has 
&gt; the same parent.
&gt; 
&gt; Here is my current configuration:
&gt; 
&gt; ....
&gt; &lt;<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">xs:element</a> name=&quot;Attributes&quot;&gt;
&gt;   &lt;xs:complexType&gt;
&gt;     &lt;xs:sequence&gt;
&gt;       &lt;xs:element name=&quot;Attribute&quot; maxOccurs=&quot;unbounded&quot;&gt;
&gt; 	&lt;xs:complexType&gt;
&gt; 	  &lt;xs:complexContent&gt;
&gt; 	    &lt;xs:extension base=&quot;Attribute_Type&quot;&gt;
&gt; 	      &lt;xs:attribute name=&quot;typedef_id&quot; type=&quot;xs:string&quot; 
&gt; use=&quot;required&quot;/&gt;
&gt;              &lt;/xs:extension&gt;
&gt; 	  &lt;/xs:complexContent&gt;
&gt; 	&lt;/xs:complexType&gt;
&gt;       &lt;/xs:element&gt;
&gt;     &lt;/xs:sequence&gt;
&gt;   &lt;/xs:complexType&gt;
&gt; &lt;/xs:element&gt;
&gt; ....
&gt; &lt;xs:element name=&quot;Indexes&quot; minOccurs=&quot;0&quot;&gt;
&gt;   &lt;xs:complexType&gt;
&gt;     &lt;xs:sequence&gt;
&gt;       &lt;xs:element name=&quot;Tag&quot; maxOccurs=&quot;unbounded&quot;&gt;
&gt; 	&lt;xs:complexType&gt;
&gt;           &lt;xs:attribute name=&quot;attribute_id&quot; use=&quot;required&quot;&gt;
&gt; 		&lt;xs:simpleType&gt;
&gt; 		  &lt;xs:restriction base=&quot;xs:string&quot;&gt;
&gt; 		    &lt;xs:pattern value=&quot;[a-z0-9]([a-z0-9.]|(_[a-z]))*&quot;/&gt;
&gt; 		       &lt;/xs:restriction&gt;
&gt; 		    &lt;/xs:simpleType&gt;
&gt; 		  &lt;/xs:attribute&gt;
&gt; 	       &lt;/xs:complexType&gt;
&gt; 	     &lt;/xs:element&gt;
&gt; 	  &lt;/xs:sequence&gt;
&gt;    &lt;/xs:complexType&gt;
&gt; &lt;/xs:element&gt;
&gt; ....
&gt; ....
&gt; &lt;xs:key name=&quot;ATTRIBUTE&quot;&gt;
&gt;     &lt;xs:selector <a title="XPath Basics" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xpath.html">xpath</a>=&quot;Attributes/Attribute&quot;/&gt;
&gt;     &lt;xs:field xpath=&quot;&#64;id&quot;/&gt;
&gt; &lt;/xs:key&gt;
&gt; &lt;xs:keyref name=&quot;X001&quot; refer=&quot;ATTRIBUTE&quot;&gt;
&gt;    &lt;xs:selector xpath=&quot;Indexes/Tag&quot;/&gt;
&gt;    &lt;xs:field xpath=&quot;&#64;attribute_id&quot;/&gt;
&gt; &lt;/xs:keyref&gt;
&gt; ....
&gt; 
&gt; 
&gt; Thanks:
&gt;    Bence
&gt; --
&gt; View this message in context: 
&gt; http://www.nabble.com/XML-schema-tp25945562p25945562.html
&gt; Sent from the w3.org - xmlschema-dev mailing list archive at 
&gt; Nabble.com.
&gt; 
&gt; 
&gt; 
</pre>
<span id="received"><dfn>Received on</dfn> Sunday, 18 October 2009 22:28:24 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post08003.htm</link><pubDate>Sun, 18 Oct 2009 23:27:50 GMT</pubDate></item><item><title>XML schema </title><description><![CDATA[<pre id="body">
<a name="start37" accesskey="j" id="start37"></a>Hi

I have an <a title="xml schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">xml schema</a> which restricts the Indexes/Tag/@attribute_id values to
the ones are defined in the parent element's Attributes/Attribute/@id. Is
there a way to extend this and enable one (or more) different static values
for example &quot;id&quot;?
There are more Indexes/Tag and Attributes/Attribute tags and i would like to
use this restriction only for thoose that has the same parent.

Here is my current configuration:

....
&lt;<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">xs:element</a> name=&quot;Attributes&quot;&gt;
  &lt;xs:complexType&gt;
    &lt;xs:sequence&gt;
      &lt;xs:element name=&quot;Attribute&quot; maxOccurs=&quot;unbounded&quot;&gt;
	&lt;xs:complexType&gt;
	  &lt;xs:complexContent&gt;
	    &lt;xs:extension base=&quot;Attribute_Type&quot;&gt;
	      &lt;xs:attribute name=&quot;typedef_id&quot; type=&quot;xs:string&quot; use=&quot;required&quot;/&gt;
             &lt;/xs:extension&gt;
	  &lt;/xs:complexContent&gt;
	&lt;/xs:complexType&gt;
      &lt;/xs:element&gt;
    &lt;/xs:sequence&gt;
  &lt;/xs:complexType&gt;
&lt;/xs:element&gt;
....
&lt;xs:element name=&quot;Indexes&quot; minOccurs=&quot;0&quot;&gt;
  &lt;xs:complexType&gt;
    &lt;xs:sequence&gt;
      &lt;xs:element name=&quot;Tag&quot; maxOccurs=&quot;unbounded&quot;&gt;
	&lt;xs:complexType&gt;
          &lt;xs:attribute name=&quot;attribute_id&quot; use=&quot;required&quot;&gt;
		&lt;xs:simpleType&gt;
		  &lt;xs:restriction base=&quot;xs:string&quot;&gt;
		    &lt;xs:pattern value=&quot;[a-z0-9]([a-z0-9.]|(_[a-z]))*&quot;/&gt;
		       &lt;/xs:restriction&gt;
		    &lt;/xs:simpleType&gt;
		  &lt;/xs:attribute&gt;
	       &lt;/xs:complexType&gt;
	     &lt;/xs:element&gt;
	  &lt;/xs:sequence&gt;
   &lt;/xs:complexType&gt;
&lt;/xs:element&gt;
....
....
&lt;xs:key name=&quot;ATTRIBUTE&quot;&gt;
    &lt;xs:selector <a title="XPath Basics" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xpath.html">xpath</a>=&quot;Attributes/Attribute&quot;/&gt;
    &lt;xs:field xpath=&quot;&#64;id&quot;/&gt;
&lt;/xs:key&gt;
&lt;xs:keyref name=&quot;X001&quot; refer=&quot;ATTRIBUTE&quot;&gt;
   &lt;xs:selector xpath=&quot;Indexes/Tag&quot;/&gt;
   &lt;xs:field xpath=&quot;&#64;attribute_id&quot;/&gt;
&lt;/xs:keyref&gt;
....


Thanks:
   Bence
-- 
View this message in context: http://www.nabble.com/XML-schema-tp25945562p25945562.html
Sent from the <a title="w3" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">w3</a>.org - <a title="xmlschema-dev" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://xsd.stylusstudio.com">xmlschema-dev</a> <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/feeds/">mailing list</a> archive at Nabble.com.
</pre>
<span id="received"><dfn>Received on</dfn> Sunday, 18 October 2009 21:30:47 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post07003.htm</link><pubDate>Sun, 18 Oct 2009 03:31:44 GMT</pubDate></item><item><title>RE: Escalation mechanism for different interpretation of W3C XML-Schema specification ? </title><description><![CDATA[<pre id="body">
<a name="start35" accesskey="j" id="start35"></a> 

&gt; -----Original Message-----
&gt; From: <a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253C37882D6E3A594A75877F0E165ACABD2A%40Sealion%253E&amp;References=%253C37882D6E3A594A75877F0E165ACABD2A%40Sealion%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a> [mailto:<a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253C37882D6E3A594A75877F0E165ACABD2A%40Sealion%253E&amp;References=%253C37882D6E3A594A75877F0E165ACABD2A%40Sealion%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a>] 
&gt; Sent: 16 October 2009 21:35
&gt; To: <a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a>
&gt; Cc: 'Henry S. Thompson'; 'XMLSchema at XML4Pharma'; 
&gt; <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253C37882D6E3A594A75877F0E165ACABD2A%40Sealion%253E&amp;References=%253C37882D6E3A594A75877F0E165ACABD2A%40Sealion%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
&gt; Subject: RE: Escalation mechanism for different 
&gt; interpretation of W3C XML-<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/schema0/_index.htm">Schema specification</a> ?
&gt; 
&gt; Michal Kay writes;
&gt; 
&gt; &gt; It's not clear what answers it gives for more complex redefinition 
&gt; &gt; graphs.
&gt; 
&gt; Well, it's been a long time since I've looked at it.  I guess 
&gt; I assume that all redefinition graphs are in fact trees, I.e. 
&gt; each redefine can redefine only one thing

Well, there's a graph of <a title="schema documents" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">schema documents</a>, and a graph of components. If
there's a cycle in the graph of schema documents then there's potential (but
not the necessity) of a cycle at the level of components. A cycle at the
component level is clearly a nonsense, and my inclination is that the same
is true at the document level.

Even without cycles, though, it's not clear to me how ACSOOD handles:

A includes B
A includes C
B redefines X defining a restriction of type T
C redefines X defining a (different) restriction of type T

Perhaps you just let it be caught by the general ban on duplicate
components. But unless you're careful about the wording, that ban also
catches you out on a linear chain of redefinitions.

I noted the statement in your proposal: &quot;Note that the information needed to
determine a redeclaration prototype is easily determined from the
&lt;redefine&gt;ing XML schema document;  the text of a redeclaration always
explicitly refers to the particular schema document containing
(specification of) the component being redefined. &quot; I was surprised to see
this, but I now see that the spec does say (in Schema Representation
Constraint: Individual Component Redefinition) &quot;In all cases there must be a
top-level definition item of the appropriate name and kind in the
&lt;redefine&gt;d schema document.&quot; I now realise I haven't been enforcing that
rule: I only require it to be present in &quot;the schema corresponding to&quot; the
&lt;redefine&gt;d schema document. If A includes B, and R redefines A, then I
allow R to contain redefinitions of components that are actually <a title="An Introduction to XML Schema Development" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xmlschema1/xmlschema1.html">defined in
schema</a> document B. And the Dutch schema I've been working on today
(http://standaarden.overheid.nl/vac/1.1/xsd/vac.xsd) certainly takes
advantage<a title="XML DOM" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/dom.html"> of that freedom</a>.

&gt; 
&gt; &gt; And it doesn't appear to have anything to say about 
&gt; chameleon include.
&gt; 
&gt; ...  I think this probably means that I would have to augment my 
&gt; list of schema document abstraction to actually make it a 
&gt; list of (schemadoc, targetNamespace) pairs, 

That's precisely what I do in my implementation.

Regards,

Michael Kay
http://www.saxonica.com/
http://twitter.com/michaelhkay 
</pre>
<span id="received"><dfn>Received on</dfn> Friday, 16 October 2009 21:22:41 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post05003.htm</link><pubDate>Fri, 16 Oct 2009 22:22:09 GMT</pubDate></item><item><title>RE: Escalation mechanism for different interpretation of W3C XML-Schema specification ? </title><description><![CDATA[<pre id="body">
<a name="start33" accesskey="j" id="start33"></a>&gt; While my 
&gt; ACSOOD proposal remains very incomplete and has a variety of 
&gt; problems, I think it does more or less signal my thinking 
&gt; about questions like this [1]. 
&gt; 

Yes. It's close the the way I think about it. It appears to handle a chain
of redefinition (A redefines B, B redefines C) in the same way as I do. It's
not clear what answers it gives for more complex redefinition graphs.

And it doesn't appear to have anything to say about chameleon include.

Regards,

<a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a>
http://www.saxonica.com/
http://twitter.com/michaelhkay 
  
</pre>
<span id="received"><dfn>Received on</dfn> Friday, 16 October 2009 20:12:32 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post03003.htm</link><pubDate>Fri, 16 Oct 2009 21:11:58 GMT</pubDate></item><item><title>RE: Escalation mechanism for different interpretation of W3C XML-Schema  specification ? </title><description><![CDATA[<pre id="body">
<a name="start36" accesskey="j" id="start36"></a><a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a> writes:

&gt; Perhaps you just let it be caught by the general ban on duplicate
&gt; components.
 That was the idea.

&gt; But unless you're careful about the wording, that ban also
&gt; catches you out on a linear chain of redefinitions.

I'm pretty sure that's handled OK.  Specifically, the text that says:

&quot;Check for duplicate names (I.e. two or more definitions among the union 
of components and prototype components of the same global name in the same 
symbol set) and reflect a violation of the appropriate constraint if 
found.  Note that redeclaration-prototypes need not be checked for 
duplicates, as each necessarily redefines a similarly named 
prototype-component. &quot;

At this stage of the processing, the redeclarations are all tracked in a 
set of redeclaration-prototypes, which is not set that's being checked for 
duplicate names in the same symbol space.  Once this check for duplicates 
is passed, then the redefinitions are processed. 

&gt; If there's a cycle in the graph of <a title="schema documents" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">schema documents</a> then 
&gt; there's potential (but not the necessity) of a cycle at the 
&gt; level of components. A cycle at the
&gt; component level is clearly a nonsense, and my inclination is 
&gt; that the same is true at the document level.

I think I had convinced myself that there could not be a cycle at the 
document level, but I'm not remembering why I came to that conclusion. 
Certainly the set-of-named-documents approach ACSOOD takes to includes and 
imports means that cycles aren't treated as a problem, but are handled. If 
A.xsd and B.xsd mutually include each other, then each is added to the set 
once (it's a set, so there's no other option) and processed.

As to redefine, if A.xsd redefines T in B.xsd, and B.xsd redefines T in 
A.xsd, then I THINK the same text you newly discovered forces an error. 
There MUST be an explicit top level declaration for T in both A.xsd and 
B.xsd, or the clause you cite triggers failure.  If there are explicit top 
level declarations, then the ACSOOD &quot;check for duplicate names&quot; clause 
quoted above triggers a different error.  So, I think redefine cycles are 
ruled out by ACSOOD, and probably by most reasonable readings of the text 
you discovered.

&gt; That's precisely what I do in my implementation.

Well, I have the general sense that ACSOOD and your implementation are 
very much the same in spirit, if not in every detail.  I suppose that's 
promising in some way or other, but I'm not clear on how it helps us move 
ahead this point.  At the very least, it's somewhat gratifying to me 
personally.

--------------------------------------
Noah Mendelsohn 
IBM Corporation
One Rogers Street
Cambridge, MA 02142
1-617-693-4036
--------------------------------------








&quot;Michael Kay&quot; &lt;<a href="mailto:mike&#x40;&#0115;&#0097;&#0120;&#0111;&#0110;&#0105;&#0099;&#0097;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20specification%20%3F&amp;In-Reply-To=%253COF2BC1C1C8.7A8560E8-ON85257651.00777DC6-85257651.00789B85%40lotus.com%253E&amp;References=%253COF2BC1C1C8.7A8560E8-ON85257651.00777DC6-85257651.00789B85%40lotus.com%253E">mike&#x40;&#0115;&#0097;&#0120;&#0111;&#0110;&#0105;&#0099;&#0097;&#0046;&#0099;&#0111;&#0109;</a>&gt;
10/16/2009 05:22 PM
 
        To:     &lt;<a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20specification%20%3F&amp;In-Reply-To=%253COF2BC1C1C8.7A8560E8-ON85257651.00777DC6-85257651.00789B85%40lotus.com%253E&amp;References=%253COF2BC1C1C8.7A8560E8-ON85257651.00777DC6-85257651.00789B85%40lotus.com%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a>&gt;
        cc:     &quot;'Henry S. Thompson'&quot; &lt;<a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20specification%20%3F&amp;In-Reply-To=%253COF2BC1C1C8.7A8560E8-ON85257651.00777DC6-85257651.00789B85%40lotus.com%253E&amp;References=%253COF2BC1C1C8.7A8560E8-ON85257651.00777DC6-85257651.00789B85%40lotus.com%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>&gt;, &quot;'XMLSchema at 
XML4Pharma'&quot; &lt;<a href="mailto:XMLSchema&#x40;&#0088;&#0077;&#0076;&#0052;&#0080;&#0104;&#0097;&#0114;&#0109;&#0097;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20specification%20%3F&amp;In-Reply-To=%253COF2BC1C1C8.7A8560E8-ON85257651.00777DC6-85257651.00789B85%40lotus.com%253E&amp;References=%253COF2BC1C1C8.7A8560E8-ON85257651.00777DC6-85257651.00789B85%40lotus.com%253E">XMLSchema&#x40;&#0088;&#0077;&#0076;&#0052;&#0080;&#0104;&#0097;&#0114;&#0109;&#0097;&#0046;&#0099;&#0111;&#0109;</a>&gt;, &lt;<a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20specification%20%3F&amp;In-Reply-To=%253COF2BC1C1C8.7A8560E8-ON85257651.00777DC6-85257651.00789B85%40lotus.com%253E&amp;References=%253COF2BC1C1C8.7A8560E8-ON85257651.00777DC6-85257651.00789B85%40lotus.com%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>&gt;
        Subject:        RE: Escalation mechanism for different 
interpretation of W3C XML-Schema specification ?


 

&gt; -----Original Message-----
&gt; From: <a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20specification%20%3F&amp;In-Reply-To=%253COF2BC1C1C8.7A8560E8-ON85257651.00777DC6-85257651.00789B85%40lotus.com%253E&amp;References=%253COF2BC1C1C8.7A8560E8-ON85257651.00777DC6-85257651.00789B85%40lotus.com%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a> [mailto:<a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20specification%20%3F&amp;In-Reply-To=%253COF2BC1C1C8.7A8560E8-ON85257651.00777DC6-85257651.00789B85%40lotus.com%253E&amp;References=%253COF2BC1C1C8.7A8560E8-ON85257651.00777DC6-85257651.00789B85%40lotus.com%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a>] 
&gt; Sent: 16 October 2009 21:35
&gt; To: Michael Kay
&gt; Cc: 'Henry S. Thompson'; 'XMLSchema at XML4Pharma'; 
&gt; <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20specification%20%3F&amp;In-Reply-To=%253COF2BC1C1C8.7A8560E8-ON85257651.00777DC6-85257651.00789B85%40lotus.com%253E&amp;References=%253COF2BC1C1C8.7A8560E8-ON85257651.00777DC6-85257651.00789B85%40lotus.com%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
&gt; Subject: RE: Escalation mechanism for different 
&gt; interpretation of W3C XML-Schema specification ?
&gt; 
&gt; Michal Kay writes;
&gt; 
&gt; &gt; It's not clear what answers it gives for more complex redefinition 
&gt; &gt; graphs.
&gt; 
&gt; Well, it's been a long time since I've looked at it.  I guess 
&gt; I assume that all redefinition graphs are in fact trees, I.e. 
&gt; each redefine can redefine only one thing

Well, there's a graph of schema documents, and a graph of components. If
there's a cycle in the graph of schema documents then there's potential 
(but
not the necessity) of a cycle at the level of components. A cycle at the
component level is clearly a nonsense, and my inclination is that the same
is true at the document level.

Even without cycles, though, it's not clear to me how ACSOOD handles:

A includes B
A includes C
B redefines X defining a restriction of type T
C redefines X defining a (different) restriction of type T

Perhaps you just let it be caught by the general ban on duplicate
components. But unless you're careful about the wording, that ban also
catches you out on a linear chain of redefinitions.

I noted the statement in your proposal: &quot;Note that the information needed 
to
determine a redeclaration prototype is easily determined from the
&lt;redefine&gt;ing XML schema document;  the text of a redeclaration always
explicitly refers to the particular schema document containing
(specification of) the component being redefined. &quot; I was surprised to see
this, but I now see that the spec does say (in Schema Representation
Constraint: Individual Component Redefinition) &quot;In all cases there must be 
a
top-level definition item of the appropriate name and kind in the
&lt;redefine&gt;d schema document.&quot; I now realise I haven't been enforcing that
rule: I only require it to be present in &quot;the schema corresponding to&quot; the
&lt;redefine&gt;d schema document. If A includes B, and R redefines A, then I
allow R to contain redefinitions of components that are actually defined 
in
schema document B. And the Dutch schema I've been working on today
(http://standaarden.overheid.nl/vac/1.1/xsd/vac.xsd) certainly takes
advantage of that freedom.

&gt; 
&gt; &gt; And it doesn't appear to have anything to say about 
&gt; chameleon include.
&gt; 
&gt; ...  I think this probably means that I would have to augment my 
&gt; list of schema document abstraction to actually make it a 
&gt; list of (schemadoc, targetNamespace) pairs, 

That's precisely what I do in my implementation.

Regards,

Michael Kay
http://www.saxonica.com/
http://twitter.com/michaelhkay 
</pre>
<span id="received"><dfn>Received on</dfn> Friday, 16 October 2009 21:58:03 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post06003.htm</link><pubDate>Fri, 16 Oct 2009 17:57:20 GMT</pubDate></item><item><title>RE: Escalation mechanism for different interpretation of W3C XML-Schema  specification ? </title><description><![CDATA[<pre id="body">
<a name="start34" accesskey="j" id="start34"></a>Michal Kay writes;

&gt; It's not clear what answers it gives for more complex 
&gt; redefinition graphs.

Well, it's been a long time since I've looked at it.  I guess I assume 
that all redefinition graphs are in fact trees, I.e. each redefine can 
redefine only one thing, and ultimately there is a path back up to the 
collection of the coponents you would have had if no redefinitions at all 
were done.  What I believe ACSOOD tries to do is, first collect all of the 
prototype components that are not themselves the result of redefines, then 
apply the redefinitions recursively, with each one being pervasive.  Is 
there a particular sample you have in mind for which ACSOOD doesn't signal 
a fairly clear direction?  You may well be right, but I'd be very curious 
to <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/learn_xml.html">learn</a> what it is.

&gt; And it doesn't appear to have anything to say about chameleon include.

I went back and looked at it.  You're right that it isn't dealt with 
explicitly. My suggestion would be that it be handled locally to the 
preparation of prototype components of each include step.  Thus, if a 
<a title="schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">schema</a> with target namespace N included a schema doc with no explicit 
target NS, it would for ACSOOD purposes be as if the included document did 
have an explicit targetNamespace=&quot;N&quot;.  If that same document were included 
in another context, then that would be handled as a completely separate 
include, with the same rule applied.  I think this probably means that I 
would have to augment my list of <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">schema document</a> abstraction to actually 
make it a list of (<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_doc_gen.html">schemadoc</a>, targetNamespace) pairs, where in most cases 
the targetNamespace would be determined trivially from the schemadoc's 
attribute, but in the case of chameleon would be taken from the include 
statement.  This would allow the same schemadoc to be included in the list 
repeatedly, once for each targetNS.

Again, ACSOOD was an attempt to set down more crisply how I always thought 
the whole thing was working right along, though I later came to understand 
some of the ambiguities in the spec as written, and that other people have 
interpreted it differently.  I also am a little unhappy with the fact that 
ACSOOD depends in its current form on identify of schema documents (it has 
a set of them), which raises some nasty questions about cases in which 
schemaLocation URIs differ in, e.g., upper/lowercase, but in ways that we 
know won't affect the referent (e.g. http://xxx vs. HTTP://xxx)  ACSOOD 
more or less winds up treating these as distinct documents, potentially 
including them separately, and quite likely resulting in duplicate 
component errors.  Otherwise, I think it's in the ballpark.  Then again, I 
said as much in 2004, and it was clear that there were many differing 
opinions in the WG as to how things really work in 1.0, how they should 
work in 1.1, and especially in how to explain how they should work in 1.1. 
  I really don't want to reopen all of that here.  I'm just pointing to 
ACSOOD is a simple way of indicating what my personal assumptions have 
been about how redefine should work.

Noah

--------------------------------------
Noah Mendelsohn 
IBM Corporation
One Rogers Street
Cambridge, MA 02142
1-617-693-4036
--------------------------------------








&quot;<a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a>&quot; &lt;<a href="mailto:mike&#x40;&#0115;&#0097;&#0120;&#0111;&#0110;&#0105;&#0099;&#0097;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20specification%20%3F&amp;In-Reply-To=%253COF3A6882EB.E0EF4280-ON85257651.006FD574-85257651.0071177B%40lotus.com%253E&amp;References=%253COF3A6882EB.E0EF4280-ON85257651.006FD574-85257651.0071177B%40lotus.com%253E">mike&#x40;&#0115;&#0097;&#0120;&#0111;&#0110;&#0105;&#0099;&#0097;&#0046;&#0099;&#0111;&#0109;</a>&gt;
10/16/2009 04:11 PM
 
        To:     &lt;<a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20specification%20%3F&amp;In-Reply-To=%253COF3A6882EB.E0EF4280-ON85257651.006FD574-85257651.0071177B%40lotus.com%253E&amp;References=%253COF3A6882EB.E0EF4280-ON85257651.006FD574-85257651.0071177B%40lotus.com%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a>&gt;
        cc:     &quot;'Henry S. Thompson'&quot; &lt;<a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20specification%20%3F&amp;In-Reply-To=%253COF3A6882EB.E0EF4280-ON85257651.006FD574-85257651.0071177B%40lotus.com%253E&amp;References=%253COF3A6882EB.E0EF4280-ON85257651.006FD574-85257651.0071177B%40lotus.com%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>&gt;, &quot;'XMLSchema at 
XML4Pharma'&quot; &lt;<a href="mailto:XMLSchema&#x40;&#0088;&#0077;&#0076;&#0052;&#0080;&#0104;&#0097;&#0114;&#0109;&#0097;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20specification%20%3F&amp;In-Reply-To=%253COF3A6882EB.E0EF4280-ON85257651.006FD574-85257651.0071177B%40lotus.com%253E&amp;References=%253COF3A6882EB.E0EF4280-ON85257651.006FD574-85257651.0071177B%40lotus.com%253E">XMLSchema&#x40;&#0088;&#0077;&#0076;&#0052;&#0080;&#0104;&#0097;&#0114;&#0109;&#0097;&#0046;&#0099;&#0111;&#0109;</a>&gt;, &lt;<a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20specification%20%3F&amp;In-Reply-To=%253COF3A6882EB.E0EF4280-ON85257651.006FD574-85257651.0071177B%40lotus.com%253E&amp;References=%253COF3A6882EB.E0EF4280-ON85257651.006FD574-85257651.0071177B%40lotus.com%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>&gt;
        Subject:        RE: Escalation mechanism for different 
interpretation of W3C XML-Schema specification ?


&gt; While my 
&gt; ACSOOD proposal remains very incomplete and has a variety of 
&gt; problems, I think it does more or less signal my thinking 
&gt; about questions like this [1]. 
&gt; 

Yes. It's close the the way I think about it. It appears to handle a chain
of redefinition (A redefines B, B redefines C) in the same way as I do. 
It's
not clear what answers it gives for more complex redefinition graphs.

And it doesn't appear to have anything to say about chameleon include.

Regards,

Michael Kay
http://www.saxonica.com/
http://twitter.com/michaelhkay 
 
</pre>
<span id="received"><dfn>Received on</dfn> Friday, 16 October 2009 20:35:59 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post04003.htm</link><pubDate>Fri, 16 Oct 2009 16:35:06 GMT</pubDate></item><item><title>RE: Escalation mechanism for different interpretation of W3C XML-Schema  specification ? </title><description><![CDATA[<pre id="body">
<a name="start32" accesskey="j" id="start32"></a><a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a> writes:

&gt; Because the common components have been copied into three different
&gt; namespaces, a redefine occurring in one namespace does not 
&gt; affect copies of
&gt; the component in a different namespace. That's <a title="Saxon" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/saxon_xquery_processor.html">Saxon</a>'s interpretation,
&gt; anyway. You could take the view that the &quot;pervasiveness&quot; of redefinition
&gt; makes it transcend the <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_grid_view.html">renaming</a> done by the chameleon include, 
&gt; but I don't.

FWIW, I don't either.  More specifically, if you'd asked me not about the 
text of the Recommendation as it came out (which I think we've established 
is somewhat self-contradictory and thus interpreted differently by 
different readers), but about what I thought we were trying to say as we 
all wrote that, I agree with you.  While my ACSOOD proposal remains very 
incomplete and has a variety of problems, I think it does more or less 
signal my thinking about questions like this [1]. 

BTW: this proposal gets referenced from time to time, and as far as I can 
tell the only copy remains in member-only space.  If there's a way to do 
it without inconveniencing the chair or working group members, I will try 
to get permission post another public copy, perhaps in the W3C public 
archives.  I think it's useful for references like this to be public when 
practical.  (I am not proposing to start active <a title="discussion" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/SSDN/default.asp">discussion</a> of it now, but 
every few years an email thread like this pops up, and I find it 
inconvenient to have links that can't be read outside of W3C.   I'll ask 
on the working group's list, which is the right place to do it.  In the 
meantime, apologies to readers outside the WG who can't see it.  FYI, we 
were (in 2004!) making a major effort to clarify the composition story for 
<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">XSD</a> 1.1.  The paper reference at [1] was an experimental attempt by me to 
create a design that would capture what I thought we intended in XSD 1.0. 
I think there are some good ideas in it, but it's also incomplete and has 
a number of problems.  Other important proposals were made by other 
working group members, many months were spent trying to extract from all 
of this a story that would garner consensus as a better explanation than 
the one we had in XSD 1.0, and to a signficant degree we failed.  So, I 
refer to this only because with respect to issues like the ones Mike 
raises, some of my thinking is captured in more detail at [1].

Noah

[1] 
http://lists.w3.org/Archives/Member/w3c-xml-schema-ig/2004Jul/att-0004/CompositionArchitecture.html


--------------------------------------
Noah Mendelsohn 
IBM Corporation
One Rogers Street
Cambridge, MA 02142
1-617-693-4036
--------------------------------------








&quot;Michael Kay&quot; &lt;<a href="mailto:mike&#x40;&#0115;&#0097;&#0120;&#0111;&#0110;&#0105;&#0099;&#0097;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20specification%20%3F&amp;In-Reply-To=%253COFF825BCFE.365D602F-ON85257651.0057AAD1-85257651.00685031%40lotus.com%253E&amp;References=%253COFF825BCFE.365D602F-ON85257651.0057AAD1-85257651.00685031%40lotus.com%253E">mike&#x40;&#0115;&#0097;&#0120;&#0111;&#0110;&#0105;&#0099;&#0097;&#0046;&#0099;&#0111;&#0109;</a>&gt;
Sent by: <a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20specification%20%3F&amp;In-Reply-To=%253COFF825BCFE.365D602F-ON85257651.0057AAD1-85257651.00685031%40lotus.com%253E&amp;References=%253COFF825BCFE.365D602F-ON85257651.0057AAD1-85257651.00685031%40lotus.com%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
10/16/2009 09:29 AM
 
        To:     &quot;'Henry S. Thompson'&quot; &lt;<a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20specification%20%3F&amp;In-Reply-To=%253COFF825BCFE.365D602F-ON85257651.0057AAD1-85257651.00685031%40lotus.com%253E&amp;References=%253COFF825BCFE.365D602F-ON85257651.0057AAD1-85257651.00685031%40lotus.com%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>&gt;
        cc:     &quot;'XMLSchema at XML4Pharma'&quot; &lt;<a href="mailto:XMLSchema&#x40;&#0088;&#0077;&#0076;&#0052;&#0080;&#0104;&#0097;&#0114;&#0109;&#0097;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20specification%20%3F&amp;In-Reply-To=%253COFF825BCFE.365D602F-ON85257651.0057AAD1-85257651.00685031%40lotus.com%253E&amp;References=%253COFF825BCFE.365D602F-ON85257651.0057AAD1-85257651.00685031%40lotus.com%253E">XMLSchema&#x40;&#0088;&#0077;&#0076;&#0052;&#0080;&#0104;&#0097;&#0114;&#0109;&#0097;&#0046;&#0099;&#0111;&#0109;</a>&gt;, 
&lt;<a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20specification%20%3F&amp;In-Reply-To=%253COFF825BCFE.365D602F-ON85257651.0057AAD1-85257651.00685031%40lotus.com%253E&amp;References=%253COFF825BCFE.365D602F-ON85257651.0057AAD1-85257651.00685031%40lotus.com%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>&gt;, (bcc: Noah Mendelsohn/Cambridge/IBM)
        Subject:        RE: Escalation mechanism for different 
interpretation of W3C XML-Schema specification ?


&gt; Hmmm -- let's leave redefine aside, as we've agreed to differ 
&gt; on that before, but I'm surprised you recommend against 
&gt; chameleon include.  I find it hugely useful (for those little 
&gt; bits that you use all the time but aren't worth putting in a 
&gt; namespace) and am not aware of any interop problems with it. . .

I've been working on a bug report relating to a Dutch government schema
published at 

http://standaarden.overheid.nl/vac/1.1/xsd/vac.xsd

which makes extensive use of redefines and chameleon include. I've fixed 
the
bug that stopped this working under Saxon 9.2, but I would make some
observations on the schema, which are I think rather pertinent to this
thread.

There's a cluster of three no-namespace schema documents (overheid-types,
overheid-classes, overheid-schemes) that are chameleon-included into three
different namespaces (short names /vac/, /dc/terms/, and /owms/terms/). 
The
effect of this is to create three near-identical copies of each of the
components defined in these three schema documents, one in each namespace.
This means that as far as XSLT and XQuery are concerned, 
elements/attributes
defined in terms of these types will be unrelated to each other in the 
type
hierarchy, which means that writing schema-aware stylesheets and queries 
is
likely to be very confusing. This is probably one of the main reasons I'm
not a fan of chameleon include.

But that's not all: the schema also makes heavy use of redefines.
Specifically, if we call this no-namespace cluster COMMON, we have the
structure (slightly simplified to capture the essence):

Namespace /vac/
vac.xsd includes COMMON
vac.xsd imports owms-classes-redef.xsd
vac.xsd imports overheid-classes-redef.xsd

Namespace /dc/terms/
owms-classes-redef.xsd redefines dcterms-elem.xsd
dcterms-elem.xsd includes COMMON

Namespace /owms/terms/
overheid-classes-redef.xsd redefines owns.xsd
owms.xsd includes COMMON
owms.xsd imports dcterms-elem.xsd

Note that dcterms-elem.xsd is reachable from vac.xsd via one route that
contain a &quot;redefines&quot; step, and by another route that omits this step (but
which does contain a different redefines step). This is where the
interpretation of &quot;pervasiveness&quot; is critical: Saxon takes the view that 
all
references to components that have been redefined are references to the
post-redefinition component. In fact the rule introduced in Saxon 9.2 
(whose
incorrect implementation caused the bug) is that every component has a
redefinition level, so if A redefines B and B redefines C then a given
component may have redefinition levels of 2, 1, and 0; all references to a
component name are taken as references to the highest available 
redefinition
level, and if there are two different components at the highest 
redefinition
level, it's an error (for example, A redefines C, and B also redefines C).
There's nothing at all in the spec to justify these rules, but it's the 
only
way I could find of handling complex redefinition lattices that seemed to
make sense.

But the chameleon includes interfere with this (perhaps deliberately).
Because the common components have been copied into three different
namespaces, a redefine occurring in one namespace does not affect copies 
of
the component in a different namespace. That's Saxon's interpretation,
anyway. You could take the view that the &quot;pervasiveness&quot; of redefinition
makes it transcend the renaming done by the chameleon include, but I 
don't.

In experimenting further with this schema, I discovered that if the two
imports from vac.xsd are reversed in order, the import of
owms-classes-redef.xsd has no effect, because it is then importing a
namespace that is already known to the processor; Saxon ignores the
schemaLocation URI in this case. So the schema document
owms-classes-redef.xsd, and the redefinitions that it contains, are simply
ignored. This makes the situation very fragile: reversing the order of
imports does not make the processing fail, it just silently compiles a
different schema. I think this reinforces Henry's argument that if you're
going to redefine, then there should be one redefining document for each
namespace, which acts as a gateway to that namespace, and no other
includes/imports/redefines from elsewhere in the schema should bypass this
gateway. This schema breaks this rule, and gets away with it only because 
of
gateway document is encountered before the bypassing document.

Michael Kay
Saxonica
</pre>
<span id="received"><dfn>Received on</dfn> Friday, 16 October 2009 19:00:04 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post02003.htm</link><pubDate>Fri, 16 Oct 2009 14:59:13 GMT</pubDate></item><item><title>RE: Escalation mechanism for different interpretation of W3C XML-Schema specification ? </title><description><![CDATA[<pre id="body">
<a name="start31" accesskey="j" id="start31"></a>&gt; Hmmm -- let's leave redefine aside, as we've agreed to differ 
&gt; on that before, but I'm surprised you recommend against 
&gt; chameleon include.  I find it hugely useful (for those little 
&gt; bits that you use all the time but aren't worth putting in a 
&gt; namespace) and am not aware of any interop problems with it. . .

I've been working on a bug report relating to a Dutch government <a title="schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">schema</a>
published at 

http://standaarden.overheid.nl/vac/1.1/xsd/vac.xsd

which makes extensive use of redefines and chameleon include. I've fixed the
bug that stopped this working under <a title="Saxon" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/saxon_xquery_processor.html">Saxon</a> 9.2, but I would make some
observations on the schema, which are I think rather pertinent to this
thread.

There's a cluster of three no-namespace <a title="schema documents" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">schema documents</a> (overheid-types,
overheid-classes, overheid-schemes) that are chameleon-included into three
different namespaces (short names /vac/, /dc/terms/, and /owms/terms/). The
effect of this is to create three near-identical copies of each of the
components <a title="An Introduction to XML Schema Development" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xmlschema1/xmlschema1.html">defined in these three schema</a> documents, one in each namespace.
This means that as far as <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xslt.html">XSLT</a> and XQuery are concerned, elements/attributes
defined in terms of these types will be unrelated to each other in the type
hierarchy, which means that writing <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/schema_aware.html">schema-aware</a> <a title="Stylesheet Designer" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/publisher1/publisher1.html">stylesheets</a> and queries is
likely to be very confusing. This is probably one of the main reasons I'm
not a fan of chameleon include.

But that's not all: the schema also makes heavy use of redefines.
Specifically, if we call this no-namespace cluster COMMON, we have the
structure (slightly simplified to capture the essence):

Namespace /vac/
vac.xsd includes COMMON
vac.xsd imports owms-classes-redef.xsd
vac.xsd imports overheid-classes-redef.xsd

Namespace /dc/terms/
owms-classes-redef.xsd redefines dcterms-elem.xsd
dcterms-elem.xsd includes COMMON

Namespace /owms/terms/
overheid-classes-redef.xsd redefines owns.xsd
owms.xsd includes COMMON
owms.xsd imports dcterms-elem.xsd

Note that dcterms-elem.xsd is reachable from vac.xsd via one route that
contain a &quot;redefines&quot; step, and by another route that omits this step (but
which does contain a different redefines step). This is where the
interpretation of &quot;pervasiveness&quot; is critical: Saxon takes the view that all
references to components that have been redefined are references to the
post-redefinition component. In fact the rule introduced in Saxon 9.2 (whose
incorrect implementation caused the bug) is that every component has a
redefinition level, so if A redefines B and B redefines C then a given
component may have redefinition levels of 2, 1, and 0; all references to a
component name are taken as references to the highest available redefinition
level, and if there are two different components at the highest redefinition
level, it's an error (for example, A redefines C, and B also redefines C).
There's nothing at all in the spec to justify these rules, but it's the only
way I could find of handling complex redefinition lattices that seemed to
make sense.

But the chameleon includes interfere with this (perhaps deliberately).
Because the common components have been copied into three different
namespaces, a redefine occurring in one namespace does not affect copies of
the component in a different namespace. That's Saxon's interpretation,
anyway. You could take the view that the &quot;pervasiveness&quot; of redefinition
makes it transcend the renaming done by the chameleon include, but I don't.

In experimenting further with this schema, I discovered that if the two
imports from vac.xsd are reversed in order, the import of
owms-classes-redef.xsd has no effect, because it is then importing a
namespace that is already known to the processor; Saxon ignores the
schemaLocation URI in this case. So the schema document
owms-classes-redef.xsd, and the redefinitions that it contains, are simply
ignored. This makes the situation very fragile: reversing the order of
imports does not make the processing fail, it just silently compiles a
different schema. I think this reinforces Henry's argument that if you're
going to redefine, then there should be one redefining document for each
namespace, which acts as a gateway to that namespace, and no other
includes/imports/redefines from elsewhere in the schema should bypass this
gateway. This schema breaks this rule, and gets away with it only because of
gateway document is encountered before the bypassing document.

Michael Kay
Saxonica
</pre>
<span id="received"><dfn>Received on</dfn> Friday, 16 October 2009 13:30:19 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post01003.htm</link><pubDate>Fri, 16 Oct 2009 14:29:34 GMT</pubDate></item><item><title>RE: Escalation mechanism for different interpretation of W3C XML-Schema specification ? </title><description><![CDATA[<pre id="body">
<a name="start29" accesskey="j" id="start29"></a>&gt; Hmmm -- let's leave redefine aside, as we've agreed to differ 
&gt; on that before, but I'm surprised you recommend against 
&gt; chameleon include.  I find it hugely useful (for those little 
&gt; bits that you use all the time but aren't worth putting in a 
&gt; namespace) and am not aware of any interop problems with it. . .


Well, it's partly that if you allow the same data to be in different
namespaces at different times then it's much harder <a title="Working with XSLT" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xsltedit1/xsltedit1.html">to write reusable code
in XSLT</a>/XQuery etc that works regardless of which namespace has been chosen
today.

But it certainly can lead to problems of interpretation:

(a) problems hinging on the (<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">XSD</a> 1.0) phrase &quot;corresponds to a &lt;schema&gt;
element information item in a <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_well_formed.html">well-formed</a> information set, which in turn
corresponds to a valid schema.&quot; - the correspondence of the schema
information item to the valid schema is never spelt out, so it's not clear
for example if A does a chameleon include on B which imports C which imports
the no-namespace <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">schema document</a> D, whether components defined in D are
moved into the target namespace of A; especially if C or D are also
reachable by other routes.

(b) problems hinging on exactly where the substitution of targetNamespace
applies, for example, whether it affects <a title="XPath expressions" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xpath_evaluator.html">XPath expressions</a> in identity
constraints, QNames used in enumeration facets, or references to
no-namespace components <a title="Building XML Schemas" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xmlschema1/xmlschema1.html">defined in a schema</a> document that is not itself
within the scope of the chameleon include.

We've improved the rules for XSD 1.1, but it's still a facility I would be
inclined to avoid.

Regards,

<a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a>
http://www.saxonica.com/
http://twitter.com/michaelhkay 
</pre>
<span id="received"><dfn>Received on</dfn> Monday, 12 October 2009 20:05:28 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post09002.htm</link><pubDate>Mon, 12 Oct 2009 21:04:47 GMT</pubDate></item><item><title>Re: Escalation mechanism for different interpretation of W3C XML-Schema specification ? </title><description><![CDATA[<pre id="body">
<a name="start28" accesskey="j" id="start28"></a>-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

<a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a> writes:

&gt; I suspect, but without testing(!) that the strategy can be extended to
&gt; xs:redefine as follows:
&gt;
&gt; (a) if redefinition for a namespace is required, create a new <a title="schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">schema</a>
&gt; document with that targetNamespace that invokes the (previous) primary
&gt; <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">schema document</a> for that namespace using xs:redefine, and contains all the
&gt; redefinitions needed.
&gt;
&gt; (b) change the driver document to refer to the redefinition documents
&gt; introduced in step (1) in place of the (previous) primary shcema documents.

Yes, that sounds right.

&gt; A similar approach might also work reliably for &quot;chameleon include&quot;.

Includes in general are less problematic, as there is no option for
processors -- they _must_ process the nominated schema document.

&gt; But better advice is not to use redefine or chameleon include.

Hmmm -- let's leave redefine aside, as we've agreed to differ on that
before, but I'm surprised you recommend against chameleon include.  I
find it hugely useful (for those little bits that you use all the time
but aren't worth putting in a namespace) and am not aware of any
interop problems with it. . .

ht
- -- 
       Henry S. Thompson, School of Informatics, University of Edinburgh
                         Half-time member of W3C Team
      10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
                Fax: (44) 131 651-1426, e-mail: <a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253Cf5bbpkcwggo.fsf%40hildegard.inf.ed.ac.uk%253E&amp;References=%253Cf5bbpkcwggo.fsf%40hildegard.inf.ed.ac.uk%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>
                       URL: http://www.ltg.ed.ac.uk/~ht/
[mail really from me _always_ has this .sig -- mail without it is forged spam]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)

iD8DBQFK04WokjnJixAXWBoRAsvbAJ9nerp4yckxN4iPts1pBBDyZvyalgCaAzfm
mGqLLD1JN8IMkIsAynGy96k=
=Ot+l
-----END PGP SIGNATURE-----
</pre>
<span id="received"><dfn>Received on</dfn> Monday, 12 October 2009 19:38:48 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post08002.htm</link><pubDate>Mon, 12 Oct 2009 20:38:15 GMT</pubDate></item><item><title>Re: [XML Schema 1.1] Two ways to create interleaved, any-order content  ... are they identical? </title><description><![CDATA[<pre id="body">
<a name="start30" accesskey="j" id="start30"></a>
On 12 Oct 2009, at 11:00 , Costello, Roger L. wrote:

&gt;
&gt; Hi Folks,
&gt;
&gt; Below are two ways to declare a &lt;<a title="Book" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_book.html">Book</a>&gt; element.
&gt;
&gt; Both versions use &lt;all&gt;, to permit the elements within &lt;Book&gt; to  
&gt; occur in any order.
&gt;
&gt; The first version uses an unbounded &lt;any&gt;. The second version uses  
&gt; interleaved open content.
&gt;
&gt; Are these two versions identical?

You may mean &quot;Do they accept the same inputs as valid instances
of element Book?&quot; Yes, I think they do.


&gt; If so, is there an advantage of one over the other?

Some people may find one formulation clearer or simpler than the
other; they will rightly prefer the one they find clearer.  I
expect different people will have different preferences, depending
on their tastes.

If a <a title="schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">schema</a> is designed so that ever complex type, or most of them,
has a particular form of open content, then the open content can
be defaulted at the <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">schema document</a> level, which will make most
content models shorter and simpler.  Readers who forget that the
schema document supplies default open content may be surprised and
complain about action at a distance.

In the case of all-groups, using an explicit wildcard and using
interleave open content are roughly similar in complexity of the
declaration.  In other cases, explicit wildcards are much more
verbose and for many schema authors rather error-prone.  See
http://www.<a title="w3" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">w3</a>.org/TR/xmlschema-guide2versioning/ for examples.


&gt; If they are not identical, how do they differ?

You may mean &quot;Do they produce indistinguishable PSVIs?&quot;

No, not quite; the [match information] property in the PSVI allows
the two to be distinguished, for elements other than Author, Title,
Date, ISBN, and <a title="Stylus Studio XML Publisher" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml/publisher.html">Publisher</a>:  in the one case, those elements will have
[match information] = 'lax' (since they match a lax wildcard in the
content model), and in the other they will have [match information]
= 'open' (since they match open content).  This allows the
downstream application to distinguish the two cases, if it wishes to.

In the usual case, making downstream processing depend on such a subtle
distinction is probably not a good idea, but YMMV and there may be
special circumstances.  Certainly there are some designers who
like the idea of being able to say that if an element in the input
matches an element in the version N content model, then a
version N processor is obligated to process it in a certain
way, and if the element in the input matches a wildcard (or:
matches only open content) in the version N content model, then
a version N processor is obligated to tolerate it, or to ignore
it, or to handle it in some other way.  In such a design,
&quot;matches an element&quot; and &quot;matches a wildcard&quot; are syntax-level
signals for different kinds of processing.  The signal &quot;matches
an open-content wildcard&quot; can fit nicely into this pattern,
either to signal a third kind of processing or to shift the
distinction from element-vs-wildcard to content-model-vs-opencontent.

HTH


-- 
****************************************************************
* C. M. Sperberg-McQueen, Black Mesa Technologies LLC
* http://www.blackmesatech.com
* http://cmsmcq.com/mib
* http://balisage.net
****************************************************************
</pre>
<span id="received"><dfn>Received on</dfn> Tuesday, 13 October 2009 00:02:41 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post00003.htm</link><pubDate>Mon, 12 Oct 2009 18:02:10 GMT</pubDate></item><item><title>RE: Escalation mechanism for different interpretation of W3C XML-Schema specification ? </title><description><![CDATA[<pre id="body">
<a name="start26" accesskey="j" id="start26"></a>
I agree with all of this, but it leaves the question of xs:redefine.

I suspect, but without testing(!) that the strategy can be extended to
xs:redefine as follows:

(a) if redefinition for a namespace is required, create a new <a title="schema
document" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">schema
document</a> with that targetNamespace that invokes the (previous) primary
schema document for that namespace using xs:redefine, and contains all the
redefinitions needed.

(b) change the driver document to refer to the redefinition documents
introduced in step (1) in place of the (previous) primary shcema documents.

A similar approach might also work reliably for &quot;chameleon include&quot;.

But better advice is not to use redefine or chameleon include.

Regards,

<a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a>
http://www.saxonica.com/
http://twitter.com/michaelhkay 

 

&gt; -----Original Message-----
&gt; From: <a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253C0EEB8721B466440E84B6516E8FBCA998%40Sealion%253E&amp;References=%253C0EEB8721B466440E84B6516E8FBCA998%40Sealion%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a> 
&gt; [mailto:<a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253C0EEB8721B466440E84B6516E8FBCA998%40Sealion%253E&amp;References=%253C0EEB8721B466440E84B6516E8FBCA998%40Sealion%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>] On Behalf Of Henry S. Thompson
&gt; Sent: 12 October 2009 16:40
&gt; To: XMLSchema at XML4Pharma
&gt; Cc: <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253C0EEB8721B466440E84B6516E8FBCA998%40Sealion%253E&amp;References=%253C0EEB8721B466440E84B6516E8FBCA998%40Sealion%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
&gt; Subject: Re: Escalation mechanism for different 
&gt; interpretation of W3C XML-<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/schema0/_index.htm">Schema specification</a> ?
&gt; 
&gt; -----BEGIN PGP SIGNED MESSAGE-----
&gt; Hash: SHA1
&gt; 
&gt; Stimulated in equal measure by this thread, and a request 
&gt; from the XML Security WG [0], I came up with my personal 
&gt; 'best practice' guideline for schema document design for 
&gt; multi-namespace schemas.  I include the core bit below -- for 
&gt; the full context and a worked example, see my reply to the 
&gt; DSIG WG [1].
&gt; 
&gt; ht
&gt; 
&gt; [0] 
&gt; http://lists.w3.org/Archives/Public/public-xmlsec/2009Oct/0019.html
&gt; [1] 
&gt; http://lists.w3.org/Archives/Public/public-xmlsec/2009Oct/0023.html
&gt; - -------------------------
&gt; HST's best practice guide for multiple-namespace schema composition
&gt; 
&gt; It's helpful in <a title="discussions" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/SSDN/default.asp">discussions</a> of this sort to be careful with
&gt; vocabulary:
&gt; 
&gt;   Schema document: An XML document in the W3C XML Schema namespace
&gt;   Schema: An abstract data object, typically composed from one or more
&gt;           schema documents according to the rules given in the W3C XML
&gt;           Schema specs.
&gt; 
&gt; A schema document specifies either one or no target namespace.
&gt; 
&gt; A schema may well contain element &amp; attribute declarations 
&gt; and/or type definitions for many target namespaces.
&gt; 
&gt; The W3C XML Schema specs provide a number of mechanisms for 
&gt; assembling the schema documents needed to construct a schema 
&gt; for a particular validation episode:
&gt; 
&gt;  1) the schemaLocation attribute on xs:include elements.
&gt;  2) xsi:schemaLocation (in the instance to be validated);
&gt;  3) the schemaLocation attribute on xs:import elements;
&gt;  4) the namespace URIs themselves (in the instance to be validated, or
&gt;     from the namespace attribute on xs:import elements);
&gt; 
&gt; Without going into the details of what's optional and what's 
&gt; required, or of the range of choices implementations exhibit, 
&gt; here's my recommendation for multi-namespace schemas:
&gt; 
&gt; 1) For each namespace in your language, there should be one primary
&gt;    schema document.  It may be the only schema document for that
&gt;    namespace, or it may use xs:include (which must have a
&gt;    schemaLocation attribute) to allow for modular development by
&gt;    including multiple as-it-were secondary schema documents;
&gt; 
&gt; 2) Whenever reference is made to names in another namespace from a
&gt;    primary or secondary schema document, use an xs:import _without_ a
&gt;    schemaLocation attribute;
&gt; 
&gt; 3) Create a driver schema document, whose target namespace is the
&gt;    namespace of the (most common) document element of instance
&gt;    documents in the language.  It should contain an xs:include of the
&gt;    primary schema document for that namespace, and xs:imports for all
&gt;    the other namespaces, _with_ schemaLocation attributes pointing to
&gt;    the primary schema documents for those other namespaces.
&gt; 
&gt; Then, by passing the location of the driver schema document 
&gt; to schema validation tools and/or by including an 
&gt; xsi:schemaLocation attribute on the document element of 
&gt; instances to be validated which associates the target 
&gt; namespace of the driver schema document with its location, 
&gt; you will get the behaviour you need from all the 
&gt; tools/implementations I am aware of.
&gt; 
&gt; Schematically, this looks like
&gt; 
&gt;                driver.xsd -- TNS = http://www.example.org/rootNS
&gt;                               /|\
&gt;                              / | \
&gt;                             /  |  \
&gt;                            /   |   \
&gt;                    xs:include  |    \
&gt;                    schemaLoc=  |     \
&gt;                         /      |      \
&gt;                        /   xs:import   \
&gt;                       /    NS=...NS2    \
&gt;                      /     schemaLoc=    \
&gt;                     /          |       xs:import
&gt;                    /           |       NS=...NS3
&gt;                   /            |       schemaLoc=
&gt;                  /             |             \
&gt;             primary1.xsd   primary2.xsd  primary3.xsd
&gt;             TNS=...rootNS   TNS=...NS2    TNS=...NS3    
&gt;                  / \                         /|\
&gt;                 /   \                       / | \
&gt;                /     \                     /  |  \
&gt;               /       \                   /   |   \
&gt;         xs:import  xs:import             /    |    \
&gt;         NS=...NS2  NS=...NS3      xs:include  |     \
&gt;                                   schemaLoc=  |      \
&gt;                                        /      |       \
&gt;                                   3.1.xsd     |        \
&gt;                                           xs:include    \
&gt;                                           schemaLoc=     \
&gt;                                               |           \
&gt;                                           3.2.xsd          \
&gt;                                                      xs:include
&gt;                                                      schemaLoc=
&gt;                                                           |
&gt;                                                      3.3.xsd
&gt; 
&gt; - -- 
&gt;        Henry S. Thompson, School of Informatics, University 
&gt; of Edinburgh
&gt;                          Half-time member of W3C Team
&gt;       10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 
&gt; 131 650-4440
&gt;                 Fax: (44) 131 651-1426, e-mail: <a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253C0EEB8721B466440E84B6516E8FBCA998%40Sealion%253E&amp;References=%253C0EEB8721B466440E84B6516E8FBCA998%40Sealion%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>
&gt;                        URL: http://www.ltg.ed.ac.uk/~ht/ 
&gt; [mail really from me _always_ has this .sig -- mail without 
&gt; it is forged spam] -----BEGIN PGP SIGNATURE-----
&gt; Version: GnuPG v1.2.6 (GNU/Linux)
&gt; 
&gt; iD8DBQFK0021kjnJixAXWBoRAmPMAJ9dLLKZsj+r2y/tUtIsJ/wAjuL0kQCfWwzT
&gt; LqnqG7FgzH5zwP3XMIrNsb4=
&gt; =vK80
&gt; -----END PGP SIGNATURE-----
&gt; 
</pre>
<span id="received"><dfn>Received on</dfn> Monday, 12 October 2009 16:48:52 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post06002.htm</link><pubDate>Mon, 12 Oct 2009 17:48:09 GMT</pubDate></item><item><title>Re: Escalation mechanism for different interpretation of W3C XML-Schema specification ? </title><description><![CDATA[<pre id="body">
<a name="start25" accesskey="j" id="start25"></a>-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Stimulated in equal measure by this thread, and a request from the XML
Security WG [0], I came up with my personal 'best practice' guideline
for <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">schema document</a> <a title="Building XML Schemas" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xmlschema1/xmlschema1.html">design for multi-namespace schemas</a>.  I include the
core bit below -- for the full context and a worked example, see my
reply to the DSIG WG [1].

ht

[0] http://lists.<a title="w3" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">w3</a>.org/Archives/Public/public-xmlsec/2009Oct/0019.html
[1] http://lists.w3.org/Archives/Public/public-xmlsec/2009Oct/0023.html
- -------------------------
HST's best practice guide for multiple-namespace schema composition

It's helpful in <a title="discussions" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/SSDN/default.asp">discussions</a> of this sort to be careful with
vocabulary:

  Schema document: An XML document in the W3C XML Schema namespace
  Schema: An abstract data object, typically composed from one or more
          schema documents according to the rules given in the W3C <a title="XML
          Schema specs" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/schema0/_index.htm">XML
          Schema specs</a>.

A schema document specifies either one or no target namespace.

A schema may well contain element &amp; attribute declarations and/or type
definitions for many target namespaces.

The W3C XML Schema specs provide a number of mechanisms for assembling
the schema documents needed to construct a schema for a particular
validation episode:

 1) the schemaLocation attribute on xs:include elements.
 2) xsi:schemaLocation (in the instance to be validated);
 3) the schemaLocation attribute on xs:import elements;
 4) the namespace URIs themselves (in the instance to be validated, or
    from the namespace attribute on xs:import elements);

Without going into the details of what's optional and what's required,
or of the range of choices implementations exhibit, here's my
recommendation for multi-namespace schemas:

1) For each namespace in your language, there should be one primary
   schema document.  It may be the only schema document for that
   namespace, or it may use xs:include (which must have a
   schemaLocation attribute) to allow for modular development by
   including multiple as-it-were secondary schema documents;

2) Whenever reference is made to names in another namespace from a
   primary or secondary schema document, use an xs:import _without_ a
   schemaLocation attribute;

3) Create a driver schema document, whose target namespace is the
   namespace of the (most common) document element of instance
   documents in the language.  It should contain an xs:include of the
   primary schema document for that namespace, and xs:imports for all
   the other namespaces, _with_ schemaLocation attributes pointing to
   the primary schema documents for those other namespaces.

Then, by passing the location of the driver schema document to <a title="schema
validation" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/open_xsd_validation.html">schema
validation</a> <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml/editor/">tools</a> and/or by including an xsi:schemaLocation attribute
on the document element of instances to be validated which associates
the target namespace of the driver schema document with its location,
you will get the behaviour you need from all the tools/implementations
I am aware of.

Schematically, this looks like

               driver.xsd -- TNS = http://www.example.org/rootNS
                              /|\
                             / | \
                            /  |  \
                           /   |   \
                   xs:include  |    \
                   schemaLoc=  |     \
                        /      |      \
                       /   xs:import   \
                      /    NS=...NS2    \
                     /     schemaLoc=    \
                    /          |       xs:import
                   /           |       NS=...NS3
                  /            |       schemaLoc=
                 /             |             \
            primary1.xsd   primary2.xsd  primary3.xsd
            TNS=...rootNS   TNS=...NS2    TNS=...NS3    
                 / \                         /|\
                /   \                       / | \
               /     \                     /  |  \
              /       \                   /   |   \
        xs:import  xs:import             /    |    \
        NS=...NS2  NS=...NS3      xs:include  |     \
                                  schemaLoc=  |      \
                                       /      |       \
                                  3.1.xsd     |        \
                                          xs:include    \
                                          schemaLoc=     \
                                              |           \
                                          3.2.xsd          \
                                                     xs:include
                                                     schemaLoc=
                                                          |
                                                     3.3.xsd

- -- 
       Henry S. Thompson, School of Informatics, University of Edinburgh
                         Half-time member of W3C Team
      10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
                Fax: (44) 131 651-1426, e-mail: <a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253Cf5bk4z0wrii.fsf%40hildegard.inf.ed.ac.uk%253E&amp;References=%253Cf5bk4z0wrii.fsf%40hildegard.inf.ed.ac.uk%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>
                       URL: http://www.ltg.ed.ac.uk/~ht/
[mail really from me _always_ has this .sig -- mail without it is forged spam]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)

iD8DBQFK0021kjnJixAXWBoRAmPMAJ9dLLKZsj+r2y/tUtIsJ/wAjuL0kQCfWwzT
LqnqG7FgzH5zwP3XMIrNsb4=
=vK80
-----END PGP SIGNATURE-----
</pre>
<span id="received"><dfn>Received on</dfn> Monday, 12 October 2009 15:40:18 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post05002.htm</link><pubDate>Mon, 12 Oct 2009 16:39:33 GMT</pubDate></item><item><title>[XML Schema 1.1] Two ways to create interleaved, any-order content  ... are they identical? </title><description><![CDATA[<pre id="body">
<a name="start27" accesskey="j" id="start27"></a>
Hi Folks,

Below are two ways to declare a &lt;<a title="Book" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_book.html">Book</a>&gt; element. 

Both versions use &lt;all&gt;, to permit the elements within &lt;Book&gt; to occur in any order. 

The first version uses an unbounded &lt;any&gt;. The second version uses interleaved open content. 

Are these two versions identical? If so, is there an advantage of one over the other? If they are not identical, how do they differ?

/Roger

 
VERSION #1

&lt;<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">xs:element</a> name=&quot;Book&quot;&gt;
    &lt;xs:complexType&gt;
        &lt;xs:all&gt;
            &lt;xs:any maxOccurs=&quot;unbounded&quot; /&gt;
            &lt;xs:element name=&quot;Author&quot; type=&quot;xs:string&quot; /&gt;
            &lt;xs:element name=&quot;Title&quot; type=&quot;xs:string&quot; /&gt;
            &lt;xs:element name=&quot;Date&quot; type=&quot;xs:string&quot; /&gt;
            &lt;xs:element name=&quot;ISBN&quot; type=&quot;xs:string&quot;/&gt;
            &lt;xs:element name=&quot;<a title="Stylus Studio XML Publisher" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml/publisher.html">Publisher</a>&quot; type=&quot;xs:string&quot; /&gt;
        &lt;/xs:all&gt;
    &lt;/xs:complexType&gt;
&lt;/xs:element&gt;
 

VERSION #2

&lt;xs:element name=&quot;Book&quot;&gt;
    &lt;xs:complexType&gt;
        &lt;xs:openContent mode=&quot;interleave&quot;&gt;
            &lt;xs:any /&gt;
        &lt;/xs:openContent&gt;
        &lt;xs:all&gt;
            &lt;xs:element name=&quot;Title&quot; type=&quot;xs:string&quot;/&gt;
            &lt;xs:element name=&quot;Author&quot; type=&quot;xs:string&quot; /&gt;
            &lt;xs:element name=&quot;Date&quot; type=&quot;xs:string&quot;/&gt;
            &lt;xs:element name=&quot;ISBN&quot; type=&quot;xs:string&quot;/&gt;
            &lt;xs:element name=&quot;Publisher&quot; type=&quot;xs:string&quot;/&gt;
        &lt;/xs:all&gt;
    &lt;/xs:complexType&gt;
&lt;/xs:element&gt;
</pre>
<span id="received"><dfn>Received on</dfn> Monday, 12 October 2009 17:01:11 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post07002.htm</link><pubDate>Mon, 12 Oct 2009 13:00:39 GMT</pubDate></item><item><title>RE: xsd ambigious </title><description><![CDATA[<pre id="body">
<a name="start24" accesskey="j" id="start24"></a>Hi Pete,

Good point. That sounds like a good idea.

Cheers for that,
Andy 

-----Original Message-----
From: <a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a> [mailto:<a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>] On Behalf Of Pete Cordell
Sent: 09 October 2009 10:03
To: Neill, Andrew
Cc: <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
Subject: Re: <a title="xsd" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">xsd</a> ambigious

Hi Andy,

In that case it might be more aesthetic to move the minOccurs to the outer 
xsd:choice so you get:

&lt;xsd:choice minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;&gt;

Pete.
----- Original Message ----- 
From: &quot;Neill, Andrew&quot; &lt;<a href="mailto:andy.neill&#x40;&#0115;&#0105;&#0101;&#0109;&#0101;&#0110;&#0115;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E">andy.neill&#x40;&#0115;&#0105;&#0101;&#0109;&#0101;&#0110;&#0115;&#0046;&#0099;&#0111;&#0109;</a>&gt;
To: &quot;Pete Cordell&quot; &lt;<a href="mailto:petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E">petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;</a>&gt;
Cc: &lt;<a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>&gt;
Sent: Friday, October 09, 2009 9:35 AM
Subject: RE: xsd ambigious



Hi Pete,

Thanks for that but I thought about it and although I wanted d to appear 
before e or f, it is possible to submit an <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_file_explorer.html">xml file</a> with none of these 
fields populated so I left it in there.

Cheers,
Andy

-----Original Message-----
From: Pete Cordell [mailto:<a href="mailto:petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E">petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;</a>]
Sent: 09 October 2009 09:33
To: Neill, Andrew
Cc: <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
Subject: Re: xsd ambigious

Hi Andy,

That's great.  Actually, I don't know whether you noticed already, but
looking at it again, I don't think the minOccurs=&quot;0&quot; on the xsd:sequence is
required.

HTH,

Pete.
----- Original Message ----- 
From: &quot;Neill, Andrew&quot; &lt;<a href="mailto:andy.neill&#x40;&#0115;&#0105;&#0101;&#0109;&#0101;&#0110;&#0115;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E">andy.neill&#x40;&#0115;&#0105;&#0101;&#0109;&#0101;&#0110;&#0115;&#0046;&#0099;&#0111;&#0109;</a>&gt;
To: &quot;Pete Cordell&quot; &lt;<a href="mailto:petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E">petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;</a>&gt;; &lt;<a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>&gt;
Sent: Thursday, October 08, 2009 11:11 AM
Subject: RE: xsd ambigious



Hi Pete,

That works. I don't know how I missed that.

Many Thanks,
Andy

-----Original Message-----
From: Pete Cordell [mailto:<a href="mailto:petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E">petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;</a>]
Sent: 08 October 2009 11:07
To: Neill, Andrew; <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
Subject: Re: xsd ambigious

Hi Andy,

Does something like the following work?
    ...
   &lt;xsd:choice maxOccurs=&quot;unbounded&quot;&gt;
    &lt;xsd:element ref=&quot;a&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;b&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;c&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:sequence minOccurs=&quot;0&quot;&gt;
        &lt;xsd:element ref=&quot;d&quot;/&gt;
        &lt;xsd:choice&gt;
            &lt;xsd:sequence&gt;
                 &lt;xsd:element ref=&quot;e&quot;/&gt;
                 &lt;xsd:element ref=&quot;f&quot; minOccurs=&quot;0&quot;/&gt;
            &lt;/xsd:sequence&gt;
            &lt;xsd:element ref=&quot;f&quot;/&gt;
        &lt;/xsd:choice&gt;
    &lt;/xsd:sequence&gt;
    ...

HTH,

Pete.
--
=============================================
Pete Cordell
Codalogic Ltd
Interface XML to C++ the easy way using XML C++
data binding to convert XSD schemas to C++ classes.
Visit http://codalogic.com/lmx/ or http://www.xml2cpp.com
for more info
=============================================

----- Original Message ----- 
From: &quot;Neill, Andrew&quot; &lt;<a href="mailto:andy.neill&#x40;&#0115;&#0105;&#0101;&#0109;&#0101;&#0110;&#0115;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E">andy.neill&#x40;&#0115;&#0105;&#0101;&#0109;&#0101;&#0110;&#0115;&#0046;&#0099;&#0111;&#0109;</a>&gt;
To: &lt;<a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4F5%40DEFTHW99E25MSX.ww902.siemens.net%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>&gt;
Sent: Wednesday, October 07, 2009 5:10 PM
Subject: xsd ambigious


Can anyone help with this XSD please? It doesnt seem to work?
Essentially i want to ensure that if &quot;E&quot; or &quot;F&quot; are populated then &quot;D&quot; is
populated before them. The rest of the elements can appear in any order and
any amount of times.

&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;xsd:schema xmlns:xsd=&quot;http://www.w3.org/2001/XMLSchema&quot;&gt;
  &lt;xsd:element name=&quot;element&quot;&gt;
  &lt;xsd:complexType&gt;
   &lt;xsd:choice maxOccurs=&quot;unbounded&quot;&gt;
    &lt;xsd:element ref=&quot;a&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;b&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;c&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:sequence&gt;
     &lt;xsd:element ref=&quot;d&quot;/&gt;
     &lt;xsd:element ref=&quot;e&quot;/&gt;
    &lt;/xsd:sequence&gt;
    &lt;xsd:sequence&gt;
     &lt;xsd:element ref=&quot;d&quot;/&gt;
     &lt;xsd:element ref=&quot;f&quot;/&gt;
    &lt;/xsd:sequence&gt;
   &lt;/xsd:choice&gt;
  &lt;/xsd:complexType&gt;
 &lt;/xsd:element&gt;
 &lt;xsd:element name=&quot;a&quot;/&gt;
 &lt;xsd:element name=&quot;b&quot;/&gt;
 &lt;xsd:element name=&quot;c&quot;/&gt;
 &lt;xsd:element name=&quot;d&quot;/&gt;
 &lt;xsd:element name=&quot;e&quot;/&gt;
 &lt;xsd:element name=&quot;f&quot;/&gt;
&lt;/xsd:schema&gt;

Many Thanks,
Andy
</pre>
<span id="received"><dfn>Received on</dfn> Friday,  9 October 2009 09:07:13 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post04002.htm</link><pubDate>Fri, 09 Oct 2009 11:05:50 GMT</pubDate></item><item><title>RE: xsd ambigious </title><description><![CDATA[<pre id="body">
<a name="start22" accesskey="j" id="start22"></a>Hi Pete,

Thanks for that but I thought about it and although I wanted d to appear before e or f, it is possible to submit an <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_file_explorer.html">xml file</a> with none of these fields populated so I left it in there.

Cheers,
Andy 

-----Original Message-----
From: Pete Cordell [mailto:<a href="mailto:petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4CA%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4CA%40DEFTHW99E25MSX.ww902.siemens.net%253E">petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;</a>] 
Sent: 09 October 2009 09:33
To: Neill, Andrew
Cc: <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4CA%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4CA%40DEFTHW99E25MSX.ww902.siemens.net%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
Subject: Re: <a title="xsd" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">xsd</a> ambigious

Hi Andy,

That's great.  Actually, I don't know whether you noticed already, but 
looking at it again, I don't think the minOccurs=&quot;0&quot; on the <a title="xsd:sequence" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">xsd:sequence</a> is 
required.

HTH,

Pete.
----- Original Message ----- 
From: &quot;Neill, Andrew&quot; &lt;<a href="mailto:andy.neill&#x40;&#0115;&#0105;&#0101;&#0109;&#0101;&#0110;&#0115;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4CA%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4CA%40DEFTHW99E25MSX.ww902.siemens.net%253E">andy.neill&#x40;&#0115;&#0105;&#0101;&#0109;&#0101;&#0110;&#0115;&#0046;&#0099;&#0111;&#0109;</a>&gt;
To: &quot;Pete Cordell&quot; &lt;<a href="mailto:petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4CA%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4CA%40DEFTHW99E25MSX.ww902.siemens.net%253E">petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;</a>&gt;; &lt;<a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4CA%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4CA%40DEFTHW99E25MSX.ww902.siemens.net%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>&gt;
Sent: Thursday, October 08, 2009 11:11 AM
Subject: RE: xsd ambigious



Hi Pete,

That works. I don't know how I missed that.

Many Thanks,
Andy

-----Original Message-----
From: Pete Cordell [mailto:<a href="mailto:petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4CA%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4CA%40DEFTHW99E25MSX.ww902.siemens.net%253E">petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;</a>]
Sent: 08 October 2009 11:07
To: Neill, Andrew; <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4CA%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4CA%40DEFTHW99E25MSX.ww902.siemens.net%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
Subject: Re: xsd ambigious

Hi Andy,

Does something like the following work?
    ...
   &lt;xsd:choice maxOccurs=&quot;unbounded&quot;&gt;
    &lt;xsd:element ref=&quot;a&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;b&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;c&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:sequence minOccurs=&quot;0&quot;&gt;
        &lt;xsd:element ref=&quot;d&quot;/&gt;
        &lt;xsd:choice&gt;
            &lt;xsd:sequence&gt;
                 &lt;xsd:element ref=&quot;e&quot;/&gt;
                 &lt;xsd:element ref=&quot;f&quot; minOccurs=&quot;0&quot;/&gt;
            &lt;/xsd:sequence&gt;
            &lt;xsd:element ref=&quot;f&quot;/&gt;
        &lt;/xsd:choice&gt;
    &lt;/xsd:sequence&gt;
    ...

HTH,

Pete.
--
=============================================
Pete Cordell
Codalogic Ltd
Interface XML to C++ the easy way using XML C++
data binding to convert XSD schemas to C++ classes.
Visit http://codalogic.com/lmx/ or http://www.xml2cpp.com
for more info
=============================================

----- Original Message ----- 
From: &quot;Neill, Andrew&quot; &lt;<a href="mailto:andy.neill&#x40;&#0115;&#0105;&#0101;&#0109;&#0101;&#0110;&#0115;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4CA%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4CA%40DEFTHW99E25MSX.ww902.siemens.net%253E">andy.neill&#x40;&#0115;&#0105;&#0101;&#0109;&#0101;&#0110;&#0115;&#0046;&#0099;&#0111;&#0109;</a>&gt;
To: &lt;<a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4CA%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A4CA%40DEFTHW99E25MSX.ww902.siemens.net%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>&gt;
Sent: Wednesday, October 07, 2009 5:10 PM
Subject: xsd ambigious


Can anyone help with this XSD please? It doesnt seem to work?
Essentially i want to ensure that if &quot;E&quot; or &quot;F&quot; are populated then &quot;D&quot; is
populated before them. The rest of the elements can appear in any order and
any amount of times.

&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;xsd:schema xmlns:xsd=&quot;http://www.w3.org/2001/XMLSchema&quot;&gt;
  &lt;xsd:element name=&quot;element&quot;&gt;
  &lt;xsd:complexType&gt;
   &lt;xsd:choice maxOccurs=&quot;unbounded&quot;&gt;
    &lt;xsd:element ref=&quot;a&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;b&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;c&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:sequence&gt;
     &lt;xsd:element ref=&quot;d&quot;/&gt;
     &lt;xsd:element ref=&quot;e&quot;/&gt;
    &lt;/xsd:sequence&gt;
    &lt;xsd:sequence&gt;
     &lt;xsd:element ref=&quot;d&quot;/&gt;
     &lt;xsd:element ref=&quot;f&quot;/&gt;
    &lt;/xsd:sequence&gt;
   &lt;/xsd:choice&gt;
  &lt;/xsd:complexType&gt;
 &lt;/xsd:element&gt;
 &lt;xsd:element name=&quot;a&quot;/&gt;
 &lt;xsd:element name=&quot;b&quot;/&gt;
 &lt;xsd:element name=&quot;c&quot;/&gt;
 &lt;xsd:element name=&quot;d&quot;/&gt;
 &lt;xsd:element name=&quot;e&quot;/&gt;
 &lt;xsd:element name=&quot;f&quot;/&gt;
&lt;/xsd:schema&gt;

Many Thanks,
Andy
</pre>
<span id="received"><dfn>Received on</dfn> Friday,  9 October 2009 08:36:28 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post02002.htm</link><pubDate>Fri, 09 Oct 2009 10:35:50 GMT</pubDate></item><item><title>Re: xsd ambigious </title><description><![CDATA[<pre id="body">
<a name="start23" accesskey="j" id="start23"></a>Hi Andy,

In that case it might be more aesthetic to move the minOccurs to the outer 
<a title="xsd" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">xsd</a>:choice so you get:

&lt;xsd:choice minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;&gt;

Pete.
----- Original Message ----- 
From: &quot;Neill, Andrew&quot; &lt;<a href="mailto:andy.neill&#x40;&#0115;&#0105;&#0101;&#0109;&#0101;&#0110;&#0115;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20xsd%20ambigious&amp;In-Reply-To=%253C8AA0EF47FF0C409D8CDC3D913120739E%40Codalogic%253E&amp;References=%253C8AA0EF47FF0C409D8CDC3D913120739E%40Codalogic%253E">andy.neill&#x40;&#0115;&#0105;&#0101;&#0109;&#0101;&#0110;&#0115;&#0046;&#0099;&#0111;&#0109;</a>&gt;
To: &quot;Pete Cordell&quot; &lt;<a href="mailto:petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20xsd%20ambigious&amp;In-Reply-To=%253C8AA0EF47FF0C409D8CDC3D913120739E%40Codalogic%253E&amp;References=%253C8AA0EF47FF0C409D8CDC3D913120739E%40Codalogic%253E">petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;</a>&gt;
Cc: &lt;<a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20xsd%20ambigious&amp;In-Reply-To=%253C8AA0EF47FF0C409D8CDC3D913120739E%40Codalogic%253E&amp;References=%253C8AA0EF47FF0C409D8CDC3D913120739E%40Codalogic%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>&gt;
Sent: Friday, October 09, 2009 9:35 AM
Subject: RE: xsd ambigious



Hi Pete,

Thanks for that but I thought about it and although I wanted d to appear 
before e or f, it is possible to submit an <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_file_explorer.html">xml file</a> with none of these 
fields populated so I left it in there.

Cheers,
Andy

-----Original Message-----
From: Pete Cordell [mailto:<a href="mailto:petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20xsd%20ambigious&amp;In-Reply-To=%253C8AA0EF47FF0C409D8CDC3D913120739E%40Codalogic%253E&amp;References=%253C8AA0EF47FF0C409D8CDC3D913120739E%40Codalogic%253E">petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;</a>]
Sent: 09 October 2009 09:33
To: Neill, Andrew
Cc: <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20xsd%20ambigious&amp;In-Reply-To=%253C8AA0EF47FF0C409D8CDC3D913120739E%40Codalogic%253E&amp;References=%253C8AA0EF47FF0C409D8CDC3D913120739E%40Codalogic%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
Subject: Re: xsd ambigious

Hi Andy,

That's great.  Actually, I don't know whether you noticed already, but
looking at it again, I don't think the minOccurs=&quot;0&quot; on the <a title="xsd:sequence" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">xsd:sequence</a> is
required.

HTH,

Pete.
----- Original Message ----- 
From: &quot;Neill, Andrew&quot; &lt;<a href="mailto:andy.neill&#x40;&#0115;&#0105;&#0101;&#0109;&#0101;&#0110;&#0115;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20xsd%20ambigious&amp;In-Reply-To=%253C8AA0EF47FF0C409D8CDC3D913120739E%40Codalogic%253E&amp;References=%253C8AA0EF47FF0C409D8CDC3D913120739E%40Codalogic%253E">andy.neill&#x40;&#0115;&#0105;&#0101;&#0109;&#0101;&#0110;&#0115;&#0046;&#0099;&#0111;&#0109;</a>&gt;
To: &quot;Pete Cordell&quot; &lt;<a href="mailto:petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20xsd%20ambigious&amp;In-Reply-To=%253C8AA0EF47FF0C409D8CDC3D913120739E%40Codalogic%253E&amp;References=%253C8AA0EF47FF0C409D8CDC3D913120739E%40Codalogic%253E">petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;</a>&gt;; &lt;<a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20xsd%20ambigious&amp;In-Reply-To=%253C8AA0EF47FF0C409D8CDC3D913120739E%40Codalogic%253E&amp;References=%253C8AA0EF47FF0C409D8CDC3D913120739E%40Codalogic%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>&gt;
Sent: Thursday, October 08, 2009 11:11 AM
Subject: RE: xsd ambigious



Hi Pete,

That works. I don't know how I missed that.

Many Thanks,
Andy

-----Original Message-----
From: Pete Cordell [mailto:<a href="mailto:petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20xsd%20ambigious&amp;In-Reply-To=%253C8AA0EF47FF0C409D8CDC3D913120739E%40Codalogic%253E&amp;References=%253C8AA0EF47FF0C409D8CDC3D913120739E%40Codalogic%253E">petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;</a>]
Sent: 08 October 2009 11:07
To: Neill, Andrew; <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20xsd%20ambigious&amp;In-Reply-To=%253C8AA0EF47FF0C409D8CDC3D913120739E%40Codalogic%253E&amp;References=%253C8AA0EF47FF0C409D8CDC3D913120739E%40Codalogic%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
Subject: Re: xsd ambigious

Hi Andy,

Does something like the following work?
    ...
   &lt;xsd:choice maxOccurs=&quot;unbounded&quot;&gt;
    &lt;xsd:element ref=&quot;a&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;b&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;c&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:sequence minOccurs=&quot;0&quot;&gt;
        &lt;xsd:element ref=&quot;d&quot;/&gt;
        &lt;xsd:choice&gt;
            &lt;xsd:sequence&gt;
                 &lt;xsd:element ref=&quot;e&quot;/&gt;
                 &lt;xsd:element ref=&quot;f&quot; minOccurs=&quot;0&quot;/&gt;
            &lt;/xsd:sequence&gt;
            &lt;xsd:element ref=&quot;f&quot;/&gt;
        &lt;/xsd:choice&gt;
    &lt;/xsd:sequence&gt;
    ...

HTH,

Pete.
--
=============================================
Pete Cordell
Codalogic Ltd
Interface XML to C++ the easy way using XML C++
data binding to convert XSD schemas to C++ classes.
Visit http://codalogic.com/lmx/ or http://www.xml2cpp.com
for more info
=============================================

----- Original Message ----- 
From: &quot;Neill, Andrew&quot; &lt;<a href="mailto:andy.neill&#x40;&#0115;&#0105;&#0101;&#0109;&#0101;&#0110;&#0115;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20xsd%20ambigious&amp;In-Reply-To=%253C8AA0EF47FF0C409D8CDC3D913120739E%40Codalogic%253E&amp;References=%253C8AA0EF47FF0C409D8CDC3D913120739E%40Codalogic%253E">andy.neill&#x40;&#0115;&#0105;&#0101;&#0109;&#0101;&#0110;&#0115;&#0046;&#0099;&#0111;&#0109;</a>&gt;
To: &lt;<a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20xsd%20ambigious&amp;In-Reply-To=%253C8AA0EF47FF0C409D8CDC3D913120739E%40Codalogic%253E&amp;References=%253C8AA0EF47FF0C409D8CDC3D913120739E%40Codalogic%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>&gt;
Sent: Wednesday, October 07, 2009 5:10 PM
Subject: xsd ambigious


Can anyone help with this XSD please? It doesnt seem to work?
Essentially i want to ensure that if &quot;E&quot; or &quot;F&quot; are populated then &quot;D&quot; is
populated before them. The rest of the elements can appear in any order and
any amount of times.

&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;xsd:schema xmlns:xsd=&quot;http://www.w3.org/2001/XMLSchema&quot;&gt;
  &lt;xsd:element name=&quot;element&quot;&gt;
  &lt;xsd:complexType&gt;
   &lt;xsd:choice maxOccurs=&quot;unbounded&quot;&gt;
    &lt;xsd:element ref=&quot;a&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;b&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;c&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:sequence&gt;
     &lt;xsd:element ref=&quot;d&quot;/&gt;
     &lt;xsd:element ref=&quot;e&quot;/&gt;
    &lt;/xsd:sequence&gt;
    &lt;xsd:sequence&gt;
     &lt;xsd:element ref=&quot;d&quot;/&gt;
     &lt;xsd:element ref=&quot;f&quot;/&gt;
    &lt;/xsd:sequence&gt;
   &lt;/xsd:choice&gt;
  &lt;/xsd:complexType&gt;
 &lt;/xsd:element&gt;
 &lt;xsd:element name=&quot;a&quot;/&gt;
 &lt;xsd:element name=&quot;b&quot;/&gt;
 &lt;xsd:element name=&quot;c&quot;/&gt;
 &lt;xsd:element name=&quot;d&quot;/&gt;
 &lt;xsd:element name=&quot;e&quot;/&gt;
 &lt;xsd:element name=&quot;f&quot;/&gt;
&lt;/xsd:schema&gt;

Many Thanks,
Andy
</pre>
<span id="received"><dfn>Received on</dfn> Friday,  9 October 2009 09:03:30 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post03002.htm</link><pubDate>Fri, 09 Oct 2009 10:02:46 GMT</pubDate></item><item><title>Re: xsd ambigious </title><description><![CDATA[<pre id="body">
<a name="start21" accesskey="j" id="start21"></a>Hi Andy,

That's great.  Actually, I don't know whether you noticed already, but 
looking at it again, I don't think the minOccurs=&quot;0&quot; on the <a title="xsd:sequence" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">xsd:sequence</a> is 
required.

HTH,

Pete.
----- Original Message ----- 
From: &quot;Neill, Andrew&quot; &lt;<a href="mailto:andy.neill&#x40;&#0115;&#0105;&#0101;&#0109;&#0101;&#0110;&#0115;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20xsd%20ambigious&amp;In-Reply-To=%253CB9D366DD56A64EDEAFD1E655C76F39F1%40Codalogic%253E&amp;References=%253CB9D366DD56A64EDEAFD1E655C76F39F1%40Codalogic%253E">andy.neill&#x40;&#0115;&#0105;&#0101;&#0109;&#0101;&#0110;&#0115;&#0046;&#0099;&#0111;&#0109;</a>&gt;
To: &quot;Pete Cordell&quot; &lt;<a href="mailto:petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20xsd%20ambigious&amp;In-Reply-To=%253CB9D366DD56A64EDEAFD1E655C76F39F1%40Codalogic%253E&amp;References=%253CB9D366DD56A64EDEAFD1E655C76F39F1%40Codalogic%253E">petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;</a>&gt;; &lt;<a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20xsd%20ambigious&amp;In-Reply-To=%253CB9D366DD56A64EDEAFD1E655C76F39F1%40Codalogic%253E&amp;References=%253CB9D366DD56A64EDEAFD1E655C76F39F1%40Codalogic%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>&gt;
Sent: Thursday, October 08, 2009 11:11 AM
Subject: RE: xsd ambigious



Hi Pete,

That works. I don't know how I missed that.

Many Thanks,
Andy

-----Original Message-----
From: Pete Cordell [mailto:<a href="mailto:petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20xsd%20ambigious&amp;In-Reply-To=%253CB9D366DD56A64EDEAFD1E655C76F39F1%40Codalogic%253E&amp;References=%253CB9D366DD56A64EDEAFD1E655C76F39F1%40Codalogic%253E">petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;</a>]
Sent: 08 October 2009 11:07
To: Neill, Andrew; <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20xsd%20ambigious&amp;In-Reply-To=%253CB9D366DD56A64EDEAFD1E655C76F39F1%40Codalogic%253E&amp;References=%253CB9D366DD56A64EDEAFD1E655C76F39F1%40Codalogic%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
Subject: Re: xsd ambigious

Hi Andy,

Does something like the following work?
    ...
   &lt;xsd:choice maxOccurs=&quot;unbounded&quot;&gt;
    &lt;xsd:element ref=&quot;a&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;b&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;c&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:sequence minOccurs=&quot;0&quot;&gt;
        &lt;xsd:element ref=&quot;d&quot;/&gt;
        &lt;xsd:choice&gt;
            &lt;xsd:sequence&gt;
                 &lt;xsd:element ref=&quot;e&quot;/&gt;
                 &lt;xsd:element ref=&quot;f&quot; minOccurs=&quot;0&quot;/&gt;
            &lt;/xsd:sequence&gt;
            &lt;xsd:element ref=&quot;f&quot;/&gt;
        &lt;/xsd:choice&gt;
    &lt;/xsd:sequence&gt;
    ...

HTH,

Pete.
--
=============================================
Pete Cordell
Codalogic Ltd
Interface <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">XML</a> to C++ the easy way using XML C++
<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/jaxb.html">data binding</a> to <a title="convert" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/convert_to_xml.html">convert</a> XSD schemas to C++ classes.
Visit http://codalogic.com/lmx/ or http://www.xml2cpp.com
for more info
=============================================

----- Original Message ----- 
From: &quot;Neill, Andrew&quot; &lt;<a href="mailto:andy.neill&#x40;&#0115;&#0105;&#0101;&#0109;&#0101;&#0110;&#0115;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20xsd%20ambigious&amp;In-Reply-To=%253CB9D366DD56A64EDEAFD1E655C76F39F1%40Codalogic%253E&amp;References=%253CB9D366DD56A64EDEAFD1E655C76F39F1%40Codalogic%253E">andy.neill&#x40;&#0115;&#0105;&#0101;&#0109;&#0101;&#0110;&#0115;&#0046;&#0099;&#0111;&#0109;</a>&gt;
To: &lt;<a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20xsd%20ambigious&amp;In-Reply-To=%253CB9D366DD56A64EDEAFD1E655C76F39F1%40Codalogic%253E&amp;References=%253CB9D366DD56A64EDEAFD1E655C76F39F1%40Codalogic%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>&gt;
Sent: Wednesday, October 07, 2009 5:10 PM
Subject: xsd ambigious


Can anyone help with this XSD please? It doesnt seem to work?
Essentially i want to ensure that if &quot;E&quot; or &quot;F&quot; are populated then &quot;D&quot; is
populated before them. The rest of the elements can appear in any order and
any amount of times.

&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;xsd:schema xmlns:xsd=&quot;http://www.w3.org/2001/XMLSchema&quot;&gt;
  &lt;xsd:element name=&quot;element&quot;&gt;
  &lt;xsd:complexType&gt;
   &lt;xsd:choice maxOccurs=&quot;unbounded&quot;&gt;
    &lt;xsd:element ref=&quot;a&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;b&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;c&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:sequence&gt;
     &lt;xsd:element ref=&quot;d&quot;/&gt;
     &lt;xsd:element ref=&quot;e&quot;/&gt;
    &lt;/xsd:sequence&gt;
    &lt;xsd:sequence&gt;
     &lt;xsd:element ref=&quot;d&quot;/&gt;
     &lt;xsd:element ref=&quot;f&quot;/&gt;
    &lt;/xsd:sequence&gt;
   &lt;/xsd:choice&gt;
  &lt;/xsd:complexType&gt;
 &lt;/xsd:element&gt;
 &lt;xsd:element name=&quot;a&quot;/&gt;
 &lt;xsd:element name=&quot;b&quot;/&gt;
 &lt;xsd:element name=&quot;c&quot;/&gt;
 &lt;xsd:element name=&quot;d&quot;/&gt;
 &lt;xsd:element name=&quot;e&quot;/&gt;
 &lt;xsd:element name=&quot;f&quot;/&gt;
&lt;/xsd:schema&gt;

Many Thanks,
Andy
</pre>
<span id="received"><dfn>Received on</dfn> Friday,  9 October 2009 08:33:29 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post01002.htm</link><pubDate>Fri, 09 Oct 2009 09:32:39 GMT</pubDate></item><item><title>Re: xsd ambigious </title><description><![CDATA[<pre id="body">
<a name="start16" accesskey="j" id="start16"></a>Hi Andy,

You can have a first any of a, b, c any number of times and then follow 
them optionally with d followed by any of a, b, c, e, f any number of times:

&lt;?<a title="xml" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">xml</a> version=&quot;1.0&quot; <a title="encoding" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_other.html">encoding</a>=&quot;UTF-8&quot;?&gt;
&lt;<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">xsd:schema</a> xmlns:xsd=&quot;http://www.<a title="w3" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">w3</a>.org/2001/XMLSchema&quot;&gt;
     &lt;xsd:element name=&quot;element&quot;&gt;
         &lt;xsd:complexType&gt;
             &lt;xsd:sequence&gt;
                 &lt;xsd:choice maxOccurs=&quot;unbounded&quot; minOccurs=&quot;0&quot;&gt;
                     &lt;xsd:element ref=&quot;a&quot;/&gt;
                     &lt;xsd:element ref=&quot;b&quot;/&gt;
                     &lt;xsd:element ref=&quot;c&quot;/&gt;
                 &lt;/xsd:choice&gt;
                 &lt;xsd:sequence minOccurs=&quot;0&quot;&gt;
                     &lt;xsd:element ref=&quot;d&quot;/&gt;
                     &lt;xsd:choice maxOccurs=&quot;unbounded&quot; minOccurs=&quot;0&quot;&gt;
                         &lt;xsd:element ref=&quot;a&quot;/&gt;
                         &lt;xsd:element ref=&quot;b&quot;/&gt;
                         &lt;xsd:element ref=&quot;c&quot;/&gt;
                         &lt;xsd:element ref=&quot;e&quot;/&gt;
                         &lt;xsd:element ref=&quot;f&quot;/&gt;
                     &lt;/xsd:choice&gt;
                 &lt;/xsd:sequence&gt;
             &lt;/xsd:sequence&gt;
         &lt;/xsd:complexType&gt;
     &lt;/xsd:element&gt;
     &lt;xsd:element name=&quot;a&quot;/&gt;
     &lt;xsd:element name=&quot;b&quot;/&gt;
     &lt;xsd:element name=&quot;c&quot;/&gt;
     &lt;xsd:element name=&quot;d&quot;/&gt;
     &lt;xsd:element name=&quot;e&quot;/&gt;
     &lt;xsd:element name=&quot;f&quot;/&gt;
&lt;/xsd:schema&gt;

Best Regards,
George
-- 
George Cristian Bina
&lt;oXygen/&gt; <a title="Best XML Editor" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/">XML Editor</a>, Schema <a title="Building XSLT Stylesheet Applications" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xsltedit1/xsltedit1.html">Editor and XSLT</a> Editor/Debugger
http://www.oxygenxml.com

Neill, Andrew wrote:
&gt; Can anyone help with this XSD please? It doesnt seem to work?
&gt; Essentially i want to ensure that if &quot;E&quot; or &quot;F&quot; are populated then &quot;D&quot; 
&gt; is populated before them. The rest of the elements can appear in any 
&gt; order and any amount of times.
&gt;  
&gt; &lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&gt; &lt;xsd:schema xmlns:xsd=&quot;http://www.w3.org/2001/XMLSchema&quot;&gt;
&gt;   &lt;xsd:element name=&quot;element&quot;&gt;
&gt;   &lt;xsd:complexType&gt;
&gt;    &lt;xsd:choice maxOccurs=&quot;unbounded&quot;&gt;
&gt;     &lt;xsd:element ref=&quot;a&quot; minOccurs=&quot;0&quot;/&gt;
&gt;     &lt;xsd:element ref=&quot;b&quot; minOccurs=&quot;0&quot;/&gt;
&gt;     &lt;xsd:element ref=&quot;c&quot; minOccurs=&quot;0&quot;/&gt;
&gt;     &lt;xsd:sequence&gt;
&gt;      &lt;xsd:element ref=&quot;d&quot;/&gt;
&gt;      &lt;xsd:element ref=&quot;e&quot;/&gt;
&gt;     &lt;/xsd:sequence&gt;
&gt;     &lt;xsd:sequence&gt;
&gt;      &lt;xsd:element ref=&quot;d&quot;/&gt;
&gt;      &lt;xsd:element ref=&quot;f&quot;/&gt;
&gt;     &lt;/xsd:sequence&gt;
&gt;    &lt;/xsd:choice&gt;
&gt;   &lt;/xsd:complexType&gt;
&gt;  &lt;/xsd:element&gt;
&gt;  &lt;xsd:element name=&quot;a&quot;/&gt;
&gt;  &lt;xsd:element name=&quot;b&quot;/&gt;
&gt;  &lt;xsd:element name=&quot;c&quot;/&gt;
&gt;  &lt;xsd:element name=&quot;d&quot;/&gt;
&gt;  &lt;xsd:element name=&quot;e&quot;/&gt;
&gt;  &lt;xsd:element name=&quot;f&quot;/&gt;
&gt; &lt;/xsd:schema&gt;
&gt; 
&gt; Many Thanks,
&gt; Andy
</pre>
<span id="received"><dfn>Received on</dfn> Thursday,  8 October 2009 10:07:20 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post06001.htm</link><pubDate>Thu, 08 Oct 2009 13:06:47 GMT</pubDate></item><item><title>RE: xsd ambigious </title><description><![CDATA[<pre id="body">
<a name="start19" accesskey="j" id="start19"></a>Hi George,

Thanks for that. I have been looking at this <a title="schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">schema</a> too long and missed that.

Thanks for your help.
Andy 

-----Original Message-----
From: George Cristian Bina [mailto:<a href="mailto:george&#x40;&#0111;&#0120;&#0121;&#0103;&#0101;&#0110;&#0120;&#0109;&#0108;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A2CA%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A2CA%40DEFTHW99E25MSX.ww902.siemens.net%253E">george&#x40;&#0111;&#0120;&#0121;&#0103;&#0101;&#0110;&#0120;&#0109;&#0108;&#0046;&#0099;&#0111;&#0109;</a>] 
Sent: 08 October 2009 11:07
To: Neill, Andrew
Cc: <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A2CA%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A2CA%40DEFTHW99E25MSX.ww902.siemens.net%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
Subject: Re: xsd ambigious

Hi Andy,

You can have a first any of a, b, c any number of times and then follow 
them optionally with d followed by any of a, b, c, e, f any number of times:

&lt;?<a title="xml" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">xml</a> version=&quot;1.0&quot; <a title="encoding" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_other.html">encoding</a>=&quot;UTF-8&quot;?&gt;
&lt;<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">xsd:schema</a> xmlns:xsd=&quot;http://www.<a title="w3" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">w3</a>.org/2001/XMLSchema&quot;&gt;
     &lt;xsd:element name=&quot;element&quot;&gt;
         &lt;xsd:complexType&gt;
             &lt;xsd:sequence&gt;
                 &lt;xsd:choice maxOccurs=&quot;unbounded&quot; minOccurs=&quot;0&quot;&gt;
                     &lt;xsd:element ref=&quot;a&quot;/&gt;
                     &lt;xsd:element ref=&quot;b&quot;/&gt;
                     &lt;xsd:element ref=&quot;c&quot;/&gt;
                 &lt;/xsd:choice&gt;
                 &lt;xsd:sequence minOccurs=&quot;0&quot;&gt;
                     &lt;xsd:element ref=&quot;d&quot;/&gt;
                     &lt;xsd:choice maxOccurs=&quot;unbounded&quot; minOccurs=&quot;0&quot;&gt;
                         &lt;xsd:element ref=&quot;a&quot;/&gt;
                         &lt;xsd:element ref=&quot;b&quot;/&gt;
                         &lt;xsd:element ref=&quot;c&quot;/&gt;
                         &lt;xsd:element ref=&quot;e&quot;/&gt;
                         &lt;xsd:element ref=&quot;f&quot;/&gt;
                     &lt;/xsd:choice&gt;
                 &lt;/xsd:sequence&gt;
             &lt;/xsd:sequence&gt;
         &lt;/xsd:complexType&gt;
     &lt;/xsd:element&gt;
     &lt;xsd:element name=&quot;a&quot;/&gt;
     &lt;xsd:element name=&quot;b&quot;/&gt;
     &lt;xsd:element name=&quot;c&quot;/&gt;
     &lt;xsd:element name=&quot;d&quot;/&gt;
     &lt;xsd:element name=&quot;e&quot;/&gt;
     &lt;xsd:element name=&quot;f&quot;/&gt;
&lt;/xsd:schema&gt;

Best Regards,
George
-- 
George Cristian Bina
&lt;oXygen/&gt; <a title="Best XML Editor" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/">XML Editor</a>, Schema <a title="Building XSLT Stylesheet Applications" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xsltedit1/xsltedit1.html">Editor and XSLT</a> Editor/Debugger
http://www.oxygenxml.com

Neill, Andrew wrote:
&gt; Can anyone help with this XSD please? It doesnt seem to work?
&gt; Essentially i want to ensure that if &quot;E&quot; or &quot;F&quot; are populated then &quot;D&quot; 
&gt; is populated before them. The rest of the elements can appear in any 
&gt; order and any amount of times.
&gt;  
&gt; &lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&gt; &lt;xsd:schema xmlns:xsd=&quot;http://www.w3.org/2001/XMLSchema&quot;&gt;
&gt;   &lt;xsd:element name=&quot;element&quot;&gt;
&gt;   &lt;xsd:complexType&gt;
&gt;    &lt;xsd:choice maxOccurs=&quot;unbounded&quot;&gt;
&gt;     &lt;xsd:element ref=&quot;a&quot; minOccurs=&quot;0&quot;/&gt;
&gt;     &lt;xsd:element ref=&quot;b&quot; minOccurs=&quot;0&quot;/&gt;
&gt;     &lt;xsd:element ref=&quot;c&quot; minOccurs=&quot;0&quot;/&gt;
&gt;     &lt;xsd:sequence&gt;
&gt;      &lt;xsd:element ref=&quot;d&quot;/&gt;
&gt;      &lt;xsd:element ref=&quot;e&quot;/&gt;
&gt;     &lt;/xsd:sequence&gt;
&gt;     &lt;xsd:sequence&gt;
&gt;      &lt;xsd:element ref=&quot;d&quot;/&gt;
&gt;      &lt;xsd:element ref=&quot;f&quot;/&gt;
&gt;     &lt;/xsd:sequence&gt;
&gt;    &lt;/xsd:choice&gt;
&gt;   &lt;/xsd:complexType&gt;
&gt;  &lt;/xsd:element&gt;
&gt;  &lt;xsd:element name=&quot;a&quot;/&gt;
&gt;  &lt;xsd:element name=&quot;b&quot;/&gt;
&gt;  &lt;xsd:element name=&quot;c&quot;/&gt;
&gt;  &lt;xsd:element name=&quot;d&quot;/&gt;
&gt;  &lt;xsd:element name=&quot;e&quot;/&gt;
&gt;  &lt;xsd:element name=&quot;f&quot;/&gt;
&gt; &lt;/xsd:schema&gt;
&gt; 
&gt; Many Thanks,
&gt; Andy
</pre>
<span id="received"><dfn>Received on</dfn> Thursday,  8 October 2009 10:12:59 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post09001.htm</link><pubDate>Thu, 08 Oct 2009 12:12:26 GMT</pubDate></item><item><title>RE: xsd ambigious </title><description><![CDATA[<pre id="body">
<a name="start18" accesskey="j" id="start18"></a>Hi Pete,

That works. I don't know how I missed that.

Many Thanks,
Andy 

-----Original Message-----
From: Pete Cordell [mailto:<a href="mailto:petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A2C8%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A2C8%40DEFTHW99E25MSX.ww902.siemens.net%253E">petexmldev&#x40;&#0099;&#0111;&#0100;&#0097;&#0108;&#0111;&#0103;&#0105;&#0099;&#0046;&#0099;&#0111;&#0109;</a>] 
Sent: 08 October 2009 11:07
To: Neill, Andrew; <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A2C8%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A2C8%40DEFTHW99E25MSX.ww902.siemens.net%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
Subject: Re: <a title="xsd" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">xsd</a> ambigious

Hi Andy,

Does something like the following work?
    ...
   &lt;xsd:choice maxOccurs=&quot;unbounded&quot;&gt;
    &lt;<a title="xsd:element" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">xsd:element</a> ref=&quot;a&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;b&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;c&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:sequence minOccurs=&quot;0&quot;&gt;
        &lt;xsd:element ref=&quot;d&quot;/&gt;
        &lt;xsd:choice&gt;
            &lt;xsd:sequence&gt;
                 &lt;xsd:element ref=&quot;e&quot;/&gt;
                 &lt;xsd:element ref=&quot;f&quot; minOccurs=&quot;0&quot;/&gt;
            &lt;/xsd:sequence&gt;
            &lt;xsd:element ref=&quot;f&quot;/&gt;
        &lt;/xsd:choice&gt;
    &lt;/xsd:sequence&gt;
    ...

HTH,

Pete.
--
=============================================
Pete Cordell
Codalogic Ltd
Interface <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">XML</a> to C++ the easy way using XML C++
<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/jaxb.html">data binding</a> to <a title="convert" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/convert_to_xml.html">convert</a> XSD schemas to C++ classes.
Visit http://codalogic.com/lmx/ or http://www.xml2cpp.com
for more info
=============================================

----- Original Message ----- 
From: &quot;Neill, Andrew&quot; &lt;<a href="mailto:andy.neill&#x40;&#0115;&#0105;&#0101;&#0109;&#0101;&#0110;&#0115;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A2C8%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A2C8%40DEFTHW99E25MSX.ww902.siemens.net%253E">andy.neill&#x40;&#0115;&#0105;&#0101;&#0109;&#0101;&#0110;&#0115;&#0046;&#0099;&#0111;&#0109;</a>&gt;
To: &lt;<a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20xsd%20ambigious&amp;In-Reply-To=%253C282CDBCE38E0B84292AB394C0E7AC5373843A2C8%40DEFTHW99E25MSX.ww902.siemens.net%253E&amp;References=%253C282CDBCE38E0B84292AB394C0E7AC5373843A2C8%40DEFTHW99E25MSX.ww902.siemens.net%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>&gt;
Sent: Wednesday, October 07, 2009 5:10 PM
Subject: xsd ambigious


Can anyone help with this XSD please? It doesnt seem to work?
Essentially i want to ensure that if &quot;E&quot; or &quot;F&quot; are populated then &quot;D&quot; is 
populated before them. The rest of the elements can appear in any order and 
any amount of times.

&lt;?xml version=&quot;1.0&quot; <a title="encoding" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_other.html">encoding</a>=&quot;UTF-8&quot;?&gt;
&lt;xsd:schema xmlns:xsd=&quot;http://www.w3.org/2001/XMLSchema&quot;&gt;
  &lt;xsd:element name=&quot;element&quot;&gt;
  &lt;xsd:complexType&gt;
   &lt;xsd:choice maxOccurs=&quot;unbounded&quot;&gt;
    &lt;xsd:element ref=&quot;a&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;b&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;c&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:sequence&gt;
     &lt;xsd:element ref=&quot;d&quot;/&gt;
     &lt;xsd:element ref=&quot;e&quot;/&gt;
    &lt;/xsd:sequence&gt;
    &lt;xsd:sequence&gt;
     &lt;xsd:element ref=&quot;d&quot;/&gt;
     &lt;xsd:element ref=&quot;f&quot;/&gt;
    &lt;/xsd:sequence&gt;
   &lt;/xsd:choice&gt;
  &lt;/xsd:complexType&gt;
 &lt;/xsd:element&gt;
 &lt;xsd:element name=&quot;a&quot;/&gt;
 &lt;xsd:element name=&quot;b&quot;/&gt;
 &lt;xsd:element name=&quot;c&quot;/&gt;
 &lt;xsd:element name=&quot;d&quot;/&gt;
 &lt;xsd:element name=&quot;e&quot;/&gt;
 &lt;xsd:element name=&quot;f&quot;/&gt;
&lt;/xsd:schema&gt;

Many Thanks,
Andy
</pre>
<span id="received"><dfn>Received on</dfn> Thursday,  8 October 2009 10:11:46 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post08001.htm</link><pubDate>Thu, 08 Oct 2009 12:11:11 GMT</pubDate></item><item><title>Re: xsd ambigious </title><description><![CDATA[<pre id="body">
<a name="start17" accesskey="j" id="start17"></a>Hi Andy,

Does something like the following work?
    ...
   &lt;<a title="xsd" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">xsd</a>:choice maxOccurs=&quot;unbounded&quot;&gt;
    &lt;<a title="xsd:element" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">xsd:element</a> ref=&quot;a&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;b&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;c&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:sequence minOccurs=&quot;0&quot;&gt;
        &lt;xsd:element ref=&quot;d&quot;/&gt;
        &lt;xsd:choice&gt;
            &lt;xsd:sequence&gt;
                 &lt;xsd:element ref=&quot;e&quot;/&gt;
                 &lt;xsd:element ref=&quot;f&quot; minOccurs=&quot;0&quot;/&gt;
            &lt;/xsd:sequence&gt;
            &lt;xsd:element ref=&quot;f&quot;/&gt;
        &lt;/xsd:choice&gt;
    &lt;/xsd:sequence&gt;
    ...

HTH,

Pete.
--
=============================================
Pete Cordell
Codalogic Ltd
Interface <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">XML</a> to C++ the easy way using XML C++
<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/jaxb.html">data binding</a> to <a title="convert" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/convert_to_xml.html">convert</a> XSD schemas to C++ classes.
Visit http://codalogic.com/lmx/ or http://www.xml2cpp.com
for more info
=============================================

----- Original Message ----- 
From: &quot;Neill, Andrew&quot; &lt;<a href="mailto:andy.neill&#x40;&#0115;&#0105;&#0101;&#0109;&#0101;&#0110;&#0115;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20xsd%20ambigious&amp;In-Reply-To=%253CB3A445E8CA51487ABDBBCF39D05E68E9%40Codalogic%253E&amp;References=%253CB3A445E8CA51487ABDBBCF39D05E68E9%40Codalogic%253E">andy.neill&#x40;&#0115;&#0105;&#0101;&#0109;&#0101;&#0110;&#0115;&#0046;&#0099;&#0111;&#0109;</a>&gt;
To: &lt;<a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20xsd%20ambigious&amp;In-Reply-To=%253CB3A445E8CA51487ABDBBCF39D05E68E9%40Codalogic%253E&amp;References=%253CB3A445E8CA51487ABDBBCF39D05E68E9%40Codalogic%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>&gt;
Sent: Wednesday, October 07, 2009 5:10 PM
Subject: xsd ambigious


Can anyone help with this XSD please? It doesnt seem to work?
Essentially i want to ensure that if &quot;E&quot; or &quot;F&quot; are populated then &quot;D&quot; is 
populated before them. The rest of the elements can appear in any order and 
any amount of times.

&lt;?xml version=&quot;1.0&quot; <a title="encoding" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_other.html">encoding</a>=&quot;UTF-8&quot;?&gt;
&lt;xsd:schema xmlns:xsd=&quot;http://www.<a title="w3" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">w3</a>.org/2001/XMLSchema&quot;&gt;
  &lt;xsd:element name=&quot;element&quot;&gt;
  &lt;xsd:complexType&gt;
   &lt;xsd:choice maxOccurs=&quot;unbounded&quot;&gt;
    &lt;xsd:element ref=&quot;a&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;b&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;c&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:sequence&gt;
     &lt;xsd:element ref=&quot;d&quot;/&gt;
     &lt;xsd:element ref=&quot;e&quot;/&gt;
    &lt;/xsd:sequence&gt;
    &lt;xsd:sequence&gt;
     &lt;xsd:element ref=&quot;d&quot;/&gt;
     &lt;xsd:element ref=&quot;f&quot;/&gt;
    &lt;/xsd:sequence&gt;
   &lt;/xsd:choice&gt;
  &lt;/xsd:complexType&gt;
 &lt;/xsd:element&gt;
 &lt;xsd:element name=&quot;a&quot;/&gt;
 &lt;xsd:element name=&quot;b&quot;/&gt;
 &lt;xsd:element name=&quot;c&quot;/&gt;
 &lt;xsd:element name=&quot;d&quot;/&gt;
 &lt;xsd:element name=&quot;e&quot;/&gt;
 &lt;xsd:element name=&quot;f&quot;/&gt;
&lt;/xsd:schema&gt;

Many Thanks,
Andy
</pre>
<span id="received"><dfn>Received on</dfn> Thursday,  8 October 2009 10:07:43 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post07001.htm</link><pubDate>Thu, 08 Oct 2009 11:07:01 GMT</pubDate></item><item><title>Re: Fall back for missing xsi:type? </title><description><![CDATA[<pre id="body">
<a name="start20" accesskey="j" id="start20"></a>Excellent, thanks!

On 10/6/2009 6:40 PM, C. M. Sperberg-McQueen wrote:
&gt;
&gt; On 6 Oct 2009, at 14:45 , Kevin Braun wrote:
&gt;
&gt;&gt; Hello,
&gt;&gt;
&gt;&gt;
&gt;&gt; Can anyone explain the following comment from the &quot;changes since&quot; in 
&gt;&gt; <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">XSD</a> 1.1?
&gt;&gt;
&gt;&gt; &quot;When an |xsi:type| attribute appears on an element, and has a QName 
&gt;&gt; as its value, but the QName does not resolve to a known type 
&gt;&gt; definition, processors are now required to &quot;fall back&quot; to lax 
&gt;&gt; validation, using the declared {type 
&gt;&gt; &lt;http://www.<a title="w3" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">w3</a>.org/TR/xmlschema11-1/#ed-type_definition&gt;
&gt;&gt; definition} &lt;http://www.w3.org/TR/xmlschema11-1/#ed-type_definition&gt; 
&gt;&gt; of the ·governing element declaration· 
&gt;&gt; &lt;http://www.w3.org/TR/xmlschema11-1/#key-governing-ed&gt; as the 
&gt;&gt; ·governing type definition· 
&gt;&gt; &lt;http://www.w3.org/TR/xmlschema11-1/#key-governing-type-elem&gt;.&quot;
&gt;&gt;
&gt;&gt;
&gt;&gt;
&gt;&gt; First, I believe that lax validation is by definition against 
&gt;&gt; xs:anyType, so I'm not sure what it means to do lax validation using 
&gt;&gt; some other type.
&gt;
&gt; You're right; the description should not use the term 'lax
&gt; validation'.  The new rule is an attempt to define more
&gt; useful fallback behavior than fallback to lax validation.
&gt;
&gt;&gt;
&gt;&gt; Second, such a case as is being described violates rule 4 of Element 
&gt;&gt; Locally Valid (Element) (§3.3.4.3) 
&gt;&gt; &lt;http://www.w3.org/TR/xmlschema11-1/#cvc-elt&gt; (the instance-specified 
&gt;&gt; type definition would be absent),
&gt;
&gt; Correct.  So the element is not marked valid.
&gt;
&gt;&gt; and I don't see where there is any exception made to it.  There is 
&gt;&gt; some verbiage (in §3.3.4.3) about what happens to the governing type 
&gt;&gt; declaration in this case, but I don't think this verbiage is giving 
&gt;&gt; an exception to rule 4 (I assume it is summarizing the application of 
&gt;&gt; the definition of &quot;governing type declaration&quot;).
&gt;
&gt; Clause 5 of the validation rule says that the element is to be validated
&gt; against its governing type definition.  This doesn't constitute an
&gt; exception to clause 4.  Validating the element against the declared
&gt; type, rather than xsd:anyType, can be helpful when the downstream 
&gt; processor
&gt; wishes to recover from the missing component and when the declared type
&gt; has some local element declarations which would not be found by 
&gt; validating
&gt; the element against xsd:anyType.
&gt;
&gt;
&gt;&gt; Schema-Validity Assessment (Element) (§3.3.4.6) 
&gt;&gt; &lt;http://www.w3.org/TR/xmlschema11-1/#cvc-assess-elt&gt; does give a 
&gt;&gt; requirement for lax assessment according to xs:anyType, but I don't 
&gt;&gt; think it applies here because the situation described doesn't prevent 
&gt;&gt; assessment - it just has &quot;invalid&quot; as the outcome.  Besides that, the 
&gt;&gt; type to use for the lax assessment doesn't agree with the statement I 
&gt;&gt; quoted.
&gt;&gt;
&gt;&gt; So, in short, I don't know what to make of the above statement.
&gt;
&gt; I hope the comments above help clarify things.
&gt;
&gt;&gt;  Can anyone point me to where the &quot;fall back&quot; requirement can be found?
&gt;
&gt;
&gt; I'm not sure whether you mean &quot;what user requirement does this
&gt; serve?&quot; (answer:  better behavior in the case of missing
&gt; components), or &quot;why does the change list say that the
&gt; processor falls back to the declared type?&quot; (answer:  because
&gt; clause 5 of Element Locally Valid (Element) says to validate
&gt; the element against its governing type definition, and the
&gt; definition of governing type definition says that if the
&gt; instance-specified type does not successfully override the
&gt; selected or declared type [which will be the case if the
&gt; value of the xsi:type attribute fails to resolve], then the
&gt; element's declared type will be the governing type).
&gt;
&gt; HTH
&gt;
</pre>
<span id="received"><dfn>Received on</dfn> Thursday,  8 October 2009 13:27:01 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post00002.htm</link><pubDate>Thu, 08 Oct 2009 09:24:59 GMT</pubDate></item><item><title>xsd ambigious </title><description><![CDATA[<pre id="body">
<a name="start15" accesskey="j" id="start15"></a>Can anyone help with this <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">XSD</a> please? It doesnt seem to work?
Essentially i want to ensure that if &quot;E&quot; or &quot;F&quot; are populated then &quot;D&quot; is populated before them. The rest of the elements can appear in any order and any amount of times.

&lt;?<a title="xml" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">xml</a> version=&quot;1.0&quot; <a title="encoding" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_other.html">encoding</a>=&quot;UTF-8&quot;?&gt;
&lt;<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">xsd:schema</a> xmlns:xsd=&quot;http://www.<a title="w3" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">w3</a>.org/2001/XMLSchema&quot;&gt;
  &lt;xsd:element name=&quot;element&quot;&gt;
  &lt;xsd:complexType&gt;
   &lt;xsd:choice maxOccurs=&quot;unbounded&quot;&gt;
    &lt;xsd:element ref=&quot;a&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;b&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:element ref=&quot;c&quot; minOccurs=&quot;0&quot;/&gt;
    &lt;xsd:sequence&gt;
     &lt;xsd:element ref=&quot;d&quot;/&gt;
     &lt;xsd:element ref=&quot;e&quot;/&gt;
    &lt;/xsd:sequence&gt;
    &lt;xsd:sequence&gt;
     &lt;xsd:element ref=&quot;d&quot;/&gt;
     &lt;xsd:element ref=&quot;f&quot;/&gt;
    &lt;/xsd:sequence&gt;
   &lt;/xsd:choice&gt;
  &lt;/xsd:complexType&gt;
 &lt;/xsd:element&gt;
 &lt;xsd:element name=&quot;a&quot;/&gt;
 &lt;xsd:element name=&quot;b&quot;/&gt;
 &lt;xsd:element name=&quot;c&quot;/&gt;
 &lt;xsd:element name=&quot;d&quot;/&gt;
 &lt;xsd:element name=&quot;e&quot;/&gt;
 &lt;xsd:element name=&quot;f&quot;/&gt;
&lt;/xsd:schema&gt;

Many Thanks,
Andy
</pre>
<span id="received"><dfn>Received on</dfn> Thursday,  8 October 2009 09:46:49 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post05001.htm</link><pubDate>Wed, 07 Oct 2009 18:10:30 GMT</pubDate></item><item><title>Fall back for missing xsi:type? </title><description><![CDATA[<pre id="body">
<a name="start13" accesskey="j" id="start13"></a>Hello,


Can anyone explain the following comment from the &quot;changes since&quot; in <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">XSD</a> 
1.1?

&quot;When an |xsi:type| attribute appears on an element, and has a QName as 
its value, but the QName does not resolve to a known type definition, 
processors are now required to &quot;fall back&quot; to lax validation, using the 
declared {type &lt;http://www.<a title="w3" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">w3</a>.org/TR/xmlschema11-1/#ed-type_definition&gt;
definition} &lt;http://www.w3.org/TR/xmlschema11-1/#ed-type_definition&gt; of 
the ·governing element declaration· 
&lt;http://www.w3.org/TR/xmlschema11-1/#key-governing-ed&gt; as the ·governing 
type definition· 
&lt;http://www.w3.org/TR/xmlschema11-1/#key-governing-type-elem&gt;.&quot;



First, I believe that lax validation is by definition against 
xs:anyType, so I'm not sure what it means to do lax validation using 
some other type.

Second, such a case as is being described violates rule 4 of Element 
Locally Valid (Element) (§3.3.4.3) 
&lt;http://www.w3.org/TR/xmlschema11-1/#cvc-elt&gt; (the instance-specified 
type definition would be absent), and I don't see where there is any 
exception made to it.  There is some verbiage (in §3.3.4.3) about what 
happens to the governing type declaration in this case, but I don't 
think this verbiage is giving an exception to rule 4 (I assume it is 
summarizing the application of the definition of &quot;governing type 
declaration&quot;).

Schema-Validity Assessment (Element) (§3.3.4.6) 
&lt;http://www.w3.org/TR/xmlschema11-1/#cvc-assess-elt&gt; does give a 
requirement for lax assessment according to xs:anyType, but I don't 
think it applies here because the situation described doesn't prevent 
assessment - it just has &quot;invalid&quot; as the outcome.  Besides that, the 
type to use for the lax assessment doesn't agree with the statement I 
quoted.

So, in short, I don't know what to make of the above statement.  Can 
anyone point me to where the &quot;fall back&quot; requirement can be found?

Thanks,

--
Kevin Braun
Objective Systems, Inc.
http://www.obj-sys.com
</pre>
<span id="received"><dfn>Received on</dfn> Tuesday,  6 October 2009 20:47:48 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post03001.htm</link><pubDate>Tue, 06 Oct 2009 16:45:50 GMT</pubDate></item><item><title>Re: Fall back for missing xsi:type? </title><description><![CDATA[<pre id="body">
<a name="start14" accesskey="j" id="start14"></a>
On 6 Oct 2009, at 14:45 , Kevin Braun wrote:

&gt; Hello,
&gt;
&gt;
&gt; Can anyone explain the following comment from the &quot;changes since&quot; in  
&gt; <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">XSD</a> 1.1?
&gt;
&gt; &quot;When an |xsi:type| attribute appears on an element, and has a QName  
&gt; as its value, but the QName does not resolve to a known type  
&gt; definition, processors are now required to &quot;fall back&quot; to lax  
&gt; validation, using the declared {type &lt;http://www.<a title="w3" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">w3</a>.org/TR/xmlschema11-1/#ed-type_definition 
&gt; &gt;
&gt; definition} &lt;http://www.w3.org/TR/xmlschema11-1/#ed-type_definition&gt;  
&gt; of the ·governing element declaration· &lt;http://www.w3.org/TR/xmlschema11-1/#key-governing-ed 
&gt; &gt; as the ·governing type definition· &lt;http://www.w3.org/TR/xmlschema11-1/#key-governing-type-elem 
&gt; &gt;.&quot;
&gt;
&gt;
&gt;
&gt; First, I believe that lax validation is by definition against  
&gt; xs:anyType, so I'm not sure what it means to do lax validation using  
&gt; some other type.

You're right; the description should not use the term 'lax
validation'.  The new rule is an attempt to define more
useful fallback behavior than fallback to lax validation.

&gt;
&gt; Second, such a case as is being described violates rule 4 of Element  
&gt; Locally Valid (Element) (§3.3.4.3) &lt;http://www.w3.org/TR/xmlschema11-1/#cvc-elt 
&gt; &gt; (the instance-specified type definition would be absent),

Correct.  So the element is not marked valid.

&gt; and I don't see where there is any exception made to it.  There is  
&gt; some verbiage (in §3.3.4.3) about what happens to the governing type  
&gt; declaration in this case, but I don't think this verbiage is giving  
&gt; an exception to rule 4 (I assume it is summarizing the application  
&gt; of the definition of &quot;governing type declaration&quot;).

Clause 5 of the validation rule says that the element is to be validated
against its governing type definition.  This doesn't constitute an
exception to clause 4.  Validating the element against the declared
type, rather than xsd:anyType, can be helpful when the downstream  
processor
wishes to recover from the missing component and when the declared type
has some local element declarations which would not be found by  
<a title="XML Schema Tutorial" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xmlschema1/xmlschema1.html">validating
the element against xsd</a>:anyType.


&gt; Schema-Validity Assessment (Element) (§3.3.4.6) &lt;http://www.w3.org/TR/xmlschema11-1/#cvc-assess-elt 
&gt; &gt; does give a requirement for lax assessment according to  
&gt; xs:anyType, but I don't think it applies here because the situation  
&gt; described doesn't prevent assessment - it just has &quot;invalid&quot; as the  
&gt; outcome.  Besides that, the type to use for the lax assessment  
&gt; doesn't agree with the statement I quoted.
&gt;
&gt; So, in short, I don't know what to make of the above statement.

I hope the comments above help clarify things.

&gt;  Can anyone point me to where the &quot;fall back&quot; requirement can be  
&gt; found?


I'm not sure whether you mean &quot;what user requirement does this
serve?&quot; (answer:  better behavior in the case of missing
components), or &quot;why does the change list say that the
processor falls back to the declared type?&quot; (answer:  because
clause 5 of Element Locally Valid (Element) says to validate
the element against its governing type definition, and the
definition of governing type definition says that if the
instance-specified type does not successfully override the
selected or declared type [which will be the case if the
value of the xsi:type attribute fails to resolve], then the
element's declared type will be the governing type).

HTH

-- 
****************************************************************
* C. M. Sperberg-McQueen, Black Mesa Technologies LLC
* http://www.blackmesatech.com
* http://cmsmcq.com/mib
* http://balisage.net
****************************************************************
</pre>
<span id="received"><dfn>Received on</dfn> Tuesday,  6 October 2009 22:41:19 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post04001.htm</link><pubDate>Tue, 06 Oct 2009 16:40:46 GMT</pubDate></item><item><title>RE: Escalation mechanism for different interpretation of W3C XML-Schema specification ? </title><description><![CDATA[<pre id="body">
<a name="start12" accesskey="j" id="start12"></a>
Michael - you've asked for feedback about whether redefine should be
deprecated.  I believe it should.

 

I believe that the primary purpose for which schemas are written is an
attempt to facilitate automated data exchange between computer systems.
<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_feature_overview.html">Features</a> which in practice provide an &quot;impedance&quot; to the smooth
automation of data exchange are bad.  This email thread provides a
classic illustration of a feature which has resulted in troubled and
problematic implementation.

 

With regard to this <a title="discussion" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/SSDN/default.asp">discussion</a> creeping onto other features such as
complex type derivation by restriction, I don't think it is particularly
helpful of you to suggest that people stick to programming languages
which support the same data structure concepts as <a title="XML Schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">XML Schema</a>!  Picking
up your own point from another email on this thread, schema is widely
used as a data interchange format even though it originated in document
markup.  Data interchange involves sending and receiving systems, and to
my mind an interchange definition which aims at facilitating smooth
automation should dovetail reasonably easily with technologies commonly
used - the words &quot;cart&quot;, &quot;horse&quot;, &quot;tail&quot; and &quot;dog&quot; spring to mind! I
think schema has often been criticised as over-complicated and
over-sophisticated.  Maybe definition of some subset of schema
facilities for common data interchange would help in this whole area,
although obviously attempting such an exercise would not be an easy one.


 

From: <a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253CF650D4E37270CF489B55D9417F768126A75AB9%40PLC-EXCH-SRV.tracegroup.com%253E&amp;References=%253CF650D4E37270CF489B55D9417F768126A75AB9%40PLC-EXCH-SRV.tracegroup.com%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a> [mailto:<a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253CF650D4E37270CF489B55D9417F768126A75AB9%40PLC-EXCH-SRV.tracegroup.com%253E&amp;References=%253CF650D4E37270CF489B55D9417F768126A75AB9%40PLC-EXCH-SRV.tracegroup.com%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>]
On Behalf Of <a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a>
Sent: 01 October 2009 23:53
To: 'XMLSchema at XML4Pharma'; <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253CF650D4E37270CF489B55D9417F768126A75AB9%40PLC-EXCH-SRV.tracegroup.com%253E&amp;References=%253CF650D4E37270CF489B55D9417F768126A75AB9%40PLC-EXCH-SRV.tracegroup.com%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
Subject: RE: Escalation mechanism for different interpretation of W3C
XML-<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/schema0/_index.htm">Schema specification</a> ?

 

Just for the record (though it only really confirms the point that there
are differing interpretations), I <a title="An Introduction to XML Schema Development" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xmlschema1/xmlschema1.html">implemented the XSD 1.0</a> specification
without the benefit of knowing anything about the intent of the WG
beyond what was written in the spec, and I came to the conclusion that
there was only one way of interpreting the rule about xsd:redefine being
&quot;pervasive&quot;. But then I also came to the conclusion that other parts of
the schema composition rules had to be treated as loose statements of
intent which didn't cover all contingencies.

 

I would certainly advise against using xs:redefine in an industry schema
specification. Its only possible justification in my view is to define a
variant of a schema produced by a third party. And for that use case, I
think it only works unambiguously if that schema uses a single target
namespace throughout.

Michael Kay

Saxonica

	
________________________________


	From: <a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253CF650D4E37270CF489B55D9417F768126A75AB9%40PLC-EXCH-SRV.tracegroup.com%253E&amp;References=%253CF650D4E37270CF489B55D9417F768126A75AB9%40PLC-EXCH-SRV.tracegroup.com%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
[mailto:<a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253CF650D4E37270CF489B55D9417F768126A75AB9%40PLC-EXCH-SRV.tracegroup.com%253E&amp;References=%253CF650D4E37270CF489B55D9417F768126A75AB9%40PLC-EXCH-SRV.tracegroup.com%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>] On Behalf Of XMLSchema at
XML4Pharma
	Sent: 29 September 2009 12:24
	To: <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253CF650D4E37270CF489B55D9417F768126A75AB9%40PLC-EXCH-SRV.tracegroup.com%253E&amp;References=%253CF650D4E37270CF489B55D9417F768126A75AB9%40PLC-EXCH-SRV.tracegroup.com%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
	Subject: Escalation mechanism for different interpretation of
W3C XML-Schema specification ?

	We, the CDISC XML-Tech Governance Team (and other CDISC teams)
have developed a number of extensible standards for exchange of clinical
data and for submitting information to the regulatory authorities (FDA).

	CDISC is a Standardization Organization active in the healthcare
world.

	Our extension mechanism is based on the &quot;import&quot; and &quot;redefine&quot;
elements of XML-Schema.

	We now have a serious dispute with one technology vendor
(Altova) about the way &quot;import&quot; and &quot;redefine&quot; are used. Instance files
of one of our extensions (so-called &quot;define.xml&quot;) validate well in all
major validators and XML-editors, except for the products of this one
vendor.

	When confronted with this result, the reaction of Altova
essentially is that &quot;Altova is right, all others are wrong&quot;. The dispute
and discussion with Altova can be followed at:
	http://www.altova.com/forum/default.aspx?g=posts&amp;m=1000005665

	The issue were not so serious if it were not that our standard
&quot;define.xml&quot; is a standard for submission of information to the
regulatory authorities, and these are (mostly) using the Altova product
for validation.

	We now want to escalate the issue to the W3C itself, and would
like to know what the mechanism is to do so.

	Jozef Aerts
	CDISC XML-Tech Governance Team


Disclaimer: 
 
The contents of this E-mail plus any attachment is intended for the use of the 
addressee only and is confidential, proprietary and may be privileged. It will not be 
binding upon Trace Group or any group company (Trace).  Opinions, conclusions, 
contractual obligations and other information in this message in so far as they relate to 
the official business of Trace must be specifically confirmed in writing by Trace. If you 
are not the intended recipient you must not copy this message or attachment, use or 
disclose the contents to any other person, but are requested to telephone or E-mail 
the sender and delete the message and any attachment from your system. Trace 
takes all reasonable precautions to ensure that no virus or defect is transmitted via 
this e mail, however Trace accepts no responsibility for any virus or defect that might 
arise from opening this E-mail or attachments.
</pre>
<span id="received"><dfn>Received on</dfn> Monday,  5 October 2009 11:57:51 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post02001.htm</link><pubDate>Mon, 05 Oct 2009 12:57:12 GMT</pubDate></item><item><title>RE: Escalation mechanism for different interpretation of W3C XML-Schema   specification ? </title><description><![CDATA[<pre id="body">
<a name="start10" accesskey="j" id="start10"></a>&gt; &gt; <a title="Converter JSON to XML" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.xmlconverters.com/tutorials/json-and-xquery.html">So JSON</a> may be a good alternative.
&gt; 
&gt; I would never discourage you from looking for the best 
&gt; language to meet your needs, and JSON is in many respects 
&gt; simpler than XML.  That said, keep in mind that JSON is 
&gt; fundamentally aimed at what we informally call &quot;data&quot;, I.e. 
&gt; roughly the sorts of things that fit well into a <a title="Java" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/configure_jre.html">Java</a>, C, or 
&gt; (of course) Javascript structure.  

When XML was first conceived, I think most people expected it to be used
primarily for documents (I had heard people talking about <a title="Learn more about GML" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://schemas.stylusstudio.com/opengis/index.html">using SGML</a> for
data in the 1980s, and I thought they were nuts). It's interesting to review
why XML proved successful as a data interchange format even though it wasn't
primarily designed for that role.

* XML was very cheap to implement (cost of writing <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml/editor/">tools</a>, cost of <a title="buying" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/buy/">buying</a>
tools, cost of putting them to good use)

* For some reason I have never understood, XML had no serious competition,
and had universal endorsement from all influential players

* XML filled a gap. Many people with data interchange problems had devised
custom solutions at layer 6 of the stack, and they all involved a lot of
effort to maintain, and no generic tooling was available. These solutions
often failed to solve the character sets problem. Other people had adopted
ASN.1, which was unaffordable by the masses ($100K for a parser).

* XML was genuinely open and platform-independent: people trusted the
independence of the authority responsible for the <a title="specification" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">specification</a>, and there
was neither an explicit nor a covert bias to particular operating systems,
vendors, or programming languages. And there were no doubts about what was
or was not valid XML (as there are with JSON).

* For the first time in the history of computing, people were finding that
documents and data could no longer be kept separate. People were building
web sites in which information, entertainment, and transactions needed to be
seamlessly mixed.

* The high level of redundancy in XML, which we love to complain about,
proved a winner in making it easy to formats to evolve gracefully.

If JSON had been around before XML, the first three arguments would have
been far less compelling. But the others would still have been strong.

Regards,

<a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a>
http://www.saxonica.com/
http://twitter.com/michaelhkay 
</pre>
<span id="received"><dfn>Received on</dfn> Saturday,  3 October 2009 16:11:50 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post00001.htm</link><pubDate>Sat, 03 Oct 2009 17:11:12 GMT</pubDate></item><item><title>RE: Escalation mechanism for different interpretation of W3C XML-Schema    specification ? </title><description><![CDATA[<pre id="body">
<a name="start11" accesskey="j" id="start11"></a><a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a> writes:

&gt; When XML was first conceived, I think most people expected it to be used
&gt; primarily for documents (I had heard people talking about <a title="Learn more about GML" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://schemas.stylusstudio.com/opengis/index.html">using SGML</a> for
&gt; data in the 1980s, and I thought they were nuts). It's 
&gt; interesting to <a title="review" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_coverage.html">review</a>
&gt; why XML proved successful as a data interchange format even 
&gt; though it wasn't
&gt; primarily designed for that role.

Well, as I've said many times, I believe it's in large part because the 
<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xquery/use_cases.html">use cases</a> aren't always separate.  Many of the most interesting documents 
mix in real data.  An insurance policy template, for example, probably has 
some sort of smart hook to pull in the name of the user and the exact 
amount of the policy, very possibly sourced from a relational database. 
So, I think that's what gets you into the business of having robust data 
typing, etc.  Then the question is, do you for uniformity keep using XML 
in the degenerate case where it really is pure data, or drop back to 
something simpler.

BTW: one of the reasons I'm attuned to this is that Lotus Notes (which I 
used early when I worked at Lotus, but did not help design) built a 
business on creating and managing just such mixed document/data 
constructions, well before XML (but not SGML) became popular.

Noah

--------------------------------------
Noah Mendelsohn 
IBM Corporation
One Rogers Street
Cambridge, MA 02142
1-617-693-4036
--------------------------------------








&quot;Michael Kay&quot; &lt;<a href="mailto:mike&#x40;&#0115;&#0097;&#0120;&#0111;&#0110;&#0105;&#0099;&#0097;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20%20specification%20%3F&amp;In-Reply-To=%253COF435EC165.1E222E95-ON85257644.005A6CA2-85257644.005AB828%40lotus.com%253E&amp;References=%253COF435EC165.1E222E95-ON85257644.005A6CA2-85257644.005AB828%40lotus.com%253E">mike&#x40;&#0115;&#0097;&#0120;&#0111;&#0110;&#0105;&#0099;&#0097;&#0046;&#0099;&#0111;&#0109;</a>&gt;
10/03/2009 12:11 PM
 
        To:     &lt;<a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20%20specification%20%3F&amp;In-Reply-To=%253COF435EC165.1E222E95-ON85257644.005A6CA2-85257644.005AB828%40lotus.com%253E&amp;References=%253COF435EC165.1E222E95-ON85257644.005A6CA2-85257644.005AB828%40lotus.com%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a>&gt;, &quot;'XML4Pharma'&quot; 
&lt;<a href="mailto:info&#x40;&#0088;&#0077;&#0076;&#0052;&#0080;&#0104;&#0097;&#0114;&#0109;&#0097;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20%20specification%20%3F&amp;In-Reply-To=%253COF435EC165.1E222E95-ON85257644.005A6CA2-85257644.005AB828%40lotus.com%253E&amp;References=%253COF435EC165.1E222E95-ON85257644.005A6CA2-85257644.005AB828%40lotus.com%253E">info&#x40;&#0088;&#0077;&#0076;&#0052;&#0080;&#0104;&#0097;&#0114;&#0109;&#0097;&#0046;&#0099;&#0111;&#0109;</a>&gt;
        cc:     &quot;'C. M. Sperberg-McQueen'&quot; &lt;<a href="mailto:cmsmcq&#x40;&#0098;&#0108;&#0097;&#0099;&#0107;&#0109;&#0101;&#0115;&#0097;&#0116;&#0101;&#0099;&#0104;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20%20specification%20%3F&amp;In-Reply-To=%253COF435EC165.1E222E95-ON85257644.005A6CA2-85257644.005AB828%40lotus.com%253E&amp;References=%253COF435EC165.1E222E95-ON85257644.005A6CA2-85257644.005AB828%40lotus.com%253E">cmsmcq&#x40;&#0098;&#0108;&#0097;&#0099;&#0107;&#0109;&#0101;&#0115;&#0097;&#0116;&#0101;&#0099;&#0104;&#0046;&#0099;&#0111;&#0109;</a>&gt;, 
&quot;'Dennis Sosnoski'&quot; &lt;<a href="mailto:dms&#x40;&#0115;&#0111;&#0115;&#0110;&#0111;&#0115;&#0107;&#0105;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20%20specification%20%3F&amp;In-Reply-To=%253COF435EC165.1E222E95-ON85257644.005A6CA2-85257644.005AB828%40lotus.com%253E&amp;References=%253COF435EC165.1E222E95-ON85257644.005A6CA2-85257644.005AB828%40lotus.com%253E">dms&#x40;&#0115;&#0111;&#0115;&#0110;&#0111;&#0115;&#0107;&#0105;&#0046;&#0099;&#0111;&#0109;</a>&gt;, &lt;<a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20%20specification%20%3F&amp;In-Reply-To=%253COF435EC165.1E222E95-ON85257644.005A6CA2-85257644.005AB828%40lotus.com%253E&amp;References=%253COF435EC165.1E222E95-ON85257644.005A6CA2-85257644.005AB828%40lotus.com%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>&gt;
        Subject:        RE: Escalation mechanism for different 
interpretation of W3C XML-Schema   specification ?


&gt; &gt; So JSON may be a good alternative.
&gt; 
&gt; I would never discourage you from looking for the best 
&gt; language to meet your needs, and JSON is in many respects 
&gt; simpler than XML.  That said, keep in mind that JSON is 
&gt; fundamentally aimed at what we informally call &quot;data&quot;, I.e. 
&gt; roughly the sorts of things that fit well into a Java, C, or 
&gt; (of course) Javascript structure. 

When XML was first conceived, I think most people expected it to be used
primarily for documents (I had heard people talking about using SGML for
data in the 1980s, and I thought they were nuts). It's interesting to 
review
why XML proved successful as a data interchange format even though it 
wasn't
primarily designed for that role.

* XML was very cheap to implement (cost of writing tools, cost of buying
tools, cost of putting them to good use)

* For some reason I have never understood, XML had no serious competition,
and had universal endorsement from all influential players

* XML filled a gap. Many people with data interchange problems had devised
custom solutions at layer 6 of the stack, and they all involved a lot of
effort to maintain, and no generic tooling was available. These solutions
often failed to solve the character sets problem. Other people had adopted
ASN.1, which was unaffordable by the masses ($100K for a parser).

* XML was genuinely open and platform-independent: people trusted the
independence of the authority responsible for the specification, and there
was neither an explicit nor a covert bias to particular operating systems,
vendors, or programming languages. And there were no doubts about what was
or was not valid XML (as there are with JSON).

* For the first time in the history of computing, people were finding that
documents and data could no longer be kept separate. People were building
web sites in which information, entertainment, and transactions needed to 
be
seamlessly mixed.

* The high level of redundancy in XML, which we love to complain about,
proved a winner in making it easy to formats to evolve gracefully.

If JSON had been around before XML, the first three arguments would have
been far less compelling. But the others would still have been strong.

Regards,

Michael Kay
http://www.saxonica.com/
http://twitter.com/michaelhkay 
</pre>
<span id="received"><dfn>Received on</dfn> Saturday,  3 October 2009 16:31:26 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post01001.htm</link><pubDate>Sat, 03 Oct 2009 12:30:48 GMT</pubDate></item><item><title>Re: Escalation mechanism for different interpretation of W3C XML-Schema   specification ? </title><description><![CDATA[<pre id="body">
<a name="start8" accesskey="j" id="start8"></a>In our extension schemas, we only use &quot;redefine&quot; to ADD extra attributes and 
elements (in a separate namespace), not to change or remove any existing 
ones.

One of my positive surprises with the way we implemented it, is that a <a title="XML 
data binding" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/jaxb.html">XML 
data binding</a> like XMLBeans had no problem at all working with it: it was 
very easy to derive all classes from our schemas including the &quot;redefine&quot;.

Dennis suggested to have a look <a title="JSON vs XML" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.xmlconverters.com/tutorials/json-and-xquery.html">at JSON</a>, which I did.
This might be a very good idea for a format for submitting information/data 
to the FDA.
The problem at the FDA is that there is almost noone there with a basic 
understanding of XML, and those who have left the FDA to become a well-paid 
consultant. Some departments at the FDA have the greatest difficulty to 
validate even very simple XML documents.
The FDA is currently planning to switch to <a title="Convert EDI to XML" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/convert_edi_to_xml.html">HL7</a>-v3-XML messages for 
electronic submissions of data to the agency. As HL7-v3-XML is highly 
complex (and even not good XML i.m.o.) I think this will lead to disaster. 
So JSON may be a good alternative.
I had a quick look, but JSON does not have some <a title="data types" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/schema_aware.html">data types</a> like date, time 
and dateTime. Would be nice if they had ...

Best,

Jozef Aerts
XML4Pharma


----- Original Message ----- 
From: &quot;<a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a>&quot; &lt;<a href="mailto:mike&#x40;&#0115;&#0097;&#0120;&#0111;&#0110;&#0105;&#0099;&#0097;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20specification%20%3F&amp;In-Reply-To=%253C75E562F49CE54D04A69E2B36E3128355%40D6NXTQ1J%253E&amp;References=%253C75E562F49CE54D04A69E2B36E3128355%40D6NXTQ1J%253E">mike&#x40;&#0115;&#0097;&#0120;&#0111;&#0110;&#0105;&#0099;&#0097;&#0046;&#0099;&#0111;&#0109;</a>&gt;
To: &quot;'Dennis Sosnoski'&quot; &lt;<a href="mailto:dms&#x40;&#0115;&#0111;&#0115;&#0110;&#0111;&#0115;&#0107;&#0105;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20specification%20%3F&amp;In-Reply-To=%253C75E562F49CE54D04A69E2B36E3128355%40D6NXTQ1J%253E&amp;References=%253C75E562F49CE54D04A69E2B36E3128355%40D6NXTQ1J%253E">dms&#x40;&#0115;&#0111;&#0115;&#0110;&#0111;&#0115;&#0107;&#0105;&#0046;&#0099;&#0111;&#0109;</a>&gt;; &lt;<a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20specification%20%3F&amp;In-Reply-To=%253C75E562F49CE54D04A69E2B36E3128355%40D6NXTQ1J%253E&amp;References=%253C75E562F49CE54D04A69E2B36E3128355%40D6NXTQ1J%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a>&gt;
Cc: &quot;'XMLSchema at XML4Pharma'&quot; &lt;<a href="mailto:XMLSchema&#x40;&#0088;&#0077;&#0076;&#0052;&#0080;&#0104;&#0097;&#0114;&#0109;&#0097;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20specification%20%3F&amp;In-Reply-To=%253C75E562F49CE54D04A69E2B36E3128355%40D6NXTQ1J%253E&amp;References=%253C75E562F49CE54D04A69E2B36E3128355%40D6NXTQ1J%253E">XMLSchema&#x40;&#0088;&#0077;&#0076;&#0052;&#0080;&#0104;&#0097;&#0114;&#0109;&#0097;&#0046;&#0099;&#0111;&#0109;</a>&gt;; &quot;'C. M. 
Sperberg-McQueen'&quot; &lt;<a href="mailto:cmsmcq&#x40;&#0098;&#0108;&#0097;&#0099;&#0107;&#0109;&#0101;&#0115;&#0097;&#0116;&#0101;&#0099;&#0104;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20specification%20%3F&amp;In-Reply-To=%253C75E562F49CE54D04A69E2B36E3128355%40D6NXTQ1J%253E&amp;References=%253C75E562F49CE54D04A69E2B36E3128355%40D6NXTQ1J%253E">cmsmcq&#x40;&#0098;&#0108;&#0097;&#0099;&#0107;&#0109;&#0101;&#0115;&#0097;&#0116;&#0101;&#0099;&#0104;&#0046;&#0099;&#0111;&#0109;</a>&gt;; &lt;<a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20specification%20%3F&amp;In-Reply-To=%253C75E562F49CE54D04A69E2B36E3128355%40D6NXTQ1J%253E&amp;References=%253C75E562F49CE54D04A69E2B36E3128355%40D6NXTQ1J%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>&gt;
Sent: Saturday, October 03, 2009 12:43 AM
Subject: RE: Escalation mechanism for different interpretation of W3C 
XML-Schema specification ?


&gt;
&gt; While I think many of your criticisms of xs:redefine and complex type
&gt; restriction and indeed xs:override are valid, I personally don't accept 
&gt; the
&gt; premise that XSD should be constrained or influenced by the data typing
&gt; paradigms of conventional programming languages. XML and XSD are first and
&gt; formost intended for designing hierarchic document structures (a 
&gt; discipline
&gt; with a far longer tradition than programming), and the fact that
&gt; conventional programming languages don't support such structures very well
&gt; means in my view that it's best to switch to languages that do.
&gt;
&gt; Regards,
&gt;
&gt; Michael Kay
&gt; http://www.saxonica.com/
&gt; http://twitter.com/michaelhkay
&gt;
&gt;
&gt;&gt; -----Original Message-----
&gt;&gt; From: <a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20specification%20%3F&amp;In-Reply-To=%253C75E562F49CE54D04A69E2B36E3128355%40D6NXTQ1J%253E&amp;References=%253C75E562F49CE54D04A69E2B36E3128355%40D6NXTQ1J%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
&gt;&gt; [mailto:<a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20specification%20%3F&amp;In-Reply-To=%253C75E562F49CE54D04A69E2B36E3128355%40D6NXTQ1J%253E&amp;References=%253C75E562F49CE54D04A69E2B36E3128355%40D6NXTQ1J%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>] On Behalf Of Dennis Sosnoski
&gt;&gt; Sent: 02 October 2009 23:10
&gt;&gt; To: <a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20specification%20%3F&amp;In-Reply-To=%253C75E562F49CE54D04A69E2B36E3128355%40D6NXTQ1J%253E&amp;References=%253C75E562F49CE54D04A69E2B36E3128355%40D6NXTQ1J%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a>
&gt;&gt; Cc: XMLSchema at XML4Pharma; C. M. Sperberg-McQueen;
&gt;&gt; <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20specification%20%3F&amp;In-Reply-To=%253C75E562F49CE54D04A69E2B36E3128355%40D6NXTQ1J%253E&amp;References=%253C75E562F49CE54D04A69E2B36E3128355%40D6NXTQ1J%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
&gt;&gt; Subject: Re: Escalation mechanism for different
&gt;&gt; interpretation of W3C XML-Schema specification ?
&gt;&gt;
&gt;&gt; Hi Noah,
&gt;&gt;
&gt;&gt; IMHO both xs:redefine and xs:complexType restriction should
&gt;&gt; be eliminated. With respect to the increasingly important
&gt;&gt; area of XML data binding for programming languages, redefine
&gt;&gt; and complexType restriction are generally ignored for the
&gt;&gt; simple reason that they have no equivalent in terms of data
&gt;&gt; models. The object oriented programming equivalent of
&gt;&gt; complexType restriction would be to define a subclass by
&gt;&gt; eliminating information from the parent class, which is a
&gt;&gt; bizarre concept in programming terms - if you want a limited
&gt;&gt; representation which is not supported by the current data
&gt;&gt; model you either refactor the data model to support the
&gt;&gt; particular subset you want or use a representation which has
&gt;&gt; more features than you need, with semantic constraints on the usage.
&gt;&gt; There are times when this limitation of object oriented
&gt;&gt; programming is inconvenient, but I suspect the vast majority
&gt;&gt; of developers would agree that the benefits in terms of clean
&gt;&gt; data models more than outweigh the inconvenience.
&gt;&gt;
&gt;&gt; Beyond this, the very nature of complexType restriction,
&gt;&gt; which requires repeating all portions of the original model
&gt;&gt; which are being retained, creates brittle definitions.
&gt;&gt;
&gt;&gt; redefine is an even stranger operation, effectively
&gt;&gt; performing surgery on an existing definition to deform it in
&gt;&gt; ways never intended by the original designers. One
&gt;&gt; consequence is that anyone looking at an instance of an XML
&gt;&gt; structure defined by a schema needs to be aware of other
&gt;&gt; schemas which may have modified the original schema definition.
&gt;&gt; Requiring knowledge of the entire set of schemas involved in
&gt;&gt; a document in order to understand one particular component of
&gt;&gt; the document is contrary to good design principles.
&gt;&gt;
&gt;&gt; It's hard for me to see how xs:override represents any kind
&gt;&gt; of improvement on redefine, so asking for feedback on
&gt;&gt; deprecating redefine while adding override into the mix seems
&gt;&gt; deliberately futile. From my point of view override suffers
&gt;&gt; from the same design failures as redefine, and should also be
&gt;&gt; eliminated.
&gt;&gt;
&gt;&gt; I realize that many uses of W3C schema are not concerned with
&gt;&gt; data binding, but I'd suggest that the difficulty of modeling
&gt;&gt; these constructs in terms of modern programming language
&gt;&gt; structures shows that they could be eliminated without
&gt;&gt; significantly harming the usefulness of schema.
&gt;&gt;
&gt;&gt;   - Dennis
&gt;&gt;
&gt;&gt; Dennis M. Sosnoski
&gt;&gt; XML and Web Services in Java
&gt;&gt; Training and Consulting
&gt;&gt; http://www.sosnoski.com - http://www.sosnoski.co.nz Seattle,
&gt;&gt; WA +1-425-939-0576 - Wellington, NZ +64-4-298-6117
&gt;&gt;
&gt;&gt;
&gt;&gt;
&gt;&gt; <a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20specification%20%3F&amp;In-Reply-To=%253C75E562F49CE54D04A69E2B36E3128355%40D6NXTQ1J%253E&amp;References=%253C75E562F49CE54D04A69E2B36E3128355%40D6NXTQ1J%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a> wrote:
&gt;&gt; &gt; I strongly urge you to read Michael Sperberg-McQueen's note
&gt;&gt; carefully.
&gt;&gt; &gt; While, as noted below, some of my preferences for resolving
&gt;&gt; &gt; ambiguities happen to be different from his, I believe that
&gt;&gt; his email
&gt;&gt; &gt; very accurately and carefully summarizes the state of play on this
&gt;&gt; &gt; issue.  Let me just quote and comment on a few sections of
&gt;&gt; Michael's note:
&gt;&gt; &gt;
&gt;&gt; &gt;
&gt;&gt; &gt;&gt; The XSD 1.0 specification does not explicitly address the
&gt;&gt; case when
&gt;&gt; &gt;&gt; the same schema document in referenced both directly (via
&gt;&gt; import or
&gt;&gt; &gt;&gt; include) and indirectly (via redefine).  The rules for
&gt;&gt; import specify
&gt;&gt; &gt;&gt; that the components imported via the import or include should be
&gt;&gt; &gt;&gt; present in the resulting schema; the discussion of
&gt;&gt; redefine says that
&gt;&gt; &gt;&gt; the effect of redefine is pervasive.
&gt;&gt; &gt;&gt;
&gt;&gt; &gt;
&gt;&gt; &gt; Yes, that's what it says, and it's contradictory.
&gt;&gt; &gt;
&gt;&gt; &gt;
&gt;&gt; &gt;&gt; Some readers interpret this to mean that the
&gt;&gt; pervasive-redefinition
&gt;&gt; &gt;&gt; rule overrides, or modifies the effect of, the import and include
&gt;&gt; &gt;&gt; rules.  On this reading the schema is legal and the components are
&gt;&gt; &gt;&gt; present in their redefined form (and only that form).
&gt;&gt; This reading
&gt;&gt; &gt;&gt; effectively attaches to the rules for include and import
&gt;&gt; an unspoken
&gt;&gt; &gt;&gt; exception to the effect that the components imported or
&gt;&gt; included are
&gt;&gt; &gt;&gt; present in the resulting schema unless they are redefined by some
&gt;&gt; &gt;&gt; other schema document reference.
&gt;&gt; &gt;&gt;
&gt;&gt; &gt;&gt; Other readers interpret the rules as requiring that the
&gt;&gt; components in
&gt;&gt; &gt;&gt; question should be present both in their original and in their
&gt;&gt; &gt;&gt; redefined form, which means that the schema violates the rule that
&gt;&gt; &gt;&gt; there must be at most one component of any kind with a
&gt;&gt; given expanded
&gt;&gt; &gt;&gt; name, and thus that the schema should be rejected.
&gt;&gt; &gt;&gt;
&gt;&gt; &gt;
&gt;&gt; &gt; Yes, those are at least two of the widely held positions as to what
&gt;&gt; &gt; was &quot;really&quot; intended, and I don't think I'm aware of any others.
&gt;&gt; &gt;
&gt;&gt; &gt;
&gt;&gt; &gt;&gt; It is my personal belief that the most plausible interpretation of
&gt;&gt; &gt;&gt; the specification is the latter; as you have observed, at
&gt;&gt; least some
&gt;&gt; &gt;&gt; implementors disagree and prefer the other interpretation.
&gt;&gt; &gt;&gt;
&gt;&gt; &gt;
&gt;&gt; &gt; I happen to be one of the others who would prefer that the
&gt;&gt; redefine be
&gt;&gt; &gt; pervasive, but the important point here is that either
&gt;&gt; interpretation
&gt;&gt; &gt; is plausible, and we agree on that.
&gt;&gt; &gt;
&gt;&gt; &gt;
&gt;&gt; &gt;&gt; The inability of the XML Schema working group to agree on
&gt;&gt; a normative
&gt;&gt; &gt;&gt; interpretation of XSD 1.0 has led to the agreement to
&gt;&gt; deprecate the
&gt;&gt; &gt;&gt; redefine element in XSD 1.1.
&gt;&gt; &gt;&gt;
&gt;&gt; &gt;
&gt;&gt; &gt; Here, I'd like to add one bit.  While Michael is correct that the
&gt;&gt; &gt; working group has &quot;agreed&quot; on this, some of us joined in that
&gt;&gt; &gt; agreement with some hesitancy, because we believe that
&gt;&gt; &lt;redefine&gt; has
&gt;&gt; &gt; seen widespread use, including in cases that do not trigger (or at
&gt;&gt; &gt; least do not as clearly
&gt;&gt; &gt; trigger) the ambiguities that are causing trouble here.
&gt;&gt; So, in light
&gt;&gt; &gt; of those concerns, the working group also agreed to make the
&gt;&gt; &gt; deprecation of &lt;redefine&gt; a so-called Priority Feedback issue.
&gt;&gt; &gt; Quoting from the working draft [1]:
&gt;&gt; &gt;
&gt;&gt; &gt; ----
&gt;&gt; &gt; Note: The redefinition feature described in the remainder of this
&gt;&gt; &gt; section is .deprecated. and may be removed from future versions of
&gt;&gt; &gt; this specification. Schema authors are encouraged to avoid
&gt;&gt; its use in
&gt;&gt; &gt; cases where interoperability or compatibility with later
&gt;&gt; versions of
&gt;&gt; &gt; this specification are important.
&gt;&gt; &gt;
&gt;&gt; &gt; Editorial Note: Priority Feedback Request
&gt;&gt; &gt;
&gt;&gt; &gt; The Working Group requests feedback from readers, schema authors,
&gt;&gt; &gt; implementors, and other users of this specification as to the
&gt;&gt; &gt; desirability of retaining, removing, deprecating, or not
&gt;&gt; deprecating
&gt;&gt; &gt; the use of &lt;redefine&gt;. Since the &lt;override&gt; facility
&gt;&gt; provides similar
&gt;&gt; &gt; functionality but does not require a restriction or
&gt;&gt; extension relation
&gt;&gt; &gt; between the new and the old definitions of redefined
&gt;&gt; components, the
&gt;&gt; &gt; Working Group is particularly interested in learning
&gt;&gt; whether users of
&gt;&gt; &gt; this specification find that requirement useful or not.
&gt;&gt; &gt; ----
&gt;&gt; &gt;
&gt;&gt; &gt; So, if any readers of this thread have opinions on the plan to
&gt;&gt; &gt; deprecate, the Schema Working group would welcome hearing
&gt;&gt; about them.
&gt;&gt; &gt; I think it's worth noting that this thread has already made clear
&gt;&gt; &gt; that: 1) this is a known area of complexity and the working
&gt;&gt; group has
&gt;&gt; &gt; already tried and so far failed to find an easy resolution
&gt;&gt; acceptable
&gt;&gt; &gt; to all; 2) there are incompatibilities in widely deployed
&gt;&gt; &gt; implementations, so any clear resolution is quite likely to make
&gt;&gt; &gt; someone with an investment in code very unhappy.  That's
&gt;&gt; not to say I
&gt;&gt; &gt; wouldn't like it cleaned up;  indeed, I'm among those who put many
&gt;&gt; &gt; months into trying a few years ago (as did Michael). I'm
&gt;&gt; just pointing
&gt;&gt; &gt; out that our choices may be to deprecate or undeprecate, but going
&gt;&gt; &gt; further to remove the ambiguity is likely to be a
&gt;&gt; significant effort
&gt;&gt; &gt; that will introduce incompatibilities for at least
&gt;&gt; somebody.  Maybe or
&gt;&gt; &gt; maybe not we could find a way to warn people off from the most
&gt;&gt; &gt; troublesome cases, but I know that Michael and perhaps others will
&gt;&gt; &gt; correctly point out that the whole conceptual framework for this
&gt;&gt; &gt; &quot;composition&quot; function is sufficiently shaky in the current drafts
&gt;&gt; &gt; that any fix short of a complete rewrite is likely to leave
&gt;&gt; things in a messy state.
&gt;&gt; &gt;
&gt;&gt; &gt; Noah
&gt;&gt; &gt;
&gt;&gt; &gt; [1] http://www.w3.org/TR/xmlschema11-1/#modify-schema
&gt;&gt; &gt;
&gt;&gt; &gt; --------------------------------------
&gt;&gt; &gt; Noah Mendelsohn
&gt;&gt; &gt; IBM Corporation
&gt;&gt; &gt; One Rogers Street
&gt;&gt; &gt; Cambridge, MA 02142
&gt;&gt; &gt; 1-617-693-4036
&gt;&gt; &gt; --------------------------------------
&gt;&gt; &gt;
&gt;&gt; &gt;
&gt;&gt; &gt;
&gt;&gt; &gt;
&gt;&gt; &gt;
&gt;&gt; &gt;
&gt;&gt; &gt;
&gt;&gt;
&gt;
&gt; 
</pre>
<span id="received"><dfn>Received on</dfn> Saturday,  3 October 2009 10:14:47 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post08000.htm</link><pubDate>Sat, 03 Oct 2009 12:13:54 GMT</pubDate></item><item><title>Re: Escalation mechanism for different interpretation of W3C XML-Schema    specification ? </title><description><![CDATA[<pre id="body">
<a name="start9" accesskey="j" id="start9"></a>Jozef Aerts writes:

&gt; <a title="Converter JSON to XML" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.xmlconverters.com/tutorials/json-and-xquery.html">So JSON</a> may be a good alternative.

I would never discourage you from looking for the best language to meet 
your needs, and JSON is in many respects simpler than XML.  That said, 
keep in mind that JSON is fundamentally aimed at what we informally call 
&quot;data&quot;, I.e. roughly the sorts of things that fit well into a <a title="Java" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/configure_jre.html">Java</a>, C, or 
(of course) Javascript structure.  JSON is typically not good at dealing 
with structured documents, in which multiple paragraphs must be kept in 
order, and mixed with other structures such as address fields, approval 
markings, signatures, or text formatting information.  It's not that you 
can do that with JSON, but in complex cases you wind up doing a lot of 
work in nonstandard ways. 

So my guideline would be:  if you're really dealing with fairly pure 
&quot;data&quot;, take your pick according to the skills of your programmers, the 
tooling you want to use, and especially the expectations of those with 
whom you will be sharing the data.  If you have lots of document-style 
information to deal with (and there are sort of vague estimates that the 
vast majority of information that computers deal with is more like that 
these day), then I'd think twice before using something like JSON. 
Instead, I'd go with a custom XML vocabulary, or if you prefer, an Open 
Document Format file.

Noah

--------------------------------------
Noah Mendelsohn 
IBM Corporation
One Rogers Street
Cambridge, MA 02142
1-617-693-4036
--------------------------------------








&quot;XML4Pharma&quot; &lt;<a href="mailto:info&#x40;&#0088;&#0077;&#0076;&#0052;&#0080;&#0104;&#0097;&#0114;&#0109;&#0097;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20%20specification%20%3F&amp;In-Reply-To=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E&amp;References=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E">info&#x40;&#0088;&#0077;&#0076;&#0052;&#0080;&#0104;&#0097;&#0114;&#0109;&#0097;&#0046;&#0099;&#0111;&#0109;</a>&gt;
10/03/2009 06:13 AM
Please respond to &quot;XML4Pharma&quot;
 
        To:     &quot;<a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a>&quot; &lt;<a href="mailto:mike&#x40;&#0115;&#0097;&#0120;&#0111;&#0110;&#0105;&#0099;&#0097;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20%20specification%20%3F&amp;In-Reply-To=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E&amp;References=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E">mike&#x40;&#0115;&#0097;&#0120;&#0111;&#0110;&#0105;&#0099;&#0097;&#0046;&#0099;&#0111;&#0109;</a>&gt;, &quot;'Dennis Sosnoski'&quot; 
&lt;<a href="mailto:dms&#x40;&#0115;&#0111;&#0115;&#0110;&#0111;&#0115;&#0107;&#0105;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20%20specification%20%3F&amp;In-Reply-To=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E&amp;References=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E">dms&#x40;&#0115;&#0111;&#0115;&#0110;&#0111;&#0115;&#0107;&#0105;&#0046;&#0099;&#0111;&#0109;</a>&gt;, &lt;<a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20%20specification%20%3F&amp;In-Reply-To=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E&amp;References=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a>&gt;
        cc:     &quot;'C. M. Sperberg-McQueen'&quot; &lt;<a href="mailto:cmsmcq&#x40;&#0098;&#0108;&#0097;&#0099;&#0107;&#0109;&#0101;&#0115;&#0097;&#0116;&#0101;&#0099;&#0104;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20%20specification%20%3F&amp;In-Reply-To=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E&amp;References=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E">cmsmcq&#x40;&#0098;&#0108;&#0097;&#0099;&#0107;&#0109;&#0101;&#0115;&#0097;&#0116;&#0101;&#0099;&#0104;&#0046;&#0099;&#0111;&#0109;</a>&gt;, 
&lt;<a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20%20specification%20%3F&amp;In-Reply-To=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E&amp;References=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>&gt;
        Subject:        Re: Escalation mechanism for different 
interpretation of W3C XML-Schema   specification ?


In our extension schemas, we only use &quot;redefine&quot; to ADD extra attributes 
and 
elements (in a separate namespace), not to change or remove any existing 
ones.

One of my positive surprises with the way we implemented it, is that a XML 

data binding like XMLBeans had no problem at all working with it: it was 
very easy to derive all classes from our schemas including the &quot;redefine&quot;.

Dennis suggested to have a look at JSON, which I did.
This might be a very good idea for a format for submitting 
information/data 
to the FDA.
The problem at the FDA is that there is almost noone there with a basic 
understanding of XML, and those who have left the FDA to become a 
well-paid 
consultant. Some departments at the FDA have the greatest difficulty to 
validate even very simple XML documents.
The FDA is currently planning to switch to HL7-v3-XML messages for 
electronic submissions of data to the agency. As HL7-v3-XML is highly 
complex (and even not good XML i.m.o.) I think this will lead to disaster. 

So JSON may be a good alternative.
I had a quick look, but JSON does not have some data types like date, time 

and dateTime. Would be nice if they had ...

Best,

Jozef Aerts
XML4Pharma


----- Original Message ----- 
From: &quot;Michael Kay&quot; &lt;<a href="mailto:mike&#x40;&#0115;&#0097;&#0120;&#0111;&#0110;&#0105;&#0099;&#0097;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20%20specification%20%3F&amp;In-Reply-To=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E&amp;References=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E">mike&#x40;&#0115;&#0097;&#0120;&#0111;&#0110;&#0105;&#0099;&#0097;&#0046;&#0099;&#0111;&#0109;</a>&gt;
To: &quot;'Dennis Sosnoski'&quot; &lt;<a href="mailto:dms&#x40;&#0115;&#0111;&#0115;&#0110;&#0111;&#0115;&#0107;&#0105;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20%20specification%20%3F&amp;In-Reply-To=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E&amp;References=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E">dms&#x40;&#0115;&#0111;&#0115;&#0110;&#0111;&#0115;&#0107;&#0105;&#0046;&#0099;&#0111;&#0109;</a>&gt;; &lt;<a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20%20specification%20%3F&amp;In-Reply-To=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E&amp;References=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a>&gt;
Cc: &quot;'XMLSchema at XML4Pharma'&quot; &lt;<a href="mailto:XMLSchema&#x40;&#0088;&#0077;&#0076;&#0052;&#0080;&#0104;&#0097;&#0114;&#0109;&#0097;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20%20specification%20%3F&amp;In-Reply-To=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E&amp;References=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E">XMLSchema&#x40;&#0088;&#0077;&#0076;&#0052;&#0080;&#0104;&#0097;&#0114;&#0109;&#0097;&#0046;&#0099;&#0111;&#0109;</a>&gt;; &quot;'C. M. 
Sperberg-McQueen'&quot; &lt;<a href="mailto:cmsmcq&#x40;&#0098;&#0108;&#0097;&#0099;&#0107;&#0109;&#0101;&#0115;&#0097;&#0116;&#0101;&#0099;&#0104;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20%20specification%20%3F&amp;In-Reply-To=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E&amp;References=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E">cmsmcq&#x40;&#0098;&#0108;&#0097;&#0099;&#0107;&#0109;&#0101;&#0115;&#0097;&#0116;&#0101;&#0099;&#0104;&#0046;&#0099;&#0111;&#0109;</a>&gt;; &lt;<a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20%20specification%20%3F&amp;In-Reply-To=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E&amp;References=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>&gt;
Sent: Saturday, October 03, 2009 12:43 AM
Subject: RE: Escalation mechanism for different interpretation of W3C 
XML-Schema specification ?


&gt;
&gt; While I think many of your criticisms of xs:redefine and complex type
&gt; restriction and indeed xs:override are valid, I personally don't accept 
&gt; the
&gt; premise that XSD should be constrained or influenced by the data typing
&gt; paradigms of conventional programming languages. XML and XSD are first 
and
&gt; formost intended for designing hierarchic document structures (a 
&gt; discipline
&gt; with a far longer tradition than programming), and the fact that
&gt; conventional programming languages don't support such structures very 
well
&gt; means in my view that it's best to switch to languages that do.
&gt;
&gt; Regards,
&gt;
&gt; Michael Kay
&gt; http://www.saxonica.com/
&gt; http://twitter.com/michaelhkay
&gt;
&gt;
&gt;&gt; -----Original Message-----
&gt;&gt; From: <a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20%20specification%20%3F&amp;In-Reply-To=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E&amp;References=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
&gt;&gt; [mailto:<a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20%20specification%20%3F&amp;In-Reply-To=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E&amp;References=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>] On Behalf Of Dennis Sosnoski
&gt;&gt; Sent: 02 October 2009 23:10
&gt;&gt; To: <a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20%20specification%20%3F&amp;In-Reply-To=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E&amp;References=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a>
&gt;&gt; Cc: XMLSchema at XML4Pharma; C. M. Sperberg-McQueen;
&gt;&gt; <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20%20specification%20%3F&amp;In-Reply-To=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E&amp;References=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
&gt;&gt; Subject: Re: Escalation mechanism for different
&gt;&gt; interpretation of W3C XML-Schema specification ?
&gt;&gt;
&gt;&gt; Hi Noah,
&gt;&gt;
&gt;&gt; IMHO both xs:redefine and xs:complexType restriction should
&gt;&gt; be eliminated. With respect to the increasingly important
&gt;&gt; area of XML data binding for programming languages, redefine
&gt;&gt; and complexType restriction are generally ignored for the
&gt;&gt; simple reason that they have no equivalent in terms of data
&gt;&gt; models. The object oriented programming equivalent of
&gt;&gt; complexType restriction would be to define a subclass by
&gt;&gt; eliminating information from the parent class, which is a
&gt;&gt; bizarre concept in programming terms - if you want a limited
&gt;&gt; representation which is not supported by the current data
&gt;&gt; model you either refactor the data model to support the
&gt;&gt; particular subset you want or use a representation which has
&gt;&gt; more features than you need, with semantic constraints on the usage.
&gt;&gt; There are times when this limitation of object oriented
&gt;&gt; programming is inconvenient, but I suspect the vast majority
&gt;&gt; of developers would agree that the benefits in terms of clean
&gt;&gt; data models more than outweigh the inconvenience.
&gt;&gt;
&gt;&gt; Beyond this, the very nature of complexType restriction,
&gt;&gt; which requires repeating all portions of the original model
&gt;&gt; which are being retained, creates brittle definitions.
&gt;&gt;
&gt;&gt; redefine is an even stranger operation, effectively
&gt;&gt; performing surgery on an existing definition to deform it in
&gt;&gt; ways never intended by the original designers. One
&gt;&gt; consequence is that anyone looking at an instance of an XML
&gt;&gt; structure defined by a schema needs to be aware of other
&gt;&gt; schemas which may have modified the original schema definition.
&gt;&gt; Requiring knowledge of the entire set of schemas involved in
&gt;&gt; a document in order to understand one particular component of
&gt;&gt; the document is contrary to good design principles.
&gt;&gt;
&gt;&gt; It's hard for me to see how xs:override represents any kind
&gt;&gt; of improvement on redefine, so asking for feedback on
&gt;&gt; deprecating redefine while adding override into the mix seems
&gt;&gt; deliberately futile. From my point of view override suffers
&gt;&gt; from the same design failures as redefine, and should also be
&gt;&gt; eliminated.
&gt;&gt;
&gt;&gt; I realize that many uses of W3C schema are not concerned with
&gt;&gt; data binding, but I'd suggest that the difficulty of modeling
&gt;&gt; these constructs in terms of modern programming language
&gt;&gt; structures shows that they could be eliminated without
&gt;&gt; significantly harming the usefulness of schema.
&gt;&gt;
&gt;&gt;   - Dennis
&gt;&gt;
&gt;&gt; Dennis M. Sosnoski
&gt;&gt; XML and Web Services in Java
&gt;&gt; Training and Consulting
&gt;&gt; http://www.sosnoski.com - http://www.sosnoski.co.nz Seattle,
&gt;&gt; WA +1-425-939-0576 - Wellington, NZ +64-4-298-6117
&gt;&gt;
&gt;&gt;
&gt;&gt;
&gt;&gt; <a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20%20specification%20%3F&amp;In-Reply-To=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E&amp;References=%253COF4815E94D.E4CCD501-ON85257644.0053B6F8-85257644.00541CE2%40lotus.com%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a> wrote:
&gt;&gt; &gt; I strongly urge you to read Michael Sperberg-McQueen's note
&gt;&gt; carefully.
&gt;&gt; &gt; While, as noted below, some of my preferences for resolving
&gt;&gt; &gt; ambiguities happen to be different from his, I believe that
&gt;&gt; his email
&gt;&gt; &gt; very accurately and carefully summarizes the state of play on this
&gt;&gt; &gt; issue.  Let me just quote and comment on a few sections of
&gt;&gt; Michael's note:
&gt;&gt; &gt;
&gt;&gt; &gt;
&gt;&gt; &gt;&gt; The XSD 1.0 specification does not explicitly address the
&gt;&gt; case when
&gt;&gt; &gt;&gt; the same schema document in referenced both directly (via
&gt;&gt; import or
&gt;&gt; &gt;&gt; include) and indirectly (via redefine).  The rules for
&gt;&gt; import specify
&gt;&gt; &gt;&gt; that the components imported via the import or include should be
&gt;&gt; &gt;&gt; present in the resulting schema; the discussion of
&gt;&gt; redefine says that
&gt;&gt; &gt;&gt; the effect of redefine is pervasive.
&gt;&gt; &gt;&gt;
&gt;&gt; &gt;
&gt;&gt; &gt; Yes, that's what it says, and it's contradictory.
&gt;&gt; &gt;
&gt;&gt; &gt;
&gt;&gt; &gt;&gt; Some readers interpret this to mean that the
&gt;&gt; pervasive-redefinition
&gt;&gt; &gt;&gt; rule overrides, or modifies the effect of, the import and include
&gt;&gt; &gt;&gt; rules.  On this reading the schema is legal and the components are
&gt;&gt; &gt;&gt; present in their redefined form (and only that form).
&gt;&gt; This reading
&gt;&gt; &gt;&gt; effectively attaches to the rules for include and import
&gt;&gt; an unspoken
&gt;&gt; &gt;&gt; exception to the effect that the components imported or
&gt;&gt; included are
&gt;&gt; &gt;&gt; present in the resulting schema unless they are redefined by some
&gt;&gt; &gt;&gt; other schema document reference.
&gt;&gt; &gt;&gt;
&gt;&gt; &gt;&gt; Other readers interpret the rules as requiring that the
&gt;&gt; components in
&gt;&gt; &gt;&gt; question should be present both in their original and in their
&gt;&gt; &gt;&gt; redefined form, which means that the schema violates the rule that
&gt;&gt; &gt;&gt; there must be at most one component of any kind with a
&gt;&gt; given expanded
&gt;&gt; &gt;&gt; name, and thus that the schema should be rejected.
&gt;&gt; &gt;&gt;
&gt;&gt; &gt;
&gt;&gt; &gt; Yes, those are at least two of the widely held positions as to what
&gt;&gt; &gt; was &quot;really&quot; intended, and I don't think I'm aware of any others.
&gt;&gt; &gt;
&gt;&gt; &gt;
&gt;&gt; &gt;&gt; It is my personal belief that the most plausible interpretation of
&gt;&gt; &gt;&gt; the specification is the latter; as you have observed, at
&gt;&gt; least some
&gt;&gt; &gt;&gt; implementors disagree and prefer the other interpretation.
&gt;&gt; &gt;&gt;
&gt;&gt; &gt;
&gt;&gt; &gt; I happen to be one of the others who would prefer that the
&gt;&gt; redefine be
&gt;&gt; &gt; pervasive, but the important point here is that either
&gt;&gt; interpretation
&gt;&gt; &gt; is plausible, and we agree on that.
&gt;&gt; &gt;
&gt;&gt; &gt;
&gt;&gt; &gt;&gt; The inability of the XML Schema working group to agree on
&gt;&gt; a normative
&gt;&gt; &gt;&gt; interpretation of XSD 1.0 has led to the agreement to
&gt;&gt; deprecate the
&gt;&gt; &gt;&gt; redefine element in XSD 1.1.
&gt;&gt; &gt;&gt;
&gt;&gt; &gt;
&gt;&gt; &gt; Here, I'd like to add one bit.  While Michael is correct that the
&gt;&gt; &gt; working group has &quot;agreed&quot; on this, some of us joined in that
&gt;&gt; &gt; agreement with some hesitancy, because we believe that
&gt;&gt; &lt;redefine&gt; has
&gt;&gt; &gt; seen widespread use, including in cases that do not trigger (or at
&gt;&gt; &gt; least do not as clearly
&gt;&gt; &gt; trigger) the ambiguities that are causing trouble here.
&gt;&gt; So, in light
&gt;&gt; &gt; of those concerns, the working group also agreed to make the
&gt;&gt; &gt; deprecation of &lt;redefine&gt; a so-called Priority Feedback issue.
&gt;&gt; &gt; Quoting from the working draft [1]:
&gt;&gt; &gt;
&gt;&gt; &gt; ----
&gt;&gt; &gt; Note: The redefinition feature described in the remainder of this
&gt;&gt; &gt; section is .deprecated. and may be removed from future versions of
&gt;&gt; &gt; this specification. Schema authors are encouraged to avoid
&gt;&gt; its use in
&gt;&gt; &gt; cases where interoperability or compatibility with later
&gt;&gt; versions of
&gt;&gt; &gt; this specification are important.
&gt;&gt; &gt;
&gt;&gt; &gt; Editorial Note: Priority Feedback Request
&gt;&gt; &gt;
&gt;&gt; &gt; The Working Group requests feedback from readers, schema authors,
&gt;&gt; &gt; implementors, and other users of this specification as to the
&gt;&gt; &gt; desirability of retaining, removing, deprecating, or not
&gt;&gt; deprecating
&gt;&gt; &gt; the use of &lt;redefine&gt;. Since the &lt;override&gt; facility
&gt;&gt; provides similar
&gt;&gt; &gt; functionality but does not require a restriction or
&gt;&gt; extension relation
&gt;&gt; &gt; between the new and the old definitions of redefined
&gt;&gt; components, the
&gt;&gt; &gt; Working Group is particularly interested in learning
&gt;&gt; whether users of
&gt;&gt; &gt; this specification find that requirement useful or not.
&gt;&gt; &gt; ----
&gt;&gt; &gt;
&gt;&gt; &gt; So, if any readers of this thread have opinions on the plan to
&gt;&gt; &gt; deprecate, the Schema Working group would welcome hearing
&gt;&gt; about them.
&gt;&gt; &gt; I think it's worth noting that this thread has already made clear
&gt;&gt; &gt; that: 1) this is a known area of complexity and the working
&gt;&gt; group has
&gt;&gt; &gt; already tried and so far failed to find an easy resolution
&gt;&gt; acceptable
&gt;&gt; &gt; to all; 2) there are incompatibilities in widely deployed
&gt;&gt; &gt; implementations, so any clear resolution is quite likely to make
&gt;&gt; &gt; someone with an investment in code very unhappy.  That's
&gt;&gt; not to say I
&gt;&gt; &gt; wouldn't like it cleaned up;  indeed, I'm among those who put many
&gt;&gt; &gt; months into trying a few years ago (as did Michael). I'm
&gt;&gt; just pointing
&gt;&gt; &gt; out that our choices may be to deprecate or undeprecate, but going
&gt;&gt; &gt; further to remove the ambiguity is likely to be a
&gt;&gt; significant effort
&gt;&gt; &gt; that will introduce incompatibilities for at least
&gt;&gt; somebody.  Maybe or
&gt;&gt; &gt; maybe not we could find a way to warn people off from the most
&gt;&gt; &gt; troublesome cases, but I know that Michael and perhaps others will
&gt;&gt; &gt; correctly point out that the whole conceptual framework for this
&gt;&gt; &gt; &quot;composition&quot; function is sufficiently shaky in the current drafts
&gt;&gt; &gt; that any fix short of a complete rewrite is likely to leave
&gt;&gt; things in a messy state.
&gt;&gt; &gt;
&gt;&gt; &gt; Noah
&gt;&gt; &gt;
&gt;&gt; &gt; [1] http://www.w3.org/TR/xmlschema11-1/#modify-schema
&gt;&gt; &gt;
&gt;&gt; &gt; --------------------------------------
&gt;&gt; &gt; Noah Mendelsohn
&gt;&gt; &gt; IBM Corporation
&gt;&gt; &gt; One Rogers Street
&gt;&gt; &gt; Cambridge, MA 02142
&gt;&gt; &gt; 1-617-693-4036
&gt;&gt; &gt; --------------------------------------
&gt;&gt; &gt;
&gt;&gt; &gt;
&gt;&gt; &gt;
&gt;&gt; &gt;
&gt;&gt; &gt;
&gt;&gt; &gt;
&gt;&gt; &gt;
&gt;&gt;
&gt;
&gt; 
</pre>
<span id="received"><dfn>Received on</dfn> Saturday,  3 October 2009 15:19:18 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post09000.htm</link><pubDate>Sat, 03 Oct 2009 11:18:38 GMT</pubDate></item><item><title>Re: Escalation mechanism for different interpretation of W3C XML-Schema   specification ? </title><description><![CDATA[<pre id="body">
<a name="start6" accesskey="j" id="start6"></a>Hi Noah,

IMHO both xs:redefine and <a title="xs:complexType" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">xs:complexType</a> restriction should be 
eliminated. With respect to the increasingly important area of <a title="XML data 
binding" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/jaxb.html">XML data 
binding</a> for programming languages, redefine and complexType restriction 
are generally ignored for the simple reason that they have no equivalent 
in terms of <a title="data models" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">data models</a>. The object oriented programming equivalent of 
complexType restriction would be to define a subclass by eliminating 
information from the parent class, which is a bizarre concept in 
programming terms - if you want a limited representation which is not 
supported by the current data model you either refactor the data model 
to support the particular subset you want or use a representation which 
has more features than you need, with semantic constraints on the usage. 
There are times when this limitation of object oriented programming is 
inconvenient, but I suspect the vast majority of developers would agree 
that the benefits in terms of clean data models more than outweigh the 
inconvenience.

Beyond this, the very nature of complexType restriction, which requires 
repeating all portions of the original model which are being retained, 
creates brittle definitions.

redefine is an even stranger operation, effectively performing surgery 
on an existing definition to deform it in ways never intended by the 
original designers. One consequence is that anyone looking at an 
instance of an XML structure <a title="Building XML Schemas" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xmlschema1/xmlschema1.html">defined by a schema</a> needs to be aware of 
other schemas which may have modified the original schema definition. 
Requiring knowledge of the entire set of schemas involved in a document 
in order to understand one particular component of the document is 
contrary to good design principles.

It's hard for me to see how xs:override represents any kind of 
improvement on redefine, so asking for feedback on deprecating redefine 
while adding override into the mix seems deliberately futile. From my 
point of view override suffers from the same design failures as 
redefine, and should also be eliminated.

I realize that many uses of <a title="W3C" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">W3C</a> schema are not concerned with data 
binding, but I'd suggest that the difficulty of modeling these 
constructs in terms of modern programming language structures shows that 
they could be eliminated without significantly harming the usefulness of 
schema.

  - Dennis

Dennis M. Sosnoski
XML and <a title="Web Services" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/web_services.html">Web Services</a> in <a title="Java" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/configure_jre.html">Java</a>
Training and Consulting
http://www.sosnoski.com - http://www.sosnoski.co.nz
Seattle, WA +1-425-939-0576 - Wellington, NZ +64-4-298-6117



<a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20specification%20%3F&amp;In-Reply-To=%253C4AC67A34.4030804%40sosnoski.com%253E&amp;References=%253C4AC67A34.4030804%40sosnoski.com%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a> wrote:
&gt; I strongly urge you to read Michael Sperberg-McQueen's note carefully. 
&gt; While, as noted below, some of my preferences for resolving ambiguities 
&gt; happen to be different from his, I believe that his email very accurately 
&gt; and carefully summarizes the state of play on this issue.  Let me just 
&gt; quote and comment on a few sections of Michael's note:
&gt;
&gt;   
&gt;&gt; The XSD 1.0 specification does not explicitly address the case
&gt;&gt; when the same schema document in referenced both directly
&gt;&gt; (via import or include) and indirectly (via redefine).  The
&gt;&gt; rules for import specify that the components imported
&gt;&gt; via the import or include should be present in the resulting
&gt;&gt; schema; the discussion of redefine says that the effect of
&gt;&gt; redefine is pervasive.
&gt;&gt;     
&gt;
&gt; Yes, that's what it says, and it's contradictory.
&gt;
&gt;   
&gt;&gt; Some readers interpret this to mean that the pervasive-redefinition
&gt;&gt; rule overrides, or modifies the effect of, the import and include
&gt;&gt; rules.  On this reading the schema is legal and the components
&gt;&gt; are present in their redefined form (and only that form).  This
&gt;&gt; reading effectively attaches to the rules for include and import
&gt;&gt; an unspoken exception to the effect that the components imported
&gt;&gt; or included are present in the resulting schema unless they are
&gt;&gt; redefined by some other schema document reference.
&gt;&gt;
&gt;&gt; Other readers interpret the rules as requiring that the
&gt;&gt; components in question should be present both in their
&gt;&gt; original and in their redefined form, which means that the
&gt;&gt; schema violates the rule that there must be at most one
&gt;&gt; component of any kind with a given expanded name, and thus
&gt;&gt; that the schema should be rejected.
&gt;&gt;     
&gt;
&gt; Yes, those are at least two of the widely held positions as to what was 
&gt; &quot;really&quot; intended, and I don't think I'm aware of any others.
&gt;
&gt;   
&gt;&gt; It is my personal belief that the most plausible interpretation
&gt;&gt; of the specification is the latter; as you have observed, at
&gt;&gt; least some implementors disagree and prefer the other
&gt;&gt; interpretation.
&gt;&gt;     
&gt;
&gt; I happen to be one of the others who would prefer that the redefine be 
&gt; pervasive, but the important point here is that either interpretation is 
&gt; plausible, and we agree on that.
&gt;
&gt;   
&gt;&gt; The inability of the XML Schema working group to agree on a
&gt;&gt; normative interpretation of XSD 1.0 has led to the agreement to
&gt;&gt; deprecate the redefine element in XSD 1.1. 
&gt;&gt;     
&gt;
&gt; Here, I'd like to add one bit.  While Michael is correct that the working 
&gt; group has &quot;agreed&quot; on this, some of us joined in that agreement with some 
&gt; hesitancy, because we believe that &lt;redefine&gt; has seen widespread use, 
&gt; including in cases that do not trigger (or at least do not as clearly 
&gt; trigger) the ambiguities that are causing trouble here.  So, in light of 
&gt; those concerns, the working group also agreed to make the deprecation of 
&gt; &lt;redefine&gt; a so-called Priority Feedback issue.  Quoting from the working 
&gt; draft [1]:
&gt;
&gt; ----
&gt; Note: The redefinition feature described in the remainder of this section 
&gt; is ·deprecated· and may be removed from future versions of this 
&gt; specification. Schema authors are encouraged to avoid its use in cases 
&gt; where interoperability or compatibility with later versions of this 
&gt; specification are important.
&gt;
&gt; Editorial Note: Priority Feedback Request
&gt;
&gt; The Working Group requests feedback from readers, schema authors, 
&gt; implementors, and other users of this specification as to the desirability 
&gt; of retaining, removing, deprecating, or not deprecating the use of 
&gt; &lt;redefine&gt;. Since the &lt;override&gt; facility provides similar functionality 
&gt; but does not require a restriction or extension relation between the new 
&gt; and the old definitions of redefined components, the Working Group is 
&gt; particularly interested in learning whether users of this specification 
&gt; find that requirement useful or not. 
&gt; ----
&gt;
&gt; So, if any readers of this thread have opinions on the plan to deprecate, 
&gt; the Schema Working group would welcome hearing about them.  I think it's 
&gt; worth noting that this thread has already made clear that: 1) this is a 
&gt; known area of complexity and the working group has already tried and so 
&gt; far failed to find an easy resolution acceptable to all; 2) there are 
&gt; incompatibilities in widely deployed implementations, so any clear 
&gt; resolution is quite likely to make someone with an investment in code very 
&gt; unhappy.  That's not to say I wouldn't like it cleaned up;  indeed, I'm 
&gt; among those who put many months into trying a few years ago (as did 
&gt; Michael). I'm just pointing out that our choices may be to deprecate or 
&gt; undeprecate, but going further to remove the ambiguity is likely to be a 
&gt; significant effort that will introduce incompatibilities for at least 
&gt; somebody.  Maybe or maybe not we could find a way to warn people off from 
&gt; the most troublesome cases, but I know that Michael and perhaps others 
&gt; will correctly point out that the whole conceptual framework for this 
&gt; &quot;composition&quot; function is sufficiently shaky in the current drafts that 
&gt; any fix short of a complete rewrite is likely to leave things in a messy 
&gt; state.
&gt;
&gt; Noah
&gt;
&gt; [1] http://www.w3.org/TR/xmlschema11-1/#modify-schema
&gt;
&gt; --------------------------------------
&gt; Noah Mendelsohn 
&gt; IBM Corporation
&gt; One Rogers Street
&gt; Cambridge, MA 02142
&gt; 1-617-693-4036
&gt; --------------------------------------
&gt;
&gt;
&gt;
&gt;
&gt;
&gt;
&gt;   
</pre>
<span id="received"><dfn>Received on</dfn> Friday,  2 October 2009 22:10:45 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post06000.htm</link><pubDate>Sat, 03 Oct 2009 11:09:56 GMT</pubDate></item><item><title>RE: Escalation mechanism for different interpretation of W3C XML-Schema   specification ? </title><description><![CDATA[<pre id="body">
<a name="start7" accesskey="j" id="start7"></a>
While I think many of your criticisms of xs:redefine and complex type
restriction and indeed xs:override are valid, I personally don't accept the
premise that <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">XSD</a> should be constrained or influenced by the data typing
paradigms of conventional programming languages. <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">XML</a> and XSD are first and
formost intended for designing hierarchic document structures (a discipline
with a far longer tradition than programming), and the fact that
conventional programming languages don't support such structures very well
means in my view that it's best to switch to languages that do.

Regards,

<a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a>
http://www.saxonica.com/
http://twitter.com/michaelhkay 
 

&gt; -----Original Message-----
&gt; From: <a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20specification%20%3F&amp;In-Reply-To=%253C6546F1A37383428484228B46533AAEFE%40Sealion%253E&amp;References=%253C6546F1A37383428484228B46533AAEFE%40Sealion%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a> 
&gt; [mailto:<a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20specification%20%3F&amp;In-Reply-To=%253C6546F1A37383428484228B46533AAEFE%40Sealion%253E&amp;References=%253C6546F1A37383428484228B46533AAEFE%40Sealion%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>] On Behalf Of Dennis Sosnoski
&gt; Sent: 02 October 2009 23:10
&gt; To: <a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20specification%20%3F&amp;In-Reply-To=%253C6546F1A37383428484228B46533AAEFE%40Sealion%253E&amp;References=%253C6546F1A37383428484228B46533AAEFE%40Sealion%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a>
&gt; Cc: XMLSchema at XML4Pharma; C. M. Sperberg-McQueen; 
&gt; <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20specification%20%3F&amp;In-Reply-To=%253C6546F1A37383428484228B46533AAEFE%40Sealion%253E&amp;References=%253C6546F1A37383428484228B46533AAEFE%40Sealion%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
&gt; Subject: Re: Escalation mechanism for different 
&gt; interpretation of W3C XML-<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/schema0/_index.htm">Schema specification</a> ?
&gt; 
&gt; Hi Noah,
&gt; 
&gt; IMHO both xs:redefine and <a title="xs:complexType" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">xs:complexType</a> restriction should 
&gt; be eliminated. With respect to the increasingly important 
&gt; area of <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/jaxb.html">XML data binding</a> for programming languages, redefine 
&gt; and complexType restriction are generally ignored for the 
&gt; simple reason that they have no equivalent in terms of data 
&gt; models. The object oriented programming equivalent of 
&gt; complexType restriction would be to define a subclass by 
&gt; eliminating information from the parent class, which is a 
&gt; bizarre concept in programming terms - if you want a limited 
&gt; representation which is not supported by the current data 
&gt; model you either refactor the <a title="data model" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">data model</a> to support the 
&gt; particular subset you want or use a representation which has 
&gt; more features than you need, with semantic constraints on the usage. 
&gt; There are times when this limitation of object oriented 
&gt; programming is inconvenient, but I suspect the vast majority 
&gt; of developers would agree that the benefits in terms of clean 
&gt; data models more than outweigh the inconvenience.
&gt; 
&gt; Beyond this, the very nature of complexType restriction, 
&gt; which requires repeating all portions of the original model 
&gt; which are being retained, creates brittle definitions.
&gt; 
&gt; redefine is an even stranger operation, effectively 
&gt; performing surgery on an existing definition to deform it in 
&gt; ways never intended by the original designers. One 
&gt; consequence is that anyone looking at an instance of an XML 
&gt; structure defined by a schema needs to be aware of other 
&gt; schemas which may have modified the original schema definition. 
&gt; Requiring knowledge of the entire set of schemas involved in 
&gt; a document in order to understand one particular component of 
&gt; the document is contrary to good design principles.
&gt; 
&gt; It's hard for me to see how xs:override represents any kind 
&gt; of improvement on redefine, so asking for feedback on 
&gt; deprecating redefine while adding override into the mix seems 
&gt; deliberately futile. From my point of view override suffers 
&gt; from the same design failures as redefine, and should also be 
&gt; eliminated.
&gt; 
&gt; I realize that many uses of W3C schema are not concerned with 
&gt; data binding, but I'd suggest that the difficulty of modeling 
&gt; these constructs in terms of modern programming language 
&gt; structures shows that they could be eliminated without 
&gt; significantly harming the usefulness of schema.
&gt; 
&gt;   - Dennis
&gt; 
&gt; Dennis M. Sosnoski
&gt; XML and Web Services in Java
&gt; Training and Consulting
&gt; http://www.sosnoski.com - http://www.sosnoski.co.nz Seattle, 
&gt; WA +1-425-939-0576 - Wellington, NZ +64-4-298-6117
&gt; 
&gt; 
&gt; 
&gt; <a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20%20%20specification%20%3F&amp;In-Reply-To=%253C6546F1A37383428484228B46533AAEFE%40Sealion%253E&amp;References=%253C6546F1A37383428484228B46533AAEFE%40Sealion%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a> wrote:
&gt; &gt; I strongly urge you to read Michael Sperberg-McQueen's note 
&gt; carefully. 
&gt; &gt; While, as noted below, some of my preferences for resolving 
&gt; &gt; ambiguities happen to be different from his, I believe that 
&gt; his email 
&gt; &gt; very accurately and carefully summarizes the state of play on this 
&gt; &gt; issue.  Let me just quote and comment on a few sections of 
&gt; Michael's note:
&gt; &gt;
&gt; &gt;   
&gt; &gt;&gt; The XSD 1.0 specification does not explicitly address the 
&gt; case when 
&gt; &gt;&gt; the same schema document in referenced both directly (via 
&gt; import or 
&gt; &gt;&gt; include) and indirectly (via redefine).  The rules for 
&gt; import specify 
&gt; &gt;&gt; that the components imported via the import or include should be 
&gt; &gt;&gt; present in the resulting schema; the discussion of 
&gt; redefine says that 
&gt; &gt;&gt; the effect of redefine is pervasive.
&gt; &gt;&gt;     
&gt; &gt;
&gt; &gt; Yes, that's what it says, and it's contradictory.
&gt; &gt;
&gt; &gt;   
&gt; &gt;&gt; Some readers interpret this to mean that the 
&gt; pervasive-redefinition 
&gt; &gt;&gt; rule overrides, or modifies the effect of, the import and include 
&gt; &gt;&gt; rules.  On this reading the schema is legal and the components are 
&gt; &gt;&gt; present in their redefined form (and only that form).  
&gt; This reading 
&gt; &gt;&gt; effectively attaches to the rules for include and import 
&gt; an unspoken 
&gt; &gt;&gt; exception to the effect that the components imported or 
&gt; included are 
&gt; &gt;&gt; present in the resulting schema unless they are redefined by some 
&gt; &gt;&gt; other schema document reference.
&gt; &gt;&gt;
&gt; &gt;&gt; Other readers interpret the rules as requiring that the 
&gt; components in 
&gt; &gt;&gt; question should be present both in their original and in their 
&gt; &gt;&gt; redefined form, which means that the schema violates the rule that 
&gt; &gt;&gt; there must be at most one component of any kind with a 
&gt; given expanded 
&gt; &gt;&gt; name, and thus that the schema should be rejected.
&gt; &gt;&gt;     
&gt; &gt;
&gt; &gt; Yes, those are at least two of the widely held positions as to what 
&gt; &gt; was &quot;really&quot; intended, and I don't think I'm aware of any others.
&gt; &gt;
&gt; &gt;   
&gt; &gt;&gt; It is my personal belief that the most plausible interpretation of 
&gt; &gt;&gt; the specification is the latter; as you have observed, at 
&gt; least some 
&gt; &gt;&gt; implementors disagree and prefer the other interpretation.
&gt; &gt;&gt;     
&gt; &gt;
&gt; &gt; I happen to be one of the others who would prefer that the 
&gt; redefine be 
&gt; &gt; pervasive, but the important point here is that either 
&gt; interpretation 
&gt; &gt; is plausible, and we agree on that.
&gt; &gt;
&gt; &gt;   
&gt; &gt;&gt; The inability of the XML Schema working group to agree on 
&gt; a normative 
&gt; &gt;&gt; interpretation of XSD 1.0 has led to the agreement to 
&gt; deprecate the 
&gt; &gt;&gt; redefine element in XSD 1.1.
&gt; &gt;&gt;     
&gt; &gt;
&gt; &gt; Here, I'd like to add one bit.  While Michael is correct that the 
&gt; &gt; working group has &quot;agreed&quot; on this, some of us joined in that 
&gt; &gt; agreement with some hesitancy, because we believe that 
&gt; &lt;redefine&gt; has 
&gt; &gt; seen widespread use, including in cases that do not trigger (or at 
&gt; &gt; least do not as clearly
&gt; &gt; trigger) the ambiguities that are causing trouble here.  
&gt; So, in light 
&gt; &gt; of those concerns, the working group also agreed to make the 
&gt; &gt; deprecation of &lt;redefine&gt; a so-called Priority Feedback issue.  
&gt; &gt; Quoting from the working draft [1]:
&gt; &gt;
&gt; &gt; ----
&gt; &gt; Note: The redefinition feature described in the remainder of this 
&gt; &gt; section is .deprecated. and may be removed from future versions of 
&gt; &gt; this specification. Schema authors are encouraged to avoid 
&gt; its use in 
&gt; &gt; cases where interoperability or compatibility with later 
&gt; versions of 
&gt; &gt; this specification are important.
&gt; &gt;
&gt; &gt; Editorial Note: Priority Feedback Request
&gt; &gt;
&gt; &gt; The Working Group requests feedback from readers, schema authors, 
&gt; &gt; implementors, and other users of this specification as to the 
&gt; &gt; desirability of retaining, removing, deprecating, or not 
&gt; deprecating 
&gt; &gt; the use of &lt;redefine&gt;. Since the &lt;override&gt; facility 
&gt; provides similar 
&gt; &gt; functionality but does not require a restriction or 
&gt; extension relation 
&gt; &gt; between the new and the old definitions of redefined 
&gt; components, the 
&gt; &gt; Working Group is particularly interested in learning 
&gt; whether users of 
&gt; &gt; this specification find that requirement useful or not.
&gt; &gt; ----
&gt; &gt;
&gt; &gt; So, if any readers of this thread have opinions on the plan to 
&gt; &gt; deprecate, the Schema Working group would welcome hearing 
&gt; about them.  
&gt; &gt; I think it's worth noting that this thread has already made clear 
&gt; &gt; that: 1) this is a known area of complexity and the working 
&gt; group has 
&gt; &gt; already tried and so far failed to find an easy resolution 
&gt; acceptable 
&gt; &gt; to all; 2) there are incompatibilities in widely deployed 
&gt; &gt; implementations, so any clear resolution is quite likely to make 
&gt; &gt; someone with an investment in code very unhappy.  That's 
&gt; not to say I 
&gt; &gt; wouldn't like it cleaned up;  indeed, I'm among those who put many 
&gt; &gt; months into trying a few years ago (as did Michael). I'm 
&gt; just pointing 
&gt; &gt; out that our choices may be to deprecate or undeprecate, but going 
&gt; &gt; further to remove the ambiguity is likely to be a 
&gt; significant effort 
&gt; &gt; that will introduce incompatibilities for at least 
&gt; somebody.  Maybe or 
&gt; &gt; maybe not we could find a way to warn people off from the most 
&gt; &gt; troublesome cases, but I know that Michael and perhaps others will 
&gt; &gt; correctly point out that the whole conceptual framework for this 
&gt; &gt; &quot;composition&quot; function is sufficiently shaky in the current drafts 
&gt; &gt; that any fix short of a complete rewrite is likely to leave 
&gt; things in a messy state.
&gt; &gt;
&gt; &gt; Noah
&gt; &gt;
&gt; &gt; [1] http://www.w3.org/TR/xmlschema11-1/#modify-schema
&gt; &gt;
&gt; &gt; --------------------------------------
&gt; &gt; Noah Mendelsohn
&gt; &gt; IBM Corporation
&gt; &gt; One Rogers Street
&gt; &gt; Cambridge, MA 02142
&gt; &gt; 1-617-693-4036
&gt; &gt; --------------------------------------
&gt; &gt;
&gt; &gt;
&gt; &gt;
&gt; &gt;
&gt; &gt;
&gt; &gt;
&gt; &gt;   
&gt; 
</pre>
<span id="received"><dfn>Received on</dfn> Friday,  2 October 2009 22:44:33 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post07000.htm</link><pubDate>Fri, 02 Oct 2009 23:43:49 GMT</pubDate></item><item><title>Purpose of requirement in 3.16.6.2 Derivation Valid (Restriction,  Simple) in XSD 1.1? </title><description><![CDATA[<pre id="body">
<a name="start5" accesskey="j" id="start5"></a>Hi,

In 3.16.6.2 Derivation Valid (Restriction, Simple)
(http://www.<a title="w3" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">w3</a>.org/TR/xmlschema11-1/#cos-st-restricts), step 3.1.2.3
says: &quot;Each type definition in D.{member type definitions}
&lt;http://www.w3.org/TR/xmlschema11-1/#std-member_type_definitions&gt; is
validly ·derived· &lt;http://www.w3.org/TR/xmlschema11-1/#key-derived&gt; from
the corresponding type definition in B.{member type definitions}
&lt;http://www.w3.org/TR/xmlschema11-1/#std-member_type_definitions&gt;, as
defined in Type Derivation OK (Simple) (§3.16.6.3)
&lt;http://www.w3.org/TR/xmlschema11-1/#cos-st-derived-ok&gt;.&quot;

What purpose does this requirement serve?  Isn't it the case that
D.{member type definitions} is identical to B.{member type definitions},
since this case applies when defining a restriction on a union?  Am I
missing something, or is this superfluous?

Thanks,
Kevin
</pre>
<span id="received"><dfn>Received on</dfn> Friday,  2 October 2009 15:59:52 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post05000.htm</link><pubDate>Fri, 02 Oct 2009 11:57:54 GMT</pubDate></item><item><title>Re: Escalation mechanism for different interpretation of W3C XML-Schema specification ? </title><description><![CDATA[<pre id="body">
<a name="start4" accesskey="j" id="start4"></a>Thanks Michael,

About the justification you are mentioning: that is exactly what our standard is about: allowing companies (but also the FDA) to add extra elements and attributes in a separate namespace.

The whole discussion is a trigger for us to move to XML-<a title="Using XML Schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">Schema 1.1</a> earlier than we envisaged. Problem here is that, except for <a title="Saxon" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/saxon_xquery_processor.html">Saxon</a>, there do seem not to be very much tools (editors, libraries, etc.) that allow validation of <a title="XML files" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_file_explorer.html">XML files</a> against XML-Schema 1.1.
Is there a list somewhere of tools that do so, or a list of vendors and when they intend to have Schema-1.1 validation ready ?

I will make a separate mailing with some comments/remarks/suggestions about escalation of issues, certification mechanisms, etc..

Jozef Aerts
XML4Pharma
  ----- Original Message ----- 
  From: <a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a> 
  To: 'XMLSchema at XML4Pharma' ; <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253CF9AD2A875183492CAF7CA5A7EF6A6243%40D6NXTQ1J%253E&amp;References=%253CF9AD2A875183492CAF7CA5A7EF6A6243%40D6NXTQ1J%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a> 
  Sent: Friday, October 02, 2009 12:53 AM
  Subject: RE: Escalation mechanism for different interpretation of W3C XML-<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/schema0/_index.htm">Schema specification</a> ?


  Just for the record (though it only really confirms the point that there are differing interpretations), I <a title="An Introduction to XML Schema Development" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xmlschema1/xmlschema1.html">implemented the XSD 1.0</a> specification without the benefit of knowing anything about the intent of the WG beyond what was written in the spec, and I came to the conclusion that there was only one way of interpreting the rule about xsd:redefine being &quot;pervasive&quot;. But then I also came to the conclusion that other parts of the schema composition rules had to be treated as loose statements of intent which didn't cover all contingencies.

  I would certainly advise against using xs:redefine in an industry schema specification. Its only possible justification in my view is to define a variant of a schema produced by a third party. And for that <a title="use case" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xquery/use_cases.html">use case</a>, I think it only works unambiguously if that schema uses a single target namespace throughout.

  Michael Kay
  Saxonica

----------------------------------------------------------------------------
    From: <a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253CF9AD2A875183492CAF7CA5A7EF6A6243%40D6NXTQ1J%253E&amp;References=%253CF9AD2A875183492CAF7CA5A7EF6A6243%40D6NXTQ1J%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a> [mailto:<a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253CF9AD2A875183492CAF7CA5A7EF6A6243%40D6NXTQ1J%253E&amp;References=%253CF9AD2A875183492CAF7CA5A7EF6A6243%40D6NXTQ1J%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>] On Behalf Of XMLSchema at XML4Pharma
    Sent: 29 September 2009 12:24
    To: <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253CF9AD2A875183492CAF7CA5A7EF6A6243%40D6NXTQ1J%253E&amp;References=%253CF9AD2A875183492CAF7CA5A7EF6A6243%40D6NXTQ1J%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
    Subject: Escalation mechanism for different interpretation of W3C XML-Schema specification ?


    We, the CDISC XML-Tech Governance Team (and other CDISC teams) have developed a number of extensible standards for exchange of clinical data and for submitting information to the regulatory authorities (FDA).

    CDISC is a Standardization Organization active in the healthcare world.

    Our extension mechanism is based on the &quot;import&quot; and &quot;redefine&quot; elements of XML-Schema.

    We now have a serious dispute with one technology vendor (Altova) about the way &quot;import&quot; and &quot;redefine&quot; are used. Instance files of one of our extensions (so-called &quot;define.xml&quot;) validate well in all major validators and XML-editors, except for the products of this one vendor.

    When confronted with this result, the reaction of Altova essentially is that &quot;Altova is right, all others are wrong&quot;. The dispute and discussion with Altova can be followed at:
    http://www.altova.com/forum/default.aspx?g=posts&amp;m=1000005665

    The issue were not so serious if it were not that our standard &quot;define.xml&quot; is a standard for submission of information to the regulatory authorities, and these are (mostly) using the Altova product for validation.

    We now want to escalate the issue to the W3C itself, and would like to know what the mechanism is to do so.

    Jozef Aerts
    CDISC XML-Tech Governance Team
</pre>
<span id="received"><dfn>Received on</dfn> Friday,  2 October 2009 07:20:04 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post04000.htm</link><pubDate>Fri, 02 Oct 2009 09:19:21 GMT</pubDate></item><item><title>RE: Escalation mechanism for different interpretation of W3C XML-Schema specification ? </title><description><![CDATA[<pre id="body">
<a name="start3" accesskey="j" id="start3"></a>Just for the record (though it only really confirms the point that there are
differing interpretations), I <a title="An Introduction to XML Schema Development" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xmlschema1/xmlschema1.html">implemented the XSD 1.0</a> <a title="specification" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">specification</a> without
the benefit of knowing anything about the intent of the WG beyond what was
written in the spec, and I came to the conclusion that there was only one
way of interpreting the rule about xsd:redefine being &quot;pervasive&quot;. But then
I also came to the conclusion that other parts of the schema composition
rules had to be treated as loose statements of intent which didn't cover all
contingencies.
 
I would certainly advise against using xs:redefine in an industry <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/schema0/_index.htm">schema
specification</a>. Its only possible justification in my view is to define a
variant of a schema produced by a third party. And for that <a title="use case" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xquery/use_cases.html">use case</a>, I
think it only works unambiguously if that schema uses a single target
namespace throughout.

<a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a>
Saxonica

  _____  

From: <a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253CDAAFBCA1138F42DE826F1AB882F03FC8%40Sealion%253E&amp;References=%253CDAAFBCA1138F42DE826F1AB882F03FC8%40Sealion%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a> [mailto:<a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253CDAAFBCA1138F42DE826F1AB882F03FC8%40Sealion%253E&amp;References=%253CDAAFBCA1138F42DE826F1AB882F03FC8%40Sealion%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>] On
Behalf Of XMLSchema at XML4Pharma
Sent: 29 September 2009 12:24
To: <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253CDAAFBCA1138F42DE826F1AB882F03FC8%40Sealion%253E&amp;References=%253CDAAFBCA1138F42DE826F1AB882F03FC8%40Sealion%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
Subject: Escalation mechanism for different interpretation of W3C XML-Schema
specification ?


We, the CDISC XML-Tech Governance Team (and other CDISC teams) have
developed a number of extensible standards for exchange of clinical data and
for submitting information to the regulatory authorities (FDA).

CDISC is a Standardization Organization active in the <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xquery/cust_healthcare.html">healthcare</a> world.

Our extension mechanism is based on the &quot;import&quot; and &quot;redefine&quot; elements of
XML-Schema.

We now have a serious dispute with one technology vendor (Altova) about the
way &quot;import&quot; and &quot;redefine&quot; are used. Instance files of one of our
extensions (so-called &quot;define.xml&quot;) validate well in all major validators
and XML-editors, except for the products of this one vendor.

When confronted with this result, the reaction of Altova essentially is that
&quot;Altova is right, all others are wrong&quot;. The dispute and <a title="discussion" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/SSDN/default.asp">discussion</a> with
Altova can be followed at:
http://www.altova.com/forum/default.aspx?g=posts
&lt;http://www.altova.com/forum/default.aspx?g=posts&amp;m=1000005665&gt;
&amp;m=1000005665

The issue were not so serious if it were not that our standard &quot;define.xml&quot;
is a standard for submission of information to the regulatory authorities,
and these are (mostly) using the Altova product for validation.

We now want to escalate the issue to the W3C itself, and would like to know
what the mechanism is to do so.

Jozef Aerts
CDISC XML-Tech Governance Team
</pre>
<span id="received"><dfn>Received on</dfn> Thursday,  1 October 2009 22:54:13 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post03000.htm</link><pubDate>Thu, 01 Oct 2009 23:53:20 GMT</pubDate></item><item><title>RE: Escalation mechanism for different interpretation of W3C 	XML-Schema  specification ? </title><description><![CDATA[<pre id="body">
<a name="start2" accesskey="j" id="start2"></a>&gt; I am strongly for depreciating redefine (as well as inheritance by 
&gt; restriction, while we are at it ;-)).

I wouldn't like to see that deprecated, but as a matter of good practice,
once people adopt <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">XSD</a> 1.1 I shall probably be advising them always to do
restriction of complex content models by means of assertions.

<a title="Interview Michael Kay - W3C XML Member and Founder of Saxonica" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/michael_kay.html">Michael Kay</a>
Saxonica
</pre>
<span id="received"><dfn>Received on</dfn> Thursday,  1 October 2009 22:45:15 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post02000.htm</link><pubDate>Thu, 01 Oct 2009 23:44:17 GMT</pubDate></item><item><title>Re: Escalation mechanism for different interpretation of W3C 	XML-Schema  specification ? </title><description><![CDATA[<pre id="body">
<a name="start0" accesskey="j" id="start0"></a>Hi,

<a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20%09XML-Schema%20%20specification%20%3F&amp;In-Reply-To=%253Cboris.20091001174539%40codesynthesis.com%253E&amp;References=%253Cboris.20091001174539%40codesynthesis.com%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a> &lt;<a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20%09XML-Schema%20%20specification%20%3F&amp;In-Reply-To=%253Cboris.20091001174539%40codesynthesis.com%253E&amp;References=%253Cboris.20091001174539%40codesynthesis.com%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a>&gt; writes:

&gt; because we believe that &lt;redefine&gt; has seen widespread use,

I have a completely opposite experience. That is, I have seen
people trying to use redefine, quickly finding that no two
processors handle it the same way, and giving up.

We also have a fairly large <a title="XML Schema repository" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://schemas.stylusstudio.com">XML Schema repository</a> which includes
hundreds of schemas for various public and proprietary real-world 
vocabularies. I just did a quick check and the repository contains
over 2,000 <a title="schema files" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">schema files</a>. Only one vocabulary uses redefine.


&gt; So, if any readers of this thread have opinions on the plan to deprecate, 
&gt; the Schema Working group would welcome hearing about them. 

I am strongly for depreciating redefine (as well as inheritance by 
restriction, while we are at it ;-)).

Boris

-- 
Boris Kolpackov, Code Synthesis <a title="Tools" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml/editor/">Tools</a>  http://codesynthesis.com/~boris/<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/blogs/">blog</a>
Open-source <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/jaxb.html">XML data binding</a> for C++:  http://codesynthesis.com/products/xsd
XML data binding for embedded systems: http://codesynthesis.com/products/xsde
</pre>
<span id="received"><dfn>Received on</dfn> Thursday,  1 October 2009 15:49:33 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post00000.htm</link><pubDate>Thu, 01 Oct 2009 17:57:05 GMT</pubDate></item><item><title>Re: Escalation mechanism for different interpretation of W3C	XML-Schema   specification ? </title><description><![CDATA[<pre id="body">
<a name="start1" accesskey="j" id="start1"></a>Just the sort of feedback we need, thank you!  It's quite possible that my 
intuition on this is wrong.

Noah

--------------------------------------
Noah Mendelsohn 
IBM Corporation
One Rogers Street
Cambridge, MA 02142
1-617-693-4036
--------------------------------------








Boris Kolpackov &lt;<a href="mailto:boris&#x40;&#0099;&#0111;&#0100;&#0101;&#0115;&#0121;&#0110;&#0116;&#0104;&#0101;&#0115;&#0105;&#0115;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%09XML-Schema%20%20%20specification%20%3F&amp;In-Reply-To=%253COF43B44825.5DB9371E-ON85257642.00574D69-85257642.00575AB5%40lotus.com%253E&amp;References=%253COF43B44825.5DB9371E-ON85257642.00574D69-85257642.00575AB5%40lotus.com%253E">boris&#x40;&#0099;&#0111;&#0100;&#0101;&#0115;&#0121;&#0110;&#0116;&#0104;&#0101;&#0115;&#0105;&#0115;&#0046;&#0099;&#0111;&#0109;</a>&gt;
10/01/2009 11:57 AM
 
        To:     <a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%09XML-Schema%20%20%20specification%20%3F&amp;In-Reply-To=%253COF43B44825.5DB9371E-ON85257642.00574D69-85257642.00575AB5%40lotus.com%253E&amp;References=%253COF43B44825.5DB9371E-ON85257642.00574D69-85257642.00575AB5%40lotus.com%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a>
        cc:     XMLSchema at XML4Pharma &lt;<a href="mailto:XMLSchema&#x40;&#0088;&#0077;&#0076;&#0052;&#0080;&#0104;&#0097;&#0114;&#0109;&#0097;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%09XML-Schema%20%20%20specification%20%3F&amp;In-Reply-To=%253COF43B44825.5DB9371E-ON85257642.00574D69-85257642.00575AB5%40lotus.com%253E&amp;References=%253COF43B44825.5DB9371E-ON85257642.00574D69-85257642.00575AB5%40lotus.com%253E">XMLSchema&#x40;&#0088;&#0077;&#0076;&#0052;&#0080;&#0104;&#0097;&#0114;&#0109;&#0097;&#0046;&#0099;&#0111;&#0109;</a>&gt;, &quot;C. M. 
Sperberg-McQueen&quot; &lt;<a href="mailto:cmsmcq&#x40;&#0098;&#0108;&#0097;&#0099;&#0107;&#0109;&#0101;&#0115;&#0097;&#0116;&#0101;&#0099;&#0104;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%09XML-Schema%20%20%20specification%20%3F&amp;In-Reply-To=%253COF43B44825.5DB9371E-ON85257642.00574D69-85257642.00575AB5%40lotus.com%253E&amp;References=%253COF43B44825.5DB9371E-ON85257642.00574D69-85257642.00575AB5%40lotus.com%253E">cmsmcq&#x40;&#0098;&#0108;&#0097;&#0099;&#0107;&#0109;&#0101;&#0115;&#0097;&#0116;&#0101;&#0099;&#0104;&#0046;&#0099;&#0111;&#0109;</a>&gt;, <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%09XML-Schema%20%20%20specification%20%3F&amp;In-Reply-To=%253COF43B44825.5DB9371E-ON85257642.00574D69-85257642.00575AB5%40lotus.com%253E&amp;References=%253COF43B44825.5DB9371E-ON85257642.00574D69-85257642.00575AB5%40lotus.com%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
        Subject:        Re: Escalation mechanism for different 
interpretation of <a title="W3C" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">W3C</a>   <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">XML</a>-<a title="Schema  specification" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/schema0/_index.htm">Schema  specification</a> ?


Hi,

<a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%09XML-Schema%20%20%20specification%20%3F&amp;In-Reply-To=%253COF43B44825.5DB9371E-ON85257642.00574D69-85257642.00575AB5%40lotus.com%253E&amp;References=%253COF43B44825.5DB9371E-ON85257642.00574D69-85257642.00575AB5%40lotus.com%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a> &lt;<a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%09XML-Schema%20%20%20specification%20%3F&amp;In-Reply-To=%253COF43B44825.5DB9371E-ON85257642.00574D69-85257642.00575AB5%40lotus.com%253E&amp;References=%253COF43B44825.5DB9371E-ON85257642.00574D69-85257642.00575AB5%40lotus.com%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a>&gt; writes:

&gt; because we believe that &lt;redefine&gt; has seen widespread use,

I have a completely opposite experience. That is, I have seen
people trying to use redefine, quickly finding that no two
processors handle it the same way, and giving up.

We also have a fairly large XML Schema repository which includes
hundreds of schemas for various public and proprietary real-world 
vocabularies. I just did a quick check and the repository contains
over 2,000 schema files. Only one vocabulary uses redefine.


&gt; So, if any readers of this thread have opinions on the plan to 
deprecate, 
&gt; the Schema Working group would welcome hearing about them. 

I am strongly for depreciating redefine (as well as inheritance by 
restriction, while we are at it ;-)).

Boris

-- 
Boris Kolpackov, Code Synthesis Tools  
http://codesynthesis.com/~boris/blog
Open-source XML data binding for C++:  
http://codesynthesis.com/products/xsd
XML data binding for embedded systems: 
http://codesynthesis.com/products/xsde
</pre>
<span id="received"><dfn>Received on</dfn> Thursday,  1 October 2009 15:54:46 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Oct/post01000.htm</link><pubDate>Thu, 01 Oct 2009 11:54:04 GMT</pubDate></item><item><title>Does defaultOpenContent prevent inheriting openContent when using  extension? </title><description><![CDATA[<pre id="body">
<a name="start32" accesskey="j" id="start32"></a>Hi all,

I'm looking at 3.4.2.3.3 Mapping Rules for Content Type Property of 
Complex Content.

The branch under 6.1 is the only case that allows the type being defined 
to pick up the openContent of the base type.  However, whenever 5.2 
applies (the wildcard element is based on the <a title="schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">schema</a>'s 
defaultOpenContent), 6.1 does not apply.  So, if I have a 
defaultOpenContent, then in many cases of complex type extension, the 
new type will not inherit the openContent of its base type.  Am I 
reading that right?  Is that the intention?  I would think that the 
openContent of the base type should take precedence over the default.  
If the default open content is more restrictive than the base open 
content, then one would be forced to put an acceptable explicit 
openContent into the derived type; otherwise, the rules in &quot;Derivation 
Valid (extension)&quot; will be violated.

It looks like the behavior for restrictions is similar, except that in 
that case, 6.1 would have caused the derived type to have openContent of 
&quot;absent&quot;, while 5.2 may again prevent this by supplying the default 
openContent.

Regards,
Kevin
</pre>
<span id="received"><dfn>Received on</dfn> Wednesday, 30 September 2009 17:09:13 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post02003.htm</link><pubDate>Wed, 30 Sep 2009 13:07:19 GMT</pubDate></item><item><title>Re: Escalation mechanism for different interpretation of W3C XML-Schema specification ? </title><description><![CDATA[<pre id="body">
<a name="start28" accesskey="j" id="start28"></a>-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

XMLSchema at XML4Pharma writes:

&gt; Our extension mechanism is based on the &quot;import&quot; and &quot;redefine&quot;
&gt; elements of <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">XML</a>-<a title="Schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">Schema</a>.

&gt; [see] http://www.altova.com/<a title="forum" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/SSDN/default.asp">forum</a>/default.aspx?g=posts&amp;m=1000005665

&gt; We now want to escalate the issue to the <a title="W3C" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">W3C</a> itself, and would like
&gt; to know what the mechanism is to do so.

We can only try to clarify and persuade -- we have no authority to
compel anyone.

I can only explain how/why <a title="XSV XML Schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema/xsv.html">XSV</a> behaves as it does, and offer my
understand of the spec.

The spec. allows (note, _not_ requires) implementations to ignore
attempts to import <a title="schema documents" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">schema documents</a> for namespaces for which a schema
document is already known:

  &quot;Given that the schemaLocation [attribute] is only a hint, it is
   open to applications to ignore all but the first &lt;import&gt; for a
   given namespace, regardless of the ·actual value· of
   schemaLocation, but such a strategy risks missing useful
   information when new schemaLocations are offered.&quot; [1]

XSV follows this strategy.  In the case of the CDISC schemas, this
means the xs:import of ODM1-2-1.xsd is skipped, because a schema
document (namely define-1.0.0.xsd) is already known for the odm/v1.2
namespace.

In the case of the Altova example, this means the xs:import of
XSD2.xsd is skipped, because a schema document (namely XSD1.xsd) is
already known for the no-target-namespace case.

In other words, in neither case is the behaviour of XSD to do with how
it resolves redefine/import conflicts.

But note that any schema processor which _does_ follow all
schemaLocation hints, and therefore does import multiple documents for
the same target namespace, is perfectly conformant as well.

So, what about redefine/import conflicts?

The spec. contains no explicit guidance.  Furthermore, it is impossible to
construct an example which would provoke such a conflict in XSV,
because it would require two imports of the same targetNamespace (the
reason for this is left as an exercise for the reader -- if I've
missed a way to bring this about, I owe the first person to point out
how a beer :-).

We can however construct an example of conflicting redefine/include in
XSV, by making small modifications to the XSD3.xsd document given in
the Altova example:

XSD3.xsd
&lt;<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">xs:schema</a> xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;
  elementFormDefault=&quot;qualified&quot; attributeFormDefault=&quot;unqualified&quot;
  targetNamespace=&quot;http://XSD3&quot; xmlns:x=&quot;http://XSD3&quot;&gt;
&lt;xs:include schemaLocation=&quot;XSD2.xsd&quot;/&gt;
&lt;xs:include schemaLocation=&quot;XSD1.xsd&quot;/&gt;
&lt;xs:element name=&quot;elt&quot; type=&quot;x:CT&quot;/&gt;
&lt;/xs:schema&gt;

We're now chameleon including/redefining, and the result works with
XSV 3.1, regardless of the order of the two include statements.  By
'works', I mean
 a) The schema is judged to be OK;
 b) The instance is judged to be bad.

I read the spec. as _requiring_ this behaviour, because it says

  &quot;The modifications have a pervasive impact, that is, only the
   redefined components are used, even when referenced from other
   incorporated components, whether redefined themselves or not.&quot; [2]

What this means is that no conflict occurs between the redefined and
non-redefined components, because the later are not part of the schema
used for validation.  The same argument seems to me to apply to the
redefine/import case.

I would be interested to know how other products behave with the
redefine/include conflict example given above.

Summary: I believe the spec. intends the redefine semantics to 'trump'
the include and import semantics wrt which components are present in
cases of conflict, but I do not disagree that this is not so clear as
to be uncontestable.

I also think it is unfortunate that all implementors cannot agree on a
single interpretation.  If it is true, as alleged, that the situation
is that many implementations agree on the interpretation but one does
not, that's particularly unfortunate.

ht
  
[1] http://www.w3.org/TR/xmlschema-1/#src-import
[1] http://www.w3.org/TR/xmlschema-1/#modify-schema
- -- 
       Henry S. Thompson, School of Informatics, University of Edinburgh
                         Half-time member of W3C Team
      10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
                Fax: (44) 131 651-1426, e-mail: <a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253Cf5bvdj16c57.fsf%40hildegard.inf.ed.ac.uk%253E&amp;References=%253Cf5bvdj16c57.fsf%40hildegard.inf.ed.ac.uk%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>
                       URL: http://www.ltg.ed.ac.uk/~ht/
[mail really from me _always_ has this .sig -- mail without it is forged spam]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)

iD8DBQFKwh4EkjnJixAXWBoRAsVuAJ9PFjtJMUNAycnVwR3WlFIrJVCI3wCfVeQX
c0UQGS14hYnXrTq2lW2ADVE=
=m9RM
-----END PGP SIGNATURE-----
</pre>
<span id="received"><dfn>Received on</dfn> Tuesday, 29 September 2009 14:48:07 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post08002.htm</link><pubDate>Tue, 29 Sep 2009 15:47:32 GMT</pubDate></item><item><title>Re: Escalation mechanism for different interpretation of W3C  	XML-Schema specification ? </title><description><![CDATA[<pre id="body">
<a name="start27" accesskey="j" id="start27"></a>2009/9/29 XMLSchema at XML4Pharma &lt;<a href="mailto:XMLSchema&#x40;&#0120;&#0109;&#0108;&#0052;&#0112;&#0104;&#0097;&#0114;&#0109;&#0097;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20%20%09XML-Schema%20specification%20%3F&amp;In-Reply-To=%253C74a894af0909290613n540d3b33wde51b61327d2484%40mail.gmail.com%253E&amp;References=%253C74a894af0909290613n540d3b33wde51b61327d2484%40mail.gmail.com%253E">XMLSchema&#x40;&#0120;&#0109;&#0108;&#0052;&#0112;&#0104;&#0097;&#0114;&#0109;&#0097;&#0046;&#0099;&#0111;&#0109;</a>&gt;:
&gt; We, the CDISC <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">XML</a>-Tech Governance Team (and other CDISC teams) have
&gt; developed a number of extensible <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">standards</a> for exchange of clinical data and
&gt; for submitting information to the regulatory authorities (FDA).
&gt;
&gt; CDISC is a Standardization Organization active in the <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xquery/cust_healthcare.html">healthcare</a> world.
&gt;
&gt; Our extension mechanism is based on the import and redefine elements of
&gt; XML-Schema.
&gt;
&gt; We now have a serious dispute with one technology vendor (Altova) about the
&gt; way import and redefine are used. Instance files of one of our
&gt; extensions (so-called define.xml) validate well in all major validators
&gt; and XML-editors, except for the products of this one vendor.
&gt;
&gt; When confronted with this result, the reaction of Altova essentially is that
&gt; Altova is right, all others are wrong. The dispute and <a title="discussion" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/SSDN/default.asp">discussion</a> with
&gt; Altova can be followed at:
&gt; http://www.altova.com/forum/default.aspx?g=posts&amp;m=1000005665
&gt;
&gt; The issue were not so serious if it were not that our standard define.xml
&gt; is a standard for submission of information to the regulatory authorities,
&gt; and these are (mostly) using the Altova product for validation.

This was talked about before:

http://markmail.org/message/ccxa6gbyvn3773kx

The advice you were given back then was &quot;xs:redefine is pretty messy,
and the best advice is to avoid it&quot; so it seems a little odd to now
take the stance you have... especially when you say most of your
customers use Altova.

I can understand your frustrations, but I'm not too sure what your
want to achieve here - even if Altova agree you're right and a make a
fix for their next release, it will still take a long time for that
version to filter down to your existing customers, if at all.  By the
way, what does &quot;escalating it to the W3C&quot; mean?

This reminds me of a <a title="project" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_project.html">project</a> where the app worked fine on everything
except IE 5.5 on windows NT, and that was what the majority of the
users were on.... it would have been nice to escalate the issue to
make the problem go away :) but sadly we had to code around it.

Not very helpful I know, sorry, perhaps you could move straight to XSD 1.1?


-- 
Andrew Welch
http://andrewjwelch.com
Kernow: http://kernowforsaxon.sf.net/
</pre>
<span id="received"><dfn>Received on</dfn> Tuesday, 29 September 2009 13:14:15 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post07002.htm</link><pubDate>Tue, 29 Sep 2009 14:13:35 GMT</pubDate></item><item><title>Escalation mechanism for different interpretation of W3C XML-Schema specification ? </title><description><![CDATA[<pre id="body">
<a name="start26" accesskey="j" id="start26"></a>We, the CDISC <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">XML</a>-Tech Governance Team (and other CDISC teams) have developed a number of extensible <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">standards</a> for exchange of clinical data and for submitting information to the regulatory authorities (FDA).

CDISC is a Standardization Organization active in the <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xquery/cust_healthcare.html">healthcare</a> world.

Our extension mechanism is based on the &quot;import&quot; and &quot;redefine&quot; elements of XML-<a title="Schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">Schema</a>.

We now have a serious dispute with one technology vendor (Altova) about the way &quot;import&quot; and &quot;redefine&quot; are used. Instance files of one of our extensions (so-called &quot;define.xml&quot;) validate well in all major validators and XML-editors, except for the products of this one vendor.

When confronted with this result, the reaction of Altova essentially is that &quot;Altova is right, all others are wrong&quot;. The dispute and <a title="discussion" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/SSDN/default.asp">discussion</a> with Altova can be followed at:
http://www.altova.com/forum/default.aspx?g=posts&amp;m=1000005665

The issue were not so serious if it were not that our standard &quot;define.xml&quot; is a standard for submission of information to the regulatory authorities, and these are (mostly) using the Altova product for validation.

We now want to escalate the issue to the W3C itself, and would like to know what the mechanism is to do so.

Jozef Aerts
CDISC XML-Tech Governance Team
</pre>
<span id="received"><dfn>Received on</dfn> Tuesday, 29 September 2009 12:31:00 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post06002.htm</link><pubDate>Tue, 29 Sep 2009 13:24:13 GMT</pubDate></item><item><title>Re: Escalation mechanism for different interpretation of W3C XML-Schema  specification ? </title><description><![CDATA[<pre id="body">
<a name="start31" accesskey="j" id="start31"></a>I strongly urge you to read Michael Sperberg-McQueen's note carefully. 
While, as noted below, some of my preferences for resolving ambiguities 
happen to be different from his, I believe that his email very accurately 
and carefully summarizes the state of play on this issue.  Let me just 
quote and comment on a few sections of Michael's note:

&gt; The <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">XSD</a> 1.0 <a title="specification" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">specification</a> does not explicitly address the case
&gt; when the same <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">schema document</a> in referenced both directly
&gt; (via import or include) and indirectly (via redefine).  The
&gt; rules for import specify that the components imported
&gt; via the import or include should be present in the resulting
&gt; schema; the <a title="discussion" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/SSDN/default.asp">discussion</a> of redefine says that the effect of
&gt; redefine is pervasive.

Yes, that's what it says, and it's contradictory.

&gt; Some readers interpret this to mean that the pervasive-redefinition
&gt; rule overrides, or modifies the effect of, the import and include
&gt; rules.  On this reading the schema is legal and the components
&gt; are present in their redefined form (and only that form).  This
&gt; reading effectively attaches to the rules for include and import
&gt; an unspoken exception to the effect that the components imported
&gt; or included are present in the resulting schema unless they are
&gt; redefined by some other schema document reference.
&gt; 
&gt; Other readers interpret the rules as requiring that the
&gt; components in question should be present both in their
&gt; original and in their redefined form, which means that the
&gt; schema violates the rule that there must be at most one
&gt; component of any kind with a given expanded name, and thus
&gt; that the schema should be rejected.

Yes, those are at least two of the widely held positions as to what was 
&quot;really&quot; intended, and I don't think I'm aware of any others.

&gt; It is my personal belief that the most plausible interpretation
&gt; of the specification is the latter; as you have observed, at
&gt; least some implementors disagree and prefer the other
&gt; interpretation.

I happen to be one of the others who would prefer that the redefine be 
pervasive, but the important point here is that either interpretation is 
plausible, and we agree on that.

&gt; The inability of the <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">XML</a> Schema working group to agree on a
&gt; normative interpretation of XSD 1.0 has led to the agreement to
&gt; deprecate the redefine element in XSD 1.1. 

Here, I'd like to add one bit.  While Michael is correct that the working 
group has &quot;agreed&quot; on this, some of us joined in that agreement with some 
hesitancy, because we believe that &lt;redefine&gt; has seen widespread use, 
including in cases that do not trigger (or at least do not as clearly 
trigger) the ambiguities that are causing trouble here.  So, in light of 
those concerns, the working group also agreed to make the deprecation of 
&lt;redefine&gt; a so-called Priority Feedback issue.  Quoting from the working 
draft [1]:

----
Note: The redefinition <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_feature_overview.html">feature</a> described in the remainder of this section 
is ·deprecated· and may be removed from future versions of this 
specification. Schema authors are encouraged to avoid its use in cases 
where interoperability or compatibility with later versions of this 
specification are important.

Editorial Note: Priority Feedback Request

The Working Group requests feedback from readers, schema authors, 
implementors, and other users of this specification as to the desirability 
of retaining, removing, deprecating, or not deprecating the use of 
&lt;redefine&gt;. Since the &lt;override&gt; facility provides similar <a title="functionality" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/buy/compare.html">functionality</a> 
but does not require a restriction or extension relation between the new 
and the old definitions of redefined components, the Working Group is 
particularly interested in learning whether users of this specification 
find that requirement useful or not. 
----

So, if any readers of this thread have opinions on the plan to deprecate, 
the Schema Working group would welcome hearing about them.  I think it's 
worth noting that this thread has already made clear that: 1) this is a 
known area of complexity and the working group has already tried and so 
far failed to find an easy resolution acceptable to all; 2) there are 
incompatibilities in widely deployed implementations, so any clear 
resolution is quite likely to make someone with an investment in code very 
unhappy.  That's not to say I wouldn't like it cleaned up;  indeed, I'm 
among those who put many months into trying a few years ago (as did 
Michael). I'm just pointing out that our choices may be to deprecate or 
undeprecate, but going further to remove the ambiguity is likely to be a 
significant effort that will introduce incompatibilities for at least 
somebody.  Maybe or maybe not we could find a way to warn people off from 
the most troublesome cases, but I know that Michael and perhaps others 
will correctly point out that the whole conceptual framework for this 
&quot;composition&quot; function is sufficiently shaky in the current drafts that 
any fix short of a complete rewrite is likely to leave things in a messy 
state.

Noah

[1] http://www.w3.org/TR/xmlschema11-1/#modify-schema

--------------------------------------
Noah Mendelsohn 
IBM Corporation
One Rogers Street
Cambridge, MA 02142
1-617-693-4036
--------------------------------------
</pre>
<span id="received"><dfn>Received on</dfn> Tuesday, 29 September 2009 16:55:27 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post01003.htm</link><pubDate>Tue, 29 Sep 2009 12:57:14 GMT</pubDate></item><item><title>Re: Escalation mechanism for different interpretation of W3C  	XML-Schema specification ? </title><description><![CDATA[<pre id="body">
<a name="start30" accesskey="j" id="start30"></a>Hi,

Some time ago we have a similar problem in a <a title="project" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_project.html">project</a> with one schema per
&quot;concept&quot; aproach project, we create almost 3500 schema-s. (GEL-XML ).

The XML-Spy validator is so different (so good)  to other parsers, so you
have o create (readable) schema-s  for all parsers implementations, even
worse to all <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/java_code_generation.html">code generators</a> (e.g. <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/jaxb.html">jaxb</a>, .net, etc), in order to be usable-s
in the real world.

The solution was to ban redefines and to use hierarchical proxy-schema-s
(libraries), so the parser read one time and only one time the imported
library with an unique namepace and/per location.

The other (administrative) solution was to define one unique parser-brand <a title="Working with Schemas" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xmlschema1/xmlschema1.html">to
validate the schema</a>-s.

Cheers,

César



On Tue, Sep 29, 2009 at 9:47 AM, Henry S. Thompson &lt;<a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20%20%09XML-Schema%20specification%20%3F&amp;In-Reply-To=%253C4bd4e62e0909290907q64b1e770r2d63e87e3e4926d2%40mail.gmail.com%253E&amp;References=%253C4bd4e62e0909290907q64b1e770r2d63e87e3e4926d2%40mail.gmail.com%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>&gt; wrote:

&gt; -----BEGIN PGP SIGNED MESSAGE-----
&gt; Hash: SHA1
&gt;
&gt; XMLSchema at XML4Pharma writes:
&gt;
&gt; &gt; Our extension mechanism is based on the &quot;import&quot; and &quot;redefine&quot;
&gt; &gt; elements of XML-Schema.
&gt;
&gt; &gt; [see] http://www.altova.com/<a title="forum" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/SSDN/default.asp">forum</a>/default.aspx?g=posts&amp;m=1000005665
&gt;
&gt; &gt; We now want to escalate the issue to the W3C itself, and would like
&gt; &gt; to know what the mechanism is to do so.
&gt;
&gt; We can only try to clarify and persuade -- we have no authority to
&gt; compel anyone.
&gt;
&gt; I can only explain how/why <a title="XSV XML Schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema/xsv.html">XSV</a> behaves as it does, and offer my
&gt; understand of the spec.
&gt;
&gt; The spec. allows (note, _not_ requires) implementations to ignore
&gt; attempts to import <a title="schema documents" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">schema documents</a> for namespaces for which a schema
&gt; document is already known:
&gt;
&gt;  &quot;Given that the schemaLocation [attribute] is only a hint, it is
&gt;   open to applications to ignore all but the first &lt;import&gt; for a
&gt;   given namespace, regardless of the ·actual value· of
&gt;   schemaLocation, but such a strategy risks missing useful
&gt;   information when new schemaLocations are offered.&quot; [1]
&gt;
&gt; XSV follows this strategy.  In the case of the CDISC schemas, this
&gt; means the xs:import of ODM1-2-1.xsd is skipped, because a schema
&gt; document (namely define-1.0.0.xsd) is already known for the odm/v1.2
&gt; namespace.
&gt;
&gt; In the case of the Altova example, this means the xs:import of
&gt; XSD2.xsd is skipped, because a schema document (namely XSD1.xsd) is
&gt; already known for the no-target-namespace case.
&gt;
&gt; In other words, in neither case is the behaviour of XSD to do with how
&gt; it resolves redefine/import conflicts.
&gt;
&gt; But note that any schema processor which _does_ follow all
&gt; schemaLocation hints, and therefore does import multiple documents for
&gt; the same target namespace, is perfectly conformant as well.
&gt;
&gt; So, what about redefine/import conflicts?
&gt;
&gt; The spec. contains no explicit guidance.  Furthermore, it is impossible to
&gt; construct an example which would provoke such a conflict in XSV,
&gt; because it would require two imports of the same targetNamespace (the
&gt; reason for this is left as an exercise for the reader -- if I've
&gt; missed a way to bring this about, I owe the first person to point out
&gt; how a beer :-).
&gt;
&gt; We can however construct an example of conflicting redefine/include in
&gt; XSV, by making small modifications to the XSD3.xsd document given in
&gt; the Altova example:
&gt;
&gt; XSD3.xsd
&gt; &lt;xs:schema xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;
&gt;  elementFormDefault=&quot;qualified&quot; attributeFormDefault=&quot;unqualified&quot;
&gt;  targetNamespace=&quot;http://XSD3 &lt;http://xsd3/&gt;&quot; xmlns:x=&quot;http://XSD3&lt;http://xsd3/&gt;
&gt; &quot;&gt;
&gt; &lt;xs:include schemaLocation=&quot;XSD2.xsd&quot;/&gt;
&gt; &lt;xs:include schemaLocation=&quot;XSD1.xsd&quot;/&gt;
&gt; &lt;xs:element name=&quot;elt&quot; type=&quot;x:CT&quot;/&gt;
&gt; &lt;/xs:schema&gt;
&gt;
&gt; We're now chameleon including/redefining, and the result works with
&gt; XSV 3.1, regardless of the order of the two include statements.  By
&gt; 'works', I mean
&gt;  a) The schema is judged to be OK;
&gt;  b) The instance is judged to be bad.
&gt;
&gt; I read the spec. as _requiring_ this behaviour, because it says
&gt;
&gt;  &quot;The modifications have a pervasive impact, that is, only the
&gt;   redefined components are used, even when referenced from other
&gt;   incorporated components, whether redefined themselves or not.&quot; [2]
&gt;
&gt; What this means is that no conflict occurs between the redefined and
&gt; non-redefined components, because the later are not part of the schema
&gt; used for validation.  The same argument seems to me to apply to the
&gt; redefine/import case.
&gt;
&gt; I would be interested to know how other products behave with the
&gt; redefine/include conflict example given above.
&gt;
&gt; Summary: I believe the spec. intends the redefine semantics to 'trump'
&gt; the include and import semantics wrt which components are present in
&gt; cases of conflict, but I do not disagree that this is not so clear as
&gt; to be uncontestable.
&gt;
&gt; I also think it is unfortunate that all implementors cannot agree on a
&gt; single interpretation.  If it is true, as alleged, that the situation
&gt; is that many implementations agree on the interpretation but one does
&gt; not, that's particularly unfortunate.
&gt;
&gt; ht
&gt;
&gt; [1] http://www.w3.org/TR/xmlschema-1/#src-import
&gt; [1] http://www.w3.org/TR/xmlschema-1/#modify-schema
&gt; - --
&gt;       Henry S. Thompson, School of Informatics, University of Edinburgh
&gt;                         Half-time member of W3C Team
&gt;      10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
&gt;                Fax: (44) 131 651-1426, e-mail: <a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20%20%09XML-Schema%20specification%20%3F&amp;In-Reply-To=%253C4bd4e62e0909290907q64b1e770r2d63e87e3e4926d2%40mail.gmail.com%253E&amp;References=%253C4bd4e62e0909290907q64b1e770r2d63e87e3e4926d2%40mail.gmail.com%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>
&gt;                       URL: http://www.ltg.ed.ac.uk/~ht/
&gt; [mail really from me _always_ has this .sig -- mail without it is forged
&gt; spam]
&gt; -----BEGIN PGP SIGNATURE-----
&gt; Version: GnuPG v1.2.6 (GNU/Linux)
&gt;
&gt; iD8DBQFKwh4EkjnJixAXWBoRAsVuAJ9PFjtJMUNAycnVwR3WlFIrJVCI3wCfVeQX
&gt; c0UQGS14hYnXrTq2lW2ADVE=
&gt; =m9RM
&gt; -----END PGP SIGNATURE-----
&gt;
&gt;
</pre>
<span id="received"><dfn>Received on</dfn> Tuesday, 29 September 2009 16:08:05 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post00003.htm</link><pubDate>Tue, 29 Sep 2009 11:07:20 GMT</pubDate></item><item><title>Re: Escalation mechanism for different interpretation of W3C XML-Schema specification ? </title><description><![CDATA[<pre id="body">
<a name="start29" accesskey="j" id="start29"></a>
On 29 Sep 2009, at 05:24 , XMLSchema at XML4Pharma wrote:

&gt; We, the CDISC <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">XML</a>-Tech Governance Team (and other CDISC teams) have  
&gt; developed a number of extensible <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">standards</a> for exchange of clinical  
&gt; data and for submitting information to the regulatory authorities  
&gt; (FDA).
&gt;
&gt; CDISC is a Standardization Organization active in the <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xquery/cust_healthcare.html">healthcare</a>  
&gt; world.
&gt;
&gt; Our extension mechanism is based on the import and redefine  
&gt; elements of XML-<a title="Schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">Schema</a>.
&gt;
&gt; We now have a serious dispute with one technology vendor (Altova)  
&gt; about the way import and redefine are used. Instance files of  
&gt; one of our extensions (so-called define.xml) validate well in all  
&gt; major validators and XML-editors, except for the products of this  
&gt; one vendor.
&gt;
&gt; When confronted with this result, the reaction of Altova essentially  
&gt; is that Altova is right, all others are wrong. The dispute and  
&gt; <a title="discussion" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/SSDN/default.asp">discussion</a> with Altova can be followed at:
&gt; http://www.altova.com/forum/default.aspx?g=posts&amp;m=1000005665
&gt;
&gt; The issue were not so serious if it were not that our standard  
&gt; define.xml is a standard for submission of information to the  
&gt; regulatory authorities, and these are (mostly) using the Altova  
&gt; product for validation.
&gt;
&gt; We now want to escalate the issue to the W3C itself, and would like  
&gt; to know what the mechanism is to do so.
&gt;
&gt; Jozef Aerts
&gt; CDISC XML-Tech Governance Team
&gt;

I believe that some standards bodies have mechanisms for requesting
authoritative interpretations of doubtful points in specifications
published by those bodies.  W3C does not have any formal mechanism
for such interpretations, but you can certainly request an opinion
from the W3C XML Schema Working Group by sending mail to the
XSD comments list at <a href="mailto:www-xml-schema-comments&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20Escalation%20mechanism%20for%20different%20interpretation%20of%20W3C%20XML-Schema%20specification%20%3F&amp;In-Reply-To=%253C41259B1F-4C33-458B-AA49-98787A41CFD5%40blackmesatech.com%253E&amp;References=%253C41259B1F-4C33-458B-AA49-98787A41CFD5%40blackmesatech.com%253E">www-xml-schema-comments&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a> (or by raising
a Bugzilla issue against XSD 1.0).

The public record shows, however, that the XML Schema Working Group
has already addressed the question of what happens when the same
<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">schema document</a> is referred to both by a direct import or include
and indirectly through a reference to another schema document
which redefines the first (see Bugzilla bugs 2330, 2557, 2824,
and on related issues also 2826 and 5425, in the W3C public
instance of Bugzilla at http://www.w3.org/Bugs/Public/).  As the
record shows, the Working Group has been unable to resolve those
issues in part because the group has not been able to reach
consensus on the meaning of the 1.0 specification in the cases
in question.

Reviewing the discussion record on the Altova forum I am struck by
the repeated remark that the CDISC team has consulted &quot;several
distinguished members of the W3C XML-Schema working group&quot; who
confirmed CDISC's interpretation of the XSD 1.0 spec.  I can only
hope that these consultations took place some years ago, before
the working group realized just how divergent its interpretations
of the specification are; if you have consulted with any member
of the working group in the last four years about this case, and
they have failed to mention to you that the spec invites multiple
contradictory interpretations, and that the working group has
been unable to agree on what a single interpretation, then I
fear they have misled you sadly.

I'm also struck by the report that XML Spy is an outlier in its
behavior on this case.  The work I did in 2007 on an analogous
case suggested that depending on how they were invoked, the
eight processors tested behaved in nine or ten different ways
(fourteen if you count error messages reporting different
diagnoses of the problem as different behaviors).  The
work is described in a document available at
http://www.cmsmcq.com/2007/schema_composition/model.xml
(the test cases which elicit these different behaviors are
described in section 5.2.2 and its subsctions).

The XSD 1.0 specification does not explicitly address the case
when the same schema document in referenced both directly
(via import or include) and indirectly (via redefine).  The
rules for import specify that the components imported
via the import or include should be present in the resulting
schema; the discussion of redefine says that the effect of
redefine is pervasive.

Some readers interpret this to mean that the pervasive-redefinition
rule overrides, or modifies the effect of, the import and include
rules.  On this reading the schema is legal and the components
are present in their redefined form (and only that form).  This
reading effectively attaches to the rules for include and import
an unspoken exception to the effect that the components imported
or included are present in the resulting schema unless they are
redefined by some other schema document reference.

Other readers interpret the rules as requiring that the
components in question should be present both in their
original and in their redefined form, which means that the
schema violates the rule that there must be at most one
component of any kind with a given expanded name, and thus
that the schema should be rejected.

It is my personal belief that the most plausible interpretation
of the specification is the latter; as you have observed, at
least some implementors disagree and prefer the other
interpretation.

The inability of the XML Schema working group to agree on a
normative interpretation of XSD 1.0 has led to the agreement to
deprecate the redefine element in XSD 1.1.  My personal
recommendation is either to avoid redefine entirely or to
avoid the use of schemaLocation information in your primary
schema documents, restricting the identification of specific
schema documents to top-level 'driver' documents, or to
invocation-time parameters and options passed to the
validator.

I hope this helps.

Michael Sperberg-McQueen



-- 
****************************************************************
* C. M. Sperberg-McQueen, Black Mesa Technologies LLC
* http://www.blackmesatech.com
* http://cmsmcq.com/mib
* http://balisage.net
****************************************************************
</pre>
<span id="received"><dfn>Received on</dfn> Tuesday, 29 September 2009 15:58:34 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post09002.htm</link><pubDate>Tue, 29 Sep 2009 09:57:53 GMT</pubDate></item><item><title>Re: [metadata] versions and profiles of ISO 19139 </title><description><![CDATA[<pre id="body">
<a name="start25" accesskey="j" id="start25"></a>Ian, and everyone:

     I chewed over this whole tempest through a leisurely, solo lunch.

     And as I masticated, I considered the original directive given to
DARPA deep in the bowels of the Pentagon around the time that I was
born,
from which all of this (and a great deal more) has resulted.

     And it all seems consistent to me.

     At the risk of sounding pedantic, I have to repeat that the
overriding need
which brought the Internet into being was for army posts to be able  to
continue to communicate with each other IN THE EVENT THAT HQ GOT KNOCKED
OUT by nuclear blast or other means.
     It is that fact which makes it so &quot;democratic&quot; and so impossible
for any authority
to regulate or control.
     Sometimes we love that.  Sometimes we don't.
     But that's the way it is.  And I think it will stay that way.

     On this particular issue, I think that eventually all of us who are
building and storing and editing and displaying geographic information
metadata, will come to use
approximately (but not exactly) the same conventions, methodologies,
taxonomies, structures, etc., with the aid of published &quot;<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">standards</a>&quot;
which will never be
completely unique, precise, dogmatic and persistent, but will
nevertheless, help.

-JohnT

SCISOFT wrote:

&gt; The more basic problem with URL's, URI's, and URN's is
&gt; that, as Michael S-M points out, a domain name isn't permanent,
&gt;
&gt; it can be abandoned and then picked up by a different party.
&gt;
&gt; While its highly unlikely that a particular set of schemas, a
&gt; &quot;standard&quot;
&gt;
&gt; be spoofed, (much more likely that the validator request
&gt;
&gt; would return a &quot;404&quot;) its entirely possible.
&gt;
&gt; I&#x2019;m sure this is just a small part of the significant <a title="discussions" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/SSDN/default.asp">discussions</a>, but
&gt; it&#x2019;s very irritating.
&gt;
&gt; That seems to epitomise the W3C&#x2019;s quagmire created by such irrelevant
&gt; reductio ab absurbum arguments for a number of topic, which I believe
&gt; has been worsening during the last 12 years. In some circumstances,
&gt; pragmatism is necessary (even though <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">XML 1.0</a> got some things very
&gt; wrong &#x2013; eg, name collision - that was rectified: the namespaces
&gt; concept was introduced).
&gt;
&gt; Isn&#x2019;t it a problem with the &#x2018;improper&#x2019; association of URLs-URIs-URNs?
&gt;
&gt; The most important attribute of a namespace identifier is that it is
&gt; unique. Authors can <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/buy/">guarantee</a> the uniqueness of a URL by registering a
&gt; domain name with an Internet naming authority. Then it's the author's
&gt; responsibility to make sure that all strings used after the domain
&gt; name are unique. URNs work the same way.
&gt;
&gt; To guarantee the uniqueness of a URN, authors must again register
&gt; their namespace identifier with an Internet naming authority. The
&gt; author is then responsible for following a scheme for generating
&gt; unique namespace-specific strings.
&gt;
&gt; Organizations defining XML namespaces should develop a consistent
&gt; scheme for creating new namespace names.
&gt;
&gt; Maybe I&#x2019;m simplifying or misunderstanding the strict definitions, but
&gt; here&#x2019;s a proposition that diverges significantly from the above.
&gt;
&gt; Although it may be imperfect compared with a strictly-formulated
&gt; validating or registering authority, an interim system based on GUIDs
&gt; (urn:uuid) might have been widely implemented.
&gt;
&gt; At any time, the W3C itself (or a commercial organization such as
&gt; VeriSign) could have set up an interim system that equated a URN to a
&gt; unique and permanent GUID. In the same way that the DNS system
&gt; operates for URLs, this (interim) &#x201c;GUID Authority&#x201d; could have
&gt; maintained a precisely versioned <a title="schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">schema</a> set for each namespace GUID
&gt; without tying it to a URL locator.
&gt;
&gt; The 404 problem need not ever occur.
&gt;
&gt; The GUID-URI &#x201c;DNS&#x201d; would always maintain the simple lookup, and it
&gt; would be a very modest-sized database. A series of status / validity /
&gt; last changed flags could be supplement the system &#x2013; so, redundant
&gt; GUID-URNs that never &#x201c;went anywhere&#x201d; could just linger without dying,
&gt; without detriment.
&gt;
&gt; Since there is a very large number of unique GUIDs, paradoxically I
&gt; think that versioning and authentication is not as difficult a problem
&gt; as with the URN, where choosing and usage of URNs is very dependent on
&gt; the constraints of human factors.
&gt;
&gt; Ian Thomas
&gt;
&gt; GeoSciSoft - Perth, Australia
&gt;
&gt; -----Original Message-----
&gt; From: John.Tucker [mailto:<a href="mailto:John.Tucker&#x40;&#0110;&#0111;&#0097;&#0097;&#0046;&#0103;&#0111;&#0118;?Subject=Re%3A%20%5Bmetadata%5D%20versions%20and%20profiles%20of%20ISO%2019139&amp;In-Reply-To=%253C4AB91AF4.48DD983E%40noaa.gov%253E&amp;References=%253C4AB91AF4.48DD983E%40noaa.gov%253E">John.Tucker&#x40;&#0110;&#0111;&#0097;&#0097;&#0046;&#0103;&#0111;&#0118;</a>]
&gt; Sent: Tuesday, 22 September 2009 11:00 PM
&gt; To: SCISOFT
&gt; Subject: Re: [metadata] versions and profiles of ISO 19139
&gt;
&gt; You are correct about that ...
&gt;
&gt; One part of the discussions is around
&gt;
&gt; different versions or profiles of the same standard ...
&gt;
&gt; neither the W3C nor anyone else has ever set down a standard mechanism
&gt;
&gt; for doing this in a namespace ...
&gt;
&gt; in some situations, an update which &quot;includes&quot; the previous version
&gt;
&gt; and then merely provides additions and deletions seems most
&gt; appropriate,
&gt;
&gt; in some situations, putting different schema versions in the same
&gt; namespace
&gt;
&gt; seems most appropriate,
&gt;
&gt; in some situations, a whole new namespace seem better.
&gt;
&gt; But there is no &quot;standard&quot; way to do any of these things,
&gt;
&gt; so schema validating processors simply don't know how to handle
&gt;
&gt; changing versions.
&gt;
&gt; The more basic problem with URL's, URI's, and URN's is
&gt;
&gt; that, as Michael S-M points out, a domain name isn't permanent,
&gt;
&gt; it can be abandoned and then picked up by a different party.
&gt;
&gt; While its highly unlikely that a particular set of schemas, a
&gt; &quot;standard&quot;
&gt;
&gt; be spoofed, (much more likely that the validator request
&gt;
&gt; would return a &quot;404&quot;) its entirely possible.
&gt;
&gt; -JohnT
&gt;
&gt; SCISOFT wrote:
&gt;
&gt; &gt; John
&gt;
&gt; &gt; I haven't followed these types of discussions, so I'd guess that
&gt; this
&gt;
&gt; &gt; suggestion ha been thrashed to death: GUIDs.
&gt;
&gt; &gt; What's the problem with a unique identifier rather than a registrant
&gt;
&gt; &gt; authority ?
&gt;
&gt; &gt;
&gt;
&gt; &gt; IL Thomas
&gt;
&gt; &gt; GeoSciSoft - Perth, Australia
&gt;
&gt; &gt;
&gt;
&gt; &gt; -----Original Message-----
&gt;
&gt; &gt; From: John.Tucker [mailto:<a href="mailto:John.Tucker&#x40;&#0110;&#0111;&#0097;&#0097;&#0046;&#0103;&#0111;&#0118;?Subject=Re%3A%20%5Bmetadata%5D%20versions%20and%20profiles%20of%20ISO%2019139&amp;In-Reply-To=%253C4AB91AF4.48DD983E%40noaa.gov%253E&amp;References=%253C4AB91AF4.48DD983E%40noaa.gov%253E">John.Tucker&#x40;&#0110;&#0111;&#0097;&#0097;&#0046;&#0103;&#0111;&#0118;</a>]
&gt;
&gt; &gt; Sent: Tuesday, 22 September 2009 10:31 PM
&gt;
&gt; &gt; To: SCISOFT
&gt;
&gt; &gt; Subject: Re: [metadata] versions and profiles of ISO 19139
&gt;
&gt; &gt;
&gt;
&gt; &gt; The significance of this issue is
&gt;
&gt; &gt; that we are all working towards the use of authoritative standards
&gt; for our
&gt;
&gt; &gt; metadata.
&gt;
&gt; &gt; However, so far, the very nature of the InterNet is that it eschews
&gt;
&gt; &gt; authority.
&gt;
&gt; &gt;
&gt;
&gt; &gt; Up through now, there is no way to guarantee the integrity and
&gt; persistence
&gt;
&gt; &gt; of
&gt;
&gt; &gt; any resource.
&gt;
&gt; &gt;
&gt;
&gt; &gt; Here are the quotes that I selected
&gt;
&gt; &gt; (with email addresses ... please be nice ...)
&gt;
&gt; &gt;
&gt;
&gt; &gt; At present, there is (unfortunately!) no service to guarantee the
&gt; uniqueness
&gt;
&gt; &gt; and persistence of URN's, Universal resource names.  &quot;The fact that
&gt; there is
&gt;
&gt; &gt; no general URN resolution service (besides reading the relevant
&gt; RFCs) is
&gt;
&gt; &gt; highly iconvenient and pragmatically it is a killer.&quot; - Simon Cox
&gt;
&gt; &gt; &lt;simon.cox@j...&gt;
&gt;
&gt; &gt;
&gt;
&gt; &gt; &quot;The Namespace Recommendation:  It is not a goal that it be directly
&gt; usable
&gt;
&gt; &gt; for retrieval of a schema.&quot;  -Henry Thompson   &lt;<a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=Re%3A%20%5Bmetadata%5D%20versions%20and%20profiles%20of%20ISO%2019139&amp;In-Reply-To=%253C4AB91AF4.48DD983E%40noaa.gov%253E&amp;References=%253C4AB91AF4.48DD983E%40noaa.gov%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>&gt;
&gt;
&gt; &gt;
&gt;
&gt; &gt; &quot;The only way to ensure safe processing [of different versions](i.e.
&gt; that
&gt;
&gt; &gt; respects *all* of the processing strategies allowed for in the XML
&gt; schema
&gt;
&gt; &gt; spec) is to be scrupulous about changing the namespace if the schema
&gt;
&gt; &gt; changes.&quot;  -Simon Cox
&gt;
&gt; &gt;
&gt;
&gt; &gt; &quot;But as long as domain names are allowed to be used more than once
&gt; by
&gt;
&gt; &gt; different owners, no system of unique identifiers built on the
&gt; domain name
&gt;
&gt; &gt; system actually guarantees uniqueness of identifier.&quot;  - C.M.
&gt;
&gt; &gt; Sperberg-McQueen  &lt;<a href="mailto:cmsmcq&#x40;&#0098;&#0108;&#0097;&#0099;&#0107;&#0109;&#0101;&#0115;&#0097;&#0116;&#0101;&#0099;&#0104;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20%5Bmetadata%5D%20versions%20and%20profiles%20of%20ISO%2019139&amp;In-Reply-To=%253C4AB91AF4.48DD983E%40noaa.gov%253E&amp;References=%253C4AB91AF4.48DD983E%40noaa.gov%253E">cmsmcq&#x40;&#0098;&#0108;&#0097;&#0099;&#0107;&#0109;&#0101;&#0115;&#0097;&#0116;&#0101;&#0099;&#0104;&#0046;&#0099;&#0111;&#0109;</a>&gt;
&gt;
&gt; &gt;
&gt;
&gt; &gt; -John Tucker
&gt;
&gt; &gt;
&gt;
&gt; &gt; SCISOFT wrote:
&gt;
&gt; &gt;
&gt;
&gt; &gt; &gt; John
&gt;
&gt; &gt; &gt; Unfortunately afaik this list doesn't allow attachments (they get
&gt; filtered
&gt;
&gt; &gt; &gt; out?).
&gt;
&gt; &gt; &gt; I'd like to see the quotes. Perhaps you could paste them in-line
&gt; into an
&gt;
&gt; &gt; &gt; email to the list?
&gt;
&gt; &gt; &gt;
&gt;
&gt; &gt; &gt; IL Thomas
&gt;
&gt; &gt; &gt; GeoSciSoft - Perth, Australia
&gt;
&gt; &gt; &gt;
&gt;
&gt; &gt; &gt; -----Original Message-----
&gt;
&gt; &gt; &gt; From: <a href="mailto:metadata-bounces+geoscisoft=iinet.net.au&#x40;&#0108;&#0105;&#0115;&#0116;&#0115;&#0046;&#0103;&#0101;&#0111;&#0099;&#0111;&#0109;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20%5Bmetadata%5D%20versions%20and%20profiles%20of%20ISO%2019139&amp;In-Reply-To=%253C4AB91AF4.48DD983E%40noaa.gov%253E&amp;References=%253C4AB91AF4.48DD983E%40noaa.gov%253E">metadata-bounces+geoscisoft=iinet.net.au&#x40;&#0108;&#0105;&#0115;&#0116;&#0115;&#0046;&#0103;&#0101;&#0111;&#0099;&#0111;&#0109;&#0109;&#0046;&#0099;&#0111;&#0109;</a>
&gt;
&gt; &gt; &gt;
&gt; [mailto:<a href="mailto:metadata-bounces+geoscisoft=iinet.net.au&#x40;&#0108;&#0105;&#0115;&#0116;&#0115;&#0046;&#0103;&#0101;&#0111;&#0099;&#0111;&#0109;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20%5Bmetadata%5D%20versions%20and%20profiles%20of%20ISO%2019139&amp;In-Reply-To=%253C4AB91AF4.48DD983E%40noaa.gov%253E&amp;References=%253C4AB91AF4.48DD983E%40noaa.gov%253E">metadata-bounces+geoscisoft=iinet.net.au&#x40;&#0108;&#0105;&#0115;&#0116;&#0115;&#0046;&#0103;&#0101;&#0111;&#0099;&#0111;&#0109;&#0109;&#0046;&#0099;&#0111;&#0109;</a>] On
&gt;
&gt; &gt; &gt; Behalf Of John.Tucker
&gt;
&gt; &gt; &gt; Sent: Tuesday, 22 September 2009 3:36 AM
&gt;
&gt; &gt; &gt; To: <a href="mailto:metadata&#x40;&#0108;&#0105;&#0115;&#0116;&#0115;&#0046;&#0103;&#0101;&#0111;&#0099;&#0111;&#0109;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20%5Bmetadata%5D%20versions%20and%20profiles%20of%20ISO%2019139&amp;In-Reply-To=%253C4AB91AF4.48DD983E%40noaa.gov%253E&amp;References=%253C4AB91AF4.48DD983E%40noaa.gov%253E">metadata&#x40;&#0108;&#0105;&#0115;&#0116;&#0115;&#0046;&#0103;&#0101;&#0111;&#0099;&#0111;&#0109;&#0109;&#0046;&#0099;&#0111;&#0109;</a>
&gt;
&gt; &gt; &gt; Subject: [metadata] versions and profiles of ISO 19139
&gt;
&gt; &gt; &gt;
&gt;
&gt; &gt; &gt;      The &lt;<a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20%5Bmetadata%5D%20versions%20and%20profiles%20of%20ISO%2019139&amp;In-Reply-To=%253C4AB91AF4.48DD983E%40noaa.gov%253E&amp;References=%253C4AB91AF4.48DD983E%40noaa.gov%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>&gt; mailing list
&gt;
&gt; &gt; &gt; is a venarable discussion group where some of the
&gt;
&gt; &gt; &gt; most luninary and faithful contributors to the XML family
&gt;
&gt; &gt; &gt; of standards still participate and contribute.
&gt;
&gt; &gt; &gt;      During the past 4 weeks or so, people including
&gt;
&gt; &gt; &gt; Simon Cox, C.M. Sperberg-McQueen, and Henry Thompson
&gt;
&gt; &gt; &gt; discussed what rules there are and what rules there aren't,
&gt;
&gt; &gt; &gt; concerning versions and profiles.
&gt;
&gt; &gt; &gt;      Since those of us aiming at ISO 19139 now anticipate
&gt;
&gt; &gt; &gt; some new versions and profiles, this subject is extremely
&gt;
&gt; &gt; &gt; relevant.
&gt;
&gt; &gt; &gt;      Without pretending to have near as much insight as those
&gt;
&gt; &gt; &gt; people, I present a few of their quotes for our consideration,
&gt;
&gt; &gt; &gt; just in case there are people on this list who have not yet
&gt;
&gt; &gt; &gt; considered the implications.  The full discussion should be in
&gt; their
&gt;
&gt; &gt; &gt; archives and is well-recommended.
&gt;
&gt; &gt; &gt;
&gt;
&gt; &gt; &gt; -John Tucker
&gt;
</pre>
<span id="received"><dfn>Received on</dfn> Tuesday, 22 September 2009 18:44:44 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post05002.htm</link><pubDate>Tue, 22 Sep 2009 14:44:04 GMT</pubDate></item><item><title>Re: Best Practices for Establishing Namespace Name </title><description><![CDATA[<pre id="body">
<a name="start24" accesskey="j" id="start24"></a>
Henry,

     Long time no chat, hope all your pipes are clear and no ciphers!

     I am sitting here at home, on extended sick leave, and I feel like I am
the only audience to a horror <a title="movie" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_videos.html">movie</a>, the only one who happens to be privy
to a host of disparate pieces of arcane information which, taken all together,
show a number of protagonists walking blind into your typical disaster ...
there are some large constituencies with some pretty basic assumptions
which stand to fall apart without a <a title="standard" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">standard</a> on namespaces and <a title="schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">schema</a> versions.

     Here are the pieces that I know of:

     International Standards Organization standard 19115, geographic Information,
Metadata, which has been in place for 5 years and garnered considerable respect
and a few good tries at compliance.  It is currently undergoing 5-year <a title="review" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_coverage.html">review</a> with
the reasonable expectation that there will be some changes.

     ISO 19115-2, an extension of the above for Remote Sensing applications.

     ISO 19139, an <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">XML</a> <a title="encoding" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_other.html">encoding</a> of the 19115 standard.  does not include 19115-2.
Includes a set of W3C schema language schemas and some additional business rules.
The ISO does provide and maintain a namespace with the schemas.

     A set of schemas written between 2 and 3 years ago by a gentleman working for
US DOD defense mapping agency-or-whatever-they-were-called-at-the-time.
the gentleman died suddenly.  the schemas differ significantly from the 19139 schemas
but this information is not generally known.  The schemas are used by data creation and editing software owned, sold and maintained by CARIS, the dominant nautical
chartmaking software company worldwide.  many (1000+?) datasets now exist
using these.

     A text document in the final stages of approval, known as &quot;The North American Profile (NAP)&quot; of 19115, which involves only a couple of simple but important restrictions  of the existing 19139 schemas.  At least one of my colleagues attempting <a title="Schema Tutorial" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xmlschema1/xmlschema1.html">to write a different set of schemas</a> according to this document and to file them in a different namespace.  A US Government inter-agency committee (FGDC) which has the power to mandate that all US govt agencies use these schemas is contemplating their own set on their own namespace.

   An on-going effort (at least 14 years by my reckoning ...)by a group known as TSMAD under the auspices of the International Hydrographic Organization to develop a standard for nautical data which may incorporate the 19115 standard or the 19139
schemas and will certainly label anything originating in North America as unacceptable,
and may require the US nautical chartmaking authorities to employ it.

     Now I am quite confident in your ability to surmise some of the impending difficulties.

    so, my question is, is it time for me to retire and leave this theatre?  Or is there hope?

tx,
John Tucker


----- Original Message -----
From: <a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=Re%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253C9831b99aa2049ba.4aa67f54%40noaa.gov%253E&amp;References=%253C9831b99aa2049ba.4aa67f54%40noaa.gov%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a> (Henry S. Thompson)
Date: Friday, September 4, 2009 6:53 am
Subject: Re: Best Practices for Establishing Namespace Name
To: &quot;Tsao, Scott&quot; &lt;<a href="mailto:scott.tsao&#x40;&#0098;&#0111;&#0101;&#0105;&#0110;&#0103;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253C9831b99aa2049ba.4aa67f54%40noaa.gov%253E&amp;References=%253C9831b99aa2049ba.4aa67f54%40noaa.gov%253E">scott.tsao&#x40;&#0098;&#0111;&#0101;&#0105;&#0110;&#0103;&#0046;&#0099;&#0111;&#0109;</a>&gt;
Cc: &quot;G. Ken Holman&quot; &lt;<a href="mailto:gkholman&#x40;&#0067;&#0114;&#0097;&#0110;&#0101;&#0083;&#0111;&#0102;&#0116;&#0119;&#0114;&#0105;&#0103;&#0104;&#0116;&#0115;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253C9831b99aa2049ba.4aa67f54%40noaa.gov%253E&amp;References=%253C9831b99aa2049ba.4aa67f54%40noaa.gov%253E">gkholman&#x40;&#0067;&#0114;&#0097;&#0110;&#0101;&#0083;&#0111;&#0102;&#0116;&#0119;&#0114;&#0105;&#0103;&#0104;&#0116;&#0115;&#0046;&#0099;&#0111;&#0109;</a>&gt;, <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253C9831b99aa2049ba.4aa67f54%40noaa.gov%253E&amp;References=%253C9831b99aa2049ba.4aa67f54%40noaa.gov%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>


&gt; -----BEGIN PGP SIGNED MESSAGE-----
&gt; Hash: SHA1
&gt; 
&gt; Tsao, Scott writes:
&gt; 
&gt; &gt; Henry,
&gt; &gt;
&gt; &gt; Thanks for the confirmation!
&gt; &gt;  
&gt; &gt; Is this the document you were referring to as far as W3C TAG's strong
&gt; &gt; recommendation is concerned:
&gt; &gt;  ?
&gt; 
&gt; Yes, although
&gt; 
&gt;  a) It has not yet been officially adopted as a TAG finding;
&gt; 
&gt;  b) (as you can see from the date) that document has stalled, and a
&gt;     shorter and simpler one is in preparation:
&gt; 
&gt;       
&gt; 
&gt;     BUT that one hasn't been adopted yet either, so it's not suitable
&gt;     to point to it as the TAG's settled position. . .
&gt; 
&gt; If you find the discussion in either of those documents helpful,
&gt; great, but just be careful to cite them as work-in-progress, if at
&gt; all.
&gt; 
&gt; ht
&gt; - -- 
&gt;        Henry S. Thompson, School of Informatics, University of Edinburgh
&gt;                          Half-time member of W3C Team
&gt;       10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
&gt;                 Fax: (44) 131 651-1426, e-mail: <a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=Re%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253C9831b99aa2049ba.4aa67f54%40noaa.gov%253E&amp;References=%253C9831b99aa2049ba.4aa67f54%40noaa.gov%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>
&gt;                        URL: 
&gt; [mail really from me _always_ has this .sig -- mail without it is 
&gt; forged spam]
&gt; -----BEGIN PGP SIGNATURE-----
&gt; Version: GnuPG v1.2.6 (GNU/Linux)
&gt; 
&gt; iD8DBQFKoPEfkjnJixAXWBoRAmDmAJ9Z/KvDbmcxKZlTQW00oHQ1QDIFIgCdGB3X
&gt; VqTqXtC1ho4o8qfdhfpJybQ=
&gt; =9bje
&gt; -----END PGP SIGNATURE-----
&gt; 
</pre>
<span id="received"><dfn>Received on</dfn> Tuesday,  8 September 2009 19:59:58 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post04002.htm</link><pubDate>Tue, 08 Sep 2009 15:59:16 GMT</pubDate></item><item><title>Re: XML Schema 1.1 for Managers </title><description><![CDATA[<pre id="body">
<a name="start23" accesskey="j" id="start23"></a>-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

XML4Pharma writes:

&gt; [positive about <a title="XML Schema 1.1" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">XML Schema 1.1</a>]

Thanks for the encouraging words!

&gt; Speaking about MS parsers. Is there any <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_news.html">news</a> there about future
&gt; support by Microsoft for XML-Schema 1.1? E.g. are there any .Net
&gt; validating parsers in development ?

MS respond to customer input on things like this -- get your pharma
industry colleagues to tell their MS account rep. that they want XML
Schema 1.1, and that will help make it happen.

ht
- -- 
       Henry S. Thompson, School of Informatics, University of Edinburgh
                         Half-time member of <a title="W3C" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">W3C</a> Team
      10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
                Fax: (44) 131 651-1426, e-mail: <a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=Re%3A%20XML%20Schema%201.1%20for%20Managers&amp;In-Reply-To=%253Cf5b4orfm2hx.fsf%40hildegard.inf.ed.ac.uk%253E&amp;References=%253Cf5b4orfm2hx.fsf%40hildegard.inf.ed.ac.uk%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>
                       URL: http://www.ltg.ed.ac.uk/~ht/
[mail really from me _always_ has this .sig -- mail without it is forged spam]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)

iD8DBQFKpOrakjnJixAXWBoRApcxAJ9AwbZXU9y/BvDZIpFziDxnrw2d4gCfbnns
JRJq9q9JnRbBWLK+bmySp0M=
=/qcl
-----END PGP SIGNATURE-----
</pre>
<span id="received"><dfn>Received on</dfn> Monday,  7 September 2009 11:14:08 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post03002.htm</link><pubDate>Mon, 07 Sep 2009 12:13:30 GMT</pubDate></item><item><title>Re: ANN: XML Schema 1.1 for Managers </title><description><![CDATA[<pre id="body">
<a name="start21" accesskey="j" id="start21"></a>Hello Roger,
   As usual, a brilliant description from you, as shared at the URL
given by you :) I'll be reading the presentation you wrote, in the
next few days, and may post any thoughts I might have.

I would like to share, <a title="Apache Xerces" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml/xerces.html">that Apache Xerces-J</a> is also <a title="Using XML Schema to Model XML Data" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xmlschema1/xmlschema1.html">working on XML
Schema 1.1</a> implementation. I just wrote a <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/blogs/">blog</a> post, about this at,
http://mukulgandhi.blogspot.com/2009/09/roger-l-costello-xml-schema-11.html.

On Sat, Sep 5, 2009 at 8:08 PM, Costello, Roger L. &lt;<a href="mailto:costello&#x40;&#0109;&#0105;&#0116;&#0114;&#0101;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20ANN%3A%20XML%20Schema%201.1%20for%20Managers&amp;In-Reply-To=%253C7870f82e0909051055u7e9b264ei811a5323537be85c%40mail.gmail.com%253E&amp;References=%253C7870f82e0909051055u7e9b264ei811a5323537be85c%40mail.gmail.com%253E">costello&#x40;&#0109;&#0105;&#0116;&#0114;&#0101;&#0046;&#0111;&#0114;&#0103;</a>&gt; wrote:
&gt;
&gt; Hi Folks,
&gt;
&gt; I created a tutorial, for managers, on XML Schema 1.1.
&gt;
&gt; Its purpose is to give an <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_feature_overview.html">overview</a> of the <a title="new features" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_product_new_features.html">new features</a> of XML Schema 1.1, without getting into its syntax, and to show how the new features can benefit a business.
&gt;
&gt; http://www.xfront.com/xml-schema-1-1/xml-schema-1-1-for-managers.ppt
&gt;
&gt; Comments welcome.
&gt;
&gt; /Roger


-- 
Regards,
Mukul Gandhi
</pre>
<span id="received"><dfn>Received on</dfn> Saturday,  5 September 2009 17:56:17 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post01002.htm</link><pubDate>Sat, 05 Sep 2009 23:25:18 GMT</pubDate></item><item><title>Re: XML Schema 1.1 for Managers </title><description><![CDATA[<pre id="body">
<a name="start22" accesskey="j" id="start22"></a>Excellent stuff !

I have passed it to the other team members of our CDISC &quot;XML Governance 
Team&quot; (CDISC provides XML-based <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">standards</a> for use in clinical research).
Together <a title="How to Validate XML with the Xerces Parser" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml/xerces.html">with the information that Apache Xerces-J</a> is working on an 
implementation, this might mean that we move all our schemas to version 1.1 
early next year.
Our standards will highly benefit from this as:
- a good number of the rules in our standards can currently not be expressed 
with XML-<a title="XML Schema Examples" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">Schema 1.0</a>, but they can with Schematron, so moving to 1.1 is a 
&quot;great step for mankind&quot;
- our extensions <a title="How To Build XML Schemas" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xmlschema1/xmlschema1.html">use xsd</a>:redefine which is not (correctly) supported by 
XMLSpy (but is by most other validators). This causes a problem as some 
authorities like the FDA have standardized on XMLSpy.
Presume (but haven't looked into yet) that &quot;override&quot; is more powerful. Hope 
that XMLSpy will support that.

Speaking about MS parsers. Is there any <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_news.html">news</a> there about future support by 
Microsoft for XML-Schema 1.1? E.g. are there any .Net validating parsers in 
development ?

Best regards,

Jozef Aerts
CDISC volunteer


----- Original Message ----- 
From: &quot;Costello, Roger L.&quot; &lt;<a href="mailto:costello&#x40;&#0109;&#0105;&#0116;&#0114;&#0101;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20XML%20Schema%201.1%20for%20Managers&amp;In-Reply-To=%253CF56F967C24654A8CB9A98E7718A9F6A3%40D6NXTQ1J%253E&amp;References=%253CF56F967C24654A8CB9A98E7718A9F6A3%40D6NXTQ1J%253E">costello&#x40;&#0109;&#0105;&#0116;&#0114;&#0101;&#0046;&#0111;&#0114;&#0103;</a>&gt;
To: &lt;<a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20XML%20Schema%201.1%20for%20Managers&amp;In-Reply-To=%253CF56F967C24654A8CB9A98E7718A9F6A3%40D6NXTQ1J%253E&amp;References=%253CF56F967C24654A8CB9A98E7718A9F6A3%40D6NXTQ1J%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>&gt;
Sent: Saturday, September 05, 2009 4:38 PM
Subject: ANN: XML Schema 1.1 for Managers



Hi Folks,

I created a tutorial, for managers, on XML Schema 1.1.

Its purpose is to give an <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_feature_overview.html">overview</a> of the <a title="new features" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_product_new_features.html">new features</a> of XML Schema 1.1, 
without getting into its syntax, and to show how the new features can 
benefit a business.

http://www.xfront.com/xml-schema-1-1/xml-schema-1-1-for-managers.ppt

Comments welcome.

/Roger
</pre>
<span id="received"><dfn>Received on</dfn> Saturday,  5 September 2009 18:52:02 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post02002.htm</link><pubDate>Sat, 05 Sep 2009 20:51:16 GMT</pubDate></item><item><title>ANN: XML Schema 1.1 for Managers </title><description><![CDATA[<pre id="body">
<a name="start20" accesskey="j" id="start20"></a>
Hi Folks,

I created a tutorial, for managers, on <a title="XML Schema 1.1" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">XML Schema 1.1</a>. 

Its purpose is to give an <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_feature_overview.html">overview</a> of the <a title="new features" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_product_new_features.html">new features</a> of XML Schema 1.1, without getting into its syntax, and to show how the new features can benefit a business.

http://www.xfront.com/xml-schema-1-1/xml-schema-1-1-for-managers.ppt

Comments welcome.

/Roger
</pre>
<span id="received"><dfn>Received on</dfn> Saturday,  5 September 2009 14:39:18 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post00002.htm</link><pubDate>Sat, 05 Sep 2009 10:38:42 GMT</pubDate></item><item><title>Re: Best Practices for Establishing Namespace Name </title><description><![CDATA[<pre id="body">
<a name="start19" accesskey="j" id="start19"></a>-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Tsao, Scott writes:

&gt; Henry,
&gt;
&gt; Thanks for the confirmation!
&gt;  
&gt; Is this the document you were referring to as far as <a title="W3C" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">W3C</a> TAG's strong
&gt; recommendation is concerned:
&gt; http://www.w3.org/2001/tag/doc/URNsAndRegistries-50 ?

Yes, although

 a) It has not yet been officially adopted as a TAG finding;

 b) (as you can see from the date) that document has stalled, and a
    shorter and simpler one is in preparation:

      http://www.w3.org/2001/tag/doc/justSayHTTP.html

    BUT that one hasn't been adopted yet either, so it's not suitable
    to point to it as the TAG's settled position. . .

If you find the <a title="discussion" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/SSDN/default.asp">discussion</a> in either of those documents helpful,
great, but just be careful to cite them as work-in-progress, if at
all.

ht
- -- 
       Henry S. Thompson, School of Informatics, University of Edinburgh
                         Half-time member of W3C Team
      10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
                Fax: (44) 131 651-1426, e-mail: <a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=Re%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253Cf5beiqnq8yo.fsf%40hildegard.inf.ed.ac.uk%253E&amp;References=%253Cf5beiqnq8yo.fsf%40hildegard.inf.ed.ac.uk%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>
                       URL: http://www.ltg.ed.ac.uk/~ht/
[mail really from me _always_ has this .sig -- mail without it is forged spam]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)

iD8DBQFKoPEfkjnJixAXWBoRAmDmAJ9Z/KvDbmcxKZlTQW00oHQ1QDIFIgCdGB3X
VqTqXtC1ho4o8qfdhfpJybQ=
=9bje
-----END PGP SIGNATURE-----
</pre>
<span id="received"><dfn>Received on</dfn> Friday,  4 September 2009 10:51:56 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post09001.htm</link><pubDate>Fri, 04 Sep 2009 11:51:11 GMT</pubDate></item><item><title>RE: Best Practices for Establishing Namespace Name </title><description><![CDATA[<pre id="body">
<a name="start18" accesskey="j" id="start18"></a>Henry,

Thanks for the confirmation!
 
Is this the document you were referring to as far as <a title="W3C" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">W3C</a> TAG's strong
recommendation is concerned:
http://www.w3.org/2001/tag/doc/URNsAndRegistries-50 ?
 
Scott

-----Original Message-----
From: Henry S. Thompson [mailto:<a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=RE%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253CC7A7D8EA54C20744BFF861613617222C0BD78354%40XCH-NW-3V1.nw.nos.boeing.com%253E&amp;References=%253CC7A7D8EA54C20744BFF861613617222C0BD78354%40XCH-NW-3V1.nw.nos.boeing.com%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>]
Sent: Wednesday, September 02, 2009 2:40 AM
To: Tsao, Scott
Cc: G. Ken Holman; <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253CC7A7D8EA54C20744BFF861613617222C0BD78354%40XCH-NW-3V1.nw.nos.boeing.com%253E&amp;References=%253CC7A7D8EA54C20744BFF861613617222C0BD78354%40XCH-NW-3V1.nw.nos.boeing.com%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
Subject: Re: Best Practices for Establishing Namespace Name

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
...
&gt; And, is the use of them for namespace names (in lieu of URN)
&gt; recommended by standards organizations such as W3C and <a title="OASIS" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/super_catalogs.html">OASIS</a>?

Absolutely.  OASIS have backed off using URNs as namespace names, and
W3C TAG strongly recommends using http: URIs for this purpose.
...
ht
- --
       Henry S. Thompson, School of Informatics, University of Edinburgh
                         Half-time member of W3C Team
      10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131
650-4440
                Fax: (44) 131 651-1426, e-mail: <a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=RE%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253CC7A7D8EA54C20744BFF861613617222C0BD78354%40XCH-NW-3V1.nw.nos.boeing.com%253E&amp;References=%253CC7A7D8EA54C20744BFF861613617222C0BD78354%40XCH-NW-3V1.nw.nos.boeing.com%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>
                       URL: http://www.ltg.ed.ac.uk/~ht/ [mail really
from me _always_ has this .sig -- mail without it is forged spam]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)

iD8DBQFKnj1akjnJixAXWBoRAgpnAJ946RWeMWRT4NA3S1hHT0bCc63GPgCcDCJp
3NNY0Glqx4E0BJeWcEZs0z8=
=zpxU
-----END PGP SIGNATURE-----
</pre>
<span id="received"><dfn>Received on</dfn> Thursday,  3 September 2009 23:40:42 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post08001.htm</link><pubDate>Thu, 03 Sep 2009 16:39:45 GMT</pubDate></item><item><title>Re: FW: Best Practices for Establishing Namespace Name </title><description><![CDATA[<pre id="body">
<a name="start16" accesskey="j" id="start16"></a>&gt; Simon Cox writes:
&gt;&gt; A processors will maintain a cache of <a title="schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">schema</a> component definitions and
&gt;&gt; declarations and associate it with a namespace.

Ah I can see where the confusion would come from : ) and why it then
seemed to make sense (or be a requirement in fact) to change the
namespace between versions so that you could process multiple versions
with the same schema processor.

In 1.1 I think you can switch types based on a version attribute, so
you could in fact validate multiple versions of the <a title="xml" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">xml</a> with a single
schema.

something like:

&lt;<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">xs:element</a> name=&quot;root&quot; type=&quot;root&quot;&gt;
  &lt;xs:alternative type=&quot;root-version-1&quot; test=&quot;&#64;version = '1.0'&quot;/&gt;
  &lt;xs:alternative type=&quot;root-version-1-1&quot; test=&quot;&#64;version = '1.1'&quot;/&gt;
&lt;/xs:element&gt;




-- 
Andrew Welch
http://andrewjwelch.com
Kernow: http://kernowforsaxon.sf.net/
</pre>
<span id="received"><dfn>Received on</dfn> Thursday,  3 September 2009 09:01:26 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post06001.htm</link><pubDate>Thu, 03 Sep 2009 10:00:45 GMT</pubDate></item><item><title>RE: Best Practices for Establishing Namespace Name </title><description><![CDATA[<pre id="body">
<a name="start17" accesskey="j" id="start17"></a>Andrew says 'Unless they also changed the prefix between versions,
looking at snippets of markup you would still be none the wiser'.  From
the perspective of automated processing of <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">XML</a> this is beside the point.
A program processing XML does not look at snippets of markup (and anyway
the prefix is not <a title="XML Schema Tutorial" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xmlschema1/xmlschema1.html">defined by the schema</a> and in a &quot;snippet&quot; without
namespace <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/jaxb.html">bindings</a> the prefix has no meaning). 

If a namespace relates to a particular version of a schema, it provides
an unambiguous indication of which schema should be used by a processor.
If a version attribute has to be considered as well, the processor needs
some knowledge of the convention used for versioning within that
particular namespace.  For this there is no <a title="standard" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">standard</a>.

This email chain has brought into new focus a concern I had about the
rationale for the <a title="Using XML Schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">Schema 1.1</a> &quot;Open Content&quot; enhancements.  There is an
implied expectation behind these that schemas will change without any
change in their namespace, and this is arguably not &quot;best practice&quot;,
since it implies a non-standard versioning mechanism. 

The idea behind these enhancements is that a message producer can move
to a &quot;Level 2&quot; version of a schema, which defines more precisely what in
the &quot;Level 1&quot; version would have been possible by use of wildcards,
whilst message consumers who are unaware of &quot;Level 2&quot; can continue to
process messages from such producers.  If the namespace were to change
as part of the move from &quot;Level 1&quot; to &quot;Level 2&quot; the intention of the
enhancements (that some consumers can remain unaware of the change)
would be defeated.

I think there is an important consideration that if there many bodies
producing messages some may move to &quot;Level 2&quot; while others are at &quot;Level
1&quot;.  A message consumer may be aware of both &quot;Level 1&quot; and &quot;Level 2&quot;
versions of the schema and may need to know which version to apply when
processing a message received, e.g., for either or both of the following
reasons:

(a) The set of messages acceptable under &quot;Level 2&quot; may be smaller than
that acceptable under &quot;Level 1&quot;. If the processor is responsible for
validation, it needs to know which level to use for validation.
 
(b) Typically a &quot;Level 2&quot; schema will have been a response to a need to
communicate additional information, and it is a common situation that de
facto this information was being sent between parties by means of
wildcards under &quot;Level 1&quot;.  It is likely that the convention for this
would not correspond exactly to the formal definitions introduced in
&quot;Level 2&quot;.  Therefore the processor may have to look in different places
to find equivalent information depending on which version of the schema
the message producer was using.

Therefore to be used in an environment where messages are produced by
multiple parties and are processed automatically by recipients, the
&quot;open content&quot; enhancements imply that some kind of version attribute is
available to processors, and to my mind it is a weakness that the schema
standard implies versioning changes within a namespace without defining
or even mentioning how versioning can be communicated if not by
namespace change.  Or putting this more strongly, it could be argued
that the &quot;open content&quot; enhancements are predicated on &quot;bad practice&quot; in
terms of URN assignment.

Pete

-----Original Message-----
From: <a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253CF650D4E37270CF489B55D9417F768126A38561%40PLC-EXCH-SRV.tracegroup.com%253E&amp;References=%253CF650D4E37270CF489B55D9417F768126A38561%40PLC-EXCH-SRV.tracegroup.com%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a> [mailto:<a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253CF650D4E37270CF489B55D9417F768126A38561%40PLC-EXCH-SRV.tracegroup.com%253E&amp;References=%253CF650D4E37270CF489B55D9417F768126A38561%40PLC-EXCH-SRV.tracegroup.com%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>]
On Behalf Of Andrew Welch
Sent: 02 September 2009 16:54

Interesting, I would still be tempted to keep the same namespace and
use a version attribute to distinguish the versions.  If those
versions are &quot;compatible&quot; or not doesn't really matter at the data
level, all you need to be able to do is differentiate your elements
from others with the same local name, and differentiate the versions.

In &quot;GML&quot;, where do you think the confusion came from?  Unless they
also changed the prefix between versions, looking at snippets of
markup you would still be none the wiserDisclaimer: 
 
The contents of this E-mail plus any attachment is intended for the use of the 
addressee only and is confidential, proprietary and may be privileged. It will not be 
binding upon Trace Group or any group company (Trace).  Opinions, conclusions, 
contractual obligations and other information in this message in so far as they relate to 
the official business of Trace must be specifically confirmed in writing by Trace. If you 
are not the intended recipient you must not copy this message or attachment, use or 
disclose the contents to any other person, but are requested to telephone or E-mail 
the sender and delete the message and any attachment from your system. Trace 
takes all reasonable precautions to ensure that no virus or defect is transmitted via 
this e mail, however Trace accepts no responsibility for any virus or defect that might 
arise from opening this E-mail or attachments.
</pre>
<span id="received"><dfn>Received on</dfn> Thursday,  3 September 2009 09:39:02 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post07001.htm</link><pubDate>Thu, 03 Sep 2009 09:10:56 GMT</pubDate></item><item><title>FW: Best Practices for Establishing Namespace Name </title><description><![CDATA[<pre id="body">
<a name="start14" accesskey="j" id="start14"></a> 
Also forwarded to the list as this is likely to be of general interest. 

-----Original Message-----
From: Simon Cox [mailto:simon.cox@j...] 
Sent: Wednesday, 2 September 2009 20:06
To: <a href="mailto:'noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=FW%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E&amp;References=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E">'noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a>'
Cc: 'Andrew Welch'; 'ekimber'; 'G. Ken Holman'; 'Henry S. Thompson'; 'Tsao,
Scott'
Subject: RE: Best Practices for Establishing Namespace Name

Not in general, but sometimes, and often enough to matter for certain
use-cases. 
A <a title="review" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_coverage.html">review</a> of processing engines (including those built in to <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/buy/why_enterprise.html">enterprise</a> <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml/editor/">tools</a>
like <a title="Oracle 9i and Oracle 10g Tools" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/oracle.html">Oracle</a>) a few years ago led us to the conclusion that the real tools
used in real organizations had diverse behaviours. 
OGC is in business of publishing schemas for widespread use by many
organizations, used to build loosely coupled systems where it isn't feasible
to enforce any particular one of the caching and processing models allowed
by the spec, so we had to assume the worse case. 
That requirement inexorably led to the conclusion that new namespaces were
required every time. 

This won't apply in every <a title="use case" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xquery/use_cases.html">use case</a>, but if you are publishing schemas that
you expect lots of people to use, and you have limited control over them it
is a scenario that must be considered. 

However, there is a nuance to this: where the new <a title="schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">schema</a> only adds stuff to
an existing schema, you do this in a new namespace, but &lt;import&gt; the
existing schema, so existing components do not change namespaces, its just
that the ones added after the original publication have a new namespace.
(Effectively this is the strategy used by Google when upgrading KML.)

--------------------------------------------------------
Simon Cox

European Commission, Joint Research Centre, Institute for Environment and
Sustainability, Spatial Data Infrastructures Unit, TP 262 Via E. Fermi,
2749, I-21027 Ispra (VA), Italy
Tel: +39 0332 78 3652
Fax: +39 0332 78 6325
mailto:simon.cox@j...
http://ies.jrc.ec.europa.eu/simon-cox 

SDI Unit: http://sdi.jrc.ec.europa.eu/
IES Institute: http://ies.jrc.ec.europa.eu/
JRC: http://www.jrc.ec.europa.eu/
--------------------------------------------------------

-----Original Message-----
From: <a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=FW%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E&amp;References=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a> [mailto:<a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=FW%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E&amp;References=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a>]
Sent: Wednesday, 2 September 2009 19:56
To: Simon Cox
Cc: 'Andrew Welch'; 'ekimber'; 'G. Ken Holman'; 'Henry S. Thompson'; 'Tsao,
Scott'
Subject: RE: Best Practices for Establishing Namespace Name

Simon Cox writes:

&gt; A processors will maintain a cache of schema component definitions and 
&gt; declarations and associate it with a namespace.

Not in general.  That's neither required nor encouraged by the
Recommendation, though it is allowed, and some implementations do.


&gt; The processing rules in the XML Schema spec do not require that a 
&gt; processor load the schema fresh if a new document comes in with the 
&gt; same namespace.

That's true, but neither do they forbid reloading.  Quoting from the Rec: 
[1]:

&quot;Processors have the option to assemble (and perhaps to optimize or
pre-compile) the entire schema prior to the start of an .assessment.
episode, or to gather the schema lazily as individual components are
required.&quot;

I think your reasoning is somewhat backwards:  I believe the intention is
that processors may implement a variety of startegies, and that &gt;users
should choose processors (or processor switches) that are appropriate for
the particular purpose&lt;. 

So, rather than saying:

&quot;be sure to use a new namespace when the processing rules for your markup
change between versions, because your processor will surely cache the old
content models&quot;.

I would say:

&quot;There are many tradeoffs in deciding whether to use the same markup from
the same namespaces when content models and/or the interpretation of content
changes from version to version.  One complexity to consider is that some
schema processors maintain caches of pre-assembled schemas, and those
processors may not behave well if the same markup is to be interpreted
differently according to the version of the language.  Other processors do
provide either for just-in-time assembly of schemas, or for the necessary
level of control over schema document caching.&quot;

BTW:  there are really downsides to using a new namespace when minor changes
are made to a language.  There can be many other artifacts that will need
revision that would otherwise be unnecessary, e.g. XPaths in stylesheets.
Furthermore,  it can happen that a new version is created to revise just one
small feature of a language, and then the question arises whether to
republish the whole language in a new namespace, or only the new features.
If the former is done, then even documents otherwise unaffected by the
language revision may wind up having two expressions, one using the old and
one using the new namespace;  conversely, if only changed markup is in the
new namespace, then users have to remember which feature was revised when,
and deal with many namespace prefixes when languages are revised many times.

Overall, my observation has been that it's usually easier to use namespaces
for more functional decomposition (e.g. one namespace for personnel-related
vocabulary, one for inventory, etc.) and to use namespace changes sparingly
when implementing revisions to a language specification.  So, mostly,
successive versions of a language should use the same namespaces, except
maybe for qualitatively different features.

Noah



[1] http://www.w3.org/TR/xmlschema-1/#layer1

--------------------------------------
Noah Mendelsohn 
IBM Corporation
One Rogers Street
Cambridge, MA 02142
1-617-693-4036
--------------------------------------








&quot;Simon Cox&quot; &lt;simon.cox@j...&gt;
09/02/2009 01:34 PM
 
        To:     &quot;'Andrew Welch'&quot; &lt;<a href="mailto:andrew.j.welch&#x40;&#0103;&#0109;&#0097;&#0105;&#0108;&#0046;&#0099;&#0111;&#0109;?Subject=FW%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E&amp;References=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E">andrew.j.welch&#x40;&#0103;&#0109;&#0097;&#0105;&#0108;&#0046;&#0099;&#0111;&#0109;</a>&gt;
        cc:     &lt;<a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=FW%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E&amp;References=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a>&gt;, &quot;'Tsao, Scott'&quot; 
&lt;<a href="mailto:scott.tsao&#x40;&#0098;&#0111;&#0101;&#0105;&#0110;&#0103;&#0046;&#0099;&#0111;&#0109;?Subject=FW%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E&amp;References=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E">scott.tsao&#x40;&#0098;&#0111;&#0101;&#0105;&#0110;&#0103;&#0046;&#0099;&#0111;&#0109;</a>&gt;, &quot;'G. Ken Holman'&quot; 
&lt;<a href="mailto:gkholman&#x40;&#0099;&#0114;&#0097;&#0110;&#0101;&#0115;&#0111;&#0102;&#0116;&#0119;&#0114;&#0105;&#0103;&#0104;&#0116;&#0115;&#0046;&#0099;&#0111;&#0109;?Subject=FW%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E&amp;References=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E">gkholman&#x40;&#0099;&#0114;&#0097;&#0110;&#0101;&#0115;&#0111;&#0102;&#0116;&#0119;&#0114;&#0105;&#0103;&#0104;&#0116;&#0115;&#0046;&#0099;&#0111;&#0109;</a>&gt;, &quot;'Henry S. Thompson'&quot; &lt;<a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=FW%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E&amp;References=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>&gt;, 
&lt;<a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=FW%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E&amp;References=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>&gt;, &quot;'ekimber'&quot; &lt;<a href="mailto:ekimber&#x40;&#0114;&#0101;&#0097;&#0108;&#0108;&#0121;&#0115;&#0105;&#0046;&#0099;&#0111;&#0109;?Subject=FW%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E&amp;References=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E">ekimber&#x40;&#0114;&#0101;&#0097;&#0108;&#0108;&#0121;&#0115;&#0105;&#0046;&#0099;&#0111;&#0109;</a>&gt;
        Subject:        RE: Best Practices for Establishing Namespace Name


No - its not merely the identity issue. 
It's the processing issue. 
A processors will maintain a cache of schema component definitions and
declarations and associate it with a namespace. 
The processing rules in the XML Schema spec do not require that a 
processor
load the schema fresh if a new document comes in with the same namespace. 
So if the new document is actually using a different schema (even if the
namespace is the same) then processing will fail. 
The only way to ensure safe processing (i.e. that respects *all* of the
processing straegies allowed for in the XML Schema spec) is to be 
scrupulous
about changing namespace if the schema changes. 
In many cases that is most easily handled by including a version 
identifier
in the namespace. 

Because of all this, the XML Schema processing rules effectively imply 
that
the target namespace is the schema identifier. 

--------------------------------------------------------
Simon Cox

European Commission, Joint Research Centre, 
Institute for Environment and Sustainability, 
Spatial Data Infrastructures Unit, TP 262 
Via E. Fermi, 2749, I-21027 Ispra (VA), Italy 
Tel: +39 0332 78 3652
Fax: +39 0332 78 6325
mailto:simon.cox@j... 
http://ies.jrc.ec.europa.eu/simon-cox 

SDI Unit: http://sdi.jrc.ec.europa.eu/ 
IES Institute: http://ies.jrc.ec.europa.eu/
JRC: http://www.jrc.ec.europa.eu/
--------------------------------------------------------

-----Original Message-----
From: Andrew Welch [mailto:<a href="mailto:andrew.j.welch&#x40;&#0103;&#0109;&#0097;&#0105;&#0108;&#0046;&#0099;&#0111;&#0109;?Subject=FW%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E&amp;References=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E">andrew.j.welch&#x40;&#0103;&#0109;&#0097;&#0105;&#0108;&#0046;&#0099;&#0111;&#0109;</a>] 
Sent: Wednesday, 2 September 2009 19:18
To: Simon Cox
Cc: <a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=FW%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E&amp;References=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a>; Tsao, Scott; G. Ken Holman; Henry S.
Thompson; <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=FW%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E&amp;References=%253CCEE7205EF0534E09B5D83E19B390CC8E%40H07.jrc.it%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>; ekimber
Subject: Re: Best Practices for Establishing Namespace Name

2009/9/2 Simon Cox &lt;simon.cox@j...&gt;:
&gt;  Andrew Welch wrote
&gt;&gt; use a version attribute to distinguish the versions
&gt;
&gt; Where?

Typically on the root element, but it could go anywhere that's suitable.

&gt; The issue was that elements with the same name were defined 
&gt; differently in both GML 2.0 and GML 3.0, But they had the same target 
&gt; namespace. The differences were subtle - technical rather than 
&gt; conceptual - but real as far as a validating processor is concerned. 
&gt; The XML namespace is to all practical intents and purposes the 
&gt; designated identifier for 'the schema' and we had the same identifier 
&gt; for different things. Chaos ensues.

Between versions the content model of elements will change, but that 
doesn't
mean you need a different namespace... Incompatible changes are actually
easier than supporting backwards compatibility, instead of detecting the
version and using the right xsd and corresponding parsing code, you simply
reject anything that fails validation for that version.

Anyway, it's interesting that you say the namespace is (to all intents 
ands
purposes) the identifier for the schema, perhaps that's where the problem
is... the namespace value itself has started to mean something, when its
meant to mean nothing.

Everyone seems to have different opinions on this, and I think Ive asked 
in
the past if anyone has a best practices guide which didnt attract too many
confident replies, but at the moment for me its simply &quot;namespace that 
won't
ever change, version attribute&quot; : )




--
Andrew Welch
http://andrewjwelch.com
Kernow: http://kernowforsaxon.sf.net/
</pre>
<span id="received"><dfn>Received on</dfn> Wednesday,  2 September 2009 18:09:40 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post04001.htm</link><pubDate>Wed, 02 Sep 2009 20:08:59 GMT</pubDate></item><item><title>RE: Best Practices for Establishing Namespace Name </title><description><![CDATA[<pre id="body">
<a name="start13" accesskey="j" id="start13"></a>No - its not merely the identity issue. 
It&#x2019;s the processing issue. 
A processors will maintain a cache of <a title="schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">schema</a> component definitions and
declarations and associate it with a namespace. 
The processing rules in the <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/schema0/_index.htm">XML Schema spec</a> do not require that a processor
load the schema fresh if a new document comes in with the same namespace. 
So if the new document is actually <a title="Building XML Schemas" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xmlschema1/xmlschema1.html">using a different schema</a> (even if the
namespace is the same) then processing will fail. 
The only way to ensure safe processing (i.e. that respects *all* of the
processing straegies allowed for in the XML Schema spec) is to be scrupulous
about changing namespace if the schema changes. 
In many cases that is most easily handled by including a version identifier
in the namespace. 

Because of all this, the XML Schema processing rules effectively imply that
the target namespace is the schema identifier. 

--------------------------------------------------------
Simon Cox

European Commission, Joint Research Centre, 
Institute for Environment and Sustainability, 
Spatial Data Infrastructures Unit, TP 262 
Via E. Fermi, 2749, I-21027 Ispra (VA), Italy 
Tel: +39 0332 78 3652
Fax: +39 0332 78 6325
mailto:simon.cox@j... 
http://ies.jrc.ec.europa.eu/simon-cox 

SDI Unit: http://sdi.jrc.ec.europa.eu/ 
IES Institute: http://ies.jrc.ec.europa.eu/
JRC: http://www.jrc.ec.europa.eu/
--------------------------------------------------------

-----Original Message-----
From: Andrew Welch [mailto:<a href="mailto:andrew.j.welch&#x40;&#0103;&#0109;&#0097;&#0105;&#0108;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253C57AAA26170BB4A83B53413F431F86458%40H07.jrc.it%253E&amp;References=%253C57AAA26170BB4A83B53413F431F86458%40H07.jrc.it%253E">andrew.j.welch&#x40;&#0103;&#0109;&#0097;&#0105;&#0108;&#0046;&#0099;&#0111;&#0109;</a>] 
Sent: Wednesday, 2 September 2009 19:18
To: Simon Cox
Cc: <a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253C57AAA26170BB4A83B53413F431F86458%40H07.jrc.it%253E&amp;References=%253C57AAA26170BB4A83B53413F431F86458%40H07.jrc.it%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a>; Tsao, Scott; G. Ken Holman; Henry S.
Thompson; <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253C57AAA26170BB4A83B53413F431F86458%40H07.jrc.it%253E&amp;References=%253C57AAA26170BB4A83B53413F431F86458%40H07.jrc.it%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>; ekimber
Subject: Re: Best Practices for Establishing Namespace Name

2009/9/2 Simon Cox &lt;simon.cox@j...&gt;:
&gt;  Andrew Welch wrote
&gt;&gt; use a version attribute to distinguish the versions
&gt;
&gt; Where?

Typically on the root element, but it could go anywhere that's suitable.

&gt; The issue was that elements with the same name were defined 
&gt; differently in both <a title="Geography Markup Language (GML)" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://schemas.stylusstudio.com/opengis/index.html">GML 2.0</a> and GML 3.0, But they had the same target 
&gt; namespace. The differences were subtle - technical rather than 
&gt; conceptual - but real as far as a validating processor is concerned. 
&gt; The XML namespace is to all practical intents and purposes the 
&gt; designated identifier for 'the schema' and we had the same identifier 
&gt; for different things. Chaos ensues.

Between versions the content model of elements will change, but that doesn't
mean you need a different namespace... Incompatible changes are actually
easier than supporting backwards compatibility, instead of detecting the
version and using the right xsd and corresponding parsing code, you simply
reject anything that fails validation for that version.

Anyway, it's interesting that you say the namespace is (to all intents ands
purposes) the identifier for the schema, perhaps that's where the problem
is... the namespace value itself has started to mean something, when its
meant to mean nothing.

Everyone seems to have different opinions on this, and I think Ive asked in
the past if anyone has a best practices guide which didnt attract too many
confident replies, but at the moment for me its simply &quot;namespace that won't
ever change, version attribute&quot; : )




--
Andrew Welch
http://andrewjwelch.com
Kernow: http://kernowforsaxon.sf.net/
</pre>
<span id="received"><dfn>Received on</dfn> Wednesday,  2 September 2009 17:35:46 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post03001.htm</link><pubDate>Wed, 02 Sep 2009 19:34:30 GMT</pubDate></item><item><title>Re: Best Practices for Establishing Namespace Name </title><description><![CDATA[<pre id="body">
<a name="start15" accesskey="j" id="start15"></a>-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

C. M. Sperberg-McQueen writes:

&gt; The meaning of some identifiers is given in a way that
&gt; guarantees permanence of the meaning assigned.

I'm very interested in examples of this for identifiers useable on the
web, particularly ones which participate in what's been informally
called the 'follow your nose' property, or, per [1], &quot;grounded in the
Web&quot;:

  the <a title="specifications" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">specifications</a> required for their interpretation should be
  discoverable by recursively following links starting with the
  specification for URIs [rfc 3986].


&gt; If URLs mean things by virtue of the actions and/or intentions of
&gt; their owners (which is what I understand the TAG's story to be),
&gt; then when the owner changes, the meaning is necessarily subject to
&gt; change.

Indeed.  As I said in my previous message, diligence is required to
forestall this, and it's not unreasonable to expect/mandate diligence
in cases where long-term persistence is a high-level goal.

&gt; The difference at issue is not whether, when you dereference
&gt; something, you get something 'misleading' or not.  The
&gt; issue is whether the prescribed methods for determinining
&gt; the denotation of an identifier <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/buy/">guarantee</a> stability of
&gt; denotation over time or not.

&gt; On the account offered in your email, the system of using
&gt; URLs as long-lived identifiers seems to depend on (a) the
&gt; proposition that a URL has a given meaning just when the
&gt; owner of the relevant domain assigns it that meaning, and
&gt; (b) the proposition that a URL has a given meaning
&gt; whenever we feel like interpreting that way, regardless
&gt; of the actions of the owner of the relevant domain.
&gt;
&gt; The TAG may have no trouble reconciling those two
&gt; propositions; I confess that to me, they just look like
&gt; a contradiction at the heart of the TAG's edifice.

Insofar as the TAG is in a position to prescribe anything in this
area, (1) is indeed the official story (actually, it's RFC 3986 which
_prescribes_ in this case).  Your (2) is a lot stronger than what I
said, which was in any case _not_ a TAG position, or even anyone's
proposal of a _possible_ position, but rather an empirical _claim_,
with respect to a small number of very widely <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/deployment/">deployed</a> namespace URIs.
_If_ that claim is true, that means that the world is not behaving as
has been 'prescribed'.

There is in fact a lively debate underway about a variety of possible
accounts of URIs and how they identify things, which may or may not
succeed in reconciling theory and practice in a useful way.

The relevance of all this to the issue at hand is, I think, not very
great.  As long as the purpose of creating namespace URIs at all
involves 

 a) at least the possibility of value-add from web-access via the
    namespace URI;

 b) a commitment to diligence wrt any registrations which underlie
    whatever web-access mechanisms are in prospect.

then my advice stands -- http: URIs have a clear advantage over any
other form of URI.

ht

[1] http://www.w3.org/2001/tag/doc/selfDescribingDocuments.html
- -- 
       Henry S. Thompson, School of Informatics, University of Edinburgh
                         Half-time member of W3C Team
      10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
                Fax: (44) 131 651-1426, e-mail: <a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=Re%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253Cf5bd469kxvt.fsf%40hildegard.inf.ed.ac.uk%253E&amp;References=%253Cf5bd469kxvt.fsf%40hildegard.inf.ed.ac.uk%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>
                       URL: http://www.ltg.ed.ac.uk/~ht/
[mail really from me _always_ has this .sig -- mail without it is forged spam]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)

iD8DBQFKnrh2kjnJixAXWBoRAixbAJ9zvrSVB2lcfHZLCS0ps9/kG18XxgCdFBlA
qop9GJB3IifZ9Lz4iHR1ekQ=
=6IOi
-----END PGP SIGNATURE-----
</pre>
<span id="received"><dfn>Received on</dfn> Wednesday,  2 September 2009 18:26:01 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post05001.htm</link><pubDate>Wed, 02 Sep 2009 19:24:54 GMT</pubDate></item><item><title>RE: Best Practices for Establishing Namespace Name </title><description><![CDATA[<pre id="body">
<a name="start11" accesskey="j" id="start11"></a>I agree with Michael. 
The fact that there is no general URN <a title="resolution" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/new_years_resolutions.html">resolution</a> service (besides reading
the relevant RFCs) is highly inconvenient and pragmatically it is a killer. 
But the fact that URN assignment is onerous (much much much more onerous
than URL creation) is not necessarily a bad thing. 

Some resources really are more valuable than others, and having a high
threshold in the identifier assignment process reinforces this. 
I think I understand the Thompson/TAG argument that the same discipline
*could* be applied to http URIs, but in general it is not ... which leaves
us in this maybe/maybe not situation. 


--------------------------------------------------------
Simon Cox

European Commission, Joint Research Centre, 
Institute for Environment and Sustainability, 
Spatial Data Infrastructures Unit, TP 262 
Via E. Fermi, 2749, I-21027 Ispra (VA), Italy 
Tel: +39 0332 78 3652
Fax: +39 0332 78 6325
mailto:simon.cox@j... 
http://ies.jrc.ec.europa.eu/simon-cox 

SDI Unit: http://sdi.jrc.ec.europa.eu/ 
IES Institute: http://ies.jrc.ec.europa.eu/
JRC: http://www.jrc.ec.europa.eu/
--------------------------------------------------------

-----Original Message-----
From: <a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253C386DBE12676745148B828D5893DED625%40H07.jrc.it%253E&amp;References=%253C386DBE12676745148B828D5893DED625%40H07.jrc.it%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a> [mailto:<a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253C386DBE12676745148B828D5893DED625%40H07.jrc.it%253E&amp;References=%253C386DBE12676745148B828D5893DED625%40H07.jrc.it%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>] On
Behalf Of C. M. Sperberg-McQueen
Sent: Wednesday, 2 September 2009 18:53
To: Henry S. Thompson
Cc: C. M. Sperberg-McQueen; Tsao, Scott; G. Ken Holman; <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253C386DBE12676745148B828D5893DED625%40H07.jrc.it%253E&amp;References=%253C386DBE12676745148B828D5893DED625%40H07.jrc.it%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
Subject: Re: Best Practices for Establishing Namespace Name


On 2 Sep 2009, at 09:40 , Henry S. Thompson wrote:

&gt; -----BEGIN PGP SIGNED MESSAGE-----
&gt; Hash: SHA1
&gt;
&gt; C. M. Sperberg-McQueen writes:
&gt;
&gt;&gt; The record would not be complete without someone observing that it 
&gt;&gt; also has the disadvantage that if the domain name registration for 
&gt;&gt; [your committee] ever lapses, there is no <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/buy/">guarantee</a> that the new 
&gt;&gt; owner will refrain from assigning a new meaning to http://[your 
&gt;&gt; committee]/namespaces/xxx
&gt;
&gt; For sure.
&gt;
&gt; But be careful using this as an argument in favour of using URNs or 
&gt; some other URI scheme -- If you don't care about dereferencing, it 
&gt; doesn't matter that http://[your committee]/namespaces/xxx doesn't 
&gt; dereference today, and might dereference misleadingly in some 
&gt; relatively unlikely future.  If you _do_ care, then the mechanisms put 
&gt; in place to support dereferencing of e.g. URNs will almost certainly 
&gt; be vulnerable to the same human-originating failure modes.

The meaning of some identifiers is given in a way that guarantees permanence
of the meaning assigned.  If URLs mean things by virtue of the actions
and/or intentions of their owners (which is what I understand the TAG's
story to be), then when the owner changes, the meaning is necessarily
subject to change.

The difference at issue is not whether, when you dereference something, you
get something 'misleading' or not.  The issue is whether the prescribed
methods for determinining the denotation of an identifier guarantee
stability of denotation over time or not.

On the account offered in your email, the system of using URLs as long-lived
identifiers seems to depend on (a) the proposition that a URL has a given
meaning just when the owner of the relevant domain assigns it that meaning,
and
(b) the proposition that a URL has a given meaning whenever we feel like
interpreting that way, regardless of the actions of the owner of the
relevant domain.

The TAG may have no trouble reconciling those two propositions; I confess
that to me, they just look like a contradiction at the heart of the TAG's
edifice.

--
****************************************************************
* C. M. Sperberg-McQueen, Black Mesa Technologies LLC
* http://www.blackmesatech.com
* http://cmsmcq.com/mib
* http://balisage.net
****************************************************************
</pre>
<span id="received"><dfn>Received on</dfn> Wednesday,  2 September 2009 17:04:40 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post01001.htm</link><pubDate>Wed, 02 Sep 2009 19:03:07 GMT</pubDate></item><item><title>Re: Best Practices for Establishing Namespace Name </title><description><![CDATA[<pre id="body">
<a name="start12" accesskey="j" id="start12"></a>2009/9/2 Simon Cox &lt;simon.cox@j...&gt;:
&gt;  Andrew Welch wrote
&gt;&gt; use a version attribute to distinguish the versions
&gt;
&gt; Where?

Typically on the root element, but it could go anywhere that's suitable.

&gt; The issue was that elements with the same name were defined differently in
&gt; both <a title="Geography Markup Language (GML)" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://schemas.stylusstudio.com/opengis/index.html">GML 2.0</a> and GML 3.0,
&gt; But they had the same target namespace. The differences were subtle -
&gt; technical rather than conceptual - but real as far as a validating processor
&gt; is concerned. The <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">XML</a> namespace is to all practical intents and purposes the
&gt; designated identifier for 'the <a title="schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">schema</a>' and we had the same identifier for
&gt; different things. Chaos ensues.

Between versions the content model of elements will change, but that
doesn't mean you need a different namespace... Incompatible changes
are actually easier than supporting backwards compatibility, instead
of detecting the version and <a title="Using XML Schema to Model XML Data" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/videos/xmlschema1/xmlschema1.html">using the right xsd</a> and corresponding
parsing code, you simply reject anything that fails validation for
that version.

Anyway, it's interesting that you say the namespace is (to all intents
ands purposes) the identifier for the schema, perhaps that's where the
problem is... the namespace value itself has started to mean
something, when its meant to mean nothing.

Everyone seems to have different opinions on this, and I think Ive
asked in the past if anyone has a best practices guide which didnt
attract too many confident replies, but at the moment for me its
simply &quot;namespace that won't ever change, version attribute&quot; : )




-- 
Andrew Welch
http://andrewjwelch.com
Kernow: http://kernowforsaxon.sf.net/
</pre>
<span id="received"><dfn>Received on</dfn> Wednesday,  2 September 2009 17:18:37 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post02001.htm</link><pubDate>Wed, 02 Sep 2009 18:17:56 GMT</pubDate></item><item><title>RE: Best Practices for Establishing Namespace Name </title><description><![CDATA[<pre id="body">
<a name="start9" accesskey="j" id="start9"></a> Andrew Welch wrote 
&gt; use a version attribute to distinguish the versions

Where? 

The issue was that elements with the same name were defined differently in
both <a title="Geography Markup Language (GML)" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://schemas.stylusstudio.com/opengis/index.html">GML 2.0</a> and GML 3.0, 
But they had the same target namespace. The differences were subtle -
technical rather than conceptual - but real as far as a validating processor
is concerned. The <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">XML</a> namespace is to all practical intents and purposes the
designated identifier for 'the <a title="schema" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema.html">schema</a>' and we had the same identifier for
different things. Chaos ensues. 


--------------------------------------------------------
Simon Cox

European Commission, Joint Research Centre, 
Institute for Environment and Sustainability, 
Spatial Data Infrastructures Unit, TP 262 
Via E. Fermi, 2749, I-21027 Ispra (VA), Italy 
Tel: +39 0332 78 3652
Fax: +39 0332 78 6325
mailto:simon.cox@j... 
http://ies.jrc.ec.europa.eu/simon-cox 

SDI Unit: http://sdi.jrc.ec.europa.eu/ 
IES Institute: http://ies.jrc.ec.europa.eu/
JRC: http://www.jrc.ec.europa.eu/
--------------------------------------------------------

-----Original Message-----
From: <a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253C7DC19CEEF6714EB4BBA407129ABA1B17%40H07.jrc.it%253E&amp;References=%253C7DC19CEEF6714EB4BBA407129ABA1B17%40H07.jrc.it%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a> [mailto:<a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253C7DC19CEEF6714EB4BBA407129ABA1B17%40H07.jrc.it%253E&amp;References=%253C7DC19CEEF6714EB4BBA407129ABA1B17%40H07.jrc.it%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>] On
Behalf Of Andrew Welch
Sent: Wednesday, 2 September 2009 17:54
To: Simon Cox
Cc: <a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253C7DC19CEEF6714EB4BBA407129ABA1B17%40H07.jrc.it%253E&amp;References=%253C7DC19CEEF6714EB4BBA407129ABA1B17%40H07.jrc.it%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a>; Tsao, Scott; G. Ken Holman; Henry S.
Thompson; <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253C7DC19CEEF6714EB4BBA407129ABA1B17%40H07.jrc.it%253E&amp;References=%253C7DC19CEEF6714EB4BBA407129ABA1B17%40H07.jrc.it%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>; ekimber
Subject: Re: Best Practices for Establishing Namespace Name

2009/9/2 Simon Cox &lt;simon.cox@j...&gt;:
&gt; In some situations it is good to include dates or version numbers in 
&gt; namespace names.
&gt; For example, if your <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/maintenance_policy.html">maintenance</a>/governance arrangement expects new 
&gt; versions, and particularly if the new versions are not compatible with 
&gt; older versions.
&gt; Geography Markup Language from OGC made the mistake of keeping the 
&gt; same XML namespace for several incompatible versions of GML, and this 
&gt; has caused confusion. (The policy has since been fixed).
&gt;
&gt; Of course, you can choose to give your new version a completely new 
&gt; name and namespace, but sometimes you want to claim continuity, or at 
&gt; least a common scope, with an earlier product, but not confuse 
&gt; processors by having incompatible declarations in the same target
namesapce.

Interesting, I would still be tempted to keep the same namespace and use a
version attribute to distinguish the versions.  If those versions are
&quot;compatible&quot; or not doesn't really matter at the data level, all you need to
be able to do is differentiate your elements from others with the same local
name, and differentiate the versions.

In &quot;GML&quot;, where do you think the confusion came from?  Unless they also
changed the prefix between versions, looking at snippets of markup you would
still be none the wiser.



--
Andrew Welch
http://andrewjwelch.com
Kernow: http://kernowforsaxon.sf.net/
</pre>
<span id="received"><dfn>Received on</dfn> Wednesday,  2 September 2009 16:08:53 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post09000.htm</link><pubDate>Wed, 02 Sep 2009 18:03:51 GMT</pubDate></item><item><title>RE: Best Practices for Establishing Namespace Name </title><description><![CDATA[<pre id="body">
<a name="start6" accesskey="j" id="start6"></a>In some situations it is good to include dates or version numbers in
namespace names. 
For example, if your <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/maintenance_policy.html">maintenance</a>/governance arrangement expects new
versions, and particularly if the new versions are not compatible with older
versions. 
<a title="GML - a Markup Language for Geography" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://schemas.stylusstudio.com/opengis/index.html">Geography Markup Language</a> from OGC made the mistake of keeping the same <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">XML</a>
namespace for several incompatible versions of GML, and this has caused
confusion. (The policy has since been fixed). 

Of course, you can choose to give your new version a completely new name and
namespace, but sometimes you want to claim continuity, or at least a common
scope, with an earlier product, but not confuse processors by having
incompatible declarations in the same target namesapce. 

There are no universal rules here - you need to be clear about your
application and requirements. 


--------------------------------------------------------
Simon Cox

European Commission, Joint Research Centre, 
Institute for Environment and Sustainability, 
Spatial Data Infrastructures Unit, TP 262 
Via E. Fermi, 2749, I-21027 Ispra (VA), Italy 
Tel: +39 0332 78 3652
Fax: +39 0332 78 6325
mailto:simon.cox@j... 
http://ies.jrc.ec.europa.eu/simon-cox 

SDI Unit: http://sdi.jrc.ec.europa.eu/ 
IES Institute: http://ies.jrc.ec.europa.eu/
JRC: http://www.jrc.ec.europa.eu/
--------------------------------------------------------

-----Original Message-----
From: <a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253C40B97DB49F6C4A64AD243AE44652A675%40H07.jrc.it%253E&amp;References=%253C40B97DB49F6C4A64AD243AE44652A675%40H07.jrc.it%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a> [mailto:<a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253C40B97DB49F6C4A64AD243AE44652A675%40H07.jrc.it%253E&amp;References=%253C40B97DB49F6C4A64AD243AE44652A675%40H07.jrc.it%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>] On
Behalf Of Andrew Welch
Sent: Wednesday, 2 September 2009 16:46
To: <a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253C40B97DB49F6C4A64AD243AE44652A675%40H07.jrc.it%253E&amp;References=%253C40B97DB49F6C4A64AD243AE44652A675%40H07.jrc.it%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a>
Cc: Tsao, Scott; G. Ken Holman; Henry S. Thompson; <a href="mailto:xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=RE%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253C40B97DB49F6C4A64AD243AE44652A675%40H07.jrc.it%253E&amp;References=%253C40B97DB49F6C4A64AD243AE44652A675%40H07.jrc.it%253E">xmlschema-dev&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>;
ekimber
Subject: Re: Best Practices for Establishing Namespace Name

2009/9/2  &lt;<a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=RE%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253C40B97DB49F6C4A64AD243AE44652A675%40H07.jrc.it%253E&amp;References=%253C40B97DB49F6C4A64AD243AE44652A675%40H07.jrc.it%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a>&gt;:
&gt; Hi, Scott.  Further endorsing the advice that Henry and Eliot have 
&gt; given you, I suggest you might be interested in the TAG's finding that 
&gt; specifically encourages you to provide useful information that can be 
&gt; retrieved using the namespace URI.  See [1].
&gt;
&gt; Noah
&gt;
&gt; [1] http://www.w3.org/2001/tag/doc/nsDocuments/


...but avoid using dates, for example:

http://www.w3.org/1999/XSL/Transform
http://www.w3.org/2001/XMLSchema

would have been much better as:

http://www.w3.org/XSLT
http://www.w3.org/XMLSchema

....then you don't have to reassure newbies that they really are using
modern technologies (2.0 and 1.1), despite what they may think from the
namespace.

I would say the main thing is to choose a namespace that wont need to
change, so don't use dates, versions, &quot;beta&quot;, codenames etc.  Also the
namespace is often its branding, so using product names might be great until
marketing change their minds and call the product something else... if the
xml is visible to the customer they may ask for the namespace to change too.

So as an example, if the company is called &quot;foo&quot; and the product is
&quot;foobar&quot;, you would probably choose &quot;http://foo.com/foobar&quot;, which is most
likely going to be ok, but I'm beginning to think that &quot;http://foo.com/ns&quot;
is the better choice.





--
Andrew Welch
http://andrewjwelch.com
Kernow: http://kernowforsaxon.sf.net/
</pre>
<span id="received"><dfn>Received on</dfn> Wednesday,  2 September 2009 15:23:16 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post06000.htm</link><pubDate>Wed, 02 Sep 2009 17:22:06 GMT</pubDate></item><item><title>Re: Best Practices for Establishing Namespace Name </title><description><![CDATA[<pre id="body">
<a name="start8" accesskey="j" id="start8"></a>2009/9/2 Simon Cox &lt;simon.cox@j...&gt;:
&gt; In some situations it is good to include dates or version numbers in
&gt; namespace names.
&gt; For example, if your <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/maintenance_policy.html">maintenance</a>/governance arrangement expects new
&gt; versions, and particularly if the new versions are not compatible with older
&gt; versions.
&gt; <a title="GML - a Markup Language for Geography" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://schemas.stylusstudio.com/opengis/index.html">Geography Markup Language</a> from OGC made the mistake of keeping the same <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">XML</a>
&gt; namespace for several incompatible versions of GML, and this has caused
&gt; confusion. (The policy has since been fixed).
&gt;
&gt; Of course, you can choose to give your new version a completely new name and
&gt; namespace, but sometimes you want to claim continuity, or at least a common
&gt; scope, with an earlier product, but not confuse processors by having
&gt; incompatible declarations in the same target namesapce.

Interesting, I would still be tempted to keep the same namespace and
use a version attribute to distinguish the versions.  If those
versions are &quot;compatible&quot; or not doesn't really matter at the data
level, all you need to be able to do is differentiate your elements
from others with the same local name, and differentiate the versions.

In &quot;GML&quot;, where do you think the confusion came from?  Unless they
also changed the prefix between versions, looking at snippets of
markup you would still be none the wiser.



-- 
Andrew Welch
http://andrewjwelch.com
Kernow: http://kernowforsaxon.sf.net/
</pre>
<span id="received"><dfn>Received on</dfn> Wednesday,  2 September 2009 15:54:35 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post08000.htm</link><pubDate>Wed, 02 Sep 2009 16:53:48 GMT</pubDate></item><item><title>Re: Best Practices for Establishing Namespace Name </title><description><![CDATA[<pre id="body">
<a name="start7" accesskey="j" id="start7"></a>-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

C. M. Sperberg-McQueen writes:

&gt; The record would not be complete without someone observing
&gt; that it also has the disadvantage that if the domain name
&gt; registration for [your committee] ever lapses, there is no
&gt; <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/buy/">guarantee</a> that the new owner will refrain from assigning
&gt; a new meaning to http://[your committee]/namespaces/xxx

For sure.

But be careful using this as an argument in favour of using URNs or
some other URI scheme -- If you don't care about dereferencing, it
doesn't matter that http://[your committee]/namespaces/xxx doesn't
dereference today, and might dereference misleadingly in some
relatively unlikely future.  If you _do_ care, then the mechanisms put
in place to support dereferencing of e.g. URNs will almost certainly
be vulnerable to the same human-originating failure modes.

&gt; The TAG is presumably aware of this problem (having had it
&gt; pointed out to them more than once), and has presumably
&gt; decided that it does not matter enough to make a difference.
&gt; But as long as domain names are allowed to be used more
&gt; than once by different owners, no system of unique
&gt; identifiers built on the domain name system actually
&gt; guarantees uniqueness of identifier.

Correct.  I am unaware of _any_ examples of published
<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">standards</a>-related URIs transitioning from useful to misleading (as
opposed to useless).  It's not impossible for this to happen, but
pretty unlikely.

I have a long-standing interest in coming up with some kind of
domain-name insurance for web/internet standards . . .

&gt; In the short run, that doesn't matter.  Whether it matters
&gt; in the long run depends on how long you want things to
&gt; work, and how dependent you want to be on netscape.com,
&gt; for example, continuing to denote what it once denoted.

Jonathan Rees has argued, convincingly for me, that
e.g. http://www.w3.org/1999/xhtml will always _denote_ the <a title="XHTML
namespace" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xhtml.html">XHTML
namespace</a>, by use and precedent, _regardless_ of whether or not the
w3.org website persists, or indeed even if w3.org gets reassigned to
someone who starts serving pornographicly embellished caricatures of
the XHTML spec. editors from that URI. . .

I don't expect everyone to be convinced on _that_ point, but what _is_
true I think is that &quot;thinks [will] work&quot; wrt e.g. that namespace URI
regardless of who owns the domain or what they put at it, because
software, unlike human beings, does _not_ depend on successful
retrieval from namespace URIs for proper functioning.

Which brings us to Eliot's point: indeed the reason for the bit about
dereferencability he quoted is that you _can't_ depend on retrieval,
because namespace owners are _not_ required to support it.

ht 
- -- 
       Henry S. Thompson, School of Informatics, University of Edinburgh
                         Half-time member of W3C Team
      10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
                Fax: (44) 131 651-1426, e-mail: <a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=Re%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253Cf5bvdk1l5ho.fsf%40hildegard.inf.ed.ac.uk%253E&amp;References=%253Cf5bvdk1l5ho.fsf%40hildegard.inf.ed.ac.uk%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>
                       URL: http://www.ltg.ed.ac.uk/~ht/
[mail really from me _always_ has this .sig -- mail without it is forged spam]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)

iD8DBQFKnpHzkjnJixAXWBoRApUkAJ4vG8p93NLkk1SUQulx09y2QQFh3gCfSfuo
2qr8GNAr5ony8g47zs0CyhU=
=vaad
-----END PGP SIGNATURE-----
</pre>
<span id="received"><dfn>Received on</dfn> Wednesday,  2 September 2009 15:41:28 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post07000.htm</link><pubDate>Wed, 02 Sep 2009 16:40:35 GMT</pubDate></item><item><title>Re: Best Practices for Establishing Namespace Name </title><description><![CDATA[<pre id="body">
<a name="start4" accesskey="j" id="start4"></a>2009/9/2  &lt;<a href="mailto:noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253C74a894af0909020746j6bac96ak7c2dff85b8da11ad%40mail.gmail.com%253E&amp;References=%253C74a894af0909020746j6bac96ak7c2dff85b8da11ad%40mail.gmail.com%253E">noah_mendelsohn&#x40;&#0117;&#0115;&#0046;&#0105;&#0098;&#0109;&#0046;&#0099;&#0111;&#0109;</a>&gt;:
&gt; Hi, Scott.  Further endorsing the advice that Henry and Eliot have given
&gt; you, I suggest you might be interested in the TAG's finding that
&gt; specifically encourages you to provide useful information that can be
&gt; retrieved using the namespace URI.  See [1].
&gt;
&gt; Noah
&gt;
&gt; [1] http://www.<a title="w3" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">w3</a>.org/2001/tag/doc/nsDocuments/


...but avoid using dates, for example:

http://www.w3.org/1999/<a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xslt.html">XSL</a>/Transform
http://www.w3.org/2001/XMLSchema

would have been much better as:

http://www.w3.org/XSLT
http://www.w3.org/XMLSchema

....then you don't have to reassure newbies that they really are using
modern technologies (2.0 and 1.1), despite what they may think from
the namespace.

I would say the main thing is to choose a namespace that wont need to
change, so don't use dates, versions, &quot;beta&quot;, codenames etc.  Also the
namespace is often its branding, so using product names might be great
until marketing change their minds and call the product something
else... if the <a title="xml" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml.html">xml</a> is visible to the customer they may ask for the
namespace to change too.

So as an example, if the company is called &quot;foo&quot; and the product is
&quot;foobar&quot;, you would probably choose &quot;http://foo.com/foobar&quot;, which is
most likely going to be ok, but I'm beginning to think that
&quot;http://foo.com/ns&quot; is the better choice.





-- 
Andrew Welch
http://andrewjwelch.com
Kernow: http://kernowforsaxon.sf.net/
</pre>
<span id="received"><dfn>Received on</dfn> Wednesday,  2 September 2009 14:47:06 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post04000.htm</link><pubDate>Wed, 02 Sep 2009 15:46:25 GMT</pubDate></item><item><title>Re: Best Practices for Establishing Namespace Name </title><description><![CDATA[<pre id="body">
<a name="start10" accesskey="j" id="start10"></a>
On 2 Sep 2009, at 09:40 , Henry S. Thompson wrote:

&gt; -----BEGIN PGP SIGNED MESSAGE-----
&gt; Hash: SHA1
&gt;
&gt; C. M. Sperberg-McQueen writes:
&gt;
&gt;&gt; The record would not be complete without someone observing
&gt;&gt; that it also has the disadvantage that if the domain name
&gt;&gt; registration for [your committee] ever lapses, there is no
&gt;&gt; <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/buy/">guarantee</a> that the new owner will refrain from assigning
&gt;&gt; a new meaning to http://[your committee]/namespaces/xxx
&gt;
&gt; For sure.
&gt;
&gt; But be careful using this as an argument in favour of using URNs or
&gt; some other URI scheme -- If you don't care about dereferencing, it
&gt; doesn't matter that http://[your committee]/namespaces/xxx doesn't
&gt; dereference today, and might dereference misleadingly in some
&gt; relatively unlikely future.  If you _do_ care, then the mechanisms put
&gt; in place to support dereferencing of e.g. URNs will almost certainly
&gt; be vulnerable to the same human-originating failure modes.

The meaning of some identifiers is given in a way that
guarantees permanence of the meaning assigned.  If URLs
mean things by virtue of the actions and/or intentions of
their owners (which is what I understand the TAG's story
to be), then when the owner changes, the meaning is
necessarily subject to change.

The difference at issue is not whether, when you dereference
something, you get something 'misleading' or not.  The
issue is whether the prescribed methods for determinining
the denotation of an identifier guarantee stability of
denotation over time or not.

On the account offered in your email, the system of using
URLs as long-lived identifiers seems to depend on (a) the
proposition that a URL has a given meaning just when the
owner of the relevant domain assigns it that meaning, and
(b) the proposition that a URL has a given meaning
whenever we feel like interpreting that way, regardless
of the actions of the owner of the relevant domain.

The TAG may have no trouble reconciling those two
propositions; I confess that to me, they just look like
a contradiction at the heart of the TAG's edifice.

-- 
****************************************************************
* C. M. Sperberg-McQueen, Black Mesa Technologies LLC
* http://www.blackmesatech.com
* http://cmsmcq.com/mib
* http://balisage.net
****************************************************************
</pre>
<span id="received"><dfn>Received on</dfn> Wednesday,  2 September 2009 16:53:48 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post00001.htm</link><pubDate>Wed, 02 Sep 2009 10:53:09 GMT</pubDate></item><item><title>Re: Best Practices for Establishing Namespace Name </title><description><![CDATA[<pre id="body">
<a name="start1" accesskey="j" id="start1"></a>-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Tsao, Scott writes:

&gt; Thanks very much for your suggestions!
&gt;
&gt; Is http: URI that same as URL?

Many people use 'URL' to mean 'URI using the http: scheme', yes.

&gt; And, is the use of them for namespace names (in lieu of URN)
&gt; recommended by <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">standards</a> organizations such as W3C and <a title="OASIS" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/super_catalogs.html">OASIS</a>?

Absolutely.  OASIS have backed off using URNs as namespace names, and
W3C TAG strongly recommends using http: URIs for this purpose.

&gt; The committee (we are participating in) seems to think that we
&gt; should register a formal URN namespace for &quot;global&quot; uses like OASIS
&gt; and S1000D have done [1], because that would allow us to use this
&gt; unique namespace as part of our <a title="learn more" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/xml_schema_editor.html">schema namespace</a> structure for
&gt; different schemas in different specifications.

Why doesn't the same apply for e.g. http://[your committee]/namespaces/xxx?

Which has the additional benefit that as I mentioned before, you can
document your namespace at that URI...

ht
- -- 
       Henry S. Thompson, School of Informatics, University of Edinburgh
                         Half-time member of W3C Team
      10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
                Fax: (44) 131 651-1426, e-mail: <a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=Re%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253Cf5bk50hofc5.fsf%40hildegard.inf.ed.ac.uk%253E&amp;References=%253Cf5bk50hofc5.fsf%40hildegard.inf.ed.ac.uk%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>
                       URL: http://www.ltg.ed.ac.uk/~ht/
[mail really from me _always_ has this .sig -- mail without it is forged spam]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)

iD8DBQFKnj1akjnJixAXWBoRAgpnAJ946RWeMWRT4NA3S1hHT0bCc63GPgCcDCJp
3NNY0Glqx4E0BJeWcEZs0z8=
=zpxU
-----END PGP SIGNATURE-----
</pre>
<span id="received"><dfn>Received on</dfn> Wednesday,  2 September 2009 09:40:33 GMT</span>
</div>
]]></description><link>http://xsd.stylusstudio.com/2009Sep/post01000.htm</link><pubDate>Wed, 02 Sep 2009 10:39:38 GMT</pubDate></item><item><title>Re: Best Practices for Establishing Namespace Name </title><description><![CDATA[<pre id="body">
<a name="start3" accesskey="j" id="start3"></a>Hi, Scott.  Further endorsing the advice that Henry and Eliot have given 
you, I suggest you might be interested in the TAG's finding that 
specifically encourages you to provide useful information that can be 
retrieved using the namespace URI.  See [1].

Noah

[1] http://www.<a title="w3" class="kwLink" onMouseOver="stm(Text[0],Style[0])" onMouseOut="htm()" href="http://www.stylusstudio.com/w3c/">w3</a>.org/2001/tag/doc/nsDocuments/

--------------------------------------
Noah Mendelsohn 
IBM Corporation
One Rogers Street
Cambridge, MA 02142
1-617-693-4036
--------------------------------------








ekimber &lt;<a href="mailto:ekimber&#x40;&#0114;&#0101;&#0097;&#0108;&#0108;&#0121;&#0115;&#0105;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253COFE4C64FBA.0C4C2B21-ON85257625.004CF4F1-85257625.004D27B1%40lotus.com%253E&amp;References=%253COFE4C64FBA.0C4C2B21-ON85257625.004CF4F1-85257625.004D27B1%40lotus.com%253E">ekimber&#x40;&#0114;&#0101;&#0097;&#0108;&#0108;&#0121;&#0115;&#0105;&#0046;&#0099;&#0111;&#0109;</a>&gt;
Sent by: <a href="mailto:xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;?Subject=Re%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253COFE4C64FBA.0C4C2B21-ON85257625.004CF4F1-85257625.004D27B1%40lotus.com%253E&amp;References=%253COFE4C64FBA.0C4C2B21-ON85257625.004CF4F1-85257625.004D27B1%40lotus.com%253E">xmlschema-dev-request&#x40;&#0119;&#0051;&#0046;&#0111;&#0114;&#0103;</a>
09/02/2009 09:12 AM
 
        To:     &quot;Henry S. Thompson&quot; &lt;<a href="mailto:ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;?Subject=Re%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253COFE4C64FBA.0C4C2B21-ON85257625.004CF4F1-85257625.004D27B1%40lotus.com%253E&amp;References=%253COFE4C64FBA.0C4C2B21-ON85257625.004CF4F1-85257625.004D27B1%40lotus.com%253E">ht&#x40;&#0105;&#0110;&#0102;&#0046;&#0101;&#0100;&#0046;&#0097;&#0099;&#0046;&#0117;&#0107;</a>&gt;, &quot;Tsao, Scott&quot; 
&lt;<a href="mailto:scott.tsao&#x40;&#0098;&#0111;&#0101;&#0105;&#0110;&#0103;&#0046;&#0099;&#0111;&#0109;?Subject=Re%3A%20Best%20Practices%20for%20Establishing%20Namespace%20Name&amp;In-Reply-To=%253COFE4C64FBA.0C4C2B21-ON85257625.004CF4F1-85257625.004D27B1%40lotus.com%253E&amp;References=%253COFE4C64FBA.0C4C2B21-ON85257625.004CF4F1-85257625.004D27B1%40lotus.com%253E">scott.tsao&#x40;&#0098;&#0111;&#0101;&#0105;&#0110;&#0103;&#0046;&#0099;&#0111;&#0109;</a>&gt;
    