| SEP | |
|---|---|
| Title | Changes in the new SBOL 3.0 specification |
| Authors | Chris Myers (myers@ece.utah.edu), Jake Beal (jakebeal@gmail.com), James McLaughlin (james@mclgh.net), Bryan Bartley (bartleyba@sbolstandard.org), James Scott-Brown (james@jamesscottbrown.com), Pedro Fontanarrosa (pfontanarrosa@gmail.com), Prashant Vaidyanathan (t-prva@microsoft.com), Neil Wipat (neilwipat@gmail.com), Matthew Crowther (m.crowther1@ncl.ac.uk), Goksel Misirli (g.misirli@keele.ac.uk) |
| Editor | Prashant Vaidyanathan (t-prva@microsoft.com), Pedro Fontanarrosa (pfontanarrosa@gmail.com), James McLaughlin (james@mclgh.net) |
| Type | New Specification |
| SBOL Version | SBOL 3.0 |
| Replaces | SBOL 2.x |
| Status | Accepted |
| Created | 12-March-2020 |
| Last modified | |
| Issue | #98 |
In this document, a brief and high level overview of the changes in the new SBOL 3 specification document is explained.
- 1. Rationale
- 2. Specification
- 3. Example or Use Case
- 4. Backwards Compatibility
- 5. Discussion
- 6. Competing SEPs
- References
- Copyright
Sufficient SEPs accumulated proposing major data model changes that merited a change in the specification from version 2.x to 3.0. This SEP summarizes the changes that have been implemented from various SEPs that have been accepted by the community along with changes that have been proposed after discussion at HARMONY 2020.
definitionrenamed asinstanceOfdcterms:titlerenamed assbol:namedcterms:descriptionrenamed assbol:descriptionpersistentIdentityremoved fromIdentifiedversionremoved fromIdentifiedInterfacehas been introduced as a sub-class ofIdentifiedNameSpacehas been introduced as a sub-class ofCollection- Added a new Abstract class
Feature- Add
rolefield toFeature - Add
directionfield toFeature - Add
orientationfield toFeature
- Add
- SBOL 2.x
Componentrenamed asSubComponent- Add
locationfield toSubComponent - Remove
accessfield fromSubComponent - Remove
directionfield fromSubComponent. This is now inherited from the parent classFeature
- Add
SubComponentis now a sub-class ofFeature- SBOL 2.x
SequenceAnnotationrenamed asSequenceFeature- Remove
componentfield fromSequenceFeature - Remove
roleIntegrationfield fromSequenceFeature
- Remove
SequenceFeatureis now a sub-class ofFeatureComponentReferenceintroduced as a sub-class ofFeatureLocalSubComponentintroduced as a sub-class ofFeatureExternallyDefinedintroduced as a sub-class ofFeature- SBOL 2.x
SequenceConstrainthas been renamed asConstraintConstraint.objectandConstraint.subjectnow point toFeature- The table of recommended restrictions for
Constrainthas been updated.
- The
sequenceproperty ofLocationis now required.- As a consequence,
Sequencenow haselementsandencodingas optional rather than required.
- As a consequence,
- Add
orderfield toLocation - SBOL 2.x
GenericLocationhas been removed EntireSequencehas been introduced as a sub-class ofLocation- SBOL 2.x
ComponentDefinitionrenamed asComponent- Add
interfacefield toComponent
- Add
- SBOL 2.x
ModuleDefinitionproperties moved toComponent- SBO's FunctionalEntity term has been introduced as type for
Component - SBOL 2.x
ModuleDefinitionhas been removed - SBOL 2.x
Modulehas been removed
- SBO's FunctionalEntity term has been introduced as type for
- SBOL 2.x
FunctionalComponenthas been removed and any references to it have been changed to references toSubComponent - SBOL 2.x
MapToshas been removed. - BioPAX
typevalues have been changed to their SBO equivalents. - SBOL has been made more Semantic Web friendly. This includes:
- Differentiating SBOL entities (concepts) and properties. A few examples include:
- The
featurefield ofComponentwhich points to aFeatureobject, has now been renamed ashasFeature - The
variableComponentfield ofCombinatorialDerivationwhich points to aVariableComponentobject, has now been renamed ashasVariableComponent
- The
- Consistent labelling of SBOL entities
- For instance, Access values will be capitalised. E.g. 'public' has been changed to 'Public', 'private' has been changed to 'Private', etc.
rdf:typeis now recommender oversbol:typeto specify the type of an SBOL entity.- Enabling graph-based serialization of SBOL documents.
- Differentiating SBOL entities (concepts) and properties. A few examples include:
- Properties/fields that were in plural form are now specified in singular form
The following changes were proposed during HARMONY 2020 and have not been covered by any previous SEPs:
- The
operatorfield ofVariableComponenthas been changed tocardinality orderfield has been added toLocationComponentInstanceclass has been renamed asFeatureSequenceFeatureclass is now a sub-class ofFeature- The
hasSubComponentandhasFeaturefields of theComponentclass have been merged as a single field:hasFeaturewhich points to aFeatureobject- This was a consequence of making
SequenceFeatureandSubComponentsub-classes ofFeature.
- This was a consequence of making
hasSequencefield has been added back toComponent- SEP 41 removed
hasSequencefromComponent, howeverhasSequencehas been added back toComponent.
- SEP 41 removed
orientationfield has been added toFeatureExperimentis now a sub-class ofCollectionNameSpaceis now a sub-class ofCollectionSequencenow haselementsandencodingas optional rather than required.GenericLocationhas been removed.- Location's
EntireLocationsub-class has been renamed asEntireSequence- SEP 41 introduced
EntireLocation. This new class has been renamedEntireSequence.
- SEP 41 introduced
SequenceConstrainthas been renamed asConstraintExternalReferencehas been renamed asExternallyDefined- SEP 36 introduced
ExternalReferenceas a subclass ofFeature. This new class has been renamed asExternallyDefined.
- SEP 36 introduced
- The
VariableComponentclass has 3 optional properties. There is a validation rule that states that at least one of them must not be empty. This validation rule has been deleted. - Added the
hashAlgorithmproperty to theAttachmentclass. The hash property is OPTIONAL and MAY contain the name of the hash algorithm used to generate the value of the hash property. The value of this property SHOULD be a hash name string from the IANA Named Information Hash Algorithm Registry, of which sha3-256 is currently recommended. If the hash property is set, thenhashAlgorithmMUST be set as well.
In this section, we show the UML diagrams of the classes that have undergone changes that were not part of any previous SEPs.
- Collection UML
- Component UML
- Feature UML
- Location UML
- VariableComponent UML
None.
None.

To the extent possible under law,
SBOL developers
has waived all copyright and related or neighboring rights to
SEP 002.
This work is published from:
United States.




