Comments solicited on application/cellml+xml

Mark Baker distobj at acm.org
Tue Mar 28 19:57:36 CEST 2006


Hi Eric,

On 3/28/06, Eric Prud'hommeaux <eric at w3.org> wrote:
> On Tue, Mar 28, 2006 at 07:50:01AM -0500, Mark Baker wrote:
> > Section 3, last paragraph.  I consider the versioning strategy you
> > define there to be bad practice and so would recommend against it.  It
> > appears to say that the next incremental version of CellML will use a
> > new namespace, which would make it incompatible with existing
> > processors.  Plus, if some future change is significant enough to make
> > breaking backwards compatibility necessary or desirable, a new media
> > type seems a better option to me.
>
> If you assume the document to be self-describing, I would expect the
> namespace to change to prevent older implementations from processing
> data that is not backward compatible.

If it's not backwards compatible, sure (and/or change the media type).
 But the draft appears to prescribe that practice for all versions,
independent of their compatibility with previous versions.

> If there is only one namespace,
> it should change any time the media type needs to change.

I don't think that necessarily follows, though I could imagine cases
where it's desirable.  I'd say it depends on if/how the terms in the
vocabulary are used outside of the context of the canonical format. 
For example, if the terms were to be used with RDF, then you'd want to
be very careful changing the namespace.  But if they weren't, it
probably doesn't matter.

>
> I would change the "software SHOULD check the namespace" to a MUST. If
> you are feeling ambitious, establish some protocol like:
>
>   CellML processing software MUST check the namespace of
>   *every* element in order to determine whether or not they
>   have the capability to process a given document. If the
>   software is not able to process the element, it must ignore
>   the element, as well as any data within that element.
>
> This more fine-grained versioning approach would allow you to add new
> data in a new namespace and have older processors interpret the subset
> that they are programmed to process. The current approach of changing
> the namespace on the root element would still have the same effects.
>
> Checking every namespace is consistent with conventional XML practice.

Agreed, although I'd hope language like that wouldn't be necessary. 
Then again, I've seen work out of other standards setting
organizations that misuses namespaces so perhaps it doesn't hurt.

Mark.
--
Mark Baker.  Ottawa, Ontario, CANADA.       http://www.markbaker.ca


More information about the Ietf-types mailing list