Hi Matthias,
SBML is a format for the exchange of models between software tools, which I agree should be supported by any software tool for COBRA modeling.
However, almost every tool that I am aware of that supports SBML, also generates its own internal data structure in memory for manipulation of model content or storage of modeling results. The reason is that processing is faster and more flexible with an internal data structure than it is with a flat XML file.
Currently, the development of a modeling pipeline where multiple software tools process the same model, or its variants, is only possible if one writes out an SBML file to disk, then reads that back into the next software tool. This is not an efficient solution for processing/modelling pipelines that involved multiple languages and software tools. If it was efficient, there would be no need to reimplement methods first disseminated in one language, into another language.
To develop an efficient processing/modelling pipeline that uses, e.g., the COBRA toolbox and COBRApy and other tools in series, one would need a standard format that is stored in memory and compatible with each tool. Many languages provide drivers for accessing databases, which can be stored in memory, or as a hybrid in memory/on disk, so provided that we could agree on a standard representation of a COBRA model, inspired by SBML, then we could then develop multi-lingual pipelines operating on the same model. This is why I asked about the internal specification of a COBRApy model.
Regards,
Ronan