Skip to content

Commit

Permalink
mappableConcept primaryCoding & iris (#110).
Browse files Browse the repository at this point in the history
snapshot-2025-02.3 id updates
  • Loading branch information
larrybabb committed Mar 2, 2025
1 parent 257a57c commit 0834f93
Show file tree
Hide file tree
Showing 12 changed files with 77 additions and 76 deletions.
27 changes: 18 additions & 9 deletions examples/mappable-concept-gene.yaml
Original file line number Diff line number Diff line change
@@ -1,20 +1,29 @@
id: HGNC:1101
primaryCode: BRCA2
name: BRCA2 DNA repair associated
conceptType: Gene
name: BRCA2
primaryCoding:
code: HGNC:1101
system: https://www.genenames.org/
iris:
- https://identifiers.org/hgnc:1101
- https://www.genenames.org/data/gene-symbol-report/#!/hgnc_id/1101
mappings:
- coding:
code: HGNC:1101
system: https://www.genenames.org/data/gene-symbol-report/#!/hgnc_id/
relation: exactMatch
- coding:
code: ENSG00000139618
system: https://www.ensembl.org/id/
system: https://www.ensembl.org/
iris:
- https://identifiers.org/ensembl:ENSG00000139618
- https://www.ensembl.org/id/ENSG00000139618

relation: closeMatch
- coding:
code: "675"
system: https://www.ncbi.nlm.nih.gov/gene/
iris:
- https://identifiers.org/ncbigene:675
- https://www.ncbi.nlm.nih.gov/gene/675
relation: closeMatch
extensions:
- name: "AlsoKnownAs"
value: "FAD; FACD; FAD1; GLM3; BRCC2; FANCD; PNCA2; FANCD1; XRCC11; BROVCA2"
value: "FAD; FACD; FAD1; GLM3; BRCC2; FANCD; PNCA2; FANCD1; XRCC11; BROVCA2"
- name: "description"
value: "BRCA2 DNA repair associated"
12 changes: 10 additions & 2 deletions schema/gks-core/def/Coding.rst
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ Some Coding attributes are inherited from :ref:`Element`.
-
- string
- 1..1
- The terminology/code system that defined the code. May be reported as a free-text name (e.g. 'Sequence Ontology'), but it is preferable to provide a uri/url for the system. When the 'code' is reported as a CURIE, the 'system' should be reported as the uri that the CURIE's prefix expands to (e.g. 'http://purl.obofoundry.org/so.owl/' for the Sequence Ontology).
- The terminology/code system that defined the code. May be reported as a free-text name (e.g. 'Sequence Ontology'), but it is preferable to provide a uri/url for the system.
* - systemVersion
-
- string
Expand All @@ -53,4 +53,12 @@ Some Coding attributes are inherited from :ref:`Element`.
-
- :ref:`code`
- 1..1
- A symbol uniquely identifying the concept, as in a syntax defined by the code system. CURIE format is preferred where possible (e.g. 'SO:0000704' is the CURIE form of the Sequence Ontology code for 'gene').
- A symbol uniquely identifying the concept, as in a syntax defined by the code system. If a dereferencable identifier is available, it should be provided in the `iris` field.
* - iris
-
.. raw:: html

<span style="background-color: #B2DFEE; color: black; padding: 2px 6px; border: 1px solid black; border-radius: 3px; font-weight: bold; display: inline-block; margin-bottom: 5px;" title="Unordered">&#8942;</span>
- :ref:`iriReference`
- 0..m
- A list of IRIs that are associated with the coding. This can be used to provide additional context or to link to additional information about the concept.
23 changes: 4 additions & 19 deletions schema/gks-core/def/MappableConcept.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,22 +4,7 @@

**Computational Definition**

A concept name that may be mapped to one or more :ref:`Codings <Coding>`.

**GA4GH Digest**

.. list-table::
:class: clean-wrap
:header-rows: 1
:align: left
:widths: auto

* - Prefix
- Inherent

* - None
- ['primaryCode']

A concept based on a primaryCoding and/or name that may be mapped to one or more other :ref:`Codings <Coding>`.

**Information Model**

Expand Down Expand Up @@ -59,11 +44,11 @@ Some MappableConcept attributes are inherited from :ref:`Element`.
- string
- 0..1
- A primary name for the concept.
* - primaryCode
* - primaryCoding
-
- :ref:`code`
- :ref:`Coding`
- 0..1
- A primary code for the concept that is used to identify the concept in a terminology or code system. If there is a public code system for the primaryCode then it should also be specified in the mappings array with a relation of 'exactMatch'. This attribute is provided to both allow a more technical code to be used when a public Coding with a system is not available as well as when it is available but should be identified as the primary code.
- A primary coding for the concept.
* - mappings
-
.. raw:: html
Expand Down
34 changes: 15 additions & 19 deletions schema/gks-core/gks-core-source.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
$schema: "https://json-schema.org/draft/2020-12/schema"
$id: "https://w3id.org/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.2/gks-core-source.yaml"
$id: "https://w3id.org/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.3/gks-core-source.yaml"
title: GKS Core Class Definitions
strict: true

Expand Down Expand Up @@ -117,11 +117,8 @@ $defs:
inherits: Element
type: object
maturity: trial use
ga4gh:
inherent:
- primaryCode
description: >-
A concept name that may be mapped to one or more :ref:`Codings <Coding>`.
A concept based on a primaryCoding and/or name that may be mapped to one or more other :ref:`Codings <Coding>`.
properties:
conceptType:
type: string
Expand All @@ -134,14 +131,9 @@ $defs:
name:
type: string
description: A primary name for the concept.
primaryCode:
$ref: "#/$defs/code"
description: >-
A primary code for the concept that is used to identify the concept in a terminology or code system.
If there is a public code system for the primaryCode then it should also be specified in the mappings
array with a relation of 'exactMatch'. This attribute is provided to both allow a more technical code
to be used when a public Coding with a system is not available as well as when it is available but
should be identified as the primary code.
primaryCoding:
$ref: "#/$defs/Coding"
description: A primary coding for the concept.
mappings:
type: array
ordered: false
Expand All @@ -154,7 +146,7 @@ $defs:
- required:
- name
- required:
- primaryCode
- primaryCoding

ConceptMapping:
type: object
Expand Down Expand Up @@ -196,18 +188,22 @@ $defs:
description: >-
The terminology/code system that defined the code. May be reported as a free-text name
(e.g. 'Sequence Ontology'), but it is preferable to provide a uri/url for the system.
When the 'code' is reported as a CURIE, the 'system' should be reported as the uri that
the CURIE's prefix expands to (e.g. 'http://purl.obofoundry.org/so.owl/' for the
Sequence Ontology).
systemVersion:
type: string
description: Version of the terminology or code system that provided the code.
code:
$ref: '#/$defs/code'
description: >-
A symbol uniquely identifying the concept, as in a syntax defined by the code system.
CURIE format is preferred where possible (e.g. 'SO:0000704' is the CURIE form of the
Sequence Ontology code for 'gene').
If a dereferencable identifier is available, it should be provided in the `iris` field.
iris:
type: array
ordered: false
items:
$ref: '#/$defs/iriReference'
description: >-
A list of IRIs that are associated with the coding. This can be used to provide additional
context or to link to additional information about the concept.
required:
- system
- code
Expand Down
2 changes: 1 addition & 1 deletion schema/gks-core/json/Code
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://w3id.org/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.2/json/code",
"$id": "https://w3id.org/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.3/json/code",
"title": "code",
"type": "string",
"maturity": "trial use",
Expand Down
18 changes: 13 additions & 5 deletions schema/gks-core/json/Coding
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://w3id.org/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.2/json/Coding",
"$id": "https://w3id.org/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.3/json/Coding",
"title": "Coding",
"type": "object",
"maturity": "trial use",
Expand All @@ -14,7 +14,7 @@
"type": "array",
"ordered": false,
"items": {
"$ref": "/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.2/json/Extension"
"$ref": "/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.3/json/Extension"
},
"description": "A list of extensions to the Entity, that allow for capture of information not directly supported by elements defined in the model.",
"$comment": "Extension objects have a key-value data structure that allows definition of custom fields in the data itself. Extensions are not expected to be natively understood, but may be used for pre-negotiated exchange of message attributes between systems."
Expand All @@ -25,15 +25,23 @@
},
"system": {
"type": "string",
"description": "The terminology/code system that defined the code. May be reported as a free-text name (e.g. 'Sequence Ontology'), but it is preferable to provide a uri/url for the system. When the 'code' is reported as a CURIE, the 'system' should be reported as the uri that the CURIE's prefix expands to (e.g. 'http://purl.obofoundry.org/so.owl/' for the Sequence Ontology)."
"description": "The terminology/code system that defined the code. May be reported as a free-text name (e.g. 'Sequence Ontology'), but it is preferable to provide a uri/url for the system."
},
"systemVersion": {
"type": "string",
"description": "Version of the terminology or code system that provided the code."
},
"code": {
"$ref": "/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.2/json/code",
"description": "A symbol uniquely identifying the concept, as in a syntax defined by the code system. CURIE format is preferred where possible (e.g. 'SO:0000704' is the CURIE form of the Sequence Ontology code for 'gene')."
"$ref": "/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.3/json/code",
"description": "A symbol uniquely identifying the concept, as in a syntax defined by the code system. If a dereferencable identifier is available, it should be provided in the `iris` field."
},
"iris": {
"type": "array",
"ordered": false,
"items": {
"$ref": "/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.3/json/iriReference"
},
"description": "A list of IRIs that are associated with the coding. This can be used to provide additional context or to link to additional information about the concept."
}
},
"required": [
Expand Down
6 changes: 3 additions & 3 deletions schema/gks-core/json/ConceptMapping
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://w3id.org/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.2/json/ConceptMapping",
"$id": "https://w3id.org/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.3/json/ConceptMapping",
"title": "ConceptMapping",
"type": "object",
"maturity": "trial use",
Expand All @@ -14,13 +14,13 @@
"type": "array",
"ordered": false,
"items": {
"$ref": "/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.2/json/Extension"
"$ref": "/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.3/json/Extension"
},
"description": "A list of extensions to the Entity, that allow for capture of information not directly supported by elements defined in the model.",
"$comment": "Extension objects have a key-value data structure that allows definition of custom fields in the data itself. Extensions are not expected to be natively understood, but may be used for pre-negotiated exchange of message attributes between systems."
},
"coding": {
"$ref": "/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.2/json/Coding",
"$ref": "/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.3/json/Coding",
"description": "A structured representation of a code for a defined concept in a terminology or code system."
},
"relation": {
Expand Down
4 changes: 2 additions & 2 deletions schema/gks-core/json/Extension
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://w3id.org/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.2/json/Extension",
"$id": "https://w3id.org/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.3/json/Extension",
"title": "Extension",
"type": "object",
"maturity": "trial use",
Expand All @@ -14,7 +14,7 @@
"type": "array",
"ordered": false,
"items": {
"$ref": "/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.2/json/Extension"
"$ref": "/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.3/json/Extension"
},
"description": "A list of extensions to the Entity, that allow for capture of information not directly supported by elements defined in the model.",
"$comment": "Extension objects have a key-value data structure that allows definition of custom fields in the data itself. Extensions are not expected to be natively understood, but may be used for pre-negotiated exchange of message attributes between systems."
Expand Down
21 changes: 8 additions & 13 deletions schema/gks-core/json/MappableConcept
Original file line number Diff line number Diff line change
@@ -1,15 +1,10 @@
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://w3id.org/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.2/json/MappableConcept",
"$id": "https://w3id.org/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.3/json/MappableConcept",
"title": "MappableConcept",
"type": "object",
"maturity": "trial use",
"ga4gh": {
"inherent": [
"primaryCode"
]
},
"description": "A concept name that may be mapped to one or more Codings.",
"description": "A concept based on a primaryCoding and/or name that may be mapped to one or more other Codings.",
"properties": {
"id": {
"type": "string",
Expand All @@ -19,7 +14,7 @@
"type": "array",
"ordered": false,
"items": {
"$ref": "/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.2/json/Extension"
"$ref": "/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.3/json/Extension"
},
"description": "A list of extensions to the Entity, that allow for capture of information not directly supported by elements defined in the model.",
"$comment": "Extension objects have a key-value data structure that allows definition of custom fields in the data itself. Extensions are not expected to be natively understood, but may be used for pre-negotiated exchange of message attributes between systems."
Expand All @@ -33,15 +28,15 @@
"type": "string",
"description": "A primary name for the concept."
},
"primaryCode": {
"$ref": "/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.2/json/code",
"description": "A primary code for the concept that is used to identify the concept in a terminology or code system. If there is a public code system for the primaryCode then it should also be specified in the mappings array with a relation of 'exactMatch'. This attribute is provided to both allow a more technical code to be used when a public Coding with a system is not available as well as when it is available but should be identified as the primary code."
"primaryCoding": {
"$ref": "/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.3/json/Coding",
"description": "A primary coding for the concept."
},
"mappings": {
"type": "array",
"ordered": false,
"items": {
"$ref": "/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.2/json/ConceptMapping"
"$ref": "/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.3/json/ConceptMapping"
},
"description": "A list of mappings to concepts in terminologies or code systems. Each mapping should include a coding and a relation."
}
Expand All @@ -54,7 +49,7 @@
},
{
"required": [
"primaryCode"
"primaryCoding"
]
}
],
Expand Down
2 changes: 1 addition & 1 deletion schema/gks-core/json/date
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://w3id.org/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.2/json/date",
"$id": "https://w3id.org/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.3/json/date",
"title": "date",
"type": "string",
"maturity": "trial use",
Expand Down
2 changes: 1 addition & 1 deletion schema/gks-core/json/datetime
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://w3id.org/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.2/json/datetime",
"$id": "https://w3id.org/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.3/json/datetime",
"title": "datetime",
"type": "string",
"maturity": "trial use",
Expand Down
2 changes: 1 addition & 1 deletion schema/gks-core/json/iriReference
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://w3id.org/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.2/json/iriReference",
"$id": "https://w3id.org/ga4gh/schema/gks-core/1.0.0-snapshot.2025-02.3/json/iriReference",
"title": "iriReference",
"type": "string",
"maturity": "trial use",
Expand Down

0 comments on commit 0834f93

Please sign in to comment.