
Quoting Mark Baker <distobj@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.