cellml/libcellml

CellML 1.x: allow multiple connections with the same components

agarny opened this issue · 1 comments

Right now, we cannot import a CellML 1.x model that has something like:

<connection>
  <map_components component_1="x" component_2="y"/>
  <map_variables variable_1="x_a" variable_2="y_a"/>
</connection>
<connection>
  <map_components component_1="x" component_2="y"/>
  <map_variables variable_1="x_b" variable_2="y_b"/>
</connection>
<connection>
  <map_components component_1="y" component_2="x"/>
  <map_variables variable_1="y_c" variable_2="x_c"/>
</connection>

This is most likely because CellML 2.0 only allows one connection between two different components. But, there is no such restriction in CellML 1.x, as long as mapped variables are only mapped once. In other words, we should be able to import the above.

Ok, closing. Indeed, I genuinely thought that this was allowed, but... it clearly isn't in either CellML 1.0 or CellML 1.1. My bad!