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

Feature SBOL datatypes #17482

Merged
merged 8 commits into from
Mar 1, 2024
Merged
2 changes: 2 additions & 0 deletions lib/galaxy/config/sample/datatypes_conf.xml.sample
Original file line number Diff line number Diff line change
Expand Up @@ -570,6 +570,7 @@
<datatype extension="ttl" type="galaxy.datatypes.triples:Turtle" display_in_upload="true"/>
<datatype extension="rdf" type="galaxy.datatypes.triples:Rdf" display_in_upload="true"/>
<datatype extension="jsonld" type="galaxy.datatypes.triples:Jsonld" display_in_upload="true"/>
<datatype extension="sbol" type="galaxy.datatypes.triples:Sbol" description="The SBOL (Synthetic Biology Open Language) standard was developed by the synthetic biology community to create a standardized format for the electronic exchange of information on the structural and functional aspects of biological designs." description_url="https://sbolstandard.org" display_in_upload="true"/>
<!-- Excel datatypes -->
<datatype extension="excel.xls" type="galaxy.datatypes.binary:ExcelXls" display_in_upload="true"/>
<datatype extension="xlsx" type="galaxy.datatypes.binary:Xlsx" display_in_upload="true"/>
Expand Down Expand Up @@ -1126,6 +1127,7 @@
<sniffer type="galaxy.datatypes.proteomics:Wiff"/>
<sniffer type="galaxy.datatypes.proteomics:PEFF"/>
<sniffer type="galaxy.datatypes.molecules:CML"/>
<sniffer type="galaxy.datatypes.triples:Sbol"/>
<sniffer type="galaxy.datatypes.xml:GenericXml"/>
<sniffer type="galaxy.datatypes.triples:HDT"/>
<sniffer type="galaxy.datatypes.triples:Turtle"/>
Expand Down
1 change: 1 addition & 0 deletions lib/galaxy/datatypes/test/sbol.v2.crispr_example.xml

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions lib/galaxy/datatypes/test/sbol.v3.circuit.nt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"payload":{"allShortcutsEnabled":true,"fileTree":{"test/resources":{"items":[{"name":"circuit.nt","path":"test/resources/circuit.nt","contentType":"file"},{"name":"mixed-rdf.nt","path":"test/resources/mixed-rdf.nt","contentType":"file"},{"name":"multi-type-ext.nt","path":"test/resources/multi-type-ext.nt","contentType":"file"},{"name":"multi-type-sbol.nt","path":"test/resources/multi-type-sbol.nt","contentType":"file"},{"name":"package.nt","path":"test/resources/package.nt","contentType":"file"},{"name":"simple_library.nt","path":"test/resources/simple_library.nt","contentType":"file"}],"totalCount":6},"test":{"items":[{"name":"SBOLTestSuite","path":"test/SBOLTestSuite","contentType":"submodule","submoduleUrl":"/SynBioDex/SBOLTestSuite/tree/ec49ef04da0252475c6e16dce17c85a0251cdd0a","submoduleDisplayName":"SBOLTestSuite @ ec49ef0"},{"name":"resources","path":"test/resources","contentType":"directory"},{"name":"__init__.py","path":"test/__init__.py","contentType":"file"},{"name":"test_annotation.py","path":"test/test_annotation.py","contentType":"file"},{"name":"test_attachment.py","path":"test/test_attachment.py","contentType":"file"},{"name":"test_collection.py","path":"test/test_collection.py","contentType":"file"},{"name":"test_combderiv.py","path":"test/test_combderiv.py","contentType":"file"},{"name":"test_component.py","path":"test/test_component.py","contentType":"file"},{"name":"test_compref.py","path":"test/test_compref.py","contentType":"file"},{"name":"test_config.py","path":"test/test_config.py","contentType":"file"},{"name":"test_custom.py","path":"test/test_custom.py","contentType":"file"},{"name":"test_document.py","path":"test/test_document.py","contentType":"file"},{"name":"test_examples.py","path":"test/test_examples.py","contentType":"file"},{"name":"test_expdata.py","path":"test/test_expdata.py","contentType":"file"},{"name":"test_extdef.py","path":"test/test_extdef.py","contentType":"file"},{"name":"test_extension.py","path":"test/test_extension.py","contentType":"file"},{"name":"test_feature.py","path":"test/test_feature.py","contentType":"file"},{"name":"test_identified.py","path":"test/test_identified.py","contentType":"file"},{"name":"test_implementation.py","path":"test/test_implementation.py","contentType":"file"},{"name":"test_interaction.py","path":"test/test_interaction.py","contentType":"file"},{"name":"test_interface.py","path":"test/test_interface.py","contentType":"file"},{"name":"test_localsub.py","path":"test/test_localsub.py","contentType":"file"},{"name":"test_location.py","path":"test/test_location.py","contentType":"file"},{"name":"test_module.py","path":"test/test_module.py","contentType":"file"},{"name":"test_object.py","path":"test/test_object.py","contentType":"file"},{"name":"test_om_compound.py","path":"test/test_om_compound.py","contentType":"file"},{"name":"test_om_prefix.py","path":"test/test_om_prefix.py","contentType":"file"},{"name":"test_om_unit.py","path":"test/test_om_unit.py","contentType":"file"},{"name":"test_ownedobject.py","path":"test/test_ownedobject.py","contentType":"file"},{"name":"test_participation.py","path":"test/test_participation.py","contentType":"file"},{"name":"test_property.py","path":"test/test_property.py","contentType":"file"},{"name":"test_provenance.py","path":"test/test_provenance.py","contentType":"file"},{"name":"test_referenced_object.py","path":"test/test_referenced_object.py","contentType":"file"},{"name":"test_roundtrip.py","path":"test/test_roundtrip.py","contentType":"file"},{"name":"test_seqfeat.py","path":"test/test_seqfeat.py","contentType":"file"},{"name":"test_sequence.py","path":"test/test_sequence.py","contentType":"file"},{"name":"test_style.py","path":"test/test_style.py","contentType":"file"},{"name":"test_subcomponent.py","path":"test/test_subcomponent.py","contentType":"file"},{"name":"test_text_property.py","path":"test/test_text_property.py","contentType":"file"},{"name":"test_toplevel.py","path":"test/test_toplevel.py","contentType":"file"},{"name":"test_util.py","path":"test/test_util.py","contentType":"file"},{"name":"test_utils.py","path":"test/test_utils.py","contentType":"file"},{"name":"test_validation.py","path":"test/test_validation.py","contentType":"file"},{"name":"test_varcomp.py","path":"test/test_varcomp.py","contentType":"file"},{"name":"test_visitors.py","path":"test/test_visitors.py","contentType":"file"}],"totalCount":45},"":{"items":[{"name":".github","path":".github","contentType":"directory"},{"name":".idea","path":".idea","contentType":"directory"},{"name":"docs","path":"docs","contentType":"directory"},{"name":"examples","path":"examples","contentType":"directory"},{"name":"logos","path":"logos","contentType":"directory"},{"name":"sbol3","path":"sbol3","contentType":"directory"},{"name":"test","path":"test","contentType":"directory"},{"name":".gitignore","path":".gitignore","contentType":"file"},{"name":".gitmodules","path":".gitmodules","contentType":"file"},{"name":".readthedocs.yaml","path":".readthedocs.yaml","contentType":"file"},{"name":".wokeignore","path":".wokeignore","contentType":"file"},{"name":"LICENSE.txt","path":"LICENSE.txt","contentType":"file"},{"name":"README.md","path":"README.md","contentType":"file"},{"name":"bump-version.sh","path":"bump-version.sh","contentType":"file"},{"name":"logo.jpg","path":"logo.jpg","contentType":"file"},{"name":"setup.cfg","path":"setup.cfg","contentType":"file"},{"name":"setup.py","path":"setup.py","contentType":"file"}],"totalCount":17}},"fileTreeProcessingTime":8.448932,"foldersToFetch":[],"repo":{"id":263636639,"defaultBranch":"main","name":"pySBOL3","ownerLogin":"SynBioDex","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2020-05-13T15:23:52.000+02:00","ownerAvatar":"https://avatars.githubusercontent.com/u/972220?v=4","public":true,"private":false,"isOrgOwned":true},"symbolsExpanded":true,"treeExpanded":true,"refInfo":{"name":"main","listCacheKey":"v0:1698277133.0","canEdit":true,"refType":"branch","currentOid":"ee768406d660df51139a875544a2353b4b828988"},"path":"test/resources/circuit.nt","currentUser":{"id":22823008,"login":"guillaume-gricourt","userEmail":"guipagui@gmail.com"},"blob":{"rawLines":["","<https://github.com/BuildACell/BioCRNPyler/GFP> <http://sbols.org/v3#description> \"GFP Coding Sequence\" .","<https://github.com/BuildACell/BioCRNPyler/GFP> <http://sbols.org/v3#displayId> \"GFP\" .","<https://github.com/BuildACell/BioCRNPyler/GFP> <http://sbols.org/v3#hasNamespace> <https://github.com/BuildACell/BioCRNPyler> .","<https://github.com/BuildACell/BioCRNPyler/GFP> <http://sbols.org/v3#name> \"GFP\" .","<https://github.com/BuildACell/BioCRNPyler/GFP> <http://sbols.org/v3#role> <https://identifiers.org/SO:0000316> .","<https://github.com/BuildACell/BioCRNPyler/GFP> <http://sbols.org/v3#type> <https://identifiers.org/SBO:0000251> .","<https://github.com/BuildACell/BioCRNPyler/GFP> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://sbols.org/v3#Component> .","<https://github.com/BuildACell/BioCRNPyler/UTR1> <http://sbols.org/v3#description> \"Your Description Here\" .","<https://github.com/BuildACell/BioCRNPyler/UTR1> <http://sbols.org/v3#displayId> \"UTR1\" .","<https://github.com/BuildACell/BioCRNPyler/UTR1> <http://sbols.org/v3#hasNamespace> <https://github.com/BuildACell/BioCRNPyler> .","<https://github.com/BuildACell/BioCRNPyler/UTR1> <http://sbols.org/v3#role> <https://identifiers.org/SO:0000139> .","<https://github.com/BuildACell/BioCRNPyler/UTR1> <http://sbols.org/v3#type> <https://identifiers.org/SBO:0000251> .","<https://github.com/BuildACell/BioCRNPyler/UTR1> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://sbols.org/v3#Component> .","<https://github.com/BuildACell/BioCRNPyler/circuit/Constraint1> <http://sbols.org/v3#displayId> \"Constraint1\" .","<https://github.com/BuildACell/BioCRNPyler/circuit/Constraint1> <http://sbols.org/v3#object> <https://github.com/BuildACell/BioCRNPyler/circuit/SubComponent2> .","<https://github.com/BuildACell/BioCRNPyler/circuit/Constraint1> <http://sbols.org/v3#restriction> <http://sbols.org/v3#precedes> .","<https://github.com/BuildACell/BioCRNPyler/circuit/Constraint1> <http://sbols.org/v3#subject> <https://github.com/BuildACell/BioCRNPyler/circuit/SubComponent1> .","<https://github.com/BuildACell/BioCRNPyler/circuit/Constraint1> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://sbols.org/v3#Constraint> .","<https://github.com/BuildACell/BioCRNPyler/circuit/Constraint2> <http://sbols.org/v3#displayId> \"Constraint2\" .","<https://github.com/BuildACell/BioCRNPyler/circuit/Constraint2> <http://sbols.org/v3#object> <https://github.com/BuildACell/BioCRNPyler/circuit/SubComponent3> .","<https://github.com/BuildACell/BioCRNPyler/circuit/Constraint2> <http://sbols.org/v3#restriction> <http://sbols.org/v3#precedes> .","<https://github.com/BuildACell/BioCRNPyler/circuit/Constraint2> <http://sbols.org/v3#subject> <https://github.com/BuildACell/BioCRNPyler/circuit/SubComponent2> .","<https://github.com/BuildACell/BioCRNPyler/circuit/Constraint2> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://sbols.org/v3#Constraint> .","<https://github.com/BuildACell/BioCRNPyler/circuit/Constraint3> <http://sbols.org/v3#displayId> \"Constraint3\" .","<https://github.com/BuildACell/BioCRNPyler/circuit/Constraint3> <http://sbols.org/v3#object> <https://github.com/BuildACell/BioCRNPyler/circuit/SubComponent4> .","<https://github.com/BuildACell/BioCRNPyler/circuit/Constraint3> <http://sbols.org/v3#restriction> <http://sbols.org/v3#precedes> .","<https://github.com/BuildACell/BioCRNPyler/circuit/Constraint3> <http://sbols.org/v3#subject> <https://github.com/BuildACell/BioCRNPyler/circuit/SubComponent3> .","<https://github.com/BuildACell/BioCRNPyler/circuit/Constraint3> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://sbols.org/v3#Constraint> .","<https://github.com/BuildACell/BioCRNPyler/circuit/SubComponent1> <http://sbols.org/v3#displayId> \"SubComponent1\" .","<https://github.com/BuildACell/BioCRNPyler/circuit/SubComponent1> <http://sbols.org/v3#instanceOf> <https://github.com/BuildACell/BioCRNPyler/pTetR> .","<https://github.com/BuildACell/BioCRNPyler/circuit/SubComponent1> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://sbols.org/v3#SubComponent> .","<https://github.com/BuildACell/BioCRNPyler/circuit/SubComponent2> <http://sbols.org/v3#displayId> \"SubComponent2\" .","<https://github.com/BuildACell/BioCRNPyler/circuit/SubComponent2> <http://sbols.org/v3#instanceOf> <https://github.com/BuildACell/BioCRNPyler/op1> .","<https://github.com/BuildACell/BioCRNPyler/circuit/SubComponent2> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://sbols.org/v3#SubComponent> .","<https://github.com/BuildACell/BioCRNPyler/circuit/SubComponent3> <http://sbols.org/v3#displayId> \"SubComponent3\" .","<https://github.com/BuildACell/BioCRNPyler/circuit/SubComponent3> <http://sbols.org/v3#instanceOf> <https://github.com/BuildACell/BioCRNPyler/UTR1> .","<https://github.com/BuildACell/BioCRNPyler/circuit/SubComponent3> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://sbols.org/v3#SubComponent> .","<https://github.com/BuildACell/BioCRNPyler/circuit/SubComponent4> <http://sbols.org/v3#displayId> \"SubComponent4\" .","<https://github.com/BuildACell/BioCRNPyler/circuit/SubComponent4> <http://sbols.org/v3#instanceOf> <https://github.com/BuildACell/BioCRNPyler/GFP> .","<https://github.com/BuildACell/BioCRNPyler/circuit/SubComponent4> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://sbols.org/v3#SubComponent> .","<https://github.com/BuildACell/BioCRNPyler/circuit> <http://sbols.org/v3#displayId> \"circuit\" .","<https://github.com/BuildACell/BioCRNPyler/circuit> <http://sbols.org/v3#hasConstraint> <https://github.com/BuildACell/BioCRNPyler/circuit/Constraint1> .","<https://github.com/BuildACell/BioCRNPyler/circuit> <http://sbols.org/v3#hasConstraint> <https://github.com/BuildACell/BioCRNPyler/circuit/Constraint2> .","<https://github.com/BuildACell/BioCRNPyler/circuit> <http://sbols.org/v3#hasConstraint> <https://github.com/BuildACell/BioCRNPyler/circuit/Constraint3> .","<https://github.com/BuildACell/BioCRNPyler/circuit> <http://sbols.org/v3#hasFeature> <https://github.com/BuildACell/BioCRNPyler/circuit/SubComponent1> .","<https://github.com/BuildACell/BioCRNPyler/circuit> <http://sbols.org/v3#hasFeature> <https://github.com/BuildACell/BioCRNPyler/circuit/SubComponent2> .","<https://github.com/BuildACell/BioCRNPyler/circuit> <http://sbols.org/v3#hasFeature> <https://github.com/BuildACell/BioCRNPyler/circuit/SubComponent3> .","<https://github.com/BuildACell/BioCRNPyler/circuit> <http://sbols.org/v3#hasFeature> <https://github.com/BuildACell/BioCRNPyler/circuit/SubComponent4> .","<https://github.com/BuildACell/BioCRNPyler/circuit> <http://sbols.org/v3#hasNamespace> <https://github.com/BuildACell/BioCRNPyler> .","<https://github.com/BuildACell/BioCRNPyler/circuit> <http://sbols.org/v3#role> <https://identifiers.org/SO:0000804> .","<https://github.com/BuildACell/BioCRNPyler/circuit> <http://sbols.org/v3#type> <https://identifiers.org/SBO:0000251> .","<https://github.com/BuildACell/BioCRNPyler/circuit> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://sbols.org/v3#Component> .","<https://github.com/BuildACell/BioCRNPyler/op1> <http://sbols.org/v3#description> \"Your Description Here\" .","<https://github.com/BuildACell/BioCRNPyler/op1> <http://sbols.org/v3#displayId> \"op1\" .","<https://github.com/BuildACell/BioCRNPyler/op1> <http://sbols.org/v3#hasNamespace> <https://github.com/BuildACell/BioCRNPyler> .","<https://github.com/BuildACell/BioCRNPyler/op1> <http://sbols.org/v3#role> <https://identifiers.org/SO:0000057> .","<https://github.com/BuildACell/BioCRNPyler/op1> <http://sbols.org/v3#type> <https://identifiers.org/SBO:0000251> .","<https://github.com/BuildACell/BioCRNPyler/op1> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://sbols.org/v3#Component> .","<https://github.com/BuildACell/BioCRNPyler/pTetR> <http://sbols.org/v3#description> \"TetR repressible promoter\" .","<https://github.com/BuildACell/BioCRNPyler/pTetR> <http://sbols.org/v3#displayId> \"pTetR\" .","<https://github.com/BuildACell/BioCRNPyler/pTetR> <http://sbols.org/v3#hasNamespace> <https://github.com/BuildACell/BioCRNPyler> .","<https://github.com/BuildACell/BioCRNPyler/pTetR> <http://sbols.org/v3#name> \"pTetR\" .","<https://github.com/BuildACell/BioCRNPyler/pTetR> <http://sbols.org/v3#role> <https://identifiers.org/SO:0000167> .","<https://github.com/BuildACell/BioCRNPyler/pTetR> <http://sbols.org/v3#type> <https://identifiers.org/SBO:0000251> .","<https://github.com/BuildACell/BioCRNPyler/pTetR> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://sbols.org/v3#Component> ."],"stylingDirectives":[[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]],"csv":null,"csvError":null,"dependabotInfo":{"showConfigurationBanner":false,"configFilePath":null,"networkDependabotPath":"/SynBioDex/pySBOL3/network/updates","dismissConfigurationNoticePath":"/settings/dismiss-notice/dependabot_configuration_notice","configurationNoticeDismissed":false,"repoAlertsPath":"/SynBioDex/pySBOL3/security/dependabot","repoSecurityAndAnalysisPath":"/SynBioDex/pySBOL3/settings/security_analysis","repoOwnerIsOrg":true,"currentUserCanAdminRepo":false},"displayName":"circuit.nt","displayUrl":"https://github.com/SynBioDex/pySBOL3/blob/main/test/resources/circuit.nt?raw=true","headerInfo":{"blobSize":"8.24 KB","deleteInfo":{"deleteTooltip":"Fork this repository and delete the file"},"editInfo":{"editTooltip":"Fork this repository and edit the file"},"ghDesktopPath":"https://desktop.github.com","gitLfsPath":null,"onBranch":true,"shortPath":"8d04e8e","siteNavLoginPath":"/login?return_to=https%3A%2F%2Fgithub.com%2FSynBioDex%2FpySBOL3%2Fblob%2Fmain%2Ftest%2Fresources%2Fcircuit.nt","isCSV":false,"isRichtext":false,"toc":null,"lineInfo":{"truncatedLoc":"66","truncatedSloc":"65"},"mode":"file"},"image":false,"isCodeownersFile":null,"isPlain":false,"isValidLegacyIssueTemplate":false,"issueTemplateHelpUrl":"https://docs.github.com/articles/about-issue-and-pull-request-templates","issueTemplate":null,"discussionTemplate":null,"language":null,"languageID":null,"large":false,"loggedIn":true,"newDiscussionPath":"/SynBioDex/pySBOL3/discussions/new","newIssuePath":"/SynBioDex/pySBOL3/issues/new","planSupportInfo":{"repoIsFork":null,"repoOwnedByCurrentUser":null,"requestFullPath":"/SynBioDex/pySBOL3/blob/main/test/resources/circuit.nt","showFreeOrgGatedFeatureMessage":null,"showPlanSupportBanner":null,"upgradeDataAttributes":null,"upgradePath":null},"publishBannersInfo":{"dismissActionNoticePath":"/settings/dismiss-notice/publish_action_from_dockerfile","releasePath":"/SynBioDex/pySBOL3/releases/new?marketplace=true","showPublishActionBanner":false},"rawBlobUrl":"https://github.com/SynBioDex/pySBOL3/raw/main/test/resources/circuit.nt","renderImageOrRaw":false,"richText":null,"renderedFileInfo":null,"shortPath":null,"symbolsEnabled":true,"tabSize":4,"topBannersInfo":{"overridingGlobalFundingFile":false,"globalPreferredFundingPath":null,"repoOwner":"SynBioDex","repoName":"pySBOL3","showInvalidCitationWarning":false,"citationHelpUrl":"https://docs.github.com/github/creating-cloning-and-archiving-repositories/creating-a-repository-on-github/about-citation-files","showDependabotConfigurationBanner":false,"actionsOnboardingTip":null},"truncated":false,"viewable":true,"workflowRedirectUrl":null,"symbols":{"timed_out":false,"not_analyzed":true,"symbols":[]}},"copilotInfo":null,"copilotAccessAllowed":false,"csrf_tokens":{"/SynBioDex/pySBOL3/branches":{"post":"CJIAZy72qI5Fr8RJdBmG1AGA81JBvTWms3rrM2NVHr2IHB4FbejQDC4QtrC8PyKnpKLn2LZ8TauU5wjhcCqLnA"},"/repos/preferences":{"post":"tGUKDABwvUDJx9h91NXq7lLLvJc_Ho24r--5F9xTt2G7vRG64mnJ9E_rLFbATzNucSrA1CQJ2VetqRj5pwgeTg"}}},"title":"pySBOL3/test/resources/circuit.nt at main · SynBioDex/pySBOL3"}
Loading
Loading