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

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   RE: [xml-dev] Schema Namespace name, schemaLocation, and Schema Versioni

[ Lists Home | Date Index | Thread Index ]

Title: RE: [xml-dev] Schema Namespace name, schemaLocation, and Schema Versioning

Mark,

I too have spent time thinking about this very issue.  I would say that if your namespace is associated with an XML vocabulary, then changes in the namespace identifier could be in sync with changes in the vocabulary - that is, if a construct has two different "treatments" in two different "versions" of the vocabulary (by that I mean perhaps a later version adds additional elements to a content model), or new constructs are added to the vocabulary, then the namespace identifier could change in some way to reflect the new version of the vocabulary.  If, however, there are X schemas that are all based on the same version of a vocabulary, then I would say the namespace identifier should remain the same, but the version information could be reflected in the schema filename.

Hope that helps,
Joe Chiusano
LMI

> **************************************************************************
>   Joseph M. Chiusano
>   Logistics Management Institute
>   2000 Corporate Ridge
>   McLean, VA 22102
>   Email: jchiusano@lmi.org
>   Tel: 571.633.7722
> **************************************************************************
>


-----Original Message-----
From: Mark Feblowitz [mailto:mfeblowitz@frictionless.com]
Sent: Tuesday, July 16, 2002 5:04 PM
To: 'Xml-Dev (E-mail)'
Cc: Duane Krahn (E-mail); Satish Ramanathan (E-mail); Andrew Warren
(E-mail); Kurt A Kanaskie (Kurt) (E-mail); Mark Feblowitz; Michael
Rowell (E-mail)
Subject: [xml-dev] Schema Namespace name, schemaLocation, and Schema
Versioning


I've read the Best Practice, debated the pros and cons, and am still not
confident that I understand all of the ramifications: How should I associate
evolving schema version numbers into my namespace name? Into my
schemaLocation?

I have a set of schemas, all under the same namespace name, that will
certainly change over time.

Some changes will be major, some minor, some "trivial" (with numbering
reflecting the various levels, e.g., 2.3.1).

I know that if I want validators to validate the content, without writing
custom code that inspects the xml doc's content, the doc's schemaLocation
must reflect the specific version information (e.g.,
http://www.MyStandard.org/2.3.1/xyz.xsd).

I know that each schema change could affect the content in the instance
documents (changing the wire signature), and/or the names and/or structure
of the schema, which could adversely affect those schemas that import or
include the altered schema.

As such, each change reflects a different version of the schema (and thus a
new schemaLocation, e.g., http://www.MyStandard.org/2.3.1/xyz.xsd).

But does each change warrant a new namespace name?

How much of a change to the schema truly warrants a change to the namespace
name? (Some say: "any change." Some say: "only non-backward-compatible
changes," whatever those might be).

What are the ramifications of fine-grained versioning in the schema
namespace (e.g., http://www.MyStandard.org/2.3.1/xyz.xsd)?

What are the ramifications of course-grained versioning in the schema
namespace (e.g., http://www.MyStandard.org/2.3/xyz.xsd)?

With well-componentized schemas, I understand that every change to the
schema would require a change to the namespace declaration in every included
schema, in order for namespace names to match. With a good configuration
management system, this can be supported trivially. For those who don't use
these tools, this can be tedious and error prone.

I can tell you at the moment, I'm leaning toward having three levels of
version numbering, and only reflecting major and minor version numbers into
the namespace name. But as I said, I'm not confident about the distinction
between "minor" and "trivial," nor am I convinced that there would be no
adverse impacts on the schemas' deployability/usability.

From a pure xml standpoint, my current approach will work, although I'm
still unsure whether any change, no matter how trivial, would represent both
an identical vocabulary (in the instances) and an identical meta-vocabulary
(in/among the schemas).

But from a practical, production perspective, I am unsure how the
schema-consuming middleware would accommodate the changing namespace names.
Certainly, new maps would have to be created for each element/attribute in
each new namespace name. Not so for most of the content, if the namespace
name was held stable and the predominant changes were extensions.

So what's your take ?( I know this is more of a philosophical rather than
pure technical question). When should a namespace name change to reflect
changes in the schemas? What granularity do you recommend? What practices
are so common that I should just accept them, even if they don't fully
answer my (many) questions?

Where can I look, beyond the xfront site, to get insight into common
practice, ramifications, etc.? Is this question better asked under the
XML-Dev list?

Thanks,

Mark

Mark Feblowitz                                         
XML Architect
       [t]   617.715.7231                                      
       [f]   617.495.0188
Frictionless Commerce Incorporated     
       [e]  mfeblowitz@frictionless.com <mailto:mfeblowitz@frictionless.com>

       [w] http://www.frictionless.com <http://www.frictionless.com>
       [m] 400 Technology Square, 9th Floor
             Cambridge, MA 02139
Open Applications Group Incorporated
       [e]  mfeblowitz@openapplications.org
<mailto:mfeblowitz@openapplications.org>
       [w] http://www.openapplications.org <http://www.openapplications.org>



-----------------------------------------------------------------
The xml-dev list is sponsored by XML.org <http://www.xml.org>, an
initiative of OASIS <http://www.oasis-open.org>

The list archives are at http://lists.xml.org/archives/xml-dev/

To subscribe or unsubscribe from this list use the subscription
manager: <http://lists.xml.org/ob/adm.pl>





 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS