Cat-VRS Model
The following data types classes are used by Cat-VRS but maintained by either the VRS subgroup or across the GKS Work Stream as core data classes.
Categorical Variant
The Categorical Variant class is the primary class in Cat-VRS. It depends on one or more Constraint elements to create a complete description of a categorical variant.
Note
This data class is at a trial use maturity level and may change in future releases. Maturity levels are described in the GKS Maturity Model.
Computational Definition
A representation of a categorically-defined domain for variation, in which individual Constraintual variation instances may be members of the domain.
Information Model
Some CategoricalVariant 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 |
1..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 “CategoricalVariant” |
|
members |
⋮ | 0..m |
A non-exhaustive list of VRS Variations that satisfy the constraints of this categorical variant. |
|
constraints |
⋮ | 0..m |
||
mappings |
⋮ | 0..m |
A list of mappings to concepts in terminologies or code systems. Each mapping should include a coding and a relation. |
Constraint
The Constraint class is an abstract class that is the parent of all other constraint classes. A constraint is a rule or set of rules that must be satisfied for a CategoricalVariant to be considered valid. Constraint sub classes are only used in CategoricalVariant objects.
DefiningAlleleConstraint
Note
This data class is at a trial use maturity level and may change in future releases. Maturity levels are described in the GKS Maturity Model.
Computational Definition
The defining allele and its associated relationships that are congruent with member variants.
Information Model
Some DefiningAlleleConstraint attributes are inherited from Constraint.
Field |
Flags |
Type |
Limits |
Description |
|---|---|---|---|---|
type |
string |
1..1 |
MUST be “DefiningAlleleConstraint” |
|
allele |
1..1 |
|||
relations |
⋮ | 0..m |
Defined relationships from which members relate to the defining allele. |
Examples
The following are example implementations of DefiningAlleleConstraint:
NM_004958.4(MTOR):c.5992_5993del (p.Met1998fs)
{
"type": "DefiningAlleleConstraint",
"allele": {
"id": "ga4gh:VA.0TMQdMT2OBisJ9FI4tkzaBtxGB7r8FfJ",
"type": "Allele",
"name": "NM_004958.4:c.5992_5993del",
"description": "VRS variation of NM_004958.4:c.5992_5993del, generated with the VICC Variation Normalizer (https://github.com/cancervariants/variation-normalization).",
"extensions": [
{
"name": "clinvar vcf",
"value": "1-11128043-CAT-C"
}
],
"digest": "0TMQdMT2OBisJ9FI4tkzaBtxGB7r8FfJ",
"expressions": [
{
"syntax": "spdi",
"value": "NC_000001.11:11128043:AT:"
},
{
"syntax": "hgvs.g",
"value": "NC_000001.11:g.11128044_11128045del"
},
{
"syntax": "hgvs.c",
"value": "NM_004958.4:c.5992_5993del"
},
{
"syntax": "hgvs.p",
"value": "NP_004949.1:p.Met1998fs"
}
],
"location": {
"id": "ga4gh:SL.gLe4d4Seuxn5fLCfO_2g34gF86vpGvo1",
"description": "Coding DNA (cDNA) positions 5992 to 5993 of the MTOR MANE Select coding transcript (refseq:NM_004958.4), corresponding to genomic positions 11128044 to 11128045 on chromosome 1 (refseq:NC_000001.11, GRCh38).",
"extensions": [
{
"name": "GRCh38 1-based, inclusive interval",
"value": "chr1:11128044-11128045",
"description": "Genomic positions 11128044 to 11128045 on chromosome 1 (refseq:NC_000001.11, GRCh38); 1-based, inclusive interval notation."
},
{
"name": "GRCh38 0-based, half-open interval",
"value": "chr1:11128043-11128045",
"description": "Genomic positions 11128043 to 11128045 on chromosome 1 (refseq:NC_000001.11, GRCh38); 0-based, half-open interval notation."
}
],
"type": "SequenceLocation",
"digest": "gLe4d4Seuxn5fLCfO_2g34gF86vpGvo1",
"sequenceReference": {
"id": "refseq:NM_004958.4",
"name": "NM_004958.4",
"description": "The MANE Select (GRCh38) coding transcript for MTOR.",
"aliases": [
"ensembl:ENST00000361445.9",
"ga4gh:SQ.QheGYEnKbwNpM3LulbPTBQhyBSyZwuYm"
],
"type": "SequenceReference",
"refgetAccession": "SQ.QheGYEnKbwNpM3LulbPTBQhyBSyZwuYm",
"residueAlphabet": "na"
},
"start": 6112,
"end": 6114,
"sequence": "AT"
},
"state": {
"type": "ReferenceLengthExpression",
"length": 0,
"sequence": "",
"repeatSubunitLength": 2
}
},
"relations": [
{
"primaryCoding": {
"code": "liftover_to",
"system": "ga4gh-gks-term:allele-relation"
}
},
{
"primaryCoding": {
"code": "transcribed_to",
"system": "http://www.sequenceontology.org",
"iris": [
"http://www.sequenceontology.org/browser/current_release/term/transcribed_to"
]
}
}
]
}
NC_000001.11:g.1699974C>G
{
"type": "DefiningAlleleConstraint",
"allele": {
"id": "ga4gh:VA.WjRY1EXgci6Nd0M2yI86Ue_OOnfnb-Ss",
"type": "Allele",
"name": "NC_000001.11:g.1699974C>G",
"description": "VRS Allele of NC_000001.11:g.1699974C>G, generated with the VICC Variation Normalizer (https://github.com/cancervariants/variation-normalization).",
"digest": "WjRY1EXgci6Nd0M2yI86Ue_OOnfnb-Ss",
"expressions": [
{
"syntax": "hgvs.g",
"value": "NC_000001.11:g.1699974C>G"
}
],
"location": {
"id": "ga4gh:SL.YmbtK6FLqlk2bLjpFwH-y7k4RLq_t7L3",
"description": "Genomic position 1699974 on chromosome 1 (refseq:NC_000001.11, GRCh38).",
"extensions": [
{
"name": "GRCh38 1-based, genomic position",
"value": "chr1:1699974",
"description": "Genomic position 1,699,974 on chromosome 1 (refseq:NC_000001.11, GRCh38)."
},
{
"name": "GRCh38 1-based, inclusive interval notation",
"value": "chr1:1699974-1699974",
"description": "Genomic positions 1,699,974 to 1,699,974 on chromosome 1 (refseq:NC_000001.11, GRCh38); 1-based, inclusive interval notation."
},
{
"name": "GRCh38 0-based, half-open interval notation",
"value": "chr1:1699973-1699974",
"description": "Genomic positions 1,699,973 to 1,699,974 on chromosome 1 (refseq:NC_000001.11, GRCh38); 0-based, half-open interval notation."
}
],
"type": "SequenceLocation",
"digest": "YmbtK6FLqlk2bLjpFwH-y7k4RLq_t7L3",
"sequenceReference": {
"id": "refseq:NC_000001.11",
"name": "NC_000001.11",
"description": "Reference sequence for GRCh38 chromosome 1.",
"aliases": [
"GRCh38:1",
"GRCh38:chr1",
"ga4gh:SQ.Ya6Rs7DHhDeg7YaOSg1EoNi3U_nQ9SvO"
],
"type": "SequenceReference",
"refgetAccession": "SQ.Ya6Rs7DHhDeg7YaOSg1EoNi3U_nQ9SvO",
"residueAlphabet": "na"
},
"start": 1699973,
"end": 1699974,
"sequence": "C"
},
"state": {
"type": "LiteralSequenceExpression",
"sequence": "G"
}
},
"relations": [
{
"primaryCoding": {
"code": "liftover_to",
"system": "ga4gh-gks-term:allele-relation"
}
},
{
"primaryCoding": {
"code": "transcribed_to",
"system": "http://www.sequenceontology.org",
"iris": [
"http://www.sequenceontology.org/browser/current_release/term/transcribed_to"
]
}
}
]
}
EGFR L858R
{
"type": "DefiningAlleleConstraint",
"allele": {
"id": "ga4gh:VA.S41CcMJT2bcd8R4-qXZWH1PoHWNtG2PZ",
"type": "Allele",
"name": "NP_005219.2:p.Leu858Arg",
"description": "VRS variation of NP_005219.2:p.Leu858Arg, generated with the VICC Variation Normalizer (https://github.com/cancervariants/variation-normalization).",
"digest": "S41CcMJT2bcd8R4-qXZWH1PoHWNtG2PZ",
"expressions": [
{
"syntax": "hgvs.p",
"value": "NP_005219.2:p.Leu858Arg"
}
],
"location": {
"id": "ga4gh:SL.v0_edynH98OIu-0QPVT5anCSOriAFSDQ",
"description": "Amino acid position 858 within the EGFR protein (refseq:NP_005219.2), which is the protein product of the MANE Select (GRCh38) coding transcript for EGFR (refseq:NM_005228.5), corresponding to leucine in the reference sequence.",
"type": "SequenceLocation",
"digest": "v0_edynH98OIu-0QPVT5anCSOriAFSDQ",
"sequenceReference": {
"id": "refseq:NP_005219.2",
"name": "NP_005219.2",
"description": "The protein product of the MANE Select (GRCh38) coding transcript for EGFR (refseq:NM_005228.5), corresponding to the RefSeq protein accession NP_005219.2.",
"aliases": [
"ensembl:ENSP00000275493.2",
"ga4gh:SQ.vyo55F6mA6n2LgN4cagcdRzOuh38V4mE"
],
"type": "SequenceReference",
"refgetAccession": "SQ.vyo55F6mA6n2LgN4cagcdRzOuh38V4mE",
"residueAlphabet": "aa"
},
"start": 857,
"end": 858,
"sequence": "L"
},
"state": {
"type": "LiteralSequenceExpression",
"sequence": "R"
}
},
"relations": [
{
"primaryCoding": {
"code": "translation_of",
"system": "http://www.sequenceontology.org",
"iris": [
"http://www.sequenceontology.org/browser/current_release/term/translation_of"
]
}
}
]
}
NM_007294.4(BRCA1):c.5558dup (p.Tyr1853Ter)
{
"type": "DefiningAlleleConstraint",
"allele": {
"id": "ga4gh:VA.BfZ-RbjStWkafMsFBcoSL0f4aAjHJU4n",
"type": "Allele",
"name": "NP_009225.1:p.Tyr1853Ter",
"description": "VRS variation of NP_009225.1:p.Tyr1853Ter, generated with the VICC Variation Normalizer (https://github.com/cancervariants/variation-normalization).",
"digest": "BfZ-RbjStWkafMsFBcoSL0f4aAjHJU4n",
"expressions": [
{
"syntax": "hgvs.g",
"value": "NC_000017.11:g.43045712dup"
},
{
"syntax": "hgvs.g",
"value": "NC_000017.10:g.41197729dup"
},
{
"syntax": "hgvs.c",
"value": "NM_007294.4:c.5558dup"
},
{
"syntax": "hgvs.p",
"value": "NP_009225.1:p.Tyr1853Ter"
}
],
"location": {
"id": "ga4gh:SL.bR3EOtSngkb9wNbixylsw0sNa_2HCga5",
"description": "Amino acid position 1853 of the Refseq protein NP_009225.1, which is the protein product of the MANE Select (GRCh38) coding transcript for BRCA1 (refseq:NM_007294.4).",
"type": "SequenceLocation",
"digest": "bR3EOtSngkb9wNbixylsw0sNa_2HCga5",
"sequenceReference": {
"id": "refseq:NP_009225.1",
"name": "NP_009225.1",
"description": "The protein product of the MANE Select (GRCh38) coding transcript for BRCA1 (refseq:NM_007294.4), corresponding to the Refseq protein accession NP_009225.1.",
"aliases": [
"ensembl:ENSP00000350283.3",
"ga4gh:SQ.nUzIPnHMyQV52hzgBbKl5vlbSwx8M8_Y"
],
"type": "SequenceReference",
"refgetAccession": "SQ.nUzIPnHMyQV52hzgBbKl5vlbSwx8M8_Y",
"residueAlphabet": "aa"
},
"start": 1852,
"end": 1853,
"sequence": "Y"
},
"state": {
"type": "LiteralSequenceExpression",
"sequence": "*"
}
},
"relations": [
{
"primaryCoding": {
"code": "translation_of",
"system": "http://www.sequenceontology.org",
"iris": [
"http://www.sequenceontology.org/browser/current_release/term/translation_of"
]
}
}
]
}
DefiningLocationConstraint
Note
This data class is at a trial use maturity level and may change in future releases. Maturity levels are described in the GKS Maturity Model.
Computational Definition
The defining location and its associated relationships that are congruent with member locations.
Information Model
Some DefiningLocationConstraint attributes are inherited from Constraint.
Field |
Flags |
Type |
Limits |
Description |
|---|---|---|---|---|
type |
string |
1..1 |
MUST be “DefiningLocationConstraint” |
|
location |
1..1 |
|||
relations |
⋮ | 0..m |
Defined relationships from which members relate to the defining location. |
|
matchCharacteristic |
1..1 |
A characteristic of the location that is used to match the defining location to member locations. |
Examples
The following are example implementations of DefiningLocationConstraint:
GRCh38/hg38 7p22.1(chr7:5905831-6014161)x3
{
"type": "DefiningLocationConstraint",
"location": {
"id": "ga4gh:SL.LChpEzYZaMug85TUqJUbT4MYgVk8vuQ7",
"description": "Genomic positions 5905831 to 6014161 on chromosome 7 (refseq:NC_000007.14, GRCh38).",
"extensions": [
{
"name": "GRCh38 1-based, inclusive interval",
"value": "chr7:5905831-6014161",
"description": "Genomic positions 5905831 to 6014161 on chromosome 7 (refseq:NC_000007.14, GRCh38); 1-based, inclusive interval notation."
},
{
"name": "GRCh38 0-based, half-open interval",
"value": "chr7:5905830-6014161",
"description": "Genomic positions 5905830 to 6014161 on chromosome 7 (refseq:NC_000007.14, GRCh38); 0-based, half-open interval notation."
}
],
"type": "SequenceLocation",
"digest": "LChpEzYZaMug85TUqJUbT4MYgVk8vuQ7",
"sequenceReference": {
"id": "refseq:NC_000007.14",
"name": "NC_000007.14",
"description": "Reference sequence for GRCh38 chromosome 7.",
"aliases": [
"GRCh38:7",
"GRCh38:chr7",
"ga4gh:SQ.F-LrLMe1SRpfUZHkQmvkVKFEGaoDeHul"
],
"type": "SequenceReference",
"refgetAccession": "SQ.F-LrLMe1SRpfUZHkQmvkVKFEGaoDeHul",
"residueAlphabet": "na"
},
"start": [
null,
5905830
],
"end": [
6014161,
null
]
},
"relations": [
{
"primaryCoding": {
"code": "liftover_to",
"system": "ga4gh-gks-term:allele-relation"
}
}
],
"matchCharacteristic": {
"primaryCoding": {
"code": "is_within",
"system": "ga4gh-gks-term:location-match"
}
}
}
GRCh38 Xp22.31(chrX:6978350-7594949)x3
{
"type": "DefiningLocationConstraint",
"location": {
"id": "ga4gh:SL.XyercAFM_APQwFaDuPcXG5lHa4wUpkiL",
"description": "Genomic region between positions 6,978,350-7,594,949 on chromosome X (refseq:NC_000023.11, GRCh38), with breakpoints estimated within the intervals 6,978,350-6,996,235 and 7,564,455-7,594,949.",
"extensions": [
{
"name": "GRCh38 1-based, inclusive interval",
"value": "chrX:(6978350\u20136996235)-(7564455\u20137594949)",
"description": "Genomic region between positions 6,978,350-7,594,949 on chromosome X (refseq:NC_000023.11, GRCh38), with breakpoints estimated within the intervals 6,978,350-6,996,235 and 7,564,455-7,594,949; 1-based, inclusive interval notation."
},
{
"name": "GRCh38 0-based, half-open interval",
"value": "chrX:(6978349\u20136996235)-(7564454\u20137594949)",
"description": "Genomic region between positions 6,978,349-7,594,949 on chromosome X (refseq:NC_000023.11, GRCh38), with breakpoints estimated within the intervals 6,978,349-6,996,235 and 7,564,454-7,594,949; 0-based, half-open interval notation."
}
],
"type": "SequenceLocation",
"digest": "XyercAFM_APQwFaDuPcXG5lHa4wUpkiL",
"sequenceReference": {
"id": "refseq:NC_000023.11",
"name": "NC_000023.11",
"description": "Reference sequence for GRCh38 chromosome X.",
"aliases": [
"GRCh38:X",
"GRCh38:chrX",
"ga4gh:SQ.w0WZEvgJF0zf_P4yyTzjjv9oW1z61HHP"
],
"type": "SequenceReference",
"refgetAccession": "SQ.F-LrLMe1SRpfUZHkQmvkVKFEGaoDeHul"
},
"start": [
6978350,
6996235
],
"end": [
7564455,
7594949
]
},
"relations": [
{
"primaryCoding": {
"code": "liftover_to",
"system": "ga4gh-gks-term:allele-relation"
}
}
],
"matchCharacteristic": {
"primaryCoding": {
"code": "is_within",
"system": "ga4gh-gks-term:location-match"
}
}
}
BRAF V600
{
"type": "DefiningLocationConstraint",
"location": {
"id": "ga4gh:SL.1ReS370wzmC9PGTn13XrnG8Ot7UAKYuw",
"description": "Amino acid position 600 within the BRAF protein (refseq:NP_004324.2), which is the protein product of the MANE Select (GRCh38) coding transcript for BRAF (refseq:NM_004333.6), corresponding to valine in the reference sequence.",
"type": "SequenceLocation",
"digest": "1ReS370wzmC9PGTn13XrnG8Ot7UAKYuw",
"sequenceReference": {
"id": "refseq:NP_004324.2",
"name": "NP_004324.2",
"description": "The protein product of the MANE Select (GRCh38) coding transcript for BRAF (refseq:NM_004333.6), corresponding to the Refseq protein accession NP_004324.2.",
"aliases": [
"ensembl:ENSP00000288602.6",
"ga4gh:SQ.cQvw4UsHHRRlogxbWCB8W-mKD4AraM9y"
],
"type": "SequenceReference",
"refgetAccession": "SQ.cQvw4UsHHRRlogxbWCB8W-mKD4AraM9y",
"residueAlphabet": "aa"
},
"start": 599,
"end": 600,
"sequence": "V"
},
"relations": {
"primaryCoding": {
"code": "translation_of",
"system": "http://www.sequenceontology.org",
"iris": [
"http://www.sequenceontology.org/browser/current_release/term/translation_of"
]
}
},
"matchCharacteristic": {
"primaryCoding": {
"code": "is_within",
"system": "ga4gh-gks-term:location-match"
}
}
}
CopyCountConstraint
Note
This data class is at a trial use maturity level and may change in future releases. Maturity levels are described in the GKS Maturity Model.
Computational Definition
The exact or range of copies that members of this categorical variant must satisfy.
Information Model
Some CopyCountConstraint attributes are inherited from Constraint.
Field |
Flags |
Type |
Limits |
Description |
|---|---|---|---|---|
type |
string |
1..1 |
MUST be “CopyCountConstraint” |
|
copies |
integer | Range |
1..1 |
The precise value or range of copies members of this categorical variant must satisfy. |
Examples
The following are example implementations of CopyCountConstraint:
3 copies
{
"type": "CopyCountConstraint",
"copies": 3
CopyChangeConstraint
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
The relative assessment of the change in copies that members of this categorical variant satisfies.
Information Model
Some CopyChangeConstraint attributes are inherited from Constraint.
Field |
Flags |
Type |
Limits |
Description |
|---|---|---|---|---|
type |
string |
1..1 |
MUST be “CopyChangeConstraint” |
|
copyChange |
string |
1..1 |
The relative assessment of the change in copies that members of this categorical variant satisfies. |
Examples
The following are example implementations of CopyChangeConstraint:
Gain
{
"type": "CopyChangeConstraint",
"copyChange": "gain"
},
Loss
{
"type": "CopyChangeConstraint",
"copyChange": "loss"
}
FeatureContextConstraint
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
The feature that members of this categorical variant are associated with.
Information Model
Some FeatureContextConstraint attributes are inherited from Constraint.
Field |
Flags |
Type |
Limits |
Description |
|---|---|---|---|---|
type |
string |
1..1 |
MUST be “FeatureContextConstraint” |
|
featureContext |
1..1 |
A feature identifier. |
Examples
The following are example implementations of FeatureContextConstraint:
Gene: TP53
{
"type": "FeatureContextConstraint",
"featureContext": {
"id": "TP53",
"name": "TP53",
"conceptType": "gene",
"primaryCoding": [
{
"id": "hgnc:11998",
"name": "TP53",
"system": "https://genenames.org",
"code": "HGNC:11998",
"iris": [
"https://www.genenames.org/data/gene-symbol-report/#!/hgnc_id/HGNC:11998"
]
}
],
"extensions": [
{
"name": "cytogenetic location",
"value": "17p13.1"
}
]
}
},