Re: Import and change target namespace is desirable

Bob Schloss writes:

>> Proposal for a New XML Schema Feature: Import 
>> and Change Target Namespace

This concept was considered and debated in some detail during design of 
our <schema> document syntax (I.e. when we associated a single 
targetNamespace with a given schema document) and in our design 
discussions on <import>.  We decided not to provide this feature, in part 
because we felt that schemas make declarations for named elements (and 
attributes), that the namespace is very much part of the name being 
declared, and that on balance we did not want to specifically encourage 
schema users to weaken that association.  You can, of course, use tools 
like XSL to rewrite schema documents, but we don't  provide assistance 
within the schema language.

>> he main use of such a feature might be 
>> when evolving a schema

This  also was discussed at length.  In fact, as we saw in the debates 
over namespaces for HTML, there is no architected agreement in the XML 
community as to the best practices for evolving vocabularies in 
conjunction with namespaces.  Your proposal implies a model in which the 
existing vocabulary is republished more or less in its entirety in a new 
namespace when versioned.  This is one of several plausible models, but it 
has downsides as well.  Consider a vocabulary which has undergone 30 minor 
revisions.  An XPath or XSL stylesheet, for example, is difficult to write 
if you want to write a template that matches a given element <E> (which 
might not have actually been changed by the revisions.)

There are those who believe that this the right way to evolve 
vocabularies, and those who don't.  We didn't consider this form of 
evolution to be sufficiently agreed upon that we would use it as the basis 
for a schema language feature, such as the change to <import> that you 
propose.  My own view, oft expressed, is that the W3C would do well to 
tackle the question of how vocabularies evolve.  The right answers will 
potentially involve namespaces, XPath, various forms of catalogs and 
packaging, etc.  I think that schemas should neither presume an answer nor 
attempt to invent one in isolation.  Clearly schemas will need to evolve 
in future versions to support such mechanisms.  Ironically, we like other 
XML vocabularies lack an ability to rely on such agreed-upon conventions 
as a means of planning for our own evolution.  So far, W3C has explicitly 
declined to do organized work in the area of evolving or versioned 
vocabularies.

Note that <redefine> does provide limited support for the opposite model 
of evolution:   changing definitions within the same namespace.  We have 
signaled in our CR draft that we know this to be a controversial area of 
innovation and are soliciting feedback.

------------------------------------------------------------------------
Noah Mendelsohn                                    Voice: 1-617-693-4036
Lotus Development Corp.                            Fax: 1-617-693-8676
One Rogers Street
Cambridge, MA 02142
------------------------------------------------------------------------

Received on Thursday, 14 December 2000 02:13:46 UTC