OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

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

RE: using namespaces to version



It is essential to separate the concept of namespaces from the concept of
schemas - they are not the same. Currently, UK Government namespaces are not
versioned. Schemas carry a major version number in the URI and instance
documents contain the full version number. The logic is that, as others have
said, the namespace just makes the tag names unique, so does not need to
change. It is the schema that affects validation. Schema changes that result
in an upwardly compatible schema (e.g. no new mandatory elements, no
elements removed) have the minor version changed, so the URI remains the
same. Changes that result in the schema not being upwardly compatible have
the major version number (and hence the URI) changed.

But now RDDL comes along and gives us something for the namespace to point
to. This could result in a need to version namespaces so that we can point
to different RDDL documents. But if we do this, what happens (as David
Carlisle mentioned) to processing code that uses fully-qualified names (such
as code that uses XPath expressions)? I'm just starting to think about this
for UK Govt.

Paul Spencer
CTO, alphaXML Ltd
alphaXML is recruiting XML Consultants
+44 (0)1491 630053
http://www.alphaxml.com


-----Original Message-----
From: Tony Coates [mailto:Tony.Coates@reuters.com]
Sent: 03 May 2001 10:19
To: xml-dev@lists.xml.org
Subject: Re: using namespaces to version




On 02/05/2001 23:29:50 Warren Hedley wrote:

>I'm wondering if anyone on the list has any strong opinions about
>the use of namespaces for versioning. In particular, am I likely
>to run into any problems if I base my namespaces on the Dublin Core
>format shown below?

I have a strong opinion that namespace URIs should be explicitly versioned.
I'm
not against also having the version in an attribute value on the top-level
element, but I see that as a complement, not a replacement.  The problem
with
"canonical namespace URIs" that point to the most recent version of a spec
is
that existing applications don't automatically rewrite themselves to fit the
new
version of the spec.  An application needs to be able to detect quickly
whether
a document uses a version of a schema that it can deal with.  If not, it
then
needs to reject it, or pass it on to a different application, or get it
converted to a version that it can deal with.  It is (needlessly) harder to
get
this to work properly if the one namespace URI applies to all versions of a
schema.