Skip to content

Test files are not SBOL compliant #310

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

Open
fxbuson opened this issue Apr 15, 2025 · 3 comments · Fixed by #312
Open

Test files are not SBOL compliant #310

fxbuson opened this issue Apr 15, 2025 · 3 comments · Fixed by #312

Comments

@fxbuson
Copy link
Collaborator

fxbuson commented Apr 15, 2025

According to the SBOL 2.3 specification, section 12.3: "Compliant SBOL Objects", item 6:

If a compliant SBOL object has a version, then its identity property MUST contain a URI of the form “〈persistentIdentity〉/〈version〉”.

Right now, test files such as BBa_J23101.xml have a version, but don't have the "/〈version〉" on their identity:

...
<sbol:ComponentDefinition rdf:about="https://synbiohub.org/public/igem/BBa_J23101">
 <ns0:mutableDescription>later</ns0:mutableDescription>
 <ns0:ownedBy rdf:resource="https://synbiohub.org/user/myers"/>
 <sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
 <sbol:version>1</sbol:version>
...

If I create a file with pysbol2 with SBOL_COMPLIANT_URIS as True, the identity will have the "/〈version〉".

Similarly, exports from SynbioHub right now also include the version in the identity:

...
<sbol:ComponentDefinition rdf:about="https://synbiohub.org/public/igem/BBa_J23101/1">
  <sbol:persistentIdentity rdf:resource="https://synbiohub.org/public/igem/BBa_J23101"/>
  <sbol:displayId>BBa_J23101</sbol:displayId>
  <sbol:version>1</sbol:version>
...

I propose we change these test files to versions with the compliant format, adding their versions to the end of their Identities.

This is important because we are generating new test files for the new converter with pysbol2, and we need to be able to test the changes we make.

@fxbuson
Copy link
Collaborator Author

fxbuson commented Apr 15, 2025

Tagging @PrashantVaidyanathan @jakebeal @cjmyers to have a look at this

@jakebeal
Copy link
Contributor

I would say that it's important to keep these objects around as is: they are legal non-compliant SBOL2.

However, I think it would be OK to also add compliant variants of these objects, and to clearly mark which are and are not compliant and why in their comments / descriptions.

@jakebeal
Copy link
Contributor

I'm going to reopen this, since per @fxbuson 's comment on PR #315, these files will not yet be handled without errors.

To close this issue, update the converter so that these files are able to round-trip from SBOL2 to SBOL3 to SBOL2 without error and while still preserving their original (non-compliant) URI.

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

Successfully merging a pull request may close this issue.

2 participants