Derivative Molecule
New in v2
The DerivativeMolecule class was added in v2 to describe molecules resulting from structural variation.
A derivative molecule is created by two or more adjoined molecular structures. The DerivativeMolecule class may be used to represent molecules resulting from genomic rearrangements such as inversions or translocations.
Definition and Information Model
Warning
This data class is at a draft maturity level and may change significantly in future releases. Maturity levels are described in the GKS Maturity Model.
Computational Definition
A molecule derived from segments of multiple adjoined molecular sequences, typically resulting from structural variation.
GA4GH Digest
Prefix |
Inherent |
---|---|
DM |
[‘components’, ‘type’] |
Information Model
Some DerivativeMolecule attributes are inherited from Variation.
Field |
Flags |
Type |
Limits |
Description |
---|---|---|---|---|
id |
string |
0..1 |
The ‘logical’ identifier of the Entity in the system of record, e.g. a UUID. This ‘id’ is unique within a given system, but may or may not be globally unique outside the system. It is used within a system to reference an object from another. |
|
name |
string |
0..1 |
A primary name for the entity. |
|
description |
string |
0..1 |
A free-text description of the Entity. |
|
aliases |
⋮ | string |
0..m |
Alternative name(s) for the Entity. |
extensions |
⋮ | 0..m |
A list of extensions to the Entity, that allow for capture of information not directly supported by elements defined in the model. |
|
digest |
string |
0..1 |
A sha512t24u digest created using the VRS Computed Identifier algorithm. |
|
expressions |
⋮ | 0..m |
||
type |
string |
1..1 |
MUST be “DerivativeMolecule”. |
|
components |
↓ | iriReference | Allele | Cis-Phased Block | Terminus | Traversal Block |
2..m |
The molecular components that constitute the derivative molecule. |
circular |
boolean |
0..1 |
A boolean indicating whether the molecule represented by the sequence is circular (true) or linear (false). |
Components
Traversal Block
The TraversalBlock is a key component of the DerivativeMolecule class, and is used for resolving the orientation of double-stranded nucleic acid molecules when assembled into a derivative molecule.
Warning
This data class is at a draft maturity level and may change significantly in future releases. Maturity levels are described in the GKS Maturity Model.
Computational Definition
A component used to describe the orientation of applicable molecular variation within a DerivativeMolecule.
GA4GH Digest
Prefix |
Inherent |
---|---|
None |
[‘type’, ‘component’, ‘orientation’] |
Information Model
Some TraversalBlock attributes are inherited from Entity.
Field |
Flags |
Type |
Limits |
Description |
---|---|---|---|---|
id |
string |
0..1 |
The ‘logical’ identifier of the Entity in the system of record, e.g. a UUID. This ‘id’ is unique within a given system, but may or may not be globally unique outside the system. It is used within a system to reference an object from another. |
|
name |
string |
0..1 |
A primary name for the entity. |
|
description |
string |
0..1 |
A free-text description of the Entity. |
|
aliases |
⋮ | string |
0..m |
Alternative name(s) for the Entity. |
extensions |
⋮ | 0..m |
A list of extensions to the Entity, that allow for capture of information not directly supported by elements defined in the model. |
|
type |
string |
1..1 |
MUST be “TraversalBlock”. |
|
component |
0..1 |
The unoriented molecular variation component. |
||
orientation |
string |
0..1 |
The orientation of the molecular variation component. |
Example
{
"id": "ga4gh:DM.wthhP9ryLEU1ueo6V25gqbSVJC8H4z-M",
"type": "DerivativeMolecule",
"components": [
{
"type": "TraversalBlock",
"orientation": "forward",
"component": {
"type": "Adjacency",
"linker": {
"type": "LiteralSequenceExpression",
"sequence": "GTC"
},
"adjoinedSequences": [
{
"type": "SequenceLocation",
"sequenceReference": {
"type": "SequenceReference",
"refgetAccession": "SQ.S_KjnFVz-FE7M0W6yoaUDgYxLPc1jyWU",
"residueAlphabet": "na",
"id": "NC_000001.10"
},
"end": 123
},
{
"type": "SequenceLocation",
"sequenceReference": {
"type": "SequenceReference",
"refgetAccession": "SQ.9KdcA9ZpY1Cpvxvg8bMSLYDUpsX6GDLO",
"residueAlphabet": "na",
"id": "NC_000002.11"
},
"start": 500
}
]
}
},
{
"type": "TraversalBlock",
"orientation": "forward",
"component": {
"type": "Adjacency",
"adjoinedSequences": [
{
"type": "SequenceLocation",
"end": 15000
},
{
"type": "SequenceLocation",
"sequenceReference": {
"type": "SequenceReference",
"refgetAccession": "SQ.S_KjnFVz-FE7M0W6yoaUDgYxLPc1jyWU",
"residueAlphabet": "na",
"id": "NC_000001.10"
},
"start": 10000
}
]
}
}
]
}