The primary structure (eg, nucleotide or amino acid sequence) of a ComponentDefinition object.
|
TextProperty | elements |
| The elements property is a REQUIRED String of characters that represents the constituents of a biological or chemical molecule. For example, these characters could represent the nucleotide bases of a molecule of DNA, the amino acid residues of a protein, or the atoms and chemical bonds of a small molecule.
|
|
URIProperty | encoding |
| The encoding property is REQUIRED and has a data type of URI. More...
|
|
URIProperty | persistentIdentity |
| The persistentIdentity property is OPTIONAL and has a data type of URI. This URI serves to uniquely refer to a set of SBOL objects that are different versions of each other. An Identified object MUST be referred to using either its identity URI or its persistentIdentity URI.
|
|
TextProperty | displayId |
| The displayId property is an OPTIONAL identifier with a data type of String. This property is intended to be an intermediate between name and identity that is machine-readable, but more human-readable than the full URI of an identity. If the displayId property is used, then its String value SHOULD be locally unique (global uniqueness is not necessary) and MUST be composed of only alphanumeric or underscore characters and MUST NOT begin with a digit.
|
|
VersionProperty | version |
| If the version property is used, then it is RECOMMENDED that version numbering follow the conventions of semantic versioning, particularly as implemented by Maven. This convention represents versions as sequences of numbers and qualifiers that are separated by the characters “.” and “-” and are compared in lexicographical order (for example, 1 < 1.3.1 < 2.0-beta). For a full explanation, see the linked resources.
|
|
URIProperty | wasDerivedFrom |
| The wasDerivedFrom property is OPTIONAL and has a data type of URI. An SBOL object with this property refers to another SBOL object or non-SBOL resource from which this object was derived. If the wasDerivedFrom property of an SBOL object A that refers to an SBOL object B has an identical persistentIdentity, and both A and B have a version, then the version of B MUST precede that of A. In addition, an SBOL object MUST NOT refer to itself via its own wasDerivedFrom property or form a cyclical chain of references via its wasDerivedFrom property and those of other SBOL objects. For example, the reference chain “ A was derived from B and B was derived from A” is cyclical.
|
|
ReferencedObject | wasGeneratedBy |
| An Activity which generated this ComponentDefinition, eg., a design process like codon-optimization or a construction process like Gibson Assembly.
|
|
TextProperty | name |
| The name property is OPTIONAL and has a data type of String. This property is intended to be displayed to a human when visualizing an Identified object. If an Identified object lacks a name, then software tools SHOULD instead display the object’s displayId or identity. It is RECOMMENDED that software tools give users the ability to switch perspectives between name properties that are human-readable and displayId properties that are less human-readable, but are more likely to be unique.
|
|
TextProperty | description |
| The description property is OPTIONAL and has a data type of String. This property is intended to contain a more thorough text description of an Identified object.
|
|
URIProperty | identity |
| The identity property is REQUIRED by all Identified objects and has a data type of URI. A given Identified object’s identity URI MUST be globally unique among all other identity URIs. The identity of a compliant SBOL object MUST begin with a URI prefix that maps to a domain over which the user has control. Namely, the user can guarantee uniqueness of identities within this domain. For other best practices regarding URIs see Section 11.2 of the SBOL specification doucment.
|
|
|
| Sequence (std::string uri="example", std::string elements="", std::string encoding=SBOL_ENCODING_IUPAC, std::string version=VERSION_STRING) |
| Construct a Seqiemce. More...
|
|
| Sequence (rdf_type type_uri, std::string uri, std::string elements, std::string encoding, std::string version) |
| Constructor used for defining extension classes. More...
|
|
std::string | assemble (std::string composite_sequence="") |
| Calculates the complete sequence of a high-level Component from the sequence of its subcomponents. More...
|
|
std::string | compile () |
| Synonomous with Sequence::assemble. Calculates the complete sequence of a high-level Component from the sequence of its subcomponents. Prior to assembling the the complete sequence, you must assemble a template design by calling ComponentDefinition::assemble for the ComponentDefinition that references this Sequence.
|
|
int | length () |
|
ComponentDefinition & | synthesize (std::string clone_id) |
|
template<class SBOLClass > |
SBOLClass & | copy (Document *target_doc=NULL, std::string ns="", std::string version="") |
| Recursively copies an object. More...
|
|
template<class SBOLClass > |
SBOLClass & | simpleCopy (std::string uri) |
| Copies an object. More...
|
|
template<class SBOLClass > |
SBOLClass & | generate (std::string uri) |
|
template<class SBOLClass > |
SBOLClass & | generate (std::string uri, Agent &agent, Plan &plan, std::vector< Identified *> usages={}) |
|
virtual rdf_type | getTypeURI () |
|
std::string | getClassName (std::string type) |
|
SBOLObject * | find (std::string uri) |
| Search this object recursively to see if an object or any child object with URI already exists. More...
|
|
SBOLObject * | find_property (std::string uri) |
| Search this object recursively to see if it contains a member property with the given RDF type. More...
|
|
std::vector< SBOLObject * > | find_property_value (std::string uri, std::string value, std::vector< SBOLObject *> matches={}) |
| Search this object recursively to see if it contains a member property with the given RDF type and indicated property value. More...
|
|
std::vector< SBOLObject * > | find_reference (std::string uri) |
| Search this object recursively to see if it contains a member property with the given RDF type and indicated property value. More...
|
|
int | compare (SBOLObject *comparand) |
| Compare two SBOL objects or Documents. More...
|
|
std::string | getPropertyValue (std::string property_uri) |
| Get the value of a custom annotation property by its URI. More...
|
|
std::vector< std::string > | getPropertyValues (std::string property_uri) |
| Get all values of a custom annotation property by its URI. More...
|
|
std::vector< std::string > | getProperties () |
| Gets URIs for all properties contained by this object. More...
|
|
void | setPropertyValue (std::string property_uri, std::string val) |
| Set and overwrite the value for a user-defined annotation property. More...
|
|
void | addPropertyValue (std::string property_uri, std::string val) |
| Append a value to a user-defined annotation property. More...
|
|
void | setAnnotation (std::string property_uri, std::string val) |
| Set the value for a user-defined annotation property. More...
|
|
std::string | getAnnotation (std::string property_uri) |
| Get the value of a custom annotation property by its URI. More...
|
|
virtual void | close () |
| Use this method to destroy an SBOL object that is not contained by a parent Document. More...
|
|
The encoding property is REQUIRED and has a data type of URI.
This property MUST indicate how the elements property of a Sequence MUST be formed and interpreted. For example, the elements property of a Sequence with an IUPAC DNA encoding property MUST contain characters that represent nucleotide bases, such as a, t, c, and g. The elements property of a Sequence with a Simplified Molecular-Input Line-Entry System (SMILES) encoding, on the other hand, MUST contain characters that represent atoms and chemical bonds, such as C, N, O, and =. It is RECOMMENDED that the encoding property contains a URI from the table below. The terms in the table are organized by the type of ComponentDefinition that typically refer to a Sequence with such an encoding. When the encoding of a Sequence is well described by one of the URIs in the table, it MUST contain that URI.