Skip to content

Commit

Permalink
added Extension array to Element (#85)
Browse files Browse the repository at this point in the history
  • Loading branch information
larrybabb authored Oct 31, 2024
1 parent a9565e0 commit 98aee8f
Show file tree
Hide file tree
Showing 15 changed files with 98 additions and 1 deletion.
5 changes: 4 additions & 1 deletion examples/mappable-concept-gene.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,7 @@ mappings:
- coding:
code: "675"
system: https://www.ncbi.nlm.nih.gov/gene/
relation: closeMatch
relation: closeMatch
extensions:
- name: "AlsoKnownAs"
value: "FAD; FACD; FAD1; GLM3; BRCC2; FANCD; PNCA2; FANCD1; XRCC11; BROVCA2"
4 changes: 4 additions & 0 deletions schema/gks-core/def/Characteristic.rst
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,10 @@ Some Characteristic attributes are inherited from :ref:`Element`.
- string
- 0..1
- The 'logical' identifier of the data element 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.
* - extensions
- :ref:`Extension`
- 0..m
- A list of extensions to the Entity, that allow for capture of information not directly supported by elements defined in the model.
* - name
- string
- 1..1
Expand Down
4 changes: 4 additions & 0 deletions schema/gks-core/def/Coding.rst
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,10 @@ Some Coding attributes are inherited from :ref:`Element`.
- string
- 0..1
- The 'logical' identifier of the data element 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.
* - extensions
- :ref:`Extension`
- 0..m
- A list of extensions to the Entity, that allow for capture of information not directly supported by elements defined in the model.
* - label
- string
- 0..1
Expand Down
4 changes: 4 additions & 0 deletions schema/gks-core/def/ConceptMapping.rst
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,10 @@ Some ConceptMapping attributes are inherited from :ref:`Element`.
- string
- 0..1
- The 'logical' identifier of the data element 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.
* - extensions
- :ref:`Extension`
- 0..m
- A list of extensions to the Entity, that allow for capture of information not directly supported by elements defined in the model.
* - coding
- :ref:`Coding`
- 1..1
Expand Down
4 changes: 4 additions & 0 deletions schema/gks-core/def/Element.rst
Original file line number Diff line number Diff line change
Expand Up @@ -24,3 +24,7 @@ The base definition for all identifiable data objects.
- string
- 0..1
- The 'logical' identifier of the data element 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.
* - extensions
- :ref:`Extension`
- 0..m
- A list of extensions to the Entity, that allow for capture of information not directly supported by elements defined in the model.
4 changes: 4 additions & 0 deletions schema/gks-core/def/Extension.rst
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,10 @@ Some Extension attributes are inherited from :ref:`Element`.
- string
- 0..1
- The 'logical' identifier of the data element 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.
* - extensions
- :ref:`Extension`
- 0..m
- A list of extensions to the Entity, that allow for capture of information not directly supported by elements defined in the model.
* - name
- string
- 1..1
Expand Down
4 changes: 4 additions & 0 deletions schema/gks-core/def/MappableConcept.rst
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,10 @@ Some MappableConcept attributes are inherited from :ref:`Element`.
- string
- 0..1
- The 'logical' identifier of the data element 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.
* - extensions
- :ref:`Extension`
- 0..m
- A list of extensions to the Entity, that allow for capture of information not directly supported by elements defined in the model.
* - label
- string
- 1..1
Expand Down
4 changes: 4 additions & 0 deletions schema/gks-core/def/RecordMetadata.rst
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,10 @@ Some RecordMetadata attributes are inherited from :ref:`Element`.
- string
- 0..1
- The 'logical' identifier of the data element 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.
* - extensions
- :ref:`Extension`
- 0..m
- A list of extensions to the Entity, that allow for capture of information not directly supported by elements defined in the model.
* - recordIdentifier
- string
- 0..1
Expand Down
12 changes: 12 additions & 0 deletions schema/gks-core/gks-core-source.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -924,6 +924,18 @@ $defs:
The 'logical' identifier of the data element 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.
extensions:
type: array
ordered: false
items:
$ref: "#/$defs/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:
inherits: Element
Expand Down
9 changes: 9 additions & 0 deletions schema/gks-core/json/Characteristic
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,15 @@
"type": "string",
"description": "The 'logical' identifier of the data element 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."
},
"extensions": {
"type": "array",
"ordered": false,
"items": {
"$ref": "/ga4gh/schema/gks-core/1.x/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."
},
"name": {
"type": "string",
"description": "The type of the trait or role described by the trait (e.g. 'ethnicity', 'sex', 'age', 'disease status')."
Expand Down
9 changes: 9 additions & 0 deletions schema/gks-core/json/Coding
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,15 @@
"type": "string",
"description": "The 'logical' identifier of the data element 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."
},
"extensions": {
"type": "array",
"ordered": false,
"items": {
"$ref": "/ga4gh/schema/gks-core/1.x/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."
},
"label": {
"type": "string",
"description": "The human-readable name for the coded concept, as defined by the code system."
Expand Down
9 changes: 9 additions & 0 deletions schema/gks-core/json/ConceptMapping
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,15 @@
"type": "string",
"description": "The 'logical' identifier of the data element 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."
},
"extensions": {
"type": "array",
"ordered": false,
"items": {
"$ref": "/ga4gh/schema/gks-core/1.x/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.x/json/Coding",
"description": "A structured representation of a code for a defined concept in a terminology or code system."
Expand Down
9 changes: 9 additions & 0 deletions schema/gks-core/json/Extension
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,15 @@
"type": "string",
"description": "The 'logical' identifier of the data element 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."
},
"extensions": {
"type": "array",
"ordered": false,
"items": {
"$ref": "/ga4gh/schema/gks-core/1.x/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."
},
"name": {
"type": "string",
"description": "A name for the Extension. Should be indicative of its meaning and/or the type of information it value represents."
Expand Down
9 changes: 9 additions & 0 deletions schema/gks-core/json/MappableConcept
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,15 @@
"type": "string",
"description": "The 'logical' identifier of the data element 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."
},
"extensions": {
"type": "array",
"ordered": false,
"items": {
"$ref": "/ga4gh/schema/gks-core/1.x/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."
},
"label": {
"type": "string",
"description": "A primary name for the concept."
Expand Down
9 changes: 9 additions & 0 deletions schema/gks-core/json/RecordMetadata
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,15 @@
"type": "string",
"description": "The 'logical' identifier of the data element 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."
},
"extensions": {
"type": "array",
"ordered": false,
"items": {
"$ref": "/ga4gh/schema/gks-core/1.x/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."
},
"recordIdentifier": {
"type": "string",
"description": "The identifier of the data record or object described in this RecordMetadata object."
Expand Down

0 comments on commit 98aee8f

Please sign in to comment.