diff --git a/.gitmodules b/.gitmodules index f4c2aa93..c7f1dc41 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,4 +1,3 @@ -[submodule "schema/gks-common"] - path = submodules/gks-common - url = https://github.com/ga4gh/gks-common.git - branch = 1.x +[submodule "submodules/gks-core"] + path = submodules/gks-core + url = https://github.com/ga4gh/gks-core.git diff --git a/.requirements.txt b/.requirements.txt index 1e6ab8bf..c6857c28 100644 --- a/.requirements.txt +++ b/.requirements.txt @@ -3,7 +3,7 @@ jsonschema referencing ipython pyyaml -ga4gh.gks.metaschema==0.3.0b14 +ga4gh.gks.metaschema==0.3.0b17 sphinx ~= 7.2 sphinx-rtd-theme ~= 1.2 jupyterlab diff --git a/docs/source/appendices/class_diagram.rst b/docs/source/appendices/class_diagram.rst new file mode 100644 index 00000000..023d71b1 --- /dev/null +++ b/docs/source/appendices/class_diagram.rst @@ -0,0 +1,14 @@ +.. _ClassDiagram: + +Class Diagram +!!!!!!!!!!!!! + +Below is a class diagram of the VRS schema which provides a visual representation +of the class inheritance only not associations. Each class within the diagram is +tagged with the maturity level of the class in the upper right corner. The maturity +levels are defined in the :ref:`feature-maturity-levels` section. + +.. figure:: ../images/schema-current.png + + Current VRS Class Inheritance Diagram + diff --git a/docs/source/appendices/index.rst b/docs/source/appendices/index.rst index 5da710b5..fdebe54c 100644 --- a/docs/source/appendices/index.rst +++ b/docs/source/appendices/index.rst @@ -4,18 +4,8 @@ Appendices .. toctree:: :maxdepth: 2 - getting_involved - design_decisions - development_process + class_diagram maturity_model - future_plans - - implementations - relationships - associating_annotations - equivalence ga4gh_identifiers truncated_digest_collision_analysis - - faq glossary diff --git a/docs/source/appendices/maturity_model.rst b/docs/source/appendices/maturity_model.rst index bbb98deb..9f09b4e2 100644 --- a/docs/source/appendices/maturity_model.rst +++ b/docs/source/appendices/maturity_model.rst @@ -43,9 +43,14 @@ adoption by the community. model, enabling adopters to engage at a time that is appropriate for their organizational needs.* +.. _feature-maturity-levels: + Feature Maturity levels @@@@@@@@@@@@@@@@@@@@@@@ +It may be helpful to visualize the application of maturity levels by viewing the +current :ref:`classDiagram`. + .. figure:: ../images/maturity_levels.png :width: 800 diff --git a/docs/source/concepts/AdditionalDataTypes/Code.rst b/docs/source/concepts/AdditionalDataTypes/Code.rst index d0ac5a1d..507b3c2f 100644 --- a/docs/source/concepts/AdditionalDataTypes/Code.rst +++ b/docs/source/concepts/AdditionalDataTypes/Code.rst @@ -1,6 +1,6 @@ -.. _Code: +.. _code: -Code +code !!!! -.. include:: ../../def/gks.common/core-im/Code.rst \ No newline at end of file +.. include:: ../../def/gks-core/code.rst \ No newline at end of file diff --git a/docs/source/concepts/AdditionalDataTypes/Coding.rst b/docs/source/concepts/AdditionalDataTypes/Coding.rst index 8e1b73d4..15a24769 100644 --- a/docs/source/concepts/AdditionalDataTypes/Coding.rst +++ b/docs/source/concepts/AdditionalDataTypes/Coding.rst @@ -3,4 +3,4 @@ Coding !!!!!! -.. include:: ../../def/gks.common/core-im/Coding.rst \ No newline at end of file +.. include:: ../../def/gks-core/Coding.rst \ No newline at end of file diff --git a/docs/source/concepts/AdditionalDataTypes/Element.rst b/docs/source/concepts/AdditionalDataTypes/Element.rst new file mode 100644 index 00000000..912a5c4b --- /dev/null +++ b/docs/source/concepts/AdditionalDataTypes/Element.rst @@ -0,0 +1,6 @@ +.. _Element: + +Element +!!!!!! + +.. include:: ../../def/gks-core/Element.rst \ No newline at end of file diff --git a/docs/source/concepts/AdditionalDataTypes/Entity.rst b/docs/source/concepts/AdditionalDataTypes/Entity.rst index d448ad58..3fdf9e8f 100644 --- a/docs/source/concepts/AdditionalDataTypes/Entity.rst +++ b/docs/source/concepts/AdditionalDataTypes/Entity.rst @@ -3,4 +3,4 @@ Entity !!!!!! -.. include:: ../../def/gks.common/core-im/Entity.rst \ No newline at end of file +.. include:: ../../def/gks-core/Entity.rst \ No newline at end of file diff --git a/docs/source/concepts/AdditionalDataTypes/Extension.rst b/docs/source/concepts/AdditionalDataTypes/Extension.rst index e409351b..d6ab7a09 100644 --- a/docs/source/concepts/AdditionalDataTypes/Extension.rst +++ b/docs/source/concepts/AdditionalDataTypes/Extension.rst @@ -3,4 +3,4 @@ Extension !!!!!!!!! -.. include:: ../../def/gks.common/core-im/Extension.rst \ No newline at end of file +.. include:: ../../def/gks-core/Extension.rst \ No newline at end of file diff --git a/docs/source/concepts/AdditionalDataTypes/IRI.rst b/docs/source/concepts/AdditionalDataTypes/IRI.rst deleted file mode 100644 index 204704b7..00000000 --- a/docs/source/concepts/AdditionalDataTypes/IRI.rst +++ /dev/null @@ -1,6 +0,0 @@ -.. _IRI: - -IRI -!!! - -.. include:: ../../def/gks.common/core-im/IRI.rst \ No newline at end of file diff --git a/docs/source/concepts/AdditionalDataTypes/index.rst b/docs/source/concepts/AdditionalDataTypes/index.rst index 4595993e..e69e4628 100644 --- a/docs/source/concepts/AdditionalDataTypes/index.rst +++ b/docs/source/concepts/AdditionalDataTypes/index.rst @@ -69,19 +69,19 @@ Range .. include:: ../../def/vrs/Range.rst -.. _Residue: +.. _residue: -Residue +residue ####### -.. include:: ../../def/vrs/Residue.rst +.. include:: ../../def/vrs/residue.rst -.. _SequenceString: +.. _sequenceString: -SequenceString +sequenceString ############## -.. include:: ../../def/vrs/SequenceString.rst +.. include:: ../../def/vrs/sequenceString.rst Imported Classes @@@@@@@@@@@@@@@@ @@ -93,7 +93,8 @@ Work Stream as common data classes. :titlesonly: Entity + Element Extension - IRI Coding - Code + code + iriReference diff --git a/docs/source/concepts/AdditionalDataTypes/iriReference.rst b/docs/source/concepts/AdditionalDataTypes/iriReference.rst new file mode 100644 index 00000000..bf4426ac --- /dev/null +++ b/docs/source/concepts/AdditionalDataTypes/iriReference.rst @@ -0,0 +1,6 @@ +.. _iriReference: + +iriReference +!!!!!!!!!!!! + +.. include:: ../../def/gks-core/iriReference.rst \ No newline at end of file diff --git a/docs/source/concepts/index.rst b/docs/source/concepts/index.rst index f590d77d..30975554 100644 --- a/docs/source/concepts/index.rst +++ b/docs/source/concepts/index.rst @@ -2,7 +2,7 @@ Concepts !!!!!!!! VRS is a collection of data models or concepts that are used together to represent molecular -and systemic variation. +and systemic variation. An inhertiance view is available in the :ref:`ClassDiagram` appendix. These models exist across several related domains: - :ref:`MolecularVariation`: models that describe variation on a contiguous molecule @@ -19,3 +19,4 @@ These models exist across several related domains: LocationAndReference/index SequenceExpression/index AdditionalDataTypes/index + \ No newline at end of file diff --git a/docs/source/def/gks-core b/docs/source/def/gks-core new file mode 120000 index 00000000..cce93bd3 --- /dev/null +++ b/docs/source/def/gks-core @@ -0,0 +1 @@ +../../../schema/gks-core/def \ No newline at end of file diff --git a/docs/source/def/gks.common/core-im b/docs/source/def/gks.common/core-im deleted file mode 120000 index f247edb1..00000000 --- a/docs/source/def/gks.common/core-im +++ /dev/null @@ -1 +0,0 @@ -../../../../schema/core-im/def \ No newline at end of file diff --git a/docs/source/def/gks.common/data-types b/docs/source/def/gks.common/data-types deleted file mode 120000 index 8552583e..00000000 --- a/docs/source/def/gks.common/data-types +++ /dev/null @@ -1 +0,0 @@ -../../../../schema/data-types/def \ No newline at end of file diff --git a/docs/source/images/schema-current.png b/docs/source/images/schema-current.png index 78d7298d..12642399 100644 Binary files a/docs/source/images/schema-current.png and b/docs/source/images/schema-current.png differ diff --git a/docs/source/images/schema-future.png b/docs/source/images/schema-future.png deleted file mode 100644 index f5b11f04..00000000 Binary files a/docs/source/images/schema-future.png and /dev/null differ diff --git a/docs/source/rst_epilog b/docs/source/rst_epilog index 7ff158cd..fdfe7c1e 100644 --- a/docs/source/rst_epilog +++ b/docs/source/rst_epilog @@ -29,7 +29,7 @@ .. |varnomen| replace:: `HGVS Variant Nomenclature `__ .. |vrs-python| replace:: `GA4GH VRS Python Implementation `__ .. |vrs| replace:: `VRS `__ -.. |gks-common| replace:: `GKS Common `__ +.. |gks-core| replace:: `GKS Common `__ .. |eg| replace:: *e.g.,* diff --git a/docs/source/schema.rst b/docs/source/schema.rst deleted file mode 100644 index 64ec1279..00000000 --- a/docs/source/schema.rst +++ /dev/null @@ -1,42 +0,0 @@ -Schema -!!!!!! - -Overview -@@@@@@@@ - -.. _vr-schema-diagram: - -.. figure:: images/schema-current.png - - Current Variation Representation Specification Schema - - **Legend** The VRS information model consists of several interdependent - data classes, including both concrete classes and abstract superclasses - (indicated by <> stereotype in header). These classes may be broadly - categorized as conceptual representations of Variation (green boxes), - Feature (blue boxes), Location (light blue boxes), SequenceExpression - (purple boxes), and General Purpose Types (gray boxes). The general purpose - types support the primary classes, including intervals, ranges, Number and - GA4GH Sequence strings (not shown). While all VRS objects are Value - Objects, only some objects are intended to be identifiable (Variation, - Location, and Sequence). Conceptual inheritance relationships between - classes is indicated by connecting lines. [`source - `__] - - - -Machine Readable Specifications -@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ - -The machine readable VRS is written using `JSON Schema -`_. - -The schema itself is written in YAML (|vrs_yaml|) and converted to JSON -(|vrs_json|). - -Contributions to the schema MUST be written in the YAML document. - - - -.. |vrs_json| replace:: :download:`vrs.json <_static/vrs.json>` -.. |vrs_yaml| replace:: :download:`vrs.yaml <_static/vrs.yaml>` diff --git a/schema/core-im b/schema/core-im deleted file mode 120000 index 310a14d7..00000000 --- a/schema/core-im +++ /dev/null @@ -1 +0,0 @@ -../submodules/gks-common/schema/core-im \ No newline at end of file diff --git a/schema/domain-entities b/schema/domain-entities deleted file mode 120000 index 8a3ba18e..00000000 --- a/schema/domain-entities +++ /dev/null @@ -1 +0,0 @@ -../submodules/gks-common/schema/domain-entities \ No newline at end of file diff --git a/schema/gks-core b/schema/gks-core new file mode 120000 index 00000000..cdba90e0 --- /dev/null +++ b/schema/gks-core @@ -0,0 +1 @@ +../submodules/gks-core/schema/gks-core \ No newline at end of file diff --git a/schema/vrs/def/Adjacency.rst b/schema/vrs/def/Adjacency.rst index e28ecf9f..d1eb12da 100644 --- a/schema/vrs/def/Adjacency.rst +++ b/schema/vrs/def/Adjacency.rst @@ -1,12 +1,25 @@ +.. note:: This data class is at a **trial use** maturity level and may \ + change in future releases. Maturity \ + levels are described in the :ref:`maturity-model`. -.. warning:: This data class is at a **draft** maturity level and may change - significantly in future releases. Maturity levels are described in - the :ref:`maturity-model`. - - **Computational Definition** -The `Adjacency` class can represent either the termination of a sequence or the adjoining of the end of a sequence with the beginning of an adjacent sequence, potentially with an intervening linker sequence. +The `Adjacency` class represents the adjoining of the end of a sequence with the beginning of an adjacent sequence, potentially with an intervening linker sequence. + +**GA4GH Digest** + +.. list-table:: + :class: clean-wrap + :header-rows: 1 + :align: left + :widths: auto + + * - Prefix + - Keys + + * - AJ + - ['adjoinedSequences', 'linker', 'type'] + **Information Model** @@ -19,50 +32,77 @@ Some Adjacency attributes are inherited from :ref:`Variation`. :widths: auto * - 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. * - label + - - string - 0..1 - A primary name for the entity. * - description + - - string - 0..1 - A free-text description of the Entity. * - alternativeLabels + - + .. raw:: html + + - string - 0..m - Alternative name(s) for the Entity. * - extensions + - + .. raw:: html + + - :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. * - digest + - - string - 0..1 - A sha512t24u digest created using the VRS Computed Identifier algorithm. * - expressions + - + .. raw:: html + + - :ref:`Expression` - 0..m - * - type + - - string - 1..1 - MUST be "Adjacency". * - adjoinedSequences - - :ref:`IRI` | :ref:`Location` + - + .. raw:: html + + + - :ref:`iriReference` | :ref:`Location` - 2..2 - The terminal sequence or pair of adjoined sequences that defines in the adjacency. * - linker + - - :ref:`SequenceExpression` - 0..1 - The sequence found between adjoined sequences. * - homology + - + .. raw:: html + + D - boolean - 0..1 - A flag indicating if coordinate ambiguity in the adjoined sequences is from sequence homology (true) or other uncertainty, such as instrument ambiguity (false). diff --git a/schema/vrs/def/Allele.rst b/schema/vrs/def/Allele.rst index 0d0fcbed..30aa53ac 100644 --- a/schema/vrs/def/Allele.rst +++ b/schema/vrs/def/Allele.rst @@ -1,13 +1,26 @@ +.. note:: This data class is at a **trial use** maturity level and may \ + change in future releases. Maturity \ + levels are described in the :ref:`maturity-model`. -.. warning:: This data class is at a **draft** maturity level and may change - significantly in future releases. Maturity levels are described in - the :ref:`maturity-model`. - - **Computational Definition** The state of a molecule at a :ref:`Location`. +**GA4GH Digest** + +.. list-table:: + :class: clean-wrap + :header-rows: 1 + :align: left + :widths: auto + + * - Prefix + - Keys + + * - VA + - ['location', 'state', 'type'] + + **Information Model** Some Allele attributes are inherited from :ref:`Variation`. @@ -19,46 +32,66 @@ Some Allele attributes are inherited from :ref:`Variation`. :widths: auto * - 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. * - label + - - string - 0..1 - A primary name for the entity. * - description + - - string - 0..1 - A free-text description of the Entity. * - alternativeLabels + - + .. raw:: html + + - string - 0..m - Alternative name(s) for the Entity. * - extensions + - + .. raw:: html + + - :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. * - digest + - - string - 0..1 - A sha512t24u digest created using the VRS Computed Identifier algorithm. * - expressions + - + .. raw:: html + + - :ref:`Expression` - 0..m - * - type + - - string - 1..1 - MUST be "Allele" * - location - - :ref:`IRI` | :ref:`Location` + - + - :ref:`iriReference` | :ref:`Location` - 1..1 - The location of the Allele * - state + - - :ref:`SequenceExpression` - 1..1 - An expression of the sequence state diff --git a/schema/vrs/def/CisPhasedBlock.rst b/schema/vrs/def/CisPhasedBlock.rst index b4bc5d50..6ca29ebb 100644 --- a/schema/vrs/def/CisPhasedBlock.rst +++ b/schema/vrs/def/CisPhasedBlock.rst @@ -1,13 +1,26 @@ +.. note:: This data class is at a **trial use** maturity level and may \ + change in future releases. Maturity \ + levels are described in the :ref:`maturity-model`. -.. warning:: This data class is at a **draft** maturity level and may change - significantly in future releases. Maturity levels are described in - the :ref:`maturity-model`. - - **Computational Definition** An ordered set of co-occurring :ref:`variants ` on the same molecule. +**GA4GH Digest** + +.. list-table:: + :class: clean-wrap + :header-rows: 1 + :align: left + :widths: auto + + * - Prefix + - Keys + + * - CPB + - ['members', 'type'] + + **Information Model** Some CisPhasedBlock attributes are inherited from :ref:`Variation`. @@ -19,46 +32,69 @@ Some CisPhasedBlock attributes are inherited from :ref:`Variation`. :widths: auto * - 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. * - label + - - string - 0..1 - A primary name for the entity. * - description + - - string - 0..1 - A free-text description of the Entity. * - alternativeLabels + - + .. raw:: html + + - string - 0..m - Alternative name(s) for the Entity. * - extensions + - + .. raw:: html + + - :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. * - digest + - - string - 0..1 - A sha512t24u digest created using the VRS Computed Identifier algorithm. * - expressions + - + .. raw:: html + + - :ref:`Expression` - 0..m - * - type + - - string - 1..1 - MUST be "CisPhasedBlock" * - members - - :ref:`Allele` | :ref:`IRI` + - + .. raw:: html + + + - :ref:`Allele` | :ref:`iriReference` - 2..m - A list of :ref:`Alleles ` that are found in-cis on a shared molecule. * - sequenceReference + - - :ref:`SequenceReference` - 0..1 - An optional Sequence Reference on which all of the in-cis Alleles are found. When defined, this may be used to implicitly define the `sequenceReference` attribute for each of the CisPhasedBlock member Alleles. diff --git a/schema/vrs/def/CopyNumber.rst b/schema/vrs/def/CopyNumber.rst index 4317010e..b359df9c 100644 --- a/schema/vrs/def/CopyNumber.rst +++ b/schema/vrs/def/CopyNumber.rst @@ -1,7 +1,26 @@ +.. warning:: This data class is at a **draft** maturity level and may \ + change significantly in future releases. Maturity \ + levels are described in the :ref:`maturity-model`. + **Computational Definition** A measure of the copies of a :ref:`Location` within a system (e.g. genome, cell, etc.) +**GA4GH Digest** + +.. list-table:: + :class: clean-wrap + :header-rows: 1 + :align: left + :widths: auto + + * - Prefix + - Keys + + * - None + - ['location', 'type'] + + **Information Model** Some CopyNumber attributes are inherited from :ref:`Variation`. @@ -13,42 +32,61 @@ Some CopyNumber attributes are inherited from :ref:`Variation`. :widths: auto * - 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. * - type + - - string - 1..1 - * - label + - - string - 0..1 - A primary name for the entity. * - description + - - string - 0..1 - A free-text description of the Entity. * - alternativeLabels + - + .. raw:: html + + - string - 0..m - Alternative name(s) for the Entity. * - extensions + - + .. raw:: html + + - :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. * - digest + - - string - 0..1 - A sha512t24u digest created using the VRS Computed Identifier algorithm. * - expressions + - + .. raw:: html + + - :ref:`Expression` - 0..m - * - location - - :ref:`IRI` | :ref:`Location` + - + - :ref:`iriReference` | :ref:`Location` - 1..1 - A location for which the number of systemic copies is described. diff --git a/schema/vrs/def/CopyNumberChange.rst b/schema/vrs/def/CopyNumberChange.rst index dde5eaa9..ac374c34 100644 --- a/schema/vrs/def/CopyNumberChange.rst +++ b/schema/vrs/def/CopyNumberChange.rst @@ -1,13 +1,26 @@ +.. warning:: This data class is at a **draft** maturity level and may \ + change significantly in future releases. Maturity \ + levels are described in the :ref:`maturity-model`. -.. warning:: This data class is at a **draft** maturity level and may change - significantly in future releases. Maturity levels are described in - the :ref:`maturity-model`. - - **Computational Definition** An assessment of the copy number of a :ref:`Location` or a :ref:`Gene` within a system (e.g. genome, cell, etc.) relative to a baseline ploidy. +**GA4GH Digest** + +.. list-table:: + :class: clean-wrap + :header-rows: 1 + :align: left + :widths: auto + + * - Prefix + - Keys + + * - CX + - ['copyChange', 'location', 'type'] + + **Information Model** Some CopyNumberChange attributes are inherited from :ref:`CopyNumber`. @@ -19,46 +32,66 @@ Some CopyNumberChange attributes are inherited from :ref:`CopyNumber`. :widths: auto * - 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. * - label + - - string - 0..1 - A primary name for the entity. * - description + - - string - 0..1 - A free-text description of the Entity. * - alternativeLabels + - + .. raw:: html + + - string - 0..m - Alternative name(s) for the Entity. * - extensions + - + .. raw:: html + + - :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. * - digest + - - string - 0..1 - A sha512t24u digest created using the VRS Computed Identifier algorithm. * - expressions + - + .. raw:: html + + - :ref:`Expression` - 0..m - * - location - - :ref:`IRI` | :ref:`Location` + - + - :ref:`iriReference` | :ref:`Location` - 1..1 - A location for which the number of systemic copies is described. * - type + - - string - 1..1 - MUST be "CopyNumberChange" * - copyChange - - :ref:`Coding` + - + - :ref:`MappableConcept` - 1..1 - - MUST be a :ref:`Coding` representing one of "EFO:0030069" (complete genomic loss), "EFO:0020073" (high-level loss), "EFO:0030068" (low-level loss), "EFO:0030067" (loss), "EFO:0030064" (regional base ploidy), "EFO:0030070" (gain), "EFO:0030071" (low-level gain), "EFO:0030072" (high-level gain). + - MUST use a `primaryCode` representing one of "EFO:0030069" (complete genomic loss), "EFO:0020073" (high-level loss), "EFO:0030068" (low-level loss), "EFO:0030067" (loss), "EFO:0030064" (regional base ploidy), "EFO:0030070" (gain), "EFO:0030071" (low-level gain), "EFO:0030072" (high-level gain). diff --git a/schema/vrs/def/CopyNumberCount.rst b/schema/vrs/def/CopyNumberCount.rst index 64868682..0dab4a76 100644 --- a/schema/vrs/def/CopyNumberCount.rst +++ b/schema/vrs/def/CopyNumberCount.rst @@ -1,13 +1,26 @@ +.. warning:: This data class is at a **draft** maturity level and may \ + change significantly in future releases. Maturity \ + levels are described in the :ref:`maturity-model`. -.. warning:: This data class is at a **draft** maturity level and may change - significantly in future releases. Maturity levels are described in - the :ref:`maturity-model`. - - **Computational Definition** The absolute count of discrete copies of a :ref:`Location` or :ref:`Gene`, within a system (e.g. genome, cell, etc.). +**GA4GH Digest** + +.. list-table:: + :class: clean-wrap + :header-rows: 1 + :align: left + :widths: auto + + * - Prefix + - Keys + + * - CN + - ['copies', 'location', 'type'] + + **Information Model** Some CopyNumberCount attributes are inherited from :ref:`CopyNumber`. @@ -19,46 +32,66 @@ Some CopyNumberCount attributes are inherited from :ref:`CopyNumber`. :widths: auto * - 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. * - label + - - string - 0..1 - A primary name for the entity. * - description + - - string - 0..1 - A free-text description of the Entity. * - alternativeLabels + - + .. raw:: html + + - string - 0..m - Alternative name(s) for the Entity. * - extensions + - + .. raw:: html + + - :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. * - digest + - - string - 0..1 - A sha512t24u digest created using the VRS Computed Identifier algorithm. * - expressions + - + .. raw:: html + + - :ref:`Expression` - 0..m - * - location - - :ref:`IRI` | :ref:`Location` + - + - :ref:`iriReference` | :ref:`Location` - 1..1 - A location for which the number of systemic copies is described. * - type + - - string - 1..1 - MUST be "CopyNumberCount" * - copies + - - integer | :ref:`Range` - 1..1 - The integral number of copies of the subject in a system diff --git a/schema/vrs/def/DerivativeMolecule.rst b/schema/vrs/def/DerivativeMolecule.rst index 9548274e..ddff97ad 100644 --- a/schema/vrs/def/DerivativeMolecule.rst +++ b/schema/vrs/def/DerivativeMolecule.rst @@ -1,13 +1,26 @@ +.. warning:: This data class is at a **draft** maturity level and may \ + change significantly in future releases. Maturity \ + levels are described in the :ref:`maturity-model`. -.. warning:: This data class is at a **draft** maturity level and may change - significantly in future releases. Maturity levels are described in - the :ref:`maturity-model`. - - **Computational Definition** A molecule derived from segments of multiple adjoined molecular sequences, typically resulting from structural variation. +**GA4GH Digest** + +.. list-table:: + :class: clean-wrap + :header-rows: 1 + :align: left + :widths: auto + + * - Prefix + - Keys + + * - DM + - ['components', 'type'] + + **Information Model** Some DerivativeMolecule attributes are inherited from :ref:`Variation`. @@ -19,46 +32,69 @@ Some DerivativeMolecule attributes are inherited from :ref:`Variation`. :widths: auto * - 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. * - label + - - string - 0..1 - A primary name for the entity. * - description + - - string - 0..1 - A free-text description of the Entity. * - alternativeLabels + - + .. raw:: html + + - string - 0..m - Alternative name(s) for the Entity. * - extensions + - + .. raw:: html + + - :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. * - digest + - - string - 0..1 - A sha512t24u digest created using the VRS Computed Identifier algorithm. * - expressions + - + .. raw:: html + + - :ref:`Expression` - 0..m - * - type + - - string - 1..1 - MUST be "DerivativeMolecule". * - components - - :ref:`IRI` | :ref:`Allele` | :ref:`CisPhasedBlock` | :ref:`Terminus` | :ref:`TraversalBlock` + - + .. raw:: html + + + - :ref:`iriReference` | :ref:`Allele` | :ref:`CisPhasedBlock` | :ref:`Terminus` | :ref:`TraversalBlock` - 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). diff --git a/schema/vrs/def/Expression.rst b/schema/vrs/def/Expression.rst index f99446de..c4114693 100644 --- a/schema/vrs/def/Expression.rst +++ b/schema/vrs/def/Expression.rst @@ -1,15 +1,14 @@ +.. note:: This data class is at a **trial use** maturity level and may \ + change in future releases. Maturity \ + levels are described in the :ref:`maturity-model`. -.. warning:: This data class is at a **draft** maturity level and may change - significantly in future releases. Maturity levels are described in - the :ref:`maturity-model`. - - **Computational Definition** Representation of a variation by a specified nomenclature or syntax for a Variation object. Common examples of expressions for the description of molecular variation include the HGVS and ISCN nomenclatures. **Information Model** +Some Expression attributes are inherited from :ref:`gks-core:Element`. .. list-table:: :class: clean-wrap @@ -18,18 +17,35 @@ Representation of a variation by a specified nomenclature or syntax for a Variat :widths: auto * - Field + - Flags - Type - Limits - Description + * - id + - + - 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 + - + .. raw:: html + + + - :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. * - syntax + - - string - 1..1 - The syntax used to describe the variation. The value should be one of the supported syntaxes. * - value + - - string - 1..1 - The expression of the variation in the specified syntax. The value should be a valid expression in the specified syntax. * - syntax_version + - - string - 0..1 - The version of the syntax used to describe the variation. This is particularly important for HGVS expressions, as the syntax has evolved over time. diff --git a/schema/vrs/def/Ga4ghIdentifiableObject.rst b/schema/vrs/def/Ga4ghIdentifiableObject.rst index efb09d1f..11f1f045 100644 --- a/schema/vrs/def/Ga4ghIdentifiableObject.rst +++ b/schema/vrs/def/Ga4ghIdentifiableObject.rst @@ -1,10 +1,29 @@ +.. note:: This data class is at a **trial use** maturity level and may \ + change in future releases. Maturity \ + levels are described in the :ref:`maturity-model`. + **Computational Definition** An object for which a GA4GH computed identifier can be created. +**GA4GH Digest** + +.. list-table:: + :class: clean-wrap + :header-rows: 1 + :align: left + :widths: auto + + * - Prefix + - Keys + + * - None + - ['type'] + + **Information Model** -Some Ga4ghIdentifiableObject attributes are inherited from :ref:`gks.core-im:Entity`. +Some Ga4ghIdentifiableObject attributes are inherited from :ref:`gks-core:Entity`. .. list-table:: :class: clean-wrap @@ -13,34 +32,48 @@ Some Ga4ghIdentifiableObject attributes are inherited from :ref:`gks.core-im:Ent :widths: auto * - 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. * - type + - - string - 1..1 - * - label + - - string - 0..1 - A primary name for the entity. * - description + - - string - 0..1 - A free-text description of the Entity. * - alternativeLabels + - + .. raw:: html + + - string - 0..m - Alternative name(s) for the Entity. * - extensions + - + .. raw:: html + + - :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. * - digest + - - string - 0..1 - A sha512t24u digest created using the VRS Computed Identifier algorithm. diff --git a/schema/vrs/def/LengthExpression.rst b/schema/vrs/def/LengthExpression.rst index de46dd53..59492fea 100644 --- a/schema/vrs/def/LengthExpression.rst +++ b/schema/vrs/def/LengthExpression.rst @@ -1,13 +1,26 @@ +.. warning:: This data class is at a **draft** maturity level and may \ + change significantly in future releases. Maturity \ + levels are described in the :ref:`maturity-model`. -.. warning:: This data class is at a **draft** maturity level and may change - significantly in future releases. Maturity levels are described in - the :ref:`maturity-model`. - - **Computational Definition** A sequence expressed only by its length. +**GA4GH Digest** + +.. list-table:: + :class: clean-wrap + :header-rows: 1 + :align: left + :widths: auto + + * - Prefix + - Keys + + * - None + - ['length', 'type'] + + **Information Model** Some LengthExpression attributes are inherited from :ref:`SequenceExpression`. @@ -19,34 +32,48 @@ Some LengthExpression attributes are inherited from :ref:`SequenceExpression`. :widths: auto * - 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. * - label + - - string - 0..1 - A primary name for the entity. * - description + - - string - 0..1 - A free-text description of the Entity. * - alternativeLabels + - + .. raw:: html + + - string - 0..m - Alternative name(s) for the Entity. * - extensions + - + .. raw:: html + + - :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. * - type + - - string - 1..1 - MUST be "LengthExpression" * - length + - - :ref:`Range` | integer - 0..1 - The length of the sequence. diff --git a/schema/vrs/def/LiteralSequenceExpression.rst b/schema/vrs/def/LiteralSequenceExpression.rst index 35faa7a8..c2e61f6f 100644 --- a/schema/vrs/def/LiteralSequenceExpression.rst +++ b/schema/vrs/def/LiteralSequenceExpression.rst @@ -1,13 +1,26 @@ +.. note:: This data class is at a **trial use** maturity level and may \ + change in future releases. Maturity \ + levels are described in the :ref:`maturity-model`. -.. warning:: This data class is at a **draft** maturity level and may change - significantly in future releases. Maturity levels are described in - the :ref:`maturity-model`. - - **Computational Definition** An explicit expression of a Sequence. +**GA4GH Digest** + +.. list-table:: + :class: clean-wrap + :header-rows: 1 + :align: left + :widths: auto + + * - Prefix + - Keys + + * - None + - ['sequence', 'type'] + + **Information Model** Some LiteralSequenceExpression attributes are inherited from :ref:`SequenceExpression`. @@ -19,34 +32,48 @@ Some LiteralSequenceExpression attributes are inherited from :ref:`SequenceExpre :widths: auto * - 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. * - label + - - string - 0..1 - A primary name for the entity. * - description + - - string - 0..1 - A free-text description of the Entity. * - alternativeLabels + - + .. raw:: html + + - string - 0..m - Alternative name(s) for the Entity. * - extensions + - + .. raw:: html + + - :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. * - type + - - string - 1..1 - MUST be "LiteralSequenceExpression" * - sequence - - :ref:`SequenceString` + - + - :ref:`sequenceString` - 1..1 - the literal sequence diff --git a/schema/vrs/def/Location.rst b/schema/vrs/def/Location.rst index 0d8a4a77..f4ceddfc 100644 --- a/schema/vrs/def/Location.rst +++ b/schema/vrs/def/Location.rst @@ -1,3 +1,7 @@ +.. note:: This data class is at a **trial use** maturity level and may \ + change in future releases. Maturity \ + levels are described in the :ref:`maturity-model`. + **Computational Definition** A contiguous segment of a biological sequence. diff --git a/schema/vrs/def/MolecularVariation.rst b/schema/vrs/def/MolecularVariation.rst index cfebddc0..32d7f2e0 100644 --- a/schema/vrs/def/MolecularVariation.rst +++ b/schema/vrs/def/MolecularVariation.rst @@ -1,3 +1,7 @@ +.. note:: This data class is at a **trial use** maturity level and may \ + change in future releases. Maturity \ + levels are described in the :ref:`maturity-model`. + **Computational Definition** A :ref:`variation` on a contiguous molecule. diff --git a/schema/vrs/def/Range.rst b/schema/vrs/def/Range.rst index c2f1077b..c22728f6 100644 --- a/schema/vrs/def/Range.rst +++ b/schema/vrs/def/Range.rst @@ -1,9 +1,7 @@ +.. note:: This data class is at a **trial use** maturity level and may \ + change in future releases. Maturity \ + levels are described in the :ref:`maturity-model`. -.. warning:: This data class is at a **draft** maturity level and may change - significantly in future releases. Maturity levels are described in - the :ref:`maturity-model`. - - **Computational Definition** An inclusive range of values bounded by one or more integers. diff --git a/schema/vrs/def/ReferenceLengthExpression.rst b/schema/vrs/def/ReferenceLengthExpression.rst index f37e644e..ea572e31 100644 --- a/schema/vrs/def/ReferenceLengthExpression.rst +++ b/schema/vrs/def/ReferenceLengthExpression.rst @@ -1,13 +1,26 @@ +.. note:: This data class is at a **trial use** maturity level and may \ + change in future releases. Maturity \ + levels are described in the :ref:`maturity-model`. -.. warning:: This data class is at a **draft** maturity level and may change - significantly in future releases. Maturity levels are described in - the :ref:`maturity-model`. - - **Computational Definition** An expression of a sequence that is derived from repeating a subsequence of an associated :ref:`SequenceLocation`. +**GA4GH Digest** + +.. list-table:: + :class: clean-wrap + :header-rows: 1 + :align: left + :widths: auto + + * - Prefix + - Keys + + * - None + - ['length', 'repeatSubunitLength', 'type'] + + **Information Model** Some ReferenceLengthExpression attributes are inherited from :ref:`SequenceExpression`. @@ -19,42 +32,58 @@ Some ReferenceLengthExpression attributes are inherited from :ref:`SequenceExpre :widths: auto * - 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. * - label + - - string - 0..1 - A primary name for the entity. * - description + - - string - 0..1 - A free-text description of the Entity. * - alternativeLabels + - + .. raw:: html + + - string - 0..m - Alternative name(s) for the Entity. * - extensions + - + .. raw:: html + + - :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. * - type + - - string - 1..1 - MUST be "ReferenceLengthExpression" * - length + - - integer | :ref:`Range` - 1..1 - The number of residues in the expressed sequence. * - sequence - - :ref:`SequenceString` + - + - :ref:`sequenceString` - 0..1 - the literal :ref:`Sequence` encoded by the Reference Length Expression. * - repeatSubunitLength + - - integer - 1..1 - The number of residues in the repeat subunit. diff --git a/schema/vrs/def/SequenceExpression.rst b/schema/vrs/def/SequenceExpression.rst index 4000ee5b..19f7927b 100644 --- a/schema/vrs/def/SequenceExpression.rst +++ b/schema/vrs/def/SequenceExpression.rst @@ -1,10 +1,29 @@ +.. note:: This data class is at a **trial use** maturity level and may \ + change in future releases. Maturity \ + levels are described in the :ref:`maturity-model`. + **Computational Definition** An expression describing a :ref:`Sequence`. +**GA4GH Digest** + +.. list-table:: + :class: clean-wrap + :header-rows: 1 + :align: left + :widths: auto + + * - Prefix + - Keys + + * - None + - ['type'] + + **Information Model** -Some SequenceExpression attributes are inherited from :ref:`gks.core-im:Entity`. +Some SequenceExpression attributes are inherited from :ref:`gks-core:Entity`. .. list-table:: :class: clean-wrap @@ -13,30 +32,43 @@ Some SequenceExpression attributes are inherited from :ref:`gks.core-im:Entity`. :widths: auto * - 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. * - label + - - string - 0..1 - A primary name for the entity. * - description + - - string - 0..1 - A free-text description of the Entity. * - alternativeLabels + - + .. raw:: html + + - string - 0..m - Alternative name(s) for the Entity. * - extensions + - + .. raw:: html + + - :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. * - type + - - string - 1..1 - The SequenceExpression class type. MUST match child class type. diff --git a/schema/vrs/def/SequenceLocation.rst b/schema/vrs/def/SequenceLocation.rst index 1553b499..144f88a2 100644 --- a/schema/vrs/def/SequenceLocation.rst +++ b/schema/vrs/def/SequenceLocation.rst @@ -1,13 +1,26 @@ +.. note:: This data class is at a **trial use** maturity level and may \ + change in future releases. Maturity \ + levels are described in the :ref:`maturity-model`. -.. warning:: This data class is at a **draft** maturity level and may change - significantly in future releases. Maturity levels are described in - the :ref:`maturity-model`. - - **Computational Definition** A :ref:`Location` defined by an interval on a referenced :ref:`Sequence`. +**GA4GH Digest** + +.. list-table:: + :class: clean-wrap + :header-rows: 1 + :align: left + :widths: auto + + * - Prefix + - Keys + + * - SL + - ['end', 'sequenceReference', 'start', 'type'] + + **Information Model** Some SequenceLocation attributes are inherited from :ref:`Ga4ghIdentifiableObject`. @@ -19,50 +32,68 @@ Some SequenceLocation attributes are inherited from :ref:`Ga4ghIdentifiableObjec :widths: auto * - 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. * - label + - - string - 0..1 - A primary name for the entity. * - description + - - string - 0..1 - A free-text description of the Entity. * - alternativeLabels + - + .. raw:: html + + - string - 0..m - Alternative name(s) for the Entity. * - extensions + - + .. raw:: html + + - :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. * - digest + - - string - 0..1 - A sha512t24u digest created using the VRS Computed Identifier algorithm. * - type + - - string - 1..1 - MUST be "SequenceLocation" * - sequenceReference - - :ref:`IRI` | :ref:`SequenceReference` + - + - :ref:`iriReference` | :ref:`SequenceReference` - 0..1 - A reference to a :ref:`Sequence` on which the location is defined. * - start + - - integer | :ref:`Range` - 0..1 - The start coordinate or range of the SequenceLocation. The minimum value of this coordinate or range is 0. MUST represent a coordinate or range less than or equal to the value of `end`. * - end + - - integer | :ref:`Range` - 0..1 - The end coordinate or range of the SequenceLocation. The minimum value of this coordinate or range is 0. MUST represent a coordinate or range greater than or equal to the value of `start`. * - sequence - - :ref:`SequenceString` + - + - :ref:`sequenceString` - 0..1 - The literal sequence encoded by the `sequenceReference` at these coordinates. diff --git a/schema/vrs/def/SequenceReference.rst b/schema/vrs/def/SequenceReference.rst index d896fa61..5c02376d 100644 --- a/schema/vrs/def/SequenceReference.rst +++ b/schema/vrs/def/SequenceReference.rst @@ -1,16 +1,29 @@ +.. note:: This data class is at a **trial use** maturity level and may \ + change in future releases. Maturity \ + levels are described in the :ref:`maturity-model`. -.. warning:: This data class is at a **draft** maturity level and may change - significantly in future releases. Maturity levels are described in - the :ref:`maturity-model`. - - **Computational Definition** A sequence of nucleic or amino acid character codes. +**GA4GH Digest** + +.. list-table:: + :class: clean-wrap + :header-rows: 1 + :align: left + :widths: auto + + * - Prefix + - Keys + + * - None + - ['refgetAccession', 'type'] + + **Information Model** -Some SequenceReference attributes are inherited from :ref:`gks.core-im:Entity`. +Some SequenceReference attributes are inherited from :ref:`gks-core:Entity`. .. list-table:: :class: clean-wrap @@ -19,42 +32,58 @@ Some SequenceReference attributes are inherited from :ref:`gks.core-im:Entity`. :widths: auto * - 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. * - label + - - string - 0..1 - A primary name for the entity. * - description + - - string - 0..1 - A free-text description of the Entity. * - alternativeLabels + - + .. raw:: html + + - string - 0..m - Alternative name(s) for the Entity. * - extensions + - + .. raw:: html + + - :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. * - type + - - string - 1..1 - MUST be "SequenceReference" * - refgetAccession + - - string - 1..1 - A `GA4GH RefGet `_ identifier for the referenced sequence, using the sha512t24u digest. * - residueAlphabet + - - string - 0..1 - The interpretation of the character codes referred to by the refget accession, where "aa" specifies an amino acid character set, and "na" specifies a nucleic acid character set. * - circular + - - boolean - 0..1 - A boolean indicating whether the molecule represented by the sequence is circular (true) or linear (false). diff --git a/schema/vrs/def/SequenceString.rst b/schema/vrs/def/SequenceString.rst deleted file mode 100644 index 00e43563..00000000 --- a/schema/vrs/def/SequenceString.rst +++ /dev/null @@ -1,9 +0,0 @@ - -.. warning:: This data class is at a **draft** maturity level and may change - significantly in future releases. Maturity levels are described in - the :ref:`maturity-model`. - - -**Computational Definition** - -A character string of :ref:`Residues ` that represents a biological sequence using the conventional sequence order (5’-to-3’ for nucleic acid sequences, and amino-to-carboxyl for amino acid sequences). IUPAC ambiguity codes are permitted in Sequence Strings. diff --git a/schema/vrs/def/SystemicVariation.rst b/schema/vrs/def/SystemicVariation.rst index e5cb71dd..a33995f9 100644 --- a/schema/vrs/def/SystemicVariation.rst +++ b/schema/vrs/def/SystemicVariation.rst @@ -1,3 +1,7 @@ +.. note:: This data class is at a **trial use** maturity level and may \ + change in future releases. Maturity \ + levels are described in the :ref:`maturity-model`. + **Computational Definition** A Variation of multiple molecules in the context of a system, e.g. a genome, sample, or homologous chromosomes. diff --git a/schema/vrs/def/Terminus.rst b/schema/vrs/def/Terminus.rst index 530e2c58..5fa9d2c6 100644 --- a/schema/vrs/def/Terminus.rst +++ b/schema/vrs/def/Terminus.rst @@ -1,13 +1,26 @@ +.. warning:: This data class is at a **draft** maturity level and may \ + change significantly in future releases. Maturity \ + levels are described in the :ref:`maturity-model`. -.. warning:: This data class is at a **draft** maturity level and may change - significantly in future releases. Maturity levels are described in - the :ref:`maturity-model`. - - **Computational Definition** The `Terminus` data class provides a structure for describing the end (terminus) of a molecule. Structurally similar to Adjacency, but used for describing where a molecule terminates (instead of adjoining another molecule). +**GA4GH Digest** + +.. list-table:: + :class: clean-wrap + :header-rows: 1 + :align: left + :widths: auto + + * - Prefix + - Keys + + * - TM + - ['location', 'type'] + + **Information Model** Some Terminus attributes are inherited from :ref:`Variation`. @@ -19,42 +32,61 @@ Some Terminus attributes are inherited from :ref:`Variation`. :widths: auto * - 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. * - label + - - string - 0..1 - A primary name for the entity. * - description + - - string - 0..1 - A free-text description of the Entity. * - alternativeLabels + - + .. raw:: html + + - string - 0..m - Alternative name(s) for the Entity. * - extensions + - + .. raw:: html + + - :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. * - digest + - - string - 0..1 - A sha512t24u digest created using the VRS Computed Identifier algorithm. * - expressions + - + .. raw:: html + + - :ref:`Expression` - 0..m - * - type + - - string - 1..1 - MUST be "Terminus". * - location - - :ref:`IRI` | :ref:`Location` + - + - :ref:`iriReference` | :ref:`Location` - 1..1 - The location of the terminus. diff --git a/schema/vrs/def/TraversalBlock.rst b/schema/vrs/def/TraversalBlock.rst index 607ff19f..3310a644 100644 --- a/schema/vrs/def/TraversalBlock.rst +++ b/schema/vrs/def/TraversalBlock.rst @@ -1,16 +1,29 @@ +.. warning:: This data class is at a **draft** maturity level and may \ + change significantly in future releases. Maturity \ + levels are described in the :ref:`maturity-model`. -.. warning:: This data class is at a **draft** maturity level and may change - significantly in future releases. Maturity levels are described in - the :ref:`maturity-model`. - - **Computational Definition** A component used to describe the orientation of applicable molecular variation within a DerivativeMolecule. +**GA4GH Digest** + +.. list-table:: + :class: clean-wrap + :header-rows: 1 + :align: left + :widths: auto + + * - Prefix + - Keys + + * - None + - ['type', 'component', 'orientation'] + + **Information Model** -Some TraversalBlock attributes are inherited from :ref:`gks.core-im:Entity`. +Some TraversalBlock attributes are inherited from :ref:`gks-core:Entity`. .. list-table:: :class: clean-wrap @@ -19,38 +32,53 @@ Some TraversalBlock attributes are inherited from :ref:`gks.core-im:Entity`. :widths: auto * - 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. * - label + - - string - 0..1 - A primary name for the entity. * - description + - - string - 0..1 - A free-text description of the Entity. * - alternativeLabels + - + .. raw:: html + + - string - 0..m - Alternative name(s) for the Entity. * - extensions + - + .. raw:: html + + - :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. * - type + - - string - 1..1 - MUST be "TraversalBlock". * - component + - - :ref:`Adjacency` - 0..1 - The unoriented molecular variation component. * - orientation + - - string - 0..1 - The orientation of the molecular variation component. diff --git a/schema/vrs/def/Variation.rst b/schema/vrs/def/Variation.rst index b2e59fae..3850538a 100644 --- a/schema/vrs/def/Variation.rst +++ b/schema/vrs/def/Variation.rst @@ -1,7 +1,26 @@ +.. note:: This data class is at a **trial use** maturity level and may \ + change in future releases. Maturity \ + levels are described in the :ref:`maturity-model`. + **Computational Definition** A representation of the state of one or more biomolecules. +**GA4GH Digest** + +.. list-table:: + :class: clean-wrap + :header-rows: 1 + :align: left + :widths: auto + + * - Prefix + - Keys + + * - None + - ['type'] + + **Information Model** Some Variation attributes are inherited from :ref:`Ga4ghIdentifiableObject`. @@ -13,38 +32,56 @@ Some Variation attributes are inherited from :ref:`Ga4ghIdentifiableObject`. :widths: auto * - 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. * - type + - - string - 1..1 - * - label + - - string - 0..1 - A primary name for the entity. * - description + - - string - 0..1 - A free-text description of the Entity. * - alternativeLabels + - + .. raw:: html + + - string - 0..m - Alternative name(s) for the Entity. * - extensions + - + .. raw:: html + + - :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. * - digest + - - string - 0..1 - A sha512t24u digest created using the VRS Computed Identifier algorithm. * - expressions + - + .. raw:: html + + - :ref:`Expression` - 0..m - diff --git a/schema/vrs/def/Residue.rst b/schema/vrs/def/residue.rst similarity index 60% rename from schema/vrs/def/Residue.rst rename to schema/vrs/def/residue.rst index 13118320..c954f635 100644 --- a/schema/vrs/def/Residue.rst +++ b/schema/vrs/def/residue.rst @@ -1,9 +1,7 @@ +.. note:: This data class is at a **trial use** maturity level and may \ + change in future releases. Maturity \ + levels are described in the :ref:`maturity-model`. -.. warning:: This data class is at a **draft** maturity level and may change - significantly in future releases. Maturity levels are described in - the :ref:`maturity-model`. - - **Computational Definition** A character representing a specific residue (i.e., molecular species) or groupings of these ("ambiguity codes"), using `one-letter IUPAC abbreviations `_ for nucleic acids and amino acids. diff --git a/schema/vrs/def/sequenceString.rst b/schema/vrs/def/sequenceString.rst new file mode 100644 index 00000000..93ca7495 --- /dev/null +++ b/schema/vrs/def/sequenceString.rst @@ -0,0 +1,7 @@ +.. note:: This data class is at a **trial use** maturity level and may \ + change in future releases. Maturity \ + levels are described in the :ref:`maturity-model`. + +**Computational Definition** + +A character string of :ref:`residues ` that represents a biological sequence using the conventional sequence order (5’-to-3’ for nucleic acid sequences, and amino-to-carboxyl for amino acid sequences). IUPAC ambiguity codes are permitted in Sequence Strings. diff --git a/schema/vrs/json/Adjacency b/schema/vrs/json/Adjacency index eb578ddc..35b8a64c 100644 --- a/schema/vrs/json/Adjacency +++ b/schema/vrs/json/Adjacency @@ -3,7 +3,7 @@ "$id": "https://w3id.org/ga4gh/schema/vrs/2.x/json/Adjacency", "title": "Adjacency", "type": "object", - "maturity": "draft", + "maturity": "trial use", "ga4ghDigest": { "prefix": "AJ", "keys": [ @@ -12,7 +12,7 @@ "type" ] }, - "description": "The `Adjacency` class can represent either the termination of a sequence or the adjoining of the end of a sequence with the beginning of an adjacent sequence, potentially with an intervening linker sequence.", + "description": "The `Adjacency` class represents the adjoining of the end of a sequence with the beginning of an adjacent sequence, potentially with an intervening linker sequence.", "properties": { "id": { "type": "string", @@ -39,7 +39,7 @@ "type": "array", "ordered": false, "items": { - "$ref": "/ga4gh/schema/gks-common/1.x/core-im/json/Extension" + "$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." @@ -72,7 +72,7 @@ "$ref": "/ga4gh/schema/vrs/2.x/json/SequenceLocation" }, { - "$ref": "/ga4gh/schema/gks-common/1.x/core-im/json/IRI" + "$ref": "/ga4gh/schema/gks-core/1.x/json/iriReference" } ], "not": { diff --git a/schema/vrs/json/Allele b/schema/vrs/json/Allele index 18277bf2..06af4268 100644 --- a/schema/vrs/json/Allele +++ b/schema/vrs/json/Allele @@ -3,7 +3,7 @@ "$id": "https://w3id.org/ga4gh/schema/vrs/2.x/json/Allele", "title": "Allele", "type": "object", - "maturity": "draft", + "maturity": "trial use", "ga4ghDigest": { "prefix": "VA", "keys": [ @@ -39,7 +39,7 @@ "type": "array", "ordered": false, "items": { - "$ref": "/ga4gh/schema/gks-common/1.x/core-im/json/Extension" + "$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." @@ -68,7 +68,7 @@ "$ref": "/ga4gh/schema/vrs/2.x/json/SequenceLocation" }, { - "$ref": "/ga4gh/schema/gks-common/1.x/core-im/json/IRI" + "$ref": "/ga4gh/schema/gks-core/1.x/json/iriReference" } ], "description": "The location of the Allele" diff --git a/schema/vrs/json/CisPhasedBlock b/schema/vrs/json/CisPhasedBlock index 10cc7232..d65bbf47 100644 --- a/schema/vrs/json/CisPhasedBlock +++ b/schema/vrs/json/CisPhasedBlock @@ -3,7 +3,7 @@ "$id": "https://w3id.org/ga4gh/schema/vrs/2.x/json/CisPhasedBlock", "title": "CisPhasedBlock", "type": "object", - "maturity": "draft", + "maturity": "trial use", "ga4ghDigest": { "prefix": "CPB", "keys": [ @@ -38,7 +38,7 @@ "type": "array", "ordered": false, "items": { - "$ref": "/ga4gh/schema/gks-common/1.x/core-im/json/Extension" + "$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." @@ -72,7 +72,7 @@ "$ref": "/ga4gh/schema/vrs/2.x/json/Allele" }, { - "$ref": "/ga4gh/schema/gks-common/1.x/core-im/json/IRI" + "$ref": "/ga4gh/schema/gks-core/1.x/json/iriReference" } ] }, diff --git a/schema/vrs/json/CopyNumberChange b/schema/vrs/json/CopyNumberChange index 1c43eccf..38ccdb26 100644 --- a/schema/vrs/json/CopyNumberChange +++ b/schema/vrs/json/CopyNumberChange @@ -39,7 +39,7 @@ "type": "array", "ordered": false, "items": { - "$ref": "/ga4gh/schema/gks-common/1.x/core-im/json/Extension" + "$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." @@ -62,7 +62,7 @@ "$ref": "/ga4gh/schema/vrs/2.x/json/SequenceLocation" }, { - "$ref": "/ga4gh/schema/gks-common/1.x/core-im/json/IRI" + "$ref": "/ga4gh/schema/gks-core/1.x/json/iriReference" } ], "description": "A location for which the number of systemic copies is described." @@ -74,8 +74,8 @@ "description": "MUST be \"CopyNumberChange\"" }, "copyChange": { - "$ref": "/ga4gh/schema/gks-common/1.x/core-im/json/Coding", - "description": "MUST be a Coding representing one of \"EFO:0030069\" (complete genomic loss), \"EFO:0020073\" (high-level loss), \"EFO:0030068\" (low-level loss), \"EFO:0030067\" (loss), \"EFO:0030064\" (regional base ploidy), \"EFO:0030070\" (gain), \"EFO:0030071\" (low-level gain), \"EFO:0030072\" (high-level gain)." + "description": "MUST use a `primaryCode` representing one of \"EFO:0030069\" (complete genomic loss), \"EFO:0020073\" (high-level loss), \"EFO:0030068\" (low-level loss), \"EFO:0030067\" (loss), \"EFO:0030064\" (regional base ploidy), \"EFO:0030070\" (gain), \"EFO:0030071\" (low-level gain), \"EFO:0030072\" (high-level gain).", + "$ref": "/ga4gh/schema/gks-core/1.x/json/MappableConcept" } }, "required": [ diff --git a/schema/vrs/json/CopyNumberCount b/schema/vrs/json/CopyNumberCount index 804c0577..3c4fe1b8 100644 --- a/schema/vrs/json/CopyNumberCount +++ b/schema/vrs/json/CopyNumberCount @@ -39,7 +39,7 @@ "type": "array", "ordered": false, "items": { - "$ref": "/ga4gh/schema/gks-common/1.x/core-im/json/Extension" + "$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." @@ -62,7 +62,7 @@ "$ref": "/ga4gh/schema/vrs/2.x/json/SequenceLocation" }, { - "$ref": "/ga4gh/schema/gks-common/1.x/core-im/json/IRI" + "$ref": "/ga4gh/schema/gks-core/1.x/json/iriReference" } ], "description": "A location for which the number of systemic copies is described." diff --git a/schema/vrs/json/DerivativeMolecule b/schema/vrs/json/DerivativeMolecule index c0c953b6..6dad3b46 100644 --- a/schema/vrs/json/DerivativeMolecule +++ b/schema/vrs/json/DerivativeMolecule @@ -38,7 +38,7 @@ "type": "array", "ordered": false, "items": { - "$ref": "/ga4gh/schema/gks-common/1.x/core-im/json/Extension" + "$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." @@ -80,7 +80,7 @@ "$ref": "/ga4gh/schema/vrs/2.x/json/TraversalBlock" }, { - "$ref": "/ga4gh/schema/gks-common/1.x/core-im/json/IRI" + "$ref": "/ga4gh/schema/gks-core/1.x/json/iriReference" } ] }, diff --git a/schema/vrs/json/Expression b/schema/vrs/json/Expression index fa4776cc..f30b7664 100644 --- a/schema/vrs/json/Expression +++ b/schema/vrs/json/Expression @@ -3,9 +3,22 @@ "$id": "https://w3id.org/ga4gh/schema/vrs/2.x/json/Expression", "title": "Expression", "type": "object", - "maturity": "draft", + "maturity": "trial use", "description": "Representation of a variation by a specified nomenclature or syntax for a Variation object. Common examples of expressions for the description of molecular variation include the HGVS and ISCN nomenclatures.", "properties": { + "id": { + "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." + }, "syntax": { "type": "string", "enum": [ diff --git a/schema/vrs/json/LengthExpression b/schema/vrs/json/LengthExpression index 78fa17da..b3176dc7 100644 --- a/schema/vrs/json/LengthExpression +++ b/schema/vrs/json/LengthExpression @@ -37,7 +37,7 @@ "type": "array", "ordered": false, "items": { - "$ref": "/ga4gh/schema/gks-common/1.x/core-im/json/Extension" + "$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." diff --git a/schema/vrs/json/LiteralSequenceExpression b/schema/vrs/json/LiteralSequenceExpression index 688c4b0f..bd41646c 100644 --- a/schema/vrs/json/LiteralSequenceExpression +++ b/schema/vrs/json/LiteralSequenceExpression @@ -3,7 +3,7 @@ "$id": "https://w3id.org/ga4gh/schema/vrs/2.x/json/LiteralSequenceExpression", "title": "LiteralSequenceExpression", "type": "object", - "maturity": "draft", + "maturity": "trial use", "ga4ghDigest": { "keys": [ "sequence", @@ -37,7 +37,7 @@ "type": "array", "ordered": false, "items": { - "$ref": "/ga4gh/schema/gks-common/1.x/core-im/json/Extension" + "$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." @@ -50,7 +50,7 @@ "default": "LiteralSequenceExpression" }, "sequence": { - "$ref": "/ga4gh/schema/vrs/2.x/json/SequenceString", + "$ref": "/ga4gh/schema/vrs/2.x/json/sequenceString", "description": "the literal sequence" } }, diff --git a/schema/vrs/json/Location b/schema/vrs/json/Location index 46121180..d77f5018 100644 --- a/schema/vrs/json/Location +++ b/schema/vrs/json/Location @@ -3,6 +3,7 @@ "$id": "https://w3id.org/ga4gh/schema/vrs/2.x/json/Location", "title": "Location", "type": "object", + "maturity": "trial use", "description": "A contiguous segment of a biological sequence.", "$ref": "/ga4gh/schema/vrs/2.x/json/SequenceLocation", "discriminator": { diff --git a/schema/vrs/json/MolecularVariation b/schema/vrs/json/MolecularVariation index 9d8076a6..833cdec8 100644 --- a/schema/vrs/json/MolecularVariation +++ b/schema/vrs/json/MolecularVariation @@ -3,6 +3,7 @@ "$id": "https://w3id.org/ga4gh/schema/vrs/2.x/json/MolecularVariation", "title": "MolecularVariation", "type": "object", + "maturity": "trial use", "description": "A variation on a contiguous molecule.", "oneOf": [ { diff --git a/schema/vrs/json/Range b/schema/vrs/json/Range index 5ae7fda1..480140fc 100644 --- a/schema/vrs/json/Range +++ b/schema/vrs/json/Range @@ -3,7 +3,7 @@ "$id": "https://w3id.org/ga4gh/schema/vrs/2.x/json/Range", "title": "Range", "type": "array", - "maturity": "draft", + "maturity": "trial use", "description": "An inclusive range of values bounded by one or more integers.", "ordered": true, "items": { diff --git a/schema/vrs/json/ReferenceLengthExpression b/schema/vrs/json/ReferenceLengthExpression index 07e4d326..0e691b44 100644 --- a/schema/vrs/json/ReferenceLengthExpression +++ b/schema/vrs/json/ReferenceLengthExpression @@ -3,7 +3,7 @@ "$id": "https://w3id.org/ga4gh/schema/vrs/2.x/json/ReferenceLengthExpression", "title": "ReferenceLengthExpression", "type": "object", - "maturity": "draft", + "maturity": "trial use", "ga4ghDigest": { "keys": [ "length", @@ -38,7 +38,7 @@ "type": "array", "ordered": false, "items": { - "$ref": "/ga4gh/schema/gks-common/1.x/core-im/json/Extension" + "$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." @@ -62,7 +62,7 @@ "description": "The number of residues in the expressed sequence." }, "sequence": { - "$ref": "/ga4gh/schema/vrs/2.x/json/SequenceString", + "$ref": "/ga4gh/schema/vrs/2.x/json/sequenceString", "description": "the literal Sequence encoded by the Reference Length Expression." }, "repeatSubunitLength": { diff --git a/schema/vrs/json/SequenceExpression b/schema/vrs/json/SequenceExpression index 28a7b3ef..0634d0f5 100644 --- a/schema/vrs/json/SequenceExpression +++ b/schema/vrs/json/SequenceExpression @@ -3,6 +3,7 @@ "$id": "https://w3id.org/ga4gh/schema/vrs/2.x/json/SequenceExpression", "title": "SequenceExpression", "type": "object", + "maturity": "trial use", "description": "An expression describing a Sequence.", "oneOf": [ { diff --git a/schema/vrs/json/SequenceLocation b/schema/vrs/json/SequenceLocation index fde190c3..f3947274 100644 --- a/schema/vrs/json/SequenceLocation +++ b/schema/vrs/json/SequenceLocation @@ -3,7 +3,7 @@ "$id": "https://w3id.org/ga4gh/schema/vrs/2.x/json/SequenceLocation", "title": "SequenceLocation", "type": "object", - "maturity": "draft", + "maturity": "trial use", "ga4ghDigest": { "keys": [ "end", @@ -40,7 +40,7 @@ "type": "array", "ordered": false, "items": { - "$ref": "/ga4gh/schema/gks-common/1.x/core-im/json/Extension" + "$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." @@ -62,7 +62,7 @@ "$ref": "/ga4gh/schema/vrs/2.x/json/SequenceReference" }, { - "$ref": "/ga4gh/schema/gks-common/1.x/core-im/json/IRI" + "$ref": "/ga4gh/schema/gks-core/1.x/json/iriReference" } ], "description": "A reference to a Sequence on which the location is defined." @@ -91,7 +91,7 @@ }, "sequence": { "description": "The literal sequence encoded by the `sequenceReference` at these coordinates.", - "$ref": "/ga4gh/schema/vrs/2.x/json/SequenceString" + "$ref": "/ga4gh/schema/vrs/2.x/json/sequenceString" } }, "required": [ diff --git a/schema/vrs/json/SequenceReference b/schema/vrs/json/SequenceReference index 49408e42..4fe9ad7a 100644 --- a/schema/vrs/json/SequenceReference +++ b/schema/vrs/json/SequenceReference @@ -3,7 +3,7 @@ "$id": "https://w3id.org/ga4gh/schema/vrs/2.x/json/SequenceReference", "title": "SequenceReference", "type": "object", - "maturity": "draft", + "maturity": "trial use", "ga4ghDigest": { "keys": [ "refgetAccession", @@ -37,7 +37,7 @@ "type": "array", "ordered": false, "items": { - "$ref": "/ga4gh/schema/gks-common/1.x/core-im/json/Extension" + "$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." diff --git a/schema/vrs/json/SystemicVariation b/schema/vrs/json/SystemicVariation index d7e4d617..c3c27550 100644 --- a/schema/vrs/json/SystemicVariation +++ b/schema/vrs/json/SystemicVariation @@ -3,6 +3,7 @@ "$id": "https://w3id.org/ga4gh/schema/vrs/2.x/json/SystemicVariation", "title": "SystemicVariation", "type": "object", + "maturity": "trial use", "description": "A Variation of multiple molecules in the context of a system, e.g. a genome, sample, or homologous chromosomes.", "oneOf": [ { diff --git a/schema/vrs/json/Terminus b/schema/vrs/json/Terminus index b96cde2e..7b5e6288 100644 --- a/schema/vrs/json/Terminus +++ b/schema/vrs/json/Terminus @@ -38,7 +38,7 @@ "type": "array", "ordered": false, "items": { - "$ref": "/ga4gh/schema/gks-common/1.x/core-im/json/Extension" + "$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." @@ -67,7 +67,7 @@ "$ref": "/ga4gh/schema/vrs/2.x/json/SequenceLocation" }, { - "$ref": "/ga4gh/schema/gks-common/1.x/core-im/json/IRI" + "$ref": "/ga4gh/schema/gks-core/1.x/json/iriReference" } ], "description": "The location of the terminus." diff --git a/schema/vrs/json/TraversalBlock b/schema/vrs/json/TraversalBlock index 34609cc5..218b4897 100644 --- a/schema/vrs/json/TraversalBlock +++ b/schema/vrs/json/TraversalBlock @@ -38,7 +38,7 @@ "type": "array", "ordered": false, "items": { - "$ref": "/ga4gh/schema/gks-common/1.x/core-im/json/Extension" + "$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." diff --git a/schema/vrs/json/Variation b/schema/vrs/json/Variation index e0c44080..2baa9db0 100644 --- a/schema/vrs/json/Variation +++ b/schema/vrs/json/Variation @@ -3,6 +3,7 @@ "$id": "https://w3id.org/ga4gh/schema/vrs/2.x/json/Variation", "title": "Variation", "type": "object", + "maturity": "trial use", "description": "A representation of the state of one or more biomolecules.", "oneOf": [ { diff --git a/schema/vrs/json/Residue b/schema/vrs/json/residue similarity index 79% rename from schema/vrs/json/Residue rename to schema/vrs/json/residue index d96de64c..ec8970d8 100644 --- a/schema/vrs/json/Residue +++ b/schema/vrs/json/residue @@ -1,9 +1,9 @@ { "$schema": "https://json-schema.org/draft/2020-12/schema", - "$id": "https://w3id.org/ga4gh/schema/vrs/2.x/json/Residue", - "title": "Residue", + "$id": "https://w3id.org/ga4gh/schema/vrs/2.x/json/residue", + "title": "residue", "type": "string", - "maturity": "draft", + "maturity": "trial use", "description": "A character representing a specific residue (i.e., molecular species) or groupings of these (\"ambiguity codes\"), using [one-letter IUPAC abbreviations](https://en.wikipedia.org/wiki/International_Union_of_Pure_and_Applied_Chemistry#Amino_acid_and_nucleotide_base_codes) for nucleic acids and amino acids.", "pattern": "[A-Z*\\-]" } \ No newline at end of file diff --git a/schema/vrs/json/SequenceString b/schema/vrs/json/sequenceString similarity index 64% rename from schema/vrs/json/SequenceString rename to schema/vrs/json/sequenceString index 40c51588..f449bd6d 100644 --- a/schema/vrs/json/SequenceString +++ b/schema/vrs/json/sequenceString @@ -1,9 +1,9 @@ { "$schema": "https://json-schema.org/draft/2020-12/schema", - "$id": "https://w3id.org/ga4gh/schema/vrs/2.x/json/SequenceString", - "title": "SequenceString", + "$id": "https://w3id.org/ga4gh/schema/vrs/2.x/json/sequenceString", + "title": "sequenceString", "type": "string", - "maturity": "draft", - "description": "A character string of Residues that represents a biological sequence using the conventional sequence order (5\u2019-to-3\u2019 for nucleic acid sequences, and amino-to-carboxyl for amino acid sequences). IUPAC ambiguity codes are permitted in Sequence Strings.", + "maturity": "trial use", + "description": "A character string of residues that represents a biological sequence using the conventional sequence order (5\u2019-to-3\u2019 for nucleic acid sequences, and amino-to-carboxyl for amino acid sequences). IUPAC ambiguity codes are permitted in Sequence Strings.", "pattern": "^[A-Z*\\-]*$" } \ No newline at end of file diff --git a/schema/vrs/vrs-source.yaml b/schema/vrs/vrs-source.yaml index 18fcdca0..ca15c654 100644 --- a/schema/vrs/vrs-source.yaml +++ b/schema/vrs/vrs-source.yaml @@ -1,7 +1,7 @@ # VRS uses yaml as the source document for json schema # # To convert vrs.yaml to vrs.json: -# make vrs.json +# make vrs.jsontype # You'll probably have to `pip install pyyaml` first. # # To watch for changes and update automatically: @@ -15,7 +15,10 @@ type: object strict: true imports: - gks.core-im: ../core-im/core-im-source.yaml + gks-core: ../gks-core/gks-core-source.yaml + +namespaces: + gks.core: /ga4gh/schema/gks-core/1.x/json/ $defs: # VRS definitions are presented top-down. Everything rolls up to @@ -28,7 +31,7 @@ $defs: Ga4ghIdentifiableObject: maturity: trial use - inherits: gks.core-im:Entity + inherits: gks-core:Entity description: >- An object for which a GA4GH computed identifier can be created. ga4ghDigest: @@ -60,6 +63,7 @@ $defs: propertyName: type Expression: + inherits: gks-core:Element type: object maturity: trial use # protectedClassOf: Variation @@ -90,6 +94,7 @@ $defs: MolecularVariation: inherits: Variation + maturity: trial use description: >- A :ref:`variation` on a contiguous molecule. oneOf: @@ -103,6 +108,7 @@ $defs: SystemicVariation: inherits: Variation + maturity: trial use description: >- A Variation of multiple molecules in the context of a system, e.g. a genome, sample, or homologous chromosomes. @@ -140,7 +146,7 @@ $defs: MUST be "Allele" location: oneOf: - - $ref: "/ga4gh/schema/gks-common/1.x/core-im/json/IRI" + - $refCurie: gks.core:iriReference - $ref: "#/$defs/Location" description: >- The location of the Allele @@ -175,7 +181,7 @@ $defs: items: oneOf: - $ref: "#/$defs/Allele" - - $ref: "/ga4gh/schema/gks-common/1.x/core-im/json/IRI" + - $refCurie: gks.core:iriReference description: >- A list of :ref:`Alleles ` that are found in-cis on a shared molecule. sequenceReference: @@ -201,7 +207,7 @@ $defs: heritableProperties: location: oneOf: - - $ref: "/ga4gh/schema/gks-common/1.x/core-im/json/IRI" + - $refCurie: gks.core:iriReference - $ref: "#/$defs/Location" description: >- A location for which the number of systemic copies is described. @@ -252,9 +258,9 @@ $defs: description: >- MUST be "CopyNumberChange" copyChange: - $ref: "/ga4gh/schema/gks-common/1.x/core-im/json/Coding" + $refCurie: gks.core:MappableConcept description: >- - MUST be a :ref:`Coding` representing one of "EFO:0030069" (complete genomic loss), "EFO:0020073" (high-level loss), + MUST use a `primaryCode` representing one of "EFO:0030069" (complete genomic loss), "EFO:0020073" (high-level loss), "EFO:0030068" (low-level loss), "EFO:0030067" (loss), "EFO:0030064" (regional base ploidy), "EFO:0030070" (gain), "EFO:0030071" (low-level gain), "EFO:0030072" (high-level gain). required: [ "copyChange" ] @@ -264,6 +270,7 @@ $defs: Location: inherits: Ga4ghIdentifiableObject + maturity: trial use description: >- A contiguous segment of a biological sequence. $ref: "#/$defs/SequenceLocation" @@ -290,7 +297,7 @@ $defs: description: MUST be "SequenceLocation" sequenceReference: oneOf: - - $ref: "/ga4gh/schema/gks-common/1.x/core-im/json/IRI" + - $refCurie: gks.core:iriReference - $ref: "#/$defs/SequenceReference" description: A reference to a :ref:`Sequence` on which the location is defined. start: @@ -312,11 +319,11 @@ $defs: sequence: description: >- The literal sequence encoded by the `sequenceReference` at these coordinates. - $ref: "#/$defs/SequenceString" + $ref: "#/$defs/sequenceString" SequenceReference: maturity: trial use - inherits: gks.core-im:Entity + inherits: gks-core:Entity ga4ghDigest: keys: - refgetAccession @@ -370,7 +377,7 @@ $defs: SequenceExpression: maturity: trial use - inherits: gks.core-im:Entity + inherits: gks-core:Entity ga4ghDigest: keys: - type @@ -413,7 +420,7 @@ $defs: - $ref: "#/$defs/Range" description: The number of residues in the expressed sequence. sequence: - $ref: "#/$defs/SequenceString" + $ref: "#/$defs/sequenceString" description: the literal :ref:`Sequence` encoded by the Reference Length Expression. repeatSubunitLength: type: integer @@ -457,7 +464,7 @@ $defs: default: "LiteralSequenceExpression" description: MUST be "LiteralSequenceExpression" sequence: - $ref: "#/$defs/SequenceString" + $ref: "#/$defs/sequenceString" description: the literal sequence required: - sequence @@ -477,7 +484,7 @@ $defs: maxItems: 2 minItems: 2 - Residue: + residue: maturity: trial use description: >- A character representing a specific residue (i.e., molecular species) @@ -487,10 +494,10 @@ $defs: type: string pattern: '[A-Z*\-]' - SequenceString: + sequenceString: maturity: trial use description: >- - A character string of :ref:`Residues ` that represents a biological + A character string of :ref:`residues ` that represents a biological sequence using the conventional sequence order (5’-to-3’ for nucleic acid sequences, and amino-to-carboxyl for amino acid sequences). IUPAC ambiguity codes are permitted in Sequence Strings. @@ -529,7 +536,7 @@ $defs: ordered: true items: oneOf: - - $ref: "/ga4gh/schema/gks-common/1.x/core-im/json/IRI" + - $refCurie: gks.core:iriReference - $ref: "#/$defs/Location" not: required: ["start", "end"] @@ -568,7 +575,7 @@ $defs: description: MUST be "Terminus". location: oneOf: - - $ref: "/ga4gh/schema/gks-common/1.x/core-im/json/IRI" + - $refCurie: gks.core:iriReference - $ref: "#/$defs/Location" description: The location of the terminus. required: @@ -597,7 +604,7 @@ $defs: ordered: true items: oneOf: - - $ref: "/ga4gh/schema/gks-common/1.x/core-im/json/IRI" + - $refCurie: gks.core:iriReference - $ref: "#/$defs/Allele" - $ref: "#/$defs/CisPhasedBlock" - $ref: "#/$defs/Terminus" @@ -614,7 +621,7 @@ $defs: TraversalBlock: maturity: draft - inherits: gks.core-im:Entity + inherits: gks-core:Entity type: object # protectedClassOf: DerivativeMolecule ga4ghDigest: diff --git a/submodules/gks-common b/submodules/gks-common deleted file mode 160000 index 40b7d664..00000000 --- a/submodules/gks-common +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 40b7d664ca468ac5caa381731f9bb9c06350e56c diff --git a/submodules/gks-core b/submodules/gks-core new file mode 160000 index 00000000..fb04396a --- /dev/null +++ b/submodules/gks-core @@ -0,0 +1 @@ +Subproject commit fb04396a86e4d9be76621e167b6a36b2c44d7c30