Review solicited for application/cellml-1.0+xml andapplication/cellml-1.1+xml

Andrew Miller ak.miller at auckland.ac.nz
Tue Apr 11 06:35:05 CEST 2006


Quoting Mark Baker <distobj at acm.org>:
...
> Will "supporting CellML" mean supporting all versions of CellML?  It
> sounds like it might be, based on Andrew's answers to your questions.
I think that support for each individual version of CellML is quite independent.

In terms of forwards support, there are many CellML 1.0 only applications, and
should a future version of the specification be released, there will be
applications which don't support that.

In terms of backwards support, software which supports CellML 1.1 can easily
support CellML 1.0, just by looking for elements of a different namespace. I am
not aware of anyone supporting 1.1 and not going to the extra effort to support
1.0. However, this may not continue for future versions. For example,
cellml:reaction is currently regarded as a mistake, as it mixes domain specific
information into otherwise domain-neutral mathematical models(the favoured way
to do this is now through metadata, which doesn't prevent domain-unaware
software from processing the model). Future CellML specifications may drop
cellml:reaction, and software vendors who do not wish to implement this may
choose not to support only later versions.

> In that case, I agree that a single media type is appropriate.
I think that it would give software a lot more flexibility if there was either a
version parameter, or a media type. This would allow scripts which serve CellML
documents over HTTP to use content-type negotiation to determine which version
of the CellML document to send. For example, a client might send

GET /models/SomeModel.xml HTTP/1.1
Host: www.example.org
Accept: application/cellml-1.0+xml; q=0.5, application/cellml-1.1+xml; q=1

and the server could then serve a CellML 1.1 model, if it has one(or can attempt
to convert into CellML 1.1 from the version it has), or otherwise serve a CellML
1.0 model.

Applications(clients) which don't support 1.1 could request a 1.0 version. This
way, the server can provide the best/most elegant model that it can, while
still supporting all CellML applications from a single URL.

Similarly, users viewing models with their web-browser could configure a
bleeding edge application for the latest version parameter/MIME type, and a
more established application for older versions.

Best regards,
Andrew Miller


----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.


More information about the Ietf-types mailing list