CellML Discussion List

Text archives Help


[cellml-discussion] Maintaining CellML forwards compatibility


Chronological Thread 
  • From: matt.halstead at auckland.ac.nz (Matt Halstead)
  • Subject: [cellml-discussion] Maintaining CellML forwards compatibility
  • Date: Wed, 5 Apr 2006 23:32:50 +1200

That would probably keep most people happy. I doubt CellML will move
much more past a 1.1 phase, instead we will have a new language
specification which is a better model than CellML.


On 5/04/2006, at 12:01 PM, Andrew Miller wrote:

> Hi all,
>
> To date, the strategy used for CellML when changing to a new version
> (so far,
> this has only happened from CellML 1.0 to 1.1) has been to move all
> elements
> into a new namespace, even those elements which are compatible with
> previous
> versions.
>
> As new versions tend to build on older versions, some degree of
> forwards
> compatibility seems reasonable, as CellML processing software may
> simply be
> able to ignore parts of the document which they don't understand,
> and so still
> be able to deal with newer versions.
>
> However, in order to support this, we need to make it clear which
> elements in a
> new specification old software should try to process, and which
> ones it should
> ignore. It seems that the best way to do this is to mix namespaces
> -- that is,
> new versions of CellML subsequent to 1.1 can add new elements and
> attributes in
> the new CellML namespace, and state that certain elements or
> attributes in the
> namespaces from previous versions are deprecated. However, they
> will not move
> elements or attributes from the old namespace into the new namespace
> (except to
> explicitly signal that compatibility has been broken).
>
> For example, suppose that a hypothetical CellML 1.2 specification
> has been
> released, and it defines a new structural element called foobar. In
> this case,
> a CellML 1.2 document could look like this...
>
> <model xmlns="http://www.cellml.org/cellml/1.1#";
> xmlns:cml12="http://www.cellml.org/cellml/1.2#";>
> <component>
> ...
> </component>
> <cml12:foobar />
> </model>
>
> CellML 1.1 capable software can still process the document, as it
> will treat
> cml12:foobar as an extension element and ignore it.
>
> Any opinions? Should we state (for example, in the MIME type
> registration) that
> we will follow this approach?
>
> Best regards,
> Andrew Miller
>
>
> ----------------------------------------------------------------
> This message was sent using IMP, the Internet Messaging Program.
> _______________________________________________
> cellml-discussion mailing list
> cellml-discussion at cellml.org
> http://www.cellml.org/mailman/listinfo/cellml-discussion





Archive powered by MHonArc 2.6.18.

Top of page