Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix curve child listOfElements #412

Merged
merged 2 commits into from
Nov 22, 2024
Merged

Conversation

luciansmith
Copy link
Member

In libsbml, a 'listOfElements' from the spec is called a 'listOfCurveElements' because of unique naming constraints. However, when reading in an SBML file, the list was requried to be called 'listOfCurveElements' instead of 'listOfElements'. This meant that when libsbml wrote out a file with a 'listOfElements' child of a 'RenderCurve', it couldn't be read back in again.

Instead of changing the required name from 'listOfCurveElements' to 'listOfElements', this change allows both, for backwards compatibility.

I added a test file for validation, but it isn't super compact; it's just the file we had created when we found the bug in the first place.

In libsbml, the list is called a ListOfCurveElements, but in SBML proper, it's just 'listOfElements'.  It gets written out as the latter, but was required to be the former when read in, which meant that nothing libsbml wrote could be read back in.
@fbergmann fbergmann merged commit 8602c88 into development Nov 22, 2024
34 checks passed
@fbergmann fbergmann deleted the fix-curve-listofElements branch November 22, 2024 10:14
@luciansmith
Copy link
Member Author

Thanks for this and the other merges! Happily this means that roadrunner is back to using the develop branch of libsbml instead of its own offshoot.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants