diff --git a/.deprecated_files b/.deprecated_files index af2a4cf8..1fc91256 100644 --- a/.deprecated_files +++ b/.deprecated_files @@ -10,6 +10,7 @@ .github/workflows/check_mandatory_and_static_files.yaml .github/workflows/dev_cd.yaml .github/workflows/unit_and_int_tests.yaml +.github/workflows/cd.yaml scripts/check_mandatory_and_static_files.py scripts/update_static_files.py diff --git a/.description.md b/.description.md deleted file mode 100644 index d5ad755f..00000000 --- a/.description.md +++ /dev/null @@ -1,47 +0,0 @@ - - -### Scope and Features: - -Metldata is a framework for handling the entire lifetime of metadata by addressing the -a complex combination of challenges that makes it suitable especially for public -archives for sensitive data: - -![Schematic reprensentation of challenges.](./images/challenges.png) -**Figure 1| Overview of the combination of challenges during metadata handling.** - -#### Immutability -It is guaranteed that data entries do not change over time making reproducibility -possible without having to rely on local snapshots. - -#### Accessibility -A stable accession is assigned to each resource. Together with the immutability -property, this guarantees that you will always get the same data when querying with the -same accession. - -#### Corrections, Improvements, Extensions - -Even though data is stored in an immutable way, the metldata still allows for -corrections, improvements, and extensions of submitted data. This is achieved my not -just storing the current state of a submission but by persisting a version history. -Thereby, modifications are realized by issuing a new version of the submission without -affecting the content of existing versions. - -#### Transparency - -The version history not only resolved the conflict between immutability and the need to -evolve and adapt data, it also make the changes transparent to user relying on the data. - -#### Multiple Representations - -Often, the requirements regarding the structure and content of data differs depending -the use case and the audience. Metldata accounts for this by proving a configurable -workflow engine for transforming submitted metadata into multiple representation of that -data. - -#### GDPR Compliance - -The GDPR gives data subjects the right to issue a request to delete data. Metldata -complies with this demand. Thereby, only entire versions of a submission can be deleted. -The associated accessions stay available so that user are informed that the associated -data is not available anymore. The guarantees for immutability and stability of -accessions are not violated, however, data might become unavailable. diff --git a/.design.md b/.design.md deleted file mode 100644 index 250ec11f..00000000 --- a/.design.md +++ /dev/null @@ -1,157 +0,0 @@ - - -The framework uses a combination of ETL, CQRS, and event sourcing. Currently it is -designed to mostly run as a CLI application for managing metadata on the local file -system. However, later, it will be translated into a microservice based-architecture. - -### One Write and Multiple Read Representations - -Instead of having just a single copy of metadata in a database that -supports all CRUD actions needed by all the different user groups, we -propose to follow the CQRS pattern by having one representation that is -optimized for write operations and multiple use case-specific -representations for querying metadata. Thereby, the write-specific -representation is the source of truth and fuels all read-specific -representations through an ETL process. In the following, the -read-specific representations are also referred to as artifacts. - -This setup with one write and multiple read representation has the -following advantages: - -- Different subsets of the entire metadata catalog can be prepared - with the needs and the permissions of different user audiences in - mind. -- It allows for independent scalability of read and write operations. -- The metadata can be packaged in multiple different formats required - and optimized for different technologies and use cases, such as - indexed searching with ElasticSearch vs. REST or GraphQL queries - supported by MongoDB. -- Complex write-optimized representations, which are inconvenient for - querying such as event histories, can be used as the source of - truth. -- Often used metadata aggregations and summary statistics can be - precomputed. -- Read-specific representations may contain rich annotations that are - not immediately available in the write-specific representation. For - instance, the write-specific representation may only contain one-way - relationships between metadata elements (e.g. a sample might define - a `has_experiment` attribute, while an experiment defines no - `has_sample` attribute), however, a read-specific representation may - contain two way relationships (e.g. a sample defines a - `has_experiment` attribute and an experiment defines a `has_sample` - attribute). - -However, there are also disadvantages that are linked to this setup that -should be considered: - -- The write and read representations are only eventually consistent. -- Adds more complexity than a CRUD setup. - -### Submission-centric Store as The Source of Truth - -In the write-specific representation, metadata is packaged into -submissions. Each submission is fully self-contained and linking between -metadata of different submissions is not possible. A submission can have -one of the following statuses: - -- pending - the construction of the submission is in progress, the - submitter may still change its content. -- in-review - the submitter declared the submission as complete and is - waiting for it to be reviewed, however, both the submitter and the - reviewer can set this submission back to pending to enable further - changes. -- canceled - the submission was canceled before its completion, its - content was deleted. -- completed - the submission has been reviewed and approved, the - content of the submission is frozen, and accessions are generated - for all relevant metadata elements. -- deprecated-prepublication - the submission was deprecated and it - cannot be published anymore, however, its content is not deleted - from the system. -- emptied-prepublication - the submission was deprecated and its - content was deleted from the system, however, the accessions are not - deleted. -- published - the submission was made available to other users. -- deprecated-postpublication - the submission was deprecated and it - should not be used anymore, however, its content stays available to - other users. -- hidden-postpublication - the submission was deprecated and its - content is hidden from other users but it is not deleted from the - system, the accessions stay available, the submission can be set to - deprecated to make its content available again. -- emptied-postpublication - the submission was deprecated and its - content was deleted from the system, however, the accessions stay - available. - -The following status transitions are allowed: - -- pending -\> in-review -- pending -\> canceled -- in-review -\> completed -- in-review -\> canceled -- in-review -\> pending -- completed -\> published -- completed -\> deprecated-prepublication -- completed -\> emptied-prepublication -- deprecated-prepublication -\> emptied-prepublication -- published -\> deprecated-postpublication -- published -\> hidden-postpublication -- published -\> emptied-postpublication -- deprecated-postpublication -\> hidden-postpublication -- deprecated-postpublication -\> emptied-postpublication -- hidden-postpublication -\> deprecated-postpublication -- hidden-postpublication -\> emptied-postpublication - -A deprecated submission may or may not be succeeded by a new submission. -Thereby, the new submission may reuse (a part of) the metadata from the -deprecated submission. The reused metadata including the already -existing accessions is copied over to the new submission so that the -contents of the deprecated submission and the new submission can be -handled independently, for instance, the deprecated submission being -emptied. - -### Event Sourcing to Generate Artifacts - -To implement the ETL processes that generate read-specific artifacts -from the write-specific representation explained above, we propose an -event-sourcing mechanism. - -The creation and each status change of a given submission (and -accommodating changes to the submission\'s content) are translated into -events. The events are cumulative and idempotent so you only have to -consume the latest event for a given submission in order to get the -latest state of that submission and a replay of the events will lead to -the same result. Thus, the event history only needs to keep the latest -event for each submission as implemented in the compacted topics offered -by Apache Kafka. - -Moreover, since submissions are self-contained and do not depend on the -content of other submissions, events of different submissions can be -processed independently. - -Multiple transformations (as in the ETL pattern) are applied to these -so-called source events to generate altered metadata representations -that are in turn published as events. These derived events can be again -subjected to further transformations. - -Finally, the derived events are subject to load operations (as in the -ETL pattern) that aggregate the events and bring them into queryable -format (an artifact) that is accessible to users through an API. - -### Metadata Modeling and Model Updates - -Metadata requirements are modeled using LinkML. Thereby, the metadata -model should take the whole metadata lifecycle into account so that it -can be used to validate metadata before and after the submission as well -as for all derived artifacts. - -Updates to the metadata model are classified into minor and major ones. -For minor updates, existing submissions are automatically migrated. The -submission always stores metadata together with the used metadata model. -The migration is realized through scripts that migrate metadata from an -old version to a newer version. Multiple migration scripts may be -combined to obtain a metadata representation that complies with the -newest version. The migration can be implemented as a transformation -that is applied to the source events as explained above. diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 89ff58f8..c49da2b5 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -25,12 +25,16 @@ ], "python.testing.unittestEnabled": false, "python.testing.pytestEnabled": true, + "editor.codeActionsOnSave": { + "source.organizeImports": true + }, "editor.formatOnSave": true, "editor.renderWhitespace": "all", "editor.rulers": [ 88 ], - "editor.defaultFormatter": "ms-python.black-formatter", + "ruff.organizeImports": true, + "editor.defaultFormatter": "charliermarsh.ruff", "licenser.license": "Custom", "licenser.customHeaderFile": "/workspace/.devcontainer/license_header.txt" }, @@ -52,7 +56,6 @@ "visualstudioexptteam.vscodeintellicode", "ymotongpoo.licenser", "charliermarsh.ruff", - "ms-python.black-formatter", "ms-python.mypy-type-checker" ] } diff --git a/.github/workflows/cd.yaml b/.github/workflows/cd.yaml deleted file mode 100644 index b621db7b..00000000 --- a/.github/workflows/cd.yaml +++ /dev/null @@ -1,120 +0,0 @@ -name: CD - -on: - release: - types: [published] - # trigger only on new release - -jobs: - verify_version: - runs-on: ubuntu-latest - outputs: - # export to be used in other jobs - version: ${{ steps.get_version_tag.outputs.version }} - steps: - - uses: actions/checkout@v3 - name: Check out code - - - uses: actions/setup-python@v4 - name: Set up Python 3.9 - with: - python-version: "3.9" - - - id: get_version_tag - name: Get version tag - run: | - TAG_VER="${GITHUB_REF##*/}" - # set as output: - echo "version: ${TAG_VER}" - echo "version=${TAG_VER}" >> $GITHUB_OUTPUT - - - id: verify_semantic_tag_format - name: Verify tag format - # format must be compatible with semantic versioning - run: | - SEMVER_REGEX="^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$" - if echo "${{ steps.get_version_tag.outputs.version }}" | grep -Eq "$SEMVER_REGEX"; then - echo "Tag format is valid" - else - echo "Invalid tag format: ${{ steps.get_version_tag.outputs.version }}" - exit 1 - fi - - - id: verify_package_version - name: Verify package version vs tag version - # package version must be same with tag version - run: | - PKG_VER="$(grep -oP 'version = \"\K[^\"]+' pyproject.toml)" - echo "Package version is $PKG_VER" >&2 - echo "Tag version is ${{ steps.get_version_tag.outputs.version }}" >&2 - if [ "$PKG_VER" != "${{ steps.get_version_tag.outputs.version }}" ]; then - echo "Package version and tag name mismatch." >&2 - exit 1 - fi - - push_to_docker_hub: - runs-on: ubuntu-latest - needs: verify_version - steps: - - uses: actions/checkout@v3 - name: Check out code - - - uses: docker/setup-qemu-action@v2.0.0 - name: Set up QEMU - - - uses: docker/setup-buildx-action@v2.5.0 - name: Set up Docker Buildx - - - uses: docker/login-action@v2.1.0 - name: Login to DockerHub - with: - username: ${{ secrets.DOCKERHUB_USERNAME }} - password: ${{ secrets.DOCKERHUB_TOKEN }} - - - uses: docker/build-push-action@v4.0.0 - name: Build and push - id: docker_build - with: - push: true - platforms: linux/amd64,linux/arm64/v8 - tags: "ghga/${{ github.event.repository.name }}:${{ needs.verify_version.outputs.version }}" - - - name: Run Trivy vulnerability scanner - uses: aquasecurity/trivy-action@master - with: - image-ref: "docker.io/ghga/${{ github.event.repository.name }}:${{ needs.verify_version.outputs.version }}" - format: "table" - exit-code: "1" - ignore-unfixed: true - vuln-type: "os,library" - severity: "CRITICAL,HIGH" - - - name: Image digest - run: echo ${{ steps.docker_build.outputs.digest }} - - # Please uncomment and adapt the DEPLOYMENT_CONFIG_REPO to trigger automatic - # updates of helm charts: - update_deployment_repo: - runs-on: ubuntu-latest - needs: - - verify_version - - push_to_docker_hub - env: - DEPLOYMENT_CONFIG_REPO: ghga-de/helm - steps: - - name: trigger update in deployment repo - run: | - # access token needs to be of format: : - curl -X POST \ - "https://api.github.com/repos/${DEPLOYMENT_CONFIG_REPO}/dispatches" \ - -H 'Accept: application/vnd.github.everest-preview+json' \ - -u '${{ secrets.DEPLOYMENT_UPDATE_TOKEN }}' \ - --data '{ - "event_type": "new_app_version", - "client_payload": { - "deploy_filename": "${{ github.event.repository.name }}", - "app_name": "${{ github.event.repository.name }}", - "context": "${{ needs.verify_version.outputs.version }}", - "new_image_tag": "${{ needs.verify_version.outputs.version }}" - } - }' diff --git a/.github/workflows/check_config_docs.yaml b/.github/workflows/check_config_docs.yaml deleted file mode 100644 index f863f80b..00000000 --- a/.github/workflows/check_config_docs.yaml +++ /dev/null @@ -1,18 +0,0 @@ -name: Check if the config schema and the example are up to date. - -on: push - -jobs: - static-code-analysis: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - - id: common - uses: ghga-de/gh-action-common@v3 - - - name: Check config docs - run: | - export ${{ steps.common.outputs.CONFIG_YAML_ENV_VAR_NAME }}="${{ steps.common.outputs.CONFIG_YAML }}" - - ./scripts/update_config_docs.py --check diff --git a/.github/workflows/check_readme.yaml b/.github/workflows/check_readme.yaml deleted file mode 100644 index 9f400d23..00000000 --- a/.github/workflows/check_readme.yaml +++ /dev/null @@ -1,16 +0,0 @@ -name: Check if the readme is up to date. - -on: push - -jobs: - static-code-analysis: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - - id: common - uses: ghga-de/gh-action-common@v3 - - - name: Check readme - run: | - ./scripts/update_readme.py --check diff --git a/.github/workflows/static_code_analysis.yaml b/.github/workflows/static_code_analysis.yaml index 401f4289..39b9bad4 100644 --- a/.github/workflows/static_code_analysis.yaml +++ b/.github/workflows/static_code_analysis.yaml @@ -16,10 +16,9 @@ jobs: env: SKIP: no-commit-to-branch - name: ruff - uses: chartboost/ruff-action@v1 - - name: black run: | - black --check . + ruff check --output-format=github . + ruff format --check . - name: mypy run: | mypy . diff --git a/.mandatory_files_ignore b/.mandatory_files_ignore index 9b07d9ec..853cb5e6 100644 --- a/.mandatory_files_ignore +++ b/.mandatory_files_ignore @@ -3,3 +3,7 @@ .github/workflows/dev_cd.yaml scripts/script_utils/fastapi_app_location.py +.description.md +.design.md +config_schema.json +example_config.yaml diff --git a/.readme_template.md b/.readme_template.md deleted file mode 100644 index 10e3e612..00000000 --- a/.readme_template.md +++ /dev/null @@ -1,114 +0,0 @@ - -[![tests](https://github.com/ghga-de/$name/actions/workflows/tests.yaml/badge.svg)](https://github.com/ghga-de/$name/actions/workflows/tests.yaml) -[![Coverage Status](https://coveralls.io/repos/github/ghga-de/$name/badge.svg?branch=main)](https://coveralls.io/github/ghga-de/$name?branch=main) - -# $title - -$summary - -## Description - -$description - -## Installation - -We recommend using the provided Docker container. - -A pre-build version is available at [docker hub](https://hub.docker.com/repository/docker/ghga/$name): -```bash -docker pull ghga/$name:$version -``` - -Or you can build the container yourself from the [`./Dockerfile`](./Dockerfile): -```bash -# Execute in the repo's root dir: -docker build -t ghga/$name:$version . -``` - -For production-ready deployment, we recommend using Kubernetes, however, -for simple use cases, you could execute the service using docker -on a single server: -```bash -# The entrypoint is preconfigured: -docker run -p 8080:8080 ghga/$name:$version --help -``` - -If you prefer not to use containers, you may install the service from source: -```bash -# Execute in the repo's root dir: -pip install . - -# To run the service: -$shortname --help -``` - -## Configuration - -### Parameters - -The service requires the following configuration parameters: -$config_description - -### Usage: - -A template YAML for configurating the service can be found at -[`./example-config.yaml`](./example-config.yaml). -Please adapt it, rename it to `.$shortname.yaml`, and place it into one of the following locations: -- in the current working directory were you are execute the service (on unix: `./.$shortname.yaml`) -- in your home directory (on unix: `~/.$shortname.yaml`) - -The config yaml will be automatically parsed by the service. - -**Important: If you are using containers, the locations refer to paths within the container.** - -All parameters mentioned in the [`./example-config.yaml`](./example-config.yaml) -could also be set using environment variables or file secrets. - -For naming the environment variables, just prefix the parameter name with `${shortname}_`, -e.g. for the `host` set an environment variable named `${shortname}_host` -(you may use both upper or lower cases, however, it is standard to define all env -variables in upper cases). - -To using file secrets please refer to the -[corresponding section](https://pydantic-docs.helpmanual.io/usage/settings/#secret-support) -of the pydantic documentation. - -$openapi_doc - -## Architecture and Design: -$design_description - -## Development - -For setting up the development environment, we rely on the -[devcontainer feature](https://code.visualstudio.com/docs/remote/containers) of VS Code -in combination with Docker Compose. - -To use it, you have to have Docker Compose as well as VS Code with its "Remote - Containers" -extension (`ms-vscode-remote.remote-containers`) installed. -Then open this repository in VS Code and run the command -`Remote-Containers: Reopen in Container` from the VS Code "Command Palette". - -This will give you a full-fledged, pre-configured development environment including: -- infrastructural dependencies of the service (databases, etc.) -- all relevant VS Code extensions pre-installed -- pre-configured linting and auto-formatting -- a pre-configured debugger -- automatic license-header insertion - -Moreover, inside the devcontainer, a convenience commands `dev_install` is available. -It installs the service with all development dependencies, installs pre-commit. - -The installation is performed automatically when you build the devcontainer. However, -if you update dependencies in the [`./pyproject.toml`](./pyproject.toml) or the -[`./requirements-dev.txt`](./requirements-dev.txt), please run it again. - -## License - -This repository is free to use and modify according to the -[Apache 2.0 License](./LICENSE). - -## README Generation - -This README file is auto-generated, please see [`readme_generation.md`](./readme_generation.md) -for details. diff --git a/.static_files b/.static_files index 5f035a96..1f129ea4 100644 --- a/.static_files +++ b/.static_files @@ -30,12 +30,13 @@ scripts/list_outdated_dependencies.py scripts/README.md .github/workflows/check_config_docs.yaml +.github/workflows/check_openapi_spec.yaml +.github/workflows/check_readme.yaml .github/workflows/check_template_files.yaml +.github/workflows/ci_release.yaml +.github/workflows/ci_workflow_dispatch.yaml .github/workflows/static_code_analysis.yaml .github/workflows/tests.yaml -.github/workflows/check_openapi_spec.yaml -.github/workflows/check_readme.yaml -.github/workflows/cd.yaml example_data/README.md diff --git a/.static_files_ignore b/.static_files_ignore index 9a7fbc05..e438ba80 100644 --- a/.static_files_ignore +++ b/.static_files_ignore @@ -3,9 +3,17 @@ scripts/script_utils/fastapi_app_location.py scripts/update_openapi_docs.py +scripts/update_config_docs.py +scripts/update_readme.py .github/workflows/check_openapi_spec.yaml +.github/workflows/check_config_docs.yaml +.github/workflows/check_readme.yaml .github/workflows/cd.yaml +.github/workflows/ci_release.yaml +.github/workflows/ci_workflow_dispatch.yaml .pre-commit-config.yaml .ruff.toml +.readme_template.md +readme_generation.md diff --git a/README.md b/README.md index 266d81b2..c95b3399 100644 --- a/README.md +++ b/README.md @@ -8,8 +8,6 @@ metldata - A framework for handling metadata based on ETL, CQRS, and event sourc ## Description - - ### Scope and Features: Metldata is a framework for handling the entire lifetime of metadata by addressing the @@ -56,309 +54,6 @@ The associated accessions stay available so that user are informed that the asso data is not available anymore. The guarantees for immutability and stability of accessions are not violated, however, data might become unavailable. - -## Installation - -We recommend using the provided Docker container. - -A pre-build version is available at [docker hub](https://hub.docker.com/repository/docker/ghga/metldata): -```bash -docker pull ghga/metldata:1.0.0 -``` - -Or you can build the container yourself from the [`./Dockerfile`](./Dockerfile): -```bash -# Execute in the repo's root dir: -docker build -t ghga/metldata:1.0.0 . -``` - -For production-ready deployment, we recommend using Kubernetes, however, -for simple use cases, you could execute the service using docker -on a single server: -```bash -# The entrypoint is preconfigured: -docker run -p 8080:8080 ghga/metldata:1.0.0 --help -``` - -If you prefer not to use containers, you may install the service from source: -```bash -# Execute in the repo's root dir: -pip install . - -# To run the service: -metldata --help -``` - -## Configuration - -### Parameters - -The service requires the following configuration parameters: -- **`db_connection_str`** *(string, format: password)*: MongoDB connection string. Might include credentials. For more information see: https://naiveskill.com/mongodb-connection-string/. - - - Examples: - - ```json - "mongodb://localhost:27017" - ``` - - -- **`db_name`** *(string)*: Name of the database located on the MongoDB server. - - - Examples: - - ```json - "my-database" - ``` - - -- **`service_name`** *(string)*: Default: `"metldata"`. - -- **`service_instance_id`** *(string)*: A string that uniquely identifies this instance across all instances of this service. A globally unique Kafka client ID will be created by concatenating the service_name and the service_instance_id. - - - Examples: - - ```json - "germany-bw-instance-001" - ``` - - -- **`kafka_servers`** *(array)*: A list of connection strings to connect to Kafka bootstrap servers. - - - **Items** *(string)* - - - Examples: - - ```json - [ - "localhost:9092" - ] - ``` - - -- **`kafka_security_protocol`** *(string)*: Protocol used to communicate with brokers. Valid values are: PLAINTEXT, SSL. Must be one of: `["PLAINTEXT", "SSL"]`. Default: `"PLAINTEXT"`. - -- **`kafka_ssl_cafile`** *(string)*: Certificate Authority file path containing certificates used to sign broker certificates. If a CA not specified, the default system CA will be used if found by OpenSSL. Default: `""`. - -- **`kafka_ssl_certfile`** *(string)*: Optional filename of client certificate, as well as any CA certificates needed to establish the certificate's authenticity. Default: `""`. - -- **`kafka_ssl_keyfile`** *(string)*: Optional filename containing the client private key. Default: `""`. - -- **`kafka_ssl_password`** *(string)*: Optional password to be used for the client private key. Default: `""`. - -- **`primary_artifact_name`** *(string)*: Name of the artifact from which the information for outgoing change events is derived. - - - Examples: - - ```json - "embedded_public" - ``` - - -- **`primary_dataset_name`** *(string)*: Name of the resource class corresponding to the embedded_dataset slot. - - - Examples: - - ```json - "EmbeddedDataset" - ``` - - -- **`resource_change_event_topic`** *(string)*: Name of the topic used for events informing other services about resource changes, i.e. deletion or insertion. - - - Examples: - - ```json - "searchable_resources" - ``` - - -- **`resource_deletion_event_type`** *(string)*: Type used for events indicating the deletion of a previously existing resource. - - - Examples: - - ```json - "searchable_resource_deleted" - ``` - - -- **`resource_upsertion_type`** *(string)*: Type used for events indicating the upsert of a resource. - - - Examples: - - ```json - "searchable_resource_upserted" - ``` - - -- **`dataset_change_event_topic`** *(string)*: Name of the topic announcing, among other things, the list of files included in a new dataset. - - - Examples: - - ```json - "metadata_datasets" - ``` - - -- **`dataset_deletion_type`** *(string)*: Type used for events announcing a new dataset overview. - - - Examples: - - ```json - "dataset_deleted" - ``` - - -- **`dataset_upsertion_type`** *(string)*: Type used for events announcing a new dataset overview. - - - Examples: - - ```json - "dataset_created" - ``` - - -- **`host`** *(string)*: IP of the host. Default: `"127.0.0.1"`. - -- **`port`** *(integer)*: Port to expose the server on the specified host. Default: `8080`. - -- **`log_level`** *(string)*: Controls the verbosity of the log. Must be one of: `["critical", "error", "warning", "info", "debug", "trace"]`. Default: `"info"`. - -- **`auto_reload`** *(boolean)*: A development feature. Set to `True` to automatically reload the server upon code changes. Default: `false`. - -- **`workers`** *(integer)*: Number of workers processes to run. Default: `1`. - -- **`api_root_path`** *(string)*: Root path at which the API is reachable. This is relative to the specified host and port. Default: `"/"`. - -- **`openapi_url`** *(string)*: Path to get the openapi specification in JSON format. This is relative to the specified host and port. Default: `"/openapi.json"`. - -- **`docs_url`** *(string)*: Path to host the swagger documentation. This is relative to the specified host and port. Default: `"/docs"`. - -- **`cors_allowed_origins`**: A list of origins that should be permitted to make cross-origin requests. By default, cross-origin requests are not allowed. You can use ['*'] to allow any origin. Default: `null`. - - - **Any of** - - - *array* - - - **Items** *(string)* - - - *null* - - - Examples: - - ```json - [ - "https://example.org", - "https://www.example.org" - ] - ``` - - -- **`cors_allow_credentials`**: Indicate that cookies should be supported for cross-origin requests. Defaults to False. Also, cors_allowed_origins cannot be set to ['*'] for credentials to be allowed. The origins must be explicitly specified. Default: `null`. - - - **Any of** - - - *boolean* - - - *null* - - - Examples: - - ```json - [ - "https://example.org", - "https://www.example.org" - ] - ``` - - -- **`cors_allowed_methods`**: A list of HTTP methods that should be allowed for cross-origin requests. Defaults to ['GET']. You can use ['*'] to allow all standard methods. Default: `null`. - - - **Any of** - - - *array* - - - **Items** *(string)* - - - *null* - - - Examples: - - ```json - [ - "*" - ] - ``` - - -- **`cors_allowed_headers`**: A list of HTTP request headers that should be supported for cross-origin requests. Defaults to []. You can use ['*'] to allow all headers. The Accept, Accept-Language, Content-Language and Content-Type headers are always allowed for CORS requests. Default: `null`. - - - **Any of** - - - *array* - - - **Items** *(string)* - - - *null* - - - Examples: - - ```json - [] - ``` - - -- **`artifact_infos`** *(array)*: Information for artifacts to be queryable via the Artifacts REST API. - - - **Items**: Refer to *[#/$defs/ArtifactInfo](#$defs/ArtifactInfo)*. - -- **`loader_token_hashes`** *(array)*: Hashes of tokens used to authenticate for loading artifact. - - - **Items** *(string)* - - -### Usage: - -A template YAML for configurating the service can be found at -[`./example-config.yaml`](./example-config.yaml). -Please adapt it, rename it to `.metldata.yaml`, and place it into one of the following locations: -- in the current working directory were you are execute the service (on unix: `./.metldata.yaml`) -- in your home directory (on unix: `~/.metldata.yaml`) - -The config yaml will be automatically parsed by the service. - -**Important: If you are using containers, the locations refer to paths within the container.** - -All parameters mentioned in the [`./example-config.yaml`](./example-config.yaml) -could also be set using environment variables or file secrets. - -For naming the environment variables, just prefix the parameter name with `metldata_`, -e.g. for the `host` set an environment variable named `metldata_host` -(you may use both upper or lower cases, however, it is standard to define all env -variables in upper cases). - -To using file secrets please refer to the -[corresponding section](https://pydantic-docs.helpmanual.io/usage/settings/#secret-support) -of the pydantic documentation. - - - ## Architecture and Design: - -# Readme Generation - -The README file is generated by collecting information from different sources as -outlined in the following. - -- name: The full name of the package is derived from the remote origin Git repository. -- title: A title case representation of the name. -- shortname: An abbreviation of the full name. This is derived from the name mentioned - in the [`./pyproject.toml`](./pyproject.toml). -- summary: A short 1-2 sentence summary derived from the description in the - [`./pyproject.toml`](./pyproject.toml). -- version: The package version derived from the version specified in the - [`./pyproject.toml`](./pyproject.toml). -- description: A markdown-formatted description of the features and use cases of this - service or package. Obtained from the [`./.description.md`](./.description.md). -- design_description: A markdown-formatted description of the overall architecture and - design of the package. Obtained from the [`./.design.md`](./.design.md). -- config_description: A markdown-formatted description of all config parameters. - This is autogenerated from the [`./config_schema.json`](./config_schema.json). -- openapi_doc: A markdown-formatted description of the HTTP API. This is autogenerated - and links to the [`./openapi.yaml`](./openapi.yaml). If the openapi.yaml is not - this documentation is empty. - -The [`./.readme_template.md`](./.readme_template.md) serves as a template where the -above variable can be filled in using Pythons `string.Template` utility from the -standard library. - -The [`./scripts/update_readme.py`] script can be used to collect all information and -fill it into the template to generate the README file. diff --git a/requirements-dev-common.in b/requirements-dev-common.in index 1c677cd3..c756c9ad 100644 --- a/requirements-dev-common.in +++ b/requirements-dev-common.in @@ -13,8 +13,6 @@ mypy-extensions>=1.0.0 ruff>=0.0.290 -black>=23.1.0 - click>=8.1.0 typer>=0.7.0 diff --git a/scripts/list_outdated_dependencies.py b/scripts/list_outdated_dependencies.py index 1aa15a13..db91fe05 100755 --- a/scripts/list_outdated_dependencies.py +++ b/scripts/list_outdated_dependencies.py @@ -51,7 +51,7 @@ def get_main_deps_pyproject(modified_pyproject: dict[str, Any]) -> list[Requirem def get_optional_deps_pyproject( - modified_pyproject: dict[str, Any] + modified_pyproject: dict[str, Any], ) -> list[Requirement]: """Get a list of the optional dependencies from pyproject.toml""" diff --git a/scripts/update_config_docs.py b/scripts/update_config_docs.py deleted file mode 100755 index 90c12081..00000000 --- a/scripts/update_config_docs.py +++ /dev/null @@ -1,160 +0,0 @@ -#!/usr/bin/env python3 - -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Generates a JSON schema from the service's Config class as well as a corresponding -example config yaml (or check whether these files are up to date). -""" - -import importlib -import json -import subprocess -import sys -from difflib import unified_diff -from pathlib import Path -from typing import Any - -import yaml - -from script_utils.cli import echo_failure, echo_success, run - -HERE = Path(__file__).parent.resolve() -REPO_ROOT_DIR = HERE.parent -DEV_CONFIG_YAML = REPO_ROOT_DIR / ".devcontainer" / ".dev_config.yaml" -GET_PACKAGE_NAME_SCRIPT = HERE / "get_package_name.py" -EXAMPLE_CONFIG_YAML = REPO_ROOT_DIR / "example_config.yaml" -CONFIG_SCHEMA_JSON = REPO_ROOT_DIR / "config_schema.json" - - -class ValidationError(RuntimeError): - """Raised when validation of config documentation fails.""" - - -def get_config_class(): - """ - Dynamically imports and returns the Config class from the current service. - This makes the script service repo agnostic. - """ - # get the name of the microservice package - with subprocess.Popen( - args=[GET_PACKAGE_NAME_SCRIPT], - stdout=subprocess.PIPE, - stderr=subprocess.DEVNULL, - ) as process: - assert ( - process.wait() == 0 and process.stdout is not None - ), "Failed to get package name." - package_name = process.stdout.read().decode("utf-8").strip("\n") - - # import the Config class from the microservice package: - config_module: Any = importlib.import_module(f"{package_name}.config") - config_class = config_module.Config - - return config_class - - -def get_dev_config(): - """Get dev config object.""" - config_class = get_config_class() - return config_class(config_yaml=DEV_CONFIG_YAML) - - -def get_schema() -> str: - """Returns a JSON schema generated from a Config class.""" - - config = get_dev_config() - return config.schema_json(indent=2) # change eventually to .model_json_schema(...) - - -def get_example() -> str: - """Returns an example config YAML.""" - - config = get_dev_config() - normalized_config_dict = json.loads( - config.json() # change eventually to .model_dump_json() - ) - return yaml.dump(normalized_config_dict) # pyright: ignore - - -def update_docs(): - """Update the example config and config schema files documenting the config - options.""" - - example = get_example() - with open(EXAMPLE_CONFIG_YAML, "w", encoding="utf-8") as example_file: - example_file.write(example) - - schema = get_schema() - with open(CONFIG_SCHEMA_JSON, "w", encoding="utf-8") as schema_file: - schema_file.write(schema) - - -def print_diff(expected: str, observed: str): - """Print differences between expected and observed files.""" - echo_failure("Differences in Config YAML:") - for line in unified_diff( - expected.splitlines(keepends=True), - observed.splitlines(keepends=True), - fromfile="expected", - tofile="observed", - ): - print(" ", line.rstrip()) - - -def check_docs(): - """Check whether the example config and config schema files documenting the config - options are up to date. - - Raises: - ValidationError: if not up to date. - """ - - example_expected = get_example() - with open(EXAMPLE_CONFIG_YAML, encoding="utf-8") as example_file: - example_observed = example_file.read() - if example_expected != example_observed: - print_diff(example_expected, example_observed) - raise ValidationError( - f"Example config YAML at '{EXAMPLE_CONFIG_YAML}' is not up to date." - ) - - schema_expected = get_schema() - with open(CONFIG_SCHEMA_JSON, encoding="utf-8") as schema_file: - schema_observed = schema_file.read() - if schema_expected != schema_observed: - raise ValidationError( - f"Config schema JSON at '{CONFIG_SCHEMA_JSON}' is not up to date." - ) - - -def main(check: bool = False): - """Update or check the config documentation files.""" - - if check: - try: - check_docs() - except ValidationError as error: - echo_failure(f"Validation failed: {error}") - sys.exit(1) - echo_success("Config docs are up to date.") - return - - update_docs() - echo_success("Successfully updated the config docs.") - - -if __name__ == "__main__": - run(main) diff --git a/scripts/update_readme.py b/scripts/update_readme.py deleted file mode 100755 index 244d0ba3..00000000 --- a/scripts/update_readme.py +++ /dev/null @@ -1,219 +0,0 @@ -#!/usr/bin/env python3 - -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Generate documentation for this package using different sources.""" - -import json -import subprocess # nosec -import sys -from pathlib import Path -from string import Template - -import jsonschema2md -import tomli -from pydantic import BaseModel, Field -from stringcase import spinalcase, titlecase - -from script_utils.cli import echo_failure, echo_success, run - -ROOT_DIR = Path(__file__).parent.parent.resolve() -PYPROJECT_TOML_PATH = ROOT_DIR / "pyproject.toml" -DESCRIPTION_PATH = ROOT_DIR / ".description.md" -DESIGN_PATH = ROOT_DIR / ".design.md" -README_TEMPLATE_PATH = ROOT_DIR / ".readme_template.md" -CONFIG_SCHEMA_PATH = ROOT_DIR / "config_schema.json" -OPENAPI_YAML_REL_PATH = "./openapi.yaml" -README_PATH = ROOT_DIR / "README.md" - - -class PackageHeader(BaseModel): - """A basic summary of a package.""" - - shortname: str = Field( - ..., - description=( - "The abbreviation of the package name. Is identical to the package name." - ), - ) - version: str = Field(..., description="The version of the package.") - summary: str = Field( - ..., description="A short 1 or 2 sentence summary of the package." - ) - - -class PackageName(BaseModel): - """The name of a package and it's different representations.""" - - name: str = Field(..., description="The full name of the package in spinal case.") - title: str = Field(..., description="The name of the package formatted as title.") - - -class PackageDetails(PackageHeader, PackageName): - """A container for details on a package used to build documentation.""" - - description: str = Field( - ..., description="A markdown-formatted description of the package." - ) - design_description: str = Field( - ..., - description=( - "A markdown-formatted description of overall architecture and design of" - + " the package." - ), - ) - config_description: str = Field( - ..., - description=( - "A markdown-formatted list of all configuration parameters of this package." - ), - ) - openapi_doc: str = Field( - ..., - description=( - "A markdown-formatted description rendering or linking to an OpenAPI" - " specification of the package." - ), - ) - - -def read_toml_package_header() -> PackageHeader: - """Read basic information about the package from the pyproject.toml""" - - with open(PYPROJECT_TOML_PATH, "rb") as pyproject_toml: - pyproject = tomli.load(pyproject_toml) - pyproject_project = pyproject["project"] - return PackageHeader( - shortname=pyproject_project["name"], - version=pyproject_project["version"], - summary=pyproject_project["description"], - ) - - -def read_package_name() -> PackageName: - """Infer the package name from the name of the git origin.""" - - with subprocess.Popen( - args="basename -s .git `git config --get remote.origin.url`", - cwd=ROOT_DIR, - stdout=subprocess.PIPE, - shell=True, - ) as process: - stdout, _ = process.communicate() - - if not stdout: - raise RuntimeError("The name of the git origin could not be resolved.") - git_origin_name = stdout.decode("utf-8").strip() - - return PackageName( - name=spinalcase(git_origin_name), title=titlecase(git_origin_name) - ) - - -def read_package_description() -> str: - """Read the package description.""" - - return DESCRIPTION_PATH.read_text() - - -def read_design_description() -> str: - """Read the design description.""" - - return DESIGN_PATH.read_text() - - -def generate_config_docs() -> str: - """Generate markdown-formatted documentation for the configration parameters - listed in the config schema.""" - - parser = jsonschema2md.Parser( - examples_as_yaml=False, - show_examples="all", - ) - with open(CONFIG_SCHEMA_PATH, encoding="utf-8") as json_file: - config_schema = json.load(json_file) - - md_lines = parser.parse_schema(config_schema) - - # ignore everything before the properties header: - properties_index = md_lines.index("## Properties\n\n") - md_lines = md_lines[properties_index + 1 :] - - return "\n".join(md_lines) - - -def generate_openapi_docs() -> str: - """Generate markdown-formatted documentation linking to or rendering an OpenAPI - specification of the package. If no OpenAPI specification is present, return an - empty string.""" - - open_api_yaml_path = ROOT_DIR / OPENAPI_YAML_REL_PATH - - if not open_api_yaml_path.exists(): - return "" - - return ( - "## HTTP API\n" - + "An OpenAPI specification for this service can be found" - + f" [here]({OPENAPI_YAML_REL_PATH})." - ) - - -def get_package_details() -> PackageDetails: - """Get details required to build documentation for the package.""" - - header = read_toml_package_header() - name = read_package_name() - description = read_package_description() - config_description = generate_config_docs() - return PackageDetails( - **header.dict(), - **name.dict(), - description=description, - config_description=config_description, - design_description=read_design_description(), - openapi_doc=generate_openapi_docs(), - ) - - -def generate_single_readme(*, details: PackageDetails) -> str: - """Generate a single markdown-formatted readme file for the package based on the - provided details.""" - - template_content = README_TEMPLATE_PATH.read_text() - template = Template(template_content) - return template.substitute(details.dict()) - - -def main(check: bool = False) -> None: - """Update the readme markdown.""" - - details = get_package_details() - readme_content = generate_single_readme(details=details) - - if check: - if README_PATH.read_text() != readme_content: - echo_failure("README.md is not up to date.") - sys.exit(1) - echo_success("README.md is up to date.") - return - - README_PATH.write_text(readme_content) - echo_success("Successfully updated README.md.") - - -if __name__ == "__main__": - run(main) diff --git a/src/metldata/artifacts_rest/__init__.py b/src/metldata/artifacts_rest/__init__.py deleted file mode 100644 index 643a46c5..00000000 --- a/src/metldata/artifacts_rest/__init__.py +++ /dev/null @@ -1,17 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Logic for making artefacts queryable via a REST interface.""" diff --git a/src/metldata/artifacts_rest/api_factory.py b/src/metldata/artifacts_rest/api_factory.py deleted file mode 100644 index 1eaab54e..00000000 --- a/src/metldata/artifacts_rest/api_factory.py +++ /dev/null @@ -1,106 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Logic to build REST APIs for querying artifacts.""" - -from fastapi import HTTPException -from fastapi.routing import APIRouter -from hexkit.protocols.dao import DaoFactoryProtocol, ResourceNotFoundError - -from metldata.artifacts_rest.artifact_dao import ArtifactDaoCollection -from metldata.artifacts_rest.artifact_info import get_artifact_info_dict -from metldata.artifacts_rest.models import ArtifactInfo, GlobalStats -from metldata.artifacts_rest.query_resources import ( - ArtifactResourceNotFoundError, - query_artifact_resource, -) -from metldata.custom_types import Json -from metldata.load.stats import STATS_COLLECTION_NAME - - -async def rest_api_factory( - *, artifact_infos: list[ArtifactInfo], dao_factory: DaoFactoryProtocol -) -> APIRouter: - """Factory to build a REST API for querying the provided artifact. - - Args: - artifact_info: Information on the artifact to build the REST API for. - dao_factory: An implementation of the DaoFactoryProtocol. - - Returns: - A FastAPI router with RESTful endpoints to query artifacts. - """ - artifact_info_dict = get_artifact_info_dict(artifact_infos=artifact_infos) - dao_collection = await ArtifactDaoCollection.construct( - dao_factory=dao_factory, artifact_infos=artifact_infos - ) - stats_dao = await dao_factory.get_dao( - name=STATS_COLLECTION_NAME, dto_model=GlobalStats, id_field="id" - ) - - router = APIRouter() - - @router.get("/health") - async def health() -> dict[str, str]: - """Used to test if this service is alive""" - return {"status": "OK"} - - @router.options("/artifacts") - async def get_artifacts_info() -> list[ArtifactInfo]: - """Get information on available artifacts.""" - return artifact_infos - - @router.options("/artifacts/{artifact_name}") - async def get_artifact_info(artifact_name: str) -> ArtifactInfo: - """Get information on the artifact with the given name.""" - artifact_info = artifact_info_dict.get(artifact_name) - if artifact_info is None: - raise HTTPException(status_code=404, detail="Artifact not found.") - - return artifact_info - - @router.get( - "/artifacts/{artifact_name}/classes/{class_name}/resources/{resource_id}" - ) - async def get_artifact_resource( - artifact_name: str, class_name: str, resource_id: str - ) -> Json: - """Get the resource with the given id of the class with the given name from the - artifact with the given name. - """ - try: - resource = await query_artifact_resource( - artifact_name=artifact_name, - class_name=class_name, - resource_id=resource_id, - dao_collection=dao_collection, - ) - except ArtifactResourceNotFoundError as error: - raise HTTPException(status_code=404, detail=str(error)) from error - - return resource.content - - @router.get("/stats") - async def get_stats() -> GlobalStats: - """Get the global summary statistics for all resources.""" - try: - resource = await stats_dao.get_by_id("global") - except ResourceNotFoundError as error: - raise HTTPException(status_code=404, detail=str(error)) from error - - return resource - - return router diff --git a/src/metldata/artifacts_rest/artifact_dao.py b/src/metldata/artifacts_rest/artifact_dao.py deleted file mode 100644 index 9d8bb475..00000000 --- a/src/metldata/artifacts_rest/artifact_dao.py +++ /dev/null @@ -1,114 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""DAO for managing artifacts.""" - -from hexkit.protocols.dao import DaoFactoryProtocol, DaoNaturalId -from typing_extensions import TypeAlias - -from metldata.artifacts_rest.artifact_info import get_artifact_info_dict -from metldata.artifacts_rest.models import ArtifactInfo, ArtifactResource - -ArtifactResourceDao: TypeAlias = DaoNaturalId[ArtifactResource] - - -class DaoNotFoundError(RuntimeError): - """Raised when a DAO is not found.""" - - def __init__(self, artifact_name: str, class_name: str): - super().__init__( - f"Could not find DAO for artifact '{artifact_name}' and class '{class_name}'." - ) - - -class ArtifactDaoCollection: - """A collection of DAOs for managing artifacts and their resources.""" - - @classmethod - async def construct( - cls, - dao_factory: DaoFactoryProtocol, - artifact_infos: list[ArtifactInfo], - ): - """Initialize the collection of DAOs.""" - artifact_info_dict = get_artifact_info_dict(artifact_infos=artifact_infos) - - # Cannot use comprehensions because of bug: https://bugs.python.org/issue33346 - artifact_daos: dict[str, dict[str, ArtifactResourceDao]] = {} - for artifact_name, artifact_info in artifact_info_dict.items(): - artifact_daos[artifact_name] = {} - for class_name in artifact_info.resource_classes: - artifact_daos[artifact_name][class_name] = await dao_factory.get_dao( - name=cls._get_dao_name( - artifact_name=artifact_name, class_name=class_name - ), - dto_model=ArtifactResource, - id_field="id_", - ) - - return cls(artifact_daos=artifact_daos) - - def __init__(self, artifact_daos: dict[str, dict[str, ArtifactResourceDao]]): - """Initialize the collection of DAOs. - - Please note, don't use this constructor directly. Use the construct method - instead. - """ - self._artifact_daos = artifact_daos - - @staticmethod - def _get_dao_name(*, artifact_name: str, class_name: str) -> str: - """The dao name is a combination of the name of the artifact and the name of - the class of the resource. - """ - return f"art_{artifact_name}_class_{class_name}" - - async def get_all_resource_tags(self) -> set[tuple[str, str, str]]: - """Retrieve resource tags for all artifacts currently present in the db. - - A resource tag combines artifact_name, class_name and resource ID (accession) - into a tuple, i.e. it has the form '(artifact_name,class_name,resource_ID)'. - This is done to flatten the nested artifact information to simplify keeping track - of changes. - """ - all_resource_tags: list[tuple[str, str, str]] = [] - for artifact_type, class_name_dao in self._artifact_daos.items(): - for class_name, resource_dao in class_name_dao.items(): - # empty mapping should yield all resources - resource_ids = [ - resource.id_ async for resource in resource_dao.find_all(mapping={}) - ] - all_resource_tags.extend( - (artifact_type, class_name, resource_id) - for resource_id in resource_ids - ) - - return set(all_resource_tags) - - async def get_dao( - self, *, artifact_name: str, class_name: str - ) -> ArtifactResourceDao: - """Get the DAO for the given class in the given artifact. - - Raises: - DaoNotFoundError: If the DAO could not be found. - """ - try: - return self._artifact_daos[artifact_name][class_name] - except KeyError as error: - raise DaoNotFoundError( - artifact_name=artifact_name, class_name=class_name - ) from error diff --git a/src/metldata/artifacts_rest/artifact_info.py b/src/metldata/artifacts_rest/artifact_info.py deleted file mode 100644 index 0f289d53..00000000 --- a/src/metldata/artifacts_rest/artifact_info.py +++ /dev/null @@ -1,194 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Logic for handling information on artifacts.""" - -import json -from typing import Optional - -from linkml.generators.jsonschemagen import JsonSchemaGenerator -from linkml_runtime.linkml_model.annotations import Annotation -from linkml_runtime.linkml_model.meta import ClassDefinition - -from metldata.artifacts_rest.models import ArtifactInfo, ArtifactResourceClass -from metldata.custom_types import Json -from metldata.model_utils.anchors import ( - get_anchors_points_by_target, - lookup_anchor_point, -) -from metldata.model_utils.assumptions import check_basic_model_assumption -from metldata.model_utils.essentials import MetadataModel - - -def is_class_hidden(*, class_definition: ClassDefinition) -> bool: - """Check if a metadata class is annotated as `hidden`.""" - if not isinstance(class_definition.annotations, dict): - raise RuntimeError( # This should never happen - f"Annotations of class {class_definition.name} are not a dictionary." - ) - - if "hidden" in class_definition.annotations: - if not isinstance(class_definition.annotations["hidden"], Annotation): - raise RuntimeError( # This should never happen - f"Annotation 'hidden' of class {class_definition.name} has an" - + " unexpected format." - ) - - if not isinstance(class_definition.annotations["hidden"].value, bool): - raise RuntimeError( # This should never happen - f"Annotation 'hidden' of class {class_definition.name} has an" - + " unexpected value." - ) - - return class_definition.annotations["hidden"].value - - return False - - -def get_resource_class_names(*, model: MetadataModel) -> list[str]: - """Get the names of all classes from a metadata model. - Only anchored classes are considered. Classes that are annotated as `hidden` - are ignored. - """ - anchored_class_names = get_anchors_points_by_target(model=model).keys() - schema_view = model.schema_view - - return [ - anchored_class_name - for anchored_class_name in anchored_class_names - if not is_class_hidden( - class_definition=schema_view.get_class(anchored_class_name, strict=True) - ) - ] - - -def filter_json_schema_definitions( - *, target_definition: Json, all_definitions: dict[str, Json] -) -> dict[str, Json]: - """Remove JSON schema definitions that are not used by the target_defintion.""" - target_definition_str = json.dumps(target_definition) - return { - definition_name: definition_schema - for definition_name, definition_schema in all_definitions.items() - if f'"$ref": "#/$defs/{definition_name}"' in target_definition_str - } - - -def subset_json_schema_for_class(*, global_json_schema: Json, class_name: str) -> Json: - """Subset a global json schema for the specified class. - Please note, the resulting schema might contain definitions that are not used. - """ - definitions = global_json_schema.get("$defs") - if not definitions: - raise RuntimeError( # This should never happen - "Schema does not contain definitions." - ) - - target_definition = definitions.get(class_name) - if not target_definition: - raise RuntimeError( # This should never happen - f"Schema does not contain definition for class {class_name}." - ) - - filtered_definitions = filter_json_schema_definitions( - target_definition=target_definition, all_definitions=definitions - ) - - return { - "$schema": global_json_schema["$schema"], - **target_definition, - "$defs": filtered_definitions, - } - - -def load_description_for_class( - *, model: MetadataModel, class_name: str -) -> Optional[str]: - """Load the description for the specified class of the metadata model.""" - return model.schema_view.get_class(class_name, strict=True).description - - -def load_resource_classes(*, model: MetadataModel) -> dict[str, ArtifactResourceClass]: - """Load all classes from a metadata model. - Only anchored classes are considered. Classes that are annotated as `hidden` - are ignored. - - Args: - model: The metadata model. - - Returns: - A dictionary of resource classes for this artifact. - The keys are the names of the metadata classes. The values are the - corresponding metadata class models. - """ - anchor_points_by_target = get_anchors_points_by_target(model=model) - - resource_class_names = get_resource_class_names(model=model) - - global_json_schema = json.loads(JsonSchemaGenerator(model).serialize()) - - return { - resource_class_name: ArtifactResourceClass( - name=resource_class_name, - description=load_description_for_class( - model=model, class_name=resource_class_name - ), - anchor_point=lookup_anchor_point( - class_name=resource_class_name, - anchor_points_by_target=anchor_points_by_target, - ), - json_schema=subset_json_schema_for_class( - global_json_schema=global_json_schema, class_name=resource_class_name - ), - ) - for resource_class_name in resource_class_names - } - - -def load_artifact_info( - *, name: str, description: str, model: MetadataModel -) -> ArtifactInfo: - """Load artifact info from a metadata model. - - Args: - name: The name of the artifact. - description: A description of the artifact. - model: The metadata model for the artifact. - - Returns: - The artifact info model. - """ - check_basic_model_assumption(model) - - resource_classes = load_resource_classes(model=model) - - return ArtifactInfo( - name=name, - description=description, - resource_classes=resource_classes, - ) - - -def get_artifact_info_dict( - *, artifact_infos: list[ArtifactInfo] -) -> dict[str, ArtifactInfo]: - """Build a dictionary from artifact name to artifact info.""" - # check if artifact names are unique: - artifact_names = [artifact_info.name for artifact_info in artifact_infos] - if len(artifact_names) != len(set(artifact_names)): - raise ValueError("Artifact names must be unique.") - - return {artifact_info.name: artifact_info for artifact_info in artifact_infos} diff --git a/src/metldata/artifacts_rest/config.py b/src/metldata/artifacts_rest/config.py deleted file mode 100644 index 814c000e..00000000 --- a/src/metldata/artifacts_rest/config.py +++ /dev/null @@ -1,42 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Config parameters and their defaults.""" - -from pydantic import Field, field_validator -from pydantic_settings import BaseSettings - -from metldata.artifacts_rest.models import ArtifactInfo - - -class ArtifactsRestConfig(BaseSettings): - """Config parameters and their defaults.""" - - artifact_infos: list[ArtifactInfo] = Field( - ..., - description="Information for artifacts to be queryable via the Artifacts REST API.", - ) - - @field_validator("artifact_infos") - def validate_artifact_info_names( - cls, value: list[ArtifactInfo] - ) -> list[ArtifactInfo]: - """Validate that artifact names are unique.""" - artifact_names = [artifact_info.name for artifact_info in value] - if len(artifact_names) != len(set(artifact_names)): - raise ValueError("Artifact names must be unique.") - - return value diff --git a/src/metldata/artifacts_rest/load_resources.py b/src/metldata/artifacts_rest/load_resources.py deleted file mode 100644 index 3d0f6585..00000000 --- a/src/metldata/artifacts_rest/load_resources.py +++ /dev/null @@ -1,262 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Logic for loading artifacts.""" - -from typing import cast - -from ghga_event_schemas.pydantic_ import ( - MetadataDatasetFile, - MetadataDatasetOverview, - MetadataDatasetStage, - SearchableResource, -) -from ghga_service_commons.utils.files import get_file_extension - -from metldata.artifacts_rest.artifact_dao import ArtifactDaoCollection -from metldata.artifacts_rest.models import ( - ArtifactInfo, - ArtifactResource, - ArtifactResourceClass, -) -from metldata.custom_types import Json -from metldata.load.event_publisher import EventPublisherPort -from metldata.metadata_utils import ( - SlotNotFoundError, - get_resources_of_class, - lookup_self_id, - lookup_slot_in_resource, -) - - -def extract_class_resources_from_artifact( - *, artifact_content: Json, resource_class: ArtifactResourceClass -) -> list[ArtifactResource]: - """Extract the resources from the given artifact content for the given class.""" - resource_jsons = get_resources_of_class( - class_name=resource_class.name, - global_metadata=artifact_content, - anchor_points_by_target={resource_class.name: resource_class.anchor_point}, - ) - - return [ - ArtifactResource( - id_=lookup_self_id( - resource=resource_json, - identifier_slot=resource_class.anchor_point.identifier_slot, - ), - class_name=resource_class.name, - content=resource_json, - ) - for resource_json in resource_jsons - ] - - -def extract_all_resources_from_artifact( - artifact_content: Json, artifact_info: ArtifactInfo -) -> list[ArtifactResource]: - """Extract all resources from the given artifact content for all resource classes - as specified in the artifact info. - """ - return [ - resource - for resource_class in artifact_info.resource_classes.values() - for resource in extract_class_resources_from_artifact( - artifact_content=artifact_content, - resource_class=resource_class, - ) - ] - - -async def save_artifact_resource( - *, - resource: ArtifactResource, - artifact_name: str, - dao_collection: ArtifactDaoCollection, -) -> None: - """Save the given resource into the database using the given DAO collection.""" - dao = await dao_collection.get_dao( - artifact_name=artifact_name, class_name=resource.class_name - ) - await dao.upsert(resource) - - -async def remove_artifact_resource( - *, - resource_id: str, - class_name: str, - artifact_name: str, - dao_collection: ArtifactDaoCollection, -) -> None: - """Remove a given artifact resource from the database using the given DAO collection""" - dao = await dao_collection.get_dao( - artifact_name=artifact_name, class_name=class_name - ) - await dao.delete(id_=resource_id) - - -async def load_artifact_resources( - *, - artifact_content: Json, - artifact_info: ArtifactInfo, - dao_collection: ArtifactDaoCollection, -) -> None: - """Load the resources from the given artifacts into the database using the given - DAO collection. - """ - resources = extract_all_resources_from_artifact( - artifact_content=artifact_content, artifact_info=artifact_info - ) - - for resource in resources: - await save_artifact_resource( - resource=resource, - artifact_name=artifact_info.name, - dao_collection=dao_collection, - ) - - -async def process_removed_resources( - *, - event_publisher: EventPublisherPort, - resource_tags: set[tuple[str, str, str]], - dao_collection: ArtifactDaoCollection, -): - """Delete no longer needed artifact resources from DB and send corresponding events""" - for resource_tag in resource_tags: - artifact_name, class_name, resource_id = resource_tag - # resource tag was obtained from querying the db, so resource with given ID - # should be present - await remove_artifact_resource( - artifact_name=artifact_name, - class_name=class_name, - resource_id=resource_id, - dao_collection=dao_collection, - ) - - await event_publisher.process_resource_deletion( - accession=resource_id, class_name=class_name - ) - if event_publisher.is_primary_dataset_source( - artifact_name=artifact_name, resource_class_name=class_name - ): - await event_publisher.process_dataset_deletion(accession=resource_id) - - -async def process_new_or_changed_resources( - *, - artifact_info_dict: dict[str, ArtifactInfo], - event_publisher: EventPublisherPort, - resources: dict[tuple[str, str, str], ArtifactResource], - dao_collection: ArtifactDaoCollection, -): - """Insert newly received artifact resources into DB and send corresponding events""" - for resource_tag, resource in resources.items(): - artifact_name = resource_tag[0] - # no resource tag was obtained from querying the db, so the resource with the - # given ID should not be present - await save_artifact_resource( - resource=resource, - artifact_name=artifact_name, - dao_collection=dao_collection, - ) - - if event_publisher.is_primary_dataset_source( - artifact_name=artifact_name, resource_class_name=resource.class_name - ): - await process_resource_upsert( - artifact_info_dict=artifact_info_dict, - artifact_name=artifact_name, - event_publisher=event_publisher, - resource=resource, - ) - - -async def process_resource_upsert( # pylint: disable=too-many-locals - *, - artifact_info_dict: dict[str, ArtifactInfo], - artifact_name: str, - event_publisher: EventPublisherPort, - resource: ArtifactResource, -): - """Convert available data to correct event model and delegate firing appropriate events""" - artifact_info = artifact_info_dict[artifact_name] - file_slots = get_file_slots(artifact_info=artifact_info, resource=resource) - - metadata_dataset_files = convert_file_information(file_slots=file_slots) - - dataset_description = cast( - str, - lookup_slot_in_resource(resource=resource.content, slot_name="description"), - ) - dataset_title = cast( - str, - lookup_slot_in_resource(resource=resource.content, slot_name="title"), - ) - - dataset_overview = MetadataDatasetOverview( - accession=resource.id_, - title=dataset_title, - stage=MetadataDatasetStage.DOWNLOAD, - description=dataset_description, - files=metadata_dataset_files, - ) - await event_publisher.process_dataset_upsert(dataset_overview=dataset_overview) - - searchable_resource = SearchableResource( - accession=resource.id_, class_name=resource.class_name, content=resource.content - ) - await event_publisher.process_resource_upsert(resource=searchable_resource) - - -def get_file_slots(artifact_info: ArtifactInfo, resource: ArtifactResource): - """Get files resource slots from file class names""" - file_slots = [] - for class_name, resource_class in artifact_info.resource_classes.items(): - if class_name.endswith("File"): - anchor_point = resource_class.anchor_point - slot_name = anchor_point.root_slot - - try: - file_slot = lookup_slot_in_resource( - resource=resource.content, slot_name=slot_name - ) - # file slots should be lists - file_slot = cast(list[Json], file_slot) - except SlotNotFoundError: - continue - - file_slots.append(file_slot) - - return file_slots - - -def convert_file_information(file_slots: list[list[Json]]) -> list[MetadataDatasetFile]: - """Convert file slot information into MetadataDatasetFiles""" - files = [] - for file_slot in file_slots: - for file in file_slot: - extension = get_file_extension(filename=file["name"]) - - files.append( - MetadataDatasetFile( - accession=file["accession"], - description=None, - file_extension=extension, - ) - ) - - return files diff --git a/src/metldata/artifacts_rest/models.py b/src/metldata/artifacts_rest/models.py deleted file mode 100644 index d82eeec3..00000000 --- a/src/metldata/artifacts_rest/models.py +++ /dev/null @@ -1,126 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Data models.""" - -from typing import Optional - -from ghga_service_commons.utils.utc_dates import DateTimeUTC -from pydantic import BaseModel, Field, field_validator -from typing_extensions import TypedDict - -from metldata.custom_types import Json -from metldata.model_utils.anchors import AnchorPoint - -try: # workaround for https://github.com/pydantic/pydantic/issues/5821 - from typing_extensions import Literal -except ImportError: - from typing import Literal # type: ignore - - -class ArtifactResource(BaseModel): - """Information on a resource of an artifact.""" - - id_: str = Field(..., description="The ID of the resource.") - class_name: str = Field( - ..., description="The name of the class this resource corresponds to." - ) - content: Json = Field(..., description="The metadata content of that resource.") - - -class ArtifactResourceClass(BaseModel): - """Model to describe a resource class of an artifact.""" - - name: str = Field(..., description="The name of the metadata class.") - description: Optional[str] = Field( - None, description="A description of the metadata class." - ) - anchor_point: AnchorPoint = Field( - ..., description="The anchor point for this metadata class." - ) - json_schema: Json = Field( - ..., description="The JSON schema for this metadata class." - ) - - -class ArtifactInfo(BaseModel): - """Model to describe general information on an artifact. - Please note, it does not contain actual artifact instances derived from specific - metadata. - """ - - name: str = Field(..., description="The name of the artifact.") - description: str = Field(..., description="A description of the artifact.") - - resource_classes: dict[str, ArtifactResourceClass] = Field( - ..., - description=( - "A dictionary of resource classes for this artifact." - + " The keys are the names of the classes." - + " The values are the corresponding class models." - ), - ) - - @field_validator("resource_classes") - def check_resource_class_names( - cls, value: dict[str, ArtifactResourceClass] - ) -> dict[str, ArtifactResourceClass]: - """Check if the keys of the `resource_classes` dictionary correspond to the - names of the metadata classes. - """ - for class_name, resource_class in value.items(): - if class_name != resource_class.name: - raise ValueError( - f"Key '{class_name}' of 'resource_classes' does not match" - + f" the name '{resource_class.name}' of the corresponding" - + " metadata class." - ) - - return value - - -class ResourceCount(TypedDict): - """Number of instances of a resource.""" - - count: int - - -class ValueCount(ResourceCount): - """Number of instances of a certain value.""" - - value: str - - -class ResourceStats(ResourceCount, total=False): - """Summary statistics for a resource.""" - - stats: dict[str, list[ValueCount]] - - -class GlobalStats(BaseModel): - """Model to describe statistical information on all resources.""" - - id: Literal["global"] - created: DateTimeUTC = Field(..., description="When these stats were created.") - - resource_stats: dict[str, ResourceStats] = Field( - ..., - description=( - "A dictionary of global resource stats." - + " The keys are the names of the classes." - + " The values are the corresponding summary statistics." - ), - ) diff --git a/src/metldata/artifacts_rest/query_resources.py b/src/metldata/artifacts_rest/query_resources.py deleted file mode 100644 index c2091aac..00000000 --- a/src/metldata/artifacts_rest/query_resources.py +++ /dev/null @@ -1,60 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Logic for querying artifact resouces.""" - -from hexkit.protocols.dao import ResourceNotFoundError - -from metldata.artifacts_rest.artifact_dao import ArtifactDaoCollection -from metldata.artifacts_rest.models import ArtifactResource - - -class ArtifactResourceNotFoundError(RuntimeError): - """Raised when a resource could not be found.""" - - def __init__(self, *, artifact_name: str, class_name: str, resource_id: str): - message = ( - f"Could not find resource with ID '{resource_id}' of class '{class_name}'" - + f" in artifact '{artifact_name}'." - ) - super().__init__(message) - - -async def query_artifact_resource( - *, - artifact_name: str, - class_name: str, - resource_id: str, - dao_collection: ArtifactDaoCollection, -) -> ArtifactResource: - """Query a single resource with the given ID of the given class from the given - artifact. - - Raises: - ArtifactResourceNotFoundError: If the resource could not be found. - """ - dao = await dao_collection.get_dao( - artifact_name=artifact_name, class_name=class_name - ) - - try: - return await dao.get_by_id(resource_id) - except ResourceNotFoundError as error: - raise ArtifactResourceNotFoundError( - artifact_name=artifact_name, - class_name=class_name, - resource_id=resource_id, - ) from error diff --git a/src/metldata/builtin_transformations/add_accessions/__init__.py b/src/metldata/builtin_transformations/add_accessions/__init__.py deleted file mode 100644 index 603d2376..00000000 --- a/src/metldata/builtin_transformations/add_accessions/__init__.py +++ /dev/null @@ -1,25 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""A transformation to add accessions to metadata.""" - - -# shortcuts: -# pylint: disable=unused-import -from metldata.builtin_transformations.add_accessions.main import ( # noqa: F401 - ACCESSION_ADDITION_TRANSFORMATION, - AccessionAdditionConfig, -) diff --git a/src/metldata/builtin_transformations/add_accessions/config.py b/src/metldata/builtin_transformations/add_accessions/config.py deleted file mode 100644 index 38ca599e..00000000 --- a/src/metldata/builtin_transformations/add_accessions/config.py +++ /dev/null @@ -1,34 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Config parameters and their defaults.""" - -from pydantic import Field -from pydantic_settings import BaseSettings, SettingsConfigDict - - -class AccessionAdditionConfig(BaseSettings): - """Config to add accessions to a model and associated metadata.""" - - model_config = SettingsConfigDict(extra="forbid") - - accession_slot_name: str = Field( - "accession", description="The name of the slot to contain the accessions to." - ) - accession_slot_description: str = Field( - "The accession for an entity.", - description="The description of the slot to contain the accessions to.", - ) diff --git a/src/metldata/builtin_transformations/add_accessions/main.py b/src/metldata/builtin_transformations/add_accessions/main.py deleted file mode 100644 index f42606f5..00000000 --- a/src/metldata/builtin_transformations/add_accessions/main.py +++ /dev/null @@ -1,116 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""A transformation to add accessions to metadata.""" - -from metldata.builtin_transformations.add_accessions.config import ( - AccessionAdditionConfig, -) -from metldata.builtin_transformations.add_accessions.metadata_transform import ( - add_accessions_to_metadata, - get_references, -) -from metldata.builtin_transformations.add_accessions.model_transform import ( - add_accessions_to_model, -) -from metldata.event_handling.models import SubmissionAnnotation -from metldata.model_utils.anchors import get_anchors_points_by_target -from metldata.model_utils.assumptions import check_basic_model_assumption -from metldata.model_utils.essentials import MetadataModel -from metldata.transform.base import Json, MetadataTransformer, TransformationDefinition - - -class AccessionAdditionMetadataTransformer( - MetadataTransformer[AccessionAdditionConfig] -): - """A transformer to add accessions to metadata.""" - - def __init__( - self, - config: AccessionAdditionConfig, - original_model: MetadataModel, - transformed_model: MetadataModel, - ): - """Initialize the transformer.""" - super().__init__( - config=config, - original_model=original_model, - transformed_model=transformed_model, - ) - - self._anchor_points_by_target = get_anchors_points_by_target( - model=self._original_model - ) - self._references = get_references( - metadata_model=self._original_model, - anchor_points_by_target=self._anchor_points_by_target, - ) - - def transform(self, *, metadata: Json, annotation: SubmissionAnnotation) -> Json: - """Transforms metadata. - - Args: - metadata: The metadata to be transformed. - annotation: The annotation on the metadata. - - Raises: - MetadataTransformationError: - if the transformation fails. - """ - return add_accessions_to_metadata( - metadata=metadata, - accession_slot_name=self._config.accession_slot_name, - accession_map=annotation.accession_map, - references=self._references, - anchor_points_by_target=self._anchor_points_by_target, - ) - - -def check_model_assumptions( - model: MetadataModel, - config: AccessionAdditionConfig, # pylint: disable=unused-argument -) -> None: - """Check the assumptions of the model. - - Raises: - MetadataModelAssumptionError: - if the model does not fulfill the assumptions. - """ - check_basic_model_assumption(model=model) - - -def transform_model( - model: MetadataModel, config: AccessionAdditionConfig -) -> MetadataModel: - """Transform the metadata model. - - Raises: - MetadataModelTransformationError: - if the transformation fails. - """ - return add_accessions_to_model( - model=model, - accession_slot_name=config.accession_slot_name, - accession_slot_description=config.accession_slot_description, - ) - - -ACCESSION_ADDITION_TRANSFORMATION = TransformationDefinition[AccessionAdditionConfig]( - config_cls=AccessionAdditionConfig, - check_model_assumptions=check_model_assumptions, - transform_model=transform_model, - metadata_transformer_factory=AccessionAdditionMetadataTransformer, -) diff --git a/src/metldata/builtin_transformations/add_accessions/metadata_transform.py b/src/metldata/builtin_transformations/add_accessions/metadata_transform.py deleted file mode 100644 index cb37c924..00000000 --- a/src/metldata/builtin_transformations/add_accessions/metadata_transform.py +++ /dev/null @@ -1,182 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Logic for transforming metadata.""" - -from collections import defaultdict - -from pydantic import Json -from typing_extensions import TypeAlias - -from metldata.metadata_utils import lookup_self_id -from metldata.model_utils.anchors import AnchorPoint, lookup_anchor_point -from metldata.model_utils.essentials import MetadataModel -from metldata.submission_registry.models import AccessionMap -from metldata.transform.base import MetadataTransformationError - -# A type for specifying references between anchored classes in a given model: -# The first key is the name of the class that is anchored, the second key is the -# the name of the slot of that class that contains the references. -# The value is name of the class that is referenced. -References: TypeAlias = dict[str, dict[str, str]] - - -def get_references( - *, metadata_model: MetadataModel, anchor_points_by_target: dict[str, AnchorPoint] -) -> References: - """Get references between anchored classes in a given model.""" - schema_view = metadata_model.schema_view - references: References = defaultdict(dict) - - for source_class_name in anchor_points_by_target: - slots = schema_view.class_induced_slots(source_class_name) - for slot in slots: - if slot.range in anchor_points_by_target: - references[source_class_name][slot.name] = slot.range - - return references - - -def lookup_accession( - *, - target_class: str, - old_identifier: str, - accession_map: AccessionMap, - anchor_points_by_target: dict[str, AnchorPoint], -) -> str: - """Lookup the accession for the a resource with the given identifier of the given - class. - """ - anchor_point = lookup_anchor_point( - class_name=target_class, anchor_points_by_target=anchor_points_by_target - ) - accession = accession_map.get(anchor_point.root_slot, {}).get(old_identifier) - if not accession: - raise MetadataTransformationError( - f"Could not find accession for '{old_identifier}' of class" - + f" '{target_class}." - ) - return accession - - -def add_accession_to_resource( - *, - resource: Json, - class_name: str, - old_identifier_slot: str, - accession_slot_name: str, - accession_map: AccessionMap, - references: dict[str, str], - anchor_points_by_target: dict[str, AnchorPoint], -) -> Json: - """Add an accession to a resource. - - Args: - resource: - The resource to which accessions should be added. - old_identifier_slot: - The name of the slot that contains the old identifier. - old_identifier: - The old identifier of the resource. - accession_map: - The accession map that contains the accessions. - references: - References from this to other anchored classes. The keys are the names of - the slots that contain the references, the values are the names of the - referenced classes. - - Raises: - MetadataTransformationError: - if the transformation of the metadata fails. - """ - old_identifier = lookup_self_id( - resource=resource, identifier_slot=old_identifier_slot - ) - new_identifier = lookup_accession( - target_class=class_name, - old_identifier=old_identifier, - accession_map=accession_map, - anchor_points_by_target=anchor_points_by_target, - ) - - new_resource: Json = {accession_slot_name: new_identifier} - - for slot_name, slot_value in resource.items(): - if slot_name in references: - referenced_class = references[slot_name] - if isinstance(slot_value, list): - new_resource[slot_name] = [ - lookup_accession( - target_class=referenced_class, - old_identifier=reference_old_identifier, - accession_map=accession_map, - anchor_points_by_target=anchor_points_by_target, - ) - for reference_old_identifier in slot_value - ] - else: - new_resource[slot_name] = lookup_accession( - target_class=referenced_class, - old_identifier=slot_value, - accession_map=accession_map, - anchor_points_by_target=anchor_points_by_target, - ) - else: - new_resource[slot_name] = slot_value - - return new_resource - - -def add_accessions_to_metadata( - *, - metadata: Json, - accession_slot_name: str, - accession_map: AccessionMap, - references: References, - anchor_points_by_target: dict[str, AnchorPoint], -) -> Json: - """Add an accessions to metadata. - - Raises: - MetadataTransformationError: - if the transformation of the metadata fails. - """ - modified_metadata = {} - - for target_class_name, anchor_point in anchor_points_by_target.items(): - target_resources = [] - target_accession_map = accession_map.get(anchor_point.root_slot) - if target_accession_map is None: - raise MetadataTransformationError( - "Could not find accession mapping for target class" - + f" {target_class_name}." - ) - - for old_resource in metadata[anchor_point.root_slot]: - new_resource = add_accession_to_resource( - resource=old_resource, - class_name=target_class_name, - old_identifier_slot=anchor_point.identifier_slot, - accession_slot_name=accession_slot_name, - accession_map=accession_map, - references=references[target_class_name], - anchor_points_by_target=anchor_points_by_target, - ) - target_resources.append(new_resource) - - modified_metadata[anchor_point.root_slot] = target_resources - - return modified_metadata diff --git a/src/metldata/builtin_transformations/add_accessions/model_transform.py b/src/metldata/builtin_transformations/add_accessions/model_transform.py deleted file mode 100644 index 0de1041c..00000000 --- a/src/metldata/builtin_transformations/add_accessions/model_transform.py +++ /dev/null @@ -1,161 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Logic for transforming metadata models.""" - - -from copy import deepcopy -from typing import Optional, cast - -from linkml_runtime.linkml_model.meta import ClassDefinition, SlotDefinition - -from metldata.model_utils.anchors import get_anchors_points_by_target -from metldata.model_utils.essentials import ExportableSchemaView, MetadataModel -from metldata.model_utils.identifiers import get_class_identifiers -from metldata.model_utils.manipulate import upsert_class -from metldata.transform.base import MetadataModelTransformationError - - -def unset_identifier( - *, class_definition: ClassDefinition, class_identifiers: dict[str, Optional[str]] -) -> ClassDefinition: - """Get a modified copy of the provided class definition with the identifier being - unset. - """ - identifier_slot_name = class_identifiers[class_definition.name] - if identifier_slot_name is None: - raise RuntimeError( # This should never happen - f"Class {class_definition.name} does not have an identifier." - ) - - modified_class = deepcopy(class_definition) - - if not modified_class.slot_usage: - modified_class.slot_usage = {} - elif not isinstance(modified_class.slot_usage, dict): - raise RuntimeError( # This should never happen - f"Class {class_definition.name} has a slot_usage that is not a dict." - ) - - identifier_slot = modified_class.slot_usage.get( - identifier_slot_name, - SlotDefinition(name=identifier_slot_name), - ) - identifier_slot = cast(SlotDefinition, identifier_slot) - identifier_slot.identifier = False - - modified_class.slot_usage[identifier_slot_name] = identifier_slot - - return modified_class - - -def get_accession_slot(*, accession_slot_name: str) -> SlotDefinition: - """Generate a slot definition for the accession slot.""" - return SlotDefinition( - name=accession_slot_name, - identifier=True, - required=True, - ) - - -def add_accessions_to_class( - *, - class_definition: ClassDefinition, - accession_slot_name: str, - class_identifiers: dict[str, Optional[str]], -) -> ClassDefinition: - """Get a modified copy of the provided class definition with the accession slot - being added as identifier. - """ - modified_class = unset_identifier( - class_definition=class_definition, class_identifiers=class_identifiers - ) - - if not isinstance(modified_class.slots, list): - raise RuntimeError( # This should never happen - f"Class {class_definition.name} has a slots that is not a list." - ) - modified_class.slots.append(accession_slot_name) - - modified_class.slot_usage[accession_slot_name] = get_accession_slot( - accession_slot_name=accession_slot_name - ) - - return modified_class - - -def add_global_accession_slot( - *, - schema_view: ExportableSchemaView, - accession_slot_name: str, - accession_slot_description: str, -) -> ExportableSchemaView: - """Get a modified copy of the provided schema view with the accession slot being - added to the global scope. - """ - if schema_view.get_slot(slot_name=accession_slot_name): - raise MetadataModelTransformationError( - f"The slot name '{accession_slot_name}' cannot be used as accession, it is" - + " already in use." - ) - - accession_slot = SlotDefinition( - name=accession_slot_name, description=accession_slot_description - ) - - modified_schema_view = deepcopy(schema_view) - modified_schema_view.add_slot(slot=accession_slot) - - return modified_schema_view - - -def add_accessions_to_model( - *, model: MetadataModel, accession_slot_name: str, accession_slot_description: str -) -> MetadataModel: - """Get a modified copy of the provided model with the accession slot being added as - identifier. - """ - anchor_points_by_target = get_anchors_points_by_target(model=model) - class_identifiers = { - class_name: identifier - for class_name, identifier in get_class_identifiers(model=model).items() - if class_name in anchor_points_by_target - } - schema_view = model.schema_view - - modified_schema_view = add_global_accession_slot( - schema_view=schema_view, - accession_slot_name=accession_slot_name, - accession_slot_description=accession_slot_description, - ) - - for class_name in class_identifiers: - class_definition = modified_schema_view.get_class(class_name=class_name) - if not class_definition: - raise RuntimeError( # This should never happen - f"Class with name '{class_name}' does not exist." - ) - - class_definition = add_accessions_to_class( - class_definition=class_definition, - accession_slot_name=accession_slot_name, - class_identifiers=class_identifiers, - ) - modified_schema_view = upsert_class( - schema_view=modified_schema_view, class_definition=class_definition - ) - - return modified_schema_view.export_model() diff --git a/src/metldata/builtin_transformations/aggregate/__init__.py b/src/metldata/builtin_transformations/aggregate/__init__.py deleted file mode 100644 index 7c4d37c7..00000000 --- a/src/metldata/builtin_transformations/aggregate/__init__.py +++ /dev/null @@ -1,26 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Aggregate transformation for metadata.""" - -# shortcuts: -# pylint: disable=unused-import -from metldata.builtin_transformations.aggregate.config import ( # noqa: F401 - AggregateConfig, -) -from metldata.builtin_transformations.aggregate.main import ( # noqa: F401 - AGGREGATE_TRANSFORMATION, -) diff --git a/src/metldata/builtin_transformations/aggregate/cached_model.py b/src/metldata/builtin_transformations/aggregate/cached_model.py deleted file mode 100644 index 787b932f..00000000 --- a/src/metldata/builtin_transformations/aggregate/cached_model.py +++ /dev/null @@ -1,34 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -"""This module provides the CachedMetadataModel class.""" - -from metldata.model_utils.anchors import AnchorPoint, get_anchors_points_by_target -from metldata.model_utils.essentials import MetadataModel - - -class CachedMetadataModel: - """A model for a MetadataModel and pre-computed, non-dynamic associated - anchor points by target and class names. - """ - - model: MetadataModel - anchors_points_by_target: dict[str, AnchorPoint] - all_class_names: list[str] - - def __init__(self, model: MetadataModel): - self.model = model - self.anchors_points_by_target = get_anchors_points_by_target(model=model) - self.all_classes = list(model.schema_view.all_classes()) diff --git a/src/metldata/builtin_transformations/aggregate/config.py b/src/metldata/builtin_transformations/aggregate/config.py deleted file mode 100644 index e25d6335..00000000 --- a/src/metldata/builtin_transformations/aggregate/config.py +++ /dev/null @@ -1,61 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Config for aggregate transformations""" - -from typing import Optional - -from pydantic import BaseModel, model_validator -from pydantic_settings import BaseSettings - -from metldata.builtin_transformations.aggregate.func import ( - AggregationFunction, - transformation_by_name, -) - - -class AggregationOperation(BaseModel): - """A model for a single aggregation operation executed on one or multiple - branches in the data described by a path in the model. - """ - - input_paths: list[str] - output_path: str - visit_only_once: Optional[list[str]] = None - function: type[AggregationFunction] - - @model_validator(mode="before") - def lookup_operation(cls, values: dict) -> dict: - """Replaces operation strings with operation types.""" - if "function" in values: - values["function"] = transformation_by_name(values["function"]) - # not raising an error otherwise as pydantic will do that in following - # validation - return values - - -class Aggregation(BaseModel): - """Model for an aggregation.""" - - input: str - output: str - operations: list[AggregationOperation] - - -class AggregateConfig(BaseSettings): - """A model for the configuration of the aggregate transformation.""" - - aggregations: list[Aggregation] diff --git a/src/metldata/builtin_transformations/aggregate/data_subgraph.py b/src/metldata/builtin_transformations/aggregate/data_subgraph.py deleted file mode 100644 index 6398da51..00000000 --- a/src/metldata/builtin_transformations/aggregate/data_subgraph.py +++ /dev/null @@ -1,253 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""This module provides the DataSubgraph class to traverse a subgraph of a -LinkML-based JSON data graph. -""" - -from collections import defaultdict -from collections.abc import Iterator -from typing import Any, Optional - -from linkml_runtime.linkml_model import SlotDefinition - -from metldata.builtin_transformations.aggregate.cached_model import CachedMetadataModel -from metldata.custom_types import Json -from metldata.metadata_utils import get_resource_dict_of_class -from metldata.model_utils.anchors import AnchorPoint -from metldata.model_utils.essentials import MetadataModel - - -class DataTraversalError(RuntimeError): - """Error raised when JSON data cannot be traversed as expected.""" - - -def _resolve_path( - *, model: MetadataModel, all_classes: list[str], origin: str, slot_names: list[str] -) -> list[SlotDefinition]: - cur_cls = origin - resolved_path = [] - for slot_name in slot_names: - if cur_cls is None: - raise DataTraversalError( - f"Unable to resolve path '{slot_names}': Cannot traverse beyond" - f" '{slot_names[len(resolved_path)]}', range is type or enum." - ) - try: - slot_def = model.schema_view.induced_slot(slot_name, cur_cls) - except ValueError as error: - raise DataTraversalError( - f"Unable to find slot '{slot_name}' for class '{cur_cls}'." - ) from error - resolved_path.append(slot_def) - cur_cls = slot_def.range if slot_def.range in all_classes else None - return resolved_path - - -class DataSubgraph: - """ - Given that LinkML models enable references between objects, any JSON data - structured according to a LinkML model can be treated as a connected graph - of objects, i.e. a data graph. A DataSubgraph represents a subgraph of the - object graph described by a set of paths in the entity relationship model of - the LinkML schema. Note that a path in the entity relationship model - corresponds to a subgraph in the data graph, since the entity relationships - can have various cardinalities (i.e. LinkML slots may be multivalued). - - The DataSubgraph enables to iterate through the nodes of the subgraph. - """ - - _model: MetadataModel - _paths: list[list[SlotDefinition]] - _class_identifiers: dict[str, Optional[str]] - _all_classes: list[str] - _anchor_points: dict[str, AnchorPoint] - - def _get_class_identifier(self, class_name: str) -> str: - """Returns the identifier slot name for the given class name. - - Args: - class_name (str): Name of the class - - Raises: - DataTraversalError: If the class is unknown or does not have an - identifier slot - - Returns: - str: The name of the identifier slot. - """ - slot_name = self._class_identifiers[class_name] - if slot_name is None: - raise DataTraversalError( - f"Identifier slot for class '{class_name}' not found." - ) - return slot_name - - def _resolve_non_inlined( - self, *, identifiers: list[Any], class_name: str - ) -> list[Json]: - """Resolves a list of identifiers to the corresponding objects based on - the provided class name. - - Args: - identifiers (list[Any]): A list of identifiers - class_name (str): The name of the corresponding class - - Raises: - DataTraversalError: Raised when an identifier cannot be resolved. - - Returns: - list[Json]: A list of objects corresponding to the identifiers. - """ - try: - return [ - self._resources_by_id[class_name][next_node] - for next_node in identifiers - ] - except KeyError as error: - raise DataTraversalError( - f"Unable to resolve ID '{error.args[0]}' for class '{class_name}'" - ) from error - - def terminal_nodes(self, data: Json) -> Iterator[Any]: # noqa: C901 - """Returns a generator for all data nodes corresponding to the model - path leaves. - - Args: - data (Json): The data - - Yields: - Iterator[Any]: The generator. - """ - # Inner nodes that are blocked from being revisited. Nodes are - # represented as (class, id) tuples. Non-identifiable classes cannot be - # prevented from being re-visited. - do_not_revisit: set[tuple[str, Any]] = set() - # The stack that guides the traversal - for path in self._paths: - stack: list[tuple[int, Json]] = [(0, data)] - while stack: - depth, node = stack.pop() - # Yield if we're at the end of the path - if depth == len(path): - yield node - continue - # Otherwise, add intermediate nodes to the stack unless they are None - slot_def = path[depth] - try: - next_nodes = node[slot_def.name] - except KeyError: - if not slot_def.required: - continue - raise - if not slot_def.multivalued: - next_nodes = [next_nodes] - # Resolve non-inlined nodes - if slot_def.range in self._all_classes and not slot_def.inlined: - next_nodes = self._resolve_non_inlined( - identifiers=next_nodes, class_name=slot_def.range - ) - # Add elements to stack - next_range = path[depth].range - if next_range in self._visit_once_classes: - for next_node in next_nodes: - next_hash = ( - next_range, - next_node[self._get_class_identifier(next_range)], - ) - if next_hash not in do_not_revisit: - stack.append((depth + 1, next_node)) - do_not_revisit.add(next_hash) - else: - stack.extend((depth + 1, next_node) for next_node in next_nodes) - - def _map_resources_by_id(self, submission_data: Json) -> dict[str, dict[str, Json]]: - """Creates a mapping from class names to mappings from class identifiers - to objects. - - Args: - submission_data (Json): The submission data - - Returns: - dict[str, dict[str, Json]]: The resulting mapping - """ - resources_by_id: defaultdict[str, dict[str, Json]] = defaultdict(dict) - for path in self._paths: - for slot_def in path[:-1]: - if not slot_def.inlined and slot_def.range not in resources_by_id: - if ( - slot_def.range is None - or slot_def.range not in self._all_classes - ): - raise DataTraversalError( - f"Intermediate path slot '{slot_def.name}' does" - " not have a class range." - ) - resources_by_id[slot_def.range] = get_resource_dict_of_class( - class_name=slot_def.range, - global_metadata=submission_data, - anchor_points_by_target=self._anchor_points, - ) - slot_def = path[-1] - if ( - slot_def.range in self._all_classes - and not slot_def.inlined - and slot_def.range not in resources_by_id - ): - resources_by_id[slot_def.range] = get_resource_dict_of_class( - class_name=slot_def.range, - global_metadata=submission_data, - anchor_points_by_target=self._anchor_points, - ) - - return resources_by_id - - def __init__( - self, - *, - model: CachedMetadataModel, - submission_data: Json, - origin: str, - path_strings: list[str], - visit_once_classes: Optional[list[str]] = None, - ): - """Creates a new DataSubgraph object. - - Args: - model (MetadataModel): The LinkML metadata model - submission_data (Json): The full submission data, a representation - of the LinkML tree root class - model_paths (list[ModelPath]): A list of model paths - visit_once_classes (Optional[list[str]], optional): List of classes - for which objects shall be traversed only once. Defaults to None. - """ - self._model = model.model - self._anchor_points = model.anchors_points_by_target - self._visit_once_classes = visit_once_classes if visit_once_classes else [] - self._all_classes = list(self._model.schema_view.all_classes()) - self._paths = [ - _resolve_path( - model=self._model, - origin=origin, - slot_names=path_string.split("."), - all_classes=self._all_classes, - ) - for path_string in path_strings - ] - self._resources_by_id = self._map_resources_by_id(submission_data) - self._class_identifiers = { - cls_name: ap.identifier_slot for cls_name, ap in self._anchor_points.items() - } diff --git a/src/metldata/builtin_transformations/aggregate/expanding_dict.py b/src/metldata/builtin_transformations/aggregate/expanding_dict.py deleted file mode 100644 index 55861661..00000000 --- a/src/metldata/builtin_transformations/aggregate/expanding_dict.py +++ /dev/null @@ -1,81 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""A self expanding defaultdict which allows to address arbitrary data paths.""" - -from collections import defaultdict -from typing import Any - - -class ExpandingDict(defaultdict): - """Rudimentary implementation of a self expanding default dict with no error - checking - """ - - def __init__(self): - """Create a new ExpandingDict""" - defaultdict.__init__(self, self.__class__) - - def __resolve_path(self, path: str) -> tuple: - """Resolves the given string representation of a path by dot-splitting - the path. Returns the terminal key and the pre-terminal dictionary. - - Args: - path (str): A string representation of path. Example: foo.bar.baz - - Returns: - tuple: (dict, key) the pre-terminal dictionary and the terminal key - """ - cur = self - nodes = path.split(".") - for node in nodes[:-1]: - cur = cur[node] - return cur, nodes[-1] - - def set_path_value(self, path: str, value: Any) -> None: - """Set a value in the expanding dict based on a string representation of - the key path. - - Warning: Does not perform type checking of intermediate data structures. - - Args: - path (str): A key path. Example: foo.bar.baz - value (Any): A value to set - """ - holder, key = self.__resolve_path(path) - holder[key] = value - - def get_path_value(self, path: str) -> Any: - """Get a value in the expanding dict based on a string representation of - the key path. - - Warning: Does not perform type checking of intermediate data structures. - - Args: - path (str): A key path. Example: foo.bar.baz - - Returns: - Any: The value. - """ - holder, key = self.__resolve_path(path) - return holder[key] - - def to_dict(self) -> dict: - """Recursively convert the expanding dict to a regular dictionary""" - return { - key: value.to_dict() if isinstance(value, ExpandingDict) else value - for key, value in self.items() - } diff --git a/src/metldata/builtin_transformations/aggregate/func.py b/src/metldata/builtin_transformations/aggregate/func.py deleted file mode 100644 index 606aa754..00000000 --- a/src/metldata/builtin_transformations/aggregate/func.py +++ /dev/null @@ -1,215 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Transformation and aggregation functions for the aggregate module.""" - -from abc import ABC, abstractmethod -from collections import Counter -from collections.abc import Iterable -from operator import itemgetter -from typing import Any, Optional - -from metldata.builtin_transformations.aggregate.models import ( - MinimalClass, - MinimalNamedSlot, -) -from metldata.transform.base import MetadataTransformationError - -_FUNCTION_REGISTRY = {} - - -class AggregationFunction(ABC): - """An abstract class for aggregation transformation functions""" - - result_range_name: str - """The name of the range of the data produced by func.""" - - result_range_cls_def: Optional[MinimalClass] - """The class definition of the data produced by func. None if the function - result range is a type rather than a class.""" - - result_multivalued: bool - """Whether or not the transformation function produces a single value or a - list.""" - - @classmethod - @abstractmethod - def func(cls, data: Iterable[Any]) -> Any: - """Transforms input data.""" - - -def register_function(func: type[AggregationFunction]) -> type[AggregationFunction]: - """Registers a function in the aggregation function registry.""" - _FUNCTION_REGISTRY[func.__name__] = func - return func - - -class CopyAggregation(AggregationFunction, ABC): - """An abstract base class for type-specific copy aggregation functions.""" - - @classmethod - def _extract_single_value(cls, data: Iterable[Any]) -> Any: - iterator = iter(data) - value = next(iterator) - try: - next(iterator) - except StopIteration: - return value - raise MetadataTransformationError( - "Multiple values passed to copy aggregation function where only a" - " single value was expected." - ) - - -@register_function -class StringListCopyAggregation(CopyAggregation): - """Transformation that returns a list of strings.""" - - result_range_name = "string" - result_range_cls_def = None - result_multivalued = True - - @classmethod - def func(cls, data: Iterable[Any]) -> list[str]: - return list[str](data) - - -@register_function -class StringCopyAggregation(CopyAggregation): - """Transformation that returns a single string.""" - - result_range_name = "string" - result_range_cls_def = None - result_multivalued = False - - @classmethod - def func(cls, data: Iterable[Any]) -> str: - return str(cls._extract_single_value(data=data)) - - -@register_function -class IntegerCopyAggregation(CopyAggregation): - """Transformation that returns a single integer value.""" - - result_range_name = "integer" - result_range_cls_def = None - result_multivalued = False - - @classmethod - def func(cls, data: Iterable[Any]) -> int: - return int(cls._extract_single_value(data=data)) - - -@register_function -class CountAggregation(AggregationFunction): - """Transformation that returns the count of elements for a given sequence of - values. - """ - - result_range_name = "integer" - result_range_cls_def = None - result_multivalued = False - - @classmethod - def func(cls, data: Iterable[Any]) -> int: - return sum(1 for _ in data) - - -@register_function -class IntegerSumAggregation(AggregationFunction): - """Transformation that returns the sum for a given sequence of integer - values. - """ - - result_range_name = "integer" - result_range_cls_def = None - result_multivalued = False - - @classmethod - def func(cls, data: Iterable[int]) -> int: - return sum(data) - - -class ElementCountAggregation(AggregationFunction, ABC): - """Aggregation that returns the counts of unique elements in the given data.""" - - result_multivalued = True - - -@register_function -class StringElementCountAggregation(ElementCountAggregation): - """Aggregation that returns the counts of unique string elements in the - given data. - """ - - result_range_name = "StringValueCount" - result_range_cls_def = MinimalClass( - { - MinimalNamedSlot(range="string", multivalued=False, slot_name="value"), - MinimalNamedSlot(range="integer", multivalued=False, slot_name="count"), - } - ) - - @classmethod - def func(cls, data: Iterable[Any]) -> list[dict[str, Any]]: - return sorted( - ( - {"value": "unknown" if value is None else str(value), "count": count} - for value, count in Counter(data).items() - ), - key=itemgetter("value"), - ) - - -@register_function -class IntegerElementCountAggregation(ElementCountAggregation): - """Aggregation that returns the counts of unique integer elements in the - given data. - """ - - result_range_name = "IntegerValueCount" - result_range_cls_def = MinimalClass( - { - MinimalNamedSlot(range="integer", multivalued=False, slot_name="value"), - MinimalNamedSlot(range="integer", multivalued=False, slot_name="count"), - } - ) - - @classmethod - def func(cls, data: Iterable[Any]) -> list[dict[str, Any]]: - return sorted( - ( - {"value": int(value), "count": count} - for value, count in Counter(data).items() - if value is not None - ), - key=itemgetter("value"), - ) - - -def transformation_by_name(name: str) -> type[AggregationFunction]: - """Returns a transformation class type based on the transformation class name. - - Args: - name (str): The transformation class name - - Raises: - KeyError: If 'name' cannot be resolved to a known transformation class. - - Returns: - type: The transformation class type - """ - return _FUNCTION_REGISTRY[name + "Aggregation"] diff --git a/src/metldata/builtin_transformations/aggregate/main.py b/src/metldata/builtin_transformations/aggregate/main.py deleted file mode 100644 index cbc2c253..00000000 --- a/src/metldata/builtin_transformations/aggregate/main.py +++ /dev/null @@ -1,102 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Core functionality for aggregate transformations.""" - -from metldata.builtin_transformations.aggregate.cached_model import CachedMetadataModel -from metldata.builtin_transformations.aggregate.config import AggregateConfig -from metldata.builtin_transformations.aggregate.metadata_transform import ( - execute_aggregations, -) -from metldata.builtin_transformations.aggregate.model_transform import ( - build_aggregation_model, -) -from metldata.custom_types import Json -from metldata.event_handling.models import SubmissionAnnotation -from metldata.model_utils.assumptions import check_basic_model_assumption -from metldata.model_utils.essentials import MetadataModel -from metldata.transform.base import MetadataTransformer, TransformationDefinition - - -class AggregateTransformer(MetadataTransformer[AggregateConfig]): - """Transformer to create summary statistics from metadata.""" - - def __init__( - self, - config: AggregateConfig, - original_model: MetadataModel, - transformed_model: MetadataModel, - ): - """Initialize the transformer.""" - super().__init__( - config=config, - original_model=original_model, - transformed_model=transformed_model, - ) - - self._original_cached_model = CachedMetadataModel(model=self._original_model) - self._transformed_cached_model = CachedMetadataModel( - model=self._transformed_model - ) - - def transform(self, *, metadata: Json, annotation: SubmissionAnnotation) -> Json: - """Transforms metadata. - - Args: - metadata: The metadata to be transformed. - annotation: The annotation on the metadata. - - Raises: - MetadataTransformationError: - if the transformation fails. - """ - return execute_aggregations( - original_model=self._original_cached_model, - transformed_anchors_points=self._transformed_cached_model.anchors_points_by_target, - metadata=metadata, - aggregations=self._config.aggregations, - ) - - -def check_model_assumptions( - model: MetadataModel, - config: AggregateConfig, # pylint: disable=unused-argument -) -> None: - """Check the assumptions of the model. - - Raises: - MetadataModelAssumptionError: - if the model does not fulfill the assumptions. - """ - check_basic_model_assumption(model=model) - - -def transform_model(model: MetadataModel, config: AggregateConfig) -> MetadataModel: - """Transform the metadata model. - - Raises: - MetadataModelTransformationError: - if the transformation fails. - """ - return build_aggregation_model(model=model, config=config) - - -AGGREGATE_TRANSFORMATION = TransformationDefinition[AggregateConfig]( - config_cls=AggregateConfig, - check_model_assumptions=check_model_assumptions, - transform_model=transform_model, - metadata_transformer_factory=AggregateTransformer, -) diff --git a/src/metldata/builtin_transformations/aggregate/metadata_transform.py b/src/metldata/builtin_transformations/aggregate/metadata_transform.py deleted file mode 100644 index 7c729b25..00000000 --- a/src/metldata/builtin_transformations/aggregate/metadata_transform.py +++ /dev/null @@ -1,86 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Metadata transformation functionality for the aggregate transformation.""" - -from metldata.builtin_transformations.aggregate.cached_model import CachedMetadataModel -from metldata.builtin_transformations.aggregate.config import Aggregation -from metldata.builtin_transformations.aggregate.data_subgraph import DataSubgraph -from metldata.builtin_transformations.aggregate.expanding_dict import ExpandingDict -from metldata.builtin_transformations.aggregate.func import MetadataTransformationError -from metldata.custom_types import Json -from metldata.model_utils.anchors import AnchorPoint - - -# pylint: disable=unused-argument -def execute_aggregation( - *, - original_model: CachedMetadataModel, - original_data: Json, - aggregation: Aggregation, -) -> list[Json]: - """Transforms the metadata according to the specified aggregation operation.""" - anchor_point = original_model.anchors_points_by_target[aggregation.input] - id_slot = anchor_point.identifier_slot - input_anchor_data = original_data[anchor_point.root_slot] - output_data: list[Json] = [] - for input_element in input_anchor_data: - result = ExpandingDict() - for operation in aggregation.operations: - subgraph = DataSubgraph( - model=original_model, - submission_data=original_data, - origin=aggregation.input, - path_strings=operation.input_paths, - visit_once_classes=operation.visit_only_once, - ) - try: - aggregated = operation.function.func( - subgraph.terminal_nodes(data=input_element) - ) - except Exception as error: - raise MetadataTransformationError( - "Cannot execute operation:\n" - f"{operation}\nwith input {input_element!r}:\n{error}" - ) from error - result.set_path_value(operation.output_path, aggregated) - result[id_slot] = input_element[id_slot] - output_data.append(result.to_dict()) - - return output_data - - -def execute_aggregations( - *, - original_model: CachedMetadataModel, - transformed_anchors_points: dict[str, AnchorPoint], - metadata: Json, - aggregations: list[Aggregation], -) -> Json: - """Transforms the metadata according to the specified list of aggregation - operations. - """ - transformed_data = {} - for aggregation in aggregations: - output_data = execute_aggregation( - original_model=original_model, - original_data=metadata, - aggregation=aggregation, - ) - transformed_data[ - transformed_anchors_points[aggregation.output].root_slot - ] = output_data - return transformed_data diff --git a/src/metldata/builtin_transformations/aggregate/model_transform.py b/src/metldata/builtin_transformations/aggregate/model_transform.py deleted file mode 100644 index 665baddf..00000000 --- a/src/metldata/builtin_transformations/aggregate/model_transform.py +++ /dev/null @@ -1,376 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Model transformation for aggregate transformations.""" - -import itertools -from collections import defaultdict -from collections.abc import Iterable -from dataclasses import asdict -from typing import Optional - -from linkml_runtime.linkml_model import ClassDefinition, SlotDefinition -from stringcase import snakecase - -from metldata.builtin_transformations.aggregate.config import ( - AggregateConfig, - Aggregation, -) -from metldata.builtin_transformations.aggregate.models import ( - MinimalClass, - MinimalLinkMLModel, - MinimalNamedSlot, - MinimalSlot, -) -from metldata.model_utils.anchors import AnchorPoint -from metldata.model_utils.essentials import ROOT_CLASS, MetadataModel -from metldata.model_utils.identifiers import get_class_identifier -from metldata.model_utils.manipulate import add_anchor_point, upsert_class_slot -from metldata.transform.base import MetadataModelTransformationError - -Path = tuple[Optional[str], ...] - - -class PathMatrix: - """Represents a matrix of data paths.""" - - __paths: list[Path] - leaf_slots: list[MinimalNamedSlot] - - def path_leaves(self) -> Iterable[str]: - """Yields the path leaves of all paths""" - for path in self.__paths: - for node in reversed(path): - if node is not None: - yield node - break - - def validate_paths(self) -> None: - """Validates that the specified output paths are compatible, i.e. that - no path is a prefix of another path. Note that this implicitly includes - checking for identical paths. - - Raises: - MetadataModelTransformationError: If one path is a prefix of another. - """ - for path_a, path_b in itertools.combinations(self.__paths, r=2): - min_len = min(len(path_a), len(path_b)) - if path_a[:min_len] == path_b[:min_len]: - raise MetadataModelTransformationError( - "Incompatible output paths:" - f" '{'.'.join(str(elem) for elem in path_a)}" - f" and {'.'.join(str(elem) for elem in path_b)}." - ) - - def load_leaf_slots(self, leaf_slots: list[MinimalSlot]) -> None: - """Combines the paths and the specified leaf slots to NamedSlots and - stores them. - """ - self.leaf_slots = [ - MinimalNamedSlot(slot_name=slot_name, **asdict(slot)) - for slot_name, slot in zip(self.path_leaves(), leaf_slots) - ] - - @property - def paths(self): - """Returns a copy of the paths.""" - return self.__paths[:] - - @property - def max_depth(self): - """The maximum depth among all paths""" - # All path lengths are equal after normalization - return len(self.__paths[0]) if self.__paths else 0 - - def normalize_path_matrix(self) -> None: - """Equalize the lengths of all paths by appending None values to paths - shorter than then maximum path length. - """ - max_depth = max(len(path) for path in self.__paths) - self.__paths = [ - path + (None,) * (max_depth - len(path)) for path in self.__paths - ] - - def add_path(self, path: Path, leaf_slot: MinimalNamedSlot) -> None: - """Add a path""" - for existing_path in self.__paths: - if path == existing_path[: len(path)]: - raise MetadataModelTransformationError( - f"Cannot add conflicting path {path}." - ) - self.__paths.append(path) - self.leaf_slots.append(leaf_slot) - self.normalize_path_matrix() - - def load_path_strings(self, paths: list[list[str]]) -> None: - """Given a list of lists, appends None values to each list until the - length of the longest list is matched. - """ - self.__paths = list(map(Path, paths)) - self.validate_paths() - self.normalize_path_matrix() - - def compact_path_matrix(self) -> None: - """Eliminate trailing None columns in the path matrix.""" - while self.__paths and all(path[-1] is None for path in self.__paths): - self.__paths = [path[:-1] for path in self.__paths] - - def delete_path(self, path: Path) -> None: - """Deletes the specified path from the path matrix and leaf_slots""" - idx = self.__paths.index(path) - del self.__paths[idx] - del self.leaf_slots[idx] - self.compact_path_matrix() - - def __init__(self, path_strings: list[str], leaf_slots: list[MinimalSlot]): - """Creates a new ModelGenerator""" - paths = [path_string.split(".") for path_string in path_strings] - self.load_path_strings(paths) - self.load_leaf_slots(leaf_slots) - - -def update_metadata_model(model: MetadataModel, min_model: MinimalLinkMLModel) -> None: - """Update a MetadataModel based on the provided minimal class representations. - - Bare bone slots will be added based on all slot names that are found in the - provided classes. One class will be created according to each provided class - with the slots being configured in slot_usage entirely. - - Args: - model (MetadataModel): The MetadataModel to modify in place. - class_names (dict[MinimalClass, str]): A dictionary of MinimalClasses - with associated class names. - """ - # Enumerate all unique slot names and add the slots to the model - all_min_classes = itertools.chain( - min_model.anonymous_classes, min_model.named_classes.values() - ) - slot_names = sorted({slot.slot_name for cls in all_min_classes for slot in cls}) - - for slot_name in slot_names: - model.schema_view.add_slot(slot=SlotDefinition(name=slot_name)) - new_class_defs: dict[str, ClassDefinition] = {} - - for cls_name, min_cls_def in min_model.all_classes(): - new_class_defs[cls_name] = ClassDefinition( - name=cls_name, - slots=sorted(slot.slot_name for slot in min_cls_def), - slot_usage={ - slot.slot_name: { - "range": slot.range, - "multivalued": slot.multivalued, - } - for slot in sorted(min_cls_def) - }, - ) - - all_classes = model.schema_view.all_classes() - for cls_name, cls_def in new_class_defs.items(): # noqa: B007 - for slot_name, slot_config in cls_def.slot_usage.items(): # noqa: B007 - slot_range = slot_config["range"] - if slot_range in all_classes or slot_range in new_class_defs: - slot_config["inlined"] = True - if slot_config["multivalued"]: - slot_config["inlined_as_list"] = True - - for cls_def in new_class_defs.values(): - model.schema_view.add_class(cls_def) - - -def add_aggregation(min_model: MinimalLinkMLModel, aggregation: Aggregation) -> None: - """Adds the required slots and classes defined by the provided aggregation - to the provided minimal model. - """ - root_name = aggregation.output - path_strings = [operation.output_path for operation in aggregation.operations] - leaf_ranges = [op.function.result_range_name for op in aggregation.operations] - leaf_multivalued = [op.function.result_multivalued for op in aggregation.operations] - - path_matrix = PathMatrix( - path_strings=path_strings, - leaf_slots=[ - MinimalSlot(range=slot_range, multivalued=mv) - for slot_range, mv in zip(leaf_ranges, leaf_multivalued) - ], - ) - - for _ in range(path_matrix.max_depth): - classes: dict[Path, set[MinimalNamedSlot]] = defaultdict(set[MinimalNamedSlot]) - for idx, path_prefix in enumerate(path_matrix.paths): - if path_prefix[-1]: - classes[path_prefix[:-1]].add(path_matrix.leaf_slots[idx]) - for path_prefix, cls_set in classes.items(): - # Delete all paths with this prefix - for slot in cls_set: - path_matrix.delete_path(path_prefix + (slot.slot_name,)) # noqa: RUF005 - # Construct a class for this prefix and check if a matching - # class already exists. - cls = MinimalClass(cls_set) - - if not path_prefix: - # We have reached the root of the output path model - min_model.add_named_class(cls_def=cls, cls_name=root_name) - slot_range = root_name - else: # noqa: PLR5501 - # We are at an intermediate model and will use generic class - # names and potentially re-use the classes as they fit - if cls in min_model.anonymous_classes: - slot_range = min_model.anonymous_classes[cls] - else: - slot_range = min_model.add_anonymous_class(cls) - # Add the prefix as a new path with the identified class as range - if path_prefix and path_prefix[-1]: - path_matrix.add_path( - path_prefix, - MinimalNamedSlot( - slot_name=path_prefix[-1], - multivalued=False, - range=slot_range, - ), - ) - - -def bare_bone_model_from_other(model: MetadataModel) -> MetadataModel: - """Create a new MetadataModel with no classes, enums, slots and subsets. All - other SchemaDefinition attributes are kept. - """ - model_dict = model.as_dict(essential=False) - del model_dict["enums"] - del model_dict["slots"] - del model_dict["subsets"] - model_dict["classes"] = { - ROOT_CLASS: ClassDefinition(name=ROOT_CLASS, tree_root=True) - } - return MetadataModel(**model_dict) - - -def get_identifier_slot_names( - input_model: MetadataModel, origin_map: dict[str, str] -) -> dict[str, str]: - """Associate the correct identifier slot name with every output class. - - Args: - input_model (MetadataModel): The input original metadata model - origin_map (dict[str,str]): A dictionary mapping input class names to output class names - - Returns: - dict[str,str]: A dictionary mapping output class names to identifier slot names - """ - id_slot_map: dict[str, str] = {} - for in_cls_name, out_cls_name in origin_map.items(): - slot_name = get_class_identifier(input_model, in_cls_name) - if not slot_name: - raise MetadataModelTransformationError( - f"No identifier slot for class {in_cls_name}." - ) - id_slot_map[out_cls_name] = slot_name - return id_slot_map - - -def add_identifier_slots( - input_model: MetadataModel, - output_model: MetadataModel, - origin_map: dict[str, str], - id_slot_map: dict[str, str], -) -> MetadataModel: - """Adds identifier slots to the high level output model classes. The slot - name and range is inferred from the original input classes. - - Args: - input_model (MetadataModel): _description_ - output_model (MetadataModel): _description_ - class_map (list[tuple[str, str]]): _description_ - - Raises: - MetadataModelTransformationError: _description_ - - Returns: - MetadataModel: _description_ - """ - output_schema_view = output_model.schema_view - for in_class_name, out_class_name in origin_map.items(): - slot_name = id_slot_map[out_class_name] - input_slot = input_model.schema_view.induced_slot(slot_name, in_class_name) - output_schema_view = upsert_class_slot( - schema_view=output_schema_view, - class_name=out_class_name, - new_slot=SlotDefinition( - name=slot_name, range=input_slot.range, identifier=True - ), - ) - - return output_schema_view.export_model() - - -def build_aggregation_model( - model: MetadataModel, config: AggregateConfig -) -> MetadataModel: - """Create a data model for the result of an aggregation transformation as - described in an AggregateConfig - - Args: - model (MetadataModel): The LinkML model to transform - config (AggregateConfig): The config - - Returns: - MetadataModel: A new, modified MetadataModel - """ - # Reduce model to a bare bone model - - min_output_model = MinimalLinkMLModel() - - # Add function output classes - for agg_func in ( - op.function for agg in config.aggregations for op in agg.operations - ): - cls_def = agg_func.result_range_cls_def - cls_name = agg_func.result_range_name - if cls_def: - min_output_model.add_named_class(cls_def=cls_def, cls_name=cls_name) - - # Add upstream classes - for aggregation in config.aggregations: - add_aggregation(min_model=min_output_model, aggregation=aggregation) - - output_model = bare_bone_model_from_other(model) - # Add slots and classes to the bare bone metadata model - update_metadata_model(output_model, min_output_model) - - # Add identifier slots to classes - origin_map = {agg.input: agg.output for agg in config.aggregations} - id_slot_map = get_identifier_slot_names(input_model=model, origin_map=origin_map) - output_model = add_identifier_slots( - input_model=model, - output_model=output_model, - origin_map=origin_map, - id_slot_map=id_slot_map, - ) - - # Anchor the output classes - schema_view = output_model.schema_view - for aggregation in config.aggregations: - root_slot = snakecase(aggregation.output) - root_slot = root_slot + "s" if not root_slot.endswith("s") else root_slot - schema_view = add_anchor_point( - schema_view=schema_view, - anchor_point=AnchorPoint( - target_class=aggregation.output, - identifier_slot=id_slot_map[aggregation.output], - root_slot=root_slot, - ), - ) - - return schema_view.export_model() diff --git a/src/metldata/builtin_transformations/aggregate/models.py b/src/metldata/builtin_transformations/aggregate/models.py deleted file mode 100644 index 829fec9c..00000000 --- a/src/metldata/builtin_transformations/aggregate/models.py +++ /dev/null @@ -1,92 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Minimal models for LinkML elements.""" - -from collections.abc import Iterable -from dataclasses import dataclass, field - - -@dataclass(frozen=True) -class MinimalSlot: - """A minimal representation of a LinkML slot without a name""" - - range: str - multivalued: bool - - -@dataclass(frozen=True) -class MinimalNamedSlot(MinimalSlot): - """A minimal representation of a LinkML slot with a name.""" - - slot_name: str - - def __lt__(self, other): # noqa: D105 - return ( - self.slot_name < other.slot_name - and self.multivalued < other.multivalued - and self.range < other.range - ) - - -class MinimalClass(frozenset[MinimalNamedSlot]): - """A minimal representation of a LinkML class""" - - -class NamedClassConflict(RuntimeError): - """Raised when an attempt is made to add two classes of the same name but - conflicting definitions to the same model. - """ - - -@dataclass -class MinimalLinkMLModel: - """A minimal representation of a LinkML model in form of a dictionary - mapping anonymous classes to their names. - """ - - __AUTO_GENERATION_PREFIX = "AutoGeneratedClass" - - named_classes: dict[str, MinimalClass] = field(default_factory=dict) - anonymous_classes: dict[MinimalClass, str] = field(default_factory=dict) - - def all_classes(self) -> Iterable[tuple[str, MinimalClass]]: - """Iterates all class names and definitions currently in the model.""" - for cls_name, cls_def in self.named_classes.items(): - yield cls_name, cls_def - for cls_def, cls_name in self.anonymous_classes.items(): - yield cls_name, cls_def - - def add_named_class(self, cls_def: MinimalClass, cls_name: str) -> None: - """Adds a named class. Raises an error if the class name is already used - for a different class definition. - """ - if ( - cls_name in self.named_classes and cls_def != self.named_classes[cls_name] - ) or cls_name.startswith(self.__AUTO_GENERATION_PREFIX): - raise NamedClassConflict(cls_name) - self.named_classes[cls_name] = cls_def - - def add_anonymous_class(self, cls_def: MinimalClass) -> str: - """Adds an anonymous class and returns a generated class name. If the - same class was previously defined, the class is re-used. - """ - if cls_def in self.anonymous_classes: - cls_name = self.anonymous_classes[cls_def] - else: - cls_name = f"{self.__AUTO_GENERATION_PREFIX}{len(self.anonymous_classes)}" - self.anonymous_classes[cls_def] = cls_name - return cls_name diff --git a/src/metldata/builtin_transformations/custom_embeddings/__init__.py b/src/metldata/builtin_transformations/custom_embeddings/__init__.py deleted file mode 100644 index 09588c2f..00000000 --- a/src/metldata/builtin_transformations/custom_embeddings/__init__.py +++ /dev/null @@ -1,25 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""A transformation to generate custom embeddings for classes of a metadata model.""" - - -# shortcuts: -# pylint: disable=unused-import -from metldata.builtin_transformations.custom_embeddings.main import ( # noqa: F401 - CUSTOM_EMBEDDING_TRANSFORMATION, - CustomEmbeddingConfig, -) diff --git a/src/metldata/builtin_transformations/custom_embeddings/config.py b/src/metldata/builtin_transformations/custom_embeddings/config.py deleted file mode 100644 index c527ad8b..00000000 --- a/src/metldata/builtin_transformations/custom_embeddings/config.py +++ /dev/null @@ -1,71 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Models used to describe embedding profiles.""" - -from pydantic import Field, field_validator -from pydantic_settings import BaseSettings, SettingsConfigDict - -from metldata.builtin_transformations.custom_embeddings.embedding_profile import ( - EmbeddingProfile, -) - - -def _get_target_class_names(*, embedding_profile: EmbeddingProfile) -> list[str]: - """A function to get the names of the target classes from an embedding profile - including nested embedding profiles. - """ - embedded_classes = [embedding_profile.target_class] - for referenced_profile in embedding_profile.embedded_references.values(): - if isinstance(referenced_profile, EmbeddingProfile): - embedded_classes.extend( - _get_target_class_names(embedding_profile=referenced_profile) - ) - - return embedded_classes - - -class CustomEmbeddingConfig(BaseSettings): - """Config to describe profiles for custom embeddings of classes from a metadata - model. - """ - - model_config = SettingsConfigDict(extra="forbid") - - embedding_profiles: list[EmbeddingProfile] = Field( - ..., - description=( - "A list of custom embedding profiles for classes from a metadata model." - ), - ) - - # pylint: disable=no-self-argument - @field_validator("embedding_profiles") - def check_embedding_profiles_unique( - cls, - value: list[EmbeddingProfile], - ) -> list[EmbeddingProfile]: - """Check that names for embedded classes are unique among the embedding_profiles.""" - embedded_classes = [ - embedded_class - for profile in value - for embedded_class in _get_target_class_names(embedding_profile=profile) - ] - - if len(embedded_classes) != len(set(embedded_classes)): - raise ValueError("Names for embedded classes must be unique.") - - return value diff --git a/src/metldata/builtin_transformations/custom_embeddings/embedding_profile.py b/src/metldata/builtin_transformations/custom_embeddings/embedding_profile.py deleted file mode 100644 index 1a379789..00000000 --- a/src/metldata/builtin_transformations/custom_embeddings/embedding_profile.py +++ /dev/null @@ -1,53 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Logic for defining embedding profiles.""" - -from __future__ import annotations - -from typing import Optional, Union - -from pydantic import BaseModel, Field - - -class EmbeddingProfile(BaseModel): - """A model for describing a profile for embedding referenced classes into a class - of interest of a metadata model. Please note, only the embedding for anchored - classes that are referenced by this source class can be changed. All anchored - classes are assumed to be non-embedded by default. The embedding profile can be used - to define anchored classes as embedded given the slot named used for renferencing - in the source class. - """ - - target_class: str = Field( - ..., description="The name of the transformed class with embeddings." - ) - source_class: str = Field( - ..., description="The class to which the this embedding profile applies." - ) - description: Optional[str] = Field( - ..., description="Description of the transformed class with embeddings." - ) - embedded_references: dict[str, Union[str, EmbeddingProfile]] = Field( - ..., - description=( - "The references embedded into the target class." - + "The keys are the names of slots in the target class that are used for " - + " the references to other classes. The values are either the names of the" - + " referenced classes or other embedding profiles if a custom embedding" - + " will be applied to the referenced classes, too." - ), - ) diff --git a/src/metldata/builtin_transformations/custom_embeddings/main.py b/src/metldata/builtin_transformations/custom_embeddings/main.py deleted file mode 100644 index d53eecdc..00000000 --- a/src/metldata/builtin_transformations/custom_embeddings/main.py +++ /dev/null @@ -1,107 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""A transformation to generate custom embeddings for classes of a metadata model.""" - -from metldata.builtin_transformations.custom_embeddings.config import ( - CustomEmbeddingConfig, -) -from metldata.builtin_transformations.custom_embeddings.metadata_transform import ( - add_custom_embeddings_to_metadata, -) -from metldata.builtin_transformations.custom_embeddings.model_transform import ( - add_custom_embedded_classes, -) -from metldata.event_handling.models import SubmissionAnnotation -from metldata.model_utils.anchors import get_anchors_points_by_target -from metldata.model_utils.assumptions import check_basic_model_assumption -from metldata.model_utils.essentials import MetadataModel -from metldata.transform.base import Json, MetadataTransformer, TransformationDefinition - - -class CustomEmbeddingMetadataTransformer(MetadataTransformer[CustomEmbeddingConfig]): - """A transformer that generates custom embedding for classes of a metadata model.""" - - def __init__( - self, - config: CustomEmbeddingConfig, - original_model: MetadataModel, - transformed_model: MetadataModel, - ): - """Initialize the transformer.""" - super().__init__( - config=config, - original_model=original_model, - transformed_model=transformed_model, - ) - - self._anchor_points_by_target = get_anchors_points_by_target( - model=self._original_model - ) - - def transform(self, *, metadata: Json, annotation: SubmissionAnnotation) -> Json: - """Transforms metadata. - - Args: - metadata: The metadata to be transformed. - annotation: The annotation on the metadata. - - Raises: - MetadataTransformationError: - if the transformation fails. - """ - return add_custom_embeddings_to_metadata( - metadata=metadata, - embedding_profiles=self._config.embedding_profiles, - model=self._original_model, - anchor_points_by_target=self._anchor_points_by_target, - ) - - -def check_model_assumptions( - model: MetadataModel, - config: CustomEmbeddingConfig, # pylint: disable=unused-argument -) -> None: - """Check the assumptions of the model. - - Raises: - MetadataModelAssumptionError: - if the model does not fulfill the assumptions. - """ - check_basic_model_assumption(model=model) - - -def transform_model( - model: MetadataModel, config: CustomEmbeddingConfig -) -> MetadataModel: - """Transform the metadata model. - - Raises: - MetadataModelTransformationError: - if the transformation fails. - """ - return add_custom_embedded_classes( - model=model, - embedding_profiles=config.embedding_profiles, - ) - - -CUSTOM_EMBEDDING_TRANSFORMATION = TransformationDefinition[CustomEmbeddingConfig]( - config_cls=CustomEmbeddingConfig, - check_model_assumptions=check_model_assumptions, - transform_model=transform_model, - metadata_transformer_factory=CustomEmbeddingMetadataTransformer, -) diff --git a/src/metldata/builtin_transformations/custom_embeddings/metadata_transform.py b/src/metldata/builtin_transformations/custom_embeddings/metadata_transform.py deleted file mode 100644 index 9782f41c..00000000 --- a/src/metldata/builtin_transformations/custom_embeddings/metadata_transform.py +++ /dev/null @@ -1,211 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Logic for transforming metadata.""" - -from typing import Union, cast - -from metldata.builtin_transformations.custom_embeddings.embedding_profile import ( - EmbeddingProfile, -) -from metldata.builtin_transformations.custom_embeddings.model_transform import ( - get_embedding_profile_root_slot, -) -from metldata.metadata_utils import ( - MetadataResourceNotFoundError, - get_resource_dict_of_class, - lookup_resource_by_identifier, - upsert_resources_in_metadata, -) -from metldata.model_utils.anchors import AnchorPoint, lookup_anchor_point -from metldata.model_utils.essentials import MetadataModel -from metldata.transform.base import Json, MetadataTransformationError - - -def is_slot_multivalued( - *, slot_name: str, class_name: str, model: MetadataModel -) -> bool: - """Checks whether a slot is multivalued.""" - slot_definition = model.schema_view.induced_slot( - slot_name=slot_name, class_name=class_name - ) - - if not slot_definition: - raise RuntimeError( # this should never happen - f"Slot '{slot_name}' not found in class '{class_name}'" - ) - - return bool(slot_definition.multivalued) - - -def resolve_target_resource( - target_resource_id: str, - target: Union[str, EmbeddingProfile], - global_metadata: Json, - model: MetadataModel, - anchor_points_by_target: dict, -) -> Json: - """Resolves a target resource. - - Raises: - MetadataTransformationError: If the target resource could not be found. - """ - if isinstance(target, EmbeddingProfile): - return generate_embedded_resource( - resource_id=target_resource_id, - embedding_profile=target, - global_metadata=global_metadata, - model=model, - anchor_points_by_target=anchor_points_by_target, - ) - - try: - return lookup_resource_by_identifier( - class_name=target, - identifier=target_resource_id, - global_metadata=global_metadata, - anchor_points_by_target=anchor_points_by_target, - ) - except MetadataResourceNotFoundError as error: - raise MetadataTransformationError( - f"Could not find resource '{target_resource_id}' of class '{target}'" - ) from error - - -def generate_embedded_resource( - resource_id: str, - embedding_profile: EmbeddingProfile, - global_metadata: Json, - model: MetadataModel, - anchor_points_by_target: dict, -) -> Json: - """Generates an embedded version of the specified resource. This is done recursively - for all embedded references that are linked to this resource. - """ - resource = lookup_resource_by_identifier( - class_name=embedding_profile.source_class, - identifier=resource_id, - global_metadata=global_metadata, - anchor_points_by_target=anchor_points_by_target, - ) - - for reference_slot_name, target in embedding_profile.embedded_references.items(): - if is_slot_multivalued( - slot_name=reference_slot_name, - class_name=embedding_profile.source_class, - model=model, - ): - target_resource_ids = cast(list[str], resource[reference_slot_name]) - target_resources = [ - resolve_target_resource( - target_resource_id=target_resource_id, - target=target, - global_metadata=global_metadata, - model=model, - anchor_points_by_target=anchor_points_by_target, - ) - for target_resource_id in target_resource_ids - ] - resource[reference_slot_name] = target_resources - else: - target_resource_id = cast(str, resource[reference_slot_name]) - target_resource = resolve_target_resource( - target_resource_id=target_resource_id, - target=target, - global_metadata=global_metadata, - model=model, - anchor_points_by_target=anchor_points_by_target, - ) - resource[reference_slot_name] = target_resource - - return resource - - -def add_custom_embedding_to_metadata( - *, - metadata: Json, - embedding_profile: EmbeddingProfile, - model: MetadataModel, - anchor_points_by_target: dict[str, AnchorPoint], -) -> Json: - """Add custom embedding to the metadata. - - Raises: - MetadataTransformationError: - if the transformation of the metadata fails. - """ - resource_ids = get_resource_dict_of_class( - class_name=embedding_profile.source_class, - global_metadata=metadata, - anchor_points_by_target=anchor_points_by_target, - ).keys() - - resources = [ - generate_embedded_resource( - resource_id=resource_id, - embedding_profile=embedding_profile, - global_metadata=metadata, - model=model, - anchor_points_by_target=anchor_points_by_target, - ) - for resource_id in resource_ids - ] - - # add anchor point for embedding profile: - source_class_anchor_point = lookup_anchor_point( - class_name=embedding_profile.source_class, - anchor_points_by_target=anchor_points_by_target, - ) - embedded_class_anchor_point = AnchorPoint( - target_class=embedding_profile.target_class, - identifier_slot=source_class_anchor_point.identifier_slot, - root_slot=get_embedding_profile_root_slot(embedding_profile=embedding_profile), - ) - anchor_points_by_target_modified = anchor_points_by_target.copy() - anchor_points_by_target_modified[ - embedding_profile.target_class - ] = embedded_class_anchor_point - - return upsert_resources_in_metadata( - resources=resources, - class_name=embedding_profile.target_class, - global_metadata=metadata, - anchor_points_by_target=anchor_points_by_target_modified, - ) - - -def add_custom_embeddings_to_metadata( - *, - metadata: Json, - embedding_profiles: list[EmbeddingProfile], - model: MetadataModel, - anchor_points_by_target: dict[str, AnchorPoint], -) -> Json: - """Add custom embeddings to the metadata. - - Raises: - MetadataTransformationError: - if the transformation of the metadata fails. - """ - for embedding_profile in embedding_profiles: - metadata = add_custom_embedding_to_metadata( - metadata=metadata, - embedding_profile=embedding_profile, - model=model, - anchor_points_by_target=anchor_points_by_target, - ) - - return metadata diff --git a/src/metldata/builtin_transformations/custom_embeddings/model_transform.py b/src/metldata/builtin_transformations/custom_embeddings/model_transform.py deleted file mode 100644 index bfb8de3b..00000000 --- a/src/metldata/builtin_transformations/custom_embeddings/model_transform.py +++ /dev/null @@ -1,247 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Logic for transforming metadata models.""" - -from copy import deepcopy -from typing import Union - -from linkml_runtime.linkml_model.meta import ClassDefinition, SlotDefinition -from stringcase import snakecase - -from metldata.builtin_transformations.custom_embeddings.embedding_profile import ( - EmbeddingProfile, -) -from metldata.model_utils.anchors import AnchorPoint, get_anchors_points_by_target -from metldata.model_utils.essentials import ( - ROOT_CLASS, - ExportableSchemaView, - MetadataModel, -) -from metldata.model_utils.identifiers import get_class_identifier -from metldata.model_utils.manipulate import ( - add_anchor_point, - add_slot_usage_annotation, - disable_identifier_slot, - get_normalized_slot_usage, -) -from metldata.transform.base import MetadataModelTransformationError - - -def get_embedding_profile_root_slot(embedding_profile: EmbeddingProfile) -> str: - """Get the root slot for an embedding profile.""" - return snakecase(embedding_profile.target_class) - - -def get_embedded_reference_slot( - *, - class_: ClassDefinition, - schema_view: ExportableSchemaView, - reference_slot_name: str, - target: Union[str, EmbeddingProfile], -) -> SlotDefinition: - """Update the slot definition of an embedded reference.""" - if not class_.slots or reference_slot_name not in class_.slots: - raise MetadataModelTransformationError( - f"Class '{class_.name}' does not have the slot '{reference_slot_name}'" - ) - - slot_usage = get_normalized_slot_usage(class_=class_) - if reference_slot_name in slot_usage: - slot_definition = slot_usage[reference_slot_name] - else: - slot_definition = SlotDefinition(name=reference_slot_name) - - # make sure that the range is in line with the embedding profile: - expected_target_class = ( - target.source_class if isinstance(target, EmbeddingProfile) else target - ) - induced_slot_definition = schema_view.induced_slot( - slot_name=reference_slot_name, class_name=class_.name - ) - if induced_slot_definition.range != expected_target_class: - raise MetadataModelTransformationError( - f"Range of slot '{reference_slot_name}' in class" - + f" '{class_.name}' does not match the reference specified in the" - + " embedding profile" - ) - - # update the range if the target is another embedded class: - if isinstance(target, EmbeddingProfile): - slot_definition.range = target.target_class - - # set the target slot to inlined: - slot_definition.inlined = True - if induced_slot_definition.multivalued: - slot_definition.inlined_as_list = True - - return slot_definition - - -def generated_embedded_class( - *, - schema_view: ExportableSchemaView, - embedding_profile: EmbeddingProfile, -) -> ClassDefinition: - """Generate an embedded class from an embedding profile.""" - class_to_embed = schema_view.get_class(embedding_profile.source_class) - if not class_to_embed: - raise MetadataModelTransformationError( - f"Could not find class {embedding_profile.source_class} in model" - ) - - embedded_class = deepcopy(class_to_embed) - - # rename the class: - embedded_class.name = embedding_profile.target_class - - if not embedded_class.slots: - embedded_class.slots = [] - - if not embedded_class.slot_usage: - embedded_class.slot_usage = {} - - embedded_class.slot_usage = get_normalized_slot_usage(class_=embedded_class) - - for ( - reference_slot_name, - target, - ) in embedding_profile.embedded_references.items(): - if reference_slot_name not in embedded_class.slots: - raise MetadataModelTransformationError( - f"Slot '{reference_slot_name}' not found in class" - + f" '{embedding_profile.source_class}'." - ) - - embedded_class.slot_usage[reference_slot_name] = get_embedded_reference_slot( - class_=class_to_embed, - schema_view=schema_view, - reference_slot_name=reference_slot_name, - target=target, - ) - - return embedded_class - - -def add_anchor_point_for_embedded_class( - *, - schema_view: ExportableSchemaView, - embedding_profile: EmbeddingProfile, -) -> ExportableSchemaView: - """Add an anchor point for an embedded class to the schema view.""" - identifier_slot = get_class_identifier( - model=schema_view.export_model(), class_name=embedding_profile.source_class - ) - - if not identifier_slot: - raise MetadataModelTransformationError( - f"Could not find identifier slot for class {embedding_profile.source_class}" - ) - anchor_point = AnchorPoint( - root_slot=get_embedding_profile_root_slot(embedding_profile=embedding_profile), - target_class=embedding_profile.target_class, - identifier_slot=identifier_slot, - ) - - schema_view = add_anchor_point( - schema_view=schema_view, - anchor_point=anchor_point, - description=embedding_profile.description, - ) - - return schema_view - - -def add_custom_embedded_class( - *, - model: MetadataModel, - embedding_profile: EmbeddingProfile, - anchor_points_by_target: dict[str, AnchorPoint], - include_anchor_point: bool = True, -) -> MetadataModel: - """Add a custom embedded class to a metadata model. - If no anchor point is needed, specify `include_anchor_point=False`. - """ - schema_view = model.schema_view - embedded_class = generated_embedded_class( - schema_view=schema_view, - embedding_profile=embedding_profile, - ) - schema_view.add_class(embedded_class) - - # add anchor point for embedded class: - if include_anchor_point: - schema_view = add_anchor_point_for_embedded_class( - schema_view=schema_view, embedding_profile=embedding_profile - ) - else: - schema_view = disable_identifier_slot( - schema_view=schema_view, class_name=embedded_class.name - ) - - model_modified = schema_view.export_model() - - # also prepare embedded classes for references: - for target in embedding_profile.embedded_references.values(): - if isinstance(target, EmbeddingProfile): - model_modified = add_custom_embedded_class( - model=model_modified, - embedding_profile=target, - anchor_points_by_target=anchor_points_by_target, - include_anchor_point=False, - ) - - return model_modified - - -def mark_anchored_classes_as_hidden( - *, model: MetadataModel, anchor_points_by_target: dict[str, AnchorPoint] -) -> MetadataModel: - """Mark all classes that are anchored as hidden. Returns a copy of the model.""" - schema_view = model.schema_view - - for anchor_point in anchor_points_by_target.values(): - schema_view = add_slot_usage_annotation( - schema_view=schema_view, - slot_name=anchor_point.root_slot, - class_name=ROOT_CLASS, - annotation_key="hidden", - annotation_value=True, - ) - - return schema_view.export_model() - - -def add_custom_embedded_classes( - *, model: MetadataModel, embedding_profiles: list[EmbeddingProfile] -) -> MetadataModel: - """Add custom embedded classes to a metadata model.""" - anchor_points_by_target = get_anchors_points_by_target(model=model) - - # mark all existing anchored classes as hidden, so that only the custom embedded - # classes are visible: - model = mark_anchored_classes_as_hidden( - model=model, anchor_points_by_target=anchor_points_by_target - ) - - for embedding_profile in embedding_profiles: - model = add_custom_embedded_class( - model=model, - embedding_profile=embedding_profile, - anchor_points_by_target=anchor_points_by_target, - ) - - return model diff --git a/src/metldata/builtin_transformations/merge_slots/__init__.py b/src/metldata/builtin_transformations/merge_slots/__init__.py deleted file mode 100644 index c644c723..00000000 --- a/src/metldata/builtin_transformations/merge_slots/__init__.py +++ /dev/null @@ -1,24 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""A transformation that merges multiple slots of a class into a single one.""" - -# shortcuts: -# pylint: disable=unused-import -from metldata.builtin_transformations.merge_slots.main import ( # noqa: F401 - SLOT_MERGING_TRANSFORMATION, - SlotMergingConfig, -) diff --git a/src/metldata/builtin_transformations/merge_slots/assumptions.py b/src/metldata/builtin_transformations/merge_slots/assumptions.py deleted file mode 100644 index a7ae00fc..00000000 --- a/src/metldata/builtin_transformations/merge_slots/assumptions.py +++ /dev/null @@ -1,73 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Logic for checking transformation-specific model assumptions.""" - - -from metldata.builtin_transformations.merge_slots.models import SlotMergeInstruction -from metldata.model_utils.assumptions import ( - MetadataModelAssumptionError, - check_class_slot_exists, -) -from metldata.model_utils.essentials import MetadataModel - - -def check_source_slots_exist( - model: MetadataModel, merge_instructions: list[SlotMergeInstruction] -) -> None: - """Check that the source slots exist in the model.""" - for merge_instruction in merge_instructions: - for source_slot in merge_instruction.source_slots: - try: - check_class_slot_exists( - model=model, - class_name=merge_instruction.class_name, - slot_name=source_slot, - ) - except MetadataModelAssumptionError as error: - raise MetadataModelAssumptionError( - f"Source slot {source_slot} of class " - + f"{merge_instruction.class_name} does not exist in the model." - ) from error - - -def check_target_slots_not_exist( - model: MetadataModel, merge_instructions: list[SlotMergeInstruction] -) -> None: - """Check that the target slots do not exist in the model.""" - for merge_instruction in merge_instructions: - try: - check_class_slot_exists( - model=model, - class_name=merge_instruction.class_name, - slot_name=merge_instruction.target_slot, - ) - except MetadataModelAssumptionError: - # this is expected - continue - else: - raise MetadataModelAssumptionError( - f"Target slot {merge_instruction.target_slot} of class " - + f"{merge_instruction.class_name} already exists in the model." - ) - - -def check_model_class_slots( - model: MetadataModel, merge_instructions: list[SlotMergeInstruction] -): - """Check that the specified classes and slots exist in the model.""" - check_source_slots_exist(model=model, merge_instructions=merge_instructions) - check_target_slots_not_exist(model=model, merge_instructions=merge_instructions) diff --git a/src/metldata/builtin_transformations/merge_slots/config.py b/src/metldata/builtin_transformations/merge_slots/config.py deleted file mode 100644 index 93c2b81e..00000000 --- a/src/metldata/builtin_transformations/merge_slots/config.py +++ /dev/null @@ -1,86 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Config parameters and their defaults.""" - -from pydantic import Field, field_validator -from pydantic_settings import BaseSettings, SettingsConfigDict - -from metldata.builtin_transformations.merge_slots.models import SlotMergeInstruction - - -class SlotMergingConfig(BaseSettings): - """Config containing slots to be deleted from models and associated metadata.""" - - model_config = SettingsConfigDict(extra="forbid") - - merge_instructions: list[SlotMergeInstruction] = Field( - ..., - description=( - "A list of slot merging instructions. Each instruction specifies a class" - + " and a target slot into which the source slots should be merged." - + " You may specify merge instructions for the same class." - + " However, the target slot of one merge instruction cannot be used as" - + " a source slot in another merge instruction." - + " The source slots will not be deleted." - ), - examples=[ - { - "class_name": "class_a", - "source_slots": ["some_slot", "another_slot"], - "target_slot": "merged_slot", - }, - ], - ) - - @field_validator("merge_instructions") - def validate_merge_instructions( - cls, filtered_merge_instructions: list[SlotMergeInstruction] - ) -> list[SlotMergeInstruction]: - """Validate that source and target slots do not overlap across merge - instructions and that no target slot is reused for the same - class. - """ - class_names = {merge.class_name for merge in filtered_merge_instructions} - for class_name in class_names: - filtered_merge_instructions = [ - merge - for merge in filtered_merge_instructions - if merge.class_name == class_name - ] - source_slots = { - slot - for merge in filtered_merge_instructions - for slot in merge.source_slots - } - - target_slot_list = [ - merge.target_slot for merge in filtered_merge_instructions - ] - target_slots = set(target_slot_list) - - if len(target_slot_list) != len(target_slots): - raise ValueError( - f"Multiple merge instructions for class '{class_name}'" - + " have the same target slot." - ) - - if source_slots.intersection(target_slots): - raise ValueError( - f"Source and target slots for class '{class_name}' overlap." - ) - - return filtered_merge_instructions diff --git a/src/metldata/builtin_transformations/merge_slots/main.py b/src/metldata/builtin_transformations/merge_slots/main.py deleted file mode 100644 index d8b672e4..00000000 --- a/src/metldata/builtin_transformations/merge_slots/main.py +++ /dev/null @@ -1,96 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""A tranformation for merging multiple slots of a class into a single one.""" - -from metldata.builtin_transformations.merge_slots.assumptions import ( - check_model_class_slots, -) -from metldata.builtin_transformations.merge_slots.config import SlotMergingConfig -from metldata.builtin_transformations.merge_slots.metadata_transform import ( - apply_merge_instructions_to_metadata, -) -from metldata.builtin_transformations.merge_slots.model_transform import ( - merge_slots_in_model, -) -from metldata.event_handling.models import SubmissionAnnotation -from metldata.model_utils.anchors import get_anchors_points_by_target -from metldata.model_utils.assumptions import check_anchor_points -from metldata.model_utils.essentials import MetadataModel -from metldata.transform.base import Json, MetadataTransformer, TransformationDefinition - - -def check_model_assumptions(model: MetadataModel, config: SlotMergingConfig): - """Check that the classes and slots specified in the config exist in the model.""" - check_model_class_slots(model=model, merge_instructions=config.merge_instructions) - - classe_names = { - merge_instruction.class_name for merge_instruction in config.merge_instructions - } - check_anchor_points(model=model, classes=list(classe_names)) - - -def transform_model(model: MetadataModel, config: SlotMergingConfig) -> MetadataModel: - """Merge slots of classes in the model.""" - return merge_slots_in_model( - model=model, merge_instructions=config.merge_instructions - ) - - -class SlotMergingMetadataTransformer(MetadataTransformer[SlotMergingConfig]): - """Transformer for merging slots of classes in a metadata model.""" - - def __init__( - self, - config: SlotMergingConfig, - original_model: MetadataModel, - transformed_model: MetadataModel, - ): - """Initialize the transformer.""" - super().__init__( - config=config, - original_model=original_model, - transformed_model=transformed_model, - ) - - self._anchor_points_by_target = get_anchors_points_by_target( - model=self._original_model - ) - - def transform(self, *, metadata: Json, annotation: SubmissionAnnotation) -> Json: - """Transforms metadata. - - Args: - metadata: The metadata to be transformed. - annotation: The annotation on the metadata. - - Raises: - MetadataTransformationError: - if the transformation fails. - """ - return apply_merge_instructions_to_metadata( - metadata=metadata, - merge_instructions=self._config.merge_instructions, - anchor_points_by_target=self._anchor_points_by_target, - ) - - -SLOT_MERGING_TRANSFORMATION = TransformationDefinition[SlotMergingConfig]( - config_cls=SlotMergingConfig, - check_model_assumptions=check_model_assumptions, - transform_model=transform_model, - metadata_transformer_factory=SlotMergingMetadataTransformer, -) diff --git a/src/metldata/builtin_transformations/merge_slots/metadata_transform.py b/src/metldata/builtin_transformations/merge_slots/metadata_transform.py deleted file mode 100644 index 3b55a4d5..00000000 --- a/src/metldata/builtin_transformations/merge_slots/metadata_transform.py +++ /dev/null @@ -1,129 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Logic for transforming metadata.""" - -from copy import deepcopy - -from metldata.builtin_transformations.merge_slots.models import SlotMergeInstruction -from metldata.custom_types import Json -from metldata.metadata_utils import ( - SlotNotFoundError, - get_resources_of_class, - lookup_slot_in_resource, - upsert_resources_in_metadata, -) -from metldata.model_utils.anchors import AnchorPoint -from metldata.transform.base import MetadataTransformationError - - -def apply_merge_instruction_to_resource( - *, resource: Json, merge_instruction: SlotMergeInstruction -) -> Json: - """Merge slots in a metadata resource according to the given instruction. - - Args: - resource: The resource to transform. - merge_instruction: The merge instruction to apply. - - Returns: - The transformed resource. - """ - modified_resource = deepcopy(resource) - - try: - lookup_slot_in_resource( - resource=resource, slot_name=merge_instruction.target_slot - ) - except SlotNotFoundError: - # this is expected - pass - else: - raise MetadataTransformationError( - f"Target slot {merge_instruction.target_slot} already exists in resource" - + f" of target class {merge_instruction.class_name}." - ) - - modified_resource[merge_instruction.target_slot] = [] - for source_slot in merge_instruction.source_slots: - content = lookup_slot_in_resource(resource=resource, slot_name=source_slot) - if isinstance(content, list): - modified_resource[merge_instruction.target_slot].extend(content) - else: - modified_resource[merge_instruction.target_slot].append(content) - - return modified_resource - - -def apply_merge_instruction_to_metadata( - *, - metadata: Json, - merge_instruction: SlotMergeInstruction, - anchor_points_by_target: dict[str, AnchorPoint], -) -> Json: - """Merge slots in metadata according to the given instruction. - - Args: - metadata: The metadata to transform. - merge_instruction: The merge instruction to apply. - - Returns: - The transformed metadata. - """ - resources = get_resources_of_class( - class_name=merge_instruction.class_name, - global_metadata=metadata, - anchor_points_by_target=anchor_points_by_target, - ) - - modified_resources = [ - apply_merge_instruction_to_resource( - resource=resource, merge_instruction=merge_instruction - ) - for resource in resources - ] - - return upsert_resources_in_metadata( - resources=modified_resources, - class_name=merge_instruction.class_name, - global_metadata=metadata, - anchor_points_by_target=anchor_points_by_target, - ) - - -def apply_merge_instructions_to_metadata( - *, - metadata: Json, - merge_instructions: list[SlotMergeInstruction], - anchor_points_by_target: dict[str, AnchorPoint], -) -> Json: - """Merge slots in metadata according to the given instructions. - - Args: - metadata: The metadata to transform. - merge_instructions: The merge instructions to apply. - - Returns: - The transformed metadata. - """ - for merge_instruction in merge_instructions: - metadata = apply_merge_instruction_to_metadata( - metadata=metadata, - merge_instruction=merge_instruction, - anchor_points_by_target=anchor_points_by_target, - ) - - return metadata diff --git a/src/metldata/builtin_transformations/merge_slots/model_transform.py b/src/metldata/builtin_transformations/merge_slots/model_transform.py deleted file mode 100644 index e2b6ec4d..00000000 --- a/src/metldata/builtin_transformations/merge_slots/model_transform.py +++ /dev/null @@ -1,170 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Logic for transforming metadata models.""" - -from linkml_runtime.linkml_model.meta import AnonymousSlotExpression, SlotDefinition - -from metldata.builtin_transformations.merge_slots.models import SlotMergeInstruction -from metldata.model_utils.essentials import ExportableSchemaView, MetadataModel -from metldata.model_utils.manipulate import upsert_class_slot -from metldata.transform.base import MetadataModelTransformationError - - -def get_source_range( - *, schema_view: ExportableSchemaView, class_name: str, source_slot: str -) -> str: - """Get the range of a source slot for the provided class. - - Raises: - MetadataModelTransformationError: - If the slot has no defined range, or if the slot is using a union range - with the `all_of` or `any_of` properties. - """ - slot = schema_view.induced_slot(class_name=class_name, slot_name=source_slot) - - if not slot.range: - raise MetadataModelTransformationError( - f"Source slot {source_slot} of class {class_name} has no defined range." - ) - - if slot.all_of or slot.any_of: - raise MetadataModelTransformationError( - f"Source slot {source_slot} of class {class_name} is using a union range." - ) - - return str(slot.range) - - -def get_source_ranges( - *, schema_view: ExportableSchemaView, class_name: str, source_slots: list[str] -) -> list[str]: - """Get the ranges of the given source slots.""" - source_ranges: list[str] = [] - for source_slot in source_slots: - source_range = get_source_range( - schema_view=schema_view, class_name=class_name, source_slot=source_slot - ) - if source_range not in source_ranges: - source_ranges.append(source_range) - - return source_ranges - - -def is_source_slot_inlined( - *, schema_view: ExportableSchemaView, class_name: str, slot_name: str -) -> tuple[bool, bool]: - """Check if a class slot is inlined. Returns a tuple of booleans where the first - element indicates if the slot is inlined, and the second element indicates if the - slot is inlined_as_list - """ - slot = schema_view.induced_slot(class_name=class_name, slot_name=slot_name) - - return bool(slot.inlined), bool(slot.inlined_as_list) - - -def are_source_slots_inlined( - *, schema_view: ExportableSchemaView, class_name: str, source_slots: list[str] -) -> tuple[bool, bool]: - """Check if all source slots are inlined. Returns a tuple of booleans where the - first element indicates if the slots are inlined, and the second element indicates - if the slots are inlined_as_list - """ - # inspect first slot: - inlined, inlined_as_list = is_source_slot_inlined( - schema_view=schema_view, class_name=class_name, slot_name=source_slots[0] - ) - - # make sure that all other slots are identical: - for source_slot in source_slots[1:]: - other_inlined, other_inlined_as_list = is_source_slot_inlined( - schema_view=schema_view, class_name=class_name, slot_name=source_slot - ) - - if inlined != other_inlined or inlined_as_list != other_inlined_as_list: - raise MetadataModelTransformationError( - f"Source slots {source_slots} of class {class_name} are not identical." - + " They differ in their inlined and/or inlined_as_list properties." - ) - - return inlined, inlined_as_list - - -def get_target_slot( - *, schema_view: ExportableSchemaView, merge_instruction: SlotMergeInstruction -) -> SlotDefinition: - """Get a definition of the target slot.""" - source_ranges = get_source_ranges( - schema_view=schema_view, - class_name=merge_instruction.class_name, - source_slots=merge_instruction.source_slots, - ) - - inlined, inlined_as_list = are_source_slots_inlined( - schema_view=schema_view, - class_name=merge_instruction.class_name, - source_slots=merge_instruction.source_slots, - ) - - target_slot_definition = SlotDefinition( - name=merge_instruction.target_slot, - required=True, - multivalued=True, - description=merge_instruction.target_description, - ) - - if len(source_ranges) == 1: - target_slot_definition.range = source_ranges.pop() - else: - target_slot_definition.any_of = [ - AnonymousSlotExpression(range=source_range) - for source_range in source_ranges - ] - - target_slot_definition.inlined = inlined - if inlined_as_list: - target_slot_definition.inlined_as_list = inlined_as_list - - return target_slot_definition - - -def apply_merge_instruction( - *, schema_view: ExportableSchemaView, merge_instruction: SlotMergeInstruction -) -> ExportableSchemaView: - """Apply the provided merge instructions to the provided schema_view.""" - target_slot_definition = get_target_slot( - schema_view=schema_view, merge_instruction=merge_instruction - ) - - return upsert_class_slot( - schema_view=schema_view, - class_name=merge_instruction.class_name, - new_slot=target_slot_definition, - ) - - -def merge_slots_in_model( - *, model: MetadataModel, merge_instructions: list[SlotMergeInstruction] -) -> MetadataModel: - """Merge slots in the provided model according to the provided instructions.""" - schema_view = model.schema_view - - for merge_instruction in merge_instructions: - schema_view = apply_merge_instruction( - schema_view=schema_view, merge_instruction=merge_instruction - ) - - return schema_view.export_model() diff --git a/src/metldata/builtin_transformations/merge_slots/models.py b/src/metldata/builtin_transformations/merge_slots/models.py deleted file mode 100644 index c3781fc2..00000000 --- a/src/metldata/builtin_transformations/merge_slots/models.py +++ /dev/null @@ -1,50 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Models to describe slot merging instructions.""" - -from typing import Optional - -from pydantic import BaseModel, Field, model_validator - - -class SlotMergeInstruction(BaseModel): - """A model to describe slot merging instructions.""" - - class_name: str = Field(..., description="The class to which the slots belong.") - source_slots: list[str] = Field( - ..., - description="The slots that should be merged into the target slot.", - min_length=2, - ) - target_slot: str = Field( - ..., description="The slot into which the source slots should be merged." - ) - target_description: Optional[str] = Field( - None, - description="A description of the target slot.", - ) - - @model_validator(mode="before") - def validate_overlapping_slots(cls, values) -> dict: - """Validate that source and target slots do not overlap.""" - source_slots = set(values["source_slots"]) - target_slot = values["target_slot"] - - if target_slot in source_slots: - raise ValueError("Source and target slots must not overlap.") - - return values diff --git a/src/metldata/builtin_transformations/normalize_model/__init__.py b/src/metldata/builtin_transformations/normalize_model/__init__.py deleted file mode 100644 index 5dcf04ca..00000000 --- a/src/metldata/builtin_transformations/normalize_model/__init__.py +++ /dev/null @@ -1,21 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""A transformation that normalizes a model to a canonical form.""" - -from metldata.builtin_transformations.normalize_model.main import ( # noqa: F401 - NORMALIZATION_TRANSFORMATION, -) diff --git a/src/metldata/builtin_transformations/normalize_model/config.py b/src/metldata/builtin_transformations/normalize_model/config.py deleted file mode 100644 index 1119afd9..00000000 --- a/src/metldata/builtin_transformations/normalize_model/config.py +++ /dev/null @@ -1,23 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Configuration for the normalize_model transformation.""" - -from pydantic import BaseModel - - -class NormalizationConfig(BaseModel): - """The normalization transformation does not require configuration.""" diff --git a/src/metldata/builtin_transformations/normalize_model/main.py b/src/metldata/builtin_transformations/normalize_model/main.py deleted file mode 100644 index f11960af..00000000 --- a/src/metldata/builtin_transformations/normalize_model/main.py +++ /dev/null @@ -1,62 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""A transformation that normalizes a model to a canonical form.""" - -from metldata.builtin_transformations.normalize_model.config import NormalizationConfig -from metldata.builtin_transformations.normalize_model.model_transform import ( - normalize_model, -) -from metldata.custom_types import Json -from metldata.event_handling.models import SubmissionAnnotation -from metldata.model_utils.essentials import MetadataModel -from metldata.transform.base import MetadataTransformer, TransformationDefinition - - -# pylint: disable=unused-argument -def check_model_assumptions(model: MetadataModel, config: NormalizationConfig): - """Check that the classes and slots specified in the config exist in the model.""" - - -# pylint: disable=unused-argument -def transform_model(model: MetadataModel, config: NormalizationConfig) -> MetadataModel: - """Normalize the model.""" - return normalize_model(model) - - -class NormalizationTransformer(MetadataTransformer[NormalizationConfig]): - """Transformer for normalizing the metadata model.""" - - def transform(self, *, metadata: Json, annotation: SubmissionAnnotation) -> Json: - """Transforms metadata. - - Args: - metadata: The metadata to be transformed. - annotation: The annotation on the metadata. - - Raises: - MetadataTransformationError: - if the transformation fails. - """ - return metadata - - -NORMALIZATION_TRANSFORMATION = TransformationDefinition[NormalizationConfig]( - config_cls=NormalizationConfig, - check_model_assumptions=check_model_assumptions, - transform_model=transform_model, - metadata_transformer_factory=NormalizationTransformer, -) diff --git a/src/metldata/builtin_transformations/normalize_model/model_transform.py b/src/metldata/builtin_transformations/normalize_model/model_transform.py deleted file mode 100644 index abd4395e..00000000 --- a/src/metldata/builtin_transformations/normalize_model/model_transform.py +++ /dev/null @@ -1,79 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""A transformation that normalizes a model to a canonical form.""" - -from linkml_runtime import SchemaView -from linkml_runtime.linkml_model.meta import SlotDefinition - -from metldata.model_utils.essentials import MetadataModel - - -def resolve_inheritance(output_model: dict, input_schema_view: SchemaView) -> None: - """Resolve inheritance by embedding all slots into the derived classes.""" - all_slot_names = set() - for cls_name, cls in output_model["classes"].items(): - slot_usages = input_schema_view.class_induced_slots(cls_name) - slot_names = [slot.name for slot in slot_usages] - # Integrate all slot information - cls["slot_usage"] = {slot_def.name: slot_def for slot_def in slot_usages} - cls["slots"] = slot_names - # Update all_slot names for globally reduced set of actually used slot - # names. - all_slot_names.update(slot_names) - # Remove inheritance - cls["is_a"] = None - cls["mixins"] = [] - cls["attributes"] = [] - # Rewrite slots - output_model["slots"] = { - slot_name: SlotDefinition(name=slot_name) for slot_name in all_slot_names - } - - -def embed_types(output_model: dict, input_schema_view: SchemaView) -> None: - """Embed types from the types schema into the model.""" - if "linkml:types" in output_model["imports"]: - # Load the types schema - types_schema = input_schema_view.load_import("linkml:types") - # Embed types - if not isinstance(types_schema.types, dict): - raise RuntimeError("Types schema does not contain a dict of types.") - for type_name, type_def in types_schema.types.items(): - if type_name not in output_model["types"]: - output_model["types"][type_name] = type_def - # Embed prefixes - if not isinstance(types_schema.prefixes, dict): - raise RuntimeError("Types schema does not contain a dict of types.") - for prefix_name, prefix_def in types_schema.prefixes.items(): - if prefix_name not in output_model["prefixes"]: - output_model["prefixes"][prefix_name] = prefix_def - # Drop import - output_model["imports"].remove("linkml:types") - - -def normalize_model(model: MetadataModel) -> MetadataModel: - """Normalize model to canonical form with all slots being globally defined - only as empty stubs and all slot definitions being defined in the slot_usage - of the respective class. - """ - output_model = model.as_dict() - schema_view = model.schema_view - - resolve_inheritance(output_model, schema_view) - embed_types(output_model, schema_view) - - return MetadataModel(**output_model) diff --git a/src/metldata/builtin_workflows/__init__.py b/src/metldata/builtin_workflows/__init__.py deleted file mode 100644 index 1867ef27..00000000 --- a/src/metldata/builtin_workflows/__init__.py +++ /dev/null @@ -1,17 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Built in transformation workflows.""" diff --git a/src/metldata/builtin_workflows/ghga_archive.py b/src/metldata/builtin_workflows/ghga_archive.py deleted file mode 100644 index 6394476a..00000000 --- a/src/metldata/builtin_workflows/ghga_archive.py +++ /dev/null @@ -1,104 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""A GHGA Archive-specific workflow.""" - -from metldata.builtin_transformations.add_accessions import ( - ACCESSION_ADDITION_TRANSFORMATION, -) -from metldata.builtin_transformations.aggregate import AGGREGATE_TRANSFORMATION -from metldata.builtin_transformations.custom_embeddings import ( - CUSTOM_EMBEDDING_TRANSFORMATION, -) -from metldata.builtin_transformations.delete_slots import SLOT_DELETION_TRANSFORMATION -from metldata.builtin_transformations.infer_references import ( - REFERENCE_INFERENCE_TRANSFORMATION, -) -from metldata.builtin_transformations.merge_slots import SLOT_MERGING_TRANSFORMATION -from metldata.builtin_transformations.normalize_model import ( - NORMALIZATION_TRANSFORMATION, -) -from metldata.transform.base import WorkflowDefinition, WorkflowStep - -GHGA_ARCHIVE_WORKFLOW = WorkflowDefinition( - description=("A GHGA Archive-specific workflow"), - steps={ - "normalize_model": WorkflowStep( - description=("Transform the model to a canonical form."), - transformation_definition=NORMALIZATION_TRANSFORMATION, - input=None, - ), - "add_accessions": WorkflowStep( - description="Add accessions that replace aliases as identifiers.", - transformation_definition=ACCESSION_ADDITION_TRANSFORMATION, - input="normalize_model", - ), - "embed_restricted": WorkflowStep( - description=( - "A step to generate a fully embedded metadata for data recipients that" - + " have been granted controlled access to that dataset." - ), - transformation_definition=CUSTOM_EMBEDDING_TRANSFORMATION, - input="add_accessions", - ), - "infer_multiway_references": WorkflowStep( - description=( - "Infer multi-way references. During submission, references between" - + " two classes are only establish in a uni-lateral way from one of the" - + " interlinked classes. Here references from both sides are" - + " established. Moreover, shortcuts between entities that are" - + " connected via a common reference are established." - ), - transformation_definition=REFERENCE_INFERENCE_TRANSFORMATION, - input="add_accessions", - ), - "merge_dataset_file_lists": WorkflowStep( - description=( - "Generate a slot in that dataset that combines all files of different" - + " type into a single list." - ), - transformation_definition=SLOT_MERGING_TRANSFORMATION, - input="infer_multiway_references", - ), - "remove_restricted_metadata": WorkflowStep( - description=( - "Restricted metadata that shall not be publicly accessible is removed." - ), - transformation_definition=SLOT_DELETION_TRANSFORMATION, - input="merge_dataset_file_lists", - ), - "aggregate_stats": WorkflowStep( - description="Compute aggregate statistics.", - transformation_definition=AGGREGATE_TRANSFORMATION, - input="remove_restricted_metadata", - ), - "embed_public": WorkflowStep( - description=( - "A step to generate a fully embedded metadata resources for use in the" - + " metadata catalog as the single dataset view." - ), - transformation_definition=CUSTOM_EMBEDDING_TRANSFORMATION, - input="remove_restricted_metadata", - ), - }, - artifacts={ - "embedded_restricted": "embed_restricted", - "resolved_restricted": "merge_dataset_file_lists", - "resolved_public": "remove_restricted_metadata", - "embedded_public": "embed_public", - "stats_public": "aggregate_stats", - }, -) diff --git a/src/metldata/cli.py b/src/metldata/cli.py deleted file mode 100644 index 559e6a57..00000000 --- a/src/metldata/cli.py +++ /dev/null @@ -1,47 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""The CLI interface.""" - -import asyncio -import functools - -import typer -from ghga_service_commons.api import run_server - -from metldata.combined import get_app -from metldata.config import Config - -cli = typer.Typer() - - -def run_sync(coroutine): - """A decorator to run a coroutine as a synchronous function.""" - - @functools.wraps(coroutine) - def wrapper(*args, **kwargs): - return asyncio.run(coroutine(*args, **kwargs)) - - return wrapper - - -@cli.command() -@run_sync -async def run_api() -> None: - """Run the combined loader and query API.""" - config = Config() # type: ignore - app = await get_app(config=config) - await run_server(app=app, config=config) diff --git a/src/metldata/combined.py b/src/metldata/combined.py deleted file mode 100644 index 28e742ce..00000000 --- a/src/metldata/combined.py +++ /dev/null @@ -1,57 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""A combined service for artifact loading and browsing.""" - -from fastapi import FastAPI -from ghga_service_commons.api import configure_app -from hexkit.providers.mongodb import MongoDbDaoFactory - -from metldata.artifacts_rest.api_factory import ( - rest_api_factory as query_rest_api_factory, -) -from metldata.config import Config -from metldata.load.aggregator import MongoDbAggregator -from metldata.load.api import rest_api_factory as load_rest_api_factory - - -async def get_app(config: Config) -> FastAPI: - """Get the FastAPI app for artifacts loading and browsing.""" - app = FastAPI( - title="Artifacts Loader and Browser API", - description="Load and browse artifacts user-accessible API.", - ) - configure_app(app=app, config=config) - dao_factory = MongoDbDaoFactory(config=config) - db_aggregator = MongoDbAggregator(config=config) - - load_router = await load_rest_api_factory( - artifact_infos=config.artifact_infos, - primary_artifact_name=config.primary_artifact_name, - config=config, - dao_factory=dao_factory, - db_aggregator=db_aggregator, - token_hashes=config.loader_token_hashes, - ) - - query_router = await query_rest_api_factory( - artifact_infos=config.artifact_infos, dao_factory=dao_factory - ) - - app.include_router(load_router) - app.include_router(query_router) - - return app diff --git a/src/metldata/load/__init__.py b/src/metldata/load/__init__.py deleted file mode 100644 index 6926c580..00000000 --- a/src/metldata/load/__init__.py +++ /dev/null @@ -1,17 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Loads artifacts into running services.""" diff --git a/src/metldata/load/aggregator.py b/src/metldata/load/aggregator.py deleted file mode 100644 index e112bc5f..00000000 --- a/src/metldata/load/aggregator.py +++ /dev/null @@ -1,45 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Protocol and provider for a database aggregator.""" - -from abc import abstractmethod -from typing import Any - -from hexkit.protocols.dao import DaoFactoryProtocol -from hexkit.providers.mongodb import MongoDbDaoFactory - - -class DbAggregator(DaoFactoryProtocol): - """A DaoFactory that can also aggregate.""" - - @abstractmethod - async def aggregate( - self, *, collection_name: str, pipeline: list[dict[str, Any]] - ) -> list[dict[str, Any]]: - """Run the given aggregation pipeline.""" - ... - - -class MongoDbAggregator(MongoDbDaoFactory, DbAggregator): - """A MongoDB-based DaoFactory that can also aggregate.""" - - async def aggregate( - self, *, collection_name: str, pipeline: list[dict[str, Any]] - ) -> list[dict[str, Any]]: - """Run the given aggregation pipeline.""" - collection = self._db[collection_name] - return [item async for item in collection.aggregate(pipeline=pipeline)] diff --git a/src/metldata/load/api.py b/src/metldata/load/api.py deleted file mode 100644 index 28d83465..00000000 --- a/src/metldata/load/api.py +++ /dev/null @@ -1,136 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""API for loading artifacts into running services.""" - -from typing import Optional - -from fastapi import Depends, HTTPException, Response, Security -from fastapi.routing import APIRouter -from fastapi.security import HTTPAuthorizationCredentials, HTTPBearer -from ghga_service_commons.auth.context import AuthContextProtocol -from ghga_service_commons.auth.policies import require_auth_context_using_credentials -from hexkit.protocols.dao import DaoFactoryProtocol -from hexkit.providers.akafka import KafkaEventPublisher -from pydantic import BaseModel, Field - -from metldata.artifacts_rest.artifact_dao import ArtifactDaoCollection -from metldata.artifacts_rest.artifact_info import get_artifact_info_dict -from metldata.artifacts_rest.models import ArtifactInfo -from metldata.load.aggregator import DbAggregator -from metldata.load.auth import check_token -from metldata.load.config import ArtifactLoaderAPIConfig -from metldata.load.event_publisher import EventPubTranslator -from metldata.load.load import ( - ArtifactResourcesInvalid, - check_artifact_resources, - load_artifacts_using_dao, -) -from metldata.load.models import ArtifactResourceDict -from metldata.load.stats import create_stats_using_aggregator - - -class LoaderTokenAuthContext(BaseModel): - """An auth context used to contain the loader token.""" - - token: str = Field( - ..., - description="A simple alphanumeric token to authenticate for loading artifacts.", - ) - - -class LoaderTokenAuthProvider(AuthContextProtocol[LoaderTokenAuthContext]): - """A provider for the loader token auth context.""" - - def __init__(self, *, token_hashes: list[str]): - """Initialize the loader token auth provider.""" - self._token_hashes = token_hashes - - async def get_context(self, token: str) -> Optional[LoaderTokenAuthContext]: - """Get a loader token auth context.""" - if not token: - return None - - if not check_token(token=token, token_hashes=self._token_hashes): - raise self.AuthContextValidationError("Invalid token.") - - return LoaderTokenAuthContext(token=token) - - -async def rest_api_factory( - *, - artifact_infos: list[ArtifactInfo], - primary_artifact_name: str, - config: ArtifactLoaderAPIConfig, - dao_factory: DaoFactoryProtocol, - db_aggregator: DbAggregator, - token_hashes: list[str], -) -> APIRouter: - """Return a router for an API for loading artifacts.""" - artifact_info_dict = get_artifact_info_dict(artifact_infos=artifact_infos) - dao_collection = await ArtifactDaoCollection.construct( - dao_factory=dao_factory, artifact_infos=artifact_infos - ) - - async def require_token_context( - credentials: HTTPAuthorizationCredentials = Depends( - HTTPBearer(auto_error=True) - ), - ) -> LoaderTokenAuthContext: - """Require a VIP authentication and authorization context using FastAPI.""" - return await require_auth_context_using_credentials( - credentials=credentials, - auth_provider=LoaderTokenAuthProvider(token_hashes=token_hashes), - ) - - require_token = Security(require_token_context) - - router = APIRouter() - - @router.post("/rpc/load-artifacts") - async def load_artifacts( - artifact_resources: ArtifactResourceDict, - _token: LoaderTokenAuthContext = require_token, - ): - """Load artifacts into services for querying via user-accessible API.""" - try: - check_artifact_resources( - artifact_resources=artifact_resources, - artifact_infos=artifact_info_dict, - ) - except ArtifactResourcesInvalid as error: - raise HTTPException(status_code=422, detail=str(error)) from error - - async with KafkaEventPublisher.construct(config=config) as event_pub_provider: - event_publisher = EventPubTranslator( - config=config, provider=event_pub_provider - ) - await load_artifacts_using_dao( - artifact_resources=artifact_resources, - artifact_info_dict=artifact_info_dict, - event_publisher=event_publisher, - dao_collection=dao_collection, - ) - - await create_stats_using_aggregator( - artifact_infos=artifact_info_dict, - primary_artifact_name=primary_artifact_name, - db_aggregator=db_aggregator, - ) - - return Response(status_code=204) - - return router diff --git a/src/metldata/load/auth.py b/src/metldata/load/auth.py deleted file mode 100644 index bba402db..00000000 --- a/src/metldata/load/auth.py +++ /dev/null @@ -1,42 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Logic for authorization using alphanumeric tokens.""" - -import secrets -from hashlib import sha256 - - -def generate_token() -> str: - """Generate a random token.""" - return secrets.token_urlsafe(32) - - -def hash_token(token: str) -> str: - """Hash the given token.""" - return sha256(token.encode()).hexdigest() - - -def generate_token_and_hash() -> tuple[str, str]: - """Generate a random token and its hash.""" - token = generate_token() - token_hash = hash_token(token) - return token, token_hash - - -def check_token(token: str, token_hashes: list[str]) -> bool: - """Check whether the given token matches one of the given token hashes.""" - return hash_token(token) in token_hashes diff --git a/src/metldata/load/client.py b/src/metldata/load/client.py deleted file mode 100644 index 95154749..00000000 --- a/src/metldata/load/client.py +++ /dev/null @@ -1,55 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Client functionality to drop artifacts onto the endpoint for uploading them.""" - -import httpx - -from metldata.event_handling.event_handling import FileSystemEventCollector -from metldata.load.collect import collect_artifacts -from metldata.load.config import ArtifactLoaderClientConfig - - -class ArtifactUploadException(Exception): - """Exception raised when uploading artifacts fails.""" - - -def upload_artifacts_via_http_api( - *, token: str, config: ArtifactLoaderClientConfig -) -> None: - """Upload artifacts via the HTTP API specified in the config using the provided - token for authorization. - - Raises: - ArtifactUploadException: If uploading artifacts fails. - """ - event_collector = FileSystemEventCollector(config=config) - artifacts = collect_artifacts(config=config, event_collector=event_collector) - - with httpx.Client() as client: - response = client.post( - f"{config.loader_api_root}/rpc/load-artifacts", - json=artifacts, - headers={ - "Authorization": f"Bearer {token}", - }, - timeout=60, - ) - - if response.status_code != 204: - raise ArtifactUploadException( - f"Uploading artifacts failed with status code {response.status_code}." - ) diff --git a/src/metldata/load/collect.py b/src/metldata/load/collect.py deleted file mode 100644 index 3b5c5abc..00000000 --- a/src/metldata/load/collect.py +++ /dev/null @@ -1,71 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Functionality for collecting available artifacts.""" - -from collections import defaultdict - -from pydantic import Field, field_validator - -from metldata.event_handling.artifact_events import ( - ArtifactEventConfig, - get_artifact_topic, -) -from metldata.event_handling.event_handling import FileSystemEventCollector -from metldata.load.models import ArtifactResourceDict - - -class ArtifactCollectorConfig(ArtifactEventConfig): - """Config parameters and their defaults.""" - - artifact_types: list[str] = Field( - ..., - description=( - "The artifacts types of interest. Together with the topic prefix, they" - + " determine the topics to subscribe to. The artifact types must not" - + " contain dots." - ), - ) - - @field_validator("artifact_types") - def artifact_types_must_not_contain_dots(cls, value: list[str]): - """Validate that artifact types do not contain dots.""" - for artifact_type in value: - if "." in artifact_type: - raise ValueError( - f"Artifact type '{artifact_type}' must not contain dots." - ) - - return value - - -def collect_artifacts( - *, config: ArtifactCollectorConfig, event_collector: FileSystemEventCollector -) -> ArtifactResourceDict: - """Collect artifacts from the file system.""" - artifact_resources: ArtifactResourceDict = defaultdict(list) - for artifact_type in config.artifact_types: - topic = get_artifact_topic( - artifact_topic_prefix=config.artifact_topic_prefix, - artifact_type=artifact_type, - ) - for event in event_collector.collect_events(topic=topic): - content = event.payload.get("content") - if not content: - raise RuntimeError("Artifact does not contain 'content' field.") - artifact_resources[artifact_type].append(content) - - return artifact_resources diff --git a/src/metldata/load/config.py b/src/metldata/load/config.py deleted file mode 100644 index 1b812cb2..00000000 --- a/src/metldata/load/config.py +++ /dev/null @@ -1,47 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Config parameters and their defaults.""" - -from ghga_service_commons.api import ApiConfigBase -from hexkit.providers.akafka import KafkaConfig -from hexkit.providers.mongodb import MongoDbConfig -from pydantic import Field - -from metldata.artifacts_rest.config import ArtifactsRestConfig -from metldata.event_handling.event_handling import FileSystemEventConfig -from metldata.load.collect import ArtifactCollectorConfig -from metldata.load.event_publisher import EventPubTranslatorConfig - - -class ArtifactLoaderAPIConfig( # pylint: disable=too-many-ancestors - ArtifactsRestConfig, - ApiConfigBase, - EventPubTranslatorConfig, - KafkaConfig, - MongoDbConfig, -): - """Config settings for the loader API.""" - - loader_token_hashes: list[str] = Field( - ..., description="Hashes of tokens used to authenticate for loading artifact." - ) - - -class ArtifactLoaderClientConfig(ArtifactCollectorConfig, FileSystemEventConfig): - """Config settings for the loader client.""" - - loader_api_root: str = Field(..., description="Root URL of the loader API.") diff --git a/src/metldata/load/event_publisher.py b/src/metldata/load/event_publisher.py deleted file mode 100644 index ee309d67..00000000 --- a/src/metldata/load/event_publisher.py +++ /dev/null @@ -1,195 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Event publisher for population and deletion events to MASS, WPS and claims repository""" - -import json -from abc import ABC, abstractmethod - -from ghga_event_schemas.pydantic_ import ( - MetadataDatasetID, - MetadataDatasetOverview, - SearchableResource, - SearchableResourceInfo, -) -from hexkit.protocols.eventpub import EventPublisherProtocol -from pydantic import Field -from pydantic_settings import BaseSettings - - -class EventPubTranslatorConfig(BaseSettings): - """Config for publishing population/deletion events to other services""" - - primary_artifact_name: str = Field( - ..., - description="Name of the artifact from which the information for outgoing" - + " change events is derived.", - examples=["embedded_public"], - ) - primary_dataset_name: str = Field( - ..., - description="Name of the resource class corresponding to the embedded_dataset slot.", - examples=["EmbeddedDataset"], - ) - - resource_change_event_topic: str = Field( - ..., - description="Name of the topic used for events informing other services about" - + " resource changes, i.e. deletion or insertion.", - examples=["searchable_resources"], - ) - resource_deletion_event_type: str = Field( - ..., - description="Type used for events indicating the deletion of a previously" - + " existing resource.", - examples=["searchable_resource_deleted"], - ) - resource_upsertion_type: str = Field( - ..., - description="Type used for events indicating the upsert of a resource.", - examples=["searchable_resource_upserted"], - ) - - dataset_change_event_topic: str = Field( - ..., - description="Name of the topic announcing, among other things, the list of" - + " files included in a new dataset.", - examples=["metadata_datasets"], - ) - dataset_deletion_type: str = Field( - ..., - description="Type used for events announcing a new dataset overview.", - examples=["dataset_deleted"], - ) - dataset_upsertion_type: str = Field( - ..., - description="Type used for events announcing a new dataset overview.", - examples=["dataset_created"], - ) - - -class EventPublisherPort(ABC): - """A port through which events are communicated with the outside.""" - - @abstractmethod - async def process_dataset_deletion(self, *, accession: str): - """Communicate the deletion of an embedded dataset resource""" - - @abstractmethod - async def process_resource_deletion(self, *, accession: str, class_name: str): - """Communicate the deletion of an artifact resource""" - - @abstractmethod - async def process_dataset_upsert( - self, *, dataset_overview: MetadataDatasetOverview - ): - """Communicate the upsert of an embedded dataset resource""" - - @abstractmethod - async def process_resource_upsert(self, *, resource: SearchableResource): - """Communicate the upsert of an artifact resource""" - - @abstractmethod - def is_primary_dataset_source( - self, *, artifact_name: str, resource_class_name: str - ) -> bool: - """Checks if combination of artifact name and resource class name describe the - configured source for outbound change events - """ - - -class EventPubTranslator(EventPublisherPort): - """A translator according to the triple hexagonal architecture implementing - the EventPublisherPort. - """ - - def __init__( - self, *, config: EventPubTranslatorConfig, provider: EventPublisherProtocol - ): - """Initialize with config and a provider of the EventPublisherProtocol.""" - self._config = config - self._provider = provider - - async def process_dataset_deletion(self, *, accession: str): - """Communicate the deletion of an embedded dataset resource - - Fires an event that should be processed by the claims repository - """ - dataset_id = MetadataDatasetID(accession=accession) - - payload = json.loads(dataset_id.model_dump_json()) - await self._provider.publish( - payload=payload, - type_=self._config.dataset_deletion_type, - key=f"dataset_embedded_{dataset_id.accession}", - topic=self._config.dataset_change_event_topic, - ) - - async def process_resource_deletion(self, *, accession: str, class_name: str): - """Communicate the deletion an artifact resource - - Fires an event that should be processed by MASS - """ - resource_info = SearchableResourceInfo( - accession=accession, class_name=class_name - ) - - payload = json.loads(resource_info.model_dump_json()) - await self._provider.publish( - payload=payload, - type_=self._config.resource_deletion_event_type, - key=f"dataset_embedded_{resource_info.accession}", - topic=self._config.resource_change_event_topic, - ) - - async def process_dataset_upsert( - self, *, dataset_overview: MetadataDatasetOverview - ): - """Communicate the upsert of an embedded dataset resource - - Fires an event that should be processed by the WPS - """ - payload = json.loads(dataset_overview.model_dump_json()) - await self._provider.publish( - payload=payload, - type_=self._config.dataset_upsertion_type, - key=f"dataset_embedded_{dataset_overview.accession}", - topic=self._config.dataset_change_event_topic, - ) - - async def process_resource_upsert(self, *, resource: SearchableResource): - """Communicate the upsert of an artifact resource - - Fires an event that should be processed by MASS - """ - payload = json.loads(resource.model_dump_json()) - await self._provider.publish( - payload=payload, - type_=self._config.resource_upsertion_type, - key=f"dataset_embedded_{resource.accession}", - topic=self._config.resource_change_event_topic, - ) - - def is_primary_dataset_source( - self, *, artifact_name: str, resource_class_name: str - ) -> bool: - """Checks if combination of artifact name and resource class name describe the - configured source for outbound dataset change events - """ - return ( - self._config.primary_artifact_name == artifact_name - and self._config.primary_dataset_name == resource_class_name - ) diff --git a/src/metldata/load/load.py b/src/metldata/load/load.py deleted file mode 100644 index 5a952465..00000000 --- a/src/metldata/load/load.py +++ /dev/null @@ -1,138 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Logic for loading artifact resources.""" - -from metldata.artifacts_rest.artifact_dao import ArtifactDaoCollection -from metldata.artifacts_rest.load_resources import ( - extract_all_resources_from_artifact, - process_new_or_changed_resources, - process_removed_resources, -) -from metldata.artifacts_rest.models import ArtifactInfo, ArtifactResource -from metldata.load.event_publisher import EventPublisherPort -from metldata.load.models import ArtifactResourceDict - - -class ArtifactResourcesInvalid(RuntimeError): - """Raised when artifact resources are invalid.""" - - -def check_artifact_resources( - artifact_resources: ArtifactResourceDict, artifact_infos: dict[str, ArtifactInfo] -) -> None: - """Check the provided artifact resources against the given artifact info. - - Raises: - ArtifactResourcesInvalid: If the artifact resources are invalid. - """ - for artifact_name in artifact_resources: - if artifact_name not in artifact_infos: - raise ArtifactResourcesInvalid(f"Artifact '{artifact_name}' is unknown.") - - -async def load_artifacts_using_dao( - artifact_resources: ArtifactResourceDict, - artifact_info_dict: dict[str, ArtifactInfo], - event_publisher: EventPublisherPort, - dao_collection: ArtifactDaoCollection, -) -> None: - """Load artifact resources from multiple submissions using the given dao collection.""" - ( - removed_resource_tags, - new_resources, - changed_resources, - ) = await _get_changed_resources( - artifact_resources=artifact_resources, - artifact_info_dict=artifact_info_dict, - dao_collection=dao_collection, - ) - - await process_removed_resources( - event_publisher=event_publisher, - resource_tags=removed_resource_tags, - dao_collection=dao_collection, - ) - - await process_new_or_changed_resources( - artifact_info_dict=artifact_info_dict, - event_publisher=event_publisher, - resources=new_resources, - dao_collection=dao_collection, - ) - - await process_new_or_changed_resources( - artifact_info_dict=artifact_info_dict, - event_publisher=event_publisher, - resources=changed_resources, - dao_collection=dao_collection, - ) - - -async def _get_changed_resources( # pylint: disable=too-many-locals - artifact_resources: ArtifactResourceDict, - artifact_info_dict: dict[str, ArtifactInfo], - dao_collection: ArtifactDaoCollection, -) -> tuple[ - set[tuple[str, str, str]], - dict[tuple[str, str, str], ArtifactResource], - dict[tuple[str, str, str], ArtifactResource], -]: - """Extract changed resources using DAOs and currently submitted artifacts - - Returns the following collections in order: - - A set of resource tags for artifact resources that have been removed - - A dict of new artifact resources indexed by the corresponding resource_tag - - A dict of changed artifact resources indexed by the corresponding resource_tag - """ - # only need to collect resource tag to check if something needs to be deleted - unchanged_resource_tags = [] - - # collect new/changed resources indexed by their resource_tag for insert/upsert - new_resources = {} - changed_resources = {} - - existing_resource_tags = await dao_collection.get_all_resource_tags() - - for artifact_name, artifact_contents in artifact_resources.items(): - for artifact_content in artifact_contents: - resources = extract_all_resources_from_artifact( - artifact_content=artifact_content, - artifact_info=artifact_info_dict[artifact_name], - ) - - # check for each resource if it does already exist and is changed - for resource in resources: - resource_tag = (artifact_name, resource.class_name, resource.id_) - - if resource_tag in existing_resource_tags: - dao = await dao_collection.get_dao( - artifact_name=artifact_name, class_name=resource.class_name - ) - old_resource = await dao.get_by_id(resource.id_) - - if old_resource == resource: - unchanged_resource_tags.append(resource_tag) - else: - changed_resources[resource_tag] = resource - else: - new_resources[resource_tag] = resource - - removed_resource_tags = existing_resource_tags.difference( - unchanged_resource_tags, new_resources, changed_resources - ) - - return removed_resource_tags, new_resources, changed_resources diff --git a/src/metldata/load/main.py b/src/metldata/load/main.py deleted file mode 100644 index f209b57b..00000000 --- a/src/metldata/load/main.py +++ /dev/null @@ -1,49 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Compose the main app and resolve dependencies.""" - -from fastapi import FastAPI -from ghga_service_commons.api import configure_app -from hexkit.providers.mongodb import MongoDbDaoFactory - -from metldata.load.aggregator import MongoDbAggregator -from metldata.load.api import rest_api_factory -from metldata.load.config import ArtifactLoaderAPIConfig - - -async def get_app(config: ArtifactLoaderAPIConfig) -> FastAPI: - """Get the FastAPI app for loading artifacts. Performs dependency injection.""" - app = FastAPI( - title="Artifacts Loader", - description="Load artifacts into services for querying via user-accessible API.", - ) - configure_app(app=app, config=config) - dao_factory = MongoDbDaoFactory(config=config) - db_aggregator = MongoDbAggregator(config=config) - - api_router = await rest_api_factory( - artifact_infos=config.artifact_infos, - primary_artifact_name=config.primary_artifact_name, - config=config, - dao_factory=dao_factory, - db_aggregator=db_aggregator, - token_hashes=config.loader_token_hashes, - ) - - app.include_router(api_router) - - return app diff --git a/src/metldata/load/models.py b/src/metldata/load/models.py deleted file mode 100644 index 1c799dbd..00000000 --- a/src/metldata/load/models.py +++ /dev/null @@ -1,25 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Data models.""" - -from typing_extensions import TypeAlias - -from metldata.custom_types import Json - -# A dictionary of an artifact. The keys on the first correspond to artifact names. -# The values are lists of resources for different submissions. -ArtifactResourceDict: TypeAlias = dict[str, list[Json]] diff --git a/src/metldata/load/stats.py b/src/metldata/load/stats.py deleted file mode 100644 index fb661a62..00000000 --- a/src/metldata/load/stats.py +++ /dev/null @@ -1,93 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Generate global summary statistics.""" - -from operator import itemgetter -from typing import Any, Optional, cast - -from ghga_service_commons.utils.utc_dates import now_as_utc - -from metldata.artifacts_rest.models import ( - ArtifactInfo, - GlobalStats, - ResourceStats, - ValueCount, -) -from metldata.load.aggregator import DbAggregator - -STATS_COLLECTION_NAME = "stats" - - -def get_stat_slot(resource_class: str) -> Optional[str]: - """Get the name of the slot that shall be used as grouping key.""" - if resource_class.endswith("File"): - return "format" - if resource_class.endswith("Protocol"): - return "type" - if resource_class.endswith("Individual"): - return "sex" - return None - - -async def create_stats_using_aggregator( - artifact_infos: dict[str, ArtifactInfo], - primary_artifact_name: str, - db_aggregator: DbAggregator, -) -> None: - """Create summary by running an aggregation pipeline on the database.""" - resource_stats: dict[str, ResourceStats] = {} - artifact_name = primary_artifact_name - artifact_info = artifact_infos[artifact_name] - for resource_class in artifact_info.resource_classes: - collection_name = f"art_{artifact_name}_class_{resource_class}" - - pipeline: list[dict[str, Any]] = [{"$count": "count"}] - result = await db_aggregator.aggregate( - collection_name=collection_name, pipeline=pipeline - ) - if not result: - continue - resource_stats[resource_class] = cast(ResourceStats, result[0]) - - stat_slot = get_stat_slot(resource_class) - if not stat_slot: - continue - - pipeline = [{"$group": {"_id": f"$content.{stat_slot}", "count": {"$sum": 1}}}] - result = await db_aggregator.aggregate( - collection_name=collection_name, pipeline=pipeline - ) - if not result: - continue - - stats: list[ValueCount] = sorted( - ( - {"value": group["_id"] or "unknown", "count": group["count"]} - for group in result - ), - key=itemgetter("value"), - ) - resource_stats[resource_class]["stats"] = {stat_slot: stats} - - if resource_stats: - global_stats = GlobalStats( - id="global", created=now_as_utc(), resource_stats=resource_stats - ) - stats_dao = await db_aggregator.get_dao( - name=STATS_COLLECTION_NAME, dto_model=GlobalStats, id_field="id" - ) - await stats_dao.upsert(global_stats) diff --git a/src/metldata/metadata_utils.py b/src/metldata/metadata_utils.py deleted file mode 100644 index f3e3b671..00000000 --- a/src/metldata/metadata_utils.py +++ /dev/null @@ -1,292 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Utilities for handling metadata.""" - -from copy import deepcopy -from typing import Union, cast - -from metldata.custom_types import Json -from metldata.model_utils.anchors import AnchorPoint, lookup_anchor_point - - -class SelfIdLookUpError(RuntimeError): - """Raised when the self id cannot be looked up.""" - - -class ForeignIdLookUpError(RuntimeError): - """Raised when a foreign id cannot be looked up.""" - - -class MetadataAnchorMismatchError(RuntimeError): - """Raised when the provided metadata does not match the expected anchor points.""" - - -class MetadataResourceNotFoundError(RuntimeError): - """Raised when a resource could not be found in the metadata.""" - - -class IdenitifierConflictError(RuntimeError): - """Raised when multiple resources of the same class with the same identifier exist.""" - - -class SlotNotFoundError(RuntimeError): - """Raised when a slot cannot be found in a Metadata Resource.""" - - -def lookup_self_id(*, resource: Json, identifier_slot: str): - """Lookup the ID of the specified resource.""" - self_id = resource.get(identifier_slot) - - if self_id is None: - raise SelfIdLookUpError( - "Cannot lookup the identifier because the corresponding slot" - + f" '{identifier_slot}' is not present in the resource '{resource}'." - ) - - if not isinstance(self_id, str): - raise SelfIdLookUpError( - f"Cannot lookup the identifier because the slot '{identifier_slot}' of" - + f" resource '{resource}' contains a non-string value." - ) - - return self_id - - -def lookup_foreign_ids(*, resource: Json, slot: str) -> set[str]: - """Lookup foreign IDs referenced by the specified resource using the specified - slot. - """ - foreign_ids = resource.get(slot) - - if foreign_ids is None: - raise ForeignIdLookUpError( - f"Cannot lookup foreign IDs because the slot '{slot}' is not present" - + f" in the resource '{resource}'." - ) - - # convert single value to list: - if not isinstance(foreign_ids, list): - foreign_ids = [foreign_ids] - - # check that all values are strings: - if not all(isinstance(value, str) for value in foreign_ids): - raise ForeignIdLookUpError( - f"Cannot lookup foreign IDs because the slot '{slot}' of resource" - + f" '{resource}' contains non-string values." - ) - - foreign_ids = set(foreign_ids) - foreign_ids = cast(set[str], foreign_ids) - - return foreign_ids - - -def lookup_resource_by_identifier( - *, - class_name: str, - identifier: str, - global_metadata: Json, - anchor_points_by_target: dict[str, AnchorPoint], -) -> Json: - """Lookup a resource of the given class in the provided global metadata by its - identifier. - - Raises: - MetadataAnchorMismatchError: - if the provided metadata does not match the expected anchor points. - MetadataResourceNotFoundError: - if the resource with the given identifier could not be found. - """ - anchor_point = lookup_anchor_point( - class_name=class_name, anchor_points_by_target=anchor_points_by_target - ) - - if anchor_point.root_slot not in global_metadata: - raise MetadataAnchorMismatchError( - f"Could not find root slot of the anchor point '{anchor_point.root_slot}'" - + " in the global metadata." - ) - - resources = global_metadata[anchor_point.root_slot] - - resources_dict = convert_resource_list_to_dict( - resources=resources, identifier_slot=anchor_point.identifier_slot - ) - - if identifier not in resources_dict: - raise MetadataResourceNotFoundError( - f"Could not find resource with identifier '{identifier}' of class" - + f" '{class_name}' in the global metadata." - ) - - target_resource = resources_dict[identifier] - - return target_resource - - -def check_identifier_uniqueness(*, resources: list[Json], identifier_slot: str) -> None: - """Check if the identifiers of the specified resources are unique. - - Raises: - IdenitifierConflictError: - if the identifiers are not unique. - """ - identifiers = [resource[identifier_slot] for resource in resources] - - if len(identifiers) != len(set(identifiers)): - raise IdenitifierConflictError( - "The identifiers of the resources are not unique." - ) - - -def convert_list_to_inlined_dict( - *, resources: list[Json], identifier_slot: str -) -> dict[str, Json]: - """Convert a list of resources of same type into a dictionary representation, i.e. - to "inlined_as_list=false" format. - - Raises: - IdenitifierConflictError: - if the identifiers are not unique. - """ - check_identifier_uniqueness(resources=resources, identifier_slot=identifier_slot) - - return { - lookup_self_id(resource=resource, identifier_slot=identifier_slot): { - slot: deepcopy(resource[slot]) - for slot in resource - if slot != identifier_slot - } - for resource in resources - } - - -def convert_inlined_dict_to_list( - *, resources: dict[str, Json], identifier_slot: str -) -> list[Json]: - """Convert a dictionary representation of resources into a list representation, i.e. - to "inlined_as_list=true" format. - """ - resource_copy = deepcopy(resources) - - return [ - {identifier_slot: identifier, **resource_copy} - for identifier, resource in resource_copy.items() - ] - - -def convert_resource_list_to_dict( - *, resources: list[Json], identifier_slot: str -) -> dict[str, Json]: - """Convert a list of resources of same type into a dictionary representation. - Unlike the `inlined_as_list=false` structure from LinkML, the dict will contain - resources with identifier slots. - """ - return { - lookup_self_id(resource=resource, identifier_slot=identifier_slot): deepcopy( - resource - ) - for resource in resources - } - - -def get_resources_of_class( - *, - class_name: str, - global_metadata: Json, - anchor_points_by_target: dict[str, AnchorPoint], -) -> list[Json]: - """Get all instances of the given class from the provided global metadata. - - Raises: - MetadataAnchorMismatchError: - if the provided metadata does not match the expected anchor points. - """ - anchor_point = lookup_anchor_point( - class_name=class_name, anchor_points_by_target=anchor_points_by_target - ) - - if anchor_point.root_slot not in global_metadata: - raise MetadataAnchorMismatchError( - f"Could not find root slot of the anchor point '{anchor_point.root_slot}'" - + " in the global metadata." - ) - - return deepcopy(global_metadata[anchor_point.root_slot]) - - -def get_resource_dict_of_class( - *, - class_name: str, - global_metadata: Json, - anchor_points_by_target: dict[str, AnchorPoint], -) -> dict[str, Json]: - """Get all instances as dict of the given class from the provided global metadata. - Unlike the `inlined_as_list=false` structure from LinkML, the dict will contain - resources with identifier slots. - - Raises: - MetadataAnchorMismatchError: - if the provided metadata does not match the expected anchor points. - """ - resources = get_resources_of_class( - class_name=class_name, - global_metadata=global_metadata, - anchor_points_by_target=anchor_points_by_target, - ) - - anchor_point = lookup_anchor_point( - class_name=class_name, anchor_points_by_target=anchor_points_by_target - ) - - return convert_resource_list_to_dict( - resources=resources, identifier_slot=anchor_point.identifier_slot - ) - - -def upsert_resources_in_metadata( - *, - resources: list[Json], - class_name: str, - global_metadata: Json, - anchor_points_by_target: dict[str, AnchorPoint], -) -> Json: - """Update the provided global metadata with the provided resources of the given - class. If the anchor point for the given class does not yet exist, it is created. - Returns a copy of the updated metadata. - """ - anchor_point = lookup_anchor_point( - class_name=class_name, anchor_points_by_target=anchor_points_by_target - ) - - global_metadata_copy = deepcopy(global_metadata) - - return {**global_metadata_copy, anchor_point.root_slot: resources} - - -def lookup_slot_in_resource( - *, resource: Json, slot_name: str -) -> Union[Json, list[Json]]: - """Lookup a slot in a resource. Raises an error if the slot does not exist.""" - content = resource.get(slot_name) - - if content is None: - raise SlotNotFoundError( - f"Could not find slot '{slot_name}' in resource: {resource}" - ) - - return content diff --git a/src/metldata/model_utils/__init__.py b/src/metldata/model_utils/__init__.py deleted file mode 100644 index 2c7c8478..00000000 --- a/src/metldata/model_utils/__init__.py +++ /dev/null @@ -1,17 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Utilities for handling metadata models.""" diff --git a/src/metldata/model_utils/anchors.py b/src/metldata/model_utils/anchors.py deleted file mode 100644 index 3834ae12..00000000 --- a/src/metldata/model_utils/anchors.py +++ /dev/null @@ -1,230 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""All classes that shall be referenced by ID must be linked in the root class of the -model. The slot in the root that links to a specific class is called the anchor point of -that class. This module provides logic for handling these anchor points. -""" - -from linkml_runtime import SchemaView -from linkml_runtime.linkml_model import SlotDefinition -from pydantic import BaseModel, ConfigDict, Field - -from metldata.model_utils.essentials import ROOT_CLASS, MetadataModel -from metldata.model_utils.identifiers import get_class_identifiers - - -class InvalidAnchorPointError(RuntimeError): - """Raised when an anchor point defined in a model is invalid.""" - - -class AnchorPointNotFoundError(RuntimeError): - """Raised when no anchor point was found for a specific class.""" - - -class ClassNotAnchoredError(RuntimeError): - """Raised when a class is not anchored.""" - - -class AnchorPoint(BaseModel): - """A model for describing an anchor point for the specified target class.""" - - model_config = ConfigDict(frozen=True) - - target_class: str = Field(..., description="The name of the class to be targeted.") - identifier_slot: str = Field( - ..., - description=( - "The name of the slot in the target class that is used as identifier." - ), - ) - root_slot: str = Field( - ..., - description=( - "The name of the slot in the root class used to link to the target class." - ), - ) - - -def check_root_slot(slot: SlotDefinition): - """Make sure that the given root slot is a valid anchor point. Validates that the - slot is multivalued, required, and inlined but not inlined as list. - - Raises: - InvalidAnchorPointError: if validation fails. - """ - if not slot.multivalued: - raise InvalidAnchorPointError( - f"The anchor point at the slot '{slot.name}' is not multivalued." - ) - - if slot.inlined is None: - raise InvalidAnchorPointError( - f"The inlined attribute for slot '{slot.name}' is not defined." - ) - - if not slot.inlined: - raise InvalidAnchorPointError( - f"The inlined attribute for slot '{slot.name}' is set to False," - + " however, slots in the root class must be inlined." - ) - - if not slot.inlined_as_list: - raise InvalidAnchorPointError( - f"The inlined_as_list attribute for slot '{slot.name}' is set to False," - + " however, slots in the root class must be inlined as list." - ) - - if not slot.required: - raise InvalidAnchorPointError( - f"The anchor point at the slot '{slot.name}' is not required." - ) - - -def get_slot_target_class(*, slot: SlotDefinition, schema_view: SchemaView) -> str: - """Checks that the specified slot refers to another class and returns the name - of that class. - """ - if slot.range is None: - raise InvalidAnchorPointError( - f"The slot '{slot.name}', which is used as anchor point, has no range" - + " defined." - ) - - target_class = schema_view.get_class(class_name=slot.range) - - if target_class is None: - raise InvalidAnchorPointError( - f"The range of slot '{slot.name}', which is used as anchor point, does not" - + " point to a valid class." - ) - - return slot.range - - -def get_anchor_points(*, model: MetadataModel) -> set[AnchorPoint]: - """Get all anchor points of the specified model.""" - identifiers_by_class = get_class_identifiers(model=model) - - schema_view = model.schema_view - root_slots = schema_view.class_induced_slots(class_name=ROOT_CLASS) - - # validation root slots: - for root_slot in root_slots: - check_root_slot(root_slot) - - anchor_point: set[AnchorPoint] = set() - for root_slot in root_slots: - target_class = get_slot_target_class(slot=root_slot, schema_view=schema_view) - identifier = identifiers_by_class[target_class] - if not identifier: - raise InvalidAnchorPointError( - f"The class '{target_class}' has no identifier defined." - ) - - anchor_point.add( - AnchorPoint( - target_class=target_class, - identifier_slot=identifier, - root_slot=str(root_slot.name), - ) - ) - - return anchor_point - - -def get_anchors_points_by_target(*, model: MetadataModel) -> dict[str, AnchorPoint]: - """Get a dictionary with the keys corresponding to class names and the values - corresponding to anchor points. - """ - anchor_points = get_anchor_points(model=model) - - return {anchor_point.target_class: anchor_point for anchor_point in anchor_points} - - -def filter_anchor_points( - *, anchor_points_by_target: dict[str, AnchorPoint], classes_of_interest: set[str] -) -> dict[str, AnchorPoint]: - """Filter the provided anchor points by a list of classes of interest. - - Raises: - AnchorPointNotFoundError: if no anchor point was found for a class of interest. - """ - # check if anchor points exists for all classes: - classes_without_anchor_points = classes_of_interest.difference( - anchor_points_by_target.keys() - ) - if classes_without_anchor_points: - raise AnchorPointNotFoundError( - "Following classes have no anchor points: " - + ", ".join(sorted(classes_without_anchor_points)) - ) - - return { - class_name: anchor_point - for class_name, anchor_point in anchor_points_by_target.items() - if class_name in classes_of_interest - } - - -def lookup_anchor_point( - *, class_name: str, anchor_points_by_target: dict[str, AnchorPoint] -) -> AnchorPoint: - """Lookup the anchor point for the given class.""" - anchor_point = anchor_points_by_target.get(class_name) - - if anchor_point is None: - raise AnchorPointNotFoundError( - f"Cannot find anchor point class '{class_name}'." - ) - - return anchor_point - - -def invert_anchor_points_by_target( - anchor_points_by_target: dict[str, AnchorPoint] -) -> dict[str, str]: - """Convert the anchor points by target dict into an class by anchor point dict.""" - return { - anchor_point.root_slot: class_name - for class_name, anchor_point in anchor_points_by_target.items() - } - - -def get_target_by_anchor_point(*, model: MetadataModel) -> dict[str, str]: - """Get a mapping from the root slot where a class is anchored to the corresponding - class. - """ - anchor_points = get_anchor_points(model=model) - - return { - anchor_point.root_slot: anchor_point.target_class - for anchor_point in anchor_points - } - - -def lookup_class_by_anchor_point( - *, root_slot: str, target_by_anchor_point: dict[str, str] -) -> str: - """Lookup the class for the given anchor point.""" - class_name = target_by_anchor_point.get(root_slot) - - if class_name is None: - raise ClassNotAnchoredError( - f"Cannot find class for anchor point with root slot '{root_slot}'." - ) - - return class_name diff --git a/src/metldata/model_utils/assumptions.py b/src/metldata/model_utils/assumptions.py deleted file mode 100644 index 35c11902..00000000 --- a/src/metldata/model_utils/assumptions.py +++ /dev/null @@ -1,130 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Logic to check basic assumptions about the metadata model.""" -from typing import Optional - -from metldata.model_utils.anchors import ( - AnchorPointNotFoundError, - InvalidAnchorPointError, - filter_anchor_points, - get_anchors_points_by_target, -) -from metldata.model_utils.essentials import ROOT_CLASS, MetadataModel - - -class MetadataModelAssumptionError(RuntimeError): - """Raised when the assumptions about the metadata model are not met.""" - - -def check_class_exists(model: MetadataModel, class_name: str) -> None: - """Check that a class with the given name exists. - - Raises: - MetadataModelAssumptionError: if validation fails. - """ - # has a class called class_name: - class_ = model.schema_view.get_class(class_name=class_name) - - if class_ is None: - raise MetadataModelAssumptionError( - f"A class called '{class_name}' is required but does not exist." - ) - - -def check_class_slot_exists( - model: MetadataModel, class_name: str, slot_name: str, ignore_parents: bool = False -) -> None: - """Check that a class with the given name exists and that it has a slot with the - given name. If ignore_parents is set to True, slots that are inherited from parent - classes or mixins are ignored. - - Raises: - MetadataModelAssumptionError: if validation fails. - """ - check_class_exists(model=model, class_name=class_name) - - all_slots = model.schema_view.class_slots( - class_name=class_name, direct=ignore_parents - ) - - if slot_name not in all_slots: - raise MetadataModelAssumptionError( - f"A slot called '{slot_name}' is required but does not exist" - + f" in the '{class_name}' class." - " Inherited slots are ignored." - if ignore_parents - else f"A slot called '{slot_name}' is required but does not exist" - + f" in the '{class_name}' class or its parents classes and mixins." - ) - - -def check_root_class_existence(model: MetadataModel) -> None: - """Check the existence of a root class that is called as defined in ROOT_CLASS. - - Raises: - MetadataModelAssumptionError: if validation fails. - """ - # has a tree root called ROOT_CLASS: - root_class = model.schema_view.get_class(class_name=ROOT_CLASS) - - if root_class is None: - raise MetadataModelAssumptionError( - f"A {ROOT_CLASS} class is required but does not exist." - ) - if not root_class.tree_root: - raise MetadataModelAssumptionError( - f"The {ROOT_CLASS} class must have the tree_root property set to true." - ) - - -def check_anchor_points( - model: MetadataModel, classes: Optional[list[str]] = None -) -> None: - """Checks the anchor points of the root class. If classes is specified, also checks - that anchor points for the classes exist. - - Raises: - MetadataModelAssumptionError: if validation fails. - """ - try: - anchor_points_by_target = get_anchors_points_by_target(model=model) - except InvalidAnchorPointError as error: - raise MetadataModelAssumptionError( - f"The model has invalid anchor points: {error}" - ) from error - - if classes is not None: - try: - _ = filter_anchor_points( - anchor_points_by_target=anchor_points_by_target, - classes_of_interest=set(classes), - ) - except AnchorPointNotFoundError as error: - raise MetadataModelAssumptionError( - f"The model is missing anchor points: {error}" - ) from error - - -def check_basic_model_assumption(model: MetadataModel) -> None: - """Check that the basic assumptions that metldata makes about the metadata model - are met. Raises a MetadataModelAssumptionError otherwise. - - Raises: - MetadataModelAssumptionError: if validation fails. - """ - check_root_class_existence(model=model) - check_anchor_points(model=model) diff --git a/src/metldata/model_utils/config.py b/src/metldata/model_utils/config.py deleted file mode 100644 index 19f72620..00000000 --- a/src/metldata/model_utils/config.py +++ /dev/null @@ -1,39 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Config Parameter Modeling and Parsing""" - -from pathlib import Path - -from pydantic import Field -from pydantic_settings import BaseSettings - -from metldata.model_utils.assumptions import check_basic_model_assumption -from metldata.model_utils.essentials import MetadataModel - - -class MetadataModelConfig(BaseSettings): - """Config parameters and their defaults.""" - - metadata_model_path: Path = Field( - ..., description="The path to the metadata model defined in LinkML." - ) - - @property - def metadata_model(self) -> MetadataModel: - """Load the model from the path and check basic assumptions.""" - model = MetadataModel.init_from_path(self.metadata_model_path) - check_basic_model_assumption(model) - return model diff --git a/src/metldata/model_utils/essentials.py b/src/metldata/model_utils/essentials.py deleted file mode 100644 index ed7d6205..00000000 --- a/src/metldata/model_utils/essentials.py +++ /dev/null @@ -1,166 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Basic constants and logic related to models.""" - -from __future__ import annotations - -import dataclasses -import json -from collections.abc import Generator -from contextlib import contextmanager -from copy import copy, deepcopy -from pathlib import Path -from tempfile import NamedTemporaryFile -from typing import Any - -import jsonasobj2 -import yaml -from linkml_runtime import SchemaView -from linkml_runtime.linkml_model import SchemaDefinition - -# The name of the root class of a model: -ROOT_CLASS = "Submission" - - -class MetadataModel(SchemaDefinition): - """A dataclass for describing metadata models.""" - - _schema_view = None - - @classmethod - def init_from_path(cls, model_path: Path) -> MetadataModel: - """Initialize from a model file in yaml format.""" - with open(model_path, encoding="utf-8") as file: - model_json = yaml.safe_load(file) - - return cls(**model_json) - - @property - def schema_view(self) -> ExportableSchemaView: - """Get a schema view instance from the metadata model.""" - schema_view = self._schema_view - if schema_view is None: - schema_view = ExportableSchemaView(self) - self._schema_view = schema_view - return schema_view - - def __deepcopy__(self, memo: Any): - """Return a deep copy of the model.""" - schema_view = self._schema_view - self._schema_view = None - copied_model = deepcopy(super()) - self._schema_view = schema_view - return copied_model - - def __eq__(self, other: object): - """For comparisons.""" - if not isinstance(other, MetadataModel): - return NotImplemented - - return self.as_dict() == other.as_dict() - - # pylint: disable=too-many-nested-blocks,too-many-branches - def as_dict(self, essential: bool = True): # noqa: PLR0912, C901 - """Get a dictionary representation of the model. If essential set to True, the - dictionary will be cleaned of all fields that are not essential. - """ - model_dict = dataclasses.asdict(self) - - if essential: - if "classes" in model_dict: - for class_ in model_dict["classes"].values(): - if "from_schema" in class_: - del class_["from_schema"] - if "slot_usage" in class_: - slot_usage: Any = ( - jsonasobj2.as_dict(class_["slot_usage"]) - if isinstance(class_["slot_usage"], jsonasobj2.JsonObj) - else class_["slot_usage"] - ) - for slot in slot_usage.values(): - if "alias" in slot: - del slot["alias"] - if "from_schema" in slot: - del slot["from_schema"] - if "domain_of" in slot: - del slot["domain_of"] - if "slots" in model_dict: - for slot in model_dict["slots"].values(): - if "from_schema" in slot: - del slot["from_schema"] - if "enums" in model_dict: - for enum in model_dict["enums"].values(): - if "from_schema" in enum: - del enum["from_schema"] - - return model_dict - - def as_json(self) -> str: - """Get a json representation of the model.""" - return json.dumps(self.as_dict(essential=True), indent=2) - - def as_yaml(self) -> str: - """Get a yaml representation of the model.""" - return yaml.safe_dump(self.as_dict(essential=True)) - - def write_yaml(self, path: Path) -> None: - """Write the model to a yaml file.""" - with open(path, "w", encoding="utf-8") as file: - yaml.safe_dump(self.as_dict(essential=True), file) - - @contextmanager - def temporary_yaml_path(self) -> Generator[Path, None, None]: - """Returns a context manager that creates a temporary yaml file containing the - model and returns its path on __enter__ and deletes it on __exit__. - - This is required because some tools in the linkml schema ecosystem only support - working with paths to yaml file and not with in-memory representations. - """ - with NamedTemporaryFile(mode="w", encoding="utf-8") as file: - model_json = self.as_dict() - yaml.safe_dump(model_json, file) - file.flush() - yield Path(file.name) - - -class ExportableSchemaView(SchemaView): - """Extend the SchemaView by adding a method for exporting a MetadataModel.""" - - def __copy__(self): - """Return a copy of the model. - - Please note, the copy will have a new uuid used for hashing. - """ - return ExportableSchemaView( - schema=copy(self.schema), - importmap=copy(self.importmap), - ) - - def __deepcopy__(self, memo: Any): - """Return a deepcopy of the model. - - Please note, the copy will have a new uuid used for hashing. - """ - return ExportableSchemaView( - schema=deepcopy(self.schema), importmap=copy(self.importmap) - ) - - def export_model(self) -> MetadataModel: - """Export a MetadataModel.""" - model_json = dataclasses.asdict(deepcopy(self.schema)) - - return MetadataModel(**model_json) diff --git a/src/metldata/model_utils/identifiers.py b/src/metldata/model_utils/identifiers.py deleted file mode 100644 index 7946379a..00000000 --- a/src/metldata/model_utils/identifiers.py +++ /dev/null @@ -1,59 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Handling identifiers of classes in a metadata model.""" - -from typing import Optional - -from metldata.model_utils.essentials import ROOT_CLASS, MetadataModel - - -def get_class_identifier(model: MetadataModel, class_name: str) -> Optional[str]: - """Get the identifier of a class in a metadata model. - - Returns: - The identifier of the class, or None if the class does not have an identifier. - """ - schema_view = model.schema_view - - for slot_name in schema_view.class_slots(class_name=class_name): - slot_def = schema_view.induced_slot(slot_name=slot_name, class_name=class_name) - if slot_def.identifier: - return str(slot_def.name) - - return None - - -def get_class_identifiers(model: MetadataModel) -> dict[str, Optional[str]]: - """Get the identifiers of all classes in a metadata model. - - Returns: - A dictionary with the class names as keys and the identifiers as values. If a - class does not have an identifier, the value is None. - """ - schema_view = model.schema_view - - identifiers_by_class: dict[str, Optional[str]] = {} - for class_name in schema_view.all_classes(): - if class_name == ROOT_CLASS: - continue # Root class does not have an identifier - class_def = schema_view.get_class(class_name=class_name) - if class_def.mixin or class_def.abstract: - continue # Mixins and abstract classes do not have an identifier - identifier = get_class_identifier(model=model, class_name=class_name) - identifiers_by_class[class_name] = identifier - - return identifiers_by_class diff --git a/src/metldata/model_utils/manipulate.py b/src/metldata/model_utils/manipulate.py deleted file mode 100644 index 8f7d3015..00000000 --- a/src/metldata/model_utils/manipulate.py +++ /dev/null @@ -1,313 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Utilities for manipulating the schemas. This extends the functionality provided by -the standard linkml SchemaView class. -""" - -from copy import deepcopy -from typing import Optional, Union - -import jsonasobj2 -from linkml_runtime.linkml_model.meta import ClassDefinition, SlotDefinition - -from metldata.model_utils.anchors import AnchorPoint -from metldata.model_utils.assumptions import ROOT_CLASS -from metldata.model_utils.essentials import ExportableSchemaView -from metldata.model_utils.identifiers import get_class_identifier - - -class ModelManipulationError(RuntimeError): - """A base for exception occurring in the context of model manipulations.""" - - -class ClassNotFoundError(ModelManipulationError): - """Raised when a class was not found.""" - - def __init__(self, class_name: str): - message = f"The class '{class_name}' does not exist in the metadata model." - super().__init__(message) - - -class ClassSlotNotFoundError(ModelManipulationError): - """Raised when a slot of a class was not found.""" - - def __init__( - self, - class_name: str, - slot_name: str, - direct: bool = False, - context: Optional[str] = None, - ): - message = ( - f"The slot '{slot_name}' does not exist" - + (" as direct slot" if direct else "") - + f" in the class '{class_name}' of the metadata model." - + (f" {context}" if context else "") - ) - super().__init__(message) - - -def get_normalized_slot_usage(*, class_: ClassDefinition) -> dict[str, SlotDefinition]: - """Get a normalized slot usage dictionary from a class definition.""" - if class_.slot_usage: - if isinstance(class_.slot_usage, jsonasobj2.JsonObj): - return jsonasobj2.as_dict(class_.slot_usage) - if isinstance(class_.slot_usage, dict): - return deepcopy(class_.slot_usage) - raise RuntimeError(f"Unexpected slot usage for class '{class_.name}'") - - return {} - - -def add_slot_if_not_exists( - schema_view: ExportableSchemaView, new_slot: SlotDefinition -) -> ExportableSchemaView: - """Add the new slot only if it does not exist and return a modified copy of the - provided schema view. If it does already exist, the schema view is returned - unmodified. - """ - if not schema_view.get_slot(slot_name=new_slot.name): - schema_view_copy = deepcopy(schema_view) - schema_view_copy.add_slot(new_slot) - - return schema_view_copy - - return schema_view - - -def upsert_class_slot( - schema_view: ExportableSchemaView, class_name: str, new_slot: SlotDefinition -) -> ExportableSchemaView: - """Insert a new or update an existing slot of a class. - - Raises: - ClassNotFoundError: if the specified class does not exist. - """ - class_ = schema_view.get_class(class_name=class_name) - - if not class_: - raise ClassNotFoundError(class_name=class_name) - - class_copy = deepcopy(class_) - - # add slot to list of slots used by the class: - if class_copy.slots: - if all(str(slot) != new_slot.name for slot in class_copy.slots): - class_copy.slots.append(new_slot.name) - else: - class_copy.slots = [new_slot.name] - - # update slot usage: - class_copy.slot_usage = get_normalized_slot_usage(class_=class_copy) - class_copy.slot_usage[new_slot.name] = new_slot - - # add updated class and a global definition of the slot to a copy of schema view: - schema_view_copy = deepcopy(schema_view) - schema_view_copy = add_slot_if_not_exists( - schema_view=schema_view_copy, new_slot=new_slot - ) - schema_view_copy.add_class(class_copy) - - # workaround for a problem in linkml-runtime after converting slot usage to dict: - schema_view_copy = schema_view_copy.export_model().schema_view - - return schema_view_copy - - -def delete_class_slot( - schema_view: ExportableSchemaView, class_name: str, slot_name: str -) -> ExportableSchemaView: - """Delete a slot from a class. This slot may not be inherited but must be - a slot of the class itself. - - Raises: - ClassNotFoundError: if the specified class does not exist. - ClassSlotNotFoundError: if the specified slot does not exist in the specified class. - """ - class_ = schema_view.get_class(class_name=class_name) - - if not class_: - raise ClassNotFoundError(class_name=class_name) - - class_copy = deepcopy(class_) - - # modify class slots: - all_slots = schema_view.class_slots(class_name=class_name, direct=True) - - if slot_name not in all_slots: - raise ClassSlotNotFoundError( - class_name=class_name, - slot_name=slot_name, - direct=True, - context=( - "Please note that you cannot delete slots that are inherited from a" - + " parent class." - ), - ) - - all_slots_modified = [slot for slot in all_slots if slot != slot_name] - - class_copy.slots = all_slots_modified - - # update slot usage: - class_copy.slot_usage = get_normalized_slot_usage(class_=class_copy) - if slot_name in class_copy.slot_usage: - del class_copy.slot_usage[slot_name] - - # add updated class to a copy of schema view: - schema_view_copy = deepcopy(schema_view) - schema_view_copy.add_class(class_copy) - - return schema_view_copy - - -def add_slot_usage_annotation( - *, - schema_view: ExportableSchemaView, - slot_name: str, - class_name: str, - annotation_key: str, - annotation_value: Union[str, bool, int, float], -) -> ExportableSchemaView: - """Add annotations to a slot in the context of a class. - For more details see: - https://linkml.io/linkml/schemas/metadata.html#arbitrary-annotations - """ - class_ = schema_view.get_class(class_name=class_name) - - all_slots = schema_view.class_slots(class_name=class_name) - if slot_name not in all_slots: - raise ClassSlotNotFoundError(class_name=class_name, slot_name=slot_name) - - if not class_: - raise ClassNotFoundError(class_name=class_name) - - class_copy = deepcopy(class_) - - if not class_copy.slots: - class_copy.slots = [] - if not isinstance(class_copy.slots, list): - raise RuntimeError(f"Unexpected slots for class '{class_name}'") - if slot_name not in class_copy.slots: - class_copy.slots.append(slot_name) - - class_copy.slot_usage = get_normalized_slot_usage(class_=class_copy) - if slot_name not in class_copy.slot_usage: - class_copy.slot_usage[slot_name] = SlotDefinition(name=slot_name) - - slot_usage = class_copy.slot_usage[slot_name] - - if slot_usage.annotations: - slot_usage.annotations[annotation_key] = annotation_value - else: - slot_usage.annotations = {annotation_key: annotation_value} - - # add updated class to a copy of schema view: - schema_view_copy = deepcopy(schema_view) - schema_view_copy.add_class(class_copy) - - return schema_view_copy - - -def _get_root_class(*, schema_view: ExportableSchemaView) -> ClassDefinition: - """A helper function to get the root class of the model.""" - root_class = schema_view.get_class(class_name=ROOT_CLASS) - - if not root_class: - raise ClassNotFoundError(class_name=ROOT_CLASS) - - return root_class - - -def upsert_class( - *, schema_view: ExportableSchemaView, class_definition: ClassDefinition -) -> ExportableSchemaView: - """Return an updated schema view with the provided class definition being added or - updated. - """ - modified_schema_view = deepcopy(schema_view) - modified_schema_view.schema.classes[class_definition.name] = class_definition - modified_schema_view.set_modified() - - return modified_schema_view - - -def add_anchor_point( - *, - schema_view: ExportableSchemaView, - anchor_point: AnchorPoint, - description: Optional[str] = None, -) -> ExportableSchemaView: - """Add an anchor point for a class to the tree root of the model.""" - class_ = schema_view.get_class(class_name=anchor_point.target_class) - - if not class_: - raise ClassNotFoundError(class_name=anchor_point.target_class) - - root_slot_definition = SlotDefinition( - name=anchor_point.root_slot, - range=anchor_point.target_class, - multivalued=True, - required=True, - inlined=True, - inlined_as_list=True, - description=description, - ) - - root_class = _get_root_class(schema_view=schema_view) - return upsert_class_slot( - schema_view=schema_view, - class_name=root_class.name, - new_slot=root_slot_definition, - ) - - -def disable_identifier_slot( - *, schema_view: ExportableSchemaView, class_name: str -) -> ExportableSchemaView: - """Disable the identifier for a class. This will not remove the identifier slot - but will set its 'identifier' property to False. - """ - identifier_slot_name = get_class_identifier( - model=schema_view.export_model(), class_name=class_name - ) - - if not identifier_slot_name: - return schema_view - - class_ = schema_view.get_class(class_name=class_name) - - if not class_: - raise ClassNotFoundError(class_name=class_name) - - class_copy = deepcopy(class_) - - class_copy.slot_usage = get_normalized_slot_usage(class_=class_copy) - - if identifier_slot_name in class_copy.slot_usage: - identifier_slot_definition = class_copy.slot_usage[identifier_slot_name] - identifier_slot_definition.identifier = False - else: - identifier_slot_definition = SlotDefinition( - name=identifier_slot_name, identifier=False - ) - class_copy.slot_usage[identifier_slot_name] = identifier_slot_definition - - schema_view_modified = deepcopy(schema_view) - schema_view_modified.add_class(class_copy) - - return schema_view_modified diff --git a/src/metldata/model_utils/metadata_validator.py b/src/metldata/model_utils/metadata_validator.py deleted file mode 100644 index f34d5351..00000000 --- a/src/metldata/model_utils/metadata_validator.py +++ /dev/null @@ -1,75 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Logic to validate submission metadata based on a LinkML model.""" - -from typing import Any - -from linkml_validator.models import ValidationMessage -from linkml_validator.validator import Validator - -from metldata.model_utils.essentials import MetadataModel - - -class InvalidMetadataError(RuntimeError): - """Raised when the metadata is invalid.""" - - -class MetadataValidationError(InvalidMetadataError): - """Raised when the validation of metadata against the provided model fails.""" - - def __init__(self, *, issues: list[ValidationMessage]): - """Initializes with list of issues.""" - self.issues = issues - - message = "Validation failed due to following issues: " + ", ".join( - ( - f"in field '{issue.field}' with value '{issue.value}': {issue.message}" - + f" ({issue.severity})" - ) - for issue in self.issues - ) - super().__init__(message) - - -class MetadataValidator: - """Validating metadata against a LinkML model.""" - - # error shortcuts: - ValidationError = MetadataValidationError - - def __init__(self, *, model: MetadataModel): - """Initialize the validator with a metadata model.""" - self._model = model - - def validate(self, metadata: dict[str, Any]) -> None: - """Validate metadata against the provided model. - - Raises: - ValidationError: When validation failed. - """ - with self._model.temporary_yaml_path() as model_path: - validator = Validator(schema=str(model_path)) - validation_report = validator.validate(metadata, target_class="Submission") - - if not validation_report.valid: - issues = [ - message - for result in validation_report.validation_results - if not result.valid and result.validation_messages is not None - for message in result.validation_messages - ] - raise MetadataValidationError(issues=issues) diff --git a/src/metldata/submission_registry/__init__.py b/src/metldata/submission_registry/__init__.py deleted file mode 100644 index 7b1978bb..00000000 --- a/src/metldata/submission_registry/__init__.py +++ /dev/null @@ -1,18 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Manages submissions and acts as a source of truth for all derived transformations -and artifacts.""" diff --git a/src/metldata/submission_registry/config.py b/src/metldata/submission_registry/config.py deleted file mode 100644 index 0d887295..00000000 --- a/src/metldata/submission_registry/config.py +++ /dev/null @@ -1,29 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Config Parameter Modeling and Parsing""" - -from metldata.submission_registry.event_publisher import SourceEventPublisherConfig -from metldata.submission_registry.submission_registry import SubmissionRegistryConfig -from metldata.submission_registry.submission_store import SubmissionStoreConfig - - -# pylint: disable=too-many-ancestors -class Config( - SubmissionStoreConfig, - SubmissionRegistryConfig, - SourceEventPublisherConfig, -): - """Config parameters and their defaults.""" diff --git a/src/metldata/submission_registry/event_publisher.py b/src/metldata/submission_registry/event_publisher.py deleted file mode 100644 index e3554b5e..00000000 --- a/src/metldata/submission_registry/event_publisher.py +++ /dev/null @@ -1,61 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Logic for the publication of source events.""" - -import asyncio -import json - -from hexkit.protocols.eventpub import EventPublisherProtocol - -from metldata.event_handling.models import SubmissionAnnotation, SubmissionEventPayload -from metldata.event_handling.submission_events import SourceEventConfig -from metldata.submission_registry import models - - -class SourceEventPublisherConfig(SourceEventConfig): - """Config parameters and their defaults.""" - - -class SourceEventPublisher: - """Handles publication of source events.""" - - def __init__( - self, *, config: SourceEventPublisherConfig, provider: EventPublisherProtocol - ): - """Initialize with config parameters.""" - self._config = config - self._provider = provider - - def publish_submission(self, submission: models.Submission): - """Publish the current submission as source event""" - if submission.content is None: - raise ValueError("Submission content must be defined.") - - payload = SubmissionEventPayload( - submission_id=submission.id, - content=submission.content, - annotation=SubmissionAnnotation(accession_map=submission.accession_map), - ) - - asyncio.run( - self._provider.publish( - topic=self._config.source_event_topic, - type_=self._config.source_event_type, - key=submission.id, - payload=json.loads(payload.model_dump_json()), - ) - ) diff --git a/src/metldata/submission_registry/identifiers.py b/src/metldata/submission_registry/identifiers.py deleted file mode 100644 index 347f39f9..00000000 --- a/src/metldata/submission_registry/identifiers.py +++ /dev/null @@ -1,140 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Logic for handling identifiers and accessions.""" - -from collections.abc import Iterable -from functools import partial -from typing import Optional -from uuid import uuid4 - -from pydantic import Json - -from metldata.accession_registry import AccessionRegistry -from metldata.custom_types import SubmissionContent -from metldata.metadata_utils import lookup_self_id -from metldata.model_utils.anchors import ( - AnchorPoint, - invert_anchor_points_by_target, - lookup_anchor_point, - lookup_class_by_anchor_point, -) -from metldata.submission_registry.models import AccessionMap - - -def generate_submission_id() -> str: - """Generate a new submission ID.""" - return str(uuid4()) - - -def lookup_accession( - *, - anchor: str, - alias: str, - accession_map: AccessionMap, -) -> Optional[str]: - """Lookup the accession for a resource with the provided user-defined alias of - the class with the provided anchor. If no accession exists, None is returned. - """ - return accession_map.get(anchor, {}).get(alias, None) - - -def get_accession( - *, - anchor: str, - alias: str, - accession_map: AccessionMap, - accession_registry: AccessionRegistry, - target_by_anchor_point: dict[str, str], -) -> str: - """Get the accession for a resource with the provided user-defined alias of - the class with the provided anchor. If no entry can be found in the provided accession map, - a new accession is requested from the provided accession registry. - """ - accession = lookup_accession( - anchor=anchor, alias=alias, accession_map=accession_map - ) - if accession: - return accession - - class_name = lookup_class_by_anchor_point( - root_slot=anchor, target_by_anchor_point=target_by_anchor_point - ) - return accession_registry.get_accession(resource_type=class_name) - - -def get_aliases_for_resources( - *, - resources: list[Json], - root_slot: str, - anchor_points_by_target: dict[str, AnchorPoint], -) -> Iterable[str]: - """Get the aliases for the provided resources.""" - target_by_anchor_point = invert_anchor_points_by_target( - anchor_points_by_target=anchor_points_by_target - ) - - class_name = lookup_class_by_anchor_point( - root_slot=root_slot, target_by_anchor_point=target_by_anchor_point - ) - anchor_point = lookup_anchor_point( - class_name=class_name, anchor_points_by_target=anchor_points_by_target - ) - - for resource in resources: - yield lookup_self_id( - resource=resource, identifier_slot=anchor_point.identifier_slot - ) - - -def generate_accession_map( - *, - content: SubmissionContent, - existing_accession_map: Optional[AccessionMap] = None, - accession_registry: AccessionRegistry, - anchor_points_by_target: dict[str, AnchorPoint], -) -> AccessionMap: - """Generate an accession map for the provided content. - - If an existing accession map is provided, an updated version is returned. Thereby, - new accessions are added for new content resources. Existing accessions are kept if - the corresponding content resource still exists, otherwise they are removed. - """ - if existing_accession_map is None: - existing_accession_map = {} - - target_by_anchor_point = invert_anchor_points_by_target( - anchor_points_by_target=anchor_points_by_target - ) - - get_accession_ = partial( - get_accession, - accession_map=existing_accession_map, - accession_registry=accession_registry, - target_by_anchor_point=target_by_anchor_point, - ) - - return { - anchor: { - alias: get_accession_(anchor=anchor, alias=alias) - for alias in get_aliases_for_resources( - resources=resources, - root_slot=anchor, - anchor_points_by_target=anchor_points_by_target, - ) - } - for anchor, resources in content.items() - } diff --git a/src/metldata/submission_registry/models.py b/src/metldata/submission_registry/models.py deleted file mode 100644 index 65322d61..00000000 --- a/src/metldata/submission_registry/models.py +++ /dev/null @@ -1,121 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Data models""" - -from enum import Enum -from operator import attrgetter -from typing import Optional - -from ghga_service_commons.utils.utc_dates import DateTimeUTC, now_as_utc -from pydantic import BaseModel, Field, field_validator -from typing_extensions import TypeAlias - -from metldata.custom_types import SubmissionContent - -AccessionMap: TypeAlias = dict[str, dict[str, str]] - - -class SubmissionStatus(Enum): - """Statuses a submission may have.""" - - PENDING = "pending" - IN_REVIEW = "in-review" - CANCELED = "canceled" - COMPLETED = "completed" - DEPRECATED_PREPUBLICATION = "deprecated-prepublication" - EMPTIED_PREPUBLICATION = "emptied-prepublication" - PUBLISHED = "published" - DEPRECATED_POSTPUBLICATION = "deprecated-postpublication" - HIDDEN_POSTPUBLICATION = "hidden-postpublication" - EMPTIED_POSTPUBLICATION = "emptied-postpublication" - - -class StatusChange(BaseModel): - """A model for describing status changes of submissions.""" - - timestamp: DateTimeUTC - new_status: SubmissionStatus - - -class SubmissionHeader(BaseModel): - """Basic information provided for a submission.""" - - title: str = Field(..., description="A descriptive title for this submission.") - description: Optional[str] = Field(None, description="An optional description.") - - -class Submission(SubmissionHeader): - """A model for describing a submission.""" - - id: str - - content: Optional[SubmissionContent] = Field( - None, - description=( - "The metadata content of the submission. Keys on the top level correspond to" - + " names of anchored metadata classes. Keys and values on the second level" - + " correspond to the user-defined aliases and contents of class instance. Please note," - + " that the user-defined alias might only be unique within the scope of" - + " the coressponding class and this submission." - ), - ) - - accession_map: AccessionMap = Field( - default_factory=dict, - description=( - "A map of user-specified id to system-generated accession for metadata" - + " resources. Keys on the top level correspond to names of metadata classes." - + " Keys on the second level correspond to user-specified aliases." - + " Values on the second level correspond to system-generated accessions." - + " Please note, that the user-defined alias might only be unique within" - + " the scope of the coressponding class and this submission. By contrast," - + " the system-generated accession is unique across all classes and" - + " submissions." - ), - ) - - status_history: tuple[StatusChange, ...] = Field( - default_factory=lambda: ( - StatusChange(timestamp=now_as_utc(), new_status=SubmissionStatus.PENDING), - ), - description="A history of status changes.", - ) - - @property - def current_status(self) -> SubmissionStatus: - """Extract the current submission status from the status history.""" - if len(self.status_history) == 0: - raise RuntimeError("Status history is empty.") - - sorted_history = sorted(self.status_history, key=attrgetter("timestamp")) - - return sorted_history[-1].new_status - - @field_validator("accession_map") - def check_accession_uniqueness(cls, value: AccessionMap) -> AccessionMap: - """Check that no accessions are re-used accross classes.""" - total_resources = 0 - all_accessions: set[str] = set() - - for resources in value.values(): - total_resources += len(resources) - all_accessions.update(resources.values()) - - if len(all_accessions) != total_resources: - raise ValueError("Accessions are not unique.") - - return value diff --git a/src/metldata/submission_registry/submission_registry.py b/src/metldata/submission_registry/submission_registry.py deleted file mode 100644 index 283daafe..00000000 --- a/src/metldata/submission_registry/submission_registry.py +++ /dev/null @@ -1,197 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Logic for handling submissions.""" - - -from ghga_service_commons.utils.utc_dates import now_as_utc - -from metldata.accession_registry.accession_registry import AccessionRegistry -from metldata.custom_types import SubmissionContent -from metldata.model_utils.anchors import get_anchors_points_by_target -from metldata.model_utils.config import MetadataModelConfig -from metldata.model_utils.metadata_validator import MetadataValidator -from metldata.submission_registry import models -from metldata.submission_registry.event_publisher import SourceEventPublisher -from metldata.submission_registry.identifiers import ( - generate_accession_map, - generate_submission_id, -) -from metldata.submission_registry.submission_store import SubmissionStore - - -class SubmissionRegistryConfig(MetadataModelConfig): - """Config parameters and their defaults.""" - - -class SubmissionRegistry: - """A class for handling submissions.""" - - # error shortcuts: - SubmissionDoesNotExistError = SubmissionStore.SubmissionDoesNotExistError - ValidationError = MetadataValidator.ValidationError - - class StatusError(RuntimeError): - """Raised when the requested action requires a different submission status.""" - - def __init__( - self, *, submission_id: str, current_status: str, expected_status: str - ): - message = ( - f"The submission with id '{submission_id} has the status" - + f" '{current_status}' but expected '{expected_status}'." - ) - super().__init__(message) - - class ContentEmptyError(RuntimeError): - """Raised when the content of a submission is empty..""" - - def __init__(self, *, submission_id: str): - message = ( - f"The content for the submission with id '{submission_id} has not yet" - + " been specified." - ) - super().__init__(message) - - def __init__( - self, - *, - config: SubmissionRegistryConfig, - submission_store: SubmissionStore, - event_publisher: SourceEventPublisher, - accession_registry: AccessionRegistry, - ): - """Initialize with dependencies and config parameters.""" - self._submission_store = submission_store - self._metadata_validator = MetadataValidator(model=config.metadata_model) - self._event_publisher = event_publisher - self._accession_registry = accession_registry - self._anchor_points_by_target = get_anchors_points_by_target( - model=config.metadata_model - ) - - def _get_submission_with_status( - self, *, id_: str, expected_status: models.SubmissionStatus - ) -> models.Submission: - """Get details for a submission that is assumed to have the specified status. - - Raises: - SubmissionRegistry.SubmissionDoesNotExistError: - when no submission with the specified ID exists. - SubmissionRegistry.StatusError: - when the submission does not have the expected status. - """ - # raises SubmissionDoesNotExistError if failed to get submission by id: - submission = self._submission_store.get_by_id(submission_id=id_) - - if submission.current_status != expected_status: - raise self.StatusError( - submission_id=id_, - current_status=str(submission.current_status), - expected_status=str(expected_status), - ) - - return submission - - def init_submission(self, *, header: models.SubmissionHeader) -> str: - """Initialize a new submission by providing header information. Returns the - ID of the created submission. No source event is published, yet, since the - submission content is still empty. - """ - id_ = generate_submission_id() - submission_creation = models.Submission(id=id_, **header.model_dump()) - self._submission_store.insert_new(submission=submission_creation) - - return id_ - - def get_submission(self, *, id_: str) -> models.Submission: - """Get details on the existing submission with the specified id. - - Raises: - SubmissionRegistry.SubmissionDoesNotExistError: - when no submission with the specified ID exists. - """ - return self._submission_store.get_by_id(id_) - - def upsert_submission_content( - self, *, submission_id: str, content: SubmissionContent - ) -> None: - """Insert or update the content of a pending submission. - The metadata is validated against the model, persisted in the submission store, - and finally published as source event. - - Raises: - SubmissionRegistry.SubmissionDoesNotExistError: - when no submission exists for the specified id. - SubmissionRegistry.ValidationError: - when the provided content failed validation against the metadata model. - SubmissionRegistry.StatusError: - when the status of the specified submission is not pending. - """ - submission = self._get_submission_with_status( - id_=submission_id, - expected_status=models.SubmissionStatus.PENDING, - ) - - # raises ValidationError if not valid: - self._metadata_validator.validate(content) - - updated_accession_map = generate_accession_map( - content=content, - existing_accession_map=submission.accession_map, - accession_registry=self._accession_registry, - anchor_points_by_target=self._anchor_points_by_target, - ) - - updated_submission = submission.model_copy( - update={"content": content, "accession_map": updated_accession_map} - ) - self._submission_store.update_existing(submission=updated_submission) - - self._event_publisher.publish_submission(updated_submission) - - def complete_submission(self, *, id_: str) -> None: - """Declare an existing submission as complete. The content of the submission - cannot change anymore afterwards. - - - Raises: - SubmissionRegistry.SubmissionDoesNotExistError: - when no submission exists for the specified id. - SubmissionRegistry.StatusError: - when the status of the specified submission is not pending. - SubmissionRegistry.ContentEmptyError: - when the content of the specified sumbission has not yet been specified. - """ - submission = self._get_submission_with_status( - id_=id_, expected_status=models.SubmissionStatus.PENDING - ) - - if submission.content is None: - raise self.ContentEmptyError(submission_id=id_) - - status_change = models.StatusChange( - timestamp=now_as_utc(), new_status=models.SubmissionStatus.COMPLETED - ) - updated_submission = submission.model_copy( - update={ - "status_history": submission.status_history # noqa: RUF005 - + (status_change,) - } - ) - self._submission_store.update_existing(submission=updated_submission) - - self._event_publisher.publish_submission(updated_submission) diff --git a/src/metldata/submission_registry/submission_store.py b/src/metldata/submission_registry/submission_store.py deleted file mode 100644 index f23a838a..00000000 --- a/src/metldata/submission_registry/submission_store.py +++ /dev/null @@ -1,137 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Logic for storing submission metadata.""" - -import json -from pathlib import Path - -from pydantic import Field -from pydantic_settings import BaseSettings - -from metldata.submission_registry import models - - -class SubmissionStoreConfig(BaseSettings): - """Config parameters and their defaults.""" - - submission_store_dir: Path = Field( - ..., description="The directory where the submission JSONs will be stored." - ) - - -class SubmissionStore: - """A class for storing and retrieving submissions.""" - - class SubmissionDoesNotExistError(RuntimeError): - """Raised when an Submission does not exists.""" - - def __init__(self, *, submission_id: str): - message = ( - "The submission with the following ID does not exist: " + submission_id - ) - super().__init__(message) - - class SubmissionAlreadyExistError(RuntimeError): - """Raised when a Submission already exists.""" - - def __init__(self, *, submission_id: str): - message = ( - "The submission with the following ID already exists: " + submission_id - ) - super().__init__(message) - - def __init__(self, *, config: SubmissionStoreConfig): - """Initialize with config parameters.""" - self._config = config - - def _get_submission_json_path(self, *, submission_id: str) -> Path: - """Get the path to the JSON file containing the submission with the specified - ID. - """ - return self._config.submission_store_dir / f"{submission_id}.json" - - def _save(self, *, submission: models.Submission) -> None: - """Save a submission to a JSON file.""" - json_path = self._get_submission_json_path(submission_id=submission.id) - with open(json_path, "w", encoding="utf-8") as file: - file.write(submission.model_dump_json(indent=4)) - - def exists(self, *, submission_id: str) -> bool: - """Check whether a submission with the specified ID exists.""" - json_path = self._get_submission_json_path(submission_id=submission_id) - return json_path.exists() - - def _assert_exists(self, *, submission_id: str): - """Assert that a submission with the specified ID exists. - - Raises: - SubmissionDoesNotExistError: Raised when the submission does not exist. - """ - if not self.exists(submission_id=submission_id): - raise self.SubmissionDoesNotExistError(submission_id=submission_id) - - def _assert_not_exists(self, *, submission_id: str): - """Assert that a submission with the specified ID does not exist. - - Raises: - SubmissionAlreadyExistError: Raised when the submission already exist. - """ - if self.exists(submission_id=submission_id): - raise self.SubmissionAlreadyExistError(submission_id=submission_id) - - def get_all_submission_ids(self) -> list[str]: - """Get all submission IDs from existing submissions""" - return sorted( - [ - submission_path.stem - for submission_path in self._config.submission_store_dir.iterdir() - if submission_path.suffix == ".json" - ] - ) - - def get_by_id(self, submission_id: str) -> models.Submission: - """Get an existing submission by its ID. - Raises: - SubmissionDoesNotExistError: Raised when the submission does not exist. - """ - json_path = self._get_submission_json_path(submission_id=submission_id) - - if not json_path.exists(): - raise self.SubmissionDoesNotExistError(submission_id=submission_id) - - with open(json_path, encoding="utf-8") as file: - submission_dict = json.load(file) - - return models.Submission(**submission_dict) - - def insert_new(self, *, submission: models.Submission) -> None: - """Save a new submission. - - Raises: - SubmissionAlreadyExistError: when the submission already exists. - """ - self._assert_not_exists(submission_id=submission.id) - self._save(submission=submission) - - def update_existing(self, *, submission: models.Submission) -> None: - """Update an existing submission. - - Raises: - SubmissionDoesNotExistError: when the submission does not exist. - """ - self._assert_exists(submission_id=submission.id) - self._save(submission=submission) diff --git a/tests/artifact_rest/__init__.py b/tests/artifact_rest/__init__.py deleted file mode 100644 index f5c81d1e..00000000 --- a/tests/artifact_rest/__init__.py +++ /dev/null @@ -1,17 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Test the artifact_rest sub-package.""" diff --git a/tests/artifact_rest/test_api_factory.py b/tests/artifact_rest/test_api_factory.py deleted file mode 100644 index 45f20f32..00000000 --- a/tests/artifact_rest/test_api_factory.py +++ /dev/null @@ -1,183 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Test the api_factory module.""" - - -import httpx -import pytest -from fastapi import FastAPI -from ghga_service_commons.api.testing import AsyncTestClient -from ghga_service_commons.utils.utc_dates import DateTimeUTC, now_as_utc -from hexkit.protocols.dao import DaoFactoryProtocol - -from metldata.artifacts_rest.api_factory import rest_api_factory -from metldata.artifacts_rest.artifact_info import ArtifactInfo, get_artifact_info_dict -from metldata.load.aggregator import MongoDbAggregator -from metldata.load.stats import create_stats_using_aggregator -from tests.artifact_rest.test_load_artifacts import load_example_artifact_resources -from tests.fixtures.artifact_info import EXAMPLE_ARTIFACT_INFOS, MINIMAL_ARTIFACT_INFO -from tests.fixtures.mongodb import ( # noqa: F401; pylint: disable=unused-import - MongoDbFixture, - mongodb_fixture, -) - - -@pytest.mark.asyncio -async def get_example_app_client( - dao_factory: DaoFactoryProtocol, - artifact_infos: list[ArtifactInfo] = EXAMPLE_ARTIFACT_INFOS, -) -> httpx.AsyncClient: - """Return a test client for a FastAPI generated using the artifact_rest_factory.""" - - router = await rest_api_factory( - artifact_infos=artifact_infos, dao_factory=dao_factory - ) - - app = FastAPI() - app.include_router(router) - return AsyncTestClient(app) - - -@pytest.mark.asyncio -async def test_health_check( - mongodb_fixture: MongoDbFixture, # noqa: F811 -): - """Test that the health check endpoint works.""" - async with await get_example_app_client( - dao_factory=mongodb_fixture.dao_factory - ) as client: - response = await client.get("/health") - - assert response.status_code == 200 - assert response.json() == {"status": "OK"} - - -@pytest.mark.asyncio -async def test_artifacts_info_endpoint( - mongodb_fixture: MongoDbFixture, # noqa: F811 -): - """Test happy path of using the artifacts info endpoint.""" - - expected_infos = EXAMPLE_ARTIFACT_INFOS - - async with await get_example_app_client( - dao_factory=mongodb_fixture.dao_factory - ) as client: - response = await client.options("/artifacts") - - response_json = response.json() - assert isinstance(response_json, list) - observed_infos = [ArtifactInfo(**info) for info in response_json] - assert observed_infos == expected_infos - - -@pytest.mark.asyncio -@pytest.mark.parametrize( - "artifact_name, expected_info", - [(info.name, info) for info in EXAMPLE_ARTIFACT_INFOS], -) -async def test_artifact_info_endpoint( - artifact_name: str, - expected_info: ArtifactInfo, - mongodb_fixture: MongoDbFixture, # noqa: F811 -): - """Test happy path of using the artifact info endpoint.""" - - async with await get_example_app_client( - dao_factory=mongodb_fixture.dao_factory - ) as client: - response = await client.options(f"/artifacts/{artifact_name}") - - observed_info = ArtifactInfo(**response.json()) - assert observed_info == expected_info - - -@pytest.mark.asyncio -async def test_get_artifact_resource_endpoint( - mongodb_fixture: MongoDbFixture, # noqa: F811 -): - """Test happy path of using the get artifact resource endpoint.""" - - # load example resources and prepare client: - await load_example_artifact_resources(dao_factory=mongodb_fixture.dao_factory) - - # Get an example resource: - artifact_name = MINIMAL_ARTIFACT_INFO.name - class_name = "File" - resource_id = "test_sample_01_R1" - async with await get_example_app_client( - dao_factory=mongodb_fixture.dao_factory, - artifact_infos=[MINIMAL_ARTIFACT_INFO], - ) as client: - response = await client.get( - f"/artifacts/{artifact_name}/classes/{class_name}/resources/{resource_id}" - ) - - assert response.status_code == 200 - observed_resource = response.json() - # check that the right object was return using an example slot: - expected_checksum = ( - "1c8aed294d5dec3740a175f6b655725fa668bfe41311e74f7ca9d85c91371b4e" - ) - assert observed_resource["checksum"] == expected_checksum - # check that the ID is included in the resource: - assert observed_resource["alias"] == resource_id - - -@pytest.mark.asyncio -async def test_get_stats_endpoint( - mongodb_fixture: MongoDbFixture, # noqa: F811 -): - """Test happy path of using the get stats endpoint.""" - - # load example resources and prepare client: - await load_example_artifact_resources(dao_factory=mongodb_fixture.dao_factory) - - artifact_infos = [MINIMAL_ARTIFACT_INFO] - - await create_stats_using_aggregator( - artifact_infos=get_artifact_info_dict(artifact_infos=artifact_infos), - primary_artifact_name=artifact_infos[-1].name, - db_aggregator=MongoDbAggregator(config=mongodb_fixture.config), - ) - - # Get the global summary statistics: - async with await get_example_app_client( - dao_factory=mongodb_fixture.dao_factory, - artifact_infos=artifact_infos, - ) as client: - response = await client.get("/stats") - - assert response.status_code == 200 - observed_stats = response.json() - assert isinstance(observed_stats, dict) - - raw_observed_created = observed_stats.pop("created") - if isinstance(raw_observed_created, str) and raw_observed_created.endswith("Z"): - raw_observed_created = raw_observed_created.replace("Z", "+00:00") - - observed_created = DateTimeUTC.fromisoformat(raw_observed_created) - assert abs((now_as_utc() - observed_created).seconds) < 5 - - expected_stats = { - "id": "global", - "resource_stats": { - "Dataset": {"count": 2}, - "File": {"count": 4, "stats": {"format": [{"value": "fastq", "count": 4}]}}, - }, - } - assert observed_stats == expected_stats diff --git a/tests/artifact_rest/test_artifact_info.py b/tests/artifact_rest/test_artifact_info.py deleted file mode 100644 index ce7d57c9..00000000 --- a/tests/artifact_rest/test_artifact_info.py +++ /dev/null @@ -1,124 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Test the artifact_info module.""" - -from metldata.artifacts_rest.artifact_info import ( - load_artifact_info, - subset_json_schema_for_class, -) -from tests.fixtures.metadata_models import VALID_MINIMAL_METADATA_MODEL - - -def test_subset_json_schema_for_class(): - """Test happy path of using subset_json_schema_for_class.""" - - # a global schema that uses File and Dataset definitions on the top level: - global_json_schema = { - "$schema": "http://json-schema.org/draft-07/schema#", - "properties": { - "datasets": { - "items": { - "additionalProperties": {"$ref": "#/$defs/Dataset"}, - "type": "object", - }, - "type": "array", - }, - "files": { - "items": { - "additionalProperties": {"$ref": "#/$defs/File"}, - "type": "object", - }, - "type": "array", - }, - }, - "required": ["files", "datasets"], - "type": "object", - "$defs": { - "Dataset": { - "properties": { - "files": { - "items": { - "additionalProperties": {"$ref": "#/$defs/File"}, - "type": "object", - }, - "type": "array", - } - }, - "required": ["files"], - "type": "object", - }, - "File": { - "properties": { - "checksum": {"type": "string"}, - "size": {"type": "integer"}, - }, - "required": ["size", "checksum"], - "type": "object", - }, - }, - } - - # generate a subset schema for the Dataset class: - observed_subschema = subset_json_schema_for_class( - global_json_schema=global_json_schema, class_name="Dataset" - ) - - # the subset schema should only contain the File defintion as it is used by the - # Dataset class: - expected_subschema = { - "$schema": "http://json-schema.org/draft-07/schema#", - "properties": { - "files": { - "items": { - "additionalProperties": {"$ref": "#/$defs/File"}, - "type": "object", - }, - "type": "array", - } - }, - "required": ["files"], - "type": "object", - "$defs": { - "File": { - "properties": { - "checksum": {"type": "string"}, - "size": {"type": "integer"}, - }, - "required": ["size", "checksum"], - "type": "object", - }, - }, - } - assert observed_subschema == expected_subschema - - -def test_load_artifact_info(): - """Test happy path of using load_artifact_info.""" - - expected_artifact_name = "test_artifact" - expected_artifact_description = "This is a test artifact." - expected_resource_class_names = {"File", "Dataset"} - - artifact_info = load_artifact_info( - model=VALID_MINIMAL_METADATA_MODEL, - name=expected_artifact_name, - description=expected_artifact_description, - ) - - assert artifact_info.name == expected_artifact_name - assert artifact_info.description == expected_artifact_description - assert artifact_info.resource_classes.keys() == expected_resource_class_names diff --git a/tests/artifact_rest/test_load_artifacts.py b/tests/artifact_rest/test_load_artifacts.py deleted file mode 100644 index da4339f6..00000000 --- a/tests/artifact_rest/test_load_artifacts.py +++ /dev/null @@ -1,83 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Test the load_artifacts module""" - -import pytest -from hexkit.protocols.dao import DaoFactoryProtocol - -from metldata.artifacts_rest.artifact_dao import ArtifactDaoCollection -from metldata.artifacts_rest.load_resources import load_artifact_resources -from metldata.artifacts_rest.models import ArtifactResource -from tests.fixtures.artifact_info import MINIMAL_ARTIFACT_INFO -from tests.fixtures.metadata import VALID_MINIMAL_METADATA_EXAMPLE -from tests.fixtures.mongodb import ( # noqa: F401; pylint: disable=unused-import - MongoDbFixture, - mongodb_fixture, -) - - -async def load_example_artifact_resources( - dao_factory: DaoFactoryProtocol, -) -> ArtifactDaoCollection: - """Load the example artifact using the load_artifact_resources function and - returns a ArtifactDaoCollection for accessing the resources.""" - - # construct the dao collection: - dao_collection = await ArtifactDaoCollection.construct( - dao_factory=dao_factory, - artifact_infos=[MINIMAL_ARTIFACT_INFO], - ) - - # load artifact resources from the metadata example: - await load_artifact_resources( - artifact_content=VALID_MINIMAL_METADATA_EXAMPLE, - artifact_info=MINIMAL_ARTIFACT_INFO, - dao_collection=dao_collection, - ) - - return dao_collection - - -@pytest.mark.asyncio -async def test_load_artifact_resources( - mongodb_fixture: MongoDbFixture, # noqa: F811 -): - """Test happy path of using load_artifact_resources function.""" - - dao_collection = await load_example_artifact_resources( - dao_factory=mongodb_fixture.dao_factory, - ) - - # check that artifact resources have been persisted to the database by testing for - # an example file: - expected_resource = ArtifactResource( - id_="test_sample_01_R1", - class_name="File", - content={ - "alias": "test_sample_01_R1", - "filename": "test_sample_01_R1.fastq", - "format": "fastq", - "checksum": "1c8aed294d5dec3740a175f6b655725fa668bfe41311e74f7ca9d85c91371b4e", - "size": 299943, - }, - ) - dao = await dao_collection.get_dao( - artifact_name=MINIMAL_ARTIFACT_INFO.name, - class_name=expected_resource.class_name, - ) - observed_resource = await dao.get_by_id(id_=expected_resource.id_) - assert observed_resource == expected_resource diff --git a/tests/artifact_rest/test_query_resources.py b/tests/artifact_rest/test_query_resources.py deleted file mode 100644 index 801f3472..00000000 --- a/tests/artifact_rest/test_query_resources.py +++ /dev/null @@ -1,58 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Test the query_resource module.""" - -import pytest - -from metldata.artifacts_rest.query_resources import query_artifact_resource -from tests.artifact_rest.test_load_artifacts import load_example_artifact_resources -from tests.fixtures.artifact_info import MINIMAL_ARTIFACT_INFO -from tests.fixtures.mongodb import ( # noqa: F401; pylint: disable=unused-import - MongoDbFixture, - mongodb_fixture, -) - - -@pytest.mark.asyncio -async def test_query_artifact_resource( - mongodb_fixture: MongoDbFixture, # noqa: F811 -): - """Test happy path of using the query_artifact_resource function.""" - - # load example resources and prepare client: - dao_collection = await load_example_artifact_resources( - dao_factory=mongodb_fixture.dao_factory - ) - - # Get an example resource: - artifact_name = MINIMAL_ARTIFACT_INFO.name - class_name = "File" - resource_id = "test_sample_01_R1" - observed_resource = await query_artifact_resource( - artifact_name=artifact_name, - class_name=class_name, - resource_id=resource_id, - dao_collection=dao_collection, - ) - - # check that the right object was return using an example slot: - expected_checksum = ( - "1c8aed294d5dec3740a175f6b655725fa668bfe41311e74f7ca9d85c91371b4e" - ) - assert observed_resource.content["checksum"] == expected_checksum - # check that the ID is included in the resource: - assert observed_resource.content["alias"] == resource_id diff --git a/tests/builtin_tranformations/aggregate/conftest.py b/tests/builtin_tranformations/aggregate/conftest.py deleted file mode 100644 index cc4999c5..00000000 --- a/tests/builtin_tranformations/aggregate/conftest.py +++ /dev/null @@ -1,67 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -from pathlib import Path - -import yaml -from pytest import fixture -from tests.fixtures.metadata import _get_example_metadata -from tests.fixtures.metadata_models import _get_example_model -from tests.fixtures.utils import BASE_DIR - -from metldata.builtin_transformations.aggregate import AggregateConfig -from metldata.custom_types import Json -from metldata.model_utils.essentials import MetadataModel - - -def load_yaml(path: Path) -> Json: - """Loads yaml or json file from the specified sub-path of the tests/fixtures - directory and returns the contents as a dictionary.""" - with open(BASE_DIR.joinpath(path), encoding="utf8") as in_stream: - return yaml.safe_load(in_stream) - - -@fixture -def empty_model() -> MetadataModel: - """An empty LinkML MetadataModel""" - return MetadataModel(id="test", name="test") - - -@fixture -def model_resolved_public() -> MetadataModel: - """The GHGA submission metadata model version 1.0.0""" - return _get_example_model("ghga_1.1.0_resolved_public") - - -@fixture -def data_complete_1_resolved_public() -> Json: - """Official GHGA example data "complete_1" version 1.0.0+1""" - return _get_example_metadata("complete_1_1.1.0+1.resolved_public") - - -@fixture -def config() -> AggregateConfig: - """A working config""" - return AggregateConfig.model_validate( - load_yaml(Path("transformations/aggregate/default/config.yaml")) - ) - - -@fixture -def invalid_config() -> AggregateConfig: - """An invalid config with conflicting output paths.""" - return AggregateConfig.model_validate( - load_yaml(Path("transformations/aggregate/config_invalid.yaml")) - ) diff --git a/tests/builtin_tranformations/aggregate/test_data_subgraph.py b/tests/builtin_tranformations/aggregate/test_data_subgraph.py deleted file mode 100644 index d6dd2a7a..00000000 --- a/tests/builtin_tranformations/aggregate/test_data_subgraph.py +++ /dev/null @@ -1,37 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -from metldata.builtin_transformations.aggregate.cached_model import CachedMetadataModel -from metldata.builtin_transformations.aggregate.data_subgraph import DataSubgraph - - -def test_data_subgraph_sample_name( - model_resolved_public, data_complete_1_resolved_public -): - """The aggregate test""" - data_branch = DataSubgraph( - model=CachedMetadataModel(model=model_resolved_public), - submission_data=data_complete_1_resolved_public, - origin="SequencingProtocol", - path_strings=[ - "sequencing_experiments.sequencing_processes.sample.name", - ], - visit_once_classes=["Sample"], - ) - dataset = data_complete_1_resolved_public["sequencing_protocols"][0] - results = set(data_branch.terminal_nodes(data=dataset)) - - assert results == {"GHGAS_tissue_sample1", "GHGAS_blood_sample1"} diff --git a/tests/builtin_tranformations/aggregate/test_model_generator.py b/tests/builtin_tranformations/aggregate/test_model_generator.py deleted file mode 100644 index 5ac87d02..00000000 --- a/tests/builtin_tranformations/aggregate/test_model_generator.py +++ /dev/null @@ -1,41 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -# pylint: disable=redefined-outer-name - - -from pytest import raises - -from metldata.builtin_transformations.aggregate.model_transform import ( - build_aggregation_model, -) -from metldata.transform.base import MetadataModelTransformationError - - -def test_valid_config(model_resolved_public, config): - """Basic test for the construction of a valid output model.""" - model = build_aggregation_model(model=model_resolved_public, config=config) - for cls_name in ("DatasetStats",): - assert cls_name in model.schema_view.all_classes() - for cls_name in ("Study", "Dataset", "Sample"): - assert cls_name not in model.schema_view.all_classes() - - -def test_invalid_config(empty_model, invalid_config): - """Test whether an invalid config with conflicting output paths raises an - exception.""" - with raises(MetadataModelTransformationError): - build_aggregation_model(model=empty_model, config=invalid_config) diff --git a/tests/builtin_tranformations/merge_slots/__init__.py b/tests/builtin_tranformations/merge_slots/__init__.py deleted file mode 100644 index 43d68b6a..00000000 --- a/tests/builtin_tranformations/merge_slots/__init__.py +++ /dev/null @@ -1,17 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Test the merge_slots sub package.""" diff --git a/tests/builtin_tranformations/merge_slots/test_config.py b/tests/builtin_tranformations/merge_slots/test_config.py deleted file mode 100644 index 01fc86b0..00000000 --- a/tests/builtin_tranformations/merge_slots/test_config.py +++ /dev/null @@ -1,85 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Test the config module.""" - -from contextlib import nullcontext - -import pytest -from pydantic import ValidationError - -from metldata.builtin_transformations.merge_slots.config import SlotMergingConfig - - -@pytest.mark.parametrize( - "merge_instructions, valid", - [ - ( - # valid since two different classes: - [ - { - "class_name": "class_a", - "source_slots": ["some_slot", "another_slot"], - "target_slot": "merged_slot", - }, - { - "class_name": "class_b", - "source_slots": ["merged_slot", "yet_another_slot"], - "target_slot": "some_slot", - }, - ], - True, - ), - ( - # invalid since using target slot of one merge instruction as source slot - # for another: - [ - { - "class_name": "class_a", - "source_slots": ["some_slot", "another_slot"], - "target_slot": "merged_slot", - }, - { - "class_name": "class_a", - "source_slots": ["merged_slot", "yet_another_slot"], - "target_slot": "another_merged_slot", - }, - ], - False, - ), - ( - # invalid since two merge instruction target the same slot: - [ - { - "class_name": "class_a", - "source_slots": ["some_slot", "another_slot"], - "target_slot": "merged_slot", - }, - { - "class_name": "class_a", - "source_slots": ["another_slot", "yet_another_slot"], - "target_slot": "merged_slot", - }, - ], - False, - ), - ], -) -def test_slot_merging_config(merge_instructions: list, valid: bool): - """Test that validation of SlotMergingConfig.""" - - with nullcontext() if valid else pytest.raises(ValidationError): - SlotMergingConfig(merge_instructions=merge_instructions) diff --git a/tests/builtin_tranformations/merge_slots/test_models.py b/tests/builtin_tranformations/merge_slots/test_models.py deleted file mode 100644 index 98b37244..00000000 --- a/tests/builtin_tranformations/merge_slots/test_models.py +++ /dev/null @@ -1,34 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Test the models module.""" - -import pytest -from pydantic import ValidationError - -from metldata.builtin_transformations.merge_slots.models import SlotMergeInstruction - - -def test_slot_merge_instruction_overlap(): - """Test that an overlap in source and target slots fails with the expected - exception.""" - - with pytest.raises(ValidationError): - SlotMergeInstruction( # type: ignore - class_name="class_a", - source_slots=["some_slot", "another_slot"], - target_slot="some_slot", - ) diff --git a/tests/builtin_workflows/__init__.py b/tests/builtin_workflows/__init__.py deleted file mode 100644 index e5b236ca..00000000 --- a/tests/builtin_workflows/__init__.py +++ /dev/null @@ -1,17 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Test builtin_workflows subpackage.""" diff --git a/tests/builtin_workflows/test_happy.py b/tests/builtin_workflows/test_happy.py deleted file mode 100644 index bb9cf6c8..00000000 --- a/tests/builtin_workflows/test_happy.py +++ /dev/null @@ -1,62 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Test the builtin workflows using pre-defined test cases.""" - -import pytest - -from metldata.transform.handling import WorkflowHandler -from tests.fixtures.workflows import WORKFLOW_TEST_CASES, WorkflowTestCase - - -@pytest.mark.parametrize( - "test_case", - WORKFLOW_TEST_CASES, - ids=str, -) -def test_model_transform( - test_case: WorkflowTestCase, -): - """Test the happy path of transforming a model.""" - - handler = WorkflowHandler( - workflow_definition=test_case.workflow_definition, - workflow_config=test_case.config, - original_model=test_case.original_model, - ) - artifact_models = handler.artifact_models - - for artifact, expected_model in test_case.artifact_models.items(): - assert artifact_models[artifact] == expected_model - - -@pytest.mark.parametrize("test_case", WORKFLOW_TEST_CASES, ids=str) -def test_metadata_transform( - test_case: WorkflowTestCase, -): - """Test the happy path of transforming metadata for a model.""" - - handler = WorkflowHandler( - workflow_definition=test_case.workflow_definition, - workflow_config=test_case.config, - original_model=test_case.original_model, - ) - artifact_metadata = handler.run( - metadata=test_case.original_metadata, annotation=test_case.submission_annotation - ) - - for artifact, expected_metadata in test_case.artifact_metadata.items(): - assert artifact_metadata[artifact] == expected_metadata diff --git a/tests/conftest.py b/tests/conftest.py deleted file mode 100644 index 3cf1f401..00000000 --- a/tests/conftest.py +++ /dev/null @@ -1,24 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -""""Shared fixtures""" - -from hexkit.providers.mongodb.testutils import get_mongodb_fixture -from hexkit.providers.testing.utils import get_event_loop - -event_loop = get_event_loop(scope="session") - -mongodb_session = get_mongodb_fixture(scope="session") diff --git a/tests/fixtures/config.py b/tests/fixtures/config.py deleted file mode 100644 index 26da886d..00000000 --- a/tests/fixtures/config.py +++ /dev/null @@ -1,44 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -from collections.abc import Generator -from tempfile import NamedTemporaryFile, TemporaryDirectory - -import pytest - -from metldata.config import SubmissionConfig -from tests.fixtures.metadata_models import VALID_MINIMAL_MODEL_EXAMPLE_PATH - -PREFIX_MAPPING = { - "File": "GHGAF", - "Experiment": "GHGAE", - "Sample": "GHGAS", - "Dataset": "GHGAD", -} - - -@pytest.fixture -def config_sub_fixture() -> Generator[SubmissionConfig, None, None]: - """Generate a test config.""" - - with TemporaryDirectory() as submission_store_dir: - with NamedTemporaryFile() as accession_store_path: - yield SubmissionConfig( # type: ignore - metadata_model_path=VALID_MINIMAL_MODEL_EXAMPLE_PATH, - submission_store_dir=submission_store_dir, # type: ignore - accession_store_path=accession_store_path.name, # type: ignore - prefix_mapping=PREFIX_MAPPING, - ) diff --git a/tests/fixtures/example_models/ghga_1.1.0_resolved_public.yaml b/tests/fixtures/example_models/ghga_1.1.0_resolved_public.yaml deleted file mode 100644 index 85267979..00000000 --- a/tests/fixtures/example_models/ghga_1.1.0_resolved_public.yaml +++ /dev/null @@ -1,2948 +0,0 @@ -classes: - AliasMixin: - description: - Mixin for entities that can be assigned an alias at the time of metadata - submission. - mixin: true - name: AliasMixin - slot_usage: - alias: - name: alias - required: true - slots: - - alias - Analysis: - aliases: - - data analysis - description: - An Analysis is a data transformation that transforms input data to - output data. The workflow used to achieve this transformation and the individual - steps are also captured. - mixins: - - IdentifiedByAliasMixin - name: Analysis - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - analysis_processes: - inlined: false - multivalued: true - name: analysis_processes - range: AnalysisProcess - required: true - description: - description: - "Describing how an Analysis was carried out. (e.g.: computational - tools, settings, etc.)." - name: description - required: false - reference_chromosome: - name: reference_chromosome - required: true - reference_genome: - name: reference_genome - required: true - type: - description: - The type of the Analysis. Either Reference Alignment (BAM) or - Sequence Variation (VCF) - name: type - required: false - slots: - - title - - description - - type - - reference_genome - - reference_chromosome - - accession - - analysis_processes - AnalysisProcess: - mixins: - - IdentifiedByAliasMixin - name: AnalysisProcess - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - analysis: - description: The Analysis the AnalysisProcess was part of - inlined: false - name: analysis - required: true - analysis_process_output_files: - inlined: false - multivalued: true - name: analysis_process_output_files - range: AnalysisProcessOutputFile - required: true - sample_input_files: - inlined: false - name: sample_input_files - required: false - sequencing_process_input_files: - inlined: false - name: sequencing_process_input_files - required: false - study_input_files: - inlined: false - name: study_input_files - required: false - slots: - - analysis - - study_input_files - - sample_input_files - - sequencing_process_input_files - - accession - - analysis_process_output_files - AnalysisProcessOutputFile: - description: - A AnalysisProcessOutputFile is a File that is associated as an output - file with an AnalysisProcess. - is_a: File - name: AnalysisProcessOutputFile - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - analysis_process: - inlined: false - name: analysis_process - required: true - slots: - - analysis_process - - accession - Attribute: - description: A key/value pair that further characterizes an entity. - exact_mappings: - - SIO:000614 - name: Attribute - slot_usage: - key: - description: The key for an attribute. - name: key - required: true - key_type: - description: - A semantic type that characterizes the attribute key. Usually - this is a term from an ontology. For example, 'MAXO:0000616' indicates that - the attribute is a measurement of oxygen saturation in the blood. - name: key_type - required: false - value: - description: - The value for an attribute. Usually this is a numerical value - (without the units). - name: value - required: true - value_type: - description: - The value_type that characterizes the attribute value. Usually - this is a term from an ontology that describes how to interpret the value. - For example, 'SIO:001413' indicates that the value is to be interpreted - as a percentage. - name: value_type - required: false - slots: - - key - - key_type - - value - - value_type - AttributeMixin: - description: Mixin for entities that can have one or more attributes. - mixin: true - name: AttributeMixin - slot_usage: - attributes: - inlined: true - inlined_as_list: true - name: attributes - required: false - slots: - - attributes - Biospecimen: - description: - A Biospecimen is any natural material taken from a biological entity - (usually a human) for testing, diagnostics, treatment, or research purposes. - The Biospecimen is linked to the Individual from which the Biospecimen is derived. - exact_mappings: - - OBI:0100051 - mixins: - - IdentifiedByAliasMixin - name: Biospecimen - slot_usage: - accession: - identifier: true - name: accession - required: true - age_at_sampling: - name: age_at_sampling - required: true - alias: - identifier: false - name: alias - description: - name: description - required: false - individual: - description: The Individual entity from which this Biospecimen was derived. - inlined: false - name: individual - required: true - isolation: - name: isolation - recommended: true - required: false - name: - name: name - recommended: true - required: false - samples: - inlined: false - multivalued: true - name: samples - range: Sample - required: true - storage: - name: storage - recommended: true - required: false - tissue: - name: tissue - required: true - type: - description: The type of Biospecimen. - name: type - recommended: true - required: false - vital_status_at_sampling: - name: vital_status_at_sampling - recommended: true - required: false - slots: - - name - - type - - description - - isolation - - storage - - individual - - age_at_sampling - - vital_status_at_sampling - - tissue - - accession - - samples - Condition: - description: An condition that is linked to comparable samples. - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - name: Condition - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - case_control_status: - name: case_control_status - required: true - description: - name: description - required: true - disease_or_healthy: - name: disease_or_healthy - required: true - mutant_or_wildtype: - name: mutant_or_wildtype - required: true - name: - name: name - required: true - samples: - inlined: false - multivalued: true - name: samples - range: Sample - required: true - study: - inlined: false - name: study - required: true - slots: - - title - - description - - name - - disease_or_healthy - - case_control_status - - mutant_or_wildtype - - study - - accession - - samples - DataAccessCommittee: - description: - A group of members that are delegated to grant access to one or more - datasets after ensuring the minimum criteria for data sharing has been met, - and request for data use does not raise ethical and/or legal concerns. - mixins: - - IdentifiedByAliasMixin - name: DataAccessCommittee - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - email: - name: email - required: true - institute: - name: institute - required: true - slots: - - email - - institute - - accession - DataAccessPolicy: - description: - A Data Access Policy specifies under which circumstances, legal or - otherwise, a user can have access to one or more Datasets belonging to one or - more Studies. - mixins: - - IdentifiedByAliasMixin - name: DataAccessPolicy - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - data_access_committee: - description: The Data Access Committee linked to this policy. - inlined: false - name: data_access_committee - required: true - data_use_modifiers: - description: - Modifier for Data use permission associated with a policy. Should - be descendants of 'DUO:0000017 data use modifier' - name: data_use_modifiers - recommended: true - required: false - data_use_permission: - description: - Data use permission associated with a policy. Typically one or - more terms from DUO and should be descendants of 'DUO:0000001 data use permission'. - name: data_use_permission - required: true - description: - description: A short description for the Data Access Policy. - name: description - required: true - name: - description: A name for the Data Access Policy. - name: name - required: true - policy_text: - description: - The terms of data use and policy verbiage should be captured - here. - name: policy_text - required: true - policy_url: - description: - URL for the policy, if available. This is useful if the terms - of the policy is made available online at a resolvable URL. - name: policy_url - recommended: true - required: false - slots: - - name - - description - - policy_text - - policy_url - - data_access_committee - - data_use_permission - - data_use_modifiers - - accession - Dataset: - description: - A Dataset is a collection of Files that is prepared for distribution - and is tied to a Data Access Policy. - exact_mappings: - - SIO:000089 - mixins: - - IdentifiedByAliasMixin - name: Dataset - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - analysis_process_output_files: - inlined: false - multivalued: true - name: analysis_process_output_files - range: AnalysisProcessOutputFile - required: true - data_access_policy: - description: The Data Access Policy that applies to this Dataset. - inlined: false - name: data_access_policy - required: true - description: - name: description - required: true - files: - any_of: - - aliases: [] - range: StudyFile - - aliases: [] - range: SampleFile - description: All files associated with the dataset. - inlined: false - multivalued: true - name: files - required: true - sample_files: - inlined: false - multivalued: true - name: sample_files - range: SampleFile - required: true - samples: - inlined: false - multivalued: true - name: samples - range: Sample - required: true - sequencing_process_files: - inlined: false - multivalued: true - name: sequencing_process_files - range: SequencingProcessFile - required: true - studies: - inlined: false - multivalued: true - name: studies - range: Study - required: true - study_files: - inlined: false - multivalued: true - name: study_files - range: StudyFile - required: true - title: - description: A title for the submitted Dataset. - name: title - required: true - types: - description: The type of a dataset. - name: types - required: true - slots: - - title - - description - - types - - data_access_policy - - accession - - analysis_process_output_files - - sequencing_process_files - - study_files - - studies - - sample_files - - samples - - files - File: - description: - A file is an object that contains information generated from a process, - either an Experiment or an Analysis. - mixins: - - IdentifiedByAliasMixin - name: File - slot_usage: - checksum: - name: checksum - required: true - checksum_type: - name: checksum_type - required: true - dataset: - inlined: false - name: dataset - required: true - format: - name: format - required: true - forward_or_reverse: - name: forward_or_reverse - recommended: true - required: false - name: - description: The given filename. - name: name - required: true - size: - name: size - required: true - slots: - - name - - format - - size - - checksum - - forward_or_reverse - - checksum_type - - dataset - IdentifiedByAliasMixin: - abstract: true - is_a: AliasMixin - mixin: true - name: IdentifiedByAliasMixin - slot_usage: - alias: - identifier: true - name: alias - Individual: - aliases: - - subject - - patient - description: An Individual is a Person who is participating in a Study. - mixins: - - IdentifiedByAliasMixin - name: Individual - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - ancestries: - name: ancestries - required: false - biospecimens: - inlined: false - multivalued: true - name: biospecimens - range: Biospecimen - required: true - geographical_region: - name: geographical_region - required: false - karyotype: - name: karyotype - required: false - phenotypic_features: - description: - The Phenotypic Feature entity that is associated with this Biospecimen - at the time of retrieval from the organism. Typically, a concept from Human - Phenotype Ontology. For example, 'HP:0100244' indicates that the Individual - - from_which_the_Biospecimen was extracted from - exhibits_'Fibrosarcoma'_as_one_of_its_phenotype. - name: phenotypic_features - required: false - sex: - name: sex - required: true - slots: - - sex - - karyotype - - geographical_region - - ancestries - - phenotypic_features - - accession - - biospecimens - LibraryPreparationProtocol: - description: Information about the library_preparation of an sequencing experiment. - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - name: LibraryPreparationProtocol - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - attributes: - description: - One or more attributes that further characterizes this library_preparation - Protocol. - name: attributes - description: - description: - "Description about how a sequencing library was prepared (eg: - Library construction method)." - name: description - required: true - end_bias: - name: end_bias - recommended: true - required: false - library_layout: - name: library_layout - required: true - library_name: - name: library_name - required: true - library_preparation: - name: library_preparation - required: true - library_preparation_kit_manufacturer: - name: library_preparation_kit_manufacturer - recommended: true - required: false - library_preparation_kit_retail_name: - name: library_preparation_kit_retail_name - recommended: true - required: false - library_selection: - name: library_selection - required: true - library_type: - name: library_type - required: true - primer: - name: primer - recommended: true - required: false - rnaseq_strandedness: - name: rnaseq_strandedness - recommended: true - required: false - sequencing_experiments: - inlined: false - multivalued: true - name: sequencing_experiments - range: SequencingExperiment - required: true - target_regions: - name: target_regions - required: false - slots: - - description - - library_name - - library_layout - - library_type - - library_selection - - library_preparation - - library_preparation_kit_retail_name - - library_preparation_kit_manufacturer - - primer - - end_bias - - target_regions - - rnaseq_strandedness - - accession - - sequencing_experiments - Publication: - description: - The Publication entity represents a publication. While a publication - can be any article that is published, the minimum expectation is that the publication - has a valid DOI. - mixins: - - IdentifiedByAliasMixin - name: Publication - slot_usage: - abstract: - description: - The study abstract that describes the goals. Can also hold abstract - from a publication related to this study. - name: abstract - required: false - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - author: - name: author - required: false - doi: - description: DOI identifier of the Publication. - name: doi - required: true - journal: - name: journal - required: false - study: - description: The Study entity associated with this Publication. - inlined: false - name: study - required: true - title: - description: The title for the Publication. - name: title - required: false - xref: - description: One or more cross-references for this Publication. - name: xref - required: false - year: - name: year - required: false - slots: - - title - - abstract - - author - - year - - journal - - doi - - study - - xref - - accession - Sample: - description: - A sample is a limited quantity of something to be used for testing, - analysis, inspection, investigation, demonstration, or trial use. A sample is - prepared from a Biospecimen (isolate or tissue). - exact_mappings: - - SIO:001050 - - biolink:MaterialSample - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - name: Sample - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - biospecimen: - description: The Biospecimen from which this Sample was prepared from. - inlined: false - name: biospecimen - required: false - condition: - inlined: false - name: condition - required: true - description: - description: - Short textual description of the sample (How the sample was collected, - sample source, Protocol followed for processing the sample etc). - name: description - required: true - isolation: - name: isolation - recommended: true - required: false - name: - description: Name of the sample (eg:GHGAS_Blood_Sample1 or GHGAS_PBMC_RNAseq_S1). - name: name - required: true - sample_files: - inlined: false - multivalued: true - name: sample_files - range: SampleFile - required: true - sequencing_processes: - inlined: false - multivalued: true - name: sequencing_processes - range: SequencingProcess - required: true - storage: - name: storage - recommended: true - required: false - type: - description: The type of sample. - in_subset: - - ontology - name: type - range: SampleTypeEnum - required: false - xref: - description: - One or more cross-references for this Sample. For example, this - Sample may have an EBI BioSamples accession or an EGA Sample accession. - name: xref - required: false - slots: - - name - - type - - description - - isolation - - storage - - biospecimen - - condition - - xref - - accession - - sample_files - - sequencing_processes - SampleFile: - description: A SampleFile is a File that is associated with a Sample. - is_a: File - name: SampleFile - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - sample: - inlined: false - name: sample - required: true - slots: - - sample - - accession - SequencingExperiment: - description: - An sequencing experiment is an investigation that consists of a coordinated - set of actions and observations designed to generate data with the goal of verifying, - falsifying, or establishing the validity of a hypothesis. - exact_mappings: - - SIO:000994 - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - name: SequencingExperiment - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - description: - description: A detailed description of the Experiment. - name: description - required: true - library_preparation_protocol: - inlined: false - name: library_preparation_protocol - required: true - sequencing_processes: - inlined: false - multivalued: true - name: sequencing_processes - range: SequencingProcess - required: true - sequencing_protocol: - inlined: false - name: sequencing_protocol - required: true - title: - description: "Name for the experiment (eg: GHGAE_PBMC_RNAseq)." - name: title - type: - description: The type of sequencing experiment. - name: type - required: false - slots: - - title - - description - - type - - sequencing_protocol - - library_preparation_protocol - - accession - - sequencing_processes - SequencingProcess: - description: A sequencing process linking a sample to sequencing output. - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - name: SequencingProcess - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - description: - name: description - required: true - index_sequence: - name: index_sequence - recommended: true - required: false - lane_number: - name: lane_number - recommended: true - required: false - name: - name: name - required: true - sample: - inlined: false - name: sample - required: true - sequencing_experiment: - inlined: false - name: sequencing_experiment - required: true - sequencing_lane_id: - description: Identifier of the sequencing lane. Used for batch correction. - name: sequencing_lane_id - required: false - sequencing_machine_id: - description: Identifier of the sequencing machine. Used for batch correction. - name: sequencing_machine_id - required: false - sequencing_process_files: - inlined: false - multivalued: true - name: sequencing_process_files - range: SequencingProcessFile - required: true - sequencing_run_id: - description: Identifier of the sequencing run. Used for batch correction. - name: sequencing_run_id - required: false - slots: - - title - - description - - name - - sequencing_run_id - - sequencing_lane_id - - sequencing_machine_id - - sequencing_experiment - - index_sequence - - lane_number - - sample - - accession - - sequencing_process_files - SequencingProcessFile: - description: A SequencingProcessFile is a File that is associated with a SequencingProcess. - is_a: File - name: SequencingProcessFile - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - sequencing_process: - inlined: false - name: sequencing_process - required: true - slots: - - sequencing_process - - accession - SequencingProtocol: - description: Information about the sequencing of a sample. - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - name: SequencingProtocol - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - attributes: - description: - One or more attributes that further characterizes this Sequencing - Protocol. - name: attributes - cell_barcode_offset: - name: cell_barcode_offset - recommended: true - required: false - cell_barcode_read: - name: cell_barcode_read - recommended: true - required: false - cell_barcode_size: - name: cell_barcode_size - recommended: true - required: false - description: - description: - "Description about the sequencing Protocol (eg: mRNA-seq, Whole - exome long-read sequencing etc)." - name: description - required: true - flow_cell_id: - name: flow_cell_id - recommended: true - required: false - flow_cell_type: - name: flow_cell_type - recommended: true - required: false - instrument_model: - name: instrument_model - required: true - sample_barcode_read: - name: sample_barcode_read - recommended: true - required: false - sequencing_center: - name: sequencing_center - recommended: true - required: false - sequencing_experiments: - inlined: false - multivalued: true - name: sequencing_experiments - range: SequencingExperiment - required: true - sequencing_read_length: - name: sequencing_read_length - required: false - target_coverage: - name: target_coverage - required: false - type: - description: - "Type of the sequencing Protocol (eg: mRNA-seq, Whole exome long-read - sequencing etc)." - name: type - umi_barcode_offset: - name: umi_barcode_offset - recommended: true - required: false - umi_barcode_read: - name: umi_barcode_read - recommended: true - required: false - umi_barcode_size: - name: umi_barcode_size - recommended: true - required: false - slots: - - description - - type - - instrument_model - - sequencing_center - - sequencing_read_length - - target_coverage - - flow_cell_id - - flow_cell_type - - umi_barcode_read - - umi_barcode_offset - - umi_barcode_size - - cell_barcode_read - - cell_barcode_offset - - cell_barcode_size - - sample_barcode_read - - accession - - sequencing_experiments - Study: - description: - Studies are experimental investigations of a particular phenomenon. - It involves a detailed examination and analysis of a subject to learn more about - the phenomenon being studied. - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - name: Study - slot_usage: - accession: - identifier: true - name: accession - required: true - affiliations: - name: affiliations - required: true - alias: - identifier: false - name: alias - attributes: - description: - "Custom key/value pairs that further characterizes the Study. - (e.g.: approaches - single-cell,_bulk_etc)" - name: attributes - conditions: - inlined: false - multivalued: true - name: conditions - range: Condition - required: true - description: - description: - A detailed description (abstract) that describes the goals of - this Study. - name: description - required: true - publications: - inlined: false - multivalued: true - name: publications - range: Publication - required: true - study_files: - inlined: false - multivalued: true - name: study_files - range: StudyFile - required: true - title: - description: A comprehensive title for the study. - name: title - required: true - type: - description: - The type of Study. For example, 'Cancer Genomics', 'Epigenetics', - 'Exome Sequencing'. - name: type - range: StudyTypeEnum - required: true - slots: - - title - - description - - type - - affiliations - - accession - - conditions - - study_files - - publications - StudyFile: - description: A StudyFile is a File that is associated with a Study. - is_a: File - name: StudyFile - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - study: - inlined: false - name: study - required: true - slots: - - study - - accession - Submission: - description: - A grouping entity that represents information about one or more entities. - A submission can be considered as a set of inter-related (and inter-connected) - entities that represent a data submission to GHGA. - name: Submission - slot_usage: - analyses: - description: - Information about one or more Analysis entities associated with - this submission. - inlined: true - inlined_as_list: true - name: analyses - required: true - analysis_process_output_files: - description: The AnalysisProcessOutputFiles that are part of this submission. - inlined: true - inlined_as_list: true - name: analysis_process_output_files - required: true - analysis_processes: - description: The AnalysisProcesses that are part of this submission. - inlined: true - inlined_as_list: true - name: analysis_processes - required: true - biospecimens: - description: - Information about one or more Biospecimen entities associated - with this submission. - inlined: true - inlined_as_list: true - name: biospecimens - required: true - conditions: - description: The Conditions associated with this Submission. - inlined: true - inlined_as_list: true - name: conditions - required: true - data_access_committees: - description: The Data Access Committee that applies to Dataset in this submission. - inlined: true - inlined_as_list: true - name: data_access_committees - required: true - data_access_policies: - description: The Data Access Policy that applies to Dataset in this submission. - inlined: true - inlined_as_list: true - name: data_access_policies - required: true - datasets: - description: One or more Dataset that are part of this submission. - inlined: true - inlined_as_list: true - name: datasets - required: true - individuals: - description: - Information about one or more Individual entities associated - with this submission. - inlined: true - inlined_as_list: true - name: individuals - required: true - library_preparation_protocols: - description: - One or more library preparation protocol entities associated - with this Submission. - inlined: true - inlined_as_list: true - name: library_preparation_protocols - required: true - publications: - description: One or more Publication entities associated with this Submission. - inlined: true - inlined_as_list: true - name: publications - required: true - sample_files: - description: The SampleFiles that are part of this submission. - inlined: true - inlined_as_list: true - name: sample_files - required: true - samples: - description: - Information about one or more Sample entities associated with - this submission. - inlined: true - inlined_as_list: true - name: samples - required: true - sequencing_experiments: - description: - Information about one or more Experiment entities associated - with this submission. - inlined: true - inlined_as_list: true - name: sequencing_experiments - required: true - sequencing_process_files: - description: The SequencingProcessFiles that are part of this submission. - inlined: true - inlined_as_list: true - name: sequencing_process_files - required: true - sequencing_processes: - description: The SequencingProcesses that are part of this submission. - inlined: true - inlined_as_list: true - name: sequencing_processes - required: true - sequencing_protocols: - description: - One or more sequencing protocol entities associated with this - Submission. - inlined: true - inlined_as_list: true - name: sequencing_protocols - required: true - studies: - description: Information about a Study entities associated with this submission. - inlined: true - inlined_as_list: true - name: studies - required: true - study_files: - description: The StudyFiles that are part of this submission. - inlined: true - inlined_as_list: true - name: study_files - required: true - trios: - description: The Trios associated with this Submission. - inlined: true - inlined_as_list: true - name: trios - required: true - slots: - - analyses - - analysis_process_output_files - - analysis_processes - - biospecimens - - conditions - - data_access_committees - - data_access_policies - - datasets - - individuals - - library_preparation_protocols - - publications - - sample_files - - samples - - sequencing_experiments - - sequencing_process_files - - sequencing_processes - - sequencing_protocols - - studies - - study_files - - trios - tree_root: true - Trio: - description: - A trio is defined by three individuals representing an individual - and their parents. - mixins: - - IdentifiedByAliasMixin - name: Trio - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - child: - inlined: false - name: child - required: true - father: - inlined: false - name: father - required: true - mother: - inlined: false - name: mother - required: true - slots: - - mother - - father - - child - - accession -default_curi_maps: - - obo_context - - idot_context - - semweb_context -default_prefix: GHGA -default_range: string -description: - The submission centric metadata schema for the German Human Genome-Phenome - Archive (GHGA). -enums: - AgeRangeEnum: - description: Enum to capture the age range that an Indiviudal belongs to. - name: AgeRangeEnum - permissible_values: - 0_TO_5: - description: Age between 0 to 5. - text: 0_TO_5 - 11_TO_15: - description: Age between 11 to 15. - text: 11_TO_15 - 16_TO_20: - description: Age between 16 to 20. - text: 16_TO_20 - 21_TO_25: - description: Age between 21 to 25. - text: 21_TO_25 - 26_TO_30: - description: Age between 26 to 30. - text: 26_TO_30 - 31_TO_35: - description: Age between 31 to 35. - text: 31_TO_35 - 36_TO_40: - description: Age between 36 to 40. - text: 36_TO_40 - 41_TO_45: - description: Age between 41 to 45. - text: 41_TO_45 - 46_TO_50: - description: Age between 46 to 50. - text: 46_TO_50 - 51_TO_55: - description: Age between 51 to 55. - text: 51_TO_55 - 56_TO_60: - description: Age between 56 to 60. - text: 56_TO_60 - 61_TO_65: - description: Age between 61 to 65. - text: 61_TO_65 - 66_TO_70: - description: Age between 66 to 70. - text: 66_TO_70 - 6_TO_10: - description: Age between 6 to 10. - text: 6_TO_10 - 71_TO_75: - description: Age between 71 to 75. - text: 71_TO_75 - 76_TO_80: - description: Age between 76 to 80. - text: 76_TO_80 - 81_OR_OLDER: - description: Age above 80. - text: 81_OR_OLDER - UNKNOWN: - description: Age range unknown. - text: UNKNOWN - AncestryEnum: - description: Permitted values for ancestry - name: AncestryEnum - reachable_from: - include_self: false - source_nodes: - - HANCESTRO:0004 - source_ontology: http://purl.obolibrary.org/obo/hancestro/releases/2022-05-12/hancestro.owl - CaseControlStatusEnum: - description: - Enum to capture whether a condition corresponds to a case or a control - condition. - name: CaseControlStatusEnum - permissible_values: - NEITHER_CASE_OR_CONTROL_STATUS: - meaning: NCIT:C99273 - text: NEITHER_CASE_OR_CONTROL_STATUS - PROBABLE_CASE_STATUS: - meaning: NCIT:C99271 - text: PROBABLE_CASE_STATUS - PROBABLE_CONTROL_STATUS: - meaning: NCIT:C99272 - text: PROBABLE_CONTROL_STATUS - TRUE_CASE_STATUS: - meaning: NCIT:C99269 - text: TRUE_CASE_STATUS - TRUE_CONTROL_STATUS: - meaning: NCIT:C99270 - text: TRUE_CONTROL_STATUS - UNABLE_TO_ASSESS_CASE_OR_CONTROL_STATUS: - meaning: NCIT:C99274 - text: UNABLE_TO_ASSESS_CASE_OR_CONTROL_STATUS - reachable_from: - include_self: false - source_nodes: - - NCIT:C99268 - source_ontology: http://purl.obolibrary.org/obo/ncit/releases/2022-08-19/ncit.owl - DataUseModifierEnum: - description: Permitted values for data use modifier - name: DataUseModifierEnum - permissible_values: - clinical care use: - meaning: DUO:0000043 - text: clinical care use - collaboration required: - meaning: DUO:0000020 - text: collaboration required - ethics approval required: - meaning: DUO:0000021 - text: ethics approval required - genetic studies only: - meaning: DUO:0000016 - text: genetic studies only - geographical restriction: - meaning: DUO:0000022 - text: geographical restriction - institution specific restriction: - meaning: DUO:0000028 - text: institution specific restriction - no general methods research: - meaning: DUO:0000015 - text: no general methods research - non-commercial use only: - meaning: DUO:0000046 - text: non-commercial use only - not for profit organisation use only: - meaning: DUO:0000045 - text: not for profit organisation use only - not for profit, non commercial use only: - meaning: DUO:0000018 - text: not for profit, non commercial use only - population origins or ancestry research prohibited: - meaning: DUO:00000044 - text: population origins or ancestry research prohibited - project specific restriction: - meaning: DUO:0000027 - text: project specific restriction - publication moratorium: - meaning: DUO:0000024 - text: publication moratorium - publication required: - meaning: DUO:0000019 - text: publication required - research specific restrictions: - meaning: DUO:0000012 - text: research specific restrictions - return to database or resource: - meaning: DUO:0000029 - text: return to database or resource - time limit on use: - meaning: DUO:0000025 - text: time limit on use - user specific restriction: - meaning: DUO:0000026 - text: user specific restriction - reachable_from: - include_self: false - source_nodes: - - DUO:0000017 - source_ontology: http://purl.obolibrary.org/obo/duo/releases/2021-02-23/duo.owl - DataUsePermissionEnum: - description: Permitted values for data use permission - name: DataUsePermissionEnum - permissible_values: - disease specific research: - meaning: DUO:0000007 - text: disease specific research - general research use: - meaning: DUO:0000042 - text: general research use - health or medical or biomedical research: - meaning: DUO:0000006 - text: health or medical or biomedical research - no restriction: - meaning: DUO:0000004 - text: no restriction - population origins or ancestry research only: - meaning: DUO:0000011 - text: population origins or ancestry research only - reachable_from: - include_self: false - source_nodes: - - DUO:0000001 - source_ontology: http://purl.obolibrary.org/obo/duo/releases/2021-02-23/duo.owl - DiseaseOrHealthyEnum: - description: - Enum to capture whether a condition corresponds to a disease or a - healthy state. - name: DiseaseOrHealthyEnum - permissible_values: - DISEASE: - description: Disease state. - text: DISEASE - HEALTHY: - description: Healthy state. - text: HEALTHY - NOT_APPLICABLE: - description: The distinction is not applicaple. - text: NOT_APPLICABLE - EndBiasEnum: - description: Permitted values for end bias - name: EndBiasEnum - permissible_values: - 3_PRIME_END: - text: 3_PRIME_END - 5_PRIME_END: - text: 5_PRIME_END - FULL_LENGTH: - text: FULL_LENGTH - FileFormatEnum: - description: Enum to capture file types. - name: FileFormatEnum - permissible_values: - AGP: - text: AGP - BAI: - text: BAI - BAM: - text: BAM - BCF: - text: BCF - BED: - text: BED - CRAI: - text: CRAI - CRAM: - text: CRAM - CSV: - text: CSV - FASTA: - text: FASTA - FASTQ: - text: FASTQ - GFF: - text: GFF - HDF5: - text: HDF5 - INFO: - text: INFO - JSON: - text: JSON - MD: - text: MD - OTHER: - text: OTHER - PED: - text: PED - SAM: - text: SAM - SFF: - text: SFF - SRF: - text: SRF - TAB: - text: TAB - TABIX: - text: TABIX - TSV: - text: TSV - TXT: - text: TXT - VCF: - text: VCF - WIG: - text: WIG - FlowCellTypeEnum: - description: Permitted values for flow cell type - name: FlowCellTypeEnum - permissible_values: - FLONGLE: - text: FLONGLE - GRID_ION: - text: GRID_ION - ILLUMINA_NOVA_SEQ_S2: - text: ILLUMINA_NOVA_SEQ_S2 - ILLUMINA_NOVA_SEQ_S4: - text: ILLUMINA_NOVA_SEQ_S4 - MIN_ION: - text: MIN_ION - OTHER: - text: OTHER - PROMETH_ION: - text: PROMETH_ION - ForwardOrReverseEnum: - description: - Enum to capture whether the reads from paired-end sequencing are - forward (R1) or reverse (R2). - name: ForwardOrReverseEnum - permissible_values: - FORWARD: - description: The reads are forward (R1) reads - text: FORWARD - REVERSE: - description: The reads are reverse (R2) reads - text: REVERSE - GeographicalRegionEnum: - description: Permitted values for geographical region - name: GeographicalRegionEnum - reachable_from: - include_self: false - source_nodes: - - HANCESTRO:0002 - source_ontology: http://purl.obolibrary.org/obo/hancestro/releases/2022-05-12/hancestro.owl - IndexReadEnum: - description: - Permitted Values to indicate the location of a sequence component - in a read or index - name: IndexReadEnum - permissible_values: - INDEX1: - text: INDEX1 - INDEX2: - text: INDEX2 - READ1: - text: READ1 - READ2: - text: READ2 - IndividualSexEnum: - description: - The sex of an Individual as as defined in a specific medical and - clinical context. - name: IndividualSexEnum - permissible_values: - FEMALE_SEX_FOR_CLINICAL_USE: - meaning: GSSO:011317 - text: FEMALE_SEX_FOR_CLINICAL_USE - IMAGING_SEX: - meaning: GSSO:009318 - text: IMAGING_SEX - MALE_SEX_FOR_CLINICAL_USE: - meaning: GSSO:011318 - text: MALE_SEX_FOR_CLINICAL_USE - SPECIFIED_SEX_FOR_CLINICAL_USE: - meaning: GSSO:011319 - text: SPECIFIED_SEX_FOR_CLINICAL_USE - UNKNOWN_SEX_FOR_CLINICAL_USE: - meaning: GSSO:011320 - text: UNKNOWN_SEX_FOR_CLINICAL_USE - reachable_from: - include_self: false - source_nodes: - - GSSO:009428 - source_ontology: http://purl.obolibrary.org/obo/gsso/releases/2.0.5/gsso.owl - InstrumentModelEnum: - description: Permitted values for instrument model - name: InstrumentModelEnum - permissible_values: - DNBSEQ_G400: - text: DNBSEQ_G400 - DNBSEQ_G400_FAST: - text: DNBSEQ_G400_FAST - DNBSEQ_G50: - text: DNBSEQ_G50 - DNBSEQ_T7: - text: DNBSEQ_T7 - ILLUMINA_GENOME_ANALYZER: - text: ILLUMINA_GENOME_ANALYZER - ILLUMINA_GENOME_ANALYZER_II: - text: ILLUMINA_GENOME_ANALYZER_II - ILLUMINA_GENOME_ANALYZER_IIX: - text: ILLUMINA_GENOME_ANALYZER_IIX - ILLUMINA_HI_SCAN: - text: ILLUMINA_HI_SCAN - ILLUMINA_HI_SCAN_SQ: - text: ILLUMINA_HI_SCAN_SQ - ILLUMINA_HI_SEQ_1000: - text: ILLUMINA_HI_SEQ_1000 - ILLUMINA_HI_SEQ_1500: - text: ILLUMINA_HI_SEQ_1500 - ILLUMINA_HI_SEQ_2000: - text: ILLUMINA_HI_SEQ_2000 - ILLUMINA_HI_SEQ_2500: - text: ILLUMINA_HI_SEQ_2500 - ILLUMINA_HI_SEQ_3000: - text: ILLUMINA_HI_SEQ_3000 - ILLUMINA_HI_SEQ_4000: - text: ILLUMINA_HI_SEQ_4000 - ILLUMINA_HI_SEQ_X: - text: ILLUMINA_HI_SEQ_X - ILLUMINA_HI_SEQ_X_FIVE: - text: ILLUMINA_HI_SEQ_X_FIVE - ILLUMINA_HI_SEQ_X_TEN: - text: ILLUMINA_HI_SEQ_X_TEN - ILLUMINA_I_SCAN: - text: ILLUMINA_I_SCAN - ILLUMINA_I_SEQ_100: - text: ILLUMINA_I_SEQ_100 - ILLUMINA_MINI_SEQ: - text: ILLUMINA_MINI_SEQ - ILLUMINA_MI_SEQ: - text: ILLUMINA_MI_SEQ - ILLUMINA_MI_SEQ_DX: - text: ILLUMINA_MI_SEQ_DX - ILLUMINA_MI_SEQ_DX_RESEARCH_MODE: - text: ILLUMINA_MI_SEQ_DX_RESEARCH_MODE - ILLUMINA_NEXT_SEQ_1000: - text: ILLUMINA_NEXT_SEQ_1000 - ILLUMINA_NEXT_SEQ_2000: - text: ILLUMINA_NEXT_SEQ_2000 - ILLUMINA_NEXT_SEQ_500: - text: ILLUMINA_NEXT_SEQ_500 - ILLUMINA_NEXT_SEQ_550: - text: ILLUMINA_NEXT_SEQ_550 - ILLUMINA_NEXT_SEQ_550_DX: - text: ILLUMINA_NEXT_SEQ_550_DX - ILLUMINA_NEXT_SEQ_550_DX_RESEARCH_MODE: - text: ILLUMINA_NEXT_SEQ_550_DX_RESEARCH_MODE - ILLUMINA_NOVA_SEQ_6000: - text: ILLUMINA_NOVA_SEQ_6000 - ONT_GRID_ION: - text: ONT_GRID_ION - ONT_MIN_ION: - text: ONT_MIN_ION - ONT_PROMETH_ION: - text: ONT_PROMETH_ION - OTHER: - text: OTHER - PAC_BIO_ONSO: - text: PAC_BIO_ONSO - PAC_BIO_REVIO: - text: PAC_BIO_REVIO - PAC_BIO_RS: - text: PAC_BIO_RS - PAC_BIO_RS_II: - text: PAC_BIO_RS_II - PAC_BIO_SEQUEL: - text: PAC_BIO_SEQUEL - PAC_BIO_SEQUEL_II: - text: PAC_BIO_SEQUEL_II - PAC_BIO_SEQUEL_IIE: - text: PAC_BIO_SEQUEL_IIE - ULTIMA_UG_100: - text: ULTIMA_UG_100 - IsolationEnum: - description: Describes how biomaterial was isolated. - name: IsolationEnum - reachable_from: - include_self: false - source_nodes: - - SNOMED:118292001 - source_ontology: http://snomed.info/sct/900000000000207008/version/20200131 - KaryotypeEnum: - description: Permitted values for karyotype - name: KaryotypeEnum - permissible_values: - 46_XX: - text: 46_XX - 46_XY: - text: 46_XY - OTHER: - text: OTHER - LibraryPreparationKitRetailNameEnum: - description: Permitted values for library preparation kit retail name - name: LibraryPreparationKitRetailNameEnum - permissible_values: - 10X_GENOMICS_CHROMIUM_SINGLE_CELL_3_V2: - text: 10X_GENOMICS_CHROMIUM_SINGLE_CELL_3_V2 - 10X_GENOMICS_CHROMIUM_SINGLE_CELL_3_V3: - text: 10X_GENOMICS_CHROMIUM_SINGLE_CELL_3_V3 - ACCEL_NGS_2_S_PLUS_DNA_LIBRARY_KIT: - text: ACCEL_NGS_2_S_PLUS_DNA_LIBRARY_KIT - ACCEL_NGS_METHYL_SEQ_DNA: - text: ACCEL_NGS_METHYL_SEQ_DNA - AGILENT_STRAND_SPECIFIC_RNA: - text: AGILENT_STRAND_SPECIFIC_RNA - AGILENT_SURE_SELECT_CUSTOM_ENRICHMENT_KIT: - text: AGILENT_SURE_SELECT_CUSTOM_ENRICHMENT_KIT - AGILENT_SURE_SELECT_V3: - text: AGILENT_SURE_SELECT_V3 - AGILENT_SURE_SELECT_V4: - text: AGILENT_SURE_SELECT_V4 - AGILENT_SURE_SELECT_V4_UT_RS: - text: AGILENT_SURE_SELECT_V4_UT_RS - AGILENT_SURE_SELECT_V5: - text: AGILENT_SURE_SELECT_V5 - AGILENT_SURE_SELECT_V5_UT_RS: - text: AGILENT_SURE_SELECT_V5_UT_RS - AGILENT_SURE_SELECT_V6: - text: AGILENT_SURE_SELECT_V6 - AGILENT_SURE_SELECT_V6_ONE: - text: AGILENT_SURE_SELECT_V6_ONE - AGILENT_SURE_SELECT_V6_UT_RS: - text: AGILENT_SURE_SELECT_V6_UT_RS - AGILENT_SURE_SELECT_V7: - text: AGILENT_SURE_SELECT_V7 - AGILENT_SURE_SELECT_WGS: - text: AGILENT_SURE_SELECT_WGS - AGILENT_SURE_SELECT_XT_HS_HUMAN_ALL_EXON_V7: - text: AGILENT_SURE_SELECT_XT_HS_HUMAN_ALL_EXON_V7 - AGILENT_SURE_SELECT_XT_MOUSE_ALL_EXON: - text: AGILENT_SURE_SELECT_XT_MOUSE_ALL_EXON - AGILENT_XT_HS_SURE_SELECT_CLINICAL_RESEARCH_EXOME_V2: - text: AGILENT_XT_HS_SURE_SELECT_CLINICAL_RESEARCH_EXOME_V2 - AVENIO_CT_DNA_KIT: - text: AVENIO_CT_DNA_KIT - IDT_X_GEN_EXOME_RESEARCH_PANEL: - text: IDT_X_GEN_EXOME_RESEARCH_PANEL - ILLUMINA_DNA_PCR_FREE: - text: ILLUMINA_DNA_PCR_FREE - ILLUMINA_NEXTERA_DNA_FLEX: - text: ILLUMINA_NEXTERA_DNA_FLEX - ILLUMINA_NEXTERA_EXOME_ENRICHMENT_KIT: - text: ILLUMINA_NEXTERA_EXOME_ENRICHMENT_KIT - ILLUMINA_STRANDED_M_RNA_PREP_LIGATION: - text: ILLUMINA_STRANDED_M_RNA_PREP_LIGATION - ILLUMINA_TRUSEQ_PCR_FREE_METHYL: - text: ILLUMINA_TRUSEQ_PCR_FREE_METHYL - ILLUMINA_TRU_SEQ_CH_IP_SAMPLE_PREPARATION_KIT: - text: ILLUMINA_TRU_SEQ_CH_IP_SAMPLE_PREPARATION_KIT - ILLUMINA_TRU_SEQ_CUSTOM_AMPLICON: - text: ILLUMINA_TRU_SEQ_CUSTOM_AMPLICON - ILLUMINA_TRU_SEQ_DNA: - text: ILLUMINA_TRU_SEQ_DNA - ILLUMINA_TRU_SEQ_NANO_DNA: - text: ILLUMINA_TRU_SEQ_NANO_DNA - ILLUMINA_TRU_SEQ_NANO_DNA_HT: - text: ILLUMINA_TRU_SEQ_NANO_DNA_HT - ILLUMINA_TRU_SEQ_NANO_DNA_LT: - text: ILLUMINA_TRU_SEQ_NANO_DNA_LT - ILLUMINA_TRU_SEQ_NANO_FFPE_DNA: - text: ILLUMINA_TRU_SEQ_NANO_FFPE_DNA - ILLUMINA_TRU_SEQ_PCR_FREE: - text: ILLUMINA_TRU_SEQ_PCR_FREE - ILLUMINA_TRU_SEQ_PCR_FREE_DNA: - text: ILLUMINA_TRU_SEQ_PCR_FREE_DNA - ILLUMINA_TRU_SEQ_RNA: - text: ILLUMINA_TRU_SEQ_RNA - ILLUMINA_TRU_SEQ_SMALL_RNA_KIT: - text: ILLUMINA_TRU_SEQ_SMALL_RNA_KIT - ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_KIT: - text: ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_KIT - ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_LIBRARY_PREP_GLOBIN: - text: ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_LIBRARY_PREP_GLOBIN - ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_RIBO_MINUS_GOLD: - text: ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_RIBO_MINUS_GOLD - ILLUMINA_VAHTS_TOTAL_RNA: - text: ILLUMINA_VAHTS_TOTAL_RNA - INFORM_ONCO_PANEL_HG19: - text: INFORM_ONCO_PANEL_HG19 - ION_AMPLI_SEQ_EXOME_KIT: - text: ION_AMPLI_SEQ_EXOME_KIT - KAPA_HIFI_HOT_START_READYMIX: - text: KAPA_HIFI_HOT_START_READYMIX - KAPA_HYPER_PLUS_KIT: - text: KAPA_HYPER_PLUS_KIT - KAPA_HYPER_PREP_KIT: - text: KAPA_HYPER_PREP_KIT - KAPA_M_RNA_HYPER_PREP_KIT: - text: KAPA_M_RNA_HYPER_PREP_KIT - MAGNETIC_METHYLATED_DNA_IMMUNOPRECIPITATION_DIAGNODE: - text: MAGNETIC_METHYLATED_DNA_IMMUNOPRECIPITATION_DIAGNODE - NEBNEXT_ULTRA_DIRECTIONAL_RNA: - text: NEBNEXT_ULTRA_DIRECTIONAL_RNA - NEB_NEXT_CH_IP_SEQ_LIBRARY_PREP_KIT_FOR_ILLUMINA: - text: NEB_NEXT_CH_IP_SEQ_LIBRARY_PREP_KIT_FOR_ILLUMINA - NEB_NEXT_GLOBIN_R_RNA_DEPLETION_KIT_HUMAN_MOUSE_RAT_WITH_BEADS: - text: NEB_NEXT_GLOBIN_R_RNA_DEPLETION_KIT_HUMAN_MOUSE_RAT_WITH_BEADS - NEB_NEXT_POLY_A_M_RNA_MAGNETIC_ISOLATION_MODULE: - text: NEB_NEXT_POLY_A_M_RNA_MAGNETIC_ISOLATION_MODULE - NEB_NEXT_RNA_ULTRA_II_STRANDED: - text: NEB_NEXT_RNA_ULTRA_II_STRANDED - NEB_NEXT_ULTRA_DNA: - text: NEB_NEXT_ULTRA_DNA - NEB_NEXT_ULTRA_DNA_LIBRARY_PREP_KIT_FOR_ILLUMINA: - text: NEB_NEXT_ULTRA_DNA_LIBRARY_PREP_KIT_FOR_ILLUMINA - NEB_NEXT_ULTRA_II_DIRECTIONAL_RNA: - text: NEB_NEXT_ULTRA_II_DIRECTIONAL_RNA - NEB_NEXT_ULTRA_II_DNA_LIBRARY_PREP_KIT_FOR_ILLUMINA: - text: NEB_NEXT_ULTRA_II_DNA_LIBRARY_PREP_KIT_FOR_ILLUMINA - NEXTERA_XT_DNA: - text: NEXTERA_XT_DNA - OLIGO_D_T: - text: OLIGO_D_T - PICO_METHYL_SEQ: - text: PICO_METHYL_SEQ - SMART_SEQ_V4_ULTRA_LOW_INPUT_RNA_KIT: - text: SMART_SEQ_V4_ULTRA_LOW_INPUT_RNA_KIT - SMAR_TER_STRANDED_TOTAL_RNA_SEQ_KIT: - text: SMAR_TER_STRANDED_TOTAL_RNA_SEQ_KIT - SMAR_TER_ULTRA_LOW_INPUT_RNA_AND_NEB_NEXT_CH_IP_SEQ: - text: SMAR_TER_ULTRA_LOW_INPUT_RNA_AND_NEB_NEXT_CH_IP_SEQ - SMAR_TER_ULTRA_LOW_INPUT_RNA_V4_AND_NEB_NEXT_CH_IP_SEQ: - text: SMAR_TER_ULTRA_LOW_INPUT_RNA_V4_AND_NEB_NEXT_CH_IP_SEQ - SMAR_TSEQ2_TAG: - text: SMAR_TSEQ2_TAG - SUPER_SCRIPT_II_RT_BULK: - text: SUPER_SCRIPT_II_RT_BULK - SURE_CELL_ATAC_SEQ_LIBRARY_PREP_KIT: - text: SURE_CELL_ATAC_SEQ_LIBRARY_PREP_KIT - SURE_SELECT_EUROFINS_ENRICHMENT_CUSTOM_01: - text: SURE_SELECT_EUROFINS_ENRICHMENT_CUSTOM_01 - TAKARA_CLONTECH_SMAR_TER_STRANDED_TOTAL_RNA: - text: TAKARA_CLONTECH_SMAR_TER_STRANDED_TOTAL_RNA - TAKARA_SMAR_TER_PREP_X_DNA_LIBRARY_KIT_ACTIVE_MOTIF_CUSTOM_INDICES_01: - text: TAKARA_SMAR_TER_PREP_X_DNA_LIBRARY_KIT_ACTIVE_MOTIF_CUSTOM_INDICES_01 - TEMPLATE_SWITCHING_RT_ENZYME_MIX_BULK: - text: TEMPLATE_SWITCHING_RT_ENZYME_MIX_BULK - TWIST_HUMAN_CORE_EXOME_PLUS_KIT: - text: TWIST_HUMAN_CORE_EXOME_PLUS_KIT - ULTRALOW_METHYL_SEQ_WITH_TRUE_METHYL_OX_BS_MODULE: - text: ULTRALOW_METHYL_SEQ_WITH_TRUE_METHYL_OX_BS_MODULE - LibraryPreparationLibraryLayoutEnum: - description: Single-end vs paired-end library - name: LibraryPreparationLibraryLayoutEnum - permissible_values: - PE: - text: PE - SE: - text: SE - LibraryPreparationLibrarySelectionEnum: - description: Permitted vocabulary for library selections - name: LibraryPreparationLibrarySelectionEnum - permissible_values: - 5_METHYLCYTIDINE_ANTIBODY_METHOD: - text: 5_METHYLCYTIDINE_ANTIBODY_METHOD - CAGE_METHOD: - text: CAGE_METHOD - CF_H_METHOD: - text: CF_H_METHOD - CF_M_METHOD: - text: CF_M_METHOD - CF_S_METHOD: - text: CF_S_METHOD - CF_T_METHOD: - text: CF_T_METHOD - CH_IP_SEQ_METHOD: - text: CH_IP_SEQ_METHOD - C_DNA_METHOD: - text: C_DNA_METHOD - D_NASE_METHOD: - text: D_NASE_METHOD - HMPR_METHOD: - text: HMPR_METHOD - HYBRID_SELECTION_METHOD: - text: HYBRID_SELECTION_METHOD - INVERSE_R_RNA: - text: INVERSE_R_RNA - MBD2_PROTEIN_METHYL_CP_G_BINDING_DOMAIN_METHOD: - text: MBD2_PROTEIN_METHYL_CP_G_BINDING_DOMAIN_METHOD - MDA: - text: MDA - MF_METHOD: - text: MF_METHOD - MSLL_METHOD: - text: MSLL_METHOD - M_NASE_METHOD: - text: M_NASE_METHOD - OLIGO_D_T: - text: OLIGO_D_T - OTHER: - text: OTHER - PADLOCK_PROBES_CAPTURE_METHOD: - text: PADLOCK_PROBES_CAPTURE_METHOD - PCR_METHOD: - text: PCR_METHOD - POLY_A: - text: POLY_A - RACE_METHOD: - text: RACE_METHOD - RANDOM_METHOD: - text: RANDOM_METHOD - RANDOM_PCR_METHOD: - text: RANDOM_PCR_METHOD - REDUCED_REPRESENTATION_METHOD: - text: REDUCED_REPRESENTATION_METHOD - REPEAT_FRACTIONATION: - text: REPEAT_FRACTIONATION - RESTRICTION_DIGEST_METHOD: - text: RESTRICTION_DIGEST_METHOD - RT_PCR_METHOD: - text: RT_PCR_METHOD - SIZE_FRACTIONATION_METHOD: - text: SIZE_FRACTIONATION_METHOD - UNSPECIFIED: - text: UNSPECIFIED - LibraryPreparationLibraryTypeEnum: - description: The type of the library - name: LibraryPreparationLibraryTypeEnum - permissible_values: - ATAC: - text: ATAC - CHROMOSOME_CONFORMATION_CAPTURE: - text: CHROMOSOME_CONFORMATION_CAPTURE - METHYLATION: - text: METHYLATION - MI_RNA: - text: MI_RNA - M_RNA: - text: M_RNA - NC_RNA: - text: NC_RNA - TOTAL_RNA: - text: TOTAL_RNA - WCS: - text: WCS - WGS: - text: WGS - WXS: - text: WXS - LibraryPreparationRNASeqStrandednessEnum: - description: Permitted values for library preparation RNASeq strandedness - name: LibraryPreparationRNASeqStrandednessEnum - permissible_values: - ANTISENSE: - text: ANTISENSE - BOTH: - text: BOTH - SENSE: - text: SENSE - MutantOrWildtypeEnum: - description: - Enum to capture whether a condition corresponds to a mutant or a - wildtype. - name: MutantOrWildtypeEnum - permissible_values: - MUTANT: - description: Mutant state. - text: MUTANT - NOT_APPLICABLE: - description: The distinction is not applicaple. - text: NOT_APPLICABLE - WILDTYPE: - description: Wildtype state. - text: WILDTYPE - PhenotypicFeaturesEnum: - description: An enum describing permissible phenotype descriptors - include: - - code_set: null - reachable_from: - include_self: false - source_ontology: http://www.ebi.ac.uk/efo/releases/v3.54.0/efo.owl - - code_set: null - reachable_from: - include_self: false - source_ontology: https://www.orphadata.com/data/ontologies/ordo/last_version/ORDO_en_4.2.owl - - code_set: null - reachable_from: - include_self: false - source_nodes: - - SNOMED:404684003 - source_ontology: http://snomed.info/sct/900000000000207008/version/20200131 - - code_set: null - reachable_from: - include_self: false - source_ontology: http://purl.obolibrary.org/obo/mondo/releases/2022-12-01/mondo.owl - - code_set: null - reachable_from: - include_self: false - source_ontology: http://purl.obolibrary.org/obo/hp/releases/2023-04-05/hp-international.owl - name: PhenotypicFeaturesEnum - PrimerEnum: - description: Permitted values for primer - name: PrimerEnum - permissible_values: - GENE_SPECIFIC: - text: GENE_SPECIFIC - OLIGO_D_T: - text: OLIGO_D_T - OTHER: - text: OTHER - RANDOM: - text: RANDOM - SampleBarcodeReadEnum: - description: Permitted values for sample barcode read - name: SampleBarcodeReadEnum - permissible_values: - INDEX1: - text: INDEX1 - INDEX1_AND_INDEX2: - text: INDEX1_AND_INDEX2 - OTHER: - text: OTHER - SampleTypeEnum: - description: The type of a sample - name: SampleTypeEnum - permissible_values: - CF_DNA: - text: CF_DNA - DEPLETED_RNA: - text: DEPLETED_RNA - DS_DNA_CH_IP: - text: DS_DNA_CH_IP - FFPE_DNA: - text: FFPE_DNA - FFPE_TOTAL_RNA: - text: FFPE_TOTAL_RNA - GENOMIC_DNA: - text: GENOMIC_DNA - PCR_PRODUCTS: - text: PCR_PRODUCTS - POLY_A_RNA: - text: POLY_A_RNA - SINGLE_CELL_DNA: - text: SINGLE_CELL_DNA - SINGLE_CELL_RNA: - text: SINGLE_CELL_RNA - SMALL_RNA: - text: SMALL_RNA - TOTAL_RNA: - text: TOTAL_RNA - StudyTypeEnum: - description: Enum to capture the type of a study. - name: StudyTypeEnum - permissible_values: - CANCER_GENOMICS: - text: CANCER_GENOMICS - EPIGENETICS: - text: EPIGENETICS - EXOME_SEQUENCING: - text: EXOME_SEQUENCING - FORENSIC_GENETICS: - text: FORENSIC_GENETICS - GENE_REGULATION_STUDY: - text: GENE_REGULATION_STUDY - GWAS: - text: GWAS - METAGENOMICS: - text: METAGENOMICS - OTHER: - text: OTHER - PALEO_GENOMICS: - text: PALEO_GENOMICS - POOLED_CLONE_SEQUENCING: - text: POOLED_CLONE_SEQUENCING - POPULATION_GENOMICS: - text: POPULATION_GENOMICS - RESEQUENCING: - text: RESEQUENCING - RNASEQ: - text: RNASEQ - SYNTHETIC_GENOMICS: - text: SYNTHETIC_GENOMICS - TRANSCRIPTOME_ANALYSIS: - text: TRANSCRIPTOME_ANALYSIS - WHOLE_GENOME_SEQUENCING: - text: WHOLE_GENOME_SEQUENCING - TissueEnum: - description: A tissue as described in the BRENDA ontology. - name: TissueEnum - reachable_from: - source_ontology: http://purl.obolibrary.org/obo/bto/releases/2021-10-26/bto.owl - VitalStatusEnum: - description: Enum to capture the vital status of an individual. - name: VitalStatusEnum - permissible_values: - ALIVE: - description: Showing characteristics of life; displaying signs of life. - text: ALIVE - DECEASED: - description: The cessation of life. - text: DECEASED - UNKNOWN: - description: Vital status is unknown. - text: UNKNOWN -id: https://w3id.org/GHGA-Submission-Metadata-Schema -name: GHGA-Submission-Metadata-Schema -prefixes: - COB: - prefix_prefix: COB - prefix_reference: http://purl.obolibrary.org/obo/COB_ - DUO: - prefix_prefix: DUO - prefix_reference: http://purl.obolibrary.org/obo/duo/releases/2021-02-23/duo.owl - EFO: - prefix_prefix: EFO - prefix_reference: http://www.ebi.ac.uk/efo/EFO_ - GHGA: - prefix_prefix: GHGA - prefix_reference: https://w3id.org/GHGA/ - GSSO: - prefix_prefix: GSSO - prefix_reference: http://purl.obolibrary.org/obo/gsso/releases/2.0.5/gsso.owl - HANCESTRO: - prefix_prefix: HANCESTRO - prefix_reference: http://purl.obolibrary.org/obo/HANCESTRO_ - SIO: - prefix_prefix: SIO - prefix_reference: http://semanticscience.org/resource/SIO_ - biolink: - prefix_prefix: biolink - prefix_reference: https://w3id.org/biolink/vocab/ - linkml: - prefix_prefix: linkml - prefix_reference: https://w3id.org/linkml/ - shex: - prefix_prefix: shex - prefix_reference: http://www.w3.org/ns/shex# - xsd: - prefix_prefix: xsd - prefix_reference: http://www.w3.org/2001/XMLSchema# -slots: - abstract: - description: - The study abstract that describes the goals. Can also hold abstract - from a publication related to this study - name: abstract - accession: - description: The accession for an entity. - name: accession - affiliations: - description: The Institution(s) associated with an entity. - multivalued: true - name: affiliations - age_at_sampling: - description: Age of an individual. - name: age_at_sampling - range: AgeRangeEnum - alias: - description: The alias for an entity at the time of submission. - name: alias - analyses: - description: The analyses associated with an entity. - multivalued: true - name: analyses - range: Analysis - analysis: - description: The Analysis associated with an entity - name: analysis - range: Analysis - analysis_process: - description: The AnalysisProcess associated with an entity. - name: analysis_process - range: AnalysisProcess - analysis_process_output_files: - description: The AnalysisProcessOutputFiles associated with an entity. - multivalued: true - name: analysis_process_output_files - range: AnalysisProcessOutputFile - analysis_processes: - description: The AnalysisProcess associated with an entity. - multivalued: true - name: analysis_processes - range: AnalysisProcess - ancestries: - description: A person's descent or lineage, from a person or from a population. - in_subset: - - ontology - multivalued: true - name: ancestries - attributes: - description: Key/value pairs corresponding to an entity. - multivalued: true - name: attributes - range: Attribute - author: - description: The individual who is responsible for the content of a document version. - name: author - biospecimen: - description: The biospecimen associated with an entity. - name: biospecimen - range: Biospecimen - biospecimens: - description: The biospecimens associated with an entity. - multivalued: true - name: biospecimens - range: Biospecimen - case_control_status: - description: Whether a condition corresponds to a treatment or a control. - name: case_control_status - range: CaseControlStatusEnum - cell_barcode_offset: - description: The offset in sequence of the cell identifying barcode. (Eg. '0'). - name: cell_barcode_offset - cell_barcode_read: - description: "The type of read that contains the cell barcode (eg: index1/index2/read1/read2)." - name: cell_barcode_read - range: IndexReadEnum - cell_barcode_size: - description: The size of the cell identifying barcode (E.g. '16'). - name: cell_barcode_size - checksum: - description: - A computed value which depends on the contents of a block of data - and which is transmitted or stored along with the data in order to detect corruption - of the data. The receiving system recomputes the checksum based upon the received - data and compares this value with the one sent with the data. If the two values - are the same, the receiver has some confidence that the data was received correctly. - exact_mappings: - - NCIT:C43522 - name: checksum - checksum_type: - description: The type of algorithm used to generate the checksum of a file. - name: checksum_type - child: - description: The child of two individuals. - name: child - range: Individual - condition: - description: The condition associated with an entity. - name: condition - range: Condition - conditions: - description: The Conditions associated with an entity. - multivalued: true - name: conditions - range: Condition - data_access_committee: - description: Data Access Committee associated with an entity. - name: data_access_committee - range: DataAccessCommittee - data_access_committees: - description: Data Access Committees associated with an entity. - multivalued: true - name: data_access_committees - range: DataAccessCommittee - data_access_policies: - description: Data Access Policies associated with an entity. - multivalued: true - name: data_access_policies - range: DataAccessPolicy - data_access_policy: - description: Data Access Policy associated with an entity. - name: data_access_policy - range: DataAccessPolicy - data_use_modifiers: - description: - Modifier for Data use permission associated with an entity. Should - be descendants of 'DUO:0000017 data use modifier' - multivalued: true - name: data_use_modifiers - range: DataUseModifierEnum - data_use_permission: - description: - Data use permission associated with an entity. Typically one or more - terms from DUO. Should be descendants of 'DUO:0000001 data use permission'. - name: data_use_permission - range: DataUsePermissionEnum - dataset: - description: The Dataset associated with an entity. - name: dataset - range: Dataset - datasets: - description: The Datasets associated with an entity. - multivalued: true - name: datasets - range: Dataset - description: - description: Description of an entity. - exact_mappings: - - SIO:000185 - name: description - disease_or_healthy: - description: Whether a condition corresponds to a disease or a healthy state. - name: disease_or_healthy - range: DiseaseOrHealthyEnum - doi: - description: DOI identifier of a publication. - name: doi - email: - description: Email of a person. - name: email - end_bias: - description: - The end of the cDNA molecule that is preferentially sequenced, e.g. - 3/5 prime tag or end, or the full-length transcript. - exact_mappings: - - EFO:0010187 - name: end_bias - range: EndBiasEnum - father: - description: The father of an individual. - name: father - range: Individual - files: - any_of: - - aliases: [] - range: StudyFile - - aliases: [] - range: SampleFile - description: All files associated with the dataset. - inlined: false - multivalued: true - name: files - required: true - flow_cell_id: - description: - "Flow Cell ID (eg: Experiment ID_Cell 1_Lane_1). The barcode assigned - to a flow cell used in nucleotide sequencing." - name: flow_cell_id - flow_cell_type: - description: - Type of flow cell used (e.g. S4, S2 for NovaSeq; PromethION, Flongle - for Nanopore). Aparatus in the fluidic subsystem where the sheath and sample - meet. Can be one of several types; jet-in-air, quartz cuvette, or a hybrid of - the two. The sample flows through the center of a fluid column of sheath fluid - in the flow cell. - name: flow_cell_type - range: FlowCellTypeEnum - format: - description: "The format of the file: BAM, SAM, CRAM, BAI, etc." - name: format - range: FileFormatEnum - forward_or_reverse: - description: - Denotes whether a submitted FASTQ file contains forward (R1) or reverse - (R2) reads for paired-end sequencing. The number that identifies each read direction - in a paired-end nucleotide sequencing reaction. - name: forward_or_reverse - range: ForwardOrReverseEnum - geographical_region: - description: - The geographical region where the Individual is located. Any demarcated - area of the Earth; may be determined by both natural and human boundaries. - in_subset: - - ontology - name: geographical_region - index_sequence: - description: - A unique nucleotide sequence that is added to a sample during library_preparation - to serve as a unique identifier for the sample. - exact_mappings: - - NCIT:C165443 - name: index_sequence - individual: - description: The subject/individual associated with an entity. - name: individual - range: Individual - individuals: - description: The subjects/individuals associated with an entity. - multivalued: true - name: individuals - range: Individual - institute: - description: The institute a person is affiliated with. - name: institute - instrument_model: - description: The name and model of the technology platform used to perform sequencing. - name: instrument_model - range: InstrumentModelEnum - isolation: - description: - Method or device employed for collecting/isolating a biospecimen - or a sample. - in_subset: - - ontology - name: isolation - journal: - description: Name of the journal. - name: journal - karyotype: - description: The karyotype of an individual if defined. - name: karyotype - range: KaryotypeEnum - key: - description: The key of an attribute. - name: key - key_type: - description: The semantic type for the key of an attribute. - name: key_type - lane_number: - description: - The numerical identifier for the lane or machine unit where a sample - was located during nucleotide sequencing. - name: lane_number - library_layout: - description: - Describe whether the library was sequenced in single-end (forward - or reverse) or paired-end mode - exact_mappings: - - NCIT:C175894 - name: library_layout - range: LibraryPreparationLibraryLayoutEnum - library_name: - description: - A short name identifying the library to potential users. The same - name may refer to multiple versions of the same continually updated library. - name: library_name - library_preparation: - description: - The general method for sequencing library_preparation (e.g. KAPA - PCR-free). - name: library_preparation - library_preparation_kit_manufacturer: - description: Manufacturer of library_preparation kit - name: library_preparation_kit_manufacturer - library_preparation_kit_retail_name: - description: - A unique identifier for the kit used to construct a genomic library. - This may include the vendor name, kit name and kit version (e.g. Agilent sure - select Human Exome V8, Twist RefSeq Exome, etc.) - name: library_preparation_kit_retail_name - range: LibraryPreparationKitRetailNameEnum - library_preparation_protocol: - description: The library_preparation Protocol associated with an entity. - name: library_preparation_protocol - range: LibraryPreparationProtocol - library_preparation_protocols: - description: The library_preparation Protocol associated with an entity. - multivalued: true - name: library_preparation_protocols - range: LibraryPreparationProtocol - library_selection: - description: - Whether any method was used to select for or against, enrich, or - screen the material being sequenced. library_selection method (e.g. random, - PCA, cDNA, etc ) - name: library_selection - range: LibraryPreparationLibrarySelectionEnum - library_type: - description: - "Describe the level of omics analysis (eg: Metagenome, transcriptome, - etc)" - name: library_type - range: LibraryPreparationLibraryTypeEnum - mother: - description: The mother of an individual. - name: mother - range: Individual - mutant_or_wildtype: - description: Whether a condition corresponds to a mutant or a wildtype. - name: mutant_or_wildtype - range: MutantOrWildtypeEnum - name: - description: The name for an entity. - name: name - phenotypic_features: - description: Phenotypic feature concepts that the entity is associated with. - in_subset: - - ontology - multivalued: true - name: phenotypic_features - policy_text: - description: The complete text for the Data Access Policy. - name: policy_text - policy_url: - description: Alternative to pasting the Data Access Policy text. - name: policy_url - primer: - description: - The type of primer used for reverse transcription, e.g. 'oligo-dT' - or 'random' primer. This allows users to identify content of the cDNA library - input e.g. enriched for mRNA. - exact_mappings: - - EFO:0010192 - name: primer - range: PrimerEnum - publications: - description: The Publication associated with an entity. - multivalued: true - name: publications - range: Publication - reference_chromosome: - description: The reference chromosome used for this Analysis. - name: reference_chromosome - reference_genome: - description: - "A published genetic sequence that is used as a reference sequence - against which other sequences are compared. Reference genome(s) or annotation(s) - used for prior analyses (eg: GRCh38.p13)." - name: reference_genome - rnaseq_strandedness: - description: - The strandedness of the library, whether reads come from both strands - of the cDNA or only from the first (antisense) or the second (sense) strand. - name: rnaseq_strandedness - range: LibraryPreparationRNASeqStrandednessEnum - sample: - description: The sample associated with an entity. - name: sample - range: Sample - sample_barcode_read: - description: "The type of read that contains the sample barcode (eg: index1/index2/read1/read2)." - name: sample_barcode_read - range: SampleBarcodeReadEnum - sample_files: - description: The SampleFiles associated with an entity. - multivalued: true - name: sample_files - range: SampleFile - sample_input_files: - description: The SampleFile associated used as an input for an entity. - multivalued: true - name: sample_input_files - range: SampleFile - samples: - description: The samples associated with an entity. - multivalued: true - name: samples - range: Sample - sequencing_center: - description: Center where sample was sequenced. - name: sequencing_center - sequencing_experiment: - description: The sequencing experiment associated with an entity. - name: sequencing_experiment - range: SequencingExperiment - sequencing_experiments: - description: The sequencing experiments associated with an entity. - multivalued: true - name: sequencing_experiments - range: SequencingExperiment - sequencing_lane_id: - description: The identifier of a sequencing lane. - name: sequencing_lane_id - sequencing_machine_id: - description: The identifier of a sequencing machine. - name: sequencing_machine_id - sequencing_process: - description: The SequencingProcess associated with an entity. - name: sequencing_process - range: SequencingProcess - sequencing_process_files: - description: The SequencingProcessFiles associated with an entity. - multivalued: true - name: sequencing_process_files - range: SequencingProcessFile - sequencing_process_input_files: - description: The SequencingProcessFile associated used as an input for an entity. - multivalued: true - name: sequencing_process_input_files - range: SequencingProcessFile - sequencing_processes: - description: The SequencingProcesses associated with an entity. - multivalued: true - name: sequencing_processes - range: SequencingProcess - sequencing_protocol: - description: The sequencing protocol associated with an entity. - name: sequencing_protocol - range: SequencingProtocol - sequencing_protocols: - description: The sequencing protocol associated with an entity. - multivalued: true - name: sequencing_protocols - range: SequencingProtocol - sequencing_read_length: - description: - "Length of sequencing reads (eg: Long or short or actual number of - the read length etc). The number of nucleotides successfully ordered from each - side of a nucleic acid fragment obtained after the completion of a sequencing - process" - name: sequencing_read_length - sequencing_run_id: - description: The identifier of a sequencing run. - name: sequencing_run_id - sex: - description: - The assemblage of physical properties or qualities by which male - is distinguished from female; the physical difference between male and female; - the distinguishing peculiarity of male or female. - name: sex - range: IndividualSexEnum - size: - description: The size of a file in bytes. - name: size - range: integer - storage: - description: - Methods by which a biospecimen or a sample is stored (e.g. frozen - in liquid nitrogen). - name: storage - studies: - description: The study associated with an entity. - multivalued: true - name: studies - range: Study - study: - description: The study associated with an entity. - name: study - range: Study - study_files: - description: The StudyFiles associated with an entity. - multivalued: true - name: study_files - range: StudyFile - study_input_files: - description: The StudyFile associated used as an input for an entity. - multivalued: true - name: study_input_files - range: StudyFile - target_coverage: - description: - Mean coverage for whole genome sequencing, or mean target coverage - for whole exome and targeted sequencing. The number of times a particular locus - (site, nucleotide, amplicon, region) was sequenced. - name: target_coverage - target_regions: - description: - Subset of genes or specific regions of the genome, which are most - likely to be involved in the phenotype under study. - multivalued: true - name: target_regions - tissue: - in_subset: - - ontology - name: tissue - title: - description: The title that describes an entity. - name: title - trios: - description: The Trios associated with an entity. - multivalued: true - name: trios - range: Trio - type: - description: "The type of an entity. Note: Not to be confused with rdf:type" - name: type - types: - description: "The types of an entity. Note: Not to be confused with rdf:type" - multivalued: true - name: types - umi_barcode_offset: - description: The offset in sequence of the UMI identifying barcode. (E.g. '16'). - name: umi_barcode_offset - umi_barcode_read: - description: "The type of read that contains the UMI barcode (Eg: index1/index2/read1/read2)." - name: umi_barcode_read - range: IndexReadEnum - umi_barcode_size: - description: The size of the UMI identifying barcode (Eg. '10'). - name: umi_barcode_size - value: - description: The value of an attribute - name: value - value_type: - description: The semantic type for the value of an attribute. - name: value_type - vital_status: - deprecated: - redundant, solved by use of vital_status_at_sampling at the Biospecimen - level - description: - The state or condition of being living or deceased; also includes - the case where the vital status is unknown. - name: vital_status - range: VitalStatusEnum - vital_status_at_sampling: - description: - Vital Status of an Individual at the point of sampling (eg:'Alive', - 'Deceased'). - name: vital_status_at_sampling - range: VitalStatusEnum - xref: - description: Database cross references for an entity. - multivalued: true - name: xref - year: - description: Year in which the paper was published. - name: year - range: integer -subsets: - ontology: - description: - This slot is part of an ontology which is currently not otherwise - encoded in the schema. - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: ontology -types: - boolean: - base: Bool - description: A binary (true or false) value - exact_mappings: - - schema:Boolean - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: boolean - repr: bool - uri: xsd:boolean - curie: - base: Curie - comments: - - in RDF serializations this MUST be expanded to a URI - - in non-RDF serializations MAY be serialized as the compact representation - conforms_to: https://www.w3.org/TR/curie/ - description: a compact URI - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: curie - repr: str - uri: xsd:string - date: - base: XSDDate - description: a date (year, month and day) in an idealized calendar - exact_mappings: - - schema:Date - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: date - notes: - - URI is dateTime because OWL reasoners don't work with straight date or time - repr: str - uri: xsd:date - date_or_datetime: - base: str - description: Either a date or a datetime - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: date_or_datetime - repr: str - uri: linkml:DateOrDatetime - datetime: - base: XSDDateTime - description: The combination of a date and time - exact_mappings: - - schema:DateTime - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: datetime - repr: str - uri: xsd:dateTime - decimal: - base: Decimal - broad_mappings: - - schema:Number - description: - A real number with arbitrary precision that conforms to the xsd:decimal - specification - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: decimal - uri: xsd:decimal - double: - base: float - close_mappings: - - schema:Float - description: A real number that conforms to the xsd:double specification - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: double - uri: xsd:double - float: - base: float - description: A real number that conforms to the xsd:float specification - exact_mappings: - - schema:Float - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: float - uri: xsd:float - integer: - base: int - description: An integer - exact_mappings: - - schema:Integer - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: integer - uri: xsd:integer - ncname: - base: NCName - description: Prefix part of CURIE - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: ncname - repr: str - uri: xsd:string - nodeidentifier: - base: NodeIdentifier - description: A URI, CURIE or BNODE that represents a node in a model. - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: nodeidentifier - repr: str - uri: shex:nonLiteral - objectidentifier: - base: ElementIdentifier - comments: - - Used for inheritence and type checking - description: A URI or CURIE that represents an object in the model. - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: objectidentifier - repr: str - uri: shex:iri - string: - base: str - description: A character string - exact_mappings: - - schema:Text - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: string - uri: xsd:string - time: - base: XSDTime - description: - A time object represents a (local) time of day, independent of any - particular day - exact_mappings: - - schema:Time - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: time - notes: - - URI is dateTime because OWL reasoners do not work with straight date or time - repr: str - uri: xsd:dateTime - uri: - base: URI - close_mappings: - - schema:URL - comments: - - in RDF serializations a slot with range of uri is treated as a literal or type - xsd:anyURI unless it is an identifier or a reference to an identifier, in which - case it is translated directly to a node - conforms_to: https://www.ietf.org/rfc/rfc3987.txt - description: a complete URI - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: uri - repr: str - uri: xsd:anyURI - uriorcurie: - base: URIorCURIE - description: a URI or a CURIE - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: uriorcurie - repr: str - uri: xsd:anyURI -version: 1.1.0 diff --git a/tests/fixtures/example_models/ghga_1.1.0_submission.yaml b/tests/fixtures/example_models/ghga_1.1.0_submission.yaml deleted file mode 100644 index fa6d614a..00000000 --- a/tests/fixtures/example_models/ghga_1.1.0_submission.yaml +++ /dev/null @@ -1,2052 +0,0 @@ -id: https://w3id.org/GHGA-Submission-Metadata-Schema -name: GHGA-Submission-Metadata-Schema -description: >- - The submission centric metadata schema for the German Human Genome-Phenome Archive (GHGA). -version: 1.1.0 -imports: - - linkml:types - -prefixes: - COB: http://purl.obolibrary.org/obo/COB_ - EFO: http://www.ebi.ac.uk/efo/EFO_ - GHGA: https://w3id.org/GHGA/ - HANCESTRO: http://purl.obolibrary.org/obo/HANCESTRO_ - SIO: http://semanticscience.org/resource/SIO_ - biolink: https://w3id.org/biolink/vocab/ - linkml: https://w3id.org/linkml/ - GSSO: http://purl.obolibrary.org/obo/gsso/releases/2.0.5/gsso.owl - DUO: http://purl.obolibrary.org/obo/duo/releases/2021-02-23/duo.owl - NCIT: http://purl.obolibrary.org/obo/ncit/releases/2022-08-19/ncit.owl - -default_prefix: GHGA -default_range: string - -default_curi_maps: - - obo_context - - idot_context - - semweb_context - -classes: - Attribute: - description: >- - A key/value pair that further characterizes an entity. - slots: - - key - - key_type - - value - - value_type - exact_mappings: - - SIO:000614 - slot_usage: - key: - description: >- - The key for an attribute. - required: true - key_type: - description: >- - A semantic type that characterizes the attribute key. Usually this is a - term from an ontology. - For example, 'MAXO:0000616' indicates that the attribute is a measurement - of oxygen saturation in the blood. - required: false - value: - description: >- - The value for an attribute. Usually this is a numerical value (without the units). - required: true - value_type: - description: >- - The value_type that characterizes the attribute value. Usually this is a - term from an ontology that describes how to interpret the value. - For example, 'SIO:001413' indicates that the value is to be interpreted as - a percentage. - required: false - - AliasMixin: - mixin: true - description: Mixin for entities that can be assigned an alias at the time of metadata submission. - slots: - - alias - slot_usage: - alias: - required: true - - IdentifiedByAliasMixin: - mixin: true - abstract: true - is_a: AliasMixin - slot_usage: - alias: - identifier: true - - AttributeMixin: - mixin: true - description: Mixin for entities that can have one or more attributes. - slots: - - attributes - slot_usage: - attributes: - required: false - inlined: true - inlined_as_list: true - - Study: - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - description: >- - Studies are experimental investigations of a particular phenomenon. It involves a - detailed examination and analysis of a subject to learn more about the phenomenon - being studied. - slots: - - title - - description - - type - - affiliations - slot_usage: - title: - description: >- - A comprehensive title for the study. - required: true - description: - description: >- - A detailed description (abstract) that describes the goals of this Study. - required: true - type: - description: >- - The type of Study. For example, 'Cancer Genomics', 'Epigenetics', 'Exome Sequencing'. - range: StudyTypeEnum - required: true - affiliations: - required: true - attributes: - description: >- - Custom key/value pairs that further characterizes the Study. - (e.g.: approaches - single-cell,_bulk_etc) - - SequencingExperiment: - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - description: >- - An sequencing experiment is an investigation that consists of a coordinated set of - actions and observations designed to generate data with the goal of verifying, - falsifying, or establishing the validity of a hypothesis. - exact_mappings: - - SIO:000994 - slots: - - title - - description - - type - - sequencing_protocol - - library_preparation_protocol - slot_usage: - title: - description: >- - Name for the experiment (eg: GHGAE_PBMC_RNAseq). - description: - description: >- - A detailed description of the Experiment. - required: true - type: - description: >- - The type of sequencing experiment. - required: false - sequencing_protocol: - required: true - inlined: false - library_preparation_protocol: - required: true - inlined: false - - Condition: - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - description: >- - An condition that is linked to comparable samples. - slots: - - title - - description - - name - - disease_or_healthy - - case_control_status - - mutant_or_wildtype - - study - slot_usage: - name: - required: true - description: - required: true - disease_or_healthy: - required: true - case_control_status: - required: true - mutant_or_wildtype: - required: true - study: - required: true - inlined: false - - LibraryPreparationProtocol: - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - description: >- - Information about the library_preparation of an sequencing experiment. - slots: - - description - - library_name - - library_layout - - library_type - - library_selection - - library_preparation - - library_preparation_kit_retail_name - - library_preparation_kit_manufacturer - - primer - - end_bias - - target_regions - - rnaseq_strandedness - slot_usage: - description: - description: >- - Description about how a sequencing library was prepared (eg: Library construction method). - required: true - library_name: - required: true - library_layout: - required: true - library_type: - required: true - library_selection: - required: true - library_preparation: - required: true - library_preparation_kit_retail_name: - required: false - recommended: true - library_preparation_kit_manufacturer: - required: false - recommended: true - primer: - required: false - recommended: true - end_bias: - required: false - recommended: true - attributes: - description: >- - One or more attributes that further characterizes this library_preparation Protocol. - target_regions: - required: false - rnaseq_strandedness: - required: false - recommended: true - - SequencingProtocol: - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - description: >- - Information about the sequencing of a sample. - slots: - - description - - type - - instrument_model - - sequencing_center - - sequencing_read_length - - target_coverage - - flow_cell_id - - flow_cell_type - - umi_barcode_read - - umi_barcode_offset - - umi_barcode_size - - cell_barcode_read - - cell_barcode_offset - - cell_barcode_size - - sample_barcode_read - slot_usage: - instrument_model: - required: true - type: - description: >- - Type of the sequencing Protocol (eg: mRNA-seq, Whole exome long-read sequencing etc). - description: - description: >- - Description about the sequencing Protocol (eg: mRNA-seq, Whole exome long-read sequencing etc). - required: true - attributes: - description: >- - One or more attributes that further characterizes this Sequencing Protocol. - sequencing_center: - required: false - recommended: true - sequencing_read_length: - required: false - target_coverage: - required: false - flow_cell_id: - required: false - recommended: true - flow_cell_type: - required: false - recommended: true - umi_barcode_read: - required: false - recommended: true - umi_barcode_size: - required: false - recommended: true - umi_barcode_offset: - required: false - recommended: true - cell_barcode_read: - required: false - recommended: true - cell_barcode_size: - required: false - recommended: true - cell_barcode_offset: - required: false - recommended: true - sample_barcode_read: - required: false - recommended: true - - SequencingProcess: - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - description: >- - A sequencing process linking a sample to sequencing output. - slots: - - title - - description - - name - - sequencing_run_id - - sequencing_lane_id - - sequencing_machine_id - - sequencing_experiment - - index_sequence - - lane_number - - sample - slot_usage: - name: - required: true - description: - required: true - sequencing_run_id: - description: >- - Identifier of the sequencing run. Used for batch correction. - required: false - sequencing_lane_id: - description: >- - Identifier of the sequencing lane. Used for batch correction. - required: false - sequencing_machine_id: - description: >- - Identifier of the sequencing machine. Used for batch correction. - required: false - sequencing_experiment: - required: true - inlined: false - lane_number: - required: false - recommended: true - index_sequence: - required: false - recommended: true - - sample: - required: true - inlined: false - - Biospecimen: - mixins: - - IdentifiedByAliasMixin - description: >- - A Biospecimen is any natural material taken from a biological entity (usually a human) for testing, - diagnostics, treatment, or research purposes. The Biospecimen is linked to the Individual from which - the Biospecimen is derived. - exact_mappings: - - OBI:0100051 - slots: - - name - - type - - description - - isolation - - storage - - individual - - age_at_sampling - - vital_status_at_sampling - - tissue - slot_usage: - name: - required: false - recommended: true - type: - description: >- - The type of Biospecimen. - required: false - recommended: true - description: - required: false - isolation: - required: false - recommended: true - storage: - required: false - recommended: true - individual: - description: >- - The Individual entity from which this Biospecimen was derived. - inlined: false - required: true - age_at_sampling: - required: true - vital_status_at_sampling: - required: false - recommended: true - tissue: - required: true - - Sample: - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - description: >- - A sample is a limited quantity of something to be used for testing, analysis, - inspection, investigation, demonstration, or trial use. A sample is prepared from - a Biospecimen (isolate or tissue). - exact_mappings: - - SIO:001050 - - biolink:MaterialSample - slots: - - name - - type - - description - - isolation - - storage - - biospecimen - - condition - - xref - slot_usage: - name: - description: >- - Name of the sample (eg:GHGAS_Blood_Sample1 or GHGAS_PBMC_RNAseq_S1). - required: true - type: - description: >- - The type of sample. - range: SampleTypeEnum - in_subset: - - ontology - required: false - description: - description: >- - Short textual description of the sample - (How the sample was collected, sample source, - Protocol followed for processing the sample etc). - required: true - storage: - required: false - recommended: true - isolation: - required: false - recommended: true - xref: - description: >- - One or more cross-references for this Sample. For example, this Sample - may have an EBI BioSamples accession or an EGA Sample accession. - required: false - biospecimen: - description: >- - The Biospecimen from which this Sample was prepared from. - required: false - inlined: false - condition: - required: true - inlined: false - - Individual: - mixins: - - IdentifiedByAliasMixin - aliases: ["subject", "patient"] - description: >- - An Individual is a Person who is participating in a Study. - slots: - - sex - - karyotype - - geographical_region - - ancestries - - phenotypic_features - slot_usage: - sex: - required: true - karyotype: - required: false - geographical_region: - required: false - ancestries: - required: false - phenotypic_features: - description: >- - The Phenotypic Feature entity that is associated with this Biospecimen at the time of retrieval - from the organism. Typically, a concept from Human Phenotype Ontology. - For example, 'HP:0100244' indicates that the Individual - from_which_the_Biospecimen - was extracted from - exhibits_'Fibrosarcoma'_as_one_of_its_phenotype. - required: false - - Trio: - mixins: - - IdentifiedByAliasMixin - description: >- - A trio is defined by three individuals representing an individual and their parents. - slots: - - mother - - father - - child - slot_usage: - mother: - required: true - inlined: false - father: - required: true - inlined: false - child: - required: true - inlined: false - - File: - mixins: - - IdentifiedByAliasMixin - description: >- - A file is an object that contains information generated from a process, either an - Experiment or an Analysis. - slots: - - name - - format - - size - - checksum - - forward_or_reverse - - checksum_type - - dataset - slot_usage: - name: - description: >- - The given filename. - required: true - format: - required: true - checksum: - required: true - checksum_type: - required: true - size: - required: true - dataset: - inlined: false - required: true - forward_or_reverse: - required: false - recommended: true - - StudyFile: - is_a: File - description: >- - A StudyFile is a File that is associated with a Study. - slots: - - study - slot_usage: - study: - inlined: false - required: true - - SampleFile: - is_a: File - description: >- - A SampleFile is a File that is associated with a Sample. - slots: - - sample - slot_usage: - sample: - inlined: false - required: true - - SequencingProcessFile: - is_a: File - description: >- - A SequencingProcessFile is a File that is associated with a SequencingProcess. - slots: - - sequencing_process - slot_usage: - sequencing_process: - inlined: false - required: true - - AnalysisProcessOutputFile: - is_a: File - description: >- - A AnalysisProcessOutputFile is a File that is associated as an output file with an AnalysisProcess. - slots: - - analysis_process - slot_usage: - analysis_process: - inlined: false - required: true - - Analysis: - mixins: - - IdentifiedByAliasMixin - aliases: ["data analysis"] - description: >- - An Analysis is a data transformation that transforms input data to output data. - The workflow used to achieve this transformation and the individual steps are also captured. - slots: - - title - - description - - type - - reference_genome - - reference_chromosome - slot_usage: - type: - description: >- - The type of the Analysis. Either Reference Alignment (BAM) or Sequence Variation (VCF) - required: false - description: - description: >- - Describing how an Analysis was carried out. (e.g.: computational tools, settings, etc.). - required: false - reference_genome: - required: true - reference_chromosome: - required: true - - AnalysisProcess: - mixins: - - IdentifiedByAliasMixin - slots: - - analysis - - study_input_files - - sample_input_files - - sequencing_process_input_files - slot_usage: - analysis: - inlined: false - description: >- - The Analysis the AnalysisProcess was part of - required: true - study_input_files: - inlined: false - required: false - sample_input_files: - inlined: false - required: false - sequencing_process_input_files: - inlined: false - required: false - - Dataset: - mixins: - - IdentifiedByAliasMixin - description: >- - A Dataset is a collection of Files that is prepared for distribution - and is tied to a Data Access Policy. - exact_mappings: - - SIO:000089 - slots: - - title - - description - - types - - data_access_policy - slot_usage: - title: - description: >- - A title for the submitted Dataset. - required: true - description: - required: true - types: - description: >- - The type of a dataset. - required: true - data_access_policy: - description: >- - The Data Access Policy that applies to this Dataset. - required: true - inlined: false - - DataAccessPolicy: - mixins: - - IdentifiedByAliasMixin - description: >- - A Data Access Policy specifies under which circumstances, legal or otherwise, - a user can have access to one or more Datasets belonging to one or more Studies. - slots: - - name - - description - - policy_text - - policy_url - - data_access_committee - - data_use_permission - - data_use_modifiers - slot_usage: - name: - description: >- - A name for the Data Access Policy. - required: true - description: - description: >- - A short description for the Data Access Policy. - required: true - policy_text: - description: >- - The terms of data use and policy verbiage should be captured here. - required: true - policy_url: - description: >- - URL for the policy, if available. This is useful if the terms of the policy is - made available online at a resolvable URL. - required: false - recommended: true - data_access_committee: - description: >- - The Data Access Committee linked to this policy. - required: true - inlined: false - data_use_permission: - description: >- - Data use permission associated with a policy. Typically one or more terms from DUO - and should be descendants of 'DUO:0000001 data use permission'. - required: true - data_use_modifiers: - description: >- - Modifier for Data use permission associated with a policy. - Should be descendants of 'DUO:0000017 data use modifier' - required: false - recommended: true - - DataAccessCommittee: - mixins: - - IdentifiedByAliasMixin - description: >- - A group of members that are delegated to grant access to one or more datasets - after ensuring the minimum criteria for data sharing has been met, and request - for data use does not raise ethical and/or legal concerns. - slots: - - email - - institute - slot_usage: - email: - required: true - institute: - required: true - - Publication: - mixins: - - IdentifiedByAliasMixin - description: >- - The Publication entity represents a publication. While a publication can be any - article that is published, the minimum expectation is that the publication has a - valid DOI. - slots: - - title - - abstract - - author - - year - - journal - - doi - - study - - xref - slot_usage: - title: - description: >- - The title for the Publication. - required: false - abstract: - description: >- - The study abstract that describes the goals. Can also hold abstract from a publication related to this study. - required: false - author: - required: false - year: - required: false - journal: - required: false - xref: - description: >- - One or more cross-references for this Publication. - required: false - doi: - description: DOI identifier of the Publication. - required: true - study: - description: >- - The Study entity associated with this Publication. - required: true - inlined: false - - Submission: - tree_root: true - description: >- - A grouping entity that represents information about one or more entities. - A submission can be considered as a set of inter-related (and inter-connected) - entities that represent a data submission to GHGA. - slots: - - analyses - - analysis_process_output_files - - analysis_processes - - biospecimens - - conditions - - data_access_committees - - data_access_policies - - datasets - - individuals - - library_preparation_protocols - - publications - - sample_files - - samples - - sequencing_experiments - - sequencing_process_files - - sequencing_processes - - sequencing_protocols - - studies - - study_files - - trios - slot_usage: - studies: - description: >- - Information about a Study entities associated with this submission. - required: true - inlined: true - inlined_as_list: true - samples: - description: >- - Information about one or more Sample entities associated with this submission. - required: true - inlined: true - inlined_as_list: true - biospecimens: - description: >- - Information about one or more Biospecimen entities associated with this submission. - required: true - inlined: true - inlined_as_list: true - conditions: - description: The Conditions associated with this Submission. - required: true - inlined: true - inlined_as_list: true - individuals: - description: >- - Information about one or more Individual entities associated with this submission. - required: true - inlined: true - inlined_as_list: true - sequencing_experiments: - description: >- - Information about one or more Experiment entities associated with this submission. - required: true - inlined: true - inlined_as_list: true - sequencing_protocols: - description: >- - One or more sequencing protocol entities associated with this Submission. - required: true - inlined: true - inlined_as_list: true - library_preparation_protocols: - description: >- - One or more library preparation protocol entities associated with this Submission. - required: true - inlined: true - inlined_as_list: true - analyses: - description: >- - Information about one or more Analysis entities associated with this submission. - required: true - inlined: true - inlined_as_list: true - study_files: - description: The StudyFiles that are part of this submission. - required: true - inlined: true - inlined_as_list: true - sample_files: - description: The SampleFiles that are part of this submission. - required: true - inlined: true - inlined_as_list: true - sequencing_process_files: - description: The SequencingProcessFiles that are part of this submission. - required: true - inlined: true - inlined_as_list: true - sequencing_processes: - description: The SequencingProcesses that are part of this submission. - required: true - inlined: true - inlined_as_list: true - analysis_processes: - description: The AnalysisProcesses that are part of this submission. - required: true - inlined: true - inlined_as_list: true - analysis_process_output_files: - description: The AnalysisProcessOutputFiles that are part of this submission. - required: true - inlined: true - inlined_as_list: true - datasets: - description: >- - One or more Dataset that are part of this submission. - required: true - inlined: true - inlined_as_list: true - data_access_policies: - description: >- - The Data Access Policy that applies to Dataset in this submission. - required: true - inlined: true - inlined_as_list: true - data_access_committees: - description: >- - The Data Access Committee that applies to Dataset in this submission. - required: true - inlined: true - inlined_as_list: true - publications: - description: >- - One or more Publication entities associated with this Submission. - required: true - inlined: true - inlined_as_list: true - trios: - description: The Trios associated with this Submission. - required: true - inlined: true - inlined_as_list: true - -slots: - alias: - description: The alias for an entity at the time of submission. - - description: - description: Description of an entity. - exact_mappings: - - SIO:000185 - - key: - description: The key of an attribute. - - key_type: - description: The semantic type for the key of an attribute. - - value: - description: The value of an attribute - - value_type: - description: The semantic type for the value of an attribute. - - attributes: - description: Key/value pairs corresponding to an entity. - range: Attribute - multivalued: true - - type: - description: >- - The type of an entity. - Note: Not to be confused with rdf:type - - types: - description: >- - The types of an entity. - Note: Not to be confused with rdf:type - multivalued: True - - name: - description: The name for an entity. - - title: - description: The title that describes an entity. - - xref: - description: Database cross references for an entity. - multivalued: true - - study: - description: The study associated with an entity. - range: Study - - studies: - description: The study associated with an entity. - range: Study - multivalued: True - - publications: - description: The Publication associated with an entity. - range: Publication - multivalued: True - - sample: - description: The sample associated with an entity. - range: Sample - - samples: - description: The samples associated with an entity. - range: Sample - multivalued: true - - sequencing_experiment: - description: The sequencing experiment associated with an entity. - range: SequencingExperiment - - sequencing_experiments: - description: The sequencing experiments associated with an entity. - range: SequencingExperiment - multivalued: true - - sequencing_process: - description: The SequencingProcess associated with an entity. - range: SequencingProcess - - analyses: - description: The analyses associated with an entity. - range: Analysis - multivalued: true - - analysis: - description: The Analysis associated with an entity - range: Analysis - - analysis_process: - description: The AnalysisProcess associated with an entity. - range: AnalysisProcess - - analysis_processes: - description: The AnalysisProcess associated with an entity. - range: AnalysisProcess - multivalued: true - - dataset: - description: The Dataset associated with an entity. - range: Dataset - - datasets: - description: The Datasets associated with an entity. - multivalued: true - range: Dataset - - biospecimen: - description: The biospecimen associated with an entity. - range: Biospecimen - - biospecimens: - description: The biospecimens associated with an entity. - range: Biospecimen - multivalued: true - - individual: - description: The subject/individual associated with an entity. - range: Individual - - individuals: - description: The subjects/individuals associated with an entity. - range: Individual - multivalued: true - - phenotypic_features: - description: Phenotypic feature concepts that the entity is associated with. - in_subset: - - ontology - # range: PhenotypicFeaturesEnum - multivalued: true - - mother: - description: The mother of an individual. - range: Individual - - father: - description: The father of an individual. - range: Individual - - child: - description: The child of two individuals. - range: Individual - - ancestries: - description: >- - A person's descent or lineage, from a person or from a population. - in_subset: - - ontology - # range: AncestryEnum - multivalued: true - - study_files: - description: >- - The StudyFiles associated with an entity. - range: StudyFile - multivalued: True - - sample_files: - description: >- - The SampleFiles associated with an entity. - range: SampleFile - multivalued: True - - sequencing_process_files: - description: >- - The SequencingProcessFiles associated with an entity. - range: SequencingProcessFile - multivalued: True - - sequencing_processes: - description: The SequencingProcesses associated with an entity. - range: SequencingProcess - multivalued: true - - study_input_files: - description: >- - The StudyFile associated used as an input for an entity. - range: StudyFile - multivalued: True - - sample_input_files: - description: >- - The SampleFile associated used as an input for an entity. - range: SampleFile - multivalued: True - - sequencing_process_input_files: - description: >- - The SequencingProcessFile associated used as an input for an entity. - range: SequencingProcessFile - multivalued: True - - analysis_process_output_files: - description: >- - The AnalysisProcessOutputFiles associated with an entity. - range: AnalysisProcessOutputFile - multivalued: True - - data_access_policy: - description: Data Access Policy associated with an entity. - range: DataAccessPolicy - - data_access_policies: - description: Data Access Policies associated with an entity. - range: DataAccessPolicy - multivalued: True - - data_access_committee: - description: Data Access Committee associated with an entity. - range: DataAccessCommittee - - data_access_committees: - description: Data Access Committees associated with an entity. - range: DataAccessCommittee - multivalued: True - - data_use_permission: - description: >- - Data use permission associated with an entity. Typically one or more terms from DUO. - Should be descendants of 'DUO:0000001 data use permission'. - range: DataUsePermissionEnum - - data_use_modifiers: - description: >- - Modifier for Data use permission associated with an entity. - Should be descendants of 'DUO:0000017 data use modifier' - range: DataUseModifierEnum - multivalued: true - - sequencing_protocol: - range: SequencingProtocol - description: The sequencing protocol associated with an entity. - - condition: - range: Condition - description: The condition associated with an entity. - - library_preparation_protocol: - range: LibraryPreparationProtocol - description: The library_preparation Protocol associated with an entity. - - sequencing_protocols: - range: SequencingProtocol - multivalued: True - description: The sequencing protocol associated with an entity. - - conditions: - range: Condition - multivalued: True - description: The Conditions associated with an entity. - - library_preparation_protocols: - range: LibraryPreparationProtocol - multivalued: True - description: The library_preparation Protocol associated with an entity. - - institute: - description: The institute a person is affiliated with. - - email: - description: >- - Email of a person. - - affiliations: - description: >- - The Institution(s) associated with an entity. - multivalued: True - - library_name: - description: >- - A short name identifying the library to potential users. - The same name may refer to multiple versions of the same continually updated library. - - library_layout: - description: >- - Describe whether the library was sequenced in single-end (forward or reverse) or paired-end mode - range: LibraryPreparationLibraryLayoutEnum - exact_mappings: - - NCIT:C175894 - - library_type: - description: >- - Describe the level of omics analysis (eg: Metagenome, transcriptome, etc) - range: LibraryPreparationLibraryTypeEnum - - library_selection: - description: >- - Whether any method was used to select for or against, enrich, or screen the material being sequenced. - library_selection method (e.g. random, PCA, cDNA, etc ) - range: LibraryPreparationLibrarySelectionEnum - - library_preparation: - description: >- - The general method for sequencing library_preparation (e.g. KAPA PCR-free). - - library_preparation_kit_retail_name: - description: >- - A unique identifier for the kit used to construct a genomic library. - This may include the vendor name, kit name and kit version - (e.g. Agilent sure select Human Exome V8, Twist RefSeq Exome, etc.) - range: LibraryPreparationKitRetailNameEnum - - library_preparation_kit_manufacturer: - description: >- - Manufacturer of library_preparation kit - - primer: - description: >- - The type of primer used for reverse transcription, e.g. 'oligo-dT' or 'random' primer. - This allows users to identify content of the cDNA library input e.g. enriched for mRNA. - exact_mappings: - - EFO:0010192 - range: PrimerEnum - - end_bias: - description: >- - The end of the cDNA molecule that is preferentially sequenced, - e.g. 3/5 prime tag or end, or the full-length transcript. - exact_mappings: - - EFO:0010187 - range: EndBiasEnum - - target_regions: - multivalued: True - description: >- - Subset of genes or specific regions of the genome, which are most likely to be involved in the phenotype under study. - - rnaseq_strandedness: - description: >- - The strandedness of the library, whether reads come from both strands of the cDNA - or only from the first (antisense) or the second (sense) strand. - range: LibraryPreparationRNASeqStrandednessEnum - - sequencing_center: - description: >- - Center where sample was sequenced. - - instrument_model: - description: >- - The name and model of the technology platform used to perform sequencing. - range: InstrumentModelEnum - - sequencing_read_length: - description: >- - Length of sequencing reads (eg: Long or short or actual number of the read length etc). - The number of nucleotides successfully ordered from each side of a nucleic acid fragment - obtained after the completion of a sequencing process - - index_sequence: - description: >- - A unique nucleotide sequence that is added to a sample during library_preparation to serve as a unique identifier for the sample. - exact_mappings: - - NCIT:C165443 - - sequencing_run_id: - description: >- - The identifier of a sequencing run. - - sequencing_lane_id: - description: >- - The identifier of a sequencing lane. - - sequencing_machine_id: - description: >- - The identifier of a sequencing machine. - - forward_or_reverse: - description: >- - Denotes whether a submitted FASTQ file contains forward (R1) or reverse (R2) reads for paired-end sequencing. - The number that identifies each read direction in a paired-end nucleotide sequencing reaction. - range: ForwardOrReverseEnum - - lane_number: - description: >- - The numerical identifier for the lane or machine unit where a sample was located during nucleotide sequencing. - - target_coverage: - description: >- - Mean coverage for whole genome sequencing, or mean target coverage for whole exome and targeted sequencing. - The number of times a particular locus (site, nucleotide, amplicon, region) was sequenced. - - flow_cell_id: - description: >- - Flow Cell ID (eg: Experiment ID_Cell 1_Lane_1). - The barcode assigned to a flow cell used in nucleotide sequencing. - - flow_cell_type: - description: >- - Type of flow cell used (e.g. S4, S2 for NovaSeq; PromethION, Flongle for Nanopore). - Aparatus in the fluidic subsystem where the sheath and sample meet. - Can be one of several types; jet-in-air, quartz cuvette, or a hybrid of the two. - The sample flows through the center of a fluid column of sheath fluid in the flow cell. - range: FlowCellTypeEnum - - umi_barcode_read: - description: >- - The type of read that contains the UMI barcode (Eg: index1/index2/read1/read2). - range: IndexReadEnum - - umi_barcode_offset: - description: >- - The offset in sequence of the UMI identifying barcode. (E.g. '16'). - - umi_barcode_size: - description: >- - The size of the UMI identifying barcode (Eg. '10'). - - cell_barcode_read: - description: >- - The type of read that contains the cell barcode (eg: index1/index2/read1/read2). - range: IndexReadEnum - - cell_barcode_offset: - description: >- - The offset in sequence of the cell identifying barcode. (Eg. '0'). - - cell_barcode_size: - description: >- - The size of the cell identifying barcode (E.g. '16'). - - sample_barcode_read: - description: >- - The type of read that contains the sample barcode (eg: index1/index2/read1/read2). - range: SampleBarcodeReadEnum - - isolation: - description: >- - Method or device employed for collecting/isolating a biospecimen or a sample. - in_subset: - - ontology - # range: IsolationEnum - - storage: - description: >- - Methods by which a biospecimen or a sample is stored - (e.g. frozen in liquid nitrogen). - - disease_or_healthy: - description: >- - Whether a condition corresponds to a disease or a healthy state. - range: DiseaseOrHealthyEnum - - case_control_status: - description: >- - Whether a condition corresponds to a treatment or a control. - range: CaseControlStatusEnum - - mutant_or_wildtype: - description: >- - Whether a condition corresponds to a mutant or a wildtype. - range: MutantOrWildtypeEnum - - vital_status_at_sampling: - description: >- - Vital Status of an Individual at the point of sampling (eg:'Alive', 'Deceased'). - range: VitalStatusEnum - - geographical_region: - description: >- - The geographical region where the Individual is located. - Any demarcated area of the Earth; may be determined by both natural and human boundaries. - in_subset: - - ontology - # range: GeographicalRegionEnum - - vital_status: - description: >- - The state or condition of being living or deceased; - also includes the case where the vital status is unknown. - range: VitalStatusEnum - deprecated: redundant, solved by use of vital_status_at_sampling at the Biospecimen level - - sex: - description: >- - The assemblage of physical properties or qualities by which male is distinguished from female; - the physical difference between male and female; the distinguishing peculiarity of male or female. - range: IndividualSexEnum - - karyotype: - description: >- - The karyotype of an individual if defined. - range: KaryotypeEnum - - age_at_sampling: - description: Age of an individual. - range: AgeRangeEnum - - format: - description: >- - The format of the file: BAM, SAM, CRAM, BAI, etc. - range: FileFormatEnum - - size: - description: The size of a file in bytes. - range: integer - - checksum: - description: >- - A computed value which depends on the contents of a block of data and which is transmitted or - stored along with the data in order to detect corruption of the data. - The receiving system recomputes the checksum based upon the received data and compares this - value with the one sent with the data. If the two values are the same, the receiver has some confidence - that the data was received correctly. - exact_mappings: - - NCIT:C43522 - - checksum_type: - description: >- - The type of algorithm used to generate the checksum of a file. - - reference_chromosome: - description: >- - The reference chromosome used for this Analysis. - - reference_genome: - description: >- - A published genetic sequence that is used as a reference sequence against which other sequences are compared. - Reference genome(s) or annotation(s) used for prior analyses (eg: GRCh38.p13). - - policy_text: - description: The complete text for the Data Access Policy. - - policy_url: - description: Alternative to pasting the Data Access Policy text. - - abstract: - description: >- - The study abstract that describes the goals. - Can also hold abstract from a publication related to this study - - author: - description: >- - The individual who is responsible for the content of a document version. - - year: - description: >- - Year in which the paper was published. - range: integer - - journal: - description: >- - Name of the journal. - - doi: - description: >- - DOI identifier of a publication. - - tissue: - in_subset: - - ontology - # range: TissueEnum - - trios: - description: The Trios associated with an entity. - range: Trio - multivalued: true - -subsets: - ontology: - description: >- - This slot is part of an ontology which is currently not otherwise encoded - in the schema. - -enums: - DataUseModifierEnum: - description: Permitted values for data use modifier - reachable_from: - source_ontology: http://purl.obolibrary.org/obo/duo/releases/2021-02-23/duo.owl - source_nodes: - - DUO:0000017 - include_self: false - permissible_values: - clinical care use: - meaning: DUO:0000043 - return to database or resource: - meaning: DUO:0000029 - institution specific restriction: - meaning: DUO:0000028 - project specific restriction: - meaning: DUO:0000027 - user specific restriction: - meaning: DUO:0000026 - time limit on use: - meaning: DUO:0000025 - publication moratorium: - meaning: DUO:0000024 - geographical restriction: - meaning: DUO:0000022 - ethics approval required: - meaning: DUO:0000021 - collaboration required: - meaning: DUO:0000020 - publication required: - meaning: DUO:0000019 - not for profit, non commercial use only: - meaning: DUO:0000018 - non-commercial use only: - meaning: DUO:0000046 - not for profit organisation use only: - meaning: DUO:0000045 - genetic studies only: - meaning: DUO:0000016 - no general methods research: - meaning: DUO:0000015 - research specific restrictions: - meaning: DUO:0000012 - population origins or ancestry research prohibited: - meaning: DUO:00000044 - - DataUsePermissionEnum: - description: Permitted values for data use permission - reachable_from: - source_ontology: http://purl.obolibrary.org/obo/duo/releases/2021-02-23/duo.owl - source_nodes: - - DUO:0000001 - include_self: false - permissible_values: - general research use: - meaning: DUO:0000042 - health or medical or biomedical research: - meaning: DUO:0000006 - disease specific research: - meaning: DUO:0000007 - no restriction: - meaning: DUO:0000004 - population origins or ancestry research only: - meaning: DUO:0000011 - - AncestryEnum: - description: Permitted values for ancestry - reachable_from: - source_ontology: http://purl.obolibrary.org/obo/hancestro/releases/2022-05-12/hancestro.owl - source_nodes: - - HANCESTRO:0004 - include_self: false - - GeographicalRegionEnum: - description: Permitted values for geographical region - reachable_from: - source_ontology: http://purl.obolibrary.org/obo/hancestro/releases/2022-05-12/hancestro.owl - source_nodes: - - HANCESTRO:0002 - include_self: false - - KaryotypeEnum: - description: Permitted values for karyotype - permissible_values: - 46_XY: - 46_XX: - OTHER: - - PhenotypicFeaturesEnum: - description: An enum describing permissible phenotype descriptors - include: - - reachable_from: - source_ontology: http://www.ebi.ac.uk/efo/releases/v3.54.0/efo.owl - include_self: false - - reachable_from: - source_ontology: https://www.orphadata.com/data/ontologies/ordo/last_version/ORDO_en_4.2.owl - include_self: false - - reachable_from: - source_ontology: http://snomed.info/sct/900000000000207008/version/20200131 - source_nodes: - - SNOMED:404684003 - include_self: false - - reachable_from: - source_ontology: http://purl.obolibrary.org/obo/mondo/releases/2022-12-01/mondo.owl - include_self: false - - reachable_from: - source_ontology: http://purl.obolibrary.org/obo/hp/releases/2023-04-05/hp-international.owl - include_self: false - - IsolationEnum: - description: Describes how biomaterial was isolated. - reachable_from: - source_ontology: http://snomed.info/sct/900000000000207008/version/20200131 - source_nodes: - - SNOMED:118292001 - include_self: false - - SampleTypeEnum: - description: >- - The type of a sample - permissible_values: - CF_DNA: - DEPLETED_RNA: - DS_DNA_CH_IP: - FFPE_DNA: - FFPE_TOTAL_RNA: - GENOMIC_DNA: - PCR_PRODUCTS: - POLY_A_RNA: - SINGLE_CELL_DNA: - SINGLE_CELL_RNA: - SMALL_RNA: - TOTAL_RNA: - - TissueEnum: - description: >- - A tissue as described in the BRENDA ontology. - reachable_from: - source_ontology: http://purl.obolibrary.org/obo/bto/releases/2021-10-26/bto.owl - - IndividualSexEnum: - description: >- - The sex of an Individual as as defined in a specific medical and clinical context. - reachable_from: - source_ontology: http://purl.obolibrary.org/obo/gsso/releases/2.0.5/gsso.owl - source_nodes: - - GSSO:009428 - include_self: false - permissible_values: - FEMALE_SEX_FOR_CLINICAL_USE: - meaning: GSSO:011317 - IMAGING_SEX: - meaning: GSSO:009318 - MALE_SEX_FOR_CLINICAL_USE: - meaning: GSSO:011318 - SPECIFIED_SEX_FOR_CLINICAL_USE: - meaning: GSSO:011319 - UNKNOWN_SEX_FOR_CLINICAL_USE: - meaning: GSSO:011320 - - VitalStatusEnum: - description: >- - Enum to capture the vital status of an individual. - permissible_values: - ALIVE: - description: >- - Showing characteristics of life; displaying signs of life. - DECEASED: - description: >- - The cessation of life. - UNKNOWN: - description: >- - Vital status is unknown. - - StudyTypeEnum: - description: >- - Enum to capture the type of a study. - permissible_values: - CANCER_GENOMICS: - EPIGENETICS: - EXOME_SEQUENCING: - FORENSIC_GENETICS: - PALEO_GENOMICS: - GENE_REGULATION_STUDY: - METAGENOMICS: - OTHER: - POOLED_CLONE_SEQUENCING: - POPULATION_GENOMICS: - RNASEQ: - RESEQUENCING: - SYNTHETIC_GENOMICS: - TRANSCRIPTOME_ANALYSIS: - WHOLE_GENOME_SEQUENCING: - GWAS: - - FileFormatEnum: - description: >- - Enum to capture file types. - permissible_values: - AGP: - BAI: - BAM: - BCF: - BED: - CRAI: - CRAM: - CSV: - FASTA: - FASTQ: - GFF: - HDF5: - INFO: - JSON: - MD: - OTHER: - PED: - SAM: - SFF: - SRF: - TAB: - TABIX: - TSV: - TXT: - VCF: - WIG: - - LibraryPreparationLibraryLayoutEnum: - description: >- - Single-end vs paired-end library - permissible_values: - SE: - PE: - - LibraryPreparationLibraryTypeEnum: - description: >- - The type of the library - permissible_values: - WGS: - WXS: - WCS: - TOTAL_RNA: - M_RNA: - MI_RNA: - NC_RNA: - ATAC: - METHYLATION: - CHROMOSOME_CONFORMATION_CAPTURE: - - LibraryPreparationLibrarySelectionEnum: - description: >- - Permitted vocabulary for library selections - permissible_values: - 5_METHYLCYTIDINE_ANTIBODY_METHOD: - CAGE_METHOD: - C_DNA_METHOD: - CF_H_METHOD: - CF_M_METHOD: - CF_S_METHOD: - CF_T_METHOD: - CH_IP_SEQ_METHOD: - D_NASE_METHOD: - HMPR_METHOD: - HYBRID_SELECTION_METHOD: - INVERSE_R_RNA: - MBD2_PROTEIN_METHYL_CP_G_BINDING_DOMAIN_METHOD: - MDA: - MF_METHOD: - M_NASE_METHOD: - MSLL_METHOD: - OLIGO_D_T: - PADLOCK_PROBES_CAPTURE_METHOD: - PCR_METHOD: - POLY_A: - RACE_METHOD: - RANDOM_PCR_METHOD: - RANDOM_METHOD: - RT_PCR_METHOD: - REDUCED_REPRESENTATION_METHOD: - REPEAT_FRACTIONATION: - RESTRICTION_DIGEST_METHOD: - SIZE_FRACTIONATION_METHOD: - UNSPECIFIED: - OTHER: - - LibraryPreparationKitRetailNameEnum: - description: >- - Permitted values for library preparation kit retail name - permissible_values: - 10X_GENOMICS_CHROMIUM_SINGLE_CELL_3_V2: - 10X_GENOMICS_CHROMIUM_SINGLE_CELL_3_V3: - ACCEL_NGS_2_S_PLUS_DNA_LIBRARY_KIT: - ACCEL_NGS_METHYL_SEQ_DNA: - AGILENT_STRAND_SPECIFIC_RNA: - AGILENT_SURE_SELECT_CUSTOM_ENRICHMENT_KIT: - AGILENT_SURE_SELECT_V3: - AGILENT_SURE_SELECT_V4: - AGILENT_SURE_SELECT_V4_UT_RS: - AGILENT_SURE_SELECT_V5: - AGILENT_SURE_SELECT_V5_UT_RS: - AGILENT_SURE_SELECT_V6: - AGILENT_SURE_SELECT_V6_ONE: - AGILENT_SURE_SELECT_V6_UT_RS: - AGILENT_SURE_SELECT_V7: - AGILENT_SURE_SELECT_WGS: - AGILENT_SURE_SELECT_XT_HS_HUMAN_ALL_EXON_V7: - AGILENT_SURE_SELECT_XT_MOUSE_ALL_EXON: - AGILENT_XT_HS_SURE_SELECT_CLINICAL_RESEARCH_EXOME_V2: - AVENIO_CT_DNA_KIT: - IDT_X_GEN_EXOME_RESEARCH_PANEL: - ILLUMINA_DNA_PCR_FREE: - ILLUMINA_NEXTERA_DNA_FLEX: - ILLUMINA_NEXTERA_EXOME_ENRICHMENT_KIT: - ILLUMINA_STRANDED_M_RNA_PREP_LIGATION: - ILLUMINA_TRU_SEQ_CH_IP_SAMPLE_PREPARATION_KIT: - ILLUMINA_TRU_SEQ_CUSTOM_AMPLICON: - ILLUMINA_TRU_SEQ_DNA: - ILLUMINA_TRU_SEQ_NANO_DNA: - ILLUMINA_TRU_SEQ_NANO_DNA_HT: - ILLUMINA_TRU_SEQ_NANO_DNA_LT: - ILLUMINA_TRU_SEQ_NANO_FFPE_DNA: - ILLUMINA_TRU_SEQ_PCR_FREE: - ILLUMINA_TRU_SEQ_PCR_FREE_DNA: - ILLUMINA_TRUSEQ_PCR_FREE_METHYL: - ILLUMINA_TRU_SEQ_RNA: - ILLUMINA_TRU_SEQ_SMALL_RNA_KIT: - ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_KIT: - ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_LIBRARY_PREP_GLOBIN: - ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_RIBO_MINUS_GOLD: - ILLUMINA_VAHTS_TOTAL_RNA: - INFORM_ONCO_PANEL_HG19: - ION_AMPLI_SEQ_EXOME_KIT: - KAPA_HIFI_HOT_START_READYMIX: - KAPA_HYPER_PREP_KIT: - KAPA_HYPER_PLUS_KIT: - KAPA_M_RNA_HYPER_PREP_KIT: - MAGNETIC_METHYLATED_DNA_IMMUNOPRECIPITATION_DIAGNODE: - NEB_NEXT_CH_IP_SEQ_LIBRARY_PREP_KIT_FOR_ILLUMINA: - NEB_NEXT_GLOBIN_R_RNA_DEPLETION_KIT_HUMAN_MOUSE_RAT_WITH_BEADS: - NEB_NEXT_POLY_A_M_RNA_MAGNETIC_ISOLATION_MODULE: - NEB_NEXT_RNA_ULTRA_II_STRANDED: - NEBNEXT_ULTRA_DIRECTIONAL_RNA: - NEB_NEXT_ULTRA_DNA: - NEB_NEXT_ULTRA_DNA_LIBRARY_PREP_KIT_FOR_ILLUMINA: - NEB_NEXT_ULTRA_II_DIRECTIONAL_RNA: - NEB_NEXT_ULTRA_II_DNA_LIBRARY_PREP_KIT_FOR_ILLUMINA: - NEXTERA_XT_DNA: - OLIGO_D_T: - PICO_METHYL_SEQ: - SMART_SEQ_V4_ULTRA_LOW_INPUT_RNA_KIT: - SMAR_TER_STRANDED_TOTAL_RNA_SEQ_KIT: - SMAR_TER_ULTRA_LOW_INPUT_RNA_AND_NEB_NEXT_CH_IP_SEQ: - SMAR_TER_ULTRA_LOW_INPUT_RNA_V4_AND_NEB_NEXT_CH_IP_SEQ: - SMAR_TSEQ2_TAG: - SUPER_SCRIPT_II_RT_BULK: - SURE_CELL_ATAC_SEQ_LIBRARY_PREP_KIT: - SURE_SELECT_EUROFINS_ENRICHMENT_CUSTOM_01: - TAKARA_CLONTECH_SMAR_TER_STRANDED_TOTAL_RNA: - TAKARA_SMAR_TER_PREP_X_DNA_LIBRARY_KIT_ACTIVE_MOTIF_CUSTOM_INDICES_01: - TEMPLATE_SWITCHING_RT_ENZYME_MIX_BULK: - TWIST_HUMAN_CORE_EXOME_PLUS_KIT: - ULTRALOW_METHYL_SEQ_WITH_TRUE_METHYL_OX_BS_MODULE: - - LibraryPreparationRNASeqStrandednessEnum: - description: >- - Permitted values for library preparation RNASeq strandedness - permissible_values: - SENSE: - ANTISENSE: - BOTH: - - PrimerEnum: - description: >- - Permitted values for primer - permissible_values: - OLIGO_D_T: - RANDOM: - GENE_SPECIFIC: - OTHER: - - EndBiasEnum: - description: >- - Permitted values for end bias - permissible_values: - 3_PRIME_END: - 5_PRIME_END: - FULL_LENGTH: - - InstrumentModelEnum: - description: >- - Permitted values for instrument model - permissible_values: - ILLUMINA_HI_SCAN: - ILLUMINA_HI_SEQ_1000: - ILLUMINA_HI_SEQ_1500: - ILLUMINA_HI_SEQ_2000: - ILLUMINA_HI_SEQ_2500: - ILLUMINA_HI_SEQ_3000: - ILLUMINA_HI_SEQ_4000: - ILLUMINA_HI_SEQ_X_FIVE: - ILLUMINA_HI_SEQ_X_TEN: - ILLUMINA_HI_SEQ_X: - ILLUMINA_I_SCAN: - ILLUMINA_I_SEQ_100: - ILLUMINA_MINI_SEQ: - ILLUMINA_MI_SEQ: - ILLUMINA_MI_SEQ_DX: - ILLUMINA_MI_SEQ_DX_RESEARCH_MODE: - ILLUMINA_NEXT_SEQ_500: - ILLUMINA_NEXT_SEQ_550: - ILLUMINA_NEXT_SEQ_550_DX: - ILLUMINA_NEXT_SEQ_550_DX_RESEARCH_MODE: - ILLUMINA_NEXT_SEQ_1000: - ILLUMINA_NEXT_SEQ_2000: - ILLUMINA_NOVA_SEQ_6000: - ILLUMINA_GENOME_ANALYZER: - ILLUMINA_GENOME_ANALYZER_II: - ILLUMINA_GENOME_ANALYZER_IIX: - ILLUMINA_HI_SCAN_SQ: - PAC_BIO_REVIO: - PAC_BIO_ONSO: - PAC_BIO_SEQUEL_IIE: - PAC_BIO_SEQUEL_II: - PAC_BIO_SEQUEL: - PAC_BIO_RS: - PAC_BIO_RS_II: - ONT_MIN_ION: - ONT_GRID_ION: - ONT_PROMETH_ION: - DNBSEQ_G50: - DNBSEQ_T7: - DNBSEQ_G400: - DNBSEQ_G400_FAST: - ULTIMA_UG_100: - OTHER: - - FlowCellTypeEnum: - description: >- - Permitted values for flow cell type - permissible_values: - ILLUMINA_NOVA_SEQ_S2: - ILLUMINA_NOVA_SEQ_S4: - PROMETH_ION: - FLONGLE: - MIN_ION: - GRID_ION: - OTHER: - - IndexReadEnum: - description: >- - Permitted Values to indicate the location of a sequence component in a read or index - permissible_values: - INDEX1: - INDEX2: - READ1: - READ2: - - SampleBarcodeReadEnum: - description: >- - Permitted values for sample barcode read - permissible_values: - INDEX1: - INDEX1_AND_INDEX2: - OTHER: - - DiseaseOrHealthyEnum: - description: >- - Enum to capture whether a condition corresponds to a disease or a healthy state. - permissible_values: - DISEASE: - description: Disease state. - HEALTHY: - description: Healthy state. - NOT_APPLICABLE: - description: The distinction is not applicaple. - - CaseControlStatusEnum: - description: >- - Enum to capture whether a condition corresponds to a case or a control condition. - reachable_from: - source_ontology: http://purl.obolibrary.org/obo/ncit/releases/2022-08-19/ncit.owl - source_nodes: - - NCIT:C99268 - include_self: false - permissible_values: - NEITHER_CASE_OR_CONTROL_STATUS: - meaning: NCIT:C99273 - PROBABLE_CASE_STATUS: - meaning: NCIT:C99271 - PROBABLE_CONTROL_STATUS: - meaning: NCIT:C99272 - TRUE_CASE_STATUS: - meaning: NCIT:C99269 - TRUE_CONTROL_STATUS: - meaning: NCIT:C99270 - UNABLE_TO_ASSESS_CASE_OR_CONTROL_STATUS: - meaning: NCIT:C99274 - - MutantOrWildtypeEnum: - description: >- - Enum to capture whether a condition corresponds to a mutant or a wildtype. - permissible_values: - MUTANT: - description: Mutant state. - WILDTYPE: - description: Wildtype state. - NOT_APPLICABLE: - description: The distinction is not applicaple. - - ForwardOrReverseEnum: - description: >- - Enum to capture whether the reads from paired-end sequencing are forward (R1) or reverse (R2). - permissible_values: - FORWARD: - description: The reads are forward (R1) reads - REVERSE: - description: The reads are reverse (R2) reads - - AgeRangeEnum: - description: >- - Enum to capture the age range that an Indiviudal belongs to. - permissible_values: - 0_TO_5: - description: Age between 0 to 5. - 6_TO_10: - description: Age between 6 to 10. - 11_TO_15: - description: Age between 11 to 15. - 16_TO_20: - description: Age between 16 to 20. - 21_TO_25: - description: Age between 21 to 25. - 26_TO_30: - description: Age between 26 to 30. - 31_TO_35: - description: Age between 31 to 35. - 36_TO_40: - description: Age between 36 to 40. - 41_TO_45: - description: Age between 41 to 45. - 46_TO_50: - description: Age between 46 to 50. - 51_TO_55: - description: Age between 51 to 55. - 56_TO_60: - description: Age between 56 to 60. - 61_TO_65: - description: Age between 61 to 65. - 66_TO_70: - description: Age between 66 to 70. - 71_TO_75: - description: Age between 71 to 75. - 76_TO_80: - description: Age between 76 to 80. - 81_OR_OLDER: - description: Age above 80. - UNKNOWN: - description: Age range unknown. diff --git a/tests/fixtures/example_models/minimal_model_anchors_invalid1.yaml b/tests/fixtures/example_models/minimal_model_anchors_invalid1.yaml deleted file mode 100644 index d3522051..00000000 --- a/tests/fixtures/example_models/minimal_model_anchors_invalid1.yaml +++ /dev/null @@ -1,146 +0,0 @@ -id: https://w3id.org/Minimal-Model -name: Minimal-Model -version: 0.9.0 -prefixes: - linkml: https://w3id.org/linkml/ -imports: - - linkml:types - -default_range: string - -classes: - File: - aliases: ["file object"] - description: >- - A file is an object that contains information generated from a process, either an - Experiment or an Analysis. - slots: - - alias - - filename - - format - - size - - checksum - slot_usage: - alias: - required: true - identifier: true - filename: - required: true - format: - required: true - checksum: - required: true - size: - required: true - - Dataset: - description: >- - A Dataset is a collection of Files. - slots: - - alias - - files - slot_usage: - alias: - required: true - identifier: true - files: - required: true - multivalued: true - inlined: false - - Submission: - tree_root: true - description: >- - A grouping entity that represents information about one or more entities. - A submission can be considered as a set of inter-related (and inter-connected) - entities that represent a data submission to GHGA. - slots: - - files - - datasets - - slot_usage: - files: - required: true - multivalued: true - inlined: false - inlined_as_list: true - datasets: - required: true - multivalued: true - inlined: true - inlined_as_list: true - -slots: - alias: - description: The alias for an entity. - - description: - description: Description of an entity. - - files: - description: >- - The file associated with an entity. - range: File - - datasets: - description: >- - The dataset associated with an entity. - range: Dataset - - filename: - description: >- - The given filename. - - format: - description: >- - The format of the file: BAM, SAM, CRAM, BAI, etc. - range: file format enum - - size: - description: The size of a file in bytes. - range: integer - - checksum: - description: >- - A computed value which depends on the contents of a block of data and which is transmitted or - stored along with the data in order to detect corruption of the data. - The receiving system recomputes the checksum based upon the received data and compares this - value with the one sent with the data. If the two values are the same, the receiver has some confidence - that the data was received correctly. - -enums: - file format enum: - description: >- - Enum to capture file types. - permissible_values: - bam: - description: BAM File - complete_genomics: - description: Complete Genomics File - cram: - description: CRAM File - fasta: - description: Fasta File - fastq: - description: FastQ File - pacbio_hdf5: - description: PacBio HDF5 File - sff: - description: >- - Standard flowgram format used to encode results - of pyrosequencing from the 454 Life Sciences platform. - srf: - description: >- - SRF is a generic format for DNA sequence data. - vcf: - description: >- - VCF file for storing gene sequence variations. - txt: - description: >- - Text file. - pxf: - description: >- - Phenopacket file. - other: - description: >- - Other format. diff --git a/tests/fixtures/example_models/minimal_model_anchors_invalid2.yaml b/tests/fixtures/example_models/minimal_model_anchors_invalid2.yaml deleted file mode 100644 index 395698a7..00000000 --- a/tests/fixtures/example_models/minimal_model_anchors_invalid2.yaml +++ /dev/null @@ -1,146 +0,0 @@ -id: https://w3id.org/Minimal-Model -name: Minimal-Model -version: 0.9.0 -prefixes: - linkml: https://w3id.org/linkml/ -imports: - - linkml:types - -default_range: string - -classes: - File: - aliases: ["file object"] - description: >- - A file is an object that contains information generated from a process, either an - Experiment or an Analysis. - slots: - - alias - - filename - - format - - size - - checksum - slot_usage: - alias: - required: true - identifier: true - filename: - required: true - format: - required: true - checksum: - required: true - size: - required: true - - Dataset: - description: >- - A Dataset is a collection of Files. - slots: - - alias - - files - slot_usage: - alias: - required: true - identifier: true - files: - required: true - multivalued: true - inlined: false - - Submission: - tree_root: true - description: >- - A grouping entity that represents information about one or more entities. - A submission can be considered as a set of inter-related (and inter-connected) - entities that represent a data submission to GHGA. - slots: - - files - - datasets - - slot_usage: - files: - required: true - multivalued: true - inlined: true - inlined_as_list: false - datasets: - required: true - multivalued: true - inlined: true - inlined_as_list: False - -slots: - alias: - description: The alias for an entity. - - description: - description: Description of an entity. - - files: - description: >- - The file associated with an entity. - range: File - - datasets: - description: >- - The dataset associated with an entity. - range: Dataset - - filename: - description: >- - The given filename. - - format: - description: >- - The format of the file: BAM, SAM, CRAM, BAI, etc. - range: file format enum - - size: - description: The size of a file in bytes. - range: integer - - checksum: - description: >- - A computed value which depends on the contents of a block of data and which is transmitted or - stored along with the data in order to detect corruption of the data. - The receiving system recomputes the checksum based upon the received data and compares this - value with the one sent with the data. If the two values are the same, the receiver has some confidence - that the data was received correctly. - -enums: - file format enum: - description: >- - Enum to capture file types. - permissible_values: - bam: - description: BAM File - complete_genomics: - description: Complete Genomics File - cram: - description: CRAM File - fasta: - description: Fasta File - fastq: - description: FastQ File - pacbio_hdf5: - description: PacBio HDF5 File - sff: - description: >- - Standard flowgram format used to encode results - of pyrosequencing from the 454 Life Sciences platform. - srf: - description: >- - SRF is a generic format for DNA sequence data. - vcf: - description: >- - VCF file for storing gene sequence variations. - txt: - description: >- - Text file. - pxf: - description: >- - Phenopacket file. - other: - description: >- - Other format. diff --git a/tests/fixtures/example_models/minimal_model_anchors_invalid3.yaml b/tests/fixtures/example_models/minimal_model_anchors_invalid3.yaml deleted file mode 100644 index 324c4d51..00000000 --- a/tests/fixtures/example_models/minimal_model_anchors_invalid3.yaml +++ /dev/null @@ -1,146 +0,0 @@ -id: https://w3id.org/Minimal-Model -name: Minimal-Model -version: 0.9.0 -prefixes: - linkml: https://w3id.org/linkml/ -imports: - - linkml:types - -default_range: string - -classes: - File: - aliases: ["file object"] - description: >- - A file is an object that contains information generated from a process, either an - Experiment or an Analysis. - slots: - - alias - - filename - - format - - size - - checksum - slot_usage: - alias: - required: true - identifier: true - filename: - required: true - format: - required: true - checksum: - required: true - size: - required: true - - Dataset: - description: >- - A Dataset is a collection of Files. - slots: - - alias - - files - slot_usage: - alias: - required: true - identifier: true - files: - required: true - multivalued: true - inlined: false - - Submission: - tree_root: true - description: >- - A grouping entity that represents information about one or more entities. - A submission can be considered as a set of inter-related (and inter-connected) - entities that represent a data submission to GHGA. - slots: - - files - - datasets - - slot_usage: - files: - required: true - multivalued: false - inlined: true - inlined_as_list: true - datasets: - required: true - multivalued: true - inlined: true - inlined_as_list: true - -slots: - alias: - description: The alias for an entity. - - description: - description: Description of an entity. - - files: - description: >- - The file associated with an entity. - range: File - - datasets: - description: >- - The dataset associated with an entity. - range: Dataset - - filename: - description: >- - The given filename. - - format: - description: >- - The format of the file: BAM, SAM, CRAM, BAI, etc. - range: file format enum - - size: - description: The size of a file in bytes. - range: integer - - checksum: - description: >- - A computed value which depends on the contents of a block of data and which is transmitted or - stored along with the data in order to detect corruption of the data. - The receiving system recomputes the checksum based upon the received data and compares this - value with the one sent with the data. If the two values are the same, the receiver has some confidence - that the data was received correctly. - -enums: - file format enum: - description: >- - Enum to capture file types. - permissible_values: - bam: - description: BAM File - complete_genomics: - description: Complete Genomics File - cram: - description: CRAM File - fasta: - description: Fasta File - fastq: - description: FastQ File - pacbio_hdf5: - description: PacBio HDF5 File - sff: - description: >- - Standard flowgram format used to encode results - of pyrosequencing from the 454 Life Sciences platform. - srf: - description: >- - SRF is a generic format for DNA sequence data. - vcf: - description: >- - VCF file for storing gene sequence variations. - txt: - description: >- - Text file. - pxf: - description: >- - Phenopacket file. - other: - description: >- - Other format. diff --git a/tests/fixtures/example_models/minimal_model_anchors_invalid4.yaml b/tests/fixtures/example_models/minimal_model_anchors_invalid4.yaml deleted file mode 100644 index a8fd9320..00000000 --- a/tests/fixtures/example_models/minimal_model_anchors_invalid4.yaml +++ /dev/null @@ -1,146 +0,0 @@ -id: https://w3id.org/Minimal-Model -name: Minimal-Model -version: 0.9.0 -prefixes: - linkml: https://w3id.org/linkml/ -imports: - - linkml:types - -default_range: string - -classes: - File: - aliases: ["file object"] - description: >- - A file is an object that contains information generated from a process, either an - Experiment or an Analysis. - slots: - - alias - - filename - - format - - size - - checksum - slot_usage: - alias: - required: true - identifier: true - filename: - required: true - format: - required: true - checksum: - required: true - size: - required: true - - Dataset: - description: >- - A Dataset is a collection of Files. - slots: - - alias - - files - slot_usage: - alias: - required: true - identifier: true - files: - required: true - multivalued: true - inlined: false - - Submission: - tree_root: true - description: >- - A grouping entity that represents information about one or more entities. - A submission can be considered as a set of inter-related (and inter-connected) - entities that represent a data submission to GHGA. - slots: - - files - - datasets - - slot_usage: - files: - required: false - multivalued: true - inlined: true - inlined_as_list: true - datasets: - required: true - multivalued: true - inlined: true - inlined_as_list: true - -slots: - alias: - description: The alias for an entity. - - description: - description: Description of an entity. - - files: - description: >- - The file associated with an entity. - range: File - - datasets: - description: >- - The dataset associated with an entity. - range: Dataset - - filename: - description: >- - The given filename. - - format: - description: >- - The format of the file: BAM, SAM, CRAM, BAI, etc. - range: file format enum - - size: - description: The size of a file in bytes. - range: integer - - checksum: - description: >- - A computed value which depends on the contents of a block of data and which is transmitted or - stored along with the data in order to detect corruption of the data. - The receiving system recomputes the checksum based upon the received data and compares this - value with the one sent with the data. If the two values are the same, the receiver has some confidence - that the data was received correctly. - -enums: - file format enum: - description: >- - Enum to capture file types. - permissible_values: - bam: - description: BAM File - complete_genomics: - description: Complete Genomics File - cram: - description: CRAM File - fasta: - description: Fasta File - fastq: - description: FastQ File - pacbio_hdf5: - description: PacBio HDF5 File - sff: - description: >- - Standard flowgram format used to encode results - of pyrosequencing from the 454 Life Sciences platform. - srf: - description: >- - SRF is a generic format for DNA sequence data. - vcf: - description: >- - VCF file for storing gene sequence variations. - txt: - description: >- - Text file. - pxf: - description: >- - Phenopacket file. - other: - description: >- - Other format. diff --git a/tests/fixtures/example_models/minimal_model_root_class_missing1.yaml b/tests/fixtures/example_models/minimal_model_root_class_missing1.yaml deleted file mode 100644 index f74885dc..00000000 --- a/tests/fixtures/example_models/minimal_model_root_class_missing1.yaml +++ /dev/null @@ -1,99 +0,0 @@ -id: https://w3id.org/Minimal-Model -name: Minimal-Model -version: 0.9.0 -prefixes: - linkml: https://w3id.org/linkml/ -imports: - - linkml:types - -default_range: string - -classes: - File: - aliases: ["file object"] - description: >- - A file is an object that contains information generated from a process, either an - Experiment or an Analysis. - slots: - - alias - - filename - - format - - size - - checksum - slot_usage: - alias: - required: true - identifier: true - filename: - required: true - format: - required: true - checksum: - required: true - size: - required: true - -slots: - alias: - description: The alias for an entity. - - description: - description: Description of an entity. - - filename: - description: >- - The given filename. - - format: - description: >- - The format of the file: BAM, SAM, CRAM, BAI, etc. - range: file format enum - - size: - description: The size of a file in bytes. - range: integer - - checksum: - description: >- - A computed value which depends on the contents of a block of data and which is transmitted or - stored along with the data in order to detect corruption of the data. - The receiving system recomputes the checksum based upon the received data and compares this - value with the one sent with the data. If the two values are the same, the receiver has some confidence - that the data was received correctly. - -enums: - file format enum: - description: >- - Enum to capture file types. - permissible_values: - bam: - description: BAM File - complete_genomics: - description: Complete Genomics File - cram: - description: CRAM File - fasta: - description: Fasta File - fastq: - description: FastQ File - pacbio_hdf5: - description: PacBio HDF5 File - sff: - description: >- - Standard flowgram format used to encode results - of pyrosequencing from the 454 Life Sciences platform. - srf: - description: >- - SRF is a generic format for DNA sequence data. - vcf: - description: >- - VCF file for storing gene sequence variations. - txt: - description: >- - Text file. - pxf: - description: >- - Phenopacket file. - other: - description: >- - Other format. diff --git a/tests/fixtures/example_models/minimal_model_root_class_missing2.yaml b/tests/fixtures/example_models/minimal_model_root_class_missing2.yaml deleted file mode 100644 index 25c94a00..00000000 --- a/tests/fixtures/example_models/minimal_model_root_class_missing2.yaml +++ /dev/null @@ -1,121 +0,0 @@ -id: https://w3id.org/Minimal-Model -name: Minimal-Model -version: 0.9.0 -prefixes: - linkml: https://w3id.org/linkml/ -imports: - - linkml:types - -default_range: string - -classes: - File: - aliases: ["file object"] - description: >- - A file is an object that contains information generated from a process, either an - Experiment or an Analysis. - slots: - - alias - - filename - - format - - size - - checksum - slot_usage: - alias: - required: true - identifier: true - filename: - required: true - format: - required: true - checksum: - required: true - size: - required: true - - Submission: - description: >- - A grouping entity that represents information about one or more entities. - A submission can be considered as a set of inter-related (and inter-connected) - entities that represent a data submission to GHGA. - slots: - - files - - slot_usage: - files: - description: >- - Information about one or more File entities associated with this submission. - required: true - multivalued: true - inlined: true - inlined_as_list: true - -slots: - alias: - description: The alias for an entity. - - description: - description: Description of an entity. - - files: - description: >- - The file associated with an entity. - range: File - - filename: - description: >- - The given filename. - - format: - description: >- - The format of the file: BAM, SAM, CRAM, BAI, etc. - range: file format enum - - size: - description: The size of a file in bytes. - range: integer - - checksum: - description: >- - A computed value which depends on the contents of a block of data and which is transmitted or - stored along with the data in order to detect corruption of the data. - The receiving system recomputes the checksum based upon the received data and compares this - value with the one sent with the data. If the two values are the same, the receiver has some confidence - that the data was received correctly. - -enums: - file format enum: - description: >- - Enum to capture file types. - permissible_values: - bam: - description: BAM File - complete_genomics: - description: Complete Genomics File - cram: - description: CRAM File - fasta: - description: Fasta File - fastq: - description: FastQ File - pacbio_hdf5: - description: PacBio HDF5 File - sff: - description: >- - Standard flowgram format used to encode results - of pyrosequencing from the 454 Life Sciences platform. - srf: - description: >- - SRF is a generic format for DNA sequence data. - vcf: - description: >- - VCF file for storing gene sequence variations. - txt: - description: >- - Text file. - pxf: - description: >- - Phenopacket file. - other: - description: >- - Other format. diff --git a/tests/fixtures/load/__init__.py b/tests/fixtures/load/__init__.py deleted file mode 100644 index 3f457cfc..00000000 --- a/tests/fixtures/load/__init__.py +++ /dev/null @@ -1,16 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Fixtures that are used in loader API tests""" diff --git a/tests/fixtures/load/config.py b/tests/fixtures/load/config.py deleted file mode 100644 index 68e6a373..00000000 --- a/tests/fixtures/load/config.py +++ /dev/null @@ -1,47 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -from pathlib import Path -from typing import Optional, Union - -import yaml -from pydantic_settings import BaseSettings - -from metldata.load.config import ArtifactLoaderAPIConfig -from tests.fixtures.load.utils import BASE_DIR - -TEST_CONFIG_YAML = BASE_DIR / "test_config.yaml" - - -def get_config( - sources: Optional[list[Union[BaseSettings, dict]]] = None, - default_config_yaml: Path = TEST_CONFIG_YAML, -) -> ArtifactLoaderAPIConfig: - """Merges parameters from the default TEST_CONFIG_YAML with params inferred - from testcontainers.""" - sources_dict: dict[str, object] = {} - - if sources is not None: - for source in sources: - if isinstance(source, BaseSettings): - sources_dict.update(**source.model_dump()) - else: - sources_dict.update(**source) - - with open(default_config_yaml, encoding="UTF-8") as file: - default_config = yaml.safe_load(file) - - return ArtifactLoaderAPIConfig(**default_config, **sources_dict) # type: ignore diff --git a/tests/fixtures/load/example_metadata/embedded_dataset.json b/tests/fixtures/load/example_metadata/embedded_dataset.json deleted file mode 100644 index 9f52c606..00000000 --- a/tests/fixtures/load/example_metadata/embedded_dataset.json +++ /dev/null @@ -1,189 +0,0 @@ -{ - "embedded_dataset": [ - { - "accession": "DATASET_1", - "alias": "DS_1", - "data_access_policy": { - "accession": "ACCESS_POLICY_1", - "alias": "DAP_1", - "data_access_committee": { - "accession": "DAC_1", - "alias": "DAC_1", - "email": "dac@dac.dac", - "institute": "The DAC institute" - }, - "data_use_modifiers": [ - "clinical care use" - ], - "data_use_permission": "disease specific research", - "description": "A Data Access Policy 1", - "name": "DAP 1", - "policy_text": "This is a very permissible DAP", - "policy_url": "http://some/policy" - }, - "description": "An interesting dataset A", - "files": [ - "STUDY_FILE_1", - "STUDY_FILE_2", - "STUDY_FILE_3", - "STUDY_FILE_4" - ], - "sample_files": [], - "samples": [], - "studies": [ - { - "accession": "STUDY_1", - "affiliations": [ - "Some Institute", - "Some other Institute" - ], - "alias": "STUDY_A", - "attributes": [ - { - "key": "budget", - "value": "3.5M" - }, - { - "key": "funding", - "value": "EU" - } - ], - "description": "A study that is The Test Study", - "title": "The Test Study", - "type": "SYNTHETIC_GENOMICS" - } - ], - "study_files": [ - { - "accession": "STUDY_FILE_1", - "alias": "FILE_1", - "checksum": "299585554663327257bd92a624760a3cbb009804a910ba03fc977d297d62ec7f", - "checksum_type": "SHA256", - "dataset": "DATASET_1", - "format": "FASTQ", - "name": "STUDY_FILE_1.fastq.gz", - "size": 92161, - "study": { - "accession": "STUDY_1", - "affiliations": [ - "Some Institute", - "Some other Institute" - ], - "alias": "STUDY_A", - "attributes": [ - { - "key": "budget", - "value": "3.5M" - }, - { - "key": "funding", - "value": "EU" - } - ], - "description": "A study that is The Test Study", - "title": "The Test Study", - "type": "SYNTHETIC_GENOMICS" - } - }, - { - "accession": "STUDY_FILE_2", - "alias": "FILE_2", - "checksum": "cd230d8cf3bcdd10292a54cccc5c168dfec1d51b416ddc5102cbea259f3562bd", - "checksum_type": "SHA256", - "dataset": "DATASET_1", - "format": "FASTQ", - "name": "STUDY_FILE_2.fastq", - "size": 92161, - "study": { - "accession": "STUDY_1", - "affiliations": [ - "Some Institute", - "Some other Institute" - ], - "alias": "STUDY_A", - "attributes": [ - { - "key": "budget", - "value": "3.5M" - }, - { - "key": "funding", - "value": "EU" - } - ], - "description": "A study that is The Test Study", - "title": "The Test Study", - "type": "SYNTHETIC_GENOMICS" - } - }, - { - "accession": "STUDY_FILE_3", - "alias": "FILE_3", - "checksum": "cd230d8cf3bcdd10292a54cccc5c168dfec1d51b416ddc5102cbea259f3562bd", - "checksum_type": "SHA256", - "dataset": "DATASET_1", - "format": "FASTQ", - "name": "STUDY_FILE_3.gz", - "size": 92161, - "study": { - "accession": "STUDY_1", - "affiliations": [ - "Some Institute", - "Some other Institute" - ], - "alias": "STUDY_A", - "attributes": [ - { - "key": "budget", - "value": "3.5M" - }, - { - "key": "funding", - "value": "EU" - } - ], - "description": "A study that is The Test Study", - "title": "The Test Study", - "type": "SYNTHETIC_GENOMICS" - } - }, - { - "accession": "STUDY_FILE_4", - "alias": "FILE_4", - "checksum": "cd230d8cf3bcdd10292a54cccc5c168dfec1d51b416ddc5102cbea259f3562bd", - "checksum_type": "SHA256", - "dataset": "DATASET_1", - "format": "FASTQ", - "name": "STUDY_FILE_4", - "size": 92161, - "study": { - "accession": "STUDY_1", - "affiliations": [ - "Some Institute", - "Some other Institute" - ], - "alias": "STUDY_A", - "attributes": [ - { - "key": "budget", - "value": "3.5M" - }, - { - "key": "funding", - "value": "EU" - } - ], - "description": "A study that is The Test Study", - "title": "The Test Study", - "type": "SYNTHETIC_GENOMICS" - } - } - ], - "title": "The A dataset", - "types": [ - "A Type", - "Another Type" - ] - } - ] -} diff --git a/tests/fixtures/load/example_metadata/embedded_public.json b/tests/fixtures/load/example_metadata/embedded_public.json deleted file mode 100644 index ef28ff75..00000000 --- a/tests/fixtures/load/example_metadata/embedded_public.json +++ /dev/null @@ -1,399 +0,0 @@ -{ - "payload": { - "annotation": { - "accession_map": { - "analyses": {}, - "analysis_process_output_files": {}, - "analysis_processes": {}, - "biospecimens": {}, - "conditions": {}, - "data_access_committees": { - "DAC_1": "DAC_1" - }, - "data_access_policies": { - "DAP_1": "ACCESS_POLICY_1" - }, - "datasets": { - "DS_1": "DATASET_1", - "DS_2": "DATASET_2" - }, - "individuals": {}, - "library_preparation_protocols": {}, - "publications": {}, - "sample_files": {}, - "samples": {}, - "sequencing_experiments": {}, - "sequencing_process_files": {}, - "sequencing_processes": {}, - "sequencing_protocols": {}, - "studies": { - "STUDY_A": "STUDY_1" - }, - "study_files": { - "FILE_1": "STUDY_FILE_1", - "FILE_2": "STUDY_FILE_2", - "FILE_3": "STUDY_FILE_3" - }, - "trios": {} - } - }, - "content": { - "analyses": [], - "analysis_process_output_files": [], - "analysis_processes": [], - "biospecimens": [], - "conditions": [], - "data_access_committees": [ - { - "accession": "DAC_1", - "alias": "DAC_1", - "email": "dac@dac.dac", - "institute": "The DAC institute" - } - ], - "data_access_policies": [ - { - "accession": "ACCESS_POLICY_1", - "alias": "DAP_1", - "data_access_committee": "DAC_1", - "data_use_modifiers": [ - "clinical care use" - ], - "data_use_permission": "disease specific research", - "description": "A Data Access Policy 1", - "name": "DAP 1", - "policy_text": "This is a very permissible DAP", - "policy_url": "http://some/policy" - } - ], - "datasets": [ - { - "accession": "DATASET_1", - "alias": "DS_1", - "data_access_policy": "ACCESS_POLICY_1", - "description": "An interesting dataset A", - "files": [ - "STUDY_FILE_2", - "STUDY_FILE_1" - ], - "sample_files": [], - "samples": [], - "studies": [ - "STUDY_1" - ], - "study_files": [ - "STUDY_FILE_2", - "STUDY_FILE_1" - ], - "title": "The A dataset", - "types": [ - "A Type", - "Another Type" - ] - }, - { - "accession": "DATASET_2", - "alias": "DS_2", - "data_access_policy": "ACCESS_POLICY_1", - "description": "An interesting dataset B", - "files": [ - "STUDY_FILE_3" - ], - "sample_files": [], - "samples": [], - "studies": [ - "STUDY_1" - ], - "study_files": [ - "STUDY_FILE_3" - ], - "title": "The B dataset", - "types": [ - "And another Type" - ] - } - ], - "embedded_dataset": [ - { - "accession": "DATASET_1", - "alias": "DS_1", - "data_access_policy": { - "accession": "ACCESS_POLICY_1", - "alias": "DAP_1", - "data_access_committee": { - "accession": "DAC_1", - "alias": "DAC_1", - "email": "dac@dac.dac", - "institute": "The DAC institute" - }, - "data_use_modifiers": [ - "clinical care use" - ], - "data_use_permission": "disease specific research", - "description": "A Data Access Policy 1", - "name": "DAP 1", - "policy_text": "This is a very permissible DAP", - "policy_url": "http://some/policy" - }, - "description": "An interesting dataset A", - "files": [ - "STUDY_FILE_1", - "STUDY_FILE_2" - ], - "sample_files": [], - "samples": [], - "studies": [ - { - "accession": "STUDY_1", - "affiliations": [ - "Some Institute", - "Some other Institute" - ], - "alias": "STUDY_A", - "attributes": [ - { - "key": "budget", - "value": "3.5M" - }, - { - "key": "funding", - "value": "EU" - } - ], - "description": "A study that is The Test Study", - "title": "The Test Study", - "type": "SYNTHETIC_GENOMICS" - } - ], - "study_files": [ - { - "accession": "STUDY_FILE_1", - "alias": "FILE_1", - "checksum": "299585554663327257bd92a624760a3cbb009804a910ba03fc977d297d62ec7f", - "checksum_type": "SHA256", - "dataset": "DATASET_1", - "format": "FASTQ", - "name": "STUDY_FILE_1.fastq.gz", - "size": 92161, - "study": { - "accession": "STUDY_1", - "affiliations": [ - "Some Institute", - "Some other Institute" - ], - "alias": "STUDY_A", - "attributes": [ - { - "key": "budget", - "value": "3.5M" - }, - { - "key": "funding", - "value": "EU" - } - ], - "description": "A study that is The Test Study", - "title": "The Test Study", - "type": "SYNTHETIC_GENOMICS" - } - }, - { - "accession": "STUDY_FILE_2", - "alias": "FILE_2", - "checksum": "cd230d8cf3bcdd10292a54cccc5c168dfec1d51b416ddc5102cbea259f3562bd", - "checksum_type": "SHA256", - "dataset": "DATASET_1", - "format": "FASTQ", - "name": "STUDY_FILE_2.fastq.gz", - "size": 92161, - "study": { - "accession": "STUDY_1", - "affiliations": [ - "Some Institute", - "Some other Institute" - ], - "alias": "STUDY_A", - "attributes": [ - { - "key": "budget", - "value": "3.5M" - }, - { - "key": "funding", - "value": "EU" - } - ], - "description": "A study that is The Test Study", - "title": "The Test Study", - "type": "SYNTHETIC_GENOMICS" - } - } - ], - "title": "The A dataset", - "types": [ - "A Type", - "Another Type" - ] - }, - { - "accession": "DATASET_2", - "alias": "DS_2", - "data_access_policy": { - "accession": "ACCESS_POLICY_1", - "alias": "DAP_1", - "data_access_committee": { - "accession": "DAC_1", - "alias": "DAC_1", - "email": "dac@dac.dac", - "institute": "The DAC institute" - }, - "data_use_modifiers": [ - "clinical care use" - ], - "data_use_permission": "disease specific research", - "description": "A Data Access Policy 1", - "name": "DAP 1", - "policy_text": "This is a very permissible DAP", - "policy_url": "http://some/policy" - }, - "description": "An interesting dataset B", - "files": [ - "STUDY_FILE_3" - ], - "sample_files": [], - "samples": [], - "studies": [ - { - "accession": "STUDY_1", - "affiliations": [ - "Some Institute", - "Some other Institute" - ], - "alias": "STUDY_A", - "attributes": [ - { - "key": "budget", - "value": "3.5M" - }, - { - "key": "funding", - "value": "EU" - } - ], - "description": "A study that is The Test Study", - "title": "The Test Study", - "type": "SYNTHETIC_GENOMICS" - } - ], - "study_files": [ - { - "accession": "STUDY_FILE_3", - "alias": "FILE_3", - "checksum": "fec3b1b125f5270ff644c7e197494e8f0f20d8d5666065891cdfa3a9b6afd088", - "checksum_type": "SHA256", - "dataset": "DATASET_2", - "format": "FASTQ", - "name": "STUDY_FILE_3.fastq.gz", - "size": 92161, - "study": { - "accession": "STUDY_1", - "affiliations": [ - "Some Institute", - "Some other Institute" - ], - "alias": "STUDY_A", - "attributes": [ - { - "key": "budget", - "value": "3.5M" - }, - { - "key": "funding", - "value": "EU" - } - ], - "description": "A study that is The Test Study", - "title": "The Test Study", - "type": "SYNTHETIC_GENOMICS" - } - } - ], - "title": "The B dataset", - "types": [ - "And another Type" - ] - } - ], - "individuals": [], - "library_preparation_protocols": [], - "publications": [], - "sample_files": [], - "samples": [], - "sequencing_experiments": [], - "sequencing_process_files": [], - "sequencing_processes": [], - "sequencing_protocols": [], - "studies": [ - { - "accession": "STUDY_1", - "affiliations": [ - "Some Institute", - "Some other Institute" - ], - "alias": "STUDY_A", - "attributes": [ - { - "key": "budget", - "value": "3.5M" - }, - { - "key": "funding", - "value": "EU" - } - ], - "description": "A study that is The Test Study", - "title": "The Test Study", - "type": "SYNTHETIC_GENOMICS" - } - ], - "study_files": [ - { - "accession": "STUDY_FILE_1", - "alias": "FILE_1", - "checksum": "299585554663327257bd92a624760a3cbb009804a910ba03fc977d297d62ec7f", - "checksum_type": "SHA256", - "dataset": "DATASET_1", - "format": "FASTQ", - "name": "STUDY_FILE_1.fastq.gz", - "size": 92161, - "study": "STUDY_1" - }, - { - "accession": "STUDY_FILE_2", - "alias": "FILE_2", - "checksum": "cd230d8cf3bcdd10292a54cccc5c168dfec1d51b416ddc5102cbea259f3562bd", - "checksum_type": "SHA256", - "dataset": "DATASET_1", - "format": "FASTQ", - "name": "STUDY_FILE_2.fastq.gz", - "size": 92161, - "study": "STUDY_1" - }, - { - "accession": "STUDY_FILE_3", - "alias": "FILE_3", - "checksum": "fec3b1b125f5270ff644c7e197494e8f0f20d8d5666065891cdfa3a9b6afd088", - "checksum_type": "SHA256", - "dataset": "DATASET_2", - "format": "FASTQ", - "name": "STUDY_FILE_3.fastq.gz", - "size": 92161, - "study": "STUDY_1" - } - ], - "trios": [] - }, - "submission_id": "example_submission_id" - }, - "type_": "embedded_public" -} diff --git a/tests/fixtures/load/example_models/artifact_infos.json b/tests/fixtures/load/example_models/artifact_infos.json deleted file mode 100644 index f7ae9664..00000000 --- a/tests/fixtures/load/example_models/artifact_infos.json +++ /dev/null @@ -1,2571 +0,0 @@ -[ - { - "description": "embedded_public", - "name": "embedded_public", - "resource_classes": { - "Analysis": { - "anchor_point": { - "identifier_slot": "accession", - "root_slot": "analyses", - "target_class": "Analysis" - }, - "description": "An Analysis is a data transformation that transforms input data to output data. The workflow used to achieve this transformation and the individual steps are also captured.", - "json_schema": { - "$defs": {}, - "$schema": "http://json-schema.org/draft-07/schema#", - "additionalProperties": false, - "description": "An Analysis is a data transformation that transforms input data to output data. The workflow used to achieve this transformation and the individual steps are also captured.", - "properties": { - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "alias": { - "description": "An alias uniquely identifying this Analysis entitiy.", - "type": "string" - }, - "description": { - "description": "Describing how an Analysis was carried out. (e.g.: computational tools, settings, etc.).", - "type": "string" - }, - "reference_chromosome": { - "description": "The reference chromosome used for this Analysis.", - "type": "string" - }, - "reference_genome": { - "description": "A published genetic sequence that is used as a reference sequence against which other sequences are compared. Reference genome(s) or annotation(s) used for prior analyses (eg: GRCh38.p13).", - "type": "string" - }, - "title": { - "description": "The title that describes an entity.", - "type": "string" - }, - "type": { - "description": "The type of the Analysis. Either Reference Alignment (BAM) or Sequence Variation (VCF)", - "type": "string" - } - }, - "required": [ - "reference_genome", - "reference_chromosome", - "accession", - "alias" - ], - "title": "Analysis", - "type": "object" - }, - "name": "Analysis" - }, - "AnalysisProcess": { - "anchor_point": { - "identifier_slot": "accession", - "root_slot": "analysis_processes", - "target_class": "AnalysisProcess" - }, - "description": null, - "json_schema": { - "$defs": {}, - "$schema": "http://json-schema.org/draft-07/schema#", - "additionalProperties": false, - "description": "", - "properties": { - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "alias": { - "description": "The alias for an entity at the time of submission.", - "type": "string" - }, - "analysis": { - "description": "The Analysis the AnalysisProcess was part of", - "type": "string" - }, - "sample_input_files": { - "description": "The SampleFile associated used as an input for an entity.", - "items": { - "type": "string" - }, - "type": "array" - }, - "sequencing_process_input_files": { - "description": "The SequencingProcessFile associated used as an input for an entity.", - "items": { - "type": "string" - }, - "type": "array" - }, - "study_input_files": { - "description": "The StudyFile associated used as an input for an entity.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "required": [ - "analysis", - "study_input_files", - "sample_input_files", - "sequencing_process_input_files", - "accession", - "alias" - ], - "title": "AnalysisProcess", - "type": "object" - }, - "name": "AnalysisProcess" - }, - "AnalysisProcessOutputFile": { - "anchor_point": { - "identifier_slot": "accession", - "root_slot": "analysis_process_output_files", - "target_class": "AnalysisProcessOutputFile" - }, - "description": "A AnalysisProcessOutputFile is a File that is associated as an output file with an AnalysisProcess.", - "json_schema": { - "$defs": { - "FileFormatEnum": { - "description": "Enum to capture file types.", - "enum": [ - "AGP", - "BAI", - "BAM", - "BCF", - "BED", - "CRAI", - "CRAM", - "CSV", - "FASTA", - "FASTQ", - "GFF", - "HDF5", - "INFO", - "JSON", - "MD", - "OTHER", - "PED", - "SAM", - "SFF", - "SRF", - "TAB", - "TABIX", - "TSV", - "TXT", - "VCF", - "WIG" - ], - "title": "FileFormatEnum", - "type": "string" - } - }, - "$schema": "http://json-schema.org/draft-07/schema#", - "additionalProperties": false, - "description": "A AnalysisProcessOutputFile is a File that is associated as an output file with an AnalysisProcess.", - "properties": { - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "alias": { - "description": "The alias for an entity at the time of submission.", - "type": "string" - }, - "analysis_process": { - "description": "The AnalysisProcess associated with an entity.", - "type": "string" - }, - "checksum": { - "description": "A computed value which depends on the contents of a block of data and which is transmitted or stored along with the data in order to detect corruption of the data. The receiving system recomputes the checksum based upon the received data and compares this value with the one sent with the data. If the two values are the same, the receiver has some confidence that the data was received correctly.", - "type": "string" - }, - "checksum_type": { - "description": "The type of algorithm used to generate the checksum of a file.", - "type": "string" - }, - "dataset": { - "description": "The Dataset associated with an entity.", - "type": "string" - }, - "format": { - "$ref": "#/$defs/FileFormatEnum", - "description": "The format of the file: BAM, SAM, CRAM, BAI, etc." - }, - "name": { - "description": "The given filename.", - "type": "string" - }, - "size": { - "description": "The size of a file in bytes.", - "type": "integer" - } - }, - "required": [ - "analysis_process", - "accession", - "name", - "format", - "size", - "checksum", - "checksum_type", - "dataset", - "alias" - ], - "title": "AnalysisProcessOutputFile", - "type": "object" - }, - "name": "AnalysisProcessOutputFile" - }, - "Biospecimen": { - "anchor_point": { - "identifier_slot": "accession", - "root_slot": "biospecimens", - "target_class": "Biospecimen" - }, - "description": "A Biospecimen is any natural material taken from a biological entity (usually a human) for testing, diagnostics, treatment, or research purposes. The Biospecimen is linked to the Individual from which the Biospecimen is derived.", - "json_schema": { - "$defs": { - "VitalStatusEnum": { - "description": "Enum to capture the vital status of an individual.", - "enum": [ - "ALIVE", - "DECEASED", - "UNKNOWN" - ], - "title": "VitalStatusEnum", - "type": "string" - } - }, - "$schema": "http://json-schema.org/draft-07/schema#", - "additionalProperties": false, - "description": "A Biospecimen is any natural material taken from a biological entity (usually a human) for testing, diagnostics, treatment, or research purposes. The Biospecimen is linked to the Individual from which the Biospecimen is derived.", - "properties": { - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "alias": { - "description": "The alias for an entity at the time of submission.", - "type": "string" - }, - "description": { - "description": "Description of an entity.", - "type": "string" - }, - "individual": { - "description": "The Individual entity from which this Biospecimen was derived.", - "type": "string" - }, - "isolation": { - "description": "Method or device employed for collecting/isolating a biospecimen or a sample.", - "pattern": "SNOMED:.*", - "type": "string" - }, - "name": { - "description": "The name for an entity.", - "type": "string" - }, - "storage": { - "description": "Methods by which a biospecimen or a sample is stored (e.g. frozen in liquid nitrogen).", - "type": "string" - }, - "tissue": { - "pattern": "BTO:.*", - "type": "string" - }, - "type": { - "description": "The type of Biospecimen.", - "type": "string" - }, - "vital_status_at_sampling": { - "$ref": "#/$defs/VitalStatusEnum", - "description": "Vital Status of an Individual at the point of sampling (eg:'Alive', 'Deceased')." - } - }, - "required": [ - "individual", - "tissue", - "accession", - "alias" - ], - "title": "Biospecimen", - "type": "object" - }, - "name": "Biospecimen" - }, - "Condition": { - "anchor_point": { - "identifier_slot": "accession", - "root_slot": "conditions", - "target_class": "Condition" - }, - "description": "An condition that is linked to comparable samples.", - "json_schema": { - "$defs": { - "Attribute": { - "additionalProperties": false, - "description": "A key/value pair that further characterizes an entity.", - "properties": { - "key": { - "description": "The key for an attribute.", - "type": "string" - }, - "key_type": { - "description": "A semantic type that characterizes the attribute key. Usually this is a term from an ontology. For example, 'MAXO:0000616' indicates that the attribute is a measurement of oxygen saturation in the blood.", - "type": "string" - }, - "value": { - "description": "The value for an attribute. Usually this is a numerical value (without the units).", - "type": "string" - }, - "value_type": { - "description": "The value_type that characterizes the attribute value. Usually this is a term from an ontology that describes how to interpret the value. For example, 'SIO:001413' indicates that the value is to be interpreted as a percentage.", - "type": "string" - } - }, - "required": [ - "key", - "value" - ], - "title": "Attribute", - "type": "object" - }, - "CaseControlStatusEnum": { - "description": "Enum to capture whether a condition corresponds to a case or a control condition.", - "enum": [ - "NEITHER_CASE_OR_CONTROL_STATUS", - "PROBABLE_CASE_STATUS", - "PROBABLE_CONTROL_STATUS", - "TRUE_CASE_STATUS", - "TRUE_CONTROL_STATUS", - "UNABLE_TO_ASSESS_CASE_OR_CONTROL_STATUS" - ], - "title": "CaseControlStatusEnum", - "type": "string" - }, - "DiseaseOrHealthyEnum": { - "description": "Enum to capture whether a condition corresponds to a disease or a healthy state.", - "enum": [ - "DISEASE", - "HEALTHY", - "NOT_APPLICABLE" - ], - "title": "DiseaseOrHealthyEnum", - "type": "string" - }, - "MutantOrWildtypeEnum": { - "description": "Enum to capture whether a condition corresponds to a mutant or a wildtype.", - "enum": [ - "MUTANT", - "WILDTYPE", - "NOT_APPLICABLE" - ], - "title": "MutantOrWildtypeEnum", - "type": "string" - } - }, - "$schema": "http://json-schema.org/draft-07/schema#", - "additionalProperties": false, - "description": "An condition that is linked to comparable samples.", - "properties": { - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "alias": { - "description": "The alias for an entity at the time of submission.", - "type": "string" - }, - "attributes": { - "description": "Key/value pairs corresponding to an entity.", - "items": { - "$ref": "#/$defs/Attribute" - }, - "type": "array" - }, - "case_control_status": { - "$ref": "#/$defs/CaseControlStatusEnum", - "description": "Whether a condition corresponds to a treatment or a control." - }, - "description": { - "description": "Description of an entity.", - "type": "string" - }, - "disease_or_healthy": { - "$ref": "#/$defs/DiseaseOrHealthyEnum", - "description": "Whether a condition corresponds to a disease or a healthy state." - }, - "mutant_or_wildtype": { - "$ref": "#/$defs/MutantOrWildtypeEnum", - "description": "Whether a condition corresponds to a mutant or a wildtype." - }, - "name": { - "description": "The name for an entity.", - "type": "string" - }, - "study": { - "description": "The study associated with an entity.", - "type": "string" - }, - "title": { - "description": "The title that describes an entity.", - "type": "string" - } - }, - "required": [ - "description", - "name", - "disease_or_healthy", - "case_control_status", - "mutant_or_wildtype", - "study", - "accession", - "alias" - ], - "title": "Condition", - "type": "object" - }, - "name": "Condition" - }, - "DataAccessCommittee": { - "anchor_point": { - "identifier_slot": "accession", - "root_slot": "data_access_committees", - "target_class": "DataAccessCommittee" - }, - "description": "A group of members that are delegated to grant access to one or more datasets after ensuring the minimum criteria for data sharing has been met, and request for data use does not raise ethical and/or legal concerns.", - "json_schema": { - "$defs": {}, - "$schema": "http://json-schema.org/draft-07/schema#", - "additionalProperties": false, - "description": "A group of members that are delegated to grant access to one or more datasets after ensuring the minimum criteria for data sharing has been met, and request for data use does not raise ethical and/or legal concerns.", - "properties": { - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "alias": { - "description": "The alias for an entity at the time of submission.", - "type": "string" - }, - "email": { - "description": "Email of a person.", - "type": "string" - }, - "institute": { - "description": "The institute a person is affiliated with.", - "type": "string" - } - }, - "required": [ - "email", - "institute", - "accession", - "alias" - ], - "title": "DataAccessCommittee", - "type": "object" - }, - "name": "DataAccessCommittee" - }, - "DataAccessPolicy": { - "anchor_point": { - "identifier_slot": "accession", - "root_slot": "data_access_policies", - "target_class": "DataAccessPolicy" - }, - "description": "A Data Access Policy specifies under which circumstances, legal or otherwise, a user can have access to one or more Datasets belonging to one or more Studies.", - "json_schema": { - "$defs": { - "DataUseModifierEnum": { - "description": "Permitted values for data use modifier", - "enum": [ - "clinical care use", - "return to database or resource", - "institution specific restriction", - "project specific restriction", - "user specific restriction", - "time limit on use", - "publication moratorium", - "geographical restriction", - "ethics approval required", - "collaboration required", - "publication required", - "not for profit, non commercial use only", - "non-commercial use only", - "not for profit organisation use only", - "genetic studies only", - "no general methods research", - "research specific restrictions", - "population origins or ancestry research prohibited" - ], - "title": "DataUseModifierEnum", - "type": "string" - }, - "DataUsePermissionEnum": { - "description": "Permitted values for data use permission", - "enum": [ - "general research use", - "health or medical or biomedical research", - "disease specific research", - "no restriction", - "population origins or ancestry research only" - ], - "title": "DataUsePermissionEnum", - "type": "string" - } - }, - "$schema": "http://json-schema.org/draft-07/schema#", - "additionalProperties": false, - "description": "A Data Access Policy specifies under which circumstances, legal or otherwise, a user can have access to one or more Datasets belonging to one or more Studies.", - "properties": { - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "alias": { - "description": "The alias for an entity at the time of submission.", - "type": "string" - }, - "data_access_committee": { - "description": "The Data Access Committee linked to this policy.", - "type": "string" - }, - "data_use_modifiers": { - "description": "Modifier for Data use permission associated with a policy. Should be descendants of 'DUO:0000017 data use modifier'", - "items": { - "$ref": "#/$defs/DataUseModifierEnum" - }, - "type": "array" - }, - "data_use_permission": { - "$ref": "#/$defs/DataUsePermissionEnum", - "description": "Data use permission associated with a policy. Typically one or more terms from DUO and should be descendants of 'DUO:0000001 data use permission'." - }, - "description": { - "description": "A short description for the Data Access Policy.", - "type": "string" - }, - "name": { - "description": "A name for the Data Access Policy.", - "type": "string" - }, - "policy_text": { - "description": "The terms of data use and policy verbiage should be captured here.", - "type": "string" - }, - "policy_url": { - "description": "URL for the policy, if available. This is useful if the terms of the policy is made available online at a resolvable URL.", - "type": "string" - } - }, - "required": [ - "name", - "description", - "policy_text", - "data_access_committee", - "data_use_permission", - "accession", - "alias" - ], - "title": "DataAccessPolicy", - "type": "object" - }, - "name": "DataAccessPolicy" - }, - "Dataset": { - "anchor_point": { - "identifier_slot": "accession", - "root_slot": "datasets", - "target_class": "Dataset" - }, - "description": "A Dataset is a collection of Files that is prepared for distribution and is tied to a Data Access Policy.", - "json_schema": { - "$defs": {}, - "$schema": "http://json-schema.org/draft-07/schema#", - "additionalProperties": false, - "description": "A Dataset is a collection of Files that is prepared for distribution and is tied to a Data Access Policy.", - "properties": { - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "alias": { - "description": "The alias for an entity at the time of submission.", - "type": "string" - }, - "data_access_policy": { - "description": "The Data Access Policy that applies to this Dataset.", - "type": "string" - }, - "description": { - "description": "Description of an entity.", - "type": "string" - }, - "files": { - "description": "All files associated with the dataset.", - "items": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "string" - } - ] - }, - "type": "array" - }, - "sample_files": { - "description": "The SampleFiles associated with an entity.", - "items": { - "type": "string" - }, - "type": "array" - }, - "samples": { - "description": "The samples associated with an entity.", - "items": { - "type": "string" - }, - "type": "array" - }, - "studies": { - "description": "The study associated with an entity.", - "items": { - "type": "string" - }, - "type": "array" - }, - "study_files": { - "description": "The StudyFiles associated with an entity.", - "items": { - "type": "string" - }, - "type": "array" - }, - "title": { - "description": "A title for the submitted Dataset.", - "type": "string" - }, - "types": { - "description": "The type of a dataset.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "required": [ - "title", - "description", - "types", - "data_access_policy", - "accession", - "study_files", - "studies", - "sample_files", - "samples", - "files", - "alias" - ], - "title": "Dataset", - "type": "object" - }, - "name": "Dataset" - }, - "EmbeddedDataset": { - "anchor_point": { - "identifier_slot": "accession", - "root_slot": "embedded_dataset", - "target_class": "EmbeddedDataset" - }, - "description": "A Dataset is a collection of Files that is prepared for distribution and is tied to a Data Access Policy.", - "json_schema": { - "$defs": { - "EmbeddedDataAccessPolicy": { - "additionalProperties": false, - "description": "A Data Access Policy specifies under which circumstances, legal or otherwise, a user can have access to one or more Datasets belonging to one or more Studies.", - "properties": { - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "alias": { - "description": "The alias for an entity at the time of submission.", - "type": "string" - }, - "data_access_committee": { - "$ref": "#/$defs/DataAccessCommittee", - "description": "The Data Access Committee linked to this policy." - }, - "data_use_modifiers": { - "description": "Modifier for Data use permission associated with a policy. Should be descendants of 'DUO:0000017 data use modifier'", - "items": { - "$ref": "#/$defs/DataUseModifierEnum" - }, - "type": "array" - }, - "data_use_permission": { - "$ref": "#/$defs/DataUsePermissionEnum", - "description": "Data use permission associated with a policy. Typically one or more terms from DUO and should be descendants of 'DUO:0000001 data use permission'." - }, - "description": { - "description": "A short description for the Data Access Policy.", - "type": "string" - }, - "name": { - "description": "A name for the Data Access Policy.", - "type": "string" - }, - "policy_text": { - "description": "The terms of data use and policy verbiage should be captured here.", - "type": "string" - }, - "policy_url": { - "description": "URL for the policy, if available. This is useful if the terms of the policy is made available online at a resolvable URL.", - "type": "string" - } - }, - "required": [ - "name", - "description", - "policy_text", - "data_access_committee", - "data_use_permission", - "accession", - "alias" - ], - "title": "EmbeddedDataAccessPolicy", - "type": "object" - }, - "EmbeddedSampleFile": { - "additionalProperties": false, - "description": "A SampleFile is a File that is associated with a Sample.", - "properties": { - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "alias": { - "description": "The alias for an entity at the time of submission.", - "type": "string" - }, - "checksum": { - "description": "A computed value which depends on the contents of a block of data and which is transmitted or stored along with the data in order to detect corruption of the data. The receiving system recomputes the checksum based upon the received data and compares this value with the one sent with the data. If the two values are the same, the receiver has some confidence that the data was received correctly.", - "type": "string" - }, - "checksum_type": { - "description": "The type of algorithm used to generate the checksum of a file.", - "type": "string" - }, - "dataset": { - "description": "The Dataset associated with an entity.", - "type": "string" - }, - "format": { - "$ref": "#/$defs/FileFormatEnum", - "description": "The format of the file: BAM, SAM, CRAM, BAI, etc." - }, - "name": { - "description": "The given filename.", - "type": "string" - }, - "sample": { - "$ref": "#/$defs/Sample", - "description": "The sample associated with an entity." - }, - "size": { - "description": "The size of a file in bytes.", - "type": "integer" - } - }, - "required": [ - "sample", - "accession", - "name", - "format", - "size", - "checksum", - "checksum_type", - "dataset", - "alias" - ], - "title": "EmbeddedSampleFile", - "type": "object" - }, - "EmbeddedStudyFile": { - "additionalProperties": false, - "description": "A StudyFile is a File that is associated with a Study.", - "properties": { - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "alias": { - "description": "The alias for an entity at the time of submission.", - "type": "string" - }, - "checksum": { - "description": "A computed value which depends on the contents of a block of data and which is transmitted or stored along with the data in order to detect corruption of the data. The receiving system recomputes the checksum based upon the received data and compares this value with the one sent with the data. If the two values are the same, the receiver has some confidence that the data was received correctly.", - "type": "string" - }, - "checksum_type": { - "description": "The type of algorithm used to generate the checksum of a file.", - "type": "string" - }, - "dataset": { - "description": "The Dataset associated with an entity.", - "type": "string" - }, - "format": { - "$ref": "#/$defs/FileFormatEnum", - "description": "The format of the file: BAM, SAM, CRAM, BAI, etc." - }, - "name": { - "description": "The given filename.", - "type": "string" - }, - "size": { - "description": "The size of a file in bytes.", - "type": "integer" - }, - "study": { - "$ref": "#/$defs/Study", - "description": "The study associated with an entity." - } - }, - "required": [ - "study", - "accession", - "name", - "format", - "size", - "checksum", - "checksum_type", - "dataset", - "alias" - ], - "title": "EmbeddedStudyFile", - "type": "object" - }, - "Sample": { - "additionalProperties": false, - "description": "A sample is a limited quantity of something to be used for testing, analysis, inspection, investigation, demonstration, or trial use. A sample is prepared from a Biospecimen (isolate or tissue).", - "properties": { - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "alias": { - "description": "The alias for an entity at the time of submission.", - "type": "string" - }, - "attributes": { - "description": "Key/value pairs corresponding to an entity.", - "items": { - "$ref": "#/$defs/Attribute" - }, - "type": "array" - }, - "biospecimen": { - "description": "The Biospecimen from which this Sample was prepared from.", - "type": "string" - }, - "condition": { - "description": "The condition associated with an entity.", - "type": "string" - }, - "description": { - "description": "Short textual description of the sample (How the sample was collected, sample source, Protocol followed for processing the sample etc).", - "type": "string" - }, - "isolation": { - "description": "Method or device employed for collecting/isolating a biospecimen or a sample.", - "pattern": "SNOMED:.*", - "type": "string" - }, - "name": { - "description": "Name of the sample (eg:GHGAS_Blood_Sample1 or GHGAS_PBMC_RNAseq_S1).", - "type": "string" - }, - "storage": { - "description": "Methods by which a biospecimen or a sample is stored (e.g. frozen in liquid nitrogen).", - "type": "string" - }, - "type": { - "$ref": "#/$defs/SampleTypeEnum", - "description": "The type of sample." - }, - "xref": { - "description": "One or more cross-references for this Sample. For example, this Sample may have an EBI BioSamples accession or an EGA Sample accession.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "required": [ - "name", - "description", - "condition", - "accession", - "alias" - ], - "title": "Sample", - "type": "object" - }, - "Study": { - "additionalProperties": false, - "description": "Studies are experimental investigations of a particular phenomenon. It involves a detailed examination and analysis of a subject to learn more about the phenomenon being studied.", - "properties": { - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "affiliations": { - "description": "The Institution(s) associated with an entity.", - "items": { - "type": "string" - }, - "type": "array" - }, - "alias": { - "description": "The alias for an entity at the time of submission.", - "type": "string" - }, - "attributes": { - "description": "Custom key/value pairs that further characterizes the Study. (e.g.: approaches - single-cell,_bulk_etc)", - "items": { - "$ref": "#/$defs/Attribute" - }, - "type": "array" - }, - "description": { - "description": "A detailed description (abstract) that describes the goals of this Study.", - "type": "string" - }, - "title": { - "description": "A comprehensive title for the study.", - "type": "string" - }, - "type": { - "$ref": "#/$defs/StudyTypeEnum", - "description": "The type of Study. For example, 'Cancer Genomics', 'Epigenetics', 'Exome Sequencing'." - } - }, - "required": [ - "title", - "description", - "type", - "affiliations", - "accession", - "alias" - ], - "title": "Study", - "type": "object" - } - }, - "$schema": "http://json-schema.org/draft-07/schema#", - "additionalProperties": false, - "description": "A Dataset is a collection of Files that is prepared for distribution and is tied to a Data Access Policy.", - "properties": { - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "alias": { - "description": "The alias for an entity at the time of submission.", - "type": "string" - }, - "data_access_policy": { - "$ref": "#/$defs/EmbeddedDataAccessPolicy", - "description": "The Data Access Policy that applies to this Dataset." - }, - "description": { - "description": "Description of an entity.", - "type": "string" - }, - "files": { - "description": "All files associated with the dataset.", - "items": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "string" - } - ] - }, - "type": "array" - }, - "sample_files": { - "description": "The SampleFiles associated with an entity.", - "items": { - "$ref": "#/$defs/EmbeddedSampleFile" - }, - "type": "array" - }, - "samples": { - "description": "The samples associated with an entity.", - "items": { - "$ref": "#/$defs/Sample" - }, - "type": "array" - }, - "studies": { - "description": "The study associated with an entity.", - "items": { - "$ref": "#/$defs/Study" - }, - "type": "array" - }, - "study_files": { - "description": "The StudyFiles associated with an entity.", - "items": { - "$ref": "#/$defs/EmbeddedStudyFile" - }, - "type": "array" - }, - "title": { - "description": "A title for the submitted Dataset.", - "type": "string" - }, - "types": { - "description": "The type of a dataset.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "required": [ - "title", - "description", - "types", - "data_access_policy", - "accession", - "study_files", - "studies", - "sample_files", - "samples", - "files", - "alias" - ], - "title": "EmbeddedDataset", - "type": "object" - }, - "name": "EmbeddedDataset" - }, - "Individual": { - "anchor_point": { - "identifier_slot": "accession", - "root_slot": "individuals", - "target_class": "Individual" - }, - "description": "An Individual is a Person who is participating in a Study.", - "json_schema": { - "$defs": { - "AgeRangeEnum": { - "description": "Enum to capture the age range that an Indiviudal belongs to.", - "enum": [ - "0_TO_5", - "6_TO_10", - "11_TO_15", - "16_TO_20", - "21_TO_25", - "26_TO_30", - "31_TO_35", - "36_TO_40", - "41_TO_45", - "46_TO_50", - "51_TO_55", - "56_TO_60", - "61_TO_65", - "66_TO_70", - "71_TO_75", - "76_TO_80", - "81_OR_OLDER", - "UNKNOWN" - ], - "title": "AgeRangeEnum", - "type": "string" - }, - "IndividualSexEnum": { - "description": "The sex of an Individual as as defined in a specific medical and clinical context.", - "enum": [ - "FEMALE_SEX_FOR_CLINICAL_USE", - "IMAGING_SEX", - "MALE_SEX_FOR_CLINICAL_USE", - "SPECIFIED_SEX_FOR_CLINICAL_USE", - "UNKNOWN_SEX_FOR_CLINICAL_USE" - ], - "title": "IndividualSexEnum", - "type": "string" - }, - "KaryotypeEnum": { - "description": "Permitted values for karyotype", - "enum": [ - "46_XY", - "46_XX", - "OTHER" - ], - "title": "KaryotypeEnum", - "type": "string" - }, - "VitalStatusEnum": { - "description": "Enum to capture the vital status of an individual.", - "enum": [ - "ALIVE", - "DECEASED", - "UNKNOWN" - ], - "title": "VitalStatusEnum", - "type": "string" - } - }, - "$schema": "http://json-schema.org/draft-07/schema#", - "additionalProperties": false, - "description": "An Individual is a Person who is participating in a Study.", - "properties": { - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "age_at_sampling": { - "$ref": "#/$defs/AgeRangeEnum", - "description": "Age of an individual." - }, - "alias": { - "description": "The alias for an entity at the time of submission.", - "type": "string" - }, - "ancestries": { - "description": "A person's descent or lineage, from a person or from a population.", - "items": { - "pattern": "HANCESTRO:.*", - "type": "string" - }, - "type": "array" - }, - "geographical_region": { - "description": "The geographical region where the Individual is located. Any demarcated area of the Earth; may be determined by both natural and human boundaries.", - "pattern": "HANCESTRO:.*", - "type": "string" - }, - "karyotype": { - "$ref": "#/$defs/KaryotypeEnum", - "description": "The karyotype of an individual if defined." - }, - "phenotypic_features": { - "description": "The Phenotypic Feature entity that is associated with this Biospecimen at the time of retrieval from the organism. Typically, a concept from Human Phenotype Ontology. For example, 'HP:0100244' indicates that the Individual - from_which_the_Biospecimen was extracted from - exhibits_'Fibrosarcoma'_as_one_of_its_phenotype.", - "items": { - "pattern": ".*", - "type": "string" - }, - "type": "array" - }, - "sex": { - "$ref": "#/$defs/IndividualSexEnum", - "description": "The assemblage of physical properties or qualities by which male is distinguished from female; the physical difference between male and female; the distinguishing peculiarity of male or female." - }, - "vital_status": { - "$ref": "#/$defs/VitalStatusEnum", - "description": "Last known Vital Status of an Individual." - } - }, - "required": [ - "sex", - "age_at_sampling", - "vital_status", - "accession", - "alias" - ], - "title": "Individual", - "type": "object" - }, - "name": "Individual" - }, - "LibraryPreparationProtocol": { - "anchor_point": { - "identifier_slot": "accession", - "root_slot": "library_preparation_protocols", - "target_class": "LibraryPreparationProtocol" - }, - "description": "Information about the library_preparation of an sequencing experiment.", - "json_schema": { - "$defs": { - "Attribute": { - "additionalProperties": false, - "description": "A key/value pair that further characterizes an entity.", - "properties": { - "key": { - "description": "The key for an attribute.", - "type": "string" - }, - "key_type": { - "description": "A semantic type that characterizes the attribute key. Usually this is a term from an ontology. For example, 'MAXO:0000616' indicates that the attribute is a measurement of oxygen saturation in the blood.", - "type": "string" - }, - "value": { - "description": "The value for an attribute. Usually this is a numerical value (without the units).", - "type": "string" - }, - "value_type": { - "description": "The value_type that characterizes the attribute value. Usually this is a term from an ontology that describes how to interpret the value. For example, 'SIO:001413' indicates that the value is to be interpreted as a percentage.", - "type": "string" - } - }, - "required": [ - "key", - "value" - ], - "title": "Attribute", - "type": "object" - }, - "EndBiasEnum": { - "description": "Permitted values for end bias", - "enum": [ - "3_PRIME_END", - "5_PRIME_END", - "FULL_LENGTH" - ], - "title": "EndBiasEnum", - "type": "string" - }, - "LibraryPreparationKitRetailNameEnum": { - "description": "Permitted values for library preparation kit retail name", - "enum": [ - "10X_GENOMICS_CHROMIUM_SINGLE_CELL_3_V2", - "10X_GENOMICS_CHROMIUM_SINGLE_CELL_3_V3", - "ACCEL_NGS_2_S_PLUS_DNA_LIBRARY_KIT", - "ACCEL_NGS_METHYL_SEQ_DNA", - "AGILENT_STRAND_SPECIFIC_RNA", - "AGILENT_SURE_SELECT_CUSTOM_ENRICHMENT_KIT", - "AGILENT_SURE_SELECT_V3", - "AGILENT_SURE_SELECT_V4", - "AGILENT_SURE_SELECT_V4_UT_RS", - "AGILENT_SURE_SELECT_V5", - "AGILENT_SURE_SELECT_V5_UT_RS", - "AGILENT_SURE_SELECT_V6", - "AGILENT_SURE_SELECT_V6_ONE", - "AGILENT_SURE_SELECT_V6_UT_RS", - "AGILENT_SURE_SELECT_V7", - "AGILENT_SURE_SELECT_WGS", - "AGILENT_SURE_SELECT_XT_HS_HUMAN_ALL_EXON_V7", - "AGILENT_SURE_SELECT_XT_MOUSE_ALL_EXON", - "AGILENT_XT_HS_SURE_SELECT_CLINICAL_RESEARCH_EXOME_V2", - "AVENIO_CT_DNA_KIT", - "IDT_X_GEN_EXOME_RESEARCH_PANEL", - "ILLUMINA_DNA_PCR_FREE", - "ILLUMINA_NEXTERA_DNA_FLEX", - "ILLUMINA_NEXTERA_EXOME_ENRICHMENT_KIT", - "ILLUMINA_STRANDED_M_RNA_PREP_LIGATION", - "ILLUMINA_TRU_SEQ_CH_IP_SAMPLE_PREPARATION_KIT", - "ILLUMINA_TRU_SEQ_CUSTOM_AMPLICON", - "ILLUMINA_TRU_SEQ_DNA", - "ILLUMINA_TRU_SEQ_NANO_DNA", - "ILLUMINA_TRU_SEQ_NANO_DNA_HT", - "ILLUMINA_TRU_SEQ_NANO_DNA_LT", - "ILLUMINA_TRU_SEQ_NANO_FFPE_DNA", - "ILLUMINA_TRU_SEQ_PCR_FREE", - "ILLUMINA_TRU_SEQ_PCR_FREE_DNA", - "ILLUMINA_TRUSEQ_PCR_FREE_METHYL", - "ILLUMINA_TRU_SEQ_RNA", - "ILLUMINA_TRU_SEQ_SMALL_RNA_KIT", - "ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_KIT", - "ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_LIBRARY_PREP_GLOBIN", - "ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_RIBO_MINUS_GOLD", - "ILLUMINA_VAHTS_TOTAL_RNA", - "INFORM_ONCO_PANEL_HG19", - "ION_AMPLI_SEQ_EXOME_KIT", - "KAPA_HIFI_HOT_START_READYMIX", - "KAPA_HYPER_PREP_KIT", - "KAPA_HYPER_PLUS_KIT", - "KAPA_M_RNA_HYPER_PREP_KIT", - "MAGNETIC_METHYLATED_DNA_IMMUNOPRECIPITATION_DIAGNODE", - "NEB_NEXT_CH_IP_SEQ_LIBRARY_PREP_KIT_FOR_ILLUMINA", - "NEB_NEXT_GLOBIN_R_RNA_DEPLETION_KIT_HUMAN_MOUSE_RAT_WITH_BEADS", - "NEB_NEXT_POLY_A_M_RNA_MAGNETIC_ISOLATION_MODULE", - "NEB_NEXT_RNA_ULTRA_II_STRANDED", - "NEBNEXT_ULTRA_DIRECTIONAL_RNA", - "NEB_NEXT_ULTRA_DNA", - "NEB_NEXT_ULTRA_DNA_LIBRARY_PREP_KIT_FOR_ILLUMINA", - "NEB_NEXT_ULTRA_II_DIRECTIONAL_RNA", - "NEB_NEXT_ULTRA_II_DNA_LIBRARY_PREP_KIT_FOR_ILLUMINA", - "NEXTERA_XT_DNA", - "OLIGO_D_T", - "PICO_METHYL_SEQ", - "SMART_SEQ_V4_ULTRA_LOW_INPUT_RNA_KIT", - "SMAR_TER_STRANDED_TOTAL_RNA_SEQ_KIT", - "SMAR_TER_ULTRA_LOW_INPUT_RNA_AND_NEB_NEXT_CH_IP_SEQ", - "SMAR_TER_ULTRA_LOW_INPUT_RNA_V4_AND_NEB_NEXT_CH_IP_SEQ", - "SMAR_TSEQ2_TAG", - "SUPER_SCRIPT_II_RT_BULK", - "SURE_CELL_ATAC_SEQ_LIBRARY_PREP_KIT", - "SURE_SELECT_EUROFINS_ENRICHMENT_CUSTOM_01", - "TAKARA_CLONTECH_SMAR_TER_STRANDED_TOTAL_RNA", - "TAKARA_SMAR_TER_PREP_X_DNA_LIBRARY_KIT_ACTIVE_MOTIF_CUSTOM_INDICES_01", - "TEMPLATE_SWITCHING_RT_ENZYME_MIX_BULK", - "TWIST_HUMAN_CORE_EXOME_PLUS_KIT", - "ULTRALOW_METHYL_SEQ_WITH_TRUE_METHYL_OX_BS_MODULE" - ], - "title": "LibraryPreparationKitRetailNameEnum", - "type": "string" - }, - "LibraryPreparationLibraryLayoutEnum": { - "description": "Single-end vs paired-end library", - "enum": [ - "SE", - "PE" - ], - "title": "LibraryPreparationLibraryLayoutEnum", - "type": "string" - }, - "LibraryPreparationLibrarySelectionEnum": { - "description": "Permitted vocabulary for library selections", - "enum": [ - "5_METHYLCYTIDINE_ANTIBODY_METHOD", - "CAGE_METHOD", - "C_DNA_METHOD", - "CF_H_METHOD", - "CF_M_METHOD", - "CF_S_METHOD", - "CF_T_METHOD", - "CH_IP_SEQ_METHOD", - "D_NASE_METHOD", - "HMPR_METHOD", - "HYBRID_SELECTION_METHOD", - "INVERSE_R_RNA", - "MBD2_PROTEIN_METHYL_CP_G_BINDING_DOMAIN_METHOD", - "MDA", - "MF_METHOD", - "M_NASE_METHOD", - "MSLL_METHOD", - "OLIGO_D_T", - "PADLOCK_PROBES_CAPTURE_METHOD", - "PCR_METHOD", - "POLY_A", - "RACE_METHOD", - "RANDOM_PCR_METHOD", - "RANDOM_METHOD", - "RT_PCR_METHOD", - "REDUCED_REPRESENTATION_METHOD", - "REPEAT_FRACTIONATION", - "RESTRICTION_DIGEST_METHOD", - "SIZE_FRACTIONATION_METHOD", - "UNSPECIFIED", - "OTHER" - ], - "title": "LibraryPreparationLibrarySelectionEnum", - "type": "string" - }, - "LibraryPreparationLibraryTypeEnum": { - "description": "The type of the library", - "enum": [ - "WGS", - "WXS", - "WCS", - "TOTAL_RNA", - "M_RNA", - "MI_RNA", - "NC_RNA", - "ATAC", - "METHYLATION", - "CHROMOSOME_CONFORMATION_CAPTURE" - ], - "title": "LibraryPreparationLibraryTypeEnum", - "type": "string" - }, - "LibraryPreparationRNASeqStrandednessEnum": { - "description": "Permitted values for library preparation RNASeq strandedness", - "enum": [ - "SENSE", - "ANTISENSE", - "BOTH" - ], - "title": "LibraryPreparationRNASeqStrandednessEnum", - "type": "string" - }, - "PrimerEnum": { - "description": "Permitted values for primer", - "enum": [ - "OLIGO_D_T", - "RANDOM", - "GENE_SPECIFIC", - "OTHER" - ], - "title": "PrimerEnum", - "type": "string" - } - }, - "$schema": "http://json-schema.org/draft-07/schema#", - "additionalProperties": false, - "description": "Information about the library_preparation of an sequencing experiment.", - "properties": { - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "alias": { - "description": "The alias for an entity at the time of submission.", - "type": "string" - }, - "attributes": { - "description": "One or more attributes that further characterizes this library_preparation Protocol.", - "items": { - "$ref": "#/$defs/Attribute" - }, - "type": "array" - }, - "description": { - "description": "Description about how a sequencing library was prepared (eg: Library construction method).", - "type": "string" - }, - "end_bias": { - "$ref": "#/$defs/EndBiasEnum", - "description": "The end of the cDNA molecule that is preferentially sequenced, e.g. 3/5 prime tag or end, or the full-length transcript." - }, - "library_layout": { - "$ref": "#/$defs/LibraryPreparationLibraryLayoutEnum", - "description": "Describe whether the library was sequenced in single-end (forward or reverse) or paired-end mode" - }, - "library_name": { - "description": "A short name identifying the library to potential users. The same name may refer to multiple versions of the same continually updated library.", - "type": "string" - }, - "library_preparation": { - "description": "The general method for sequencing library_preparation (e.g. KAPA PCR-free).", - "type": "string" - }, - "library_preparation_kit_manufacturer": { - "description": "Manufacturer of library_preparation kit", - "type": "string" - }, - "library_preparation_kit_retail_name": { - "$ref": "#/$defs/LibraryPreparationKitRetailNameEnum", - "description": "A unique identifier for the kit used to construct a genomic library. This may include the vendor name, kit name and kit version (e.g. Agilent sure select Human Exome V8, Twist RefSeq Exome, etc.)" - }, - "library_selection": { - "$ref": "#/$defs/LibraryPreparationLibrarySelectionEnum", - "description": "Whether any method was used to select for or against, enrich, or screen the material being sequenced. library_selection method (e.g. random, PCA, cDNA, etc )" - }, - "library_type": { - "$ref": "#/$defs/LibraryPreparationLibraryTypeEnum", - "description": "Describe the level of omics analysis (eg: Metagenome, transcriptome, etc)" - }, - "primer": { - "$ref": "#/$defs/PrimerEnum", - "description": "The type of primer used for reverse transcription, e.g. 'oligo-dT' or 'random' primer. This allows users to identify content of the cDNA library input e.g. enriched for mRNA." - }, - "rnaseq_strandedness": { - "$ref": "#/$defs/LibraryPreparationRNASeqStrandednessEnum", - "description": "The strandedness of the library, whether reads come from both strands of the cDNA or only from the first (antisense) or the second (sense) strand." - }, - "target_regions": { - "description": "Subset of genes or specific regions of the genome, which are most likely to be involved in the phenotype under study.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "required": [ - "description", - "library_name", - "library_layout", - "library_type", - "library_selection", - "library_preparation", - "accession", - "alias" - ], - "title": "LibraryPreparationProtocol", - "type": "object" - }, - "name": "LibraryPreparationProtocol" - }, - "Publication": { - "anchor_point": { - "identifier_slot": "accession", - "root_slot": "publications", - "target_class": "Publication" - }, - "description": "The Publication entity represents a publication. While a publication can be any article that is published, the minimum expectation is that the publication has a valid DOI.", - "json_schema": { - "$defs": {}, - "$schema": "http://json-schema.org/draft-07/schema#", - "additionalProperties": false, - "description": "The Publication entity represents a publication. While a publication can be any article that is published, the minimum expectation is that the publication has a valid DOI.", - "properties": { - "abstract": { - "description": "The study abstract that describes the goals. Can also hold abstract from a publication related to this study.", - "type": "string" - }, - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "alias": { - "description": "The alias for an entity at the time of submission.", - "type": "string" - }, - "author": { - "description": "The individual who is responsible for the content of a document version.", - "type": "string" - }, - "doi": { - "description": "DOI identifier of the Publication.", - "type": "string" - }, - "journal": { - "description": "Name of the journal.", - "type": "string" - }, - "study": { - "description": "The Study entity associated with this Publication.", - "type": "string" - }, - "title": { - "description": "The title for the Publication.", - "type": "string" - }, - "xref": { - "description": "One or more cross-references for this Publication.", - "items": { - "type": "string" - }, - "type": "array" - }, - "year": { - "description": "Year in which the paper was published.", - "type": "integer" - } - }, - "required": [ - "doi", - "study", - "accession", - "alias" - ], - "title": "Publication", - "type": "object" - }, - "name": "Publication" - }, - "Sample": { - "anchor_point": { - "identifier_slot": "accession", - "root_slot": "samples", - "target_class": "Sample" - }, - "description": "A sample is a limited quantity of something to be used for testing, analysis, inspection, investigation, demonstration, or trial use. A sample is prepared from a Biospecimen (isolate or tissue).", - "json_schema": { - "$defs": { - "Attribute": { - "additionalProperties": false, - "description": "A key/value pair that further characterizes an entity.", - "properties": { - "key": { - "description": "The key for an attribute.", - "type": "string" - }, - "key_type": { - "description": "A semantic type that characterizes the attribute key. Usually this is a term from an ontology. For example, 'MAXO:0000616' indicates that the attribute is a measurement of oxygen saturation in the blood.", - "type": "string" - }, - "value": { - "description": "The value for an attribute. Usually this is a numerical value (without the units).", - "type": "string" - }, - "value_type": { - "description": "The value_type that characterizes the attribute value. Usually this is a term from an ontology that describes how to interpret the value. For example, 'SIO:001413' indicates that the value is to be interpreted as a percentage.", - "type": "string" - } - }, - "required": [ - "key", - "value" - ], - "title": "Attribute", - "type": "object" - }, - "SampleTypeEnum": { - "description": "The type of a sample", - "enum": [ - "CF_DNA", - "DEPLETED_RNA", - "DS_DNA_CH_IP", - "FFPE_DNA", - "FFPE_TOTAL_RNA", - "GENOMIC_DNA", - "PCR_PRODUCTS", - "POLY_A_RNA", - "SINGLE_CELL_DNA", - "SINGLE_CELL_RNA", - "SMALL_RNA", - "TOTAL_RNA" - ], - "title": "SampleTypeEnum", - "type": "string" - } - }, - "$schema": "http://json-schema.org/draft-07/schema#", - "additionalProperties": false, - "description": "A sample is a limited quantity of something to be used for testing, analysis, inspection, investigation, demonstration, or trial use. A sample is prepared from a Biospecimen (isolate or tissue).", - "properties": { - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "alias": { - "description": "The alias for an entity at the time of submission.", - "type": "string" - }, - "attributes": { - "description": "Key/value pairs corresponding to an entity.", - "items": { - "$ref": "#/$defs/Attribute" - }, - "type": "array" - }, - "biospecimen": { - "description": "The Biospecimen from which this Sample was prepared from.", - "type": "string" - }, - "condition": { - "description": "The condition associated with an entity.", - "type": "string" - }, - "description": { - "description": "Short textual description of the sample (How the sample was collected, sample source, Protocol followed for processing the sample etc).", - "type": "string" - }, - "isolation": { - "description": "Method or device employed for collecting/isolating a biospecimen or a sample.", - "pattern": "SNOMED:.*", - "type": "string" - }, - "name": { - "description": "Name of the sample (eg:GHGAS_Blood_Sample1 or GHGAS_PBMC_RNAseq_S1).", - "type": "string" - }, - "storage": { - "description": "Methods by which a biospecimen or a sample is stored (e.g. frozen in liquid nitrogen).", - "type": "string" - }, - "type": { - "$ref": "#/$defs/SampleTypeEnum", - "description": "The type of sample." - }, - "xref": { - "description": "One or more cross-references for this Sample. For example, this Sample may have an EBI BioSamples accession or an EGA Sample accession.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "required": [ - "name", - "description", - "condition", - "accession", - "alias" - ], - "title": "Sample", - "type": "object" - }, - "name": "Sample" - }, - "SampleFile": { - "anchor_point": { - "identifier_slot": "accession", - "root_slot": "sample_files", - "target_class": "SampleFile" - }, - "description": "A SampleFile is a File that is associated with a Sample.", - "json_schema": { - "$defs": { - "FileFormatEnum": { - "description": "Enum to capture file types.", - "enum": [ - "AGP", - "BAI", - "BAM", - "BCF", - "BED", - "CRAI", - "CRAM", - "CSV", - "FASTA", - "FASTQ", - "GFF", - "HDF5", - "INFO", - "JSON", - "MD", - "OTHER", - "PED", - "SAM", - "SFF", - "SRF", - "TAB", - "TABIX", - "TSV", - "TXT", - "VCF", - "WIG" - ], - "title": "FileFormatEnum", - "type": "string" - } - }, - "$schema": "http://json-schema.org/draft-07/schema#", - "additionalProperties": false, - "description": "A SampleFile is a File that is associated with a Sample.", - "properties": { - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "alias": { - "description": "The alias for an entity at the time of submission.", - "type": "string" - }, - "checksum": { - "description": "A computed value which depends on the contents of a block of data and which is transmitted or stored along with the data in order to detect corruption of the data. The receiving system recomputes the checksum based upon the received data and compares this value with the one sent with the data. If the two values are the same, the receiver has some confidence that the data was received correctly.", - "type": "string" - }, - "checksum_type": { - "description": "The type of algorithm used to generate the checksum of a file.", - "type": "string" - }, - "dataset": { - "description": "The Dataset associated with an entity.", - "type": "string" - }, - "format": { - "$ref": "#/$defs/FileFormatEnum", - "description": "The format of the file: BAM, SAM, CRAM, BAI, etc." - }, - "name": { - "description": "The given filename.", - "type": "string" - }, - "sample": { - "description": "The sample associated with an entity.", - "type": "string" - }, - "size": { - "description": "The size of a file in bytes.", - "type": "integer" - } - }, - "required": [ - "sample", - "accession", - "name", - "format", - "size", - "checksum", - "checksum_type", - "dataset", - "alias" - ], - "title": "SampleFile", - "type": "object" - }, - "name": "SampleFile" - }, - "SequencingExperiment": { - "anchor_point": { - "identifier_slot": "accession", - "root_slot": "sequencing_experiments", - "target_class": "SequencingExperiment" - }, - "description": "An sequencing experiment is an investigation that consists of a coordinated set of actions and observations designed to generate data with the goal of verifying, falsifying, or establishing the validity of a hypothesis.", - "json_schema": { - "$defs": { - "Attribute": { - "additionalProperties": false, - "description": "A key/value pair that further characterizes an entity.", - "properties": { - "key": { - "description": "The key for an attribute.", - "type": "string" - }, - "key_type": { - "description": "A semantic type that characterizes the attribute key. Usually this is a term from an ontology. For example, 'MAXO:0000616' indicates that the attribute is a measurement of oxygen saturation in the blood.", - "type": "string" - }, - "value": { - "description": "The value for an attribute. Usually this is a numerical value (without the units).", - "type": "string" - }, - "value_type": { - "description": "The value_type that characterizes the attribute value. Usually this is a term from an ontology that describes how to interpret the value. For example, 'SIO:001413' indicates that the value is to be interpreted as a percentage.", - "type": "string" - } - }, - "required": [ - "key", - "value" - ], - "title": "Attribute", - "type": "object" - } - }, - "$schema": "http://json-schema.org/draft-07/schema#", - "additionalProperties": false, - "description": "An sequencing experiment is an investigation that consists of a coordinated set of actions and observations designed to generate data with the goal of verifying, falsifying, or establishing the validity of a hypothesis.", - "properties": { - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "alias": { - "description": "The alias for an entity at the time of submission.", - "type": "string" - }, - "attributes": { - "description": "Key/value pairs corresponding to an entity.", - "items": { - "$ref": "#/$defs/Attribute" - }, - "type": "array" - }, - "description": { - "description": "A detailed description of the Experiment.", - "type": "string" - }, - "library_preparation_protocol": { - "description": "The library_preparation Protocol associated with an entity.", - "type": "string" - }, - "sequencing_protocol": { - "description": "The sequencing protocol associated with an entity.", - "type": "string" - }, - "title": { - "description": "Name for the experiment (eg: GHGAE_PBMC_RNAseq).", - "type": "string" - }, - "type": { - "description": "The type of sequencing experiment.", - "type": "string" - } - }, - "required": [ - "description", - "sequencing_protocol", - "library_preparation_protocol", - "accession", - "alias" - ], - "title": "SequencingExperiment", - "type": "object" - }, - "name": "SequencingExperiment" - }, - "SequencingProcess": { - "anchor_point": { - "identifier_slot": "accession", - "root_slot": "sequencing_processes", - "target_class": "SequencingProcess" - }, - "description": "A sequencing process linking a sample to sequencing output.", - "json_schema": { - "$defs": { - "Attribute": { - "additionalProperties": false, - "description": "A key/value pair that further characterizes an entity.", - "properties": { - "key": { - "description": "The key for an attribute.", - "type": "string" - }, - "key_type": { - "description": "A semantic type that characterizes the attribute key. Usually this is a term from an ontology. For example, 'MAXO:0000616' indicates that the attribute is a measurement of oxygen saturation in the blood.", - "type": "string" - }, - "value": { - "description": "The value for an attribute. Usually this is a numerical value (without the units).", - "type": "string" - }, - "value_type": { - "description": "The value_type that characterizes the attribute value. Usually this is a term from an ontology that describes how to interpret the value. For example, 'SIO:001413' indicates that the value is to be interpreted as a percentage.", - "type": "string" - } - }, - "required": [ - "key", - "value" - ], - "title": "Attribute", - "type": "object" - } - }, - "$schema": "http://json-schema.org/draft-07/schema#", - "additionalProperties": false, - "description": "A sequencing process linking a sample to sequencing output.", - "properties": { - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "alias": { - "description": "The alias for an entity at the time of submission.", - "type": "string" - }, - "attributes": { - "description": "Key/value pairs corresponding to an entity.", - "items": { - "$ref": "#/$defs/Attribute" - }, - "type": "array" - }, - "description": { - "description": "Description of an entity.", - "type": "string" - }, - "name": { - "description": "The name for an entity.", - "type": "string" - }, - "sample": { - "description": "The sample associated with an entity.", - "type": "string" - }, - "sequencing_experiment": { - "description": "The sequencing experiment associated with an entity.", - "type": "string" - }, - "sequencing_lane_id": { - "description": "Identifier of the sequencing lane. Used for batch correction.", - "type": "string" - }, - "sequencing_machine_id": { - "description": "Identifier of the sequencing machine. Used for batch correction.", - "type": "string" - }, - "sequencing_run_id": { - "description": "Identifier of the sequencing run. Used for batch correction.", - "type": "string" - }, - "title": { - "description": "The title that describes an entity.", - "type": "string" - } - }, - "required": [ - "description", - "name", - "sequencing_experiment", - "sample", - "accession", - "alias" - ], - "title": "SequencingProcess", - "type": "object" - }, - "name": "SequencingProcess" - }, - "SequencingProcessFile": { - "anchor_point": { - "identifier_slot": "accession", - "root_slot": "sequencing_process_files", - "target_class": "SequencingProcessFile" - }, - "description": "A SequencingProcessFile is a File that is associated with a SequencingProcess.", - "json_schema": { - "$defs": { - "FileFormatEnum": { - "description": "Enum to capture file types.", - "enum": [ - "AGP", - "BAI", - "BAM", - "BCF", - "BED", - "CRAI", - "CRAM", - "CSV", - "FASTA", - "FASTQ", - "GFF", - "HDF5", - "INFO", - "JSON", - "MD", - "OTHER", - "PED", - "SAM", - "SFF", - "SRF", - "TAB", - "TABIX", - "TSV", - "TXT", - "VCF", - "WIG" - ], - "title": "FileFormatEnum", - "type": "string" - } - }, - "$schema": "http://json-schema.org/draft-07/schema#", - "additionalProperties": false, - "description": "A SequencingProcessFile is a File that is associated with a SequencingProcess.", - "properties": { - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "alias": { - "description": "The alias for an entity at the time of submission.", - "type": "string" - }, - "checksum": { - "description": "A computed value which depends on the contents of a block of data and which is transmitted or stored along with the data in order to detect corruption of the data. The receiving system recomputes the checksum based upon the received data and compares this value with the one sent with the data. If the two values are the same, the receiver has some confidence that the data was received correctly.", - "type": "string" - }, - "checksum_type": { - "description": "The type of algorithm used to generate the checksum of a file.", - "type": "string" - }, - "dataset": { - "description": "The Dataset associated with an entity.", - "type": "string" - }, - "format": { - "$ref": "#/$defs/FileFormatEnum", - "description": "The format of the file: BAM, SAM, CRAM, BAI, etc." - }, - "name": { - "description": "The given filename.", - "type": "string" - }, - "sequencing_process": { - "description": "The SequencingProcess associated with an entity.", - "type": "string" - }, - "size": { - "description": "The size of a file in bytes.", - "type": "integer" - } - }, - "required": [ - "sequencing_process", - "accession", - "name", - "format", - "size", - "checksum", - "checksum_type", - "dataset", - "alias" - ], - "title": "SequencingProcessFile", - "type": "object" - }, - "name": "SequencingProcessFile" - }, - "SequencingProtocol": { - "anchor_point": { - "identifier_slot": "accession", - "root_slot": "sequencing_protocols", - "target_class": "SequencingProtocol" - }, - "description": "Information about the sequencing of a sample.", - "json_schema": { - "$defs": { - "Attribute": { - "additionalProperties": false, - "description": "A key/value pair that further characterizes an entity.", - "properties": { - "key": { - "description": "The key for an attribute.", - "type": "string" - }, - "key_type": { - "description": "A semantic type that characterizes the attribute key. Usually this is a term from an ontology. For example, 'MAXO:0000616' indicates that the attribute is a measurement of oxygen saturation in the blood.", - "type": "string" - }, - "value": { - "description": "The value for an attribute. Usually this is a numerical value (without the units).", - "type": "string" - }, - "value_type": { - "description": "The value_type that characterizes the attribute value. Usually this is a term from an ontology that describes how to interpret the value. For example, 'SIO:001413' indicates that the value is to be interpreted as a percentage.", - "type": "string" - } - }, - "required": [ - "key", - "value" - ], - "title": "Attribute", - "type": "object" - }, - "FlowCellTypeEnum": { - "description": "Permitted values for flow cell type", - "enum": [ - "ILLUMINA_NOVA_SEQ_S2", - "ILLUMINA_NOVA_SEQ_S4", - "PROMETH_ION", - "FLONGLE", - "MIN_ION", - "GRID_ION", - "OTHER" - ], - "title": "FlowCellTypeEnum", - "type": "string" - }, - "ForwardOrReverseEnum": { - "description": "Enum to capture whether the reads from paired-end sequencing are forward (R1) or reverse (R2).", - "enum": [ - "FORWARD", - "REVERSE" - ], - "title": "ForwardOrReverseEnum", - "type": "string" - }, - "IndexReadEnum": { - "description": "Permitted Values to indicate the location of a sequence component in a read or index", - "enum": [ - "INDEX1", - "INDEX2", - "READ1", - "READ2" - ], - "title": "IndexReadEnum", - "type": "string" - }, - "InstrumentModelEnum": { - "description": "Permitted values for instrument model", - "enum": [ - "ILLUMINA_HI_SCAN", - "ILLUMINA_HI_SEQ_1000", - "ILLUMINA_HI_SEQ_1500", - "ILLUMINA_HI_SEQ_2000", - "ILLUMINA_HI_SEQ_2500", - "ILLUMINA_HI_SEQ_3000", - "ILLUMINA_HI_SEQ_4000", - "ILLUMINA_HI_SEQ_X_FIVE", - "ILLUMINA_HI_SEQ_X_TEN", - "ILLUMINA_HI_SEQ_X", - "ILLUMINA_I_SCAN", - "ILLUMINA_I_SEQ_100", - "ILLUMINA_MINI_SEQ", - "ILLUMINA_MI_SEQ", - "ILLUMINA_MI_SEQ_DX", - "ILLUMINA_MI_SEQ_DX_RESEARCH_MODE", - "ILLUMINA_NEXT_SEQ_500", - "ILLUMINA_NEXT_SEQ_550", - "ILLUMINA_NEXT_SEQ_550_DX", - "ILLUMINA_NEXT_SEQ_550_DX_RESEARCH_MODE", - "ILLUMINA_NEXT_SEQ_1000", - "ILLUMINA_NEXT_SEQ_2000", - "ILLUMINA_NOVA_SEQ_6000", - "ILLUMINA_GENOME_ANALYZER", - "ILLUMINA_GENOME_ANALYZER_II", - "ILLUMINA_GENOME_ANALYZER_IIX", - "ILLUMINA_HI_SCAN_SQ", - "PAC_BIO_REVIO", - "PAC_BIO_ONSO", - "PAC_BIO_SEQUEL_IIE", - "PAC_BIO_SEQUEL_II", - "PAC_BIO_SEQUEL", - "PAC_BIO_RS", - "PAC_BIO_RS_II", - "ONT_MIN_ION", - "ONT_GRID_ION", - "ONT_PROMETH_ION", - "DNBSEQ_G50", - "DNBSEQ_T7", - "DNBSEQ_G400", - "DNBSEQ_G400_FAST", - "ULTIMA_UG_100", - "OTHER" - ], - "title": "InstrumentModelEnum", - "type": "string" - }, - "SampleBarcodeReadEnum": { - "description": "Permitted values for sample barcode read", - "enum": [ - "INDEX1", - "INDEX1_AND_INDEX2", - "OTHER" - ], - "title": "SampleBarcodeReadEnum", - "type": "string" - } - }, - "$schema": "http://json-schema.org/draft-07/schema#", - "additionalProperties": false, - "description": "Information about the sequencing of a sample.", - "properties": { - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "alias": { - "description": "The alias for an entity at the time of submission.", - "type": "string" - }, - "attributes": { - "description": "One or more attributes that further characterizes this Sequencing Protocol.", - "items": { - "$ref": "#/$defs/Attribute" - }, - "type": "array" - }, - "cell_barcode_offset": { - "description": "The offset in sequence of the cell identifying barcode. (Eg. '0').", - "type": "string" - }, - "cell_barcode_read": { - "$ref": "#/$defs/IndexReadEnum", - "description": "The type of read that contains the cell barcode (eg: index1/index2/read1/read2)." - }, - "cell_barcode_size": { - "description": "The size of the cell identifying barcode (E.g. '16').", - "type": "string" - }, - "description": { - "description": "Description about the sequencing Protocol (eg: mRNA-seq,Whole exome long-read sequencing etc).", - "type": "string" - }, - "flow_cell_id": { - "description": "Flow Cell ID (eg: Experiment ID_Cell 1_Lane_1). The barcode assigned to a flow cell used in nucleotide sequencing.", - "type": "string" - }, - "flow_cell_type": { - "$ref": "#/$defs/FlowCellTypeEnum", - "description": "Type of flow cell used (e.g. S4, S2 for NovaSeq; PromethION, Flongle for Nanopore). Aparatus in the fluidic subsystem where the sheath and sample meet. Can be one of several types; jet-in-air, quartz cuvette, or a hybrid of the two. The sample flows through the center of a fluid column of sheath fluid in the flow cell." - }, - "forward_or_reverse": { - "$ref": "#/$defs/ForwardOrReverseEnum", - "description": "Denotes whether a submitted FASTQ file contains forward (R1) or reverse (R2) reads for paired-end sequencing. The number that identifies each read direction in a paired-end nucleotide sequencing reaction." - }, - "index_sequence": { - "description": "A unique nucleotide sequence that is added to a sample during library_preparation to serve as a unique identifier for the sample.", - "type": "string" - }, - "instrument_model": { - "$ref": "#/$defs/InstrumentModelEnum", - "description": "The name and model of the technology platform used to perform sequencing." - }, - "lane_number": { - "description": "The numerical identifier for the lane or machine unit where a sample was located during nucleotide sequencing.", - "type": "string" - }, - "sample_barcode_read": { - "$ref": "#/$defs/SampleBarcodeReadEnum", - "description": "The type of read that contains the sample barcode (eg: index1/index2/read1/read2)." - }, - "sequencing_center": { - "description": "Center where sample was sequenced.", - "type": "string" - }, - "sequencing_read_length": { - "description": "Length of sequencing reads (eg: Long or short or actual number of the read length etc). The number of nucleotides successfully ordered from each side of a nucleic acid fragment obtained after the completion of a sequencing process", - "type": "string" - }, - "target_coverage": { - "description": "Mean coverage for whole genome sequencing, or mean target coverage for whole exome and targeted sequencing. The number of times a particular locus (site, nucleotide, amplicon, region) was sequenced.", - "type": "string" - }, - "type": { - "description": "Name of the library_preparation Protocol (eg: mRNA-seq,Whole exome long-read sequencing etc).", - "type": "string" - }, - "umi_barcode_offset": { - "description": "The offset in sequence of the UMI identifying barcode. (E.g. '16').", - "type": "string" - }, - "umi_barcode_read": { - "$ref": "#/$defs/IndexReadEnum", - "description": "The type of read that contains the UMI barcode (Eg: index1/index2/read1/read2)." - }, - "umi_barcode_size": { - "description": "The size of the UMI identifying barcode (Eg. '10').", - "type": "string" - } - }, - "required": [ - "description", - "instrument_model", - "accession", - "alias" - ], - "title": "SequencingProtocol", - "type": "object" - }, - "name": "SequencingProtocol" - }, - "Study": { - "anchor_point": { - "identifier_slot": "accession", - "root_slot": "studies", - "target_class": "Study" - }, - "description": "Studies are experimental investigations of a particular phenomenon. It involves a detailed examination and analysis of a subject to learn more about the phenomenon being studied.", - "json_schema": { - "$defs": { - "Attribute": { - "additionalProperties": false, - "description": "A key/value pair that further characterizes an entity.", - "properties": { - "key": { - "description": "The key for an attribute.", - "type": "string" - }, - "key_type": { - "description": "A semantic type that characterizes the attribute key. Usually this is a term from an ontology. For example, 'MAXO:0000616' indicates that the attribute is a measurement of oxygen saturation in the blood.", - "type": "string" - }, - "value": { - "description": "The value for an attribute. Usually this is a numerical value (without the units).", - "type": "string" - }, - "value_type": { - "description": "The value_type that characterizes the attribute value. Usually this is a term from an ontology that describes how to interpret the value. For example, 'SIO:001413' indicates that the value is to be interpreted as a percentage.", - "type": "string" - } - }, - "required": [ - "key", - "value" - ], - "title": "Attribute", - "type": "object" - }, - "StudyTypeEnum": { - "description": "Enum to capture the type of a study.", - "enum": [ - "CANCER_GENOMICS", - "EPIGENETICS", - "EXOME_SEQUENCING", - "FORENSIC_GENETICS", - "PALEO_GENOMICS", - "GENE_REGULATION_STUDY", - "METAGENOMICS", - "OTHER", - "POOLED_CLONE_SEQUENCING", - "POPULATION_GENOMICS", - "RNASEQ", - "RESEQUENCING", - "SYNTHETIC_GENOMICS", - "TRANSCRIPTOME_ANALYSIS", - "WHOLE_GENOME_SEQUENCING", - "GWAS" - ], - "title": "StudyTypeEnum", - "type": "string" - } - }, - "$schema": "http://json-schema.org/draft-07/schema#", - "additionalProperties": false, - "description": "Studies are experimental investigations of a particular phenomenon. It involves a detailed examination and analysis of a subject to learn more about the phenomenon being studied.", - "properties": { - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "affiliations": { - "description": "The Institution(s) associated with an entity.", - "items": { - "type": "string" - }, - "type": "array" - }, - "alias": { - "description": "The alias for an entity at the time of submission.", - "type": "string" - }, - "attributes": { - "description": "Custom key/value pairs that further characterizes the Study. (e.g.: approaches - single-cell,_bulk_etc)", - "items": { - "$ref": "#/$defs/Attribute" - }, - "type": "array" - }, - "description": { - "description": "A detailed description (abstract) that describes the goals of this Study.", - "type": "string" - }, - "title": { - "description": "A comprehensive title for the study.", - "type": "string" - }, - "type": { - "$ref": "#/$defs/StudyTypeEnum", - "description": "The type of Study. For example, 'Cancer Genomics', 'Epigenetics', 'Exome Sequencing'." - } - }, - "required": [ - "title", - "description", - "type", - "affiliations", - "accession", - "alias" - ], - "title": "Study", - "type": "object" - }, - "name": "Study" - }, - "StudyFile": { - "anchor_point": { - "identifier_slot": "accession", - "root_slot": "study_files", - "target_class": "StudyFile" - }, - "description": "A StudyFile is a File that is associated with a Study.", - "json_schema": { - "$defs": { - "FileFormatEnum": { - "description": "Enum to capture file types.", - "enum": [ - "AGP", - "BAI", - "BAM", - "BCF", - "BED", - "CRAI", - "CRAM", - "CSV", - "FASTA", - "FASTQ", - "GFF", - "HDF5", - "INFO", - "JSON", - "MD", - "OTHER", - "PED", - "SAM", - "SFF", - "SRF", - "TAB", - "TABIX", - "TSV", - "TXT", - "VCF", - "WIG" - ], - "title": "FileFormatEnum", - "type": "string" - } - }, - "$schema": "http://json-schema.org/draft-07/schema#", - "additionalProperties": false, - "description": "A StudyFile is a File that is associated with a Study.", - "properties": { - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "alias": { - "description": "The alias for an entity at the time of submission.", - "type": "string" - }, - "checksum": { - "description": "A computed value which depends on the contents of a block of data and which is transmitted or stored along with the data in order to detect corruption of the data. The receiving system recomputes the checksum based upon the received data and compares this value with the one sent with the data. If the two values are the same, the receiver has some confidence that the data was received correctly.", - "type": "string" - }, - "checksum_type": { - "description": "The type of algorithm used to generate the checksum of a file.", - "type": "string" - }, - "dataset": { - "description": "The Dataset associated with an entity.", - "type": "string" - }, - "format": { - "$ref": "#/$defs/FileFormatEnum", - "description": "The format of the file: BAM, SAM, CRAM, BAI, etc." - }, - "name": { - "description": "The given filename.", - "type": "string" - }, - "size": { - "description": "The size of a file in bytes.", - "type": "integer" - }, - "study": { - "description": "The study associated with an entity.", - "type": "string" - } - }, - "required": [ - "study", - "accession", - "name", - "format", - "size", - "checksum", - "checksum_type", - "dataset", - "alias" - ], - "title": "StudyFile", - "type": "object" - }, - "name": "StudyFile" - }, - "Trio": { - "anchor_point": { - "identifier_slot": "accession", - "root_slot": "trios", - "target_class": "Trio" - }, - "description": "A trio is defined by three individuals representing an individual and their parents.", - "json_schema": { - "$defs": {}, - "$schema": "http://json-schema.org/draft-07/schema#", - "additionalProperties": false, - "description": "A trio is defined by three individuals representing an individual and their parents.", - "properties": { - "accession": { - "description": "The accession for an entity.", - "type": "string" - }, - "alias": { - "description": "The alias for an entity at the time of submission.", - "type": "string" - }, - "child": { - "description": "The child of two individuals.", - "type": "string" - }, - "father": { - "description": "The father of an individual.", - "type": "string" - }, - "mother": { - "description": "The mother of an individual.", - "type": "string" - } - }, - "required": [ - "mother", - "father", - "child", - "accession", - "alias" - ], - "title": "Trio", - "type": "object" - }, - "name": "Trio" - } - } - } -] diff --git a/tests/fixtures/load/example_models/embedded_public_model.yaml b/tests/fixtures/load/example_models/embedded_public_model.yaml deleted file mode 100644 index eb7e51f8..00000000 --- a/tests/fixtures/load/example_models/embedded_public_model.yaml +++ /dev/null @@ -1,49610 +0,0 @@ -aliases: [] -alt_descriptions: {} -annotations: {} -broad_mappings: [] -categories: [] -classes: - AliasMixin: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Mixin for entities that can be assigned an alias at the time of metadata - submission. - disjoint_with: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - mixin: true - mixins: [] - modified_by: null - name: AliasMixin - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - alias - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - Analysis: - abstract: null - aliases: - - data analysis - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: An Analysis is a data transformation that transforms input data to - output data. The workflow used to achieve this transformation and the individual - steps are also captured. - disjoint_with: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: - - IdentifiedByAliasMixin - modified_by: null - name: Analysis - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - accession: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: true - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: accession - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: An alias uniquely identifying this Analysis entitiy. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - description: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: 'Describing how an Analysis was carried out. (e.g.: computational - tools, settings, etc.).' - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: description - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - reference_chromosome: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: reference_chromosome - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - reference_genome: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: reference_genome - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - type: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The type of the Analysis. Either Reference Alignment (BAM) or - Sequence Variation (VCF) - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: type - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - title - - description - - type - - reference_genome - - reference_chromosome - - accession - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - AnalysisProcess: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - disjoint_with: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: - - IdentifiedByAliasMixin - modified_by: null - name: AnalysisProcess - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - accession: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: true - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: accession - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - analysis: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The Analysis the AnalysisProcess was part of - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: analysis - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sample_input_files: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sample_input_files - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_process_input_files: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sequencing_process_input_files - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - study_input_files: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: study_input_files - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - analysis - - study_input_files - - sample_input_files - - sequencing_process_input_files - - accession - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - AnalysisProcessOutputFile: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A AnalysisProcessOutputFile is a File that is associated as an output - file with an AnalysisProcess. - disjoint_with: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: File - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: [] - modified_by: null - name: AnalysisProcessOutputFile - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - accession: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: true - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: accession - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - analysis_process: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: analysis_process - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - analysis_process - - accession - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - Attribute: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A key/value pair that further characterizes an entity. - disjoint_with: [] - exact_mappings: - - SIO:000614 - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: [] - modified_by: null - name: Attribute - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - key: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The key for an attribute. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: key - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - key_type: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A semantic type that characterizes the attribute key. Usually - this is a term from an ontology. For example, 'MAXO:0000616' indicates that - the attribute is a measurement of oxygen saturation in the blood. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: key_type - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - value: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The value for an attribute. Usually this is a numerical value - (without the units). - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: value - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - value_type: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The value_type that characterizes the attribute value. Usually - this is a term from an ontology that describes how to interpret the value. - For example, 'SIO:001413' indicates that the value is to be interpreted - as a percentage. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: value_type - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - key - - key_type - - value - - value_type - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - AttributeMixin: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Mixin for entities that can have one or more attributes. - disjoint_with: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - mixin: true - mixins: [] - modified_by: null - name: AttributeMixin - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - attributes: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: attributes - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - attributes - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - Biospecimen: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A Biospecimen is any natural material taken from a biological entity - (usually a human) for testing, diagnostics, treatment, or research purposes. - The Biospecimen is linked to the Individual from which the Biospecimen is derived. - disjoint_with: [] - exact_mappings: - - OBI:0100051 - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: - - IdentifiedByAliasMixin - modified_by: null - name: Biospecimen - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - accession: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: true - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: accession - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - description: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: description - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - individual: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The Individual entity from which this Biospecimen was derived. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: individual - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - isolation: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: isolation - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - name: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: name - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - storage: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: storage - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - tissue: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: tissue - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - type: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The type of Biospecimen. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: type - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - vital_status_at_sampling: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: vital_status_at_sampling - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - name - - type - - description - - isolation - - storage - - individual - - vital_status_at_sampling - - tissue - - accession - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - Condition: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: An condition that is linked to comparable samples. - disjoint_with: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - modified_by: null - name: Condition - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - accession: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: true - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: accession - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - case_control_status: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: case_control_status - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - description: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: description - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - disease_or_healthy: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: disease_or_healthy - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - mutant_or_wildtype: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: mutant_or_wildtype - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - name: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: name - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - study: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: study - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - title - - description - - name - - description - - disease_or_healthy - - case_control_status - - mutant_or_wildtype - - study - - accession - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - DataAccessCommittee: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A group of members that are delegated to grant access to one or more - datasets after ensuring the minimum criteria for data sharing has been met, - and request for data use does not raise ethical and/or legal concerns. - disjoint_with: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: - - IdentifiedByAliasMixin - modified_by: null - name: DataAccessCommittee - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - accession: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: true - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: accession - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - email: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: email - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - institute: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: institute - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - email - - institute - - accession - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - DataAccessPolicy: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A Data Access Policy specifies under which circumstances, legal or - otherwise, a user can have access to one or more Datasets belonging to one or - more Studies. - disjoint_with: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: - - IdentifiedByAliasMixin - modified_by: null - name: DataAccessPolicy - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - accession: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: true - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: accession - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - data_access_committee: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The Data Access Committee linked to this policy. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: data_access_committee - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - data_use_modifiers: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Modifier for Data use permission associated with a policy. Should - be descendants of 'DUO:0000017 data use modifier' - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: data_use_modifiers - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - data_use_permission: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Data use permission associated with a policy. Typically one or - more terms from DUO and should be descendants of 'DUO:0000001 data use permission'. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: data_use_permission - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - description: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A short description for the Data Access Policy. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: description - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - name: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A name for the Data Access Policy. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: name - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - policy_text: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The terms of data use and policy verbiage should be captured - here. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: policy_text - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - policy_url: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: URL for the policy, if available. This is useful if the terms - of the policy is made available online at a resolvable URL. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: policy_url - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - name - - description - - policy_text - - policy_url - - data_access_committee - - data_use_permission - - data_use_modifiers - - accession - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - Dataset: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A Dataset is a collection of Files that is prepared for distribution - and is tied to a Data Access Policy. - disjoint_with: [] - exact_mappings: - - SIO:000089 - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: - - IdentifiedByAliasMixin - modified_by: null - name: Dataset - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - accession: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: true - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: accession - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - data_access_policy: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The Data Access Policy that applies to this Dataset. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: data_access_policy - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - description: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: description - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - files: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: - - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - from_schema: null - has_member: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inlined: null - inlined_as_list: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - narrow_mappings: [] - none_of: [] - notes: [] - pattern: null - range: StudyFile - range_expression: null - rank: null - recommended: null - related_mappings: [] - required: null - see_also: [] - source: null - structured_aliases: {} - structured_pattern: null - title: null - todos: [] - unit: null - - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - from_schema: null - has_member: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inlined: null - inlined_as_list: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - narrow_mappings: [] - none_of: [] - notes: [] - pattern: null - range: SampleFile - range_expression: null - rank: null - recommended: null - related_mappings: [] - required: null - see_also: [] - source: null - structured_aliases: {} - structured_pattern: null - title: null - todos: [] - unit: null - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: All files associated with the dataset. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: files - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sample_files: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: sample_files - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: SampleFile - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - samples: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: samples - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: Sample - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - studies: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: studies - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: Study - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - study_files: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: study_files - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: StudyFile - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - title: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A title for the submitted Dataset. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: title - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - types: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The type of a dataset. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: types - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - title - - description - - types - - data_access_policy - - accession - - study_files - - studies - - sample_files - - samples - - files - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - EmbeddedDataAccessPolicy: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A Data Access Policy specifies under which circumstances, legal or - otherwise, a user can have access to one or more Datasets belonging to one or - more Studies. - disjoint_with: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: - - IdentifiedByAliasMixin - modified_by: null - name: EmbeddedDataAccessPolicy - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - accession: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: accession - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - data_access_committee: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The Data Access Committee linked to this policy. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: data_access_committee - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - data_use_modifiers: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Modifier for Data use permission associated with a policy. Should - be descendants of 'DUO:0000017 data use modifier' - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: data_use_modifiers - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - data_use_permission: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Data use permission associated with a policy. Typically one or - more terms from DUO and should be descendants of 'DUO:0000001 data use permission'. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: data_use_permission - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - description: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A short description for the Data Access Policy. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: description - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - name: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A name for the Data Access Policy. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: name - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - policy_text: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The terms of data use and policy verbiage should be captured - here. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: policy_text - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - policy_url: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: URL for the policy, if available. This is useful if the terms - of the policy is made available online at a resolvable URL. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: policy_url - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - name - - description - - policy_text - - policy_url - - data_access_committee - - data_use_permission - - data_use_modifiers - - accession - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - EmbeddedDataset: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A Dataset is a collection of Files that is prepared for distribution - and is tied to a Data Access Policy. - disjoint_with: [] - exact_mappings: - - SIO:000089 - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: - - IdentifiedByAliasMixin - modified_by: null - name: EmbeddedDataset - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - accession: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: true - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: accession - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - data_access_policy: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The Data Access Policy that applies to this Dataset. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: data_access_policy - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: EmbeddedDataAccessPolicy - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - description: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: description - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - files: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: - - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - from_schema: null - has_member: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inlined: null - inlined_as_list: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - narrow_mappings: [] - none_of: [] - notes: [] - pattern: null - range: StudyFile - range_expression: null - rank: null - recommended: null - related_mappings: [] - required: null - see_also: [] - source: null - structured_aliases: {} - structured_pattern: null - title: null - todos: [] - unit: null - - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - from_schema: null - has_member: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inlined: null - inlined_as_list: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - narrow_mappings: [] - none_of: [] - notes: [] - pattern: null - range: SampleFile - range_expression: null - rank: null - recommended: null - related_mappings: [] - required: null - see_also: [] - source: null - structured_aliases: {} - structured_pattern: null - title: null - todos: [] - unit: null - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: All files associated with the dataset. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: files - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sample_files: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: sample_files - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: EmbeddedSampleFile - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - samples: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: samples - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: Sample - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - studies: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: studies - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: Study - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - study_files: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: study_files - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: EmbeddedStudyFile - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - title: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A title for the submitted Dataset. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: title - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - types: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The type of a dataset. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: types - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - title - - description - - types - - data_access_policy - - accession - - study_files - - studies - - sample_files - - samples - - files - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - EmbeddedSampleFile: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A SampleFile is a File that is associated with a Sample. - disjoint_with: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: File - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: [] - modified_by: null - name: EmbeddedSampleFile - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - accession: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: accession - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sample: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sample - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - sample - - accession - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - EmbeddedStudyFile: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A StudyFile is a File that is associated with a Study. - disjoint_with: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: File - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: [] - modified_by: null - name: EmbeddedStudyFile - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - accession: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: accession - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - study: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: study - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - study - - accession - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - File: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A file is an object that contains information generated from a process, - either an Experiment or an Analysis. - disjoint_with: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: - - IdentifiedByAliasMixin - modified_by: null - name: File - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - checksum: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: checksum - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - checksum_type: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: checksum_type - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - dataset: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: dataset - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - format: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: format - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - name: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The given filename. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: name - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - size: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: size - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - name - - format - - size - - checksum - - checksum_type - - dataset - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - IdentifiedByAliasMixin: - abstract: true - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - disjoint_with: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: AliasMixin - last_updated_on: null - local_names: {} - mappings: [] - mixin: true - mixins: [] - modified_by: null - name: IdentifiedByAliasMixin - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: true - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - Individual: - abstract: null - aliases: - - subject - - patient - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: An Individual is a Person who is participating in a Study. - disjoint_with: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: - - IdentifiedByAliasMixin - modified_by: null - name: Individual - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - accession: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: true - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: accession - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - age_at_sampling: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: age_at_sampling - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - ancestries: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: ancestries - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - geographical_region: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: geographical_region - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - karyotype: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: karyotype - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - phenotypic_features: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The Phenotypic Feature entity that is associated with this Biospecimen - at the time of retrieval from the organism. Typically, a concept from Human - Phenotype Ontology. For example, 'HP:0100244' indicates that the Individual - - from_which_the_Biospecimen was extracted from - exhibits_'Fibrosarcoma'_as_one_of_its_phenotype. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: phenotypic_features - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sex: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sex - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - vital_status: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Last known Vital Status of an Individual. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: vital_status - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - sex - - karyotype - - age_at_sampling - - vital_status - - geographical_region - - ancestries - - phenotypic_features - - accession - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - LibraryPreparationProtocol: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Information about the library_preparation of an sequencing experiment. - disjoint_with: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - modified_by: null - name: LibraryPreparationProtocol - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - accession: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: true - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: accession - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - attributes: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: One or more attributes that further characterizes this library_preparation - Protocol. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: attributes - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - description: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: 'Description about how a sequencing library was prepared (eg: - Library construction method).' - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: description - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - end_bias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: end_bias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - library_layout: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: library_layout - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - library_name: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: library_name - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - library_preparation: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: library_preparation - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - library_preparation_kit_manufacturer: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: library_preparation_kit_manufacturer - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - library_preparation_kit_retail_name: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: library_preparation_kit_retail_name - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - library_selection: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: library_selection - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - library_type: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: library_type - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - primer: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: primer - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - rnaseq_strandedness: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: rnaseq_strandedness - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - target_regions: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: target_regions - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - description - - library_name - - library_layout - - library_type - - library_selection - - library_preparation - - library_preparation_kit_retail_name - - library_preparation_kit_manufacturer - - primer - - end_bias - - target_regions - - rnaseq_strandedness - - accession - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - Publication: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The Publication entity represents a publication. While a publication - can be any article that is published, the minimum expectation is that the publication - has a valid DOI. - disjoint_with: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: - - IdentifiedByAliasMixin - modified_by: null - name: Publication - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - abstract: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The study abstract that describes the goals. Can also hold abstract - from a publication related to this study. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: abstract - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - accession: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: true - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: accession - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - author: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: author - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - doi: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: DOI identifier of the Publication. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: doi - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - journal: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: journal - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - study: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The Study entity associated with this Publication. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: study - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - title: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The title for the Publication. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: title - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - xref: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: One or more cross-references for this Publication. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: xref - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - year: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: year - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - title - - abstract - - author - - year - - journal - - doi - - study - - xref - - accession - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - Sample: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A sample is a limited quantity of something to be used for testing, - analysis, inspection, investigation, demonstration, or trial use. A sample is - prepared from a Biospecimen (isolate or tissue). - disjoint_with: [] - exact_mappings: - - SIO:001050 - - biolink:MaterialSample - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - modified_by: null - name: Sample - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - accession: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: true - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: accession - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - biospecimen: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The Biospecimen from which this Sample was prepared from. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: biospecimen - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - condition: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: condition - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - description: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Short textual description of the sample (How the sample was collected, - sample source, Protocol followed for processing the sample etc). - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: description - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - name: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Name of the sample (eg:GHGAS_Blood_Sample1 or GHGAS_PBMC_RNAseq_S1). - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: name - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - storage: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: storage - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - type: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The type of sample. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: type - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: SampleTypeEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - xref: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: One or more cross-references for this Sample. For example, this - Sample may have an EBI BioSamples accession or an EGA Sample accession. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: xref - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - name - - type - - description - - isolation - - storage - - biospecimen - - condition - - xref - - accession - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - SampleFile: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A SampleFile is a File that is associated with a Sample. - disjoint_with: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: File - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: [] - modified_by: null - name: SampleFile - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - accession: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: true - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: accession - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sample: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sample - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - sample - - accession - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - SequencingExperiment: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: An sequencing experiment is an investigation that consists of a coordinated - set of actions and observations designed to generate data with the goal of verifying, - falsifying, or establishing the validity of a hypothesis. - disjoint_with: [] - exact_mappings: - - SIO:000994 - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - modified_by: null - name: SequencingExperiment - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - accession: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: true - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: accession - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - description: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A detailed description of the Experiment. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: description - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - library_preparation_protocol: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: library_preparation_protocol - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_protocol: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sequencing_protocol - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - title: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: 'Name for the experiment (eg: GHGAE_PBMC_RNAseq).' - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: title - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - type: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The type of sequencing experiment. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: type - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - title - - description - - type - - sequencing_protocol - - library_preparation_protocol - - accession - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - SequencingProcess: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A sequencing process linking a sample to sequencing output. - disjoint_with: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - modified_by: null - name: SequencingProcess - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - accession: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: true - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: accession - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - description: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: description - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - name: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: name - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sample: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sample - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_experiment: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sequencing_experiment - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_lane_id: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Identifier of the sequencing lane. Used for batch correction. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sequencing_lane_id - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_machine_id: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Identifier of the sequencing machine. Used for batch correction. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sequencing_machine_id - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_run_id: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Identifier of the sequencing run. Used for batch correction. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sequencing_run_id - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - title - - description - - name - - description - - sequencing_run_id - - sequencing_lane_id - - sequencing_machine_id - - sequencing_experiment - - sample - - accession - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - SequencingProcessFile: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A SequencingProcessFile is a File that is associated with a SequencingProcess. - disjoint_with: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: File - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: [] - modified_by: null - name: SequencingProcessFile - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - accession: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: true - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: accession - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_process: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sequencing_process - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - sequencing_process - - accession - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - SequencingProtocol: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Information about the sequencing of a sample. - disjoint_with: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - modified_by: null - name: SequencingProtocol - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - accession: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: true - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: accession - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - attributes: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: One or more attributes that further characterizes this Sequencing - Protocol. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: attributes - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - cell_barcode_offset: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: cell_barcode_offset - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - cell_barcode_read: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: cell_barcode_read - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - cell_barcode_size: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: cell_barcode_size - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - description: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: 'Description about the sequencing Protocol (eg: mRNA-seq,Whole - exome long-read sequencing etc).' - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: description - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - flow_cell_id: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: flow_cell_id - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - flow_cell_type: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: flow_cell_type - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - forward_or_reverse: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: forward_or_reverse - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - index_sequence: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: index_sequence - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - instrument_model: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: instrument_model - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - lane_number: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: lane_number - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sample_barcode_read: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sample_barcode_read - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_center: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sequencing_center - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_read_length: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sequencing_read_length - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - target_coverage: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: target_coverage - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - type: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: 'Name of the library_preparation Protocol (eg: mRNA-seq,Whole - exome long-read sequencing etc).' - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: type - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - umi_barcode_offset: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: umi_barcode_offset - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - umi_barcode_read: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: umi_barcode_read - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - umi_barcode_size: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: umi_barcode_size - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: true - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: false - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - description - - type - - instrument_model - - sequencing_center - - sequencing_read_length - - forward_or_reverse - - target_coverage - - flow_cell_id - - flow_cell_type - - umi_barcode_read - - umi_barcode_offset - - umi_barcode_size - - cell_barcode_read - - cell_barcode_offset - - cell_barcode_size - - sample_barcode_read - - index_sequence - - lane_number - - accession - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - Study: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Studies are experimental investigations of a particular phenomenon. - It involves a detailed examination and analysis of a subject to learn more about - the phenomenon being studied. - disjoint_with: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - modified_by: null - name: Study - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - accession: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: true - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: accession - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - affiliations: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: affiliations - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - attributes: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: 'Custom key/value pairs that further characterizes the Study. - (e.g.: approaches - single-cell,_bulk_etc)' - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: attributes - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - description: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A detailed description (abstract) that describes the goals of - this Study. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: description - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - title: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A comprehensive title for the study. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: title - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - type: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The type of Study. For example, 'Cancer Genomics', 'Epigenetics', - 'Exome Sequencing'. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: type - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: StudyTypeEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - title - - description - - type - - affiliations - - accession - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - StudyFile: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A StudyFile is a File that is associated with a Study. - disjoint_with: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: File - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: [] - modified_by: null - name: StudyFile - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - accession: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: true - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: accession - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - study: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: study - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - study - - accession - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] - Submission: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A grouping entity that represents information about one or more entities. - A submission can be considered as a set of inter-related (and inter-connected) - entities that represent a data submission to GHGA. - disjoint_with: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: [] - modified_by: null - name: Submission - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - analyses: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: - hidden: - annotations: {} - extensions: {} - tag: hidden - value: 'True' - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Information about one or more Analysis entities associated with - this submission. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: analyses - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - analysis_process_output_files: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: - hidden: - annotations: {} - extensions: {} - tag: hidden - value: 'True' - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The AnalysisProcessOutputFiles that are part of this submission. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: analysis_process_output_files - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - analysis_processes: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: - hidden: - annotations: {} - extensions: {} - tag: hidden - value: 'True' - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The AnalysisProcesses that are part of this submission. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: analysis_processes - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - biospecimens: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: - hidden: - annotations: {} - extensions: {} - tag: hidden - value: 'True' - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Information about one or more Biospecimen entities associated - with this submission. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: biospecimens - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - conditions: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: - hidden: - annotations: {} - extensions: {} - tag: hidden - value: 'True' - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The Conditions associated with this Submission. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: conditions - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - data_access_committees: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: - hidden: - annotations: {} - extensions: {} - tag: hidden - value: 'True' - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The Data Access Committee that applies to Dataset in this submission. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: data_access_committees - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - data_access_policies: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: - hidden: - annotations: {} - extensions: {} - tag: hidden - value: 'True' - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The Data Access Policy that applies to Dataset in this submission. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: data_access_policies - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - datasets: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: - hidden: - annotations: {} - extensions: {} - tag: hidden - value: 'True' - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: One or more Dataset that are part of this submission. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: datasets - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - embedded_dataset: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Fully embedded dataset. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: embedded_dataset - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: EmbeddedDataset - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - individuals: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: - hidden: - annotations: {} - extensions: {} - tag: hidden - value: 'True' - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Information about one or more Individual entities associated - with this submission. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: individuals - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - library_preparation_protocols: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: - hidden: - annotations: {} - extensions: {} - tag: hidden - value: 'True' - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: One or more library preparation protocol entities associated - with this Submission. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: library_preparation_protocols - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - publications: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: - hidden: - annotations: {} - extensions: {} - tag: hidden - value: 'True' - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: One or more Publication entities associated with this Submission. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: publications - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sample_files: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: - hidden: - annotations: {} - extensions: {} - tag: hidden - value: 'True' - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The SampleFiles that are part of this submission. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sample_files - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - samples: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: - hidden: - annotations: {} - extensions: {} - tag: hidden - value: 'True' - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Information about one or more Sample entities associated with - this submission. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: samples - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_experiments: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: - hidden: - annotations: {} - extensions: {} - tag: hidden - value: 'True' - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Information about one or more Experiment entities associated - with this submission. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sequencing_experiments - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_process_files: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: - hidden: - annotations: {} - extensions: {} - tag: hidden - value: 'True' - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The SequencingProcessFiles that are part of this submission. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sequencing_process_files - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_processes: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: - hidden: - annotations: {} - extensions: {} - tag: hidden - value: 'True' - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The SequencingProcesses that are part of this submission. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sequencing_processes - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_protocols: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: - hidden: - annotations: {} - extensions: {} - tag: hidden - value: 'True' - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: One or more sequencing protocol entities associated with this - Submission. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sequencing_protocols - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - studies: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: - hidden: - annotations: {} - extensions: {} - tag: hidden - value: 'True' - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Information about a Study entities associated with this submission. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: studies - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - study_files: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: - hidden: - annotations: {} - extensions: {} - tag: hidden - value: 'True' - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The StudyFiles that are part of this submission. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: study_files - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - trios: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: - hidden: - annotations: {} - extensions: {} - tag: hidden - value: 'True' - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The Trios associated with this Submission. - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: trios - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - analyses - - analysis_process_output_files - - analysis_processes - - biospecimens - - conditions - - data_access_committees - - data_access_policies - - datasets - - individuals - - library_preparation_protocols - - publications - - sample_files - - samples - - sequencing_experiments - - sequencing_process_files - - sequencing_processes - - sequencing_protocols - - studies - - study_files - - trios - - embedded_dataset - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: true - union_of: [] - unique_keys: {} - values_from: [] - Trio: - abstract: null - aliases: [] - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - attributes: {} - broad_mappings: [] - children_are_mutually_disjoint: null - class_uri: null - classification_rules: [] - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - defining_slots: [] - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A trio is defined by three individuals representing an individual - and their parents. - disjoint_with: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - mixin: null - mixins: - - IdentifiedByAliasMixin - modified_by: null - name: Trio - narrow_mappings: [] - none_of: [] - notes: [] - rank: null - related_mappings: [] - represents_relationship: null - rules: [] - see_also: [] - slot_conditions: {} - slot_names_unique: null - slot_usage: - accession: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: true - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: accession - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - alias: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: false - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - child: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: child - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - father: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: father - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - mother: - abstract: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: mother - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - slots: - - mother - - father - - child - - accession - source: null - status: null - string_serialization: null - structured_aliases: {} - subclass_of: null - title: null - todos: [] - tree_root: null - union_of: [] - unique_keys: {} - values_from: [] -close_mappings: [] -comments: [] -conforms_to: null -default_curi_maps: -- obo_context -- idot_context -- semweb_context -default_prefix: GHGA -default_range: string -definition_uri: null -deprecated: null -deprecated_element_has_exact_replacement: null -deprecated_element_has_possible_replacement: null -description: The submission centric metadata schema for the German Human Genome-Phenome - Archive (GHGA). -emit_prefixes: [] -enums: - AgeRangeEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Enum to capture the age range that an Indiviudal belongs to. - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: AgeRangeEnum - narrow_mappings: [] - notes: [] - permissible_values: - 0_TO_5: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Age between 0 to 5. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: 0_TO_5 - title: null - todos: [] - unit: null - 11_TO_15: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Age between 11 to 15. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: 11_TO_15 - title: null - todos: [] - unit: null - 16_TO_20: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Age between 16 to 20. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: 16_TO_20 - title: null - todos: [] - unit: null - 21_TO_25: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Age between 21 to 25. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: 21_TO_25 - title: null - todos: [] - unit: null - 26_TO_30: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Age between 26 to 30. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: 26_TO_30 - title: null - todos: [] - unit: null - 31_TO_35: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Age between 31 to 35. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: 31_TO_35 - title: null - todos: [] - unit: null - 36_TO_40: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Age between 36 to 40. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: 36_TO_40 - title: null - todos: [] - unit: null - 41_TO_45: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Age between 41 to 45. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: 41_TO_45 - title: null - todos: [] - unit: null - 46_TO_50: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Age between 46 to 50. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: 46_TO_50 - title: null - todos: [] - unit: null - 51_TO_55: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Age between 51 to 55. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: 51_TO_55 - title: null - todos: [] - unit: null - 56_TO_60: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Age between 56 to 60. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: 56_TO_60 - title: null - todos: [] - unit: null - 61_TO_65: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Age between 61 to 65. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: 61_TO_65 - title: null - todos: [] - unit: null - 66_TO_70: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Age between 66 to 70. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: 66_TO_70 - title: null - todos: [] - unit: null - 6_TO_10: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Age between 6 to 10. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: 6_TO_10 - title: null - todos: [] - unit: null - 71_TO_75: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Age between 71 to 75. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: 71_TO_75 - title: null - todos: [] - unit: null - 76_TO_80: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Age between 76 to 80. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: 76_TO_80 - title: null - todos: [] - unit: null - 81_OR_OLDER: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Age above 80. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: 81_OR_OLDER - title: null - todos: [] - unit: null - UNKNOWN: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Age range unknown. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: UNKNOWN - title: null - todos: [] - unit: null - pv_formula: null - rank: null - reachable_from: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - AncestryEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Permitted values for ancestry - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: AncestryEnum - narrow_mappings: [] - notes: [] - permissible_values: {} - pv_formula: null - rank: null - reachable_from: - include_self: false - is_direct: null - relationship_types: [] - source_nodes: - - HANCESTRO:0004 - source_ontology: http://purl.obolibrary.org/obo/hancestro/releases/2022-05-12/hancestro.owl - traverse_up: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - CaseControlStatusEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Enum to capture whether a condition corresponds to a case or a control - condition. - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: CaseControlStatusEnum - narrow_mappings: [] - notes: [] - permissible_values: - NEITHER_CASE_OR_CONTROL_STATUS: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: NCIT:C99273 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: NEITHER_CASE_OR_CONTROL_STATUS - title: null - todos: [] - unit: null - PROBABLE_CASE_STATUS: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: NCIT:C99271 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: PROBABLE_CASE_STATUS - title: null - todos: [] - unit: null - PROBABLE_CONTROL_STATUS: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: NCIT:C99272 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: PROBABLE_CONTROL_STATUS - title: null - todos: [] - unit: null - TRUE_CASE_STATUS: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: NCIT:C99269 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: TRUE_CASE_STATUS - title: null - todos: [] - unit: null - TRUE_CONTROL_STATUS: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: NCIT:C99270 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: TRUE_CONTROL_STATUS - title: null - todos: [] - unit: null - UNABLE_TO_ASSESS_CASE_OR_CONTROL_STATUS: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: NCIT:C99274 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: UNABLE_TO_ASSESS_CASE_OR_CONTROL_STATUS - title: null - todos: [] - unit: null - pv_formula: null - rank: null - reachable_from: - include_self: false - is_direct: null - relationship_types: [] - source_nodes: - - NCIT:C99268 - source_ontology: http://purl.obolibrary.org/obo/ncit/releases/2022-08-19/ncit.owl - traverse_up: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - DataUseModifierEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Permitted values for data use modifier - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: DataUseModifierEnum - narrow_mappings: [] - notes: [] - permissible_values: - clinical care use: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: DUO:0000043 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: clinical care use - title: null - todos: [] - unit: null - collaboration required: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: DUO:0000020 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: collaboration required - title: null - todos: [] - unit: null - ethics approval required: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: DUO:0000021 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ethics approval required - title: null - todos: [] - unit: null - genetic studies only: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: DUO:0000016 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: genetic studies only - title: null - todos: [] - unit: null - geographical restriction: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: DUO:0000022 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: geographical restriction - title: null - todos: [] - unit: null - institution specific restriction: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: DUO:0000028 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: institution specific restriction - title: null - todos: [] - unit: null - no general methods research: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: DUO:0000015 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: no general methods research - title: null - todos: [] - unit: null - non-commercial use only: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: DUO:0000046 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: non-commercial use only - title: null - todos: [] - unit: null - not for profit organisation use only: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: DUO:0000045 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: not for profit organisation use only - title: null - todos: [] - unit: null - not for profit, non commercial use only: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: DUO:0000018 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: not for profit, non commercial use only - title: null - todos: [] - unit: null - population origins or ancestry research prohibited: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: DUO:00000044 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: population origins or ancestry research prohibited - title: null - todos: [] - unit: null - project specific restriction: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: DUO:0000027 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: project specific restriction - title: null - todos: [] - unit: null - publication moratorium: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: DUO:0000024 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: publication moratorium - title: null - todos: [] - unit: null - publication required: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: DUO:0000019 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: publication required - title: null - todos: [] - unit: null - research specific restrictions: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: DUO:0000012 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: research specific restrictions - title: null - todos: [] - unit: null - return to database or resource: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: DUO:0000029 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: return to database or resource - title: null - todos: [] - unit: null - time limit on use: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: DUO:0000025 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: time limit on use - title: null - todos: [] - unit: null - user specific restriction: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: DUO:0000026 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: user specific restriction - title: null - todos: [] - unit: null - pv_formula: null - rank: null - reachable_from: - include_self: false - is_direct: null - relationship_types: [] - source_nodes: - - DUO:0000017 - source_ontology: http://purl.obolibrary.org/obo/duo/releases/2021-02-23/duo.owl - traverse_up: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - DataUsePermissionEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Permitted values for data use permission - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: DataUsePermissionEnum - narrow_mappings: [] - notes: [] - permissible_values: - disease specific research: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: DUO:0000007 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: disease specific research - title: null - todos: [] - unit: null - general research use: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: DUO:0000042 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: general research use - title: null - todos: [] - unit: null - health or medical or biomedical research: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: DUO:0000006 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: health or medical or biomedical research - title: null - todos: [] - unit: null - no restriction: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: DUO:0000004 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: no restriction - title: null - todos: [] - unit: null - population origins or ancestry research only: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: DUO:0000011 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: population origins or ancestry research only - title: null - todos: [] - unit: null - pv_formula: null - rank: null - reachable_from: - include_self: false - is_direct: null - relationship_types: [] - source_nodes: - - DUO:0000001 - source_ontology: http://purl.obolibrary.org/obo/duo/releases/2021-02-23/duo.owl - traverse_up: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - DiseaseOrHealthyEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Enum to capture whether a condition corresponds to a disease or a - healthy state. - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: DiseaseOrHealthyEnum - narrow_mappings: [] - notes: [] - permissible_values: - DISEASE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Disease state. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: DISEASE - title: null - todos: [] - unit: null - HEALTHY: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Healthy state. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: HEALTHY - title: null - todos: [] - unit: null - NOT_APPLICABLE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The distinction is not applicaple. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: NOT_APPLICABLE - title: null - todos: [] - unit: null - pv_formula: null - rank: null - reachable_from: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - EndBiasEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Permitted values for end bias - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: EndBiasEnum - narrow_mappings: [] - notes: [] - permissible_values: - 3_PRIME_END: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: 3_PRIME_END - title: null - todos: [] - unit: null - 5_PRIME_END: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: 5_PRIME_END - title: null - todos: [] - unit: null - FULL_LENGTH: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: FULL_LENGTH - title: null - todos: [] - unit: null - pv_formula: null - rank: null - reachable_from: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - FileFormatEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Enum to capture file types. - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: FileFormatEnum - narrow_mappings: [] - notes: [] - permissible_values: - AGP: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: AGP - title: null - todos: [] - unit: null - BAI: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: BAI - title: null - todos: [] - unit: null - BAM: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: BAM - title: null - todos: [] - unit: null - BCF: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: BCF - title: null - todos: [] - unit: null - BED: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: BED - title: null - todos: [] - unit: null - CRAI: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: CRAI - title: null - todos: [] - unit: null - CRAM: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: CRAM - title: null - todos: [] - unit: null - CSV: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: CSV - title: null - todos: [] - unit: null - FASTA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: FASTA - title: null - todos: [] - unit: null - FASTQ: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: FASTQ - title: null - todos: [] - unit: null - GFF: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: GFF - title: null - todos: [] - unit: null - HDF5: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: HDF5 - title: null - todos: [] - unit: null - INFO: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: INFO - title: null - todos: [] - unit: null - JSON: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: JSON - title: null - todos: [] - unit: null - MD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: MD - title: null - todos: [] - unit: null - OTHER: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: OTHER - title: null - todos: [] - unit: null - PED: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: PED - title: null - todos: [] - unit: null - SAM: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: SAM - title: null - todos: [] - unit: null - SFF: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: SFF - title: null - todos: [] - unit: null - SRF: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: SRF - title: null - todos: [] - unit: null - TAB: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: TAB - title: null - todos: [] - unit: null - TABIX: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: TABIX - title: null - todos: [] - unit: null - TSV: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: TSV - title: null - todos: [] - unit: null - TXT: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: TXT - title: null - todos: [] - unit: null - VCF: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: VCF - title: null - todos: [] - unit: null - WIG: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: WIG - title: null - todos: [] - unit: null - pv_formula: null - rank: null - reachable_from: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - FlowCellTypeEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Permitted values for flow cell type - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: FlowCellTypeEnum - narrow_mappings: [] - notes: [] - permissible_values: - FLONGLE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: FLONGLE - title: null - todos: [] - unit: null - GRID_ION: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: GRID_ION - title: null - todos: [] - unit: null - ILLUMINA_NOVA_SEQ_S2: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_NOVA_SEQ_S2 - title: null - todos: [] - unit: null - ILLUMINA_NOVA_SEQ_S4: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_NOVA_SEQ_S4 - title: null - todos: [] - unit: null - MIN_ION: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: MIN_ION - title: null - todos: [] - unit: null - OTHER: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: OTHER - title: null - todos: [] - unit: null - PROMETH_ION: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: PROMETH_ION - title: null - todos: [] - unit: null - pv_formula: null - rank: null - reachable_from: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - ForwardOrReverseEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Enum to capture whether the reads from paired-end sequencing are - forward (R1) or reverse (R2). - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: ForwardOrReverseEnum - narrow_mappings: [] - notes: [] - permissible_values: - FORWARD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The reads are forward (R1) reads - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: FORWARD - title: null - todos: [] - unit: null - REVERSE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The reads are reverse (R2) reads - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: REVERSE - title: null - todos: [] - unit: null - pv_formula: null - rank: null - reachable_from: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - GeographicalRegionEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Permitted values for geographical region - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: GeographicalRegionEnum - narrow_mappings: [] - notes: [] - permissible_values: {} - pv_formula: null - rank: null - reachable_from: - include_self: false - is_direct: null - relationship_types: [] - source_nodes: - - HANCESTRO:0002 - source_ontology: http://purl.obolibrary.org/obo/hancestro/releases/2022-05-12/hancestro.owl - traverse_up: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - IndexReadEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Permitted Values to indicate the location of a sequence component - in a read or index - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: IndexReadEnum - narrow_mappings: [] - notes: [] - permissible_values: - INDEX1: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: INDEX1 - title: null - todos: [] - unit: null - INDEX2: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: INDEX2 - title: null - todos: [] - unit: null - READ1: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: READ1 - title: null - todos: [] - unit: null - READ2: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: READ2 - title: null - todos: [] - unit: null - pv_formula: null - rank: null - reachable_from: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - IndividualSexEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The sex of an Individual as as defined in a specific medical and - clinical context. - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: IndividualSexEnum - narrow_mappings: [] - notes: [] - permissible_values: - FEMALE_SEX_FOR_CLINICAL_USE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: GSSO:011317 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: FEMALE_SEX_FOR_CLINICAL_USE - title: null - todos: [] - unit: null - IMAGING_SEX: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: GSSO:009318 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: IMAGING_SEX - title: null - todos: [] - unit: null - MALE_SEX_FOR_CLINICAL_USE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: GSSO:011318 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: MALE_SEX_FOR_CLINICAL_USE - title: null - todos: [] - unit: null - SPECIFIED_SEX_FOR_CLINICAL_USE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: GSSO:011319 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: SPECIFIED_SEX_FOR_CLINICAL_USE - title: null - todos: [] - unit: null - UNKNOWN_SEX_FOR_CLINICAL_USE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: GSSO:011320 - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: UNKNOWN_SEX_FOR_CLINICAL_USE - title: null - todos: [] - unit: null - pv_formula: null - rank: null - reachable_from: - include_self: false - is_direct: null - relationship_types: [] - source_nodes: - - GSSO:009428 - source_ontology: http://purl.obolibrary.org/obo/gsso/releases/2.0.5/gsso.owl - traverse_up: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - InstrumentModelEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Permitted values for instrument model - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: InstrumentModelEnum - narrow_mappings: [] - notes: [] - permissible_values: - DNBSEQ_G400: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: DNBSEQ_G400 - title: null - todos: [] - unit: null - DNBSEQ_G400_FAST: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: DNBSEQ_G400_FAST - title: null - todos: [] - unit: null - DNBSEQ_G50: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: DNBSEQ_G50 - title: null - todos: [] - unit: null - DNBSEQ_T7: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: DNBSEQ_T7 - title: null - todos: [] - unit: null - ILLUMINA_GENOME_ANALYZER: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_GENOME_ANALYZER - title: null - todos: [] - unit: null - ILLUMINA_GENOME_ANALYZER_II: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_GENOME_ANALYZER_II - title: null - todos: [] - unit: null - ILLUMINA_GENOME_ANALYZER_IIX: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_GENOME_ANALYZER_IIX - title: null - todos: [] - unit: null - ILLUMINA_HI_SCAN: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_HI_SCAN - title: null - todos: [] - unit: null - ILLUMINA_HI_SCAN_SQ: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_HI_SCAN_SQ - title: null - todos: [] - unit: null - ILLUMINA_HI_SEQ_1000: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_HI_SEQ_1000 - title: null - todos: [] - unit: null - ILLUMINA_HI_SEQ_1500: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_HI_SEQ_1500 - title: null - todos: [] - unit: null - ILLUMINA_HI_SEQ_2000: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_HI_SEQ_2000 - title: null - todos: [] - unit: null - ILLUMINA_HI_SEQ_2500: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_HI_SEQ_2500 - title: null - todos: [] - unit: null - ILLUMINA_HI_SEQ_3000: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_HI_SEQ_3000 - title: null - todos: [] - unit: null - ILLUMINA_HI_SEQ_4000: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_HI_SEQ_4000 - title: null - todos: [] - unit: null - ILLUMINA_HI_SEQ_X: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_HI_SEQ_X - title: null - todos: [] - unit: null - ILLUMINA_HI_SEQ_X_FIVE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_HI_SEQ_X_FIVE - title: null - todos: [] - unit: null - ILLUMINA_HI_SEQ_X_TEN: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_HI_SEQ_X_TEN - title: null - todos: [] - unit: null - ILLUMINA_I_SCAN: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_I_SCAN - title: null - todos: [] - unit: null - ILLUMINA_I_SEQ_100: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_I_SEQ_100 - title: null - todos: [] - unit: null - ILLUMINA_MINI_SEQ: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_MINI_SEQ - title: null - todos: [] - unit: null - ILLUMINA_MI_SEQ: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_MI_SEQ - title: null - todos: [] - unit: null - ILLUMINA_MI_SEQ_DX: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_MI_SEQ_DX - title: null - todos: [] - unit: null - ILLUMINA_MI_SEQ_DX_RESEARCH_MODE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_MI_SEQ_DX_RESEARCH_MODE - title: null - todos: [] - unit: null - ILLUMINA_NEXT_SEQ_1000: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_NEXT_SEQ_1000 - title: null - todos: [] - unit: null - ILLUMINA_NEXT_SEQ_2000: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_NEXT_SEQ_2000 - title: null - todos: [] - unit: null - ILLUMINA_NEXT_SEQ_500: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_NEXT_SEQ_500 - title: null - todos: [] - unit: null - ILLUMINA_NEXT_SEQ_550: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_NEXT_SEQ_550 - title: null - todos: [] - unit: null - ILLUMINA_NEXT_SEQ_550_DX: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_NEXT_SEQ_550_DX - title: null - todos: [] - unit: null - ILLUMINA_NEXT_SEQ_550_DX_RESEARCH_MODE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_NEXT_SEQ_550_DX_RESEARCH_MODE - title: null - todos: [] - unit: null - ILLUMINA_NOVA_SEQ_6000: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_NOVA_SEQ_6000 - title: null - todos: [] - unit: null - ONT_GRID_ION: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ONT_GRID_ION - title: null - todos: [] - unit: null - ONT_MIN_ION: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ONT_MIN_ION - title: null - todos: [] - unit: null - ONT_PROMETH_ION: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ONT_PROMETH_ION - title: null - todos: [] - unit: null - OTHER: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: OTHER - title: null - todos: [] - unit: null - PAC_BIO_ONSO: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: PAC_BIO_ONSO - title: null - todos: [] - unit: null - PAC_BIO_REVIO: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: PAC_BIO_REVIO - title: null - todos: [] - unit: null - PAC_BIO_RS: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: PAC_BIO_RS - title: null - todos: [] - unit: null - PAC_BIO_RS_II: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: PAC_BIO_RS_II - title: null - todos: [] - unit: null - PAC_BIO_SEQUEL: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: PAC_BIO_SEQUEL - title: null - todos: [] - unit: null - PAC_BIO_SEQUEL_II: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: PAC_BIO_SEQUEL_II - title: null - todos: [] - unit: null - PAC_BIO_SEQUEL_IIE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: PAC_BIO_SEQUEL_IIE - title: null - todos: [] - unit: null - ULTIMA_UG_100: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ULTIMA_UG_100 - title: null - todos: [] - unit: null - pv_formula: null - rank: null - reachable_from: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - IsolationEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Describes how biomaterial was isolated. - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: IsolationEnum - narrow_mappings: [] - notes: [] - permissible_values: {} - pv_formula: null - rank: null - reachable_from: - include_self: false - is_direct: null - relationship_types: [] - source_nodes: - - SNOMED:118292001 - source_ontology: http://snomed.info/sct/900000000000207008/version/20200131 - traverse_up: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - KaryotypeEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Permitted values for karyotype - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: KaryotypeEnum - narrow_mappings: [] - notes: [] - permissible_values: - 46_XX: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: 46_XX - title: null - todos: [] - unit: null - 46_XY: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: 46_XY - title: null - todos: [] - unit: null - OTHER: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: OTHER - title: null - todos: [] - unit: null - pv_formula: null - rank: null - reachable_from: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - LibraryPreparationKitRetailNameEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Permitted values for library preparation kit retail name - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: LibraryPreparationKitRetailNameEnum - narrow_mappings: [] - notes: [] - permissible_values: - 10X_GENOMICS_CHROMIUM_SINGLE_CELL_3_V2: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: 10X_GENOMICS_CHROMIUM_SINGLE_CELL_3_V2 - title: null - todos: [] - unit: null - 10X_GENOMICS_CHROMIUM_SINGLE_CELL_3_V3: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: 10X_GENOMICS_CHROMIUM_SINGLE_CELL_3_V3 - title: null - todos: [] - unit: null - ACCEL_NGS_2_S_PLUS_DNA_LIBRARY_KIT: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ACCEL_NGS_2_S_PLUS_DNA_LIBRARY_KIT - title: null - todos: [] - unit: null - ACCEL_NGS_METHYL_SEQ_DNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ACCEL_NGS_METHYL_SEQ_DNA - title: null - todos: [] - unit: null - AGILENT_STRAND_SPECIFIC_RNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: AGILENT_STRAND_SPECIFIC_RNA - title: null - todos: [] - unit: null - AGILENT_SURE_SELECT_CUSTOM_ENRICHMENT_KIT: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: AGILENT_SURE_SELECT_CUSTOM_ENRICHMENT_KIT - title: null - todos: [] - unit: null - AGILENT_SURE_SELECT_V3: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: AGILENT_SURE_SELECT_V3 - title: null - todos: [] - unit: null - AGILENT_SURE_SELECT_V4: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: AGILENT_SURE_SELECT_V4 - title: null - todos: [] - unit: null - AGILENT_SURE_SELECT_V4_UT_RS: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: AGILENT_SURE_SELECT_V4_UT_RS - title: null - todos: [] - unit: null - AGILENT_SURE_SELECT_V5: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: AGILENT_SURE_SELECT_V5 - title: null - todos: [] - unit: null - AGILENT_SURE_SELECT_V5_UT_RS: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: AGILENT_SURE_SELECT_V5_UT_RS - title: null - todos: [] - unit: null - AGILENT_SURE_SELECT_V6: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: AGILENT_SURE_SELECT_V6 - title: null - todos: [] - unit: null - AGILENT_SURE_SELECT_V6_ONE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: AGILENT_SURE_SELECT_V6_ONE - title: null - todos: [] - unit: null - AGILENT_SURE_SELECT_V6_UT_RS: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: AGILENT_SURE_SELECT_V6_UT_RS - title: null - todos: [] - unit: null - AGILENT_SURE_SELECT_V7: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: AGILENT_SURE_SELECT_V7 - title: null - todos: [] - unit: null - AGILENT_SURE_SELECT_WGS: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: AGILENT_SURE_SELECT_WGS - title: null - todos: [] - unit: null - AGILENT_SURE_SELECT_XT_HS_HUMAN_ALL_EXON_V7: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: AGILENT_SURE_SELECT_XT_HS_HUMAN_ALL_EXON_V7 - title: null - todos: [] - unit: null - AGILENT_SURE_SELECT_XT_MOUSE_ALL_EXON: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: AGILENT_SURE_SELECT_XT_MOUSE_ALL_EXON - title: null - todos: [] - unit: null - AGILENT_XT_HS_SURE_SELECT_CLINICAL_RESEARCH_EXOME_V2: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: AGILENT_XT_HS_SURE_SELECT_CLINICAL_RESEARCH_EXOME_V2 - title: null - todos: [] - unit: null - AVENIO_CT_DNA_KIT: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: AVENIO_CT_DNA_KIT - title: null - todos: [] - unit: null - IDT_X_GEN_EXOME_RESEARCH_PANEL: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: IDT_X_GEN_EXOME_RESEARCH_PANEL - title: null - todos: [] - unit: null - ILLUMINA_DNA_PCR_FREE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_DNA_PCR_FREE - title: null - todos: [] - unit: null - ILLUMINA_NEXTERA_DNA_FLEX: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_NEXTERA_DNA_FLEX - title: null - todos: [] - unit: null - ILLUMINA_NEXTERA_EXOME_ENRICHMENT_KIT: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_NEXTERA_EXOME_ENRICHMENT_KIT - title: null - todos: [] - unit: null - ILLUMINA_STRANDED_M_RNA_PREP_LIGATION: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_STRANDED_M_RNA_PREP_LIGATION - title: null - todos: [] - unit: null - ILLUMINA_TRUSEQ_PCR_FREE_METHYL: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_TRUSEQ_PCR_FREE_METHYL - title: null - todos: [] - unit: null - ILLUMINA_TRU_SEQ_CH_IP_SAMPLE_PREPARATION_KIT: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_TRU_SEQ_CH_IP_SAMPLE_PREPARATION_KIT - title: null - todos: [] - unit: null - ILLUMINA_TRU_SEQ_CUSTOM_AMPLICON: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_TRU_SEQ_CUSTOM_AMPLICON - title: null - todos: [] - unit: null - ILLUMINA_TRU_SEQ_DNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_TRU_SEQ_DNA - title: null - todos: [] - unit: null - ILLUMINA_TRU_SEQ_NANO_DNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_TRU_SEQ_NANO_DNA - title: null - todos: [] - unit: null - ILLUMINA_TRU_SEQ_NANO_DNA_HT: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_TRU_SEQ_NANO_DNA_HT - title: null - todos: [] - unit: null - ILLUMINA_TRU_SEQ_NANO_DNA_LT: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_TRU_SEQ_NANO_DNA_LT - title: null - todos: [] - unit: null - ILLUMINA_TRU_SEQ_NANO_FFPE_DNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_TRU_SEQ_NANO_FFPE_DNA - title: null - todos: [] - unit: null - ILLUMINA_TRU_SEQ_PCR_FREE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_TRU_SEQ_PCR_FREE - title: null - todos: [] - unit: null - ILLUMINA_TRU_SEQ_PCR_FREE_DNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_TRU_SEQ_PCR_FREE_DNA - title: null - todos: [] - unit: null - ILLUMINA_TRU_SEQ_RNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_TRU_SEQ_RNA - title: null - todos: [] - unit: null - ILLUMINA_TRU_SEQ_SMALL_RNA_KIT: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_TRU_SEQ_SMALL_RNA_KIT - title: null - todos: [] - unit: null - ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_KIT: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_KIT - title: null - todos: [] - unit: null - ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_LIBRARY_PREP_GLOBIN: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_LIBRARY_PREP_GLOBIN - title: null - todos: [] - unit: null - ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_RIBO_MINUS_GOLD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_RIBO_MINUS_GOLD - title: null - todos: [] - unit: null - ILLUMINA_VAHTS_TOTAL_RNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ILLUMINA_VAHTS_TOTAL_RNA - title: null - todos: [] - unit: null - INFORM_ONCO_PANEL_HG19: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: INFORM_ONCO_PANEL_HG19 - title: null - todos: [] - unit: null - ION_AMPLI_SEQ_EXOME_KIT: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ION_AMPLI_SEQ_EXOME_KIT - title: null - todos: [] - unit: null - KAPA_HIFI_HOT_START_READYMIX: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: KAPA_HIFI_HOT_START_READYMIX - title: null - todos: [] - unit: null - KAPA_HYPER_PLUS_KIT: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: KAPA_HYPER_PLUS_KIT - title: null - todos: [] - unit: null - KAPA_HYPER_PREP_KIT: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: KAPA_HYPER_PREP_KIT - title: null - todos: [] - unit: null - KAPA_M_RNA_HYPER_PREP_KIT: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: KAPA_M_RNA_HYPER_PREP_KIT - title: null - todos: [] - unit: null - MAGNETIC_METHYLATED_DNA_IMMUNOPRECIPITATION_DIAGNODE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: MAGNETIC_METHYLATED_DNA_IMMUNOPRECIPITATION_DIAGNODE - title: null - todos: [] - unit: null - NEBNEXT_ULTRA_DIRECTIONAL_RNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: NEBNEXT_ULTRA_DIRECTIONAL_RNA - title: null - todos: [] - unit: null - NEB_NEXT_CH_IP_SEQ_LIBRARY_PREP_KIT_FOR_ILLUMINA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: NEB_NEXT_CH_IP_SEQ_LIBRARY_PREP_KIT_FOR_ILLUMINA - title: null - todos: [] - unit: null - NEB_NEXT_GLOBIN_R_RNA_DEPLETION_KIT_HUMAN_MOUSE_RAT_WITH_BEADS: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: NEB_NEXT_GLOBIN_R_RNA_DEPLETION_KIT_HUMAN_MOUSE_RAT_WITH_BEADS - title: null - todos: [] - unit: null - NEB_NEXT_POLY_A_M_RNA_MAGNETIC_ISOLATION_MODULE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: NEB_NEXT_POLY_A_M_RNA_MAGNETIC_ISOLATION_MODULE - title: null - todos: [] - unit: null - NEB_NEXT_RNA_ULTRA_II_STRANDED: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: NEB_NEXT_RNA_ULTRA_II_STRANDED - title: null - todos: [] - unit: null - NEB_NEXT_ULTRA_DNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: NEB_NEXT_ULTRA_DNA - title: null - todos: [] - unit: null - NEB_NEXT_ULTRA_DNA_LIBRARY_PREP_KIT_FOR_ILLUMINA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: NEB_NEXT_ULTRA_DNA_LIBRARY_PREP_KIT_FOR_ILLUMINA - title: null - todos: [] - unit: null - NEB_NEXT_ULTRA_II_DIRECTIONAL_RNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: NEB_NEXT_ULTRA_II_DIRECTIONAL_RNA - title: null - todos: [] - unit: null - NEB_NEXT_ULTRA_II_DNA_LIBRARY_PREP_KIT_FOR_ILLUMINA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: NEB_NEXT_ULTRA_II_DNA_LIBRARY_PREP_KIT_FOR_ILLUMINA - title: null - todos: [] - unit: null - NEXTERA_XT_DNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: NEXTERA_XT_DNA - title: null - todos: [] - unit: null - OLIGO_D_T: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: OLIGO_D_T - title: null - todos: [] - unit: null - PICO_METHYL_SEQ: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: PICO_METHYL_SEQ - title: null - todos: [] - unit: null - SMART_SEQ_V4_ULTRA_LOW_INPUT_RNA_KIT: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: SMART_SEQ_V4_ULTRA_LOW_INPUT_RNA_KIT - title: null - todos: [] - unit: null - SMAR_TER_STRANDED_TOTAL_RNA_SEQ_KIT: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: SMAR_TER_STRANDED_TOTAL_RNA_SEQ_KIT - title: null - todos: [] - unit: null - SMAR_TER_ULTRA_LOW_INPUT_RNA_AND_NEB_NEXT_CH_IP_SEQ: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: SMAR_TER_ULTRA_LOW_INPUT_RNA_AND_NEB_NEXT_CH_IP_SEQ - title: null - todos: [] - unit: null - SMAR_TER_ULTRA_LOW_INPUT_RNA_V4_AND_NEB_NEXT_CH_IP_SEQ: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: SMAR_TER_ULTRA_LOW_INPUT_RNA_V4_AND_NEB_NEXT_CH_IP_SEQ - title: null - todos: [] - unit: null - SMAR_TSEQ2_TAG: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: SMAR_TSEQ2_TAG - title: null - todos: [] - unit: null - SUPER_SCRIPT_II_RT_BULK: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: SUPER_SCRIPT_II_RT_BULK - title: null - todos: [] - unit: null - SURE_CELL_ATAC_SEQ_LIBRARY_PREP_KIT: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: SURE_CELL_ATAC_SEQ_LIBRARY_PREP_KIT - title: null - todos: [] - unit: null - SURE_SELECT_EUROFINS_ENRICHMENT_CUSTOM_01: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: SURE_SELECT_EUROFINS_ENRICHMENT_CUSTOM_01 - title: null - todos: [] - unit: null - TAKARA_CLONTECH_SMAR_TER_STRANDED_TOTAL_RNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: TAKARA_CLONTECH_SMAR_TER_STRANDED_TOTAL_RNA - title: null - todos: [] - unit: null - TAKARA_SMAR_TER_PREP_X_DNA_LIBRARY_KIT_ACTIVE_MOTIF_CUSTOM_INDICES_01: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: TAKARA_SMAR_TER_PREP_X_DNA_LIBRARY_KIT_ACTIVE_MOTIF_CUSTOM_INDICES_01 - title: null - todos: [] - unit: null - TEMPLATE_SWITCHING_RT_ENZYME_MIX_BULK: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: TEMPLATE_SWITCHING_RT_ENZYME_MIX_BULK - title: null - todos: [] - unit: null - TWIST_HUMAN_CORE_EXOME_PLUS_KIT: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: TWIST_HUMAN_CORE_EXOME_PLUS_KIT - title: null - todos: [] - unit: null - ULTRALOW_METHYL_SEQ_WITH_TRUE_METHYL_OX_BS_MODULE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ULTRALOW_METHYL_SEQ_WITH_TRUE_METHYL_OX_BS_MODULE - title: null - todos: [] - unit: null - pv_formula: null - rank: null - reachable_from: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - LibraryPreparationLibraryLayoutEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Single-end vs paired-end library - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: LibraryPreparationLibraryLayoutEnum - narrow_mappings: [] - notes: [] - permissible_values: - PE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: PE - title: null - todos: [] - unit: null - SE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: SE - title: null - todos: [] - unit: null - pv_formula: null - rank: null - reachable_from: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - LibraryPreparationLibrarySelectionEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Permitted vocabulary for library selections - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: LibraryPreparationLibrarySelectionEnum - narrow_mappings: [] - notes: [] - permissible_values: - 5_METHYLCYTIDINE_ANTIBODY_METHOD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: 5_METHYLCYTIDINE_ANTIBODY_METHOD - title: null - todos: [] - unit: null - CAGE_METHOD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: CAGE_METHOD - title: null - todos: [] - unit: null - CF_H_METHOD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: CF_H_METHOD - title: null - todos: [] - unit: null - CF_M_METHOD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: CF_M_METHOD - title: null - todos: [] - unit: null - CF_S_METHOD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: CF_S_METHOD - title: null - todos: [] - unit: null - CF_T_METHOD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: CF_T_METHOD - title: null - todos: [] - unit: null - CH_IP_SEQ_METHOD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: CH_IP_SEQ_METHOD - title: null - todos: [] - unit: null - C_DNA_METHOD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: C_DNA_METHOD - title: null - todos: [] - unit: null - D_NASE_METHOD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: D_NASE_METHOD - title: null - todos: [] - unit: null - HMPR_METHOD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: HMPR_METHOD - title: null - todos: [] - unit: null - HYBRID_SELECTION_METHOD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: HYBRID_SELECTION_METHOD - title: null - todos: [] - unit: null - INVERSE_R_RNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: INVERSE_R_RNA - title: null - todos: [] - unit: null - MBD2_PROTEIN_METHYL_CP_G_BINDING_DOMAIN_METHOD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: MBD2_PROTEIN_METHYL_CP_G_BINDING_DOMAIN_METHOD - title: null - todos: [] - unit: null - MDA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: MDA - title: null - todos: [] - unit: null - MF_METHOD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: MF_METHOD - title: null - todos: [] - unit: null - MSLL_METHOD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: MSLL_METHOD - title: null - todos: [] - unit: null - M_NASE_METHOD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: M_NASE_METHOD - title: null - todos: [] - unit: null - OLIGO_D_T: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: OLIGO_D_T - title: null - todos: [] - unit: null - OTHER: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: OTHER - title: null - todos: [] - unit: null - PADLOCK_PROBES_CAPTURE_METHOD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: PADLOCK_PROBES_CAPTURE_METHOD - title: null - todos: [] - unit: null - PCR_METHOD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: PCR_METHOD - title: null - todos: [] - unit: null - POLY_A: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: POLY_A - title: null - todos: [] - unit: null - RACE_METHOD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: RACE_METHOD - title: null - todos: [] - unit: null - RANDOM_METHOD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: RANDOM_METHOD - title: null - todos: [] - unit: null - RANDOM_PCR_METHOD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: RANDOM_PCR_METHOD - title: null - todos: [] - unit: null - REDUCED_REPRESENTATION_METHOD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: REDUCED_REPRESENTATION_METHOD - title: null - todos: [] - unit: null - REPEAT_FRACTIONATION: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: REPEAT_FRACTIONATION - title: null - todos: [] - unit: null - RESTRICTION_DIGEST_METHOD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: RESTRICTION_DIGEST_METHOD - title: null - todos: [] - unit: null - RT_PCR_METHOD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: RT_PCR_METHOD - title: null - todos: [] - unit: null - SIZE_FRACTIONATION_METHOD: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: SIZE_FRACTIONATION_METHOD - title: null - todos: [] - unit: null - UNSPECIFIED: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: UNSPECIFIED - title: null - todos: [] - unit: null - pv_formula: null - rank: null - reachable_from: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - LibraryPreparationLibraryTypeEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The type of the library - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: LibraryPreparationLibraryTypeEnum - narrow_mappings: [] - notes: [] - permissible_values: - ATAC: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ATAC - title: null - todos: [] - unit: null - CHROMOSOME_CONFORMATION_CAPTURE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: CHROMOSOME_CONFORMATION_CAPTURE - title: null - todos: [] - unit: null - METHYLATION: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: METHYLATION - title: null - todos: [] - unit: null - MI_RNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: MI_RNA - title: null - todos: [] - unit: null - M_RNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: M_RNA - title: null - todos: [] - unit: null - NC_RNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: NC_RNA - title: null - todos: [] - unit: null - TOTAL_RNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: TOTAL_RNA - title: null - todos: [] - unit: null - WCS: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: WCS - title: null - todos: [] - unit: null - WGS: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: WGS - title: null - todos: [] - unit: null - WXS: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: WXS - title: null - todos: [] - unit: null - pv_formula: null - rank: null - reachable_from: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - LibraryPreparationRNASeqStrandednessEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Permitted values for library preparation RNASeq strandedness - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: LibraryPreparationRNASeqStrandednessEnum - narrow_mappings: [] - notes: [] - permissible_values: - ANTISENSE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ANTISENSE - title: null - todos: [] - unit: null - BOTH: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: BOTH - title: null - todos: [] - unit: null - SENSE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: SENSE - title: null - todos: [] - unit: null - pv_formula: null - rank: null - reachable_from: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - MutantOrWildtypeEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Enum to capture whether a condition corresponds to a mutant or a - wildtype. - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: MutantOrWildtypeEnum - narrow_mappings: [] - notes: [] - permissible_values: - MUTANT: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Mutant state. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: MUTANT - title: null - todos: [] - unit: null - NOT_APPLICABLE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The distinction is not applicaple. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: NOT_APPLICABLE - title: null - todos: [] - unit: null - WILDTYPE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Wildtype state. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: WILDTYPE - title: null - todos: [] - unit: null - pv_formula: null - rank: null - reachable_from: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - PhenotypicFeaturesEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: An enum describing permissible phenotype descriptors - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: - - code_set: null - code_set_tag: null - code_set_version: null - concepts: [] - include: [] - inherits: [] - matches: null - minus: [] - permissible_values: {} - pv_formula: null - reachable_from: - include_self: false - is_direct: null - relationship_types: [] - source_nodes: [] - source_ontology: http://www.ebi.ac.uk/efo/releases/v3.54.0/efo.owl - traverse_up: null - - code_set: null - code_set_tag: null - code_set_version: null - concepts: [] - include: [] - inherits: [] - matches: null - minus: [] - permissible_values: {} - pv_formula: null - reachable_from: - include_self: false - is_direct: null - relationship_types: [] - source_nodes: [] - source_ontology: https://www.orphadata.com/data/ontologies/ordo/last_version/ORDO_en_4.2.owl - traverse_up: null - - code_set: null - code_set_tag: null - code_set_version: null - concepts: [] - include: [] - inherits: [] - matches: null - minus: [] - permissible_values: {} - pv_formula: null - reachable_from: - include_self: false - is_direct: null - relationship_types: [] - source_nodes: - - SNOMED:404684003 - source_ontology: http://snomed.info/sct/900000000000207008/version/20200131 - traverse_up: null - - code_set: null - code_set_tag: null - code_set_version: null - concepts: [] - include: [] - inherits: [] - matches: null - minus: [] - permissible_values: {} - pv_formula: null - reachable_from: - include_self: false - is_direct: null - relationship_types: [] - source_nodes: [] - source_ontology: http://purl.obolibrary.org/obo/mondo/releases/2022-12-01/mondo.owl - traverse_up: null - - code_set: null - code_set_tag: null - code_set_version: null - concepts: [] - include: [] - inherits: [] - matches: null - minus: [] - permissible_values: {} - pv_formula: null - reachable_from: - include_self: false - is_direct: null - relationship_types: [] - source_nodes: [] - source_ontology: http://purl.obolibrary.org/obo/hp/releases/2023-04-05/hp-international.owl - traverse_up: null - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: PhenotypicFeaturesEnum - narrow_mappings: [] - notes: [] - permissible_values: {} - pv_formula: null - rank: null - reachable_from: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - PrimerEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Permitted values for primer - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: PrimerEnum - narrow_mappings: [] - notes: [] - permissible_values: - GENE_SPECIFIC: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: GENE_SPECIFIC - title: null - todos: [] - unit: null - OLIGO_D_T: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: OLIGO_D_T - title: null - todos: [] - unit: null - OTHER: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: OTHER - title: null - todos: [] - unit: null - RANDOM: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: RANDOM - title: null - todos: [] - unit: null - pv_formula: null - rank: null - reachable_from: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - SampleBarcodeReadEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Permitted values for sample barcode read - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: SampleBarcodeReadEnum - narrow_mappings: [] - notes: [] - permissible_values: - INDEX1: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: INDEX1 - title: null - todos: [] - unit: null - INDEX1_AND_INDEX2: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: INDEX1_AND_INDEX2 - title: null - todos: [] - unit: null - OTHER: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: OTHER - title: null - todos: [] - unit: null - pv_formula: null - rank: null - reachable_from: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - SampleTypeEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The type of a sample - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: SampleTypeEnum - narrow_mappings: [] - notes: [] - permissible_values: - CF_DNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: CF_DNA - title: null - todos: [] - unit: null - DEPLETED_RNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: DEPLETED_RNA - title: null - todos: [] - unit: null - DS_DNA_CH_IP: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: DS_DNA_CH_IP - title: null - todos: [] - unit: null - FFPE_DNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: FFPE_DNA - title: null - todos: [] - unit: null - FFPE_TOTAL_RNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: FFPE_TOTAL_RNA - title: null - todos: [] - unit: null - GENOMIC_DNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: GENOMIC_DNA - title: null - todos: [] - unit: null - PCR_PRODUCTS: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: PCR_PRODUCTS - title: null - todos: [] - unit: null - POLY_A_RNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: POLY_A_RNA - title: null - todos: [] - unit: null - SINGLE_CELL_DNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: SINGLE_CELL_DNA - title: null - todos: [] - unit: null - SINGLE_CELL_RNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: SINGLE_CELL_RNA - title: null - todos: [] - unit: null - SMALL_RNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: SMALL_RNA - title: null - todos: [] - unit: null - TOTAL_RNA: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: TOTAL_RNA - title: null - todos: [] - unit: null - pv_formula: null - rank: null - reachable_from: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - StudyTypeEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Enum to capture the type of a study. - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: StudyTypeEnum - narrow_mappings: [] - notes: [] - permissible_values: - CANCER_GENOMICS: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: CANCER_GENOMICS - title: null - todos: [] - unit: null - EPIGENETICS: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: EPIGENETICS - title: null - todos: [] - unit: null - EXOME_SEQUENCING: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: EXOME_SEQUENCING - title: null - todos: [] - unit: null - FORENSIC_GENETICS: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: FORENSIC_GENETICS - title: null - todos: [] - unit: null - GENE_REGULATION_STUDY: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: GENE_REGULATION_STUDY - title: null - todos: [] - unit: null - GWAS: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: GWAS - title: null - todos: [] - unit: null - METAGENOMICS: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: METAGENOMICS - title: null - todos: [] - unit: null - OTHER: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: OTHER - title: null - todos: [] - unit: null - PALEO_GENOMICS: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: PALEO_GENOMICS - title: null - todos: [] - unit: null - POOLED_CLONE_SEQUENCING: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: POOLED_CLONE_SEQUENCING - title: null - todos: [] - unit: null - POPULATION_GENOMICS: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: POPULATION_GENOMICS - title: null - todos: [] - unit: null - RESEQUENCING: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: RESEQUENCING - title: null - todos: [] - unit: null - RNASEQ: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: RNASEQ - title: null - todos: [] - unit: null - SYNTHETIC_GENOMICS: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: SYNTHETIC_GENOMICS - title: null - todos: [] - unit: null - TRANSCRIPTOME_ANALYSIS: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: TRANSCRIPTOME_ANALYSIS - title: null - todos: [] - unit: null - WHOLE_GENOME_SEQUENCING: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: WHOLE_GENOME_SEQUENCING - title: null - todos: [] - unit: null - pv_formula: null - rank: null - reachable_from: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - TissueEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A tissue as described in the BRENDA ontology. - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: TissueEnum - narrow_mappings: [] - notes: [] - permissible_values: {} - pv_formula: null - rank: null - reachable_from: - include_self: null - is_direct: null - relationship_types: [] - source_nodes: [] - source_ontology: http://purl.obolibrary.org/obo/bto/releases/2021-10-26/bto.owl - traverse_up: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] - VitalStatusEnum: - abstract: null - aliases: [] - alt_descriptions: {} - annotations: {} - apply_to: [] - broad_mappings: [] - close_mappings: [] - code_set: null - code_set_tag: null - code_set_version: null - comments: [] - concepts: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Enum to capture the vital status of an individual. - enum_uri: null - exact_mappings: [] - examples: [] - extensions: {} - id_prefixes: [] - imported_from: null - in_language: null - in_subset: [] - include: [] - inherits: [] - is_a: null - last_updated_on: null - local_names: {} - mappings: [] - matches: null - minus: [] - mixin: null - mixins: [] - modified_by: null - name: VitalStatusEnum - narrow_mappings: [] - notes: [] - permissible_values: - ALIVE: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Showing characteristics of life; displaying signs of life. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: ALIVE - title: null - todos: [] - unit: null - DECEASED: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The cessation of life. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: DECEASED - title: null - todos: [] - unit: null - UNKNOWN: - aliases: [] - alt_descriptions: {} - annotations: {} - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Vital status is unknown. - exact_mappings: [] - examples: [] - extensions: {} - from_schema: null - imported_from: null - in_language: null - in_subset: [] - is_a: null - mappings: [] - meaning: null - mixins: [] - narrow_mappings: [] - notes: [] - rank: null - related_mappings: [] - see_also: [] - source: null - structured_aliases: {} - text: UNKNOWN - title: null - todos: [] - unit: null - pv_formula: null - rank: null - reachable_from: null - related_mappings: [] - see_also: [] - source: null - status: null - string_serialization: null - structured_aliases: {} - title: null - todos: [] - values_from: [] -exact_mappings: [] -examples: [] -extensions: {} -from_schema: null -generation_date: null -id: https://w3id.org/GHGA-Submission-Metadata-Schema -id_prefixes: [] -imported_from: null -imports: -- linkml:types -in_language: null -in_subset: [] -keywords: [] -license: null -local_names: {} -mappings: [] -metamodel_version: null -name: GHGA-Submission-Metadata-Schema -narrow_mappings: [] -notes: [] -prefixes: - COB: - prefix_prefix: COB - prefix_reference: http://purl.obolibrary.org/obo/COB_ - DUO: - prefix_prefix: DUO - prefix_reference: http://purl.obolibrary.org/obo/duo/releases/2021-02-23/duo.owl - EFO: - prefix_prefix: EFO - prefix_reference: http://www.ebi.ac.uk/efo/EFO_ - GHGA: - prefix_prefix: GHGA - prefix_reference: https://w3id.org/GHGA/ - GSSO: - prefix_prefix: GSSO - prefix_reference: http://purl.obolibrary.org/obo/gsso/releases/2.0.5/gsso.owl - HANCESTRO: - prefix_prefix: HANCESTRO - prefix_reference: http://purl.obolibrary.org/obo/hancestro/releases/2022-05-12/hancestro.owl - SIO: - prefix_prefix: SIO - prefix_reference: http://semanticscience.org/resource/SIO_ - SNOMED: - prefix_prefix: SNOMED - prefix_reference: http://snomed.info/sct/900000000000207008/version/20200131 - biolink: - prefix_prefix: biolink - prefix_reference: https://w3id.org/biolink/vocab/ - linkml: - prefix_prefix: linkml - prefix_reference: https://w3id.org/linkml/ -rank: null -related_mappings: [] -see_also: [] -settings: {} -slot_names_unique: null -slots: - abstract: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The study abstract that describes the goals. Can also hold abstract - from a publication related to this study - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: abstract - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - accession: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The accession for an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: accession - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - affiliations: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The Institution(s) associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: affiliations - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - age_at_sampling: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Age of an individual. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: age_at_sampling - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: AgeRangeEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - alias: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The alias for an entity at the time of submission. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: alias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - analyses: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The analyses associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: analyses - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: Analysis - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - analysis: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The Analysis associated with an entity - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: analysis - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: Analysis - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - analysis_process: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The AnalysisProcess associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: analysis_process - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: AnalysisProcess - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - analysis_process_output_files: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The AnalysisProcessOutputFiles associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: analysis_process_output_files - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: AnalysisProcessOutputFile - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - analysis_processes: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The AnalysisProcess associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: analysis_processes - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: AnalysisProcess - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - ancestries: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A person's descent or lineage, from a person or from a population. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: ancestries - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: HANCESTRO:.* - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - attributes: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Key/value pairs corresponding to an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: attributes - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: Attribute - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - author: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The individual who is responsible for the content of a document version. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: author - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - biospecimen: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The biospecimen associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: biospecimen - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: Biospecimen - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - biospecimens: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The biospecimens associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: biospecimens - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: Biospecimen - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - case_control_status: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Whether a condition corresponds to a treatment or a control. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: case_control_status - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: CaseControlStatusEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - cell_barcode_offset: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The offset in sequence of the cell identifying barcode. (Eg. '0'). - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: cell_barcode_offset - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - cell_barcode_read: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: 'The type of read that contains the cell barcode (eg: index1/index2/read1/read2).' - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: cell_barcode_read - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: IndexReadEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - cell_barcode_size: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The size of the cell identifying barcode (E.g. '16'). - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: cell_barcode_size - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - checksum: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A computed value which depends on the contents of a block of data - and which is transmitted or stored along with the data in order to detect corruption - of the data. The receiving system recomputes the checksum based upon the received - data and compares this value with the one sent with the data. If the two values - are the same, the receiver has some confidence that the data was received correctly. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: - - NCIT:C43522 - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: checksum - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - checksum_type: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The type of algorithm used to generate the checksum of a file. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: checksum_type - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - child: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The child of two individuals. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: child - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: Individual - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - condition: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The condition associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: condition - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: Condition - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - conditions: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The Conditions associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: conditions - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: Condition - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - data_access_committee: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Data Access Committee associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: data_access_committee - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: DataAccessCommittee - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - data_access_committees: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Data Access Committees associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: data_access_committees - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: DataAccessCommittee - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - data_access_policies: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Data Access Policies associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: data_access_policies - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: DataAccessPolicy - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - data_access_policy: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Data Access Policy associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: data_access_policy - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: DataAccessPolicy - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - data_use_modifiers: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Modifier for Data use permission associated with an entity. Should - be descendants of 'DUO:0000017 data use modifier' - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: data_use_modifiers - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: DataUseModifierEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - data_use_permission: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Data use permission associated with an entity. Typically one or more - terms from DUO. Should be descendants of 'DUO:0000001 data use permission'. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: data_use_permission - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: DataUsePermissionEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - dataset: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The Dataset associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: dataset - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: Dataset - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - datasets: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The Datasets associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: datasets - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: Dataset - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - description: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Description of an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: - - SIO:000185 - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: description - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - disease_or_healthy: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Whether a condition corresponds to a disease or a healthy state. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: disease_or_healthy - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: DiseaseOrHealthyEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - doi: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: DOI identifier of a publication. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: doi - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - email: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Email of a person. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: email - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - embedded_dataset: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Fully embedded dataset. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: true - inlined_as_list: true - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: embedded_dataset - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: EmbeddedDataset - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - end_bias: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The end of the cDNA molecule that is preferentially sequenced, e.g. - 3/5 prime tag or end, or the full-length transcript. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: - - EFO:0010187 - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: end_bias - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: EndBiasEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - father: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The father of an individual. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: father - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: Individual - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - files: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: - - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - from_schema: null - has_member: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inlined: null - inlined_as_list: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - narrow_mappings: [] - none_of: [] - notes: [] - pattern: null - range: StudyFile - range_expression: null - rank: null - recommended: null - related_mappings: [] - required: null - see_also: [] - source: null - structured_aliases: {} - structured_pattern: null - title: null - todos: [] - unit: null - - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - broad_mappings: [] - close_mappings: [] - comments: [] - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - from_schema: null - has_member: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inlined: null - inlined_as_list: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - narrow_mappings: [] - none_of: [] - notes: [] - pattern: null - range: SampleFile - range_expression: null - rank: null - recommended: null - related_mappings: [] - required: null - see_also: [] - source: null - structured_aliases: {} - structured_pattern: null - title: null - todos: [] - unit: null - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: All files associated with the dataset. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: false - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: files - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: true - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - flow_cell_id: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: 'Flow Cell ID (eg: Experiment ID_Cell 1_Lane_1). The barcode assigned - to a flow cell used in nucleotide sequencing.' - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: flow_cell_id - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - flow_cell_type: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Type of flow cell used (e.g. S4, S2 for NovaSeq; PromethION, Flongle - for Nanopore). Aparatus in the fluidic subsystem where the sheath and sample - meet. Can be one of several types; jet-in-air, quartz cuvette, or a hybrid of - the two. The sample flows through the center of a fluid column of sheath fluid - in the flow cell. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: flow_cell_type - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: FlowCellTypeEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - format: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: 'The format of the file: BAM, SAM, CRAM, BAI, etc.' - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: format - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: FileFormatEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - forward_or_reverse: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Denotes whether a submitted FASTQ file contains forward (R1) or reverse - (R2) reads for paired-end sequencing. The number that identifies each read direction - in a paired-end nucleotide sequencing reaction. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: forward_or_reverse - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: ForwardOrReverseEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - geographical_region: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The geographical region where the Individual is located. Any demarcated - area of the Earth; may be determined by both natural and human boundaries. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: geographical_region - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: HANCESTRO:.* - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - index_sequence: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A unique nucleotide sequence that is added to a sample during library_preparation - to serve as a unique identifier for the sample. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: - - NCIT:C165443 - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: index_sequence - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - individual: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The subject/individual associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: individual - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: Individual - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - individuals: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The subjects/individuals associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: individuals - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: Individual - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - institute: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The institute a person is affiliated with. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: institute - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - instrument_model: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The name and model of the technology platform used to perform sequencing. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: instrument_model - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: InstrumentModelEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - isolation: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Method or device employed for collecting/isolating a biospecimen - or a sample. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: isolation - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: SNOMED:.* - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - journal: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Name of the journal. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: journal - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - karyotype: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The karyotype of an individual if defined. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: karyotype - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: KaryotypeEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - key: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The key of an attribute. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: key - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - key_type: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The semantic type for the key of an attribute. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: key_type - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - lane_number: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The numerical identifier for the lane or machine unit where a sample - was located during nucleotide sequencing. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: lane_number - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - library_layout: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Describe whether the library was sequenced in single-end (forward - or reverse) or paired-end mode - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: - - NCIT:C175894 - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: library_layout - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: LibraryPreparationLibraryLayoutEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - library_name: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A short name identifying the library to potential users. The same - name may refer to multiple versions of the same continually updated library. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: library_name - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - library_preparation: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The general method for sequencing library_preparation (e.g. KAPA - PCR-free). - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: library_preparation - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - library_preparation_kit_manufacturer: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Manufacturer of library_preparation kit - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: library_preparation_kit_manufacturer - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - library_preparation_kit_retail_name: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: A unique identifier for the kit used to construct a genomic library. - This may include the vendor name, kit name and kit version (e.g. Agilent sure - select Human Exome V8, Twist RefSeq Exome, etc.) - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: library_preparation_kit_retail_name - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: LibraryPreparationKitRetailNameEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - library_preparation_protocol: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The library_preparation Protocol associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: library_preparation_protocol - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: LibraryPreparationProtocol - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - library_preparation_protocols: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The library_preparation Protocol associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: library_preparation_protocols - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: LibraryPreparationProtocol - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - library_selection: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Whether any method was used to select for or against, enrich, or - screen the material being sequenced. library_selection method (e.g. random, - PCA, cDNA, etc ) - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: library_selection - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: LibraryPreparationLibrarySelectionEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - library_type: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: 'Describe the level of omics analysis (eg: Metagenome, transcriptome, - etc)' - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: library_type - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: LibraryPreparationLibraryTypeEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - mother: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The mother of an individual. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: mother - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: Individual - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - mutant_or_wildtype: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Whether a condition corresponds to a mutant or a wildtype. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: mutant_or_wildtype - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: MutantOrWildtypeEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - name: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The name for an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: name - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - phenotypic_features: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Phenotypic feature concepts that the entity is associated with. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: phenotypic_features - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: .* - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - policy_text: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The complete text for the Data Access Policy. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: policy_text - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - policy_url: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Alternative to pasting the Data Access Policy text. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: policy_url - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - primer: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The type of primer used for reverse transcription, e.g. 'oligo-dT' - or 'random' primer. This allows users to identify content of the cDNA library - input e.g. enriched for mRNA. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: - - EFO:0010192 - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: primer - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: PrimerEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - publications: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The Publication associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: publications - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: Publication - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - reference_chromosome: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The reference chromosome used for this Analysis. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: reference_chromosome - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - reference_genome: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: 'A published genetic sequence that is used as a reference sequence - against which other sequences are compared. Reference genome(s) or annotation(s) - used for prior analyses (eg: GRCh38.p13).' - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: reference_genome - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - rnaseq_strandedness: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The strandedness of the library, whether reads come from both strands - of the cDNA or only from the first (antisense) or the second (sense) strand. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: rnaseq_strandedness - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: LibraryPreparationRNASeqStrandednessEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sample: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The sample associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sample - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: Sample - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sample_barcode_read: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: 'The type of read that contains the sample barcode (eg: index1/index2/read1/read2).' - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sample_barcode_read - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: SampleBarcodeReadEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sample_files: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The SampleFiles associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: sample_files - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: SampleFile - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sample_input_files: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The SampleFile associated used as an input for an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: sample_input_files - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: SampleFile - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - samples: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The samples associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: samples - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: Sample - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_center: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Center where sample was sequenced. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sequencing_center - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_experiment: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The sequencing experiment associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sequencing_experiment - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: SequencingExperiment - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_experiments: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The sequencing experiments associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: sequencing_experiments - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: SequencingExperiment - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_lane_id: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The identifier of a sequencing lane. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sequencing_lane_id - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_machine_id: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The identifier of a sequencing machine. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sequencing_machine_id - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_process: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The SequencingProcess associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sequencing_process - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: SequencingProcess - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_process_files: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The SequencingProcessFiles associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: sequencing_process_files - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: SequencingProcessFile - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_process_input_files: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The SequencingProcessFile associated used as an input for an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: sequencing_process_input_files - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: SequencingProcessFile - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_processes: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The SequencingProcesses associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: sequencing_processes - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: SequencingProcess - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_protocol: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The sequencing protocol associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sequencing_protocol - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: SequencingProtocol - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_protocols: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The sequencing protocol associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: sequencing_protocols - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: SequencingProtocol - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_read_length: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: 'Length of sequencing reads (eg: Long or short or actual number of - the read length etc). The number of nucleotides successfully ordered from each - side of a nucleic acid fragment obtained after the completion of a sequencing - process' - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sequencing_read_length - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sequencing_run_id: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The identifier of a sequencing run. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sequencing_run_id - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - sex: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The assemblage of physical properties or qualities by which male - is distinguished from female; the physical difference between male and female; - the distinguishing peculiarity of male or female. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: sex - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: IndividualSexEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - size: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The size of a file in bytes. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: size - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: integer - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - storage: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Methods by which a biospecimen or a sample is stored (e.g. frozen - in liquid nitrogen). - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: storage - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - studies: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The study associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: studies - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: Study - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - study: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The study associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: study - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: Study - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - study_files: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The StudyFiles associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: study_files - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: StudyFile - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - study_input_files: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The StudyFile associated used as an input for an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: study_input_files - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: StudyFile - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - target_coverage: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Mean coverage for whole genome sequencing, or mean target coverage - for whole exome and targeted sequencing. The number of times a particular locus - (site, nucleotide, amplicon, region) was sequenced. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: target_coverage - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - target_regions: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Subset of genes or specific regions of the genome, which are most - likely to be involved in the phenotype under study. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: target_regions - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - tissue: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: null - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: tissue - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: BTO:.* - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - title: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The title that describes an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: title - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - trios: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The Trios associated with an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: trios - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: Trio - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - type: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: 'The type of an entity. Note: Not to be confused with rdf:type' - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: type - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - types: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: 'The types of an entity. Note: Not to be confused with rdf:type' - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: types - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - umi_barcode_offset: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The offset in sequence of the UMI identifying barcode. (E.g. '16'). - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: umi_barcode_offset - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - umi_barcode_read: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: 'The type of read that contains the UMI barcode (Eg: index1/index2/read1/read2).' - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: umi_barcode_read - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: IndexReadEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - umi_barcode_size: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The size of the UMI identifying barcode (Eg. '10'). - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: umi_barcode_size - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - value: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The value of an attribute - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: value - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - value_type: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The semantic type for the value of an attribute. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: value_type - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - vital_status: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: The state or condition of being living or deceased; also includes - the case where the vital status is unknown. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: vital_status - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: VitalStatusEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - vital_status_at_sampling: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Vital Status of an Individual at the point of sampling (eg:'Alive', - 'Deceased'). - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: vital_status_at_sampling - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: VitalStatusEnum - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - xref: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Database cross references for an entity. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: true - name: xref - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: null - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] - year: - abstract: null - alias: null - aliases: [] - all_members: {} - all_of: [] - alt_descriptions: {} - annotations: {} - any_of: [] - apply_to: [] - asymmetric: null - broad_mappings: [] - children_are_mutually_disjoint: null - close_mappings: [] - comments: [] - conforms_to: null - created_by: null - created_on: null - definition_uri: null - deprecated: null - deprecated_element_has_exact_replacement: null - deprecated_element_has_possible_replacement: null - description: Year in which the paper was published. - designates_type: null - disjoint_with: [] - domain: null - domain_of: [] - enum_range: null - equals_expression: null - equals_number: null - equals_string: null - equals_string_in: [] - exact_mappings: [] - exactly_one_of: [] - examples: [] - extensions: {} - has_member: null - id_prefixes: [] - identifier: null - ifabsent: null - implicit_prefix: null - imported_from: null - in_language: null - in_subset: [] - inherited: null - inlined: null - inlined_as_list: null - inverse: null - irreflexive: null - is_a: null - is_class_field: null - is_grouping_slot: null - is_usage_slot: null - key: null - last_updated_on: null - list_elements_ordered: null - list_elements_unique: null - local_names: {} - locally_reflexive: null - mappings: [] - maximum_cardinality: null - maximum_value: null - minimum_cardinality: null - minimum_value: null - mixin: null - mixins: [] - modified_by: null - multivalued: null - name: year - narrow_mappings: [] - none_of: [] - notes: [] - owner: null - path_rule: null - pattern: null - range: integer - range_expression: null - rank: null - readonly: null - recommended: null - reflexive: null - reflexive_transitive_form_of: null - related_mappings: [] - relational_role: null - required: null - role: null - see_also: [] - shared: null - singular_name: null - slot_group: null - slot_uri: null - source: null - status: null - string_serialization: null - structured_aliases: {} - structured_pattern: null - subproperty_of: null - symmetric: null - title: null - todos: [] - transitive: null - transitive_form_of: null - union_of: [] - unit: null - usage_slot_name: null - values_from: [] -source: null -source_file: null -source_file_date: null -source_file_size: null -structured_aliases: {} -subsets: {} -title: null -todos: [] -types: {} -version: 0.10.0 diff --git a/tests/fixtures/load/joint.py b/tests/fixtures/load/joint.py deleted file mode 100644 index cdaf0b31..00000000 --- a/tests/fixtures/load/joint.py +++ /dev/null @@ -1,116 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Joint fixture with setup for event content""" - -import json -from dataclasses import dataclass -from typing import Any - -from ghga_service_commons.api.testing import AsyncTestClient -from hexkit.providers.akafka.testutils import KafkaFixture -from pytest_asyncio import fixture - -from metldata.artifacts_rest.artifact_info import ArtifactInfo, load_artifact_info -from metldata.custom_types import Json -from metldata.load.auth import generate_token_and_hash -from metldata.load.config import ArtifactLoaderAPIConfig -from metldata.load.main import get_app -from metldata.load.models import ArtifactResourceDict -from metldata.model_utils.essentials import MetadataModel -from tests.fixtures.load.config import get_config -from tests.fixtures.load.utils import BASE_DIR -from tests.fixtures.mongodb import ( # noqa: F401; pylint: disable=unused-import - MongoDbFixture, - mongodb_fixture, -) - -ARTIFACT_INFOS_PATH = BASE_DIR / "example_models" / "artifact_infos.json" -ARTIFACT_NAME = "embedded_public" -EMBEDDED_ARTIFACT_PATH = BASE_DIR / "example_metadata" / f"{ARTIFACT_NAME}.json" -EMBEDDED_DATASET_TEST_PATH = BASE_DIR / "example_metadata" / "embedded_dataset.json" -EMBEDDED_ARTIFACT_MODEL_PATH = ( - BASE_DIR / "example_models" / f"{ARTIFACT_NAME}_model.yaml" -) - - -@dataclass -class JointFixture: - """Joint fixture for testing""" - - artifact_infos: list[ArtifactInfo] - artifact_resources: dict[str, Any] - client: AsyncTestClient - config: ArtifactLoaderAPIConfig - expected_file_resource_content: Json - expected_embedded_dataset_resource_content: Json - kafka: KafkaFixture - mongodb: MongoDbFixture - token: str - - -@fixture -async def joint_fixture( - kafka_fixture: KafkaFixture, - mongodb_fixture: MongoDbFixture, # noqa: F811 -) -> JointFixture: - """Get a tuple of a configured test client together with a corresponding token.""" - - artifact_infos = [ - load_artifact_info( - name=ARTIFACT_NAME, - description=ARTIFACT_NAME, - model=MetadataModel.init_from_path(EMBEDDED_ARTIFACT_MODEL_PATH), - ) - ] - - with open(EMBEDDED_ARTIFACT_PATH, encoding="utf-8") as file: - raw_artifacts = json.load(file) - artifacts: ArtifactResourceDict = { - raw_artifacts["type_"]: [raw_artifacts["payload"]["content"]] - } - - token, token_hash = generate_token_and_hash() - - config = get_config( - [ - { - "artifact_infos": artifact_infos, - "loader_token_hashes": [token_hash], - }, - kafka_fixture.config, - mongodb_fixture.config, - ] - ) - - expected_file_resource_content = artifacts["embedded_public"][0]["study_files"][0] - expected_embedded_dataset_resource_content = artifacts["embedded_public"][0][ - "embedded_dataset" - ][1] - - app = await get_app(config=config) - client = AsyncTestClient(app) - return JointFixture( - artifact_infos=artifact_infos, - artifact_resources=artifacts, - client=client, - config=config, - expected_file_resource_content=expected_file_resource_content, - expected_embedded_dataset_resource_content=expected_embedded_dataset_resource_content, - kafka=kafka_fixture, - mongodb=mongodb_fixture, - token=token, - ) diff --git a/tests/fixtures/load/test_config.yaml b/tests/fixtures/load/test_config.yaml deleted file mode 100644 index 94197f9c..00000000 --- a/tests/fixtures/load/test_config.yaml +++ /dev/null @@ -1,8 +0,0 @@ -primary_artifact_name: embedded_public -primary_dataset_name: EmbeddedDataset -resource_change_event_topic: searchable_resources -resource_deletion_event_type: searchable_resource_deleted -resource_upsertion_type: searchable_resource_upserted -dataset_change_event_topic: metadata_datasets -dataset_deletion_type: dataset_deleted -dataset_upsertion_type: dataset_created diff --git a/tests/fixtures/load/utils.py b/tests/fixtures/load/utils.py deleted file mode 100644 index 3e648ff4..00000000 --- a/tests/fixtures/load/utils.py +++ /dev/null @@ -1,20 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""General testing utilities""" - -from pathlib import Path - -BASE_DIR = Path(__file__).parent.resolve() diff --git a/tests/fixtures/mongodb.py b/tests/fixtures/mongodb.py deleted file mode 100644 index 8f3221f8..00000000 --- a/tests/fixtures/mongodb.py +++ /dev/null @@ -1,29 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Fixture for using the MongoDB.""" - -from hexkit.providers.mongodb.testutils import MongoDbFixture -from pytest import fixture - - -@fixture -def mongodb_fixture( # pylint: disable=redefined-outer-name - mongodb_session: MongoDbFixture, -) -> MongoDbFixture: - """Fixture that gets an empty MongoDB.""" - mongodb_session.empty_collections() - return mongodb_session diff --git a/tests/fixtures/transformations/add_accessions/default/config.yaml b/tests/fixtures/transformations/add_accessions/default/config.yaml deleted file mode 100644 index ded8a82f..00000000 --- a/tests/fixtures/transformations/add_accessions/default/config.yaml +++ /dev/null @@ -1,2 +0,0 @@ -accession_slot_name: accession -accession_slot_description: The accession for an entity. diff --git a/tests/fixtures/transformations/add_accessions/default/metadata_annotation.yaml b/tests/fixtures/transformations/add_accessions/default/metadata_annotation.yaml deleted file mode 100644 index a4dc2e1a..00000000 --- a/tests/fixtures/transformations/add_accessions/default/metadata_annotation.yaml +++ /dev/null @@ -1,13 +0,0 @@ -accession_map: - files: - test_sample_01_R1: TESTS0000000001 - test_sample_01_R2: TESTS0000000002 - test_sample_02_R1: TESTS0000000003 - test_sample_02_R2: TESTS0000000004 - datasets: - test_dataset_01: TESTD0000000001 - samples: - test_sample_01: TESTN0000000001 - test_sample_02: TESTN0000000002 - experiments: - test_experiment_01: TESTE0000000001 diff --git a/tests/fixtures/transformations/add_accessions/default/original_metadata.yaml b/tests/fixtures/transformations/add_accessions/default/original_metadata.yaml deleted file mode 100644 index bfef8773..00000000 --- a/tests/fixtures/transformations/add_accessions/default/original_metadata.yaml +++ /dev/null @@ -1,45 +0,0 @@ -files: - - alias: test_sample_01_R1 - filename: test_sample_01_R1.fastq - format: fastq - checksum: 1c8aed294d5dec3740a175f6b655725fa668bfe41311e74f7ca9d85c91371b4e - size: 299943 - - alias: test_sample_01_R2 - filename: test_sample_01_R2.fastq - format: fastq - checksum: de44d5e9d2103cd5f9de899a5c231430f5d05c66ecf17a2bb8daf1660a41994a - size: 234243 - - alias: test_sample_02_R1 - filename: test_sample_02_R1.fastq - format: fastq - checksum: 774a6e39ee77a74d841b13f0050dfcf97a6f260751bfc2c5282e35692e4ee6b1 - size: 92345234 - - alias: test_sample_02_R2 - filename: test_sample_02_R2.fastq - format: fastq - checksum: 7e793b40583daca28a594d45bdc9218c04353581d5bbbecab88b13c068bba8a4 - size: 234243 -datasets: - - alias: test_dataset_01 - files: - - test_sample_01_R1 - - test_sample_01_R2 - - test_sample_02_R1 - - test_sample_02_R2 -samples: - - alias: test_sample_01 - description: A tests sample. - files: - - test_sample_01_R1 - - test_sample_01_R2 - - alias: test_sample_02 - description: A tests sample. - files: - - test_sample_02_R1 - - test_sample_02_R2 -experiments: - - alias: test_experiment_01 - description: A test experiment. - samples: - - test_sample_01 - - test_sample_02 diff --git a/tests/fixtures/transformations/add_accessions/default/original_model.yaml b/tests/fixtures/transformations/add_accessions/default/original_model.yaml deleted file mode 100644 index d553902e..00000000 --- a/tests/fixtures/transformations/add_accessions/default/original_model.yaml +++ /dev/null @@ -1,202 +0,0 @@ -id: https://w3id.org/Minimal-Model -name: Minimal-Model -version: 0.9.0 -prefixes: - linkml: https://w3id.org/linkml/ -imports: - - linkml:types - -default_range: string - -classes: - File: - description: >- - A file is an object that contains information generated from a process, either an - Experiment or an Analysis. - slots: - - alias - - filename - - format - - size - - checksum - slot_usage: - alias: - required: true - identifier: true - filename: - required: true - format: - required: true - checksum: - required: true - size: - required: true - - Dataset: - description: >- - A Dataset is a collection of Files. - slots: - - alias - - files - slot_usage: - alias: - required: true - identifier: true - files: - required: true - multivalued: true - inlined: false - - Sample: - description: >- - A sample that was used to generate Files containing experiment data. - slots: - - alias - - description - - files - slot_usage: - alias: - required: true - identifier: true - description: - required: true - files: - required: true - multivalued: true - inlined: false - - Experiment: - description: >- - An experiment containing one or multiple samples. - slots: - - alias - - description - - samples - slot_usage: - alias: - required: true - identifier: true - description: - required: true - samples: - required: true - multivalued: true - inlined: false - - Submission: - tree_root: true - description: >- - A grouping entity that represents information about one or more entities. - A submission can be considered as a set of inter-related (and inter-connected) - entities that represent a data submission to GHGA. - slots: - - files - - datasets - - samples - - experiments - slot_usage: - files: - required: true - multivalued: true - inlined: true - inlined_as_list: true - datasets: - required: true - multivalued: true - inlined: true - inlined_as_list: true - samples: - required: true - multivalued: true - inlined: true - inlined_as_list: true - experiments: - required: true - multivalued: true - inlined: true - inlined_as_list: true - -slots: - alias: - description: The alias for an entity. - - description: - description: Description of an entity. - - files: - description: >- - The file associated with an entity. - range: File - - datasets: - description: >- - The dataset associated with an entity. - range: Dataset - - samples: - description: >- - The sample associated with an entity. - range: Sample - - experiments: - description: >- - The experiment associated with an entity. - range: Experiment - - filename: - description: >- - The given filename. - - format: - description: >- - The format of the file: BAM, SAM, CRAM, BAI, etc. - range: file format enum - - size: - description: The size of a file in bytes. - range: integer - - checksum: - description: >- - A computed value which depends on the contents of a block of data and which is transmitted or - stored along with the data in order to detect corruption of the data. - The receiving system recomputes the checksum based upon the received data and compares this - value with the one sent with the data. If the two values are the same, the receiver has some confidence - that the data was received correctly. - -enums: - file format enum: - description: >- - Enum to capture file types. - permissible_values: - bam: - description: BAM File - complete_genomics: - description: Complete Genomics File - cram: - description: CRAM File - fasta: - description: Fasta File - fastq: - description: FastQ File - pacbio_hdf5: - description: PacBio HDF5 File - sff: - description: >- - Standard flowgram format used to encode results - of pyrosequencing from the 454 Life Sciences platform. - srf: - description: >- - SRF is a generic format for DNA sequence data. - vcf: - description: >- - VCF file for storing gene sequence variations. - txt: - description: >- - Text file. - pxf: - description: >- - Phenopacket file. - other: - description: >- - Other format. diff --git a/tests/fixtures/transformations/add_accessions/default/transformed_metadata.yaml b/tests/fixtures/transformations/add_accessions/default/transformed_metadata.yaml deleted file mode 100644 index b9ee43a6..00000000 --- a/tests/fixtures/transformations/add_accessions/default/transformed_metadata.yaml +++ /dev/null @@ -1,53 +0,0 @@ -files: - - accession: TESTS0000000001 - alias: test_sample_01_R1 - filename: test_sample_01_R1.fastq - format: fastq - checksum: 1c8aed294d5dec3740a175f6b655725fa668bfe41311e74f7ca9d85c91371b4e - size: 299943 - - accession: TESTS0000000002 - alias: test_sample_01_R2 - filename: test_sample_01_R2.fastq - format: fastq - checksum: de44d5e9d2103cd5f9de899a5c231430f5d05c66ecf17a2bb8daf1660a41994a - size: 234243 - - accession: TESTS0000000003 - alias: test_sample_02_R1 - filename: test_sample_02_R1.fastq - format: fastq - checksum: 774a6e39ee77a74d841b13f0050dfcf97a6f260751bfc2c5282e35692e4ee6b1 - size: 92345234 - - accession: TESTS0000000004 - alias: test_sample_02_R2 - filename: test_sample_02_R2.fastq - format: fastq - checksum: 7e793b40583daca28a594d45bdc9218c04353581d5bbbecab88b13c068bba8a4 - size: 234243 -datasets: - - accession: TESTD0000000001 - alias: test_dataset_01 - files: - - TESTS0000000001 - - TESTS0000000002 - - TESTS0000000003 - - TESTS0000000004 -samples: - - accession: TESTN0000000001 - alias: test_sample_01 - description: A tests sample. - files: - - TESTS0000000001 - - TESTS0000000002 - - accession: TESTN0000000002 - alias: test_sample_02 - description: A tests sample. - files: - - TESTS0000000003 - - TESTS0000000004 -experiments: - - accession: TESTE0000000001 - alias: test_experiment_01 - description: A test experiment. - samples: - - TESTN0000000001 - - TESTN0000000002 diff --git a/tests/fixtures/transformations/add_accessions/default/transformed_model.yaml b/tests/fixtures/transformations/add_accessions/default/transformed_model.yaml deleted file mode 100644 index c2ccf01a..00000000 --- a/tests/fixtures/transformations/add_accessions/default/transformed_model.yaml +++ /dev/null @@ -1,221 +0,0 @@ -id: https://w3id.org/Minimal-Model -name: Minimal-Model -version: 0.9.0 -prefixes: - linkml: https://w3id.org/linkml/ -imports: - - linkml:types - -default_range: string - -classes: - File: - description: >- - A file is an object that contains information generated from a process, either an - Experiment or an Analysis. - slots: - - alias - - filename - - format - - size - - checksum - - accession - slot_usage: - accession: - required: true - identifier: true - alias: - required: true - identifier: false - filename: - required: true - format: - required: true - checksum: - required: true - size: - required: true - - Dataset: - description: >- - A Dataset is a collection of Files. - slots: - - alias - - files - - accession - slot_usage: - accession: - required: true - identifier: true - alias: - required: true - identifier: false - files: - required: true - multivalued: true - inlined: false - - Sample: - description: >- - A sample that was used to generate Files containing experiment data. - slots: - - alias - - description - - files - - accession - slot_usage: - accession: - required: true - identifier: true - alias: - required: true - identifier: false - description: - required: true - files: - required: true - multivalued: true - inlined: false - - Experiment: - description: >- - An experiment containing one or multiple samples. - slots: - - alias - - description - - samples - - accession - slot_usage: - accession: - required: true - identifier: true - alias: - required: true - identifier: false - description: - required: true - samples: - required: true - multivalued: true - inlined: false - - Submission: - tree_root: true - description: >- - A grouping entity that represents information about one or more entities. - A submission can be considered as a set of inter-related (and inter-connected) - entities that represent a data submission to GHGA. - slots: - - files - - datasets - - samples - - experiments - slot_usage: - files: - required: true - multivalued: true - inlined: true - inlined_as_list: true - datasets: - required: true - multivalued: true - inlined: true - inlined_as_list: true - samples: - required: true - multivalued: true - inlined: true - inlined_as_list: true - experiments: - required: true - multivalued: true - inlined: true - inlined_as_list: true - -slots: - accession: - description: The accession for an entity. - - alias: - description: The alias for an entity. - - description: - description: Description of an entity. - - files: - description: >- - The file associated with an entity. - range: File - - datasets: - description: >- - The dataset associated with an entity. - range: Dataset - - samples: - description: >- - The sample associated with an entity. - range: Sample - - experiments: - description: >- - The experiment associated with an entity. - range: Experiment - - filename: - description: >- - The given filename. - - format: - description: >- - The format of the file: BAM, SAM, CRAM, BAI, etc. - range: file format enum - - size: - description: The size of a file in bytes. - range: integer - - checksum: - description: >- - A computed value which depends on the contents of a block of data and which is transmitted or - stored along with the data in order to detect corruption of the data. - The receiving system recomputes the checksum based upon the received data and compares this - value with the one sent with the data. If the two values are the same, the receiver has some confidence - that the data was received correctly. - -enums: - file format enum: - description: >- - Enum to capture file types. - permissible_values: - bam: - description: BAM File - complete_genomics: - description: Complete Genomics File - cram: - description: CRAM File - fasta: - description: Fasta File - fastq: - description: FastQ File - pacbio_hdf5: - description: PacBio HDF5 File - sff: - description: >- - Standard flowgram format used to encode results - of pyrosequencing from the 454 Life Sciences platform. - srf: - description: >- - SRF is a generic format for DNA sequence data. - vcf: - description: >- - VCF file for storing gene sequence variations. - txt: - description: >- - Text file. - pxf: - description: >- - Phenopacket file. - other: - description: >- - Other format. diff --git a/tests/fixtures/transformations/aggregate/config_invalid.yaml b/tests/fixtures/transformations/aggregate/config_invalid.yaml deleted file mode 100644 index c71e2453..00000000 --- a/tests/fixtures/transformations/aggregate/config_invalid.yaml +++ /dev/null @@ -1,39 +0,0 @@ -aggregations: - - input: Study - output: StudyStats - operations: - - output_path: stats.sex - input_paths: - - study_files.study.conditions.samples.biospecimen.individual.sex - - sample_files.sample.biospecimen.individual.sex - - sequencing_process_file.sequencing_process.sample.biospecimen.individual.sex - function: StringElementCount - visit_only_once: - - Individual - - output_path: stats.sex.tissues - input_paths: - - study_files.study.conditions.samples.biospecimen.tissue - - sample_files.sample.biospecimen.tissue - - sequencing_process_file.sequencing_process.sample.biospecimen.tissue - function: StringElementCount - visit_only_once: - - Biospecimen - - input: Dataset - output: DatasetStats - operations: - - output_path: stats.sex - input_paths: - - study_files.study.conditions.samples.biospecimen.individual.sex - - sample_files.sample.biospecimen.individual.sex - - sequencing_process_file.sequencing_process.sample.biospecimen.individual.sex - function: StringElementCount - visit_only_once: - - Individual - - output_path: stats.tissues - input_paths: - - study_files.study.conditions.samples.biospecimen.tissue - - sample_files.sample.biospecimen.tissue - - sequencing_process_file.sequencing_process.sample.biospecimen.tissue - function: StringElementCount - visit_only_once: - - Biospecimen diff --git a/tests/fixtures/transformations/aggregate/default/config.yaml b/tests/fixtures/transformations/aggregate/default/config.yaml deleted file mode 100644 index f4c03b62..00000000 --- a/tests/fixtures/transformations/aggregate/default/config.yaml +++ /dev/null @@ -1,108 +0,0 @@ -aggregations: - - input: Dataset - output: DatasetStats - operations: - - output_path: title - input_paths: - - title - function: StringCopy - - output_path: types - input_paths: - - types - function: StringListCopy - - output_path: dac_email - input_paths: - - data_access_policy.data_access_committee.email - function: StringCopy - - output_path: sample_summary.count - input_paths: - - study_files.study.conditions.samples - - sample_files.sample - - sequencing_process_files.sequencing_process.sample - - analysis_process_output_files.analysis_process.study_input_files.study.conditions.samples - - analysis_process_output_files.analysis_process.sample_input_files.sample - - analysis_process_output_files.analysis_process.sequencing_process_input_files.sequencing_process.sample - function: Count - visit_only_once: - - Sample - - output_path: sample_summary.stats.sex - input_paths: - - study_files.study.conditions.samples.biospecimen.individual.sex - - sample_files.sample.biospecimen.individual.sex - - sequencing_process_files.sequencing_process.sample.biospecimen.individual.sex - function: StringElementCount - visit_only_once: - - Individual - - output_path: sample_summary.stats.tissues - input_paths: - - study_files.study.conditions.samples.biospecimen.tissue - - sample_files.sample.biospecimen.tissue - - sequencing_process_files.sequencing_process.sample.biospecimen.tissue - function: StringElementCount - visit_only_once: - - Biospecimen - - output_path: sample_summary.stats.phenotypes - input_paths: - - study_files.study.conditions.samples.biospecimen.individual.phenotypic_features - - sample_files.sample.biospecimen.individual.phenotypic_features - - sequencing_process_files.sequencing_process.sample.biospecimen.individual.phenotypic_features - function: StringElementCount - visit_only_once: - - Biospecimen - - output_path: study_summary.count - input_paths: - - study_files.study - - sample_files.sample.condition.study - - sequencing_process_files.sequencing_process.sample.condition.study - function: Count - visit_only_once: - - Study - - output_path: study_summary.stats.accession - input_paths: - - study_files.study.accession - - sample_files.sample.condition.study.accession - - sequencing_process_files.sequencing_process.sample.condition.study.accession - function: StringCopy - visit_only_once: - - Study - - output_path: study_summary.stats.title - input_paths: - - study_files.study.title - - sample_files.sample.condition.study.title - - sequencing_process_files.sequencing_process.sample.condition.study.title - function: StringCopy - visit_only_once: - - Study - - output_path: experiment_summary.count - input_paths: - - sequencing_process_files.sequencing_process.sequencing_experiment - function: Count - visit_only_once: - - SequencingExperiment - - output_path: experiment_summary.stats.protocol - input_paths: - - sequencing_process_files.sequencing_process.sequencing_experiment.sequencing_protocol.instrument_model - function: StringElementCount - visit_only_once: - - SequencingProtocol - - output_path: file_summary.count - input_paths: - - sequencing_process_files - - sample_files - - study_files - - analysis_process_output_files - function: Count - - output_path: file_summary.stats.format - input_paths: - - sequencing_process_files.format - - sample_files.format - - study_files.format - - analysis_process_output_files.format - function: StringElementCount - - output_path: file_summary.stats.total_size - input_paths: - - sequencing_process_files.size - - sample_files.size - - study_files.size - - analysis_process_output_files.size - function: IntegerSum diff --git a/tests/fixtures/transformations/aggregate/default/original_metadata.yaml b/tests/fixtures/transformations/aggregate/default/original_metadata.yaml deleted file mode 100644 index 688f5ab1..00000000 --- a/tests/fixtures/transformations/aggregate/default/original_metadata.yaml +++ /dev/null @@ -1,827 +0,0 @@ -{ - "study_files": - [ - { - "accession": "GHGAF18151724828775", - "alias": "STUDY_FILE_1", - "study": "GHGAS01991766763834", - "name": "STUDY_1_SPECIMEN_1_FILE_1.fastq.gz", - "format": "FASTQ", - "size": 35, - "checksum": "cd52d81e25f372e6fa4db2c0dfceb59862c1969cab17096da352b34950c973cc", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "GHGAD03742971815534", - }, - ], - "analyses": - [ - { - "accession": "GHGAZ50989955131242", - "alias": "ANALYSIS_1", - "title": "Analysis 1 ", - "description": "Description of analysis 1", - "type": "Sequence Variation", - "reference_genome": "GRCh37", - "reference_chromosome": "chr6", - "analysis_processes": - [ - "GHGAR10153975844248", - "GHGAR29310046136662", - "GHGAR48836894698208", - "GHGAR55577900274187", - "GHGAR61636446290695", - "GHGAR65326651489382", - "GHGAR74718139406809", - "GHGAR79722339011562", - "GHGAR88537429202775", - ], - }, - ], - "library_preparation_protocols": - [ - { - "accession": "GHGAL82637323486933", - "alias": "LIB_PREP_1", - "description": "Sequence library is prepared like this. ", - "library_name": "Library A", - "library_layout": "PE", - "library_type": "WGS", - "library_selection": "UNSPECIFIED", - "library_preparation": "PCR-amplification", - "library_preparation_kit_retail_name": "ILLUMINA_TRU_SEQ_DNA", - "library_preparation_kit_manufacturer": "Illumina", - "primer": "GENE_SPECIFIC", - "end_bias": "FULL_LENGTH", - "target_regions": ["chr6:123456-12345678"], - "sequencing_experiments": ["GHGAX26559333583469"], - }, - ], - "publications": - [ - { - "accession": "GHGAU45160770648694", - "alias": "PUB_1", - "title": "A paper of a study", - "abstract": "This study aims finding findings.", - "author": "John Doe", - "year": 1965, - "journal": "Journal of Studies", - "doi": "10.1234/abcd.5678", - "study": "GHGAS01991766763834", - "xref": ["abcd_pubmed_link.pubmed"], - }, - { - "accession": "GHGAU27636037712594", - "alias": "PUB_2", - "title": "Another paper of the same study", - "abstract": "This study aims finding more findings.", - "author": "Joe Dohn", - "year": 1967, - "journal": "Journal of Studies", - "doi": "10.9876/efgh.5432", - "study": "GHGAS22381983000222", - "xref": ["efgh_pubmed_link.pubmed"], - }, - ], - "sequencing_protocols": - [ - { - "accession": "GHGAQ10088568250078", - "alias": "SEQ_PRO_1", - "description": "Sequence protocol 1 is conducted like this. ", - "type": "DNA-seq", - "instrument_model": "ILLUMINA_NOVA_SEQ_6000", - "sequencing_center": "Center A", - "sequencing_read_length": "long", - "target_coverage": "x50", - "flow_cell_id": "ID_Cell 1_Lane_1", - "flow_cell_type": "ILLUMINA_NOVA_SEQ_S4", - "umi_barcode_read": "INDEX1", - "umi_barcode_offset": "16", - "umi_barcode_size": "10", - "cell_barcode_read": "INDEX1", - "cell_barcode_offset": "20", - "cell_barcode_size": "18", - "sample_barcode_read": "INDEX1", - "sequencing_experiments": ["GHGAX26559333583469"], - }, - ], - "sequencing_process_files": - [ - { - "accession": "GHGAF80845742668858", - "alias": "SEQ_FILE_1", - "sequencing_process": "GHGAO26753594565121", - "name": "SAMPLE_1_SPECIMEN_1_FILE_1.fastq.gz", - "format": "FASTQ", - "size": 74462, - "checksum": "83ee47245398adee79bd9c0a8bc57b821e92aba10f5f9ade8a5d1fae4d8c4302", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "GHGAD03742971815534", - }, - { - "accession": "GHGAF56485456909103", - "alias": "SEQ_FILE_2", - "sequencing_process": "GHGAO98224225915830", - "name": "SAMPLE_1_SPECIMEN_1_FILE_2.fastq.gz", - "format": "FASTQ", - "size": 151267, - "checksum": "aad1a238b705cba837f47119f42a40f58d4271ebc33fff0be04eed37bc908c62", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "GHGAD03742971815534", - }, - { - "accession": "GHGAF23822866098069", - "alias": "SEQ_FILE_3", - "sequencing_process": "GHGAO78173227816112", - "name": "SAMPLE_1_SPECIMEN_1_FILE_3.fastq.gz", - "format": "FASTQ", - "size": 376084, - "checksum": "d35fb96a34f97578494de50727ba1c7605331c808d3934d3831900f547007345", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "GHGAD03742971815534", - }, - { - "accession": "GHGAF81518785730407", - "alias": "SEQ_FILE_4", - "sequencing_process": "GHGAO03617721057551", - "name": "SAMPLE_2_SPECIMEN_1_FILE_4.fastq.gz", - "format": "FASTQ", - "size": 772085, - "checksum": "bcf769e78ec21822f50dbaba49ff7b9a68a904719f08f62dc28ec692e4f8c7f3", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "GHGAD97673713575489", - }, - { - "accession": "GHGAF35178677953979", - "alias": "SEQ_FILE_5", - "sequencing_process": "GHGAO67085021916648", - "name": "SAMPLE_2_SPECIMEN_1_FILE_5.fastq.gz", - "format": "FASTQ", - "size": 10001, - "checksum": "d35fb96a34f97578494de50727ba1c7605331c808d3934d3831900f547007345", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "GHGAD97673713575489", - }, - { - "accession": "GHGAF13745389804101", - "alias": "SEQ_FILE_6", - "sequencing_process": "GHGAO61242400113118", - "name": "SAMPLE_2_SPECIMEN_1_FILE_6.fastq.gz", - "format": "FASTQ", - "size": 18091, - "checksum": "71c6d5fd8dd1da3cf57350f89797980a8667e35d1db9342f5924c283128bcec5", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "GHGAD97673713575489", - }, - { - "accession": "GHGAF01472425967579", - "alias": "SEQ_FILE_7", - "sequencing_process": "GHGAO68398602578375", - "name": "SAMPLE_2_SPECIMEN_1_FILE_7.fastq.gz", - "format": "FASTQ", - "size": 59631, - "checksum": "cab402b1d940636377c25957f28292c95666327a2f62c6b4f080d8b93b789ee3", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "GHGAD97673713575489", - }, - { - "accession": "GHGAF71030425105209", - "alias": "SEQ_FILE_8", - "sequencing_process": "GHGAO31966023443934", - "name": "SAMPLE_2_SPECIMEN_1_FILE_8.fastq.gz", - "format": "FASTQ", - "size": 99999, - "checksum": "bcf769e78ec21822f50dbaba49ff7b9a68a904719f08f62dc28ec692e4f8c7f3", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "GHGAD97673713575489", - }, - { - "accession": "GHGAF20013161115942", - "alias": "SEQ_FILE_9", - "sequencing_process": "GHGAO93813230679450", - "name": "SAMPLE_2_SPECIMEN_1_FILE_9.fastq.gz", - "format": "FASTQ", - "size": 98625, - "checksum": "cab402b1d940636377c25957f28292c95666327a2f62c6b4f080d8b93b789ee3", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "GHGAD97673713575489", - }, - ], - "analysis_processes": - [ - { - "accession": "GHGAR48836894698208", - "alias": "ANALYSIS_PROCESS_1", - "analysis": "GHGAZ50989955131242", - "sequencing_process_input_files": ["GHGAF80845742668858"], - "analysis_process_output_files": ["GHGAF00883410129862"], - }, - { - "accession": "GHGAR10153975844248", - "alias": "ANALYSIS_PROCESS_2", - "analysis": "GHGAZ50989955131242", - "sequencing_process_input_files": ["GHGAF56485456909103"], - "analysis_process_output_files": ["GHGAF89097299256674"], - }, - { - "accession": "GHGAR79722339011562", - "alias": "ANALYSIS_PROCESS_3", - "analysis": "GHGAZ50989955131242", - "sequencing_process_input_files": ["GHGAF23822866098069"], - "analysis_process_output_files": ["GHGAF60831481783944"], - }, - { - "accession": "GHGAR74718139406809", - "alias": "ANALYSIS_PROCESS_4", - "analysis": "GHGAZ50989955131242", - "sequencing_process_input_files": ["GHGAF81518785730407"], - "analysis_process_output_files": ["GHGAF63094239733834"], - }, - { - "accession": "GHGAR55577900274187", - "alias": "ANALYSIS_PROCESS_5", - "analysis": "GHGAZ50989955131242", - "sequencing_process_input_files": ["GHGAF35178677953979"], - "analysis_process_output_files": ["GHGAF21123281916646"], - }, - { - "accession": "GHGAR88537429202775", - "alias": "ANALYSIS_PROCESS_6", - "analysis": "GHGAZ50989955131242", - "sequencing_process_input_files": ["GHGAF13745389804101"], - "analysis_process_output_files": ["GHGAF45810796195637"], - }, - { - "accession": "GHGAR65326651489382", - "alias": "ANALYSIS_PROCESS_7", - "analysis": "GHGAZ50989955131242", - "sequencing_process_input_files": ["GHGAF01472425967579"], - "analysis_process_output_files": ["GHGAF92310863557637"], - }, - { - "accession": "GHGAR29310046136662", - "alias": "ANALYSIS_PROCESS_8", - "analysis": "GHGAZ50989955131242", - "sequencing_process_input_files": ["GHGAF71030425105209"], - "analysis_process_output_files": ["GHGAF76205133910132"], - }, - { - "accession": "GHGAR61636446290695", - "alias": "ANALYSIS_PROCESS_9", - "analysis": "GHGAZ50989955131242", - "sequencing_process_input_files": ["GHGAF20013161115942"], - "analysis_process_output_files": ["GHGAF27809267276020"], - }, - ], - "trios": - [ - { - "accession": "GHGAT78745501757886", - "alias": "TRIO_1", - "mother": "GHGAI21535264215904", - "father": "GHGAI44179867873709", - "child": "GHGAI15386867704360", - }, - ], - "sequencing_experiments": - [ - { - "accession": "GHGAX26559333583469", - "alias": "SEQ_EXP_1", - "title": "GHGAE_SEQ_EXP_1", - "description": "Experiment is done like this. ", - "type": "Experiement type A", - "sequencing_protocol": "GHGAQ10088568250078", - "library_preparation_protocol": "GHGAL82637323486933", - "sequencing_processes": - [ - "GHGAO03617721057551", - "GHGAO26753594565121", - "GHGAO31966023443934", - "GHGAO61242400113118", - "GHGAO67085021916648", - "GHGAO68398602578375", - "GHGAO78173227816112", - "GHGAO93813230679450", - "GHGAO98224225915830", - ], - }, - ], - "studies": - [ - { - "accession": "GHGAS01991766763834", - "alias": "STUDY_A", - "title": "The A Study", - "description": "A study that is the A study", - "type": "SYNTHETIC_GENOMICS", - "affiliations": ["Some Institute", "Some other Institute"], - "attributes": - [ - { "key": "budget", "value": "3.5M" }, - { "key": "funding", "value": "EU" }, - ], - "conditions": ["GHGAK29417949125906"], - "publications": ["GHGAU45160770648694"], - "study_files": ["GHGAF18151724828775"], - }, - { - "accession": "GHGAS22381983000222", - "alias": "STUDY_B", - "title": "The B Study", - "description": "A study that is the B study", - "type": "WHOLE_GENOME_SEQUENCING", - "affiliations": ["Some Institute"], - "conditions": ["GHGAK98268779468316"], - "publications": ["GHGAU27636037712594"], - "study_files": [], - }, - ], - "individuals": - [ - { - "accession": "GHGAI15386867704360", - "alias": "INDV_1", - "sex": "MALE_SEX_FOR_CLINICAL_USE", - "karyotype": "OTHER", - "geographical_region": "Italy", - "ancestries": ["European"], - "phenotypic_features": ["Leukemia"], - "biospecimens": ["GHGAM55026985648595", "GHGAM64611431646532"], - }, - { - "accession": "GHGAI21535264215904", - "alias": "MOTHER_1", - "sex": "FEMALE_SEX_FOR_CLINICAL_USE", - "karyotype": "OTHER", - "geographical_region": "Italy", - "ancestries": ["European"], - "phenotypic_features": ["Leukemia"], - "biospecimens": [], - }, - { - "accession": "GHGAI44179867873709", - "alias": "FATHER_1", - "sex": "MALE_SEX_FOR_CLINICAL_USE", - "karyotype": "OTHER", - "geographical_region": "Italy", - "ancestries": ["European"], - "phenotypic_features": ["Leukemia"], - "biospecimens": [], - }, - ], - "data_access_policies": - [ - { - "accession": "GHGAP00259696015712", - "alias": "DAP_1", - "name": "DAP 1", - "description": "A Data Access Policy 1", - "policy_text": "This is a very permissible DAP", - "policy_url": "http://some/policy", - "data_access_committee": "GHGAC84831956633071", - "data_use_permission": "disease specific research", - "data_use_modifiers": ["clinical care use"], - }, - { - "accession": "GHGAP65610045786907", - "alias": "DAP_2", - "name": "DAP 2", - "description": "A Data Access Policy 2", - "policy_text": "This is a very strict DAP", - "policy_url": "http://some/other/policy", - "data_access_committee": "GHGAC84831956633071", - "data_use_permission": "no restriction", - "data_use_modifiers": ["user specific restriction"], - }, - ], - "analysis_process_output_files": - [ - { - "accession": "GHGAF00883410129862", - "alias": "OUTPUT_1", - "analysis_process": "GHGAR48836894698208", - "name": "SAMPLE_1_SPECIMEN_1_FILE_1.vcf.gz", - "format": "VCF", - "size": 39046, - "checksum": "c5167043575395bd810aa4b5246679f794c527b598dc21befba0cbb865137dd2", - "checksum_type": "SHA256", - "dataset": "GHGAD03742971815534", - }, - { - "accession": "GHGAF89097299256674", - "alias": "OUTPUT_2", - "analysis_process": "GHGAR10153975844248", - "name": "SAMPLE_1_SPECIMEN_1_FILE_2.vcf.gz", - "format": "VCF", - "size": 74243, - "checksum": "18ca48c8f7e87d45291efb5d81ad0bff4254db1e61c3197053e21ee2ab79aa35", - "checksum_type": "SHA256", - "dataset": "GHGAD03742971815534", - }, - { - "accession": "GHGAF60831481783944", - "alias": "OUTPUT_3", - "analysis_process": "GHGAR79722339011562", - "name": "SAMPLE_1_SPECIMEN_1_FILE_3.vcf.gz", - "format": "VCF", - "size": 38584, - "checksum": "649a226bd54844e305b1fd6d2e42bdc64adab7723c3bbb9d3c4c8897fe1d3e70", - "checksum_type": "SHA256", - "dataset": "GHGAD03742971815534", - }, - { - "accession": "GHGAF63094239733834", - "alias": "OUTPUT_4", - "analysis_process": "GHGAR74718139406809", - "name": "SAMPLE_2_SPECIMEN_1_FILE_4.vcf.gz", - "format": "VCF", - "size": 379438, - "checksum": "b06d2bd6f2209ed5828cc3a9571fdc34e3d5ec3f944147a88b260ef85a337e13", - "checksum_type": "SHA256", - "dataset": "GHGAD97673713575489", - }, - { - "accession": "GHGAF21123281916646", - "alias": "OUTPUT_5", - "analysis_process": "GHGAR55577900274187", - "name": "SAMPLE_2_SPECIMEN_1_FILE_5.vcf.gz", - "format": "VCF", - "size": 99999, - "checksum": "fe17d72b3fec22928879293c1221017274f4aa00da433f42f1a7b71898431f09", - "checksum_type": "SHA256", - "dataset": "GHGAD97673713575489", - }, - { - "accession": "GHGAF45810796195637", - "alias": "OUTPUT_6", - "analysis_process": "GHGAR88537429202775", - "name": "SAMPLE_2_SPECIMEN_1_FILE_6.vcf.gz", - "format": "VCF", - "size": 17, - "checksum": "25631f11bd18756ec0029380ec886af0c8824dc6b2706bbdb1d9451c7cf45f42", - "checksum_type": "SHA256", - "dataset": "GHGAD97673713575489", - }, - { - "accession": "GHGAF92310863557637", - "alias": "OUTPUT_7", - "analysis_process": "GHGAR65326651489382", - "name": "SAMPLE_2_SPECIMEN_1_FILE_7.vcf.gz", - "format": "VCF", - "size": 79, - "checksum": "fe31c5819c596f9d58cac2539e2223b76ca44a213c00db244b8d199a84de62a7", - "checksum_type": "SHA256", - "dataset": "GHGAD97673713575489", - }, - { - "accession": "GHGAF76205133910132", - "alias": "OUTPUT_8", - "analysis_process": "GHGAR29310046136662", - "name": "SAMPLE_2_SPECIMEN_1_FILE_8.vcf.gz", - "format": "VCF", - "size": 60158, - "checksum": "8565a714dca840f8652c5bae9249ab05f5fb5a4f9f13fbe23304b10f68252da2", - "checksum_type": "SHA256", - "dataset": "GHGAD97673713575489", - }, - { - "accession": "GHGAF27809267276020", - "alias": "OUTPUT_9", - "analysis_process": "GHGAR61636446290695", - "name": "SAMPLE_2_SPECIMEN_1_FILE_9.vcf.gz", - "format": "VCF", - "size": 65363, - "checksum": "394c345f0b0c63ee652627a62eed069244d35c4d5134e4f07d4eabb51afda47e", - "checksum_type": "SHA256", - "dataset": "GHGAD97673713575489", - }, - ], - "biospecimens": - [ - { - "accession": "GHGAM64611431646532", - "alias": "BIOSPECIMEN_1", - "name": "Biospecmen material", - "type": "Blood", - "description": "Blood biospecimen", - "isolation": "Arterial blood specimen", - "storage": "refrigitation at 4 degree", - "individual": "GHGAI15386867704360", - "age_at_sampling": "66_TO_70", - "tissue": "blood", - "samples": ["GHGAN39075735293306"], - }, - { - "accession": "GHGAM55026985648595", - "alias": "BIOSPECIMEN_2", - "name": "Another biospecimen material", - "type": "Subcutaneous fat", - "description": "Subcutaneous fat biospecimen", - "isolation": "Biopsy of soft tissue\u00a0", - "storage": "refrigitation at 4 degree", - "individual": "GHGAI15386867704360", - "age_at_sampling": "66_TO_70", - "tissue": "subcutaneous adipose tissue", - "samples": ["GHGAN10795328546725"], - }, - ], - "conditions": - [ - { - "accession": "GHGAK29417949125906", - "alias": "COND_1", - "title": "Condition A", - "description": "Condition A is a condition", - "name": "Condition A", - "disease_or_healthy": "DISEASE", - "case_control_status": "TRUE_CASE_STATUS", - "mutant_or_wildtype": "MUTANT", - "study": "GHGAS01991766763834", - "samples": ["GHGAN39075735293306"], - }, - { - "accession": "GHGAK98268779468316", - "alias": "COND_2", - "title": "Condition B", - "description": "Condition B is another condition", - "name": "Condition B", - "disease_or_healthy": "HEALTHY", - "case_control_status": "TRUE_CONTROL_STATUS", - "mutant_or_wildtype": "WILDTYPE", - "study": "GHGAS22381983000222", - "samples": ["GHGAN10795328546725"], - }, - ], - "data_access_committees": - [ - { - "accession": "GHGAC84831956633071", - "alias": "DAC_1", - "email": "dac_institute_a@dac.dac", - "institute": "institute_a", - }, - ], - "samples": - [ - { - "accession": "GHGAN39075735293306", - "alias": "SAMPLE_1", - "name": "GHGAS_blood_sample1", - "type": "CF_DNA", - "description": "Arterial blood sample 1", - "isolation": "Blood collection tube holder/needle", - "storage": "frozen at -20", - "biospecimen": "GHGAM64611431646532", - "condition": "GHGAK29417949125906", - "sequencing_processes": - ["GHGAO26753594565121", "GHGAO78173227816112", "GHGAO98224225915830"], - "sample_files": [], - }, - { - "accession": "GHGAN10795328546725", - "alias": "SAMPLE_2", - "name": "GHGAS_tissue_sample1", - "type": "CF_DNA", - "description": "white adipose tissue sample 1", - "isolation": "Core needle biopsy", - "storage": "frozen at -80", - "biospecimen": "GHGAM55026985648595", - "condition": "GHGAK98268779468316", - "sequencing_processes": - [ - "GHGAO03617721057551", - "GHGAO31966023443934", - "GHGAO61242400113118", - "GHGAO67085021916648", - "GHGAO68398602578375", - "GHGAO93813230679450", - ], - "sample_files": [], - }, - ], - "sample_files": [], - "datasets": - [ - { - "accession": "GHGAD03742971815534", - "alias": "DS_1", - "title": "The A dataset", - "description": "An interesting dataset A", - "types": ["A Type", "Another Type"], - "data_access_policy": "GHGAP00259696015712", - "study_files": ["GHGAF18151724828775"], - "sequencing_process_files": - ["GHGAF23822866098069", "GHGAF56485456909103", "GHGAF80845742668858"], - "analysis_process_output_files": - ["GHGAF00883410129862", "GHGAF60831481783944", "GHGAF89097299256674"], - "studies": ["GHGAS01991766763834"], - "sample_files": [], - "samples": [], - "files": - [ - "GHGAF18151724828775", - "GHGAF23822866098069", - "GHGAF56485456909103", - "GHGAF80845742668858", - "GHGAF00883410129862", - "GHGAF60831481783944", - "GHGAF89097299256674", - ], - }, - { - "accession": "GHGAD97673713575489", - "alias": "DS_2", - "title": "The B dataset", - "description": "An interesting dataset B", - "types": ["And another Type"], - "data_access_policy": "GHGAP00259696015712", - "study_files": [], - "sequencing_process_files": - [ - "GHGAF01472425967579", - "GHGAF13745389804101", - "GHGAF20013161115942", - "GHGAF35178677953979", - "GHGAF71030425105209", - "GHGAF81518785730407", - ], - "analysis_process_output_files": - [ - "GHGAF21123281916646", - "GHGAF27809267276020", - "GHGAF45810796195637", - "GHGAF63094239733834", - "GHGAF76205133910132", - "GHGAF92310863557637", - ], - "studies": [], - "sample_files": [], - "samples": [], - "files": - [ - "GHGAF01472425967579", - "GHGAF13745389804101", - "GHGAF20013161115942", - "GHGAF35178677953979", - "GHGAF71030425105209", - "GHGAF81518785730407", - "GHGAF21123281916646", - "GHGAF27809267276020", - "GHGAF45810796195637", - "GHGAF63094239733834", - "GHGAF76205133910132", - "GHGAF92310863557637", - ], - }, - ], - "sequencing_processes": - [ - { - "accession": "GHGAO26753594565121", - "alias": "SEQ_PROCESS_1", - "title": "Sequencing Process A", - "description": "Sequencing process A is conducted like this.", - "name": "Sequencing process A", - "sequencing_run_id": "RUN_123", - "sequencing_lane_id": "LANE_123", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "GHGAX26559333583469", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_1", - "sample": "GHGAN39075735293306", - "sequencing_process_files": ["GHGAF80845742668858"], - }, - { - "accession": "GHGAO98224225915830", - "alias": "SEQ_PROCESS_2", - "title": "Sequencing Process B", - "description": "Sequencing process B is conducted like this.", - "name": "Sequencing process B", - "sequencing_run_id": "RUN_124", - "sequencing_lane_id": "LANE_124", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "GHGAX26559333583469", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_2", - "sample": "GHGAN39075735293306", - "sequencing_process_files": ["GHGAF56485456909103"], - }, - { - "accession": "GHGAO78173227816112", - "alias": "SEQ_PROCESS_3", - "title": "Sequencing Process C", - "description": "Sequencing process C is conducted like this.", - "name": "Sequencing process C", - "sequencing_run_id": "RUN_125", - "sequencing_lane_id": "LANE_125", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "GHGAX26559333583469", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_3", - "sample": "GHGAN39075735293306", - "sequencing_process_files": ["GHGAF23822866098069"], - }, - { - "accession": "GHGAO03617721057551", - "alias": "SEQ_PROCESS_4", - "title": "Sequencing Process D", - "description": "Sequencing process D is conducted like this.", - "name": "Sequencing process D", - "sequencing_run_id": "RUN_126", - "sequencing_lane_id": "LANE_126", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "GHGAX26559333583469", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_4", - "sample": "GHGAN10795328546725", - "sequencing_process_files": ["GHGAF81518785730407"], - }, - { - "accession": "GHGAO67085021916648", - "alias": "SEQ_PROCESS_5", - "title": "Sequencing Process E", - "description": "Sequencing process E is conducted like this.", - "name": "Sequencing process E", - "sequencing_run_id": "RUN_127", - "sequencing_lane_id": "LANE_127", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "GHGAX26559333583469", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_5", - "sample": "GHGAN10795328546725", - "sequencing_process_files": ["GHGAF35178677953979"], - }, - { - "accession": "GHGAO61242400113118", - "alias": "SEQ_PROCESS_6", - "title": "Sequencing Process F", - "description": "Sequencing process F is conducted like this.", - "name": "Sequencing process F", - "sequencing_run_id": "RUN_128", - "sequencing_lane_id": "LANE_128", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "GHGAX26559333583469", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_6", - "sample": "GHGAN10795328546725", - "sequencing_process_files": ["GHGAF13745389804101"], - }, - { - "accession": "GHGAO68398602578375", - "alias": "SEQ_PROCESS_7", - "title": "Sequencing Process G", - "description": "Sequencing process G is conducted like this.", - "name": "Sequencing process G", - "sequencing_run_id": "RUN_129", - "sequencing_lane_id": "LANE_129", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "GHGAX26559333583469", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_7", - "sample": "GHGAN10795328546725", - "sequencing_process_files": ["GHGAF01472425967579"], - }, - { - "accession": "GHGAO31966023443934", - "alias": "SEQ_PROCESS_8", - "title": "Sequencing Process H", - "description": "Sequencing process H is conducted like this.", - "name": "Sequencing process H", - "sequencing_run_id": "RUN_130", - "sequencing_lane_id": "LANE_130", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "GHGAX26559333583469", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_8", - "sample": "GHGAN10795328546725", - "sequencing_process_files": ["GHGAF71030425105209"], - }, - { - "accession": "GHGAO93813230679450", - "alias": "SEQ_PROCESS_9", - "title": "Sequencing Process I", - "description": "Sequencing process I is conducted like this.", - "name": "Sequencing process I", - "sequencing_run_id": "RUN_131", - "sequencing_lane_id": "LANE_131", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "GHGAX26559333583469", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_9", - "sample": "GHGAN10795328546725", - "sequencing_process_files": ["GHGAF20013161115942"], - }, - ], -} diff --git a/tests/fixtures/transformations/aggregate/default/original_model.yaml b/tests/fixtures/transformations/aggregate/default/original_model.yaml deleted file mode 100644 index 85267979..00000000 --- a/tests/fixtures/transformations/aggregate/default/original_model.yaml +++ /dev/null @@ -1,2948 +0,0 @@ -classes: - AliasMixin: - description: - Mixin for entities that can be assigned an alias at the time of metadata - submission. - mixin: true - name: AliasMixin - slot_usage: - alias: - name: alias - required: true - slots: - - alias - Analysis: - aliases: - - data analysis - description: - An Analysis is a data transformation that transforms input data to - output data. The workflow used to achieve this transformation and the individual - steps are also captured. - mixins: - - IdentifiedByAliasMixin - name: Analysis - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - analysis_processes: - inlined: false - multivalued: true - name: analysis_processes - range: AnalysisProcess - required: true - description: - description: - "Describing how an Analysis was carried out. (e.g.: computational - tools, settings, etc.)." - name: description - required: false - reference_chromosome: - name: reference_chromosome - required: true - reference_genome: - name: reference_genome - required: true - type: - description: - The type of the Analysis. Either Reference Alignment (BAM) or - Sequence Variation (VCF) - name: type - required: false - slots: - - title - - description - - type - - reference_genome - - reference_chromosome - - accession - - analysis_processes - AnalysisProcess: - mixins: - - IdentifiedByAliasMixin - name: AnalysisProcess - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - analysis: - description: The Analysis the AnalysisProcess was part of - inlined: false - name: analysis - required: true - analysis_process_output_files: - inlined: false - multivalued: true - name: analysis_process_output_files - range: AnalysisProcessOutputFile - required: true - sample_input_files: - inlined: false - name: sample_input_files - required: false - sequencing_process_input_files: - inlined: false - name: sequencing_process_input_files - required: false - study_input_files: - inlined: false - name: study_input_files - required: false - slots: - - analysis - - study_input_files - - sample_input_files - - sequencing_process_input_files - - accession - - analysis_process_output_files - AnalysisProcessOutputFile: - description: - A AnalysisProcessOutputFile is a File that is associated as an output - file with an AnalysisProcess. - is_a: File - name: AnalysisProcessOutputFile - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - analysis_process: - inlined: false - name: analysis_process - required: true - slots: - - analysis_process - - accession - Attribute: - description: A key/value pair that further characterizes an entity. - exact_mappings: - - SIO:000614 - name: Attribute - slot_usage: - key: - description: The key for an attribute. - name: key - required: true - key_type: - description: - A semantic type that characterizes the attribute key. Usually - this is a term from an ontology. For example, 'MAXO:0000616' indicates that - the attribute is a measurement of oxygen saturation in the blood. - name: key_type - required: false - value: - description: - The value for an attribute. Usually this is a numerical value - (without the units). - name: value - required: true - value_type: - description: - The value_type that characterizes the attribute value. Usually - this is a term from an ontology that describes how to interpret the value. - For example, 'SIO:001413' indicates that the value is to be interpreted - as a percentage. - name: value_type - required: false - slots: - - key - - key_type - - value - - value_type - AttributeMixin: - description: Mixin for entities that can have one or more attributes. - mixin: true - name: AttributeMixin - slot_usage: - attributes: - inlined: true - inlined_as_list: true - name: attributes - required: false - slots: - - attributes - Biospecimen: - description: - A Biospecimen is any natural material taken from a biological entity - (usually a human) for testing, diagnostics, treatment, or research purposes. - The Biospecimen is linked to the Individual from which the Biospecimen is derived. - exact_mappings: - - OBI:0100051 - mixins: - - IdentifiedByAliasMixin - name: Biospecimen - slot_usage: - accession: - identifier: true - name: accession - required: true - age_at_sampling: - name: age_at_sampling - required: true - alias: - identifier: false - name: alias - description: - name: description - required: false - individual: - description: The Individual entity from which this Biospecimen was derived. - inlined: false - name: individual - required: true - isolation: - name: isolation - recommended: true - required: false - name: - name: name - recommended: true - required: false - samples: - inlined: false - multivalued: true - name: samples - range: Sample - required: true - storage: - name: storage - recommended: true - required: false - tissue: - name: tissue - required: true - type: - description: The type of Biospecimen. - name: type - recommended: true - required: false - vital_status_at_sampling: - name: vital_status_at_sampling - recommended: true - required: false - slots: - - name - - type - - description - - isolation - - storage - - individual - - age_at_sampling - - vital_status_at_sampling - - tissue - - accession - - samples - Condition: - description: An condition that is linked to comparable samples. - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - name: Condition - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - case_control_status: - name: case_control_status - required: true - description: - name: description - required: true - disease_or_healthy: - name: disease_or_healthy - required: true - mutant_or_wildtype: - name: mutant_or_wildtype - required: true - name: - name: name - required: true - samples: - inlined: false - multivalued: true - name: samples - range: Sample - required: true - study: - inlined: false - name: study - required: true - slots: - - title - - description - - name - - disease_or_healthy - - case_control_status - - mutant_or_wildtype - - study - - accession - - samples - DataAccessCommittee: - description: - A group of members that are delegated to grant access to one or more - datasets after ensuring the minimum criteria for data sharing has been met, - and request for data use does not raise ethical and/or legal concerns. - mixins: - - IdentifiedByAliasMixin - name: DataAccessCommittee - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - email: - name: email - required: true - institute: - name: institute - required: true - slots: - - email - - institute - - accession - DataAccessPolicy: - description: - A Data Access Policy specifies under which circumstances, legal or - otherwise, a user can have access to one or more Datasets belonging to one or - more Studies. - mixins: - - IdentifiedByAliasMixin - name: DataAccessPolicy - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - data_access_committee: - description: The Data Access Committee linked to this policy. - inlined: false - name: data_access_committee - required: true - data_use_modifiers: - description: - Modifier for Data use permission associated with a policy. Should - be descendants of 'DUO:0000017 data use modifier' - name: data_use_modifiers - recommended: true - required: false - data_use_permission: - description: - Data use permission associated with a policy. Typically one or - more terms from DUO and should be descendants of 'DUO:0000001 data use permission'. - name: data_use_permission - required: true - description: - description: A short description for the Data Access Policy. - name: description - required: true - name: - description: A name for the Data Access Policy. - name: name - required: true - policy_text: - description: - The terms of data use and policy verbiage should be captured - here. - name: policy_text - required: true - policy_url: - description: - URL for the policy, if available. This is useful if the terms - of the policy is made available online at a resolvable URL. - name: policy_url - recommended: true - required: false - slots: - - name - - description - - policy_text - - policy_url - - data_access_committee - - data_use_permission - - data_use_modifiers - - accession - Dataset: - description: - A Dataset is a collection of Files that is prepared for distribution - and is tied to a Data Access Policy. - exact_mappings: - - SIO:000089 - mixins: - - IdentifiedByAliasMixin - name: Dataset - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - analysis_process_output_files: - inlined: false - multivalued: true - name: analysis_process_output_files - range: AnalysisProcessOutputFile - required: true - data_access_policy: - description: The Data Access Policy that applies to this Dataset. - inlined: false - name: data_access_policy - required: true - description: - name: description - required: true - files: - any_of: - - aliases: [] - range: StudyFile - - aliases: [] - range: SampleFile - description: All files associated with the dataset. - inlined: false - multivalued: true - name: files - required: true - sample_files: - inlined: false - multivalued: true - name: sample_files - range: SampleFile - required: true - samples: - inlined: false - multivalued: true - name: samples - range: Sample - required: true - sequencing_process_files: - inlined: false - multivalued: true - name: sequencing_process_files - range: SequencingProcessFile - required: true - studies: - inlined: false - multivalued: true - name: studies - range: Study - required: true - study_files: - inlined: false - multivalued: true - name: study_files - range: StudyFile - required: true - title: - description: A title for the submitted Dataset. - name: title - required: true - types: - description: The type of a dataset. - name: types - required: true - slots: - - title - - description - - types - - data_access_policy - - accession - - analysis_process_output_files - - sequencing_process_files - - study_files - - studies - - sample_files - - samples - - files - File: - description: - A file is an object that contains information generated from a process, - either an Experiment or an Analysis. - mixins: - - IdentifiedByAliasMixin - name: File - slot_usage: - checksum: - name: checksum - required: true - checksum_type: - name: checksum_type - required: true - dataset: - inlined: false - name: dataset - required: true - format: - name: format - required: true - forward_or_reverse: - name: forward_or_reverse - recommended: true - required: false - name: - description: The given filename. - name: name - required: true - size: - name: size - required: true - slots: - - name - - format - - size - - checksum - - forward_or_reverse - - checksum_type - - dataset - IdentifiedByAliasMixin: - abstract: true - is_a: AliasMixin - mixin: true - name: IdentifiedByAliasMixin - slot_usage: - alias: - identifier: true - name: alias - Individual: - aliases: - - subject - - patient - description: An Individual is a Person who is participating in a Study. - mixins: - - IdentifiedByAliasMixin - name: Individual - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - ancestries: - name: ancestries - required: false - biospecimens: - inlined: false - multivalued: true - name: biospecimens - range: Biospecimen - required: true - geographical_region: - name: geographical_region - required: false - karyotype: - name: karyotype - required: false - phenotypic_features: - description: - The Phenotypic Feature entity that is associated with this Biospecimen - at the time of retrieval from the organism. Typically, a concept from Human - Phenotype Ontology. For example, 'HP:0100244' indicates that the Individual - - from_which_the_Biospecimen was extracted from - exhibits_'Fibrosarcoma'_as_one_of_its_phenotype. - name: phenotypic_features - required: false - sex: - name: sex - required: true - slots: - - sex - - karyotype - - geographical_region - - ancestries - - phenotypic_features - - accession - - biospecimens - LibraryPreparationProtocol: - description: Information about the library_preparation of an sequencing experiment. - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - name: LibraryPreparationProtocol - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - attributes: - description: - One or more attributes that further characterizes this library_preparation - Protocol. - name: attributes - description: - description: - "Description about how a sequencing library was prepared (eg: - Library construction method)." - name: description - required: true - end_bias: - name: end_bias - recommended: true - required: false - library_layout: - name: library_layout - required: true - library_name: - name: library_name - required: true - library_preparation: - name: library_preparation - required: true - library_preparation_kit_manufacturer: - name: library_preparation_kit_manufacturer - recommended: true - required: false - library_preparation_kit_retail_name: - name: library_preparation_kit_retail_name - recommended: true - required: false - library_selection: - name: library_selection - required: true - library_type: - name: library_type - required: true - primer: - name: primer - recommended: true - required: false - rnaseq_strandedness: - name: rnaseq_strandedness - recommended: true - required: false - sequencing_experiments: - inlined: false - multivalued: true - name: sequencing_experiments - range: SequencingExperiment - required: true - target_regions: - name: target_regions - required: false - slots: - - description - - library_name - - library_layout - - library_type - - library_selection - - library_preparation - - library_preparation_kit_retail_name - - library_preparation_kit_manufacturer - - primer - - end_bias - - target_regions - - rnaseq_strandedness - - accession - - sequencing_experiments - Publication: - description: - The Publication entity represents a publication. While a publication - can be any article that is published, the minimum expectation is that the publication - has a valid DOI. - mixins: - - IdentifiedByAliasMixin - name: Publication - slot_usage: - abstract: - description: - The study abstract that describes the goals. Can also hold abstract - from a publication related to this study. - name: abstract - required: false - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - author: - name: author - required: false - doi: - description: DOI identifier of the Publication. - name: doi - required: true - journal: - name: journal - required: false - study: - description: The Study entity associated with this Publication. - inlined: false - name: study - required: true - title: - description: The title for the Publication. - name: title - required: false - xref: - description: One or more cross-references for this Publication. - name: xref - required: false - year: - name: year - required: false - slots: - - title - - abstract - - author - - year - - journal - - doi - - study - - xref - - accession - Sample: - description: - A sample is a limited quantity of something to be used for testing, - analysis, inspection, investigation, demonstration, or trial use. A sample is - prepared from a Biospecimen (isolate or tissue). - exact_mappings: - - SIO:001050 - - biolink:MaterialSample - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - name: Sample - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - biospecimen: - description: The Biospecimen from which this Sample was prepared from. - inlined: false - name: biospecimen - required: false - condition: - inlined: false - name: condition - required: true - description: - description: - Short textual description of the sample (How the sample was collected, - sample source, Protocol followed for processing the sample etc). - name: description - required: true - isolation: - name: isolation - recommended: true - required: false - name: - description: Name of the sample (eg:GHGAS_Blood_Sample1 or GHGAS_PBMC_RNAseq_S1). - name: name - required: true - sample_files: - inlined: false - multivalued: true - name: sample_files - range: SampleFile - required: true - sequencing_processes: - inlined: false - multivalued: true - name: sequencing_processes - range: SequencingProcess - required: true - storage: - name: storage - recommended: true - required: false - type: - description: The type of sample. - in_subset: - - ontology - name: type - range: SampleTypeEnum - required: false - xref: - description: - One or more cross-references for this Sample. For example, this - Sample may have an EBI BioSamples accession or an EGA Sample accession. - name: xref - required: false - slots: - - name - - type - - description - - isolation - - storage - - biospecimen - - condition - - xref - - accession - - sample_files - - sequencing_processes - SampleFile: - description: A SampleFile is a File that is associated with a Sample. - is_a: File - name: SampleFile - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - sample: - inlined: false - name: sample - required: true - slots: - - sample - - accession - SequencingExperiment: - description: - An sequencing experiment is an investigation that consists of a coordinated - set of actions and observations designed to generate data with the goal of verifying, - falsifying, or establishing the validity of a hypothesis. - exact_mappings: - - SIO:000994 - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - name: SequencingExperiment - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - description: - description: A detailed description of the Experiment. - name: description - required: true - library_preparation_protocol: - inlined: false - name: library_preparation_protocol - required: true - sequencing_processes: - inlined: false - multivalued: true - name: sequencing_processes - range: SequencingProcess - required: true - sequencing_protocol: - inlined: false - name: sequencing_protocol - required: true - title: - description: "Name for the experiment (eg: GHGAE_PBMC_RNAseq)." - name: title - type: - description: The type of sequencing experiment. - name: type - required: false - slots: - - title - - description - - type - - sequencing_protocol - - library_preparation_protocol - - accession - - sequencing_processes - SequencingProcess: - description: A sequencing process linking a sample to sequencing output. - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - name: SequencingProcess - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - description: - name: description - required: true - index_sequence: - name: index_sequence - recommended: true - required: false - lane_number: - name: lane_number - recommended: true - required: false - name: - name: name - required: true - sample: - inlined: false - name: sample - required: true - sequencing_experiment: - inlined: false - name: sequencing_experiment - required: true - sequencing_lane_id: - description: Identifier of the sequencing lane. Used for batch correction. - name: sequencing_lane_id - required: false - sequencing_machine_id: - description: Identifier of the sequencing machine. Used for batch correction. - name: sequencing_machine_id - required: false - sequencing_process_files: - inlined: false - multivalued: true - name: sequencing_process_files - range: SequencingProcessFile - required: true - sequencing_run_id: - description: Identifier of the sequencing run. Used for batch correction. - name: sequencing_run_id - required: false - slots: - - title - - description - - name - - sequencing_run_id - - sequencing_lane_id - - sequencing_machine_id - - sequencing_experiment - - index_sequence - - lane_number - - sample - - accession - - sequencing_process_files - SequencingProcessFile: - description: A SequencingProcessFile is a File that is associated with a SequencingProcess. - is_a: File - name: SequencingProcessFile - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - sequencing_process: - inlined: false - name: sequencing_process - required: true - slots: - - sequencing_process - - accession - SequencingProtocol: - description: Information about the sequencing of a sample. - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - name: SequencingProtocol - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - attributes: - description: - One or more attributes that further characterizes this Sequencing - Protocol. - name: attributes - cell_barcode_offset: - name: cell_barcode_offset - recommended: true - required: false - cell_barcode_read: - name: cell_barcode_read - recommended: true - required: false - cell_barcode_size: - name: cell_barcode_size - recommended: true - required: false - description: - description: - "Description about the sequencing Protocol (eg: mRNA-seq, Whole - exome long-read sequencing etc)." - name: description - required: true - flow_cell_id: - name: flow_cell_id - recommended: true - required: false - flow_cell_type: - name: flow_cell_type - recommended: true - required: false - instrument_model: - name: instrument_model - required: true - sample_barcode_read: - name: sample_barcode_read - recommended: true - required: false - sequencing_center: - name: sequencing_center - recommended: true - required: false - sequencing_experiments: - inlined: false - multivalued: true - name: sequencing_experiments - range: SequencingExperiment - required: true - sequencing_read_length: - name: sequencing_read_length - required: false - target_coverage: - name: target_coverage - required: false - type: - description: - "Type of the sequencing Protocol (eg: mRNA-seq, Whole exome long-read - sequencing etc)." - name: type - umi_barcode_offset: - name: umi_barcode_offset - recommended: true - required: false - umi_barcode_read: - name: umi_barcode_read - recommended: true - required: false - umi_barcode_size: - name: umi_barcode_size - recommended: true - required: false - slots: - - description - - type - - instrument_model - - sequencing_center - - sequencing_read_length - - target_coverage - - flow_cell_id - - flow_cell_type - - umi_barcode_read - - umi_barcode_offset - - umi_barcode_size - - cell_barcode_read - - cell_barcode_offset - - cell_barcode_size - - sample_barcode_read - - accession - - sequencing_experiments - Study: - description: - Studies are experimental investigations of a particular phenomenon. - It involves a detailed examination and analysis of a subject to learn more about - the phenomenon being studied. - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - name: Study - slot_usage: - accession: - identifier: true - name: accession - required: true - affiliations: - name: affiliations - required: true - alias: - identifier: false - name: alias - attributes: - description: - "Custom key/value pairs that further characterizes the Study. - (e.g.: approaches - single-cell,_bulk_etc)" - name: attributes - conditions: - inlined: false - multivalued: true - name: conditions - range: Condition - required: true - description: - description: - A detailed description (abstract) that describes the goals of - this Study. - name: description - required: true - publications: - inlined: false - multivalued: true - name: publications - range: Publication - required: true - study_files: - inlined: false - multivalued: true - name: study_files - range: StudyFile - required: true - title: - description: A comprehensive title for the study. - name: title - required: true - type: - description: - The type of Study. For example, 'Cancer Genomics', 'Epigenetics', - 'Exome Sequencing'. - name: type - range: StudyTypeEnum - required: true - slots: - - title - - description - - type - - affiliations - - accession - - conditions - - study_files - - publications - StudyFile: - description: A StudyFile is a File that is associated with a Study. - is_a: File - name: StudyFile - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - study: - inlined: false - name: study - required: true - slots: - - study - - accession - Submission: - description: - A grouping entity that represents information about one or more entities. - A submission can be considered as a set of inter-related (and inter-connected) - entities that represent a data submission to GHGA. - name: Submission - slot_usage: - analyses: - description: - Information about one or more Analysis entities associated with - this submission. - inlined: true - inlined_as_list: true - name: analyses - required: true - analysis_process_output_files: - description: The AnalysisProcessOutputFiles that are part of this submission. - inlined: true - inlined_as_list: true - name: analysis_process_output_files - required: true - analysis_processes: - description: The AnalysisProcesses that are part of this submission. - inlined: true - inlined_as_list: true - name: analysis_processes - required: true - biospecimens: - description: - Information about one or more Biospecimen entities associated - with this submission. - inlined: true - inlined_as_list: true - name: biospecimens - required: true - conditions: - description: The Conditions associated with this Submission. - inlined: true - inlined_as_list: true - name: conditions - required: true - data_access_committees: - description: The Data Access Committee that applies to Dataset in this submission. - inlined: true - inlined_as_list: true - name: data_access_committees - required: true - data_access_policies: - description: The Data Access Policy that applies to Dataset in this submission. - inlined: true - inlined_as_list: true - name: data_access_policies - required: true - datasets: - description: One or more Dataset that are part of this submission. - inlined: true - inlined_as_list: true - name: datasets - required: true - individuals: - description: - Information about one or more Individual entities associated - with this submission. - inlined: true - inlined_as_list: true - name: individuals - required: true - library_preparation_protocols: - description: - One or more library preparation protocol entities associated - with this Submission. - inlined: true - inlined_as_list: true - name: library_preparation_protocols - required: true - publications: - description: One or more Publication entities associated with this Submission. - inlined: true - inlined_as_list: true - name: publications - required: true - sample_files: - description: The SampleFiles that are part of this submission. - inlined: true - inlined_as_list: true - name: sample_files - required: true - samples: - description: - Information about one or more Sample entities associated with - this submission. - inlined: true - inlined_as_list: true - name: samples - required: true - sequencing_experiments: - description: - Information about one or more Experiment entities associated - with this submission. - inlined: true - inlined_as_list: true - name: sequencing_experiments - required: true - sequencing_process_files: - description: The SequencingProcessFiles that are part of this submission. - inlined: true - inlined_as_list: true - name: sequencing_process_files - required: true - sequencing_processes: - description: The SequencingProcesses that are part of this submission. - inlined: true - inlined_as_list: true - name: sequencing_processes - required: true - sequencing_protocols: - description: - One or more sequencing protocol entities associated with this - Submission. - inlined: true - inlined_as_list: true - name: sequencing_protocols - required: true - studies: - description: Information about a Study entities associated with this submission. - inlined: true - inlined_as_list: true - name: studies - required: true - study_files: - description: The StudyFiles that are part of this submission. - inlined: true - inlined_as_list: true - name: study_files - required: true - trios: - description: The Trios associated with this Submission. - inlined: true - inlined_as_list: true - name: trios - required: true - slots: - - analyses - - analysis_process_output_files - - analysis_processes - - biospecimens - - conditions - - data_access_committees - - data_access_policies - - datasets - - individuals - - library_preparation_protocols - - publications - - sample_files - - samples - - sequencing_experiments - - sequencing_process_files - - sequencing_processes - - sequencing_protocols - - studies - - study_files - - trios - tree_root: true - Trio: - description: - A trio is defined by three individuals representing an individual - and their parents. - mixins: - - IdentifiedByAliasMixin - name: Trio - slot_usage: - accession: - identifier: true - name: accession - required: true - alias: - identifier: false - name: alias - child: - inlined: false - name: child - required: true - father: - inlined: false - name: father - required: true - mother: - inlined: false - name: mother - required: true - slots: - - mother - - father - - child - - accession -default_curi_maps: - - obo_context - - idot_context - - semweb_context -default_prefix: GHGA -default_range: string -description: - The submission centric metadata schema for the German Human Genome-Phenome - Archive (GHGA). -enums: - AgeRangeEnum: - description: Enum to capture the age range that an Indiviudal belongs to. - name: AgeRangeEnum - permissible_values: - 0_TO_5: - description: Age between 0 to 5. - text: 0_TO_5 - 11_TO_15: - description: Age between 11 to 15. - text: 11_TO_15 - 16_TO_20: - description: Age between 16 to 20. - text: 16_TO_20 - 21_TO_25: - description: Age between 21 to 25. - text: 21_TO_25 - 26_TO_30: - description: Age between 26 to 30. - text: 26_TO_30 - 31_TO_35: - description: Age between 31 to 35. - text: 31_TO_35 - 36_TO_40: - description: Age between 36 to 40. - text: 36_TO_40 - 41_TO_45: - description: Age between 41 to 45. - text: 41_TO_45 - 46_TO_50: - description: Age between 46 to 50. - text: 46_TO_50 - 51_TO_55: - description: Age between 51 to 55. - text: 51_TO_55 - 56_TO_60: - description: Age between 56 to 60. - text: 56_TO_60 - 61_TO_65: - description: Age between 61 to 65. - text: 61_TO_65 - 66_TO_70: - description: Age between 66 to 70. - text: 66_TO_70 - 6_TO_10: - description: Age between 6 to 10. - text: 6_TO_10 - 71_TO_75: - description: Age between 71 to 75. - text: 71_TO_75 - 76_TO_80: - description: Age between 76 to 80. - text: 76_TO_80 - 81_OR_OLDER: - description: Age above 80. - text: 81_OR_OLDER - UNKNOWN: - description: Age range unknown. - text: UNKNOWN - AncestryEnum: - description: Permitted values for ancestry - name: AncestryEnum - reachable_from: - include_self: false - source_nodes: - - HANCESTRO:0004 - source_ontology: http://purl.obolibrary.org/obo/hancestro/releases/2022-05-12/hancestro.owl - CaseControlStatusEnum: - description: - Enum to capture whether a condition corresponds to a case or a control - condition. - name: CaseControlStatusEnum - permissible_values: - NEITHER_CASE_OR_CONTROL_STATUS: - meaning: NCIT:C99273 - text: NEITHER_CASE_OR_CONTROL_STATUS - PROBABLE_CASE_STATUS: - meaning: NCIT:C99271 - text: PROBABLE_CASE_STATUS - PROBABLE_CONTROL_STATUS: - meaning: NCIT:C99272 - text: PROBABLE_CONTROL_STATUS - TRUE_CASE_STATUS: - meaning: NCIT:C99269 - text: TRUE_CASE_STATUS - TRUE_CONTROL_STATUS: - meaning: NCIT:C99270 - text: TRUE_CONTROL_STATUS - UNABLE_TO_ASSESS_CASE_OR_CONTROL_STATUS: - meaning: NCIT:C99274 - text: UNABLE_TO_ASSESS_CASE_OR_CONTROL_STATUS - reachable_from: - include_self: false - source_nodes: - - NCIT:C99268 - source_ontology: http://purl.obolibrary.org/obo/ncit/releases/2022-08-19/ncit.owl - DataUseModifierEnum: - description: Permitted values for data use modifier - name: DataUseModifierEnum - permissible_values: - clinical care use: - meaning: DUO:0000043 - text: clinical care use - collaboration required: - meaning: DUO:0000020 - text: collaboration required - ethics approval required: - meaning: DUO:0000021 - text: ethics approval required - genetic studies only: - meaning: DUO:0000016 - text: genetic studies only - geographical restriction: - meaning: DUO:0000022 - text: geographical restriction - institution specific restriction: - meaning: DUO:0000028 - text: institution specific restriction - no general methods research: - meaning: DUO:0000015 - text: no general methods research - non-commercial use only: - meaning: DUO:0000046 - text: non-commercial use only - not for profit organisation use only: - meaning: DUO:0000045 - text: not for profit organisation use only - not for profit, non commercial use only: - meaning: DUO:0000018 - text: not for profit, non commercial use only - population origins or ancestry research prohibited: - meaning: DUO:00000044 - text: population origins or ancestry research prohibited - project specific restriction: - meaning: DUO:0000027 - text: project specific restriction - publication moratorium: - meaning: DUO:0000024 - text: publication moratorium - publication required: - meaning: DUO:0000019 - text: publication required - research specific restrictions: - meaning: DUO:0000012 - text: research specific restrictions - return to database or resource: - meaning: DUO:0000029 - text: return to database or resource - time limit on use: - meaning: DUO:0000025 - text: time limit on use - user specific restriction: - meaning: DUO:0000026 - text: user specific restriction - reachable_from: - include_self: false - source_nodes: - - DUO:0000017 - source_ontology: http://purl.obolibrary.org/obo/duo/releases/2021-02-23/duo.owl - DataUsePermissionEnum: - description: Permitted values for data use permission - name: DataUsePermissionEnum - permissible_values: - disease specific research: - meaning: DUO:0000007 - text: disease specific research - general research use: - meaning: DUO:0000042 - text: general research use - health or medical or biomedical research: - meaning: DUO:0000006 - text: health or medical or biomedical research - no restriction: - meaning: DUO:0000004 - text: no restriction - population origins or ancestry research only: - meaning: DUO:0000011 - text: population origins or ancestry research only - reachable_from: - include_self: false - source_nodes: - - DUO:0000001 - source_ontology: http://purl.obolibrary.org/obo/duo/releases/2021-02-23/duo.owl - DiseaseOrHealthyEnum: - description: - Enum to capture whether a condition corresponds to a disease or a - healthy state. - name: DiseaseOrHealthyEnum - permissible_values: - DISEASE: - description: Disease state. - text: DISEASE - HEALTHY: - description: Healthy state. - text: HEALTHY - NOT_APPLICABLE: - description: The distinction is not applicaple. - text: NOT_APPLICABLE - EndBiasEnum: - description: Permitted values for end bias - name: EndBiasEnum - permissible_values: - 3_PRIME_END: - text: 3_PRIME_END - 5_PRIME_END: - text: 5_PRIME_END - FULL_LENGTH: - text: FULL_LENGTH - FileFormatEnum: - description: Enum to capture file types. - name: FileFormatEnum - permissible_values: - AGP: - text: AGP - BAI: - text: BAI - BAM: - text: BAM - BCF: - text: BCF - BED: - text: BED - CRAI: - text: CRAI - CRAM: - text: CRAM - CSV: - text: CSV - FASTA: - text: FASTA - FASTQ: - text: FASTQ - GFF: - text: GFF - HDF5: - text: HDF5 - INFO: - text: INFO - JSON: - text: JSON - MD: - text: MD - OTHER: - text: OTHER - PED: - text: PED - SAM: - text: SAM - SFF: - text: SFF - SRF: - text: SRF - TAB: - text: TAB - TABIX: - text: TABIX - TSV: - text: TSV - TXT: - text: TXT - VCF: - text: VCF - WIG: - text: WIG - FlowCellTypeEnum: - description: Permitted values for flow cell type - name: FlowCellTypeEnum - permissible_values: - FLONGLE: - text: FLONGLE - GRID_ION: - text: GRID_ION - ILLUMINA_NOVA_SEQ_S2: - text: ILLUMINA_NOVA_SEQ_S2 - ILLUMINA_NOVA_SEQ_S4: - text: ILLUMINA_NOVA_SEQ_S4 - MIN_ION: - text: MIN_ION - OTHER: - text: OTHER - PROMETH_ION: - text: PROMETH_ION - ForwardOrReverseEnum: - description: - Enum to capture whether the reads from paired-end sequencing are - forward (R1) or reverse (R2). - name: ForwardOrReverseEnum - permissible_values: - FORWARD: - description: The reads are forward (R1) reads - text: FORWARD - REVERSE: - description: The reads are reverse (R2) reads - text: REVERSE - GeographicalRegionEnum: - description: Permitted values for geographical region - name: GeographicalRegionEnum - reachable_from: - include_self: false - source_nodes: - - HANCESTRO:0002 - source_ontology: http://purl.obolibrary.org/obo/hancestro/releases/2022-05-12/hancestro.owl - IndexReadEnum: - description: - Permitted Values to indicate the location of a sequence component - in a read or index - name: IndexReadEnum - permissible_values: - INDEX1: - text: INDEX1 - INDEX2: - text: INDEX2 - READ1: - text: READ1 - READ2: - text: READ2 - IndividualSexEnum: - description: - The sex of an Individual as as defined in a specific medical and - clinical context. - name: IndividualSexEnum - permissible_values: - FEMALE_SEX_FOR_CLINICAL_USE: - meaning: GSSO:011317 - text: FEMALE_SEX_FOR_CLINICAL_USE - IMAGING_SEX: - meaning: GSSO:009318 - text: IMAGING_SEX - MALE_SEX_FOR_CLINICAL_USE: - meaning: GSSO:011318 - text: MALE_SEX_FOR_CLINICAL_USE - SPECIFIED_SEX_FOR_CLINICAL_USE: - meaning: GSSO:011319 - text: SPECIFIED_SEX_FOR_CLINICAL_USE - UNKNOWN_SEX_FOR_CLINICAL_USE: - meaning: GSSO:011320 - text: UNKNOWN_SEX_FOR_CLINICAL_USE - reachable_from: - include_self: false - source_nodes: - - GSSO:009428 - source_ontology: http://purl.obolibrary.org/obo/gsso/releases/2.0.5/gsso.owl - InstrumentModelEnum: - description: Permitted values for instrument model - name: InstrumentModelEnum - permissible_values: - DNBSEQ_G400: - text: DNBSEQ_G400 - DNBSEQ_G400_FAST: - text: DNBSEQ_G400_FAST - DNBSEQ_G50: - text: DNBSEQ_G50 - DNBSEQ_T7: - text: DNBSEQ_T7 - ILLUMINA_GENOME_ANALYZER: - text: ILLUMINA_GENOME_ANALYZER - ILLUMINA_GENOME_ANALYZER_II: - text: ILLUMINA_GENOME_ANALYZER_II - ILLUMINA_GENOME_ANALYZER_IIX: - text: ILLUMINA_GENOME_ANALYZER_IIX - ILLUMINA_HI_SCAN: - text: ILLUMINA_HI_SCAN - ILLUMINA_HI_SCAN_SQ: - text: ILLUMINA_HI_SCAN_SQ - ILLUMINA_HI_SEQ_1000: - text: ILLUMINA_HI_SEQ_1000 - ILLUMINA_HI_SEQ_1500: - text: ILLUMINA_HI_SEQ_1500 - ILLUMINA_HI_SEQ_2000: - text: ILLUMINA_HI_SEQ_2000 - ILLUMINA_HI_SEQ_2500: - text: ILLUMINA_HI_SEQ_2500 - ILLUMINA_HI_SEQ_3000: - text: ILLUMINA_HI_SEQ_3000 - ILLUMINA_HI_SEQ_4000: - text: ILLUMINA_HI_SEQ_4000 - ILLUMINA_HI_SEQ_X: - text: ILLUMINA_HI_SEQ_X - ILLUMINA_HI_SEQ_X_FIVE: - text: ILLUMINA_HI_SEQ_X_FIVE - ILLUMINA_HI_SEQ_X_TEN: - text: ILLUMINA_HI_SEQ_X_TEN - ILLUMINA_I_SCAN: - text: ILLUMINA_I_SCAN - ILLUMINA_I_SEQ_100: - text: ILLUMINA_I_SEQ_100 - ILLUMINA_MINI_SEQ: - text: ILLUMINA_MINI_SEQ - ILLUMINA_MI_SEQ: - text: ILLUMINA_MI_SEQ - ILLUMINA_MI_SEQ_DX: - text: ILLUMINA_MI_SEQ_DX - ILLUMINA_MI_SEQ_DX_RESEARCH_MODE: - text: ILLUMINA_MI_SEQ_DX_RESEARCH_MODE - ILLUMINA_NEXT_SEQ_1000: - text: ILLUMINA_NEXT_SEQ_1000 - ILLUMINA_NEXT_SEQ_2000: - text: ILLUMINA_NEXT_SEQ_2000 - ILLUMINA_NEXT_SEQ_500: - text: ILLUMINA_NEXT_SEQ_500 - ILLUMINA_NEXT_SEQ_550: - text: ILLUMINA_NEXT_SEQ_550 - ILLUMINA_NEXT_SEQ_550_DX: - text: ILLUMINA_NEXT_SEQ_550_DX - ILLUMINA_NEXT_SEQ_550_DX_RESEARCH_MODE: - text: ILLUMINA_NEXT_SEQ_550_DX_RESEARCH_MODE - ILLUMINA_NOVA_SEQ_6000: - text: ILLUMINA_NOVA_SEQ_6000 - ONT_GRID_ION: - text: ONT_GRID_ION - ONT_MIN_ION: - text: ONT_MIN_ION - ONT_PROMETH_ION: - text: ONT_PROMETH_ION - OTHER: - text: OTHER - PAC_BIO_ONSO: - text: PAC_BIO_ONSO - PAC_BIO_REVIO: - text: PAC_BIO_REVIO - PAC_BIO_RS: - text: PAC_BIO_RS - PAC_BIO_RS_II: - text: PAC_BIO_RS_II - PAC_BIO_SEQUEL: - text: PAC_BIO_SEQUEL - PAC_BIO_SEQUEL_II: - text: PAC_BIO_SEQUEL_II - PAC_BIO_SEQUEL_IIE: - text: PAC_BIO_SEQUEL_IIE - ULTIMA_UG_100: - text: ULTIMA_UG_100 - IsolationEnum: - description: Describes how biomaterial was isolated. - name: IsolationEnum - reachable_from: - include_self: false - source_nodes: - - SNOMED:118292001 - source_ontology: http://snomed.info/sct/900000000000207008/version/20200131 - KaryotypeEnum: - description: Permitted values for karyotype - name: KaryotypeEnum - permissible_values: - 46_XX: - text: 46_XX - 46_XY: - text: 46_XY - OTHER: - text: OTHER - LibraryPreparationKitRetailNameEnum: - description: Permitted values for library preparation kit retail name - name: LibraryPreparationKitRetailNameEnum - permissible_values: - 10X_GENOMICS_CHROMIUM_SINGLE_CELL_3_V2: - text: 10X_GENOMICS_CHROMIUM_SINGLE_CELL_3_V2 - 10X_GENOMICS_CHROMIUM_SINGLE_CELL_3_V3: - text: 10X_GENOMICS_CHROMIUM_SINGLE_CELL_3_V3 - ACCEL_NGS_2_S_PLUS_DNA_LIBRARY_KIT: - text: ACCEL_NGS_2_S_PLUS_DNA_LIBRARY_KIT - ACCEL_NGS_METHYL_SEQ_DNA: - text: ACCEL_NGS_METHYL_SEQ_DNA - AGILENT_STRAND_SPECIFIC_RNA: - text: AGILENT_STRAND_SPECIFIC_RNA - AGILENT_SURE_SELECT_CUSTOM_ENRICHMENT_KIT: - text: AGILENT_SURE_SELECT_CUSTOM_ENRICHMENT_KIT - AGILENT_SURE_SELECT_V3: - text: AGILENT_SURE_SELECT_V3 - AGILENT_SURE_SELECT_V4: - text: AGILENT_SURE_SELECT_V4 - AGILENT_SURE_SELECT_V4_UT_RS: - text: AGILENT_SURE_SELECT_V4_UT_RS - AGILENT_SURE_SELECT_V5: - text: AGILENT_SURE_SELECT_V5 - AGILENT_SURE_SELECT_V5_UT_RS: - text: AGILENT_SURE_SELECT_V5_UT_RS - AGILENT_SURE_SELECT_V6: - text: AGILENT_SURE_SELECT_V6 - AGILENT_SURE_SELECT_V6_ONE: - text: AGILENT_SURE_SELECT_V6_ONE - AGILENT_SURE_SELECT_V6_UT_RS: - text: AGILENT_SURE_SELECT_V6_UT_RS - AGILENT_SURE_SELECT_V7: - text: AGILENT_SURE_SELECT_V7 - AGILENT_SURE_SELECT_WGS: - text: AGILENT_SURE_SELECT_WGS - AGILENT_SURE_SELECT_XT_HS_HUMAN_ALL_EXON_V7: - text: AGILENT_SURE_SELECT_XT_HS_HUMAN_ALL_EXON_V7 - AGILENT_SURE_SELECT_XT_MOUSE_ALL_EXON: - text: AGILENT_SURE_SELECT_XT_MOUSE_ALL_EXON - AGILENT_XT_HS_SURE_SELECT_CLINICAL_RESEARCH_EXOME_V2: - text: AGILENT_XT_HS_SURE_SELECT_CLINICAL_RESEARCH_EXOME_V2 - AVENIO_CT_DNA_KIT: - text: AVENIO_CT_DNA_KIT - IDT_X_GEN_EXOME_RESEARCH_PANEL: - text: IDT_X_GEN_EXOME_RESEARCH_PANEL - ILLUMINA_DNA_PCR_FREE: - text: ILLUMINA_DNA_PCR_FREE - ILLUMINA_NEXTERA_DNA_FLEX: - text: ILLUMINA_NEXTERA_DNA_FLEX - ILLUMINA_NEXTERA_EXOME_ENRICHMENT_KIT: - text: ILLUMINA_NEXTERA_EXOME_ENRICHMENT_KIT - ILLUMINA_STRANDED_M_RNA_PREP_LIGATION: - text: ILLUMINA_STRANDED_M_RNA_PREP_LIGATION - ILLUMINA_TRUSEQ_PCR_FREE_METHYL: - text: ILLUMINA_TRUSEQ_PCR_FREE_METHYL - ILLUMINA_TRU_SEQ_CH_IP_SAMPLE_PREPARATION_KIT: - text: ILLUMINA_TRU_SEQ_CH_IP_SAMPLE_PREPARATION_KIT - ILLUMINA_TRU_SEQ_CUSTOM_AMPLICON: - text: ILLUMINA_TRU_SEQ_CUSTOM_AMPLICON - ILLUMINA_TRU_SEQ_DNA: - text: ILLUMINA_TRU_SEQ_DNA - ILLUMINA_TRU_SEQ_NANO_DNA: - text: ILLUMINA_TRU_SEQ_NANO_DNA - ILLUMINA_TRU_SEQ_NANO_DNA_HT: - text: ILLUMINA_TRU_SEQ_NANO_DNA_HT - ILLUMINA_TRU_SEQ_NANO_DNA_LT: - text: ILLUMINA_TRU_SEQ_NANO_DNA_LT - ILLUMINA_TRU_SEQ_NANO_FFPE_DNA: - text: ILLUMINA_TRU_SEQ_NANO_FFPE_DNA - ILLUMINA_TRU_SEQ_PCR_FREE: - text: ILLUMINA_TRU_SEQ_PCR_FREE - ILLUMINA_TRU_SEQ_PCR_FREE_DNA: - text: ILLUMINA_TRU_SEQ_PCR_FREE_DNA - ILLUMINA_TRU_SEQ_RNA: - text: ILLUMINA_TRU_SEQ_RNA - ILLUMINA_TRU_SEQ_SMALL_RNA_KIT: - text: ILLUMINA_TRU_SEQ_SMALL_RNA_KIT - ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_KIT: - text: ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_KIT - ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_LIBRARY_PREP_GLOBIN: - text: ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_LIBRARY_PREP_GLOBIN - ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_RIBO_MINUS_GOLD: - text: ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_RIBO_MINUS_GOLD - ILLUMINA_VAHTS_TOTAL_RNA: - text: ILLUMINA_VAHTS_TOTAL_RNA - INFORM_ONCO_PANEL_HG19: - text: INFORM_ONCO_PANEL_HG19 - ION_AMPLI_SEQ_EXOME_KIT: - text: ION_AMPLI_SEQ_EXOME_KIT - KAPA_HIFI_HOT_START_READYMIX: - text: KAPA_HIFI_HOT_START_READYMIX - KAPA_HYPER_PLUS_KIT: - text: KAPA_HYPER_PLUS_KIT - KAPA_HYPER_PREP_KIT: - text: KAPA_HYPER_PREP_KIT - KAPA_M_RNA_HYPER_PREP_KIT: - text: KAPA_M_RNA_HYPER_PREP_KIT - MAGNETIC_METHYLATED_DNA_IMMUNOPRECIPITATION_DIAGNODE: - text: MAGNETIC_METHYLATED_DNA_IMMUNOPRECIPITATION_DIAGNODE - NEBNEXT_ULTRA_DIRECTIONAL_RNA: - text: NEBNEXT_ULTRA_DIRECTIONAL_RNA - NEB_NEXT_CH_IP_SEQ_LIBRARY_PREP_KIT_FOR_ILLUMINA: - text: NEB_NEXT_CH_IP_SEQ_LIBRARY_PREP_KIT_FOR_ILLUMINA - NEB_NEXT_GLOBIN_R_RNA_DEPLETION_KIT_HUMAN_MOUSE_RAT_WITH_BEADS: - text: NEB_NEXT_GLOBIN_R_RNA_DEPLETION_KIT_HUMAN_MOUSE_RAT_WITH_BEADS - NEB_NEXT_POLY_A_M_RNA_MAGNETIC_ISOLATION_MODULE: - text: NEB_NEXT_POLY_A_M_RNA_MAGNETIC_ISOLATION_MODULE - NEB_NEXT_RNA_ULTRA_II_STRANDED: - text: NEB_NEXT_RNA_ULTRA_II_STRANDED - NEB_NEXT_ULTRA_DNA: - text: NEB_NEXT_ULTRA_DNA - NEB_NEXT_ULTRA_DNA_LIBRARY_PREP_KIT_FOR_ILLUMINA: - text: NEB_NEXT_ULTRA_DNA_LIBRARY_PREP_KIT_FOR_ILLUMINA - NEB_NEXT_ULTRA_II_DIRECTIONAL_RNA: - text: NEB_NEXT_ULTRA_II_DIRECTIONAL_RNA - NEB_NEXT_ULTRA_II_DNA_LIBRARY_PREP_KIT_FOR_ILLUMINA: - text: NEB_NEXT_ULTRA_II_DNA_LIBRARY_PREP_KIT_FOR_ILLUMINA - NEXTERA_XT_DNA: - text: NEXTERA_XT_DNA - OLIGO_D_T: - text: OLIGO_D_T - PICO_METHYL_SEQ: - text: PICO_METHYL_SEQ - SMART_SEQ_V4_ULTRA_LOW_INPUT_RNA_KIT: - text: SMART_SEQ_V4_ULTRA_LOW_INPUT_RNA_KIT - SMAR_TER_STRANDED_TOTAL_RNA_SEQ_KIT: - text: SMAR_TER_STRANDED_TOTAL_RNA_SEQ_KIT - SMAR_TER_ULTRA_LOW_INPUT_RNA_AND_NEB_NEXT_CH_IP_SEQ: - text: SMAR_TER_ULTRA_LOW_INPUT_RNA_AND_NEB_NEXT_CH_IP_SEQ - SMAR_TER_ULTRA_LOW_INPUT_RNA_V4_AND_NEB_NEXT_CH_IP_SEQ: - text: SMAR_TER_ULTRA_LOW_INPUT_RNA_V4_AND_NEB_NEXT_CH_IP_SEQ - SMAR_TSEQ2_TAG: - text: SMAR_TSEQ2_TAG - SUPER_SCRIPT_II_RT_BULK: - text: SUPER_SCRIPT_II_RT_BULK - SURE_CELL_ATAC_SEQ_LIBRARY_PREP_KIT: - text: SURE_CELL_ATAC_SEQ_LIBRARY_PREP_KIT - SURE_SELECT_EUROFINS_ENRICHMENT_CUSTOM_01: - text: SURE_SELECT_EUROFINS_ENRICHMENT_CUSTOM_01 - TAKARA_CLONTECH_SMAR_TER_STRANDED_TOTAL_RNA: - text: TAKARA_CLONTECH_SMAR_TER_STRANDED_TOTAL_RNA - TAKARA_SMAR_TER_PREP_X_DNA_LIBRARY_KIT_ACTIVE_MOTIF_CUSTOM_INDICES_01: - text: TAKARA_SMAR_TER_PREP_X_DNA_LIBRARY_KIT_ACTIVE_MOTIF_CUSTOM_INDICES_01 - TEMPLATE_SWITCHING_RT_ENZYME_MIX_BULK: - text: TEMPLATE_SWITCHING_RT_ENZYME_MIX_BULK - TWIST_HUMAN_CORE_EXOME_PLUS_KIT: - text: TWIST_HUMAN_CORE_EXOME_PLUS_KIT - ULTRALOW_METHYL_SEQ_WITH_TRUE_METHYL_OX_BS_MODULE: - text: ULTRALOW_METHYL_SEQ_WITH_TRUE_METHYL_OX_BS_MODULE - LibraryPreparationLibraryLayoutEnum: - description: Single-end vs paired-end library - name: LibraryPreparationLibraryLayoutEnum - permissible_values: - PE: - text: PE - SE: - text: SE - LibraryPreparationLibrarySelectionEnum: - description: Permitted vocabulary for library selections - name: LibraryPreparationLibrarySelectionEnum - permissible_values: - 5_METHYLCYTIDINE_ANTIBODY_METHOD: - text: 5_METHYLCYTIDINE_ANTIBODY_METHOD - CAGE_METHOD: - text: CAGE_METHOD - CF_H_METHOD: - text: CF_H_METHOD - CF_M_METHOD: - text: CF_M_METHOD - CF_S_METHOD: - text: CF_S_METHOD - CF_T_METHOD: - text: CF_T_METHOD - CH_IP_SEQ_METHOD: - text: CH_IP_SEQ_METHOD - C_DNA_METHOD: - text: C_DNA_METHOD - D_NASE_METHOD: - text: D_NASE_METHOD - HMPR_METHOD: - text: HMPR_METHOD - HYBRID_SELECTION_METHOD: - text: HYBRID_SELECTION_METHOD - INVERSE_R_RNA: - text: INVERSE_R_RNA - MBD2_PROTEIN_METHYL_CP_G_BINDING_DOMAIN_METHOD: - text: MBD2_PROTEIN_METHYL_CP_G_BINDING_DOMAIN_METHOD - MDA: - text: MDA - MF_METHOD: - text: MF_METHOD - MSLL_METHOD: - text: MSLL_METHOD - M_NASE_METHOD: - text: M_NASE_METHOD - OLIGO_D_T: - text: OLIGO_D_T - OTHER: - text: OTHER - PADLOCK_PROBES_CAPTURE_METHOD: - text: PADLOCK_PROBES_CAPTURE_METHOD - PCR_METHOD: - text: PCR_METHOD - POLY_A: - text: POLY_A - RACE_METHOD: - text: RACE_METHOD - RANDOM_METHOD: - text: RANDOM_METHOD - RANDOM_PCR_METHOD: - text: RANDOM_PCR_METHOD - REDUCED_REPRESENTATION_METHOD: - text: REDUCED_REPRESENTATION_METHOD - REPEAT_FRACTIONATION: - text: REPEAT_FRACTIONATION - RESTRICTION_DIGEST_METHOD: - text: RESTRICTION_DIGEST_METHOD - RT_PCR_METHOD: - text: RT_PCR_METHOD - SIZE_FRACTIONATION_METHOD: - text: SIZE_FRACTIONATION_METHOD - UNSPECIFIED: - text: UNSPECIFIED - LibraryPreparationLibraryTypeEnum: - description: The type of the library - name: LibraryPreparationLibraryTypeEnum - permissible_values: - ATAC: - text: ATAC - CHROMOSOME_CONFORMATION_CAPTURE: - text: CHROMOSOME_CONFORMATION_CAPTURE - METHYLATION: - text: METHYLATION - MI_RNA: - text: MI_RNA - M_RNA: - text: M_RNA - NC_RNA: - text: NC_RNA - TOTAL_RNA: - text: TOTAL_RNA - WCS: - text: WCS - WGS: - text: WGS - WXS: - text: WXS - LibraryPreparationRNASeqStrandednessEnum: - description: Permitted values for library preparation RNASeq strandedness - name: LibraryPreparationRNASeqStrandednessEnum - permissible_values: - ANTISENSE: - text: ANTISENSE - BOTH: - text: BOTH - SENSE: - text: SENSE - MutantOrWildtypeEnum: - description: - Enum to capture whether a condition corresponds to a mutant or a - wildtype. - name: MutantOrWildtypeEnum - permissible_values: - MUTANT: - description: Mutant state. - text: MUTANT - NOT_APPLICABLE: - description: The distinction is not applicaple. - text: NOT_APPLICABLE - WILDTYPE: - description: Wildtype state. - text: WILDTYPE - PhenotypicFeaturesEnum: - description: An enum describing permissible phenotype descriptors - include: - - code_set: null - reachable_from: - include_self: false - source_ontology: http://www.ebi.ac.uk/efo/releases/v3.54.0/efo.owl - - code_set: null - reachable_from: - include_self: false - source_ontology: https://www.orphadata.com/data/ontologies/ordo/last_version/ORDO_en_4.2.owl - - code_set: null - reachable_from: - include_self: false - source_nodes: - - SNOMED:404684003 - source_ontology: http://snomed.info/sct/900000000000207008/version/20200131 - - code_set: null - reachable_from: - include_self: false - source_ontology: http://purl.obolibrary.org/obo/mondo/releases/2022-12-01/mondo.owl - - code_set: null - reachable_from: - include_self: false - source_ontology: http://purl.obolibrary.org/obo/hp/releases/2023-04-05/hp-international.owl - name: PhenotypicFeaturesEnum - PrimerEnum: - description: Permitted values for primer - name: PrimerEnum - permissible_values: - GENE_SPECIFIC: - text: GENE_SPECIFIC - OLIGO_D_T: - text: OLIGO_D_T - OTHER: - text: OTHER - RANDOM: - text: RANDOM - SampleBarcodeReadEnum: - description: Permitted values for sample barcode read - name: SampleBarcodeReadEnum - permissible_values: - INDEX1: - text: INDEX1 - INDEX1_AND_INDEX2: - text: INDEX1_AND_INDEX2 - OTHER: - text: OTHER - SampleTypeEnum: - description: The type of a sample - name: SampleTypeEnum - permissible_values: - CF_DNA: - text: CF_DNA - DEPLETED_RNA: - text: DEPLETED_RNA - DS_DNA_CH_IP: - text: DS_DNA_CH_IP - FFPE_DNA: - text: FFPE_DNA - FFPE_TOTAL_RNA: - text: FFPE_TOTAL_RNA - GENOMIC_DNA: - text: GENOMIC_DNA - PCR_PRODUCTS: - text: PCR_PRODUCTS - POLY_A_RNA: - text: POLY_A_RNA - SINGLE_CELL_DNA: - text: SINGLE_CELL_DNA - SINGLE_CELL_RNA: - text: SINGLE_CELL_RNA - SMALL_RNA: - text: SMALL_RNA - TOTAL_RNA: - text: TOTAL_RNA - StudyTypeEnum: - description: Enum to capture the type of a study. - name: StudyTypeEnum - permissible_values: - CANCER_GENOMICS: - text: CANCER_GENOMICS - EPIGENETICS: - text: EPIGENETICS - EXOME_SEQUENCING: - text: EXOME_SEQUENCING - FORENSIC_GENETICS: - text: FORENSIC_GENETICS - GENE_REGULATION_STUDY: - text: GENE_REGULATION_STUDY - GWAS: - text: GWAS - METAGENOMICS: - text: METAGENOMICS - OTHER: - text: OTHER - PALEO_GENOMICS: - text: PALEO_GENOMICS - POOLED_CLONE_SEQUENCING: - text: POOLED_CLONE_SEQUENCING - POPULATION_GENOMICS: - text: POPULATION_GENOMICS - RESEQUENCING: - text: RESEQUENCING - RNASEQ: - text: RNASEQ - SYNTHETIC_GENOMICS: - text: SYNTHETIC_GENOMICS - TRANSCRIPTOME_ANALYSIS: - text: TRANSCRIPTOME_ANALYSIS - WHOLE_GENOME_SEQUENCING: - text: WHOLE_GENOME_SEQUENCING - TissueEnum: - description: A tissue as described in the BRENDA ontology. - name: TissueEnum - reachable_from: - source_ontology: http://purl.obolibrary.org/obo/bto/releases/2021-10-26/bto.owl - VitalStatusEnum: - description: Enum to capture the vital status of an individual. - name: VitalStatusEnum - permissible_values: - ALIVE: - description: Showing characteristics of life; displaying signs of life. - text: ALIVE - DECEASED: - description: The cessation of life. - text: DECEASED - UNKNOWN: - description: Vital status is unknown. - text: UNKNOWN -id: https://w3id.org/GHGA-Submission-Metadata-Schema -name: GHGA-Submission-Metadata-Schema -prefixes: - COB: - prefix_prefix: COB - prefix_reference: http://purl.obolibrary.org/obo/COB_ - DUO: - prefix_prefix: DUO - prefix_reference: http://purl.obolibrary.org/obo/duo/releases/2021-02-23/duo.owl - EFO: - prefix_prefix: EFO - prefix_reference: http://www.ebi.ac.uk/efo/EFO_ - GHGA: - prefix_prefix: GHGA - prefix_reference: https://w3id.org/GHGA/ - GSSO: - prefix_prefix: GSSO - prefix_reference: http://purl.obolibrary.org/obo/gsso/releases/2.0.5/gsso.owl - HANCESTRO: - prefix_prefix: HANCESTRO - prefix_reference: http://purl.obolibrary.org/obo/HANCESTRO_ - SIO: - prefix_prefix: SIO - prefix_reference: http://semanticscience.org/resource/SIO_ - biolink: - prefix_prefix: biolink - prefix_reference: https://w3id.org/biolink/vocab/ - linkml: - prefix_prefix: linkml - prefix_reference: https://w3id.org/linkml/ - shex: - prefix_prefix: shex - prefix_reference: http://www.w3.org/ns/shex# - xsd: - prefix_prefix: xsd - prefix_reference: http://www.w3.org/2001/XMLSchema# -slots: - abstract: - description: - The study abstract that describes the goals. Can also hold abstract - from a publication related to this study - name: abstract - accession: - description: The accession for an entity. - name: accession - affiliations: - description: The Institution(s) associated with an entity. - multivalued: true - name: affiliations - age_at_sampling: - description: Age of an individual. - name: age_at_sampling - range: AgeRangeEnum - alias: - description: The alias for an entity at the time of submission. - name: alias - analyses: - description: The analyses associated with an entity. - multivalued: true - name: analyses - range: Analysis - analysis: - description: The Analysis associated with an entity - name: analysis - range: Analysis - analysis_process: - description: The AnalysisProcess associated with an entity. - name: analysis_process - range: AnalysisProcess - analysis_process_output_files: - description: The AnalysisProcessOutputFiles associated with an entity. - multivalued: true - name: analysis_process_output_files - range: AnalysisProcessOutputFile - analysis_processes: - description: The AnalysisProcess associated with an entity. - multivalued: true - name: analysis_processes - range: AnalysisProcess - ancestries: - description: A person's descent or lineage, from a person or from a population. - in_subset: - - ontology - multivalued: true - name: ancestries - attributes: - description: Key/value pairs corresponding to an entity. - multivalued: true - name: attributes - range: Attribute - author: - description: The individual who is responsible for the content of a document version. - name: author - biospecimen: - description: The biospecimen associated with an entity. - name: biospecimen - range: Biospecimen - biospecimens: - description: The biospecimens associated with an entity. - multivalued: true - name: biospecimens - range: Biospecimen - case_control_status: - description: Whether a condition corresponds to a treatment or a control. - name: case_control_status - range: CaseControlStatusEnum - cell_barcode_offset: - description: The offset in sequence of the cell identifying barcode. (Eg. '0'). - name: cell_barcode_offset - cell_barcode_read: - description: "The type of read that contains the cell barcode (eg: index1/index2/read1/read2)." - name: cell_barcode_read - range: IndexReadEnum - cell_barcode_size: - description: The size of the cell identifying barcode (E.g. '16'). - name: cell_barcode_size - checksum: - description: - A computed value which depends on the contents of a block of data - and which is transmitted or stored along with the data in order to detect corruption - of the data. The receiving system recomputes the checksum based upon the received - data and compares this value with the one sent with the data. If the two values - are the same, the receiver has some confidence that the data was received correctly. - exact_mappings: - - NCIT:C43522 - name: checksum - checksum_type: - description: The type of algorithm used to generate the checksum of a file. - name: checksum_type - child: - description: The child of two individuals. - name: child - range: Individual - condition: - description: The condition associated with an entity. - name: condition - range: Condition - conditions: - description: The Conditions associated with an entity. - multivalued: true - name: conditions - range: Condition - data_access_committee: - description: Data Access Committee associated with an entity. - name: data_access_committee - range: DataAccessCommittee - data_access_committees: - description: Data Access Committees associated with an entity. - multivalued: true - name: data_access_committees - range: DataAccessCommittee - data_access_policies: - description: Data Access Policies associated with an entity. - multivalued: true - name: data_access_policies - range: DataAccessPolicy - data_access_policy: - description: Data Access Policy associated with an entity. - name: data_access_policy - range: DataAccessPolicy - data_use_modifiers: - description: - Modifier for Data use permission associated with an entity. Should - be descendants of 'DUO:0000017 data use modifier' - multivalued: true - name: data_use_modifiers - range: DataUseModifierEnum - data_use_permission: - description: - Data use permission associated with an entity. Typically one or more - terms from DUO. Should be descendants of 'DUO:0000001 data use permission'. - name: data_use_permission - range: DataUsePermissionEnum - dataset: - description: The Dataset associated with an entity. - name: dataset - range: Dataset - datasets: - description: The Datasets associated with an entity. - multivalued: true - name: datasets - range: Dataset - description: - description: Description of an entity. - exact_mappings: - - SIO:000185 - name: description - disease_or_healthy: - description: Whether a condition corresponds to a disease or a healthy state. - name: disease_or_healthy - range: DiseaseOrHealthyEnum - doi: - description: DOI identifier of a publication. - name: doi - email: - description: Email of a person. - name: email - end_bias: - description: - The end of the cDNA molecule that is preferentially sequenced, e.g. - 3/5 prime tag or end, or the full-length transcript. - exact_mappings: - - EFO:0010187 - name: end_bias - range: EndBiasEnum - father: - description: The father of an individual. - name: father - range: Individual - files: - any_of: - - aliases: [] - range: StudyFile - - aliases: [] - range: SampleFile - description: All files associated with the dataset. - inlined: false - multivalued: true - name: files - required: true - flow_cell_id: - description: - "Flow Cell ID (eg: Experiment ID_Cell 1_Lane_1). The barcode assigned - to a flow cell used in nucleotide sequencing." - name: flow_cell_id - flow_cell_type: - description: - Type of flow cell used (e.g. S4, S2 for NovaSeq; PromethION, Flongle - for Nanopore). Aparatus in the fluidic subsystem where the sheath and sample - meet. Can be one of several types; jet-in-air, quartz cuvette, or a hybrid of - the two. The sample flows through the center of a fluid column of sheath fluid - in the flow cell. - name: flow_cell_type - range: FlowCellTypeEnum - format: - description: "The format of the file: BAM, SAM, CRAM, BAI, etc." - name: format - range: FileFormatEnum - forward_or_reverse: - description: - Denotes whether a submitted FASTQ file contains forward (R1) or reverse - (R2) reads for paired-end sequencing. The number that identifies each read direction - in a paired-end nucleotide sequencing reaction. - name: forward_or_reverse - range: ForwardOrReverseEnum - geographical_region: - description: - The geographical region where the Individual is located. Any demarcated - area of the Earth; may be determined by both natural and human boundaries. - in_subset: - - ontology - name: geographical_region - index_sequence: - description: - A unique nucleotide sequence that is added to a sample during library_preparation - to serve as a unique identifier for the sample. - exact_mappings: - - NCIT:C165443 - name: index_sequence - individual: - description: The subject/individual associated with an entity. - name: individual - range: Individual - individuals: - description: The subjects/individuals associated with an entity. - multivalued: true - name: individuals - range: Individual - institute: - description: The institute a person is affiliated with. - name: institute - instrument_model: - description: The name and model of the technology platform used to perform sequencing. - name: instrument_model - range: InstrumentModelEnum - isolation: - description: - Method or device employed for collecting/isolating a biospecimen - or a sample. - in_subset: - - ontology - name: isolation - journal: - description: Name of the journal. - name: journal - karyotype: - description: The karyotype of an individual if defined. - name: karyotype - range: KaryotypeEnum - key: - description: The key of an attribute. - name: key - key_type: - description: The semantic type for the key of an attribute. - name: key_type - lane_number: - description: - The numerical identifier for the lane or machine unit where a sample - was located during nucleotide sequencing. - name: lane_number - library_layout: - description: - Describe whether the library was sequenced in single-end (forward - or reverse) or paired-end mode - exact_mappings: - - NCIT:C175894 - name: library_layout - range: LibraryPreparationLibraryLayoutEnum - library_name: - description: - A short name identifying the library to potential users. The same - name may refer to multiple versions of the same continually updated library. - name: library_name - library_preparation: - description: - The general method for sequencing library_preparation (e.g. KAPA - PCR-free). - name: library_preparation - library_preparation_kit_manufacturer: - description: Manufacturer of library_preparation kit - name: library_preparation_kit_manufacturer - library_preparation_kit_retail_name: - description: - A unique identifier for the kit used to construct a genomic library. - This may include the vendor name, kit name and kit version (e.g. Agilent sure - select Human Exome V8, Twist RefSeq Exome, etc.) - name: library_preparation_kit_retail_name - range: LibraryPreparationKitRetailNameEnum - library_preparation_protocol: - description: The library_preparation Protocol associated with an entity. - name: library_preparation_protocol - range: LibraryPreparationProtocol - library_preparation_protocols: - description: The library_preparation Protocol associated with an entity. - multivalued: true - name: library_preparation_protocols - range: LibraryPreparationProtocol - library_selection: - description: - Whether any method was used to select for or against, enrich, or - screen the material being sequenced. library_selection method (e.g. random, - PCA, cDNA, etc ) - name: library_selection - range: LibraryPreparationLibrarySelectionEnum - library_type: - description: - "Describe the level of omics analysis (eg: Metagenome, transcriptome, - etc)" - name: library_type - range: LibraryPreparationLibraryTypeEnum - mother: - description: The mother of an individual. - name: mother - range: Individual - mutant_or_wildtype: - description: Whether a condition corresponds to a mutant or a wildtype. - name: mutant_or_wildtype - range: MutantOrWildtypeEnum - name: - description: The name for an entity. - name: name - phenotypic_features: - description: Phenotypic feature concepts that the entity is associated with. - in_subset: - - ontology - multivalued: true - name: phenotypic_features - policy_text: - description: The complete text for the Data Access Policy. - name: policy_text - policy_url: - description: Alternative to pasting the Data Access Policy text. - name: policy_url - primer: - description: - The type of primer used for reverse transcription, e.g. 'oligo-dT' - or 'random' primer. This allows users to identify content of the cDNA library - input e.g. enriched for mRNA. - exact_mappings: - - EFO:0010192 - name: primer - range: PrimerEnum - publications: - description: The Publication associated with an entity. - multivalued: true - name: publications - range: Publication - reference_chromosome: - description: The reference chromosome used for this Analysis. - name: reference_chromosome - reference_genome: - description: - "A published genetic sequence that is used as a reference sequence - against which other sequences are compared. Reference genome(s) or annotation(s) - used for prior analyses (eg: GRCh38.p13)." - name: reference_genome - rnaseq_strandedness: - description: - The strandedness of the library, whether reads come from both strands - of the cDNA or only from the first (antisense) or the second (sense) strand. - name: rnaseq_strandedness - range: LibraryPreparationRNASeqStrandednessEnum - sample: - description: The sample associated with an entity. - name: sample - range: Sample - sample_barcode_read: - description: "The type of read that contains the sample barcode (eg: index1/index2/read1/read2)." - name: sample_barcode_read - range: SampleBarcodeReadEnum - sample_files: - description: The SampleFiles associated with an entity. - multivalued: true - name: sample_files - range: SampleFile - sample_input_files: - description: The SampleFile associated used as an input for an entity. - multivalued: true - name: sample_input_files - range: SampleFile - samples: - description: The samples associated with an entity. - multivalued: true - name: samples - range: Sample - sequencing_center: - description: Center where sample was sequenced. - name: sequencing_center - sequencing_experiment: - description: The sequencing experiment associated with an entity. - name: sequencing_experiment - range: SequencingExperiment - sequencing_experiments: - description: The sequencing experiments associated with an entity. - multivalued: true - name: sequencing_experiments - range: SequencingExperiment - sequencing_lane_id: - description: The identifier of a sequencing lane. - name: sequencing_lane_id - sequencing_machine_id: - description: The identifier of a sequencing machine. - name: sequencing_machine_id - sequencing_process: - description: The SequencingProcess associated with an entity. - name: sequencing_process - range: SequencingProcess - sequencing_process_files: - description: The SequencingProcessFiles associated with an entity. - multivalued: true - name: sequencing_process_files - range: SequencingProcessFile - sequencing_process_input_files: - description: The SequencingProcessFile associated used as an input for an entity. - multivalued: true - name: sequencing_process_input_files - range: SequencingProcessFile - sequencing_processes: - description: The SequencingProcesses associated with an entity. - multivalued: true - name: sequencing_processes - range: SequencingProcess - sequencing_protocol: - description: The sequencing protocol associated with an entity. - name: sequencing_protocol - range: SequencingProtocol - sequencing_protocols: - description: The sequencing protocol associated with an entity. - multivalued: true - name: sequencing_protocols - range: SequencingProtocol - sequencing_read_length: - description: - "Length of sequencing reads (eg: Long or short or actual number of - the read length etc). The number of nucleotides successfully ordered from each - side of a nucleic acid fragment obtained after the completion of a sequencing - process" - name: sequencing_read_length - sequencing_run_id: - description: The identifier of a sequencing run. - name: sequencing_run_id - sex: - description: - The assemblage of physical properties or qualities by which male - is distinguished from female; the physical difference between male and female; - the distinguishing peculiarity of male or female. - name: sex - range: IndividualSexEnum - size: - description: The size of a file in bytes. - name: size - range: integer - storage: - description: - Methods by which a biospecimen or a sample is stored (e.g. frozen - in liquid nitrogen). - name: storage - studies: - description: The study associated with an entity. - multivalued: true - name: studies - range: Study - study: - description: The study associated with an entity. - name: study - range: Study - study_files: - description: The StudyFiles associated with an entity. - multivalued: true - name: study_files - range: StudyFile - study_input_files: - description: The StudyFile associated used as an input for an entity. - multivalued: true - name: study_input_files - range: StudyFile - target_coverage: - description: - Mean coverage for whole genome sequencing, or mean target coverage - for whole exome and targeted sequencing. The number of times a particular locus - (site, nucleotide, amplicon, region) was sequenced. - name: target_coverage - target_regions: - description: - Subset of genes or specific regions of the genome, which are most - likely to be involved in the phenotype under study. - multivalued: true - name: target_regions - tissue: - in_subset: - - ontology - name: tissue - title: - description: The title that describes an entity. - name: title - trios: - description: The Trios associated with an entity. - multivalued: true - name: trios - range: Trio - type: - description: "The type of an entity. Note: Not to be confused with rdf:type" - name: type - types: - description: "The types of an entity. Note: Not to be confused with rdf:type" - multivalued: true - name: types - umi_barcode_offset: - description: The offset in sequence of the UMI identifying barcode. (E.g. '16'). - name: umi_barcode_offset - umi_barcode_read: - description: "The type of read that contains the UMI barcode (Eg: index1/index2/read1/read2)." - name: umi_barcode_read - range: IndexReadEnum - umi_barcode_size: - description: The size of the UMI identifying barcode (Eg. '10'). - name: umi_barcode_size - value: - description: The value of an attribute - name: value - value_type: - description: The semantic type for the value of an attribute. - name: value_type - vital_status: - deprecated: - redundant, solved by use of vital_status_at_sampling at the Biospecimen - level - description: - The state or condition of being living or deceased; also includes - the case where the vital status is unknown. - name: vital_status - range: VitalStatusEnum - vital_status_at_sampling: - description: - Vital Status of an Individual at the point of sampling (eg:'Alive', - 'Deceased'). - name: vital_status_at_sampling - range: VitalStatusEnum - xref: - description: Database cross references for an entity. - multivalued: true - name: xref - year: - description: Year in which the paper was published. - name: year - range: integer -subsets: - ontology: - description: - This slot is part of an ontology which is currently not otherwise - encoded in the schema. - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: ontology -types: - boolean: - base: Bool - description: A binary (true or false) value - exact_mappings: - - schema:Boolean - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: boolean - repr: bool - uri: xsd:boolean - curie: - base: Curie - comments: - - in RDF serializations this MUST be expanded to a URI - - in non-RDF serializations MAY be serialized as the compact representation - conforms_to: https://www.w3.org/TR/curie/ - description: a compact URI - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: curie - repr: str - uri: xsd:string - date: - base: XSDDate - description: a date (year, month and day) in an idealized calendar - exact_mappings: - - schema:Date - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: date - notes: - - URI is dateTime because OWL reasoners don't work with straight date or time - repr: str - uri: xsd:date - date_or_datetime: - base: str - description: Either a date or a datetime - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: date_or_datetime - repr: str - uri: linkml:DateOrDatetime - datetime: - base: XSDDateTime - description: The combination of a date and time - exact_mappings: - - schema:DateTime - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: datetime - repr: str - uri: xsd:dateTime - decimal: - base: Decimal - broad_mappings: - - schema:Number - description: - A real number with arbitrary precision that conforms to the xsd:decimal - specification - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: decimal - uri: xsd:decimal - double: - base: float - close_mappings: - - schema:Float - description: A real number that conforms to the xsd:double specification - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: double - uri: xsd:double - float: - base: float - description: A real number that conforms to the xsd:float specification - exact_mappings: - - schema:Float - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: float - uri: xsd:float - integer: - base: int - description: An integer - exact_mappings: - - schema:Integer - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: integer - uri: xsd:integer - ncname: - base: NCName - description: Prefix part of CURIE - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: ncname - repr: str - uri: xsd:string - nodeidentifier: - base: NodeIdentifier - description: A URI, CURIE or BNODE that represents a node in a model. - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: nodeidentifier - repr: str - uri: shex:nonLiteral - objectidentifier: - base: ElementIdentifier - comments: - - Used for inheritence and type checking - description: A URI or CURIE that represents an object in the model. - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: objectidentifier - repr: str - uri: shex:iri - string: - base: str - description: A character string - exact_mappings: - - schema:Text - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: string - uri: xsd:string - time: - base: XSDTime - description: - A time object represents a (local) time of day, independent of any - particular day - exact_mappings: - - schema:Time - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: time - notes: - - URI is dateTime because OWL reasoners do not work with straight date or time - repr: str - uri: xsd:dateTime - uri: - base: URI - close_mappings: - - schema:URL - comments: - - in RDF serializations a slot with range of uri is treated as a literal or type - xsd:anyURI unless it is an identifier or a reference to an identifier, in which - case it is translated directly to a node - conforms_to: https://www.ietf.org/rfc/rfc3987.txt - description: a complete URI - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: uri - repr: str - uri: xsd:anyURI - uriorcurie: - base: URIorCURIE - description: a URI or a CURIE - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - name: uriorcurie - repr: str - uri: xsd:anyURI -version: 1.1.0 diff --git a/tests/fixtures/transformations/aggregate/default/transformed_metadata.yaml b/tests/fixtures/transformations/aggregate/default/transformed_metadata.yaml deleted file mode 100644 index bb079ecb..00000000 --- a/tests/fixtures/transformations/aggregate/default/transformed_metadata.yaml +++ /dev/null @@ -1,76 +0,0 @@ -dataset_stats: - - title: The A dataset - types: - - Another Type - - A Type - dac_email: dac_institute_a@dac.dac - sample_summary: - count: 1 - stats: - sex: - - value: MALE_SEX_FOR_CLINICAL_USE - count: 1 - tissues: - - value: blood - count: 1 - phenotypes: - - value: Leukemia - count: 1 - study_summary: - count: 1 - stats: - accession: GHGAS01991766763834 - title: The A Study - experiment_summary: - count: 1 - stats: - protocol: - - value: ILLUMINA_NOVA_SEQ_6000 - count: 1 - file_summary: - count: 7 - stats: - format: - - value: FASTQ - count: 4 - - value: VCF - count: 3 - total_size: 753721 - accession: GHGAD03742971815534 - - title: The B dataset - types: - - And another Type - dac_email: dac_institute_a@dac.dac - sample_summary: - count: 1 - stats: - sex: - - value: MALE_SEX_FOR_CLINICAL_USE - count: 1 - tissues: - - value: subcutaneous adipose tissue - count: 1 - phenotypes: - - value: Leukemia - count: 1 - study_summary: - count: 1 - stats: - accession: GHGAS22381983000222 - title: The B Study - experiment_summary: - count: 1 - stats: - protocol: - - value: ILLUMINA_NOVA_SEQ_6000 - count: 1 - file_summary: - count: 12 - stats: - format: - - value: FASTQ - count: 6 - - value: VCF - count: 6 - total_size: 1663486 - accession: GHGAD97673713575489 diff --git a/tests/fixtures/transformations/aggregate/default/transformed_model.yaml b/tests/fixtures/transformations/aggregate/default/transformed_model.yaml deleted file mode 100644 index 8b3c0396..00000000 --- a/tests/fixtures/transformations/aggregate/default/transformed_model.yaml +++ /dev/null @@ -1,556 +0,0 @@ -name: GHGA-Submission-Metadata-Schema -description: - The submission centric metadata schema for the German Human Genome-Phenome - Archive (GHGA). -id: https://w3id.org/GHGA-Submission-Metadata-Schema -version: 1.1.0 -prefixes: - COB: - prefix_prefix: COB - prefix_reference: http://purl.obolibrary.org/obo/COB_ - DUO: - prefix_prefix: DUO - prefix_reference: http://purl.obolibrary.org/obo/duo/releases/2021-02-23/duo.owl - EFO: - prefix_prefix: EFO - prefix_reference: http://www.ebi.ac.uk/efo/EFO_ - GHGA: - prefix_prefix: GHGA - prefix_reference: https://w3id.org/GHGA/ - GSSO: - prefix_prefix: GSSO - prefix_reference: http://purl.obolibrary.org/obo/gsso/releases/2.0.5/gsso.owl - HANCESTRO: - prefix_prefix: HANCESTRO - prefix_reference: http://purl.obolibrary.org/obo/HANCESTRO_ - SIO: - prefix_prefix: SIO - prefix_reference: http://semanticscience.org/resource/SIO_ - biolink: - prefix_prefix: biolink - prefix_reference: https://w3id.org/biolink/vocab/ - linkml: - prefix_prefix: linkml - prefix_reference: https://w3id.org/linkml/ - shex: - prefix_prefix: shex - prefix_reference: http://www.w3.org/ns/shex# - xsd: - prefix_prefix: xsd - prefix_reference: http://www.w3.org/2001/XMLSchema# -default_curi_maps: - - obo_context - - idot_context - - semweb_context -default_prefix: GHGA -default_range: string -types: - boolean: - name: boolean - description: A binary (true or false) value - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - exact_mappings: - - schema:Boolean - base: Bool - uri: xsd:boolean - repr: bool - curie: - name: curie - conforms_to: https://www.w3.org/TR/curie/ - description: a compact URI - comments: - - in RDF serializations this MUST be expanded to a URI - - in non-RDF serializations MAY be serialized as the compact representation - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - base: Curie - uri: xsd:string - repr: str - date: - name: date - description: a date (year, month and day) in an idealized calendar - notes: - - URI is dateTime because OWL reasoners don't work with straight date or time - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - exact_mappings: - - schema:Date - base: XSDDate - uri: xsd:date - repr: str - date_or_datetime: - name: date_or_datetime - description: Either a date or a datetime - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - base: str - uri: linkml:DateOrDatetime - repr: str - datetime: - name: datetime - description: The combination of a date and time - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - exact_mappings: - - schema:DateTime - base: XSDDateTime - uri: xsd:dateTime - repr: str - decimal: - name: decimal - description: - A real number with arbitrary precision that conforms to the xsd:decimal - specification - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - broad_mappings: - - schema:Number - base: Decimal - uri: xsd:decimal - double: - name: double - description: A real number that conforms to the xsd:double specification - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - close_mappings: - - schema:Float - base: float - uri: xsd:double - float: - name: float - description: A real number that conforms to the xsd:float specification - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - exact_mappings: - - schema:Float - base: float - uri: xsd:float - integer: - name: integer - description: An integer - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - exact_mappings: - - schema:Integer - base: int - uri: xsd:integer - ncname: - name: ncname - description: Prefix part of CURIE - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - base: NCName - uri: xsd:string - repr: str - nodeidentifier: - name: nodeidentifier - description: A URI, CURIE or BNODE that represents a node in a model. - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - base: NodeIdentifier - uri: shex:nonLiteral - repr: str - objectidentifier: - name: objectidentifier - description: A URI or CURIE that represents an object in the model. - comments: - - Used for inheritence and type checking - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - base: ElementIdentifier - uri: shex:iri - repr: str - string: - name: string - description: A character string - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - exact_mappings: - - schema:Text - base: str - uri: xsd:string - time: - name: time - description: - A time object represents a (local) time of day, independent of any - particular day - notes: - - URI is dateTime because OWL reasoners do not work with straight date or time - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - exact_mappings: - - schema:Time - base: XSDTime - uri: xsd:dateTime - repr: str - uri: - name: uri - conforms_to: https://www.ietf.org/rfc/rfc3987.txt - description: a complete URI - comments: - - in RDF serializations a slot with range of uri is treated as a literal or type - xsd:anyURI unless it is an identifier or a reference to an identifier, in which - case it is translated directly to a node - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - close_mappings: - - schema:URL - base: URI - uri: xsd:anyURI - repr: str - uriorcurie: - name: uriorcurie - description: a URI or a CURIE - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - base: URIorCURIE - uri: xsd:anyURI - repr: str -slots: - accession: - name: accession - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - count: - name: count - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - dac_email: - name: dac_email - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - experiment_summary: - name: experiment_summary - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - file_summary: - name: file_summary - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - format: - name: format - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - phenotypes: - name: phenotypes - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - protocol: - name: protocol - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - sample_summary: - name: sample_summary - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - sex: - name: sex - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - stats: - name: stats - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - study_summary: - name: study_summary - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - tissues: - name: tissues - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - title: - name: title - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - types: - name: types - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - value: - name: value - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - total_size: - name: total_size - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - dataset_stats: - name: dataset_stats - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - multivalued: true - range: DatasetStats - required: true - inlined: true - inlined_as_list: true -classes: - Submission: - name: Submission - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - slots: - - dataset_stats - slot_usage: - dataset_stats: - name: dataset_stats - multivalued: true - domain_of: - - Submission - range: DatasetStats - required: true - inlined: true - inlined_as_list: true - tree_root: true - StringValueCount: - name: StringValueCount - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - slots: - - count - - value - slot_usage: - count: - name: count - multivalued: false - domain_of: - - StringValueCount - - AutoGeneratedClass4 - - AutoGeneratedClass5 - - AutoGeneratedClass6 - - AutoGeneratedClass7 - range: integer - value: - name: value - multivalued: false - domain_of: - - StringValueCount - range: string - DatasetStats: - name: DatasetStats - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - slots: - - dac_email - - experiment_summary - - file_summary - - sample_summary - - study_summary - - title - - types - - accession - slot_usage: - study_summary: - name: study_summary - multivalued: false - domain_of: - - DatasetStats - range: AutoGeneratedClass5 - inlined: true - file_summary: - name: file_summary - multivalued: false - domain_of: - - DatasetStats - range: AutoGeneratedClass7 - inlined: true - experiment_summary: - name: experiment_summary - multivalued: false - domain_of: - - DatasetStats - range: AutoGeneratedClass6 - inlined: true - sample_summary: - name: sample_summary - multivalued: false - domain_of: - - DatasetStats - range: AutoGeneratedClass4 - inlined: true - types: - name: types - multivalued: true - domain_of: - - DatasetStats - range: string - title: - name: title - multivalued: false - domain_of: - - DatasetStats - - AutoGeneratedClass1 - range: string - dac_email: - name: dac_email - multivalued: false - domain_of: - - DatasetStats - range: string - accession: - name: accession - identifier: true - domain_of: - - DatasetStats - - AutoGeneratedClass1 - range: string - AutoGeneratedClass0: - name: AutoGeneratedClass0 - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - slots: - - phenotypes - - sex - - tissues - slot_usage: - sex: - name: sex - multivalued: true - domain_of: - - AutoGeneratedClass0 - range: StringValueCount - inlined: true - inlined_as_list: true - phenotypes: - name: phenotypes - multivalued: true - domain_of: - - AutoGeneratedClass0 - range: StringValueCount - inlined: true - inlined_as_list: true - tissues: - name: tissues - multivalued: true - domain_of: - - AutoGeneratedClass0 - range: StringValueCount - inlined: true - inlined_as_list: true - AutoGeneratedClass1: - name: AutoGeneratedClass1 - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - slots: - - accession - - title - slot_usage: - title: - name: title - multivalued: false - domain_of: - - DatasetStats - - AutoGeneratedClass1 - range: string - accession: - name: accession - multivalued: false - domain_of: - - DatasetStats - - AutoGeneratedClass1 - range: string - AutoGeneratedClass2: - name: AutoGeneratedClass2 - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - slots: - - protocol - slot_usage: - protocol: - name: protocol - multivalued: true - domain_of: - - AutoGeneratedClass2 - range: StringValueCount - inlined: true - inlined_as_list: true - AutoGeneratedClass3: - name: AutoGeneratedClass3 - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - slots: - - format - - total_size - slot_usage: - format: - name: format - multivalued: true - domain_of: - - AutoGeneratedClass3 - range: StringValueCount - inlined: true - inlined_as_list: true - total_size: - name: total_size - multivalued: false - domain_of: - - AutoGeneratedClass3 - range: integer - AutoGeneratedClass4: - name: AutoGeneratedClass4 - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - slots: - - count - - stats - slot_usage: - stats: - name: stats - multivalued: false - domain_of: - - AutoGeneratedClass4 - - AutoGeneratedClass5 - - AutoGeneratedClass6 - - AutoGeneratedClass7 - range: AutoGeneratedClass0 - inlined: true - count: - name: count - multivalued: false - domain_of: - - StringValueCount - - AutoGeneratedClass4 - - AutoGeneratedClass5 - - AutoGeneratedClass6 - - AutoGeneratedClass7 - range: integer - AutoGeneratedClass5: - name: AutoGeneratedClass5 - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - slots: - - count - - stats - slot_usage: - stats: - name: stats - multivalued: false - domain_of: - - AutoGeneratedClass4 - - AutoGeneratedClass5 - - AutoGeneratedClass6 - - AutoGeneratedClass7 - range: AutoGeneratedClass1 - inlined: true - count: - name: count - multivalued: false - domain_of: - - StringValueCount - - AutoGeneratedClass4 - - AutoGeneratedClass5 - - AutoGeneratedClass6 - - AutoGeneratedClass7 - range: integer - AutoGeneratedClass6: - name: AutoGeneratedClass6 - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - slots: - - count - - stats - slot_usage: - stats: - name: stats - multivalued: false - domain_of: - - AutoGeneratedClass4 - - AutoGeneratedClass5 - - AutoGeneratedClass6 - - AutoGeneratedClass7 - range: AutoGeneratedClass2 - inlined: true - count: - name: count - multivalued: false - domain_of: - - StringValueCount - - AutoGeneratedClass4 - - AutoGeneratedClass5 - - AutoGeneratedClass6 - - AutoGeneratedClass7 - range: integer - AutoGeneratedClass7: - name: AutoGeneratedClass7 - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - slots: - - count - - stats - slot_usage: - stats: - name: stats - multivalued: false - domain_of: - - AutoGeneratedClass4 - - AutoGeneratedClass5 - - AutoGeneratedClass6 - - AutoGeneratedClass7 - range: AutoGeneratedClass3 - inlined: true - count: - name: count - multivalued: false - domain_of: - - StringValueCount - - AutoGeneratedClass4 - - AutoGeneratedClass5 - - AutoGeneratedClass6 - - AutoGeneratedClass7 - range: integer diff --git a/tests/fixtures/transformations/custom_embedding/multivalued/config.yaml b/tests/fixtures/transformations/custom_embedding/multivalued/config.yaml deleted file mode 100644 index 0757133f..00000000 --- a/tests/fixtures/transformations/custom_embedding/multivalued/config.yaml +++ /dev/null @@ -1,16 +0,0 @@ -embedding_profiles: - - target_class: DatasetWithFiles - source_class: Dataset - description: "Datasets with embedded Files." - embedded_references: - files: File - - target_class: ExperimentFullyEmbedded - source_class: Experiment - description: "Fully embedded Experiments." - embedded_references: - samples: - target_class: SampleWithFiles - source_class: Sample - description: "Samples with embedded Files." - embedded_references: - files: File diff --git a/tests/fixtures/transformations/custom_embedding/multivalued/original_metadata.yaml b/tests/fixtures/transformations/custom_embedding/multivalued/original_metadata.yaml deleted file mode 100644 index bfef8773..00000000 --- a/tests/fixtures/transformations/custom_embedding/multivalued/original_metadata.yaml +++ /dev/null @@ -1,45 +0,0 @@ -files: - - alias: test_sample_01_R1 - filename: test_sample_01_R1.fastq - format: fastq - checksum: 1c8aed294d5dec3740a175f6b655725fa668bfe41311e74f7ca9d85c91371b4e - size: 299943 - - alias: test_sample_01_R2 - filename: test_sample_01_R2.fastq - format: fastq - checksum: de44d5e9d2103cd5f9de899a5c231430f5d05c66ecf17a2bb8daf1660a41994a - size: 234243 - - alias: test_sample_02_R1 - filename: test_sample_02_R1.fastq - format: fastq - checksum: 774a6e39ee77a74d841b13f0050dfcf97a6f260751bfc2c5282e35692e4ee6b1 - size: 92345234 - - alias: test_sample_02_R2 - filename: test_sample_02_R2.fastq - format: fastq - checksum: 7e793b40583daca28a594d45bdc9218c04353581d5bbbecab88b13c068bba8a4 - size: 234243 -datasets: - - alias: test_dataset_01 - files: - - test_sample_01_R1 - - test_sample_01_R2 - - test_sample_02_R1 - - test_sample_02_R2 -samples: - - alias: test_sample_01 - description: A tests sample. - files: - - test_sample_01_R1 - - test_sample_01_R2 - - alias: test_sample_02 - description: A tests sample. - files: - - test_sample_02_R1 - - test_sample_02_R2 -experiments: - - alias: test_experiment_01 - description: A test experiment. - samples: - - test_sample_01 - - test_sample_02 diff --git a/tests/fixtures/transformations/custom_embedding/multivalued/original_model.yaml b/tests/fixtures/transformations/custom_embedding/multivalued/original_model.yaml deleted file mode 100644 index d553902e..00000000 --- a/tests/fixtures/transformations/custom_embedding/multivalued/original_model.yaml +++ /dev/null @@ -1,202 +0,0 @@ -id: https://w3id.org/Minimal-Model -name: Minimal-Model -version: 0.9.0 -prefixes: - linkml: https://w3id.org/linkml/ -imports: - - linkml:types - -default_range: string - -classes: - File: - description: >- - A file is an object that contains information generated from a process, either an - Experiment or an Analysis. - slots: - - alias - - filename - - format - - size - - checksum - slot_usage: - alias: - required: true - identifier: true - filename: - required: true - format: - required: true - checksum: - required: true - size: - required: true - - Dataset: - description: >- - A Dataset is a collection of Files. - slots: - - alias - - files - slot_usage: - alias: - required: true - identifier: true - files: - required: true - multivalued: true - inlined: false - - Sample: - description: >- - A sample that was used to generate Files containing experiment data. - slots: - - alias - - description - - files - slot_usage: - alias: - required: true - identifier: true - description: - required: true - files: - required: true - multivalued: true - inlined: false - - Experiment: - description: >- - An experiment containing one or multiple samples. - slots: - - alias - - description - - samples - slot_usage: - alias: - required: true - identifier: true - description: - required: true - samples: - required: true - multivalued: true - inlined: false - - Submission: - tree_root: true - description: >- - A grouping entity that represents information about one or more entities. - A submission can be considered as a set of inter-related (and inter-connected) - entities that represent a data submission to GHGA. - slots: - - files - - datasets - - samples - - experiments - slot_usage: - files: - required: true - multivalued: true - inlined: true - inlined_as_list: true - datasets: - required: true - multivalued: true - inlined: true - inlined_as_list: true - samples: - required: true - multivalued: true - inlined: true - inlined_as_list: true - experiments: - required: true - multivalued: true - inlined: true - inlined_as_list: true - -slots: - alias: - description: The alias for an entity. - - description: - description: Description of an entity. - - files: - description: >- - The file associated with an entity. - range: File - - datasets: - description: >- - The dataset associated with an entity. - range: Dataset - - samples: - description: >- - The sample associated with an entity. - range: Sample - - experiments: - description: >- - The experiment associated with an entity. - range: Experiment - - filename: - description: >- - The given filename. - - format: - description: >- - The format of the file: BAM, SAM, CRAM, BAI, etc. - range: file format enum - - size: - description: The size of a file in bytes. - range: integer - - checksum: - description: >- - A computed value which depends on the contents of a block of data and which is transmitted or - stored along with the data in order to detect corruption of the data. - The receiving system recomputes the checksum based upon the received data and compares this - value with the one sent with the data. If the two values are the same, the receiver has some confidence - that the data was received correctly. - -enums: - file format enum: - description: >- - Enum to capture file types. - permissible_values: - bam: - description: BAM File - complete_genomics: - description: Complete Genomics File - cram: - description: CRAM File - fasta: - description: Fasta File - fastq: - description: FastQ File - pacbio_hdf5: - description: PacBio HDF5 File - sff: - description: >- - Standard flowgram format used to encode results - of pyrosequencing from the 454 Life Sciences platform. - srf: - description: >- - SRF is a generic format for DNA sequence data. - vcf: - description: >- - VCF file for storing gene sequence variations. - txt: - description: >- - Text file. - pxf: - description: >- - Phenopacket file. - other: - description: >- - Other format. diff --git a/tests/fixtures/transformations/custom_embedding/multivalued/transformed_metadata.yaml b/tests/fixtures/transformations/custom_embedding/multivalued/transformed_metadata.yaml deleted file mode 100644 index 3a06e2ec..00000000 --- a/tests/fixtures/transformations/custom_embedding/multivalued/transformed_metadata.yaml +++ /dev/null @@ -1,98 +0,0 @@ -files: - - alias: test_sample_01_R1 - filename: test_sample_01_R1.fastq - format: fastq - checksum: 1c8aed294d5dec3740a175f6b655725fa668bfe41311e74f7ca9d85c91371b4e - size: 299943 - - alias: test_sample_01_R2 - filename: test_sample_01_R2.fastq - format: fastq - checksum: de44d5e9d2103cd5f9de899a5c231430f5d05c66ecf17a2bb8daf1660a41994a - size: 234243 - - alias: test_sample_02_R1 - filename: test_sample_02_R1.fastq - format: fastq - checksum: 774a6e39ee77a74d841b13f0050dfcf97a6f260751bfc2c5282e35692e4ee6b1 - size: 92345234 - - alias: test_sample_02_R2 - filename: test_sample_02_R2.fastq - format: fastq - checksum: 7e793b40583daca28a594d45bdc9218c04353581d5bbbecab88b13c068bba8a4 - size: 234243 -datasets: - - alias: test_dataset_01 - files: - - test_sample_01_R1 - - test_sample_01_R2 - - test_sample_02_R1 - - test_sample_02_R2 -samples: - - alias: test_sample_01 - description: A tests sample. - files: - - test_sample_01_R1 - - test_sample_01_R2 - - alias: test_sample_02 - description: A tests sample. - files: - - test_sample_02_R1 - - test_sample_02_R2 -experiments: - - alias: test_experiment_01 - description: A test experiment. - samples: - - test_sample_01 - - test_sample_02 -dataset_with_files: - - alias: test_dataset_01 - files: - - alias: test_sample_01_R1 - filename: test_sample_01_R1.fastq - format: fastq - checksum: 1c8aed294d5dec3740a175f6b655725fa668bfe41311e74f7ca9d85c91371b4e - size: 299943 - - alias: test_sample_01_R2 - filename: test_sample_01_R2.fastq - format: fastq - checksum: de44d5e9d2103cd5f9de899a5c231430f5d05c66ecf17a2bb8daf1660a41994a - size: 234243 - - alias: test_sample_02_R1 - filename: test_sample_02_R1.fastq - format: fastq - checksum: 774a6e39ee77a74d841b13f0050dfcf97a6f260751bfc2c5282e35692e4ee6b1 - size: 92345234 - - alias: test_sample_02_R2 - filename: test_sample_02_R2.fastq - format: fastq - checksum: 7e793b40583daca28a594d45bdc9218c04353581d5bbbecab88b13c068bba8a4 - size: 234243 -experiment_fully_embedded: - - alias: test_experiment_01 - description: A test experiment. - samples: - - alias: test_sample_01 - description: A tests sample. - files: - - alias: test_sample_01_R1 - filename: test_sample_01_R1.fastq - format: fastq - checksum: 1c8aed294d5dec3740a175f6b655725fa668bfe41311e74f7ca9d85c91371b4e - size: 299943 - - alias: test_sample_01_R2 - filename: test_sample_01_R2.fastq - format: fastq - checksum: de44d5e9d2103cd5f9de899a5c231430f5d05c66ecf17a2bb8daf1660a41994a - size: 234243 - - alias: test_sample_02 - description: A tests sample. - files: - - alias: test_sample_02_R1 - filename: test_sample_02_R1.fastq - format: fastq - checksum: 774a6e39ee77a74d841b13f0050dfcf97a6f260751bfc2c5282e35692e4ee6b1 - size: 92345234 - - alias: test_sample_02_R2 - filename: test_sample_02_R2.fastq - format: fastq - checksum: 7e793b40583daca28a594d45bdc9218c04353581d5bbbecab88b13c068bba8a4 - size: 234243 diff --git a/tests/fixtures/transformations/custom_embedding/multivalued/transformed_model.yaml b/tests/fixtures/transformations/custom_embedding/multivalued/transformed_model.yaml deleted file mode 100644 index 702ac6df..00000000 --- a/tests/fixtures/transformations/custom_embedding/multivalued/transformed_model.yaml +++ /dev/null @@ -1,297 +0,0 @@ -id: https://w3id.org/Minimal-Model -name: Minimal-Model -version: 0.9.0 -prefixes: - linkml: https://w3id.org/linkml/ -imports: - - linkml:types - -default_range: string - -classes: - File: - description: >- - A file is an object that contains information generated from a process, either an - Experiment or an Analysis. - slots: - - alias - - filename - - format - - size - - checksum - slot_usage: - alias: - required: true - identifier: true - filename: - required: true - format: - required: true - checksum: - required: true - size: - required: true - - Dataset: - description: >- - A Dataset is a collection of Files. - slots: - - alias - - files - slot_usage: - alias: - required: true - identifier: true - files: - required: true - multivalued: true - inlined: false - - Sample: - description: >- - A sample that was used to generate Files containing experiment data. - slots: - - alias - - description - - files - slot_usage: - alias: - required: true - identifier: true - description: - required: true - files: - required: true - multivalued: true - inlined: false - - Experiment: - description: >- - An experiment containing one or multiple samples. - slots: - - alias - - description - - samples - slot_usage: - alias: - required: true - identifier: true - description: - required: true - samples: - required: true - multivalued: true - inlined: false - - DatasetWithFiles: - description: >- - A Dataset is a collection of Files. - slots: - - alias - - files - slot_usage: - alias: - required: true - identifier: true - files: - required: true - multivalued: true - inlined: true - inlined_as_list: true - - SampleWithFiles: - description: >- - A sample that was used to generate Files containing experiment data. - slots: - - alias - - description - - files - slot_usage: - alias: - required: true - identifier: false - description: - required: true - files: - required: true - multivalued: true - inlined: true - inlined_as_list: true - - ExperimentFullyEmbedded: - description: >- - An experiment containing one or multiple samples. - slots: - - alias - - description - - samples - slot_usage: - alias: - required: true - identifier: true - description: - required: true - samples: - range: SampleWithFiles - required: true - multivalued: true - inlined: true - inlined_as_list: true - - Submission: - tree_root: true - description: >- - A grouping entity that represents information about one or more entities. - A submission can be considered as a set of inter-related (and inter-connected) - entities that represent a data submission to GHGA. - slots: - - files - - datasets - - samples - - experiments - - dataset_with_files - - experiment_fully_embedded - slot_usage: - files: - required: true - multivalued: true - inlined: true - inlined_as_list: true - annotations: - hidden: true - datasets: - required: true - multivalued: true - inlined: true - inlined_as_list: true - annotations: - hidden: true - samples: - required: true - multivalued: true - inlined: true - inlined_as_list: true - annotations: - hidden: true - experiments: - required: true - multivalued: true - inlined: true - inlined_as_list: true - annotations: - hidden: true - dataset_with_files: - description: Datasets with embedded Files. - range: DatasetWithFiles - required: true - multivalued: true - inlined: true - inlined_as_list: true - experiment_fully_embedded: - description: Fully embedded Experiments. - range: ExperimentFullyEmbedded - required: true - multivalued: true - inlined: true - inlined_as_list: true - -slots: - alias: - description: The alias for an entity. - - description: - description: Description of an entity. - - files: - description: >- - The file associated with an entity. - range: File - - datasets: - description: >- - The dataset associated with an entity. - range: Dataset - - samples: - description: >- - The sample associated with an entity. - range: Sample - - experiments: - description: >- - The experiment associated with an entity. - range: Experiment - - filename: - description: >- - The given filename. - - format: - description: >- - The format of the file: BAM, SAM, CRAM, BAI, etc. - range: file format enum - - size: - description: The size of a file in bytes. - range: integer - - checksum: - description: >- - A computed value which depends on the contents of a block of data and which is transmitted or - stored along with the data in order to detect corruption of the data. - The receiving system recomputes the checksum based upon the received data and compares this - value with the one sent with the data. If the two values are the same, the receiver has some confidence - that the data was received correctly. - - dataset_with_files: - description: Datasets with embedded Files. - range: DatasetWithFiles - required: true - multivalued: true - inlined: true - inlined_as_list: true - - experiment_fully_embedded: - description: Fully embedded Experiments. - range: ExperimentFullyEmbedded - required: true - multivalued: true - inlined: true - inlined_as_list: true - -enums: - file format enum: - description: >- - Enum to capture file types. - permissible_values: - bam: - description: BAM File - complete_genomics: - description: Complete Genomics File - cram: - description: CRAM File - fasta: - description: Fasta File - fastq: - description: FastQ File - pacbio_hdf5: - description: PacBio HDF5 File - sff: - description: >- - Standard flowgram format used to encode results - of pyrosequencing from the 454 Life Sciences platform. - srf: - description: >- - SRF is a generic format for DNA sequence data. - vcf: - description: >- - VCF file for storing gene sequence variations. - txt: - description: >- - Text file. - pxf: - description: >- - Phenopacket file. - other: - description: >- - Other format. diff --git a/tests/fixtures/transformations/merge_slots/multiple/config.yaml b/tests/fixtures/transformations/merge_slots/multiple/config.yaml deleted file mode 100644 index c55b7f8f..00000000 --- a/tests/fixtures/transformations/merge_slots/multiple/config.yaml +++ /dev/null @@ -1,11 +0,0 @@ -merge_instructions: - - class_name: Dataset - source_slots: [read1_files, read2_files] - target_slot: read_files - target_description: >- - First and second read files. - - class_name: Dataset - source_slots: [read1_files, read2_files, temporary_files] - target_slot: all_files - target_description: >- - All files associated with a dataset. diff --git a/tests/fixtures/transformations/merge_slots/multiple/original_metadata.yaml b/tests/fixtures/transformations/merge_slots/multiple/original_metadata.yaml deleted file mode 100644 index f97905b8..00000000 --- a/tests/fixtures/transformations/merge_slots/multiple/original_metadata.yaml +++ /dev/null @@ -1,36 +0,0 @@ -files: - - alias: some_unnamed_file - format: txt - checksum: 1c8aed294d5dec3330a175f6b655725fa668bfe41311e74f7ca9d85c91371b4e - size: 123412 -named_files: - - alias: test_sample_01_R1 - filename: test_sample_01_R1.fastq - format: fastq - checksum: 1c8aed294d5dec3740a175f6b655725fa668bfe41311e74f7ca9d85c91371b4e - size: 299943 - - alias: test_sample_01_R2 - filename: test_sample_01_R2.fastq - format: fastq - checksum: de44d5e9d2103cd5f9de899a5c231430f5d05c66ecf17a2bb8daf1660a41994a - size: 234243 - - alias: test_sample_02_R1 - filename: test_sample_02_R1.fastq - format: fastq - checksum: 774a6e39ee77a74d841b13f0050dfcf97a6f260751bfc2c5282e35692e4ee6b1 - size: 92345234 - - alias: test_sample_02_R2 - filename: test_sample_02_R2.fastq - format: fastq - checksum: 7e793b40583daca28a594d45bdc9218c04353581d5bbbecab88b13c068bba8a4 - size: 234243 -datasets: - - alias: test_dataset_01 - temporary_files: - - some_unnamed_file - read1_files: - - test_sample_01_R1 - - test_sample_02_R1 - read2_files: - - test_sample_01_R2 - - test_sample_02_R2 diff --git a/tests/fixtures/transformations/merge_slots/multiple/original_model.yaml b/tests/fixtures/transformations/merge_slots/multiple/original_model.yaml deleted file mode 100644 index 4c761af0..00000000 --- a/tests/fixtures/transformations/merge_slots/multiple/original_model.yaml +++ /dev/null @@ -1,187 +0,0 @@ -id: https://w3id.org/Minimal-Model -name: Minimal-Model -version: 0.9.0 -prefixes: - linkml: https://w3id.org/linkml/ -imports: - - linkml:types - -default_range: string - -classes: - File: - description: >- - A file is an object that contains information generated from a process, either an - Experiment or an Analysis. - slots: - - alias - - format - - size - - checksum - slot_usage: - alias: - required: true - identifier: true - format: - required: true - checksum: - required: true - size: - required: true - - NamedFile: - is_a: File - description: >- - A file with a name. - slots: - - filename - slot_usage: - filename: - required: true - - Dataset: - description: >- - A Dataset is a collection of Files. - slots: - - alias - - read1_files - - read2_files - - temporary_files - slot_usage: - alias: - required: true - identifier: true - read1_files: - required: true - multivalued: true - inlined: false - read2_files: - required: true - multivalued: true - inlined: false - temporary_files: - required: true - multivalued: true - inlined: false - - Submission: - tree_root: true - description: >- - A grouping entity that represents information about one or more entities. - A submission can be considered as a set of inter-related (and inter-connected) - entities that represent a data submission to GHGA. - slots: - - files - - named_files - - datasets - slot_usage: - files: - required: true - multivalued: true - inlined: true - inlined_as_list: true - named_files: - required: true - multivalued: true - inlined: true - inlined_as_list: true - datasets: - required: true - multivalued: true - inlined: true - inlined_as_list: true - -slots: - alias: - description: The alias for an entity. - - description: - description: Description of an entity. - - files: - description: >- - The file associated with an entity. - range: File - - named_files: - description: >- - The named file associated with an entity. - range: NamedFile - - read1_files: - description: >- - Files for read 1 of a sequencing experiment. - range: NamedFile - - read2_files: - description: >- - Files for read 2 of a sequencing experiment. - range: NamedFile - - temporary_files: - description: >- - Temporary files associated with an entity. - range: File - - datasets: - description: >- - The dataset associated with an entity. - range: Dataset - - filename: - description: >- - The given filename. - - format: - description: >- - The format of the file: BAM, SAM, CRAM, BAI, etc. - range: file format enum - - size: - description: The size of a file in bytes. - range: integer - - checksum: - description: >- - A computed value which depends on the contents of a block of data and which is transmitted or - stored along with the data in order to detect corruption of the data. - The receiving system recomputes the checksum based upon the received data and compares this - value with the one sent with the data. If the two values are the same, the receiver has some confidence - that the data was received correctly. - -enums: - file format enum: - description: >- - Enum to capture file types. - permissible_values: - bam: - description: BAM File - complete_genomics: - description: Complete Genomics File - cram: - description: CRAM File - fasta: - description: Fasta File - fastq: - description: FastQ File - pacbio_hdf5: - description: PacBio HDF5 File - sff: - description: >- - Standard flowgram format used to encode results - of pyrosequencing from the 454 Life Sciences platform. - srf: - description: >- - SRF is a generic format for DNA sequence data. - vcf: - description: >- - VCF file for storing gene sequence variations. - txt: - description: >- - Text file. - pxf: - description: >- - Phenopacket file. - other: - description: >- - Other format. diff --git a/tests/fixtures/transformations/merge_slots/multiple/transformed_metadata.yaml b/tests/fixtures/transformations/merge_slots/multiple/transformed_metadata.yaml deleted file mode 100644 index 540d9cce..00000000 --- a/tests/fixtures/transformations/merge_slots/multiple/transformed_metadata.yaml +++ /dev/null @@ -1,47 +0,0 @@ -files: - - alias: some_unnamed_file - format: txt - checksum: 1c8aed294d5dec3330a175f6b655725fa668bfe41311e74f7ca9d85c91371b4e - size: 123412 -named_files: - - alias: test_sample_01_R1 - filename: test_sample_01_R1.fastq - format: fastq - checksum: 1c8aed294d5dec3740a175f6b655725fa668bfe41311e74f7ca9d85c91371b4e - size: 299943 - - alias: test_sample_01_R2 - filename: test_sample_01_R2.fastq - format: fastq - checksum: de44d5e9d2103cd5f9de899a5c231430f5d05c66ecf17a2bb8daf1660a41994a - size: 234243 - - alias: test_sample_02_R1 - filename: test_sample_02_R1.fastq - format: fastq - checksum: 774a6e39ee77a74d841b13f0050dfcf97a6f260751bfc2c5282e35692e4ee6b1 - size: 92345234 - - alias: test_sample_02_R2 - filename: test_sample_02_R2.fastq - format: fastq - checksum: 7e793b40583daca28a594d45bdc9218c04353581d5bbbecab88b13c068bba8a4 - size: 234243 -datasets: - - alias: test_dataset_01 - temporary_files: - - some_unnamed_file - read1_files: - - test_sample_01_R1 - - test_sample_02_R1 - read2_files: - - test_sample_01_R2 - - test_sample_02_R2 - read_files: - - test_sample_01_R1 - - test_sample_02_R1 - - test_sample_01_R2 - - test_sample_02_R2 - all_files: - - test_sample_01_R1 - - test_sample_02_R1 - - test_sample_01_R2 - - test_sample_02_R2 - - some_unnamed_file diff --git a/tests/fixtures/transformations/merge_slots/multiple/transformed_model.yaml b/tests/fixtures/transformations/merge_slots/multiple/transformed_model.yaml deleted file mode 100644 index 0e959fed..00000000 --- a/tests/fixtures/transformations/merge_slots/multiple/transformed_model.yaml +++ /dev/null @@ -1,223 +0,0 @@ -id: https://w3id.org/Minimal-Model -name: Minimal-Model -version: 0.9.0 -prefixes: - linkml: https://w3id.org/linkml/ -imports: - - linkml:types - -default_range: string - -classes: - File: - description: >- - A file is an object that contains information generated from a process, either an - Experiment or an Analysis. - slots: - - alias - - format - - size - - checksum - slot_usage: - alias: - required: true - identifier: true - format: - required: true - checksum: - required: true - size: - required: true - - NamedFile: - is_a: File - description: >- - A file with a name. - slots: - - filename - slot_usage: - filename: - required: true - - Dataset: - description: >- - A Dataset is a collection of Files. - slots: - - alias - - read1_files - - read2_files - - temporary_files - - read_files - - all_files - slot_usage: - alias: - required: true - identifier: true - read1_files: - required: true - multivalued: true - inlined: false - read2_files: - required: true - multivalued: true - inlined: false - temporary_files: - required: true - multivalued: true - inlined: false - read_files: - description: >- - First and second read files. - range: NamedFile - required: true - multivalued: true - inlined: false - all_files: - description: >- - All files associated with a dataset. - required: true - multivalued: true - inlined: false - any_of: - - range: NamedFile - - range: File - - Submission: - tree_root: true - description: >- - A grouping entity that represents information about one or more entities. - A submission can be considered as a set of inter-related (and inter-connected) - entities that represent a data submission to GHGA. - slots: - - files - - named_files - - datasets - slot_usage: - files: - required: true - multivalued: true - inlined: true - inlined_as_list: true - named_files: - required: true - multivalued: true - inlined: true - inlined_as_list: true - datasets: - required: true - multivalued: true - inlined: true - inlined_as_list: true - -slots: - alias: - description: The alias for an entity. - - description: - description: Description of an entity. - - files: - description: >- - The file associated with an entity. - range: File - - named_files: - description: >- - The named file associated with an entity. - range: NamedFile - - read1_files: - description: >- - Files for read 1 of a sequencing experiment. - range: NamedFile - - read2_files: - description: >- - Files for read 2 of a sequencing experiment. - range: NamedFile - - temporary_files: - description: >- - Temporary files associated with an entity. - range: File - - datasets: - description: >- - The dataset associated with an entity. - range: Dataset - - filename: - description: >- - The given filename. - - format: - description: >- - The format of the file: BAM, SAM, CRAM, BAI, etc. - range: file format enum - - size: - description: The size of a file in bytes. - range: integer - - checksum: - description: >- - A computed value which depends on the contents of a block of data and which is transmitted or - stored along with the data in order to detect corruption of the data. - The receiving system recomputes the checksum based upon the received data and compares this - value with the one sent with the data. If the two values are the same, the receiver has some confidence - that the data was received correctly. - - read_files: - description: >- - First and second read files. - range: NamedFile - required: true - multivalued: true - inlined: false - - all_files: - description: >- - All files associated with a dataset. - required: true - multivalued: true - inlined: false - any_of: - - range: NamedFile - - range: File - -enums: - file format enum: - description: >- - Enum to capture file types. - permissible_values: - bam: - description: BAM File - complete_genomics: - description: Complete Genomics File - cram: - description: CRAM File - fasta: - description: Fasta File - fastq: - description: FastQ File - pacbio_hdf5: - description: PacBio HDF5 File - sff: - description: >- - Standard flowgram format used to encode results - of pyrosequencing from the 454 Life Sciences platform. - srf: - description: >- - SRF is a generic format for DNA sequence data. - vcf: - description: >- - VCF file for storing gene sequence variations. - txt: - description: >- - Text file. - pxf: - description: >- - Phenopacket file. - other: - description: >- - Other format. diff --git a/tests/fixtures/transformations/normalize/default/config.yaml b/tests/fixtures/transformations/normalize/default/config.yaml deleted file mode 100644 index 0967ef42..00000000 --- a/tests/fixtures/transformations/normalize/default/config.yaml +++ /dev/null @@ -1 +0,0 @@ -{} diff --git a/tests/fixtures/transformations/normalize/default/original_metadata.yaml b/tests/fixtures/transformations/normalize/default/original_metadata.yaml deleted file mode 100644 index db3ad967..00000000 --- a/tests/fixtures/transformations/normalize/default/original_metadata.yaml +++ /dev/null @@ -1,642 +0,0 @@ -{ - "analyses": - [ - { - "alias": "ANALYSIS_1", - "title": "Analysis 1 ", - "description": "Description of analysis 1", - "type": "Sequence Variation", - "reference_genome": "GRCh37", - "reference_chromosome": "chr6", - }, - ], - "analysis_process_output_files": - [ - { - "alias": "OUTPUT_1", - "analysis_process": "ANALYSIS_PROCESS_1", - "name": "SAMPLE_1_SPECIMEN_1_FILE_1.vcf.gz", - "format": "VCF", - "size": 92161, - "checksum": "653c42e051644f1d03fd8a73c55649b9bea6d36b354348e9dc33ce355af41289", - "checksum_type": "SHA256", - "dataset": "DS_1", - }, - { - "alias": "OUTPUT_2", - "analysis_process": "ANALYSIS_PROCESS_2", - "name": "SAMPLE_1_SPECIMEN_1_FILE_2.vcf.gz", - "format": "VCF", - "size": 71681, - "checksum": "5864b0ef8f3c25cd7da50fcb3b88f8884831ebbc87435dc3f84371437162d170", - "checksum_type": "SHA256", - "dataset": "DS_1", - }, - { - "alias": "OUTPUT_3", - "analysis_process": "ANALYSIS_PROCESS_3", - "name": "SAMPLE_1_SPECIMEN_1_FILE_3.vcf.gz", - "format": "VCF", - "size": 122881, - "checksum": "68568c92cc9f836f9a2a1b701327ac089b7ff3c52228c4038b9de54edca876e0", - "checksum_type": "SHA256", - "dataset": "DS_1", - }, - { - "alias": "OUTPUT_4", - "analysis_process": "ANALYSIS_PROCESS_4", - "name": "SAMPLE_2_SPECIMEN_1_FILE_4.vcf.gz", - "format": "VCF", - "size": 45057, - "checksum": "ef2b7a9496ac3e8d90a6b2317a0ddc05fdc8e2cb616a14431544b0920cca2d41", - "checksum_type": "SHA256", - "dataset": "DS_2", - }, - { - "alias": "OUTPUT_5", - "analysis_process": "ANALYSIS_PROCESS_5", - "name": "SAMPLE_2_SPECIMEN_1_FILE_5.vcf.gz", - "format": "VCF", - "size": 65537, - "checksum": "b446a4e9cd57e2446e113b603be5e761672e88c0b3d87de5f12ca6bfa73cf110", - "checksum_type": "SHA256", - "dataset": "DS_2", - }, - { - "alias": "OUTPUT_6", - "analysis_process": "ANALYSIS_PROCESS_6", - "name": "SAMPLE_2_SPECIMEN_1_FILE_6.vcf.gz", - "format": "VCF", - "size": 45057, - "checksum": "c3f451348e9c5cb0acbacd2df071392d151f007554bc2c08de667a1349eb0a86", - "checksum_type": "SHA256", - "dataset": "DS_2", - }, - { - "alias": "OUTPUT_7", - "analysis_process": "ANALYSIS_PROCESS_7", - "name": "SAMPLE_2_SPECIMEN_1_FILE_7.vcf.gz", - "format": "VCF", - "size": 61441, - "checksum": "b17e8d803fb62757d41ccbe26ed719e6aa95119ffd55fac64dc100ea985d42f0", - "checksum_type": "SHA256", - "dataset": "DS_2", - }, - { - "alias": "OUTPUT_8", - "analysis_process": "ANALYSIS_PROCESS_8", - "name": "SAMPLE_2_SPECIMEN_1_FILE_8.vcf.gz", - "format": "VCF", - "size": 92161, - "checksum": "2912879766f9c619fdebb8f10ba4dad02a367ee30f52c1a55bb8cad4999efa53", - "checksum_type": "SHA256", - "dataset": "DS_2", - }, - { - "alias": "OUTPUT_9", - "analysis_process": "ANALYSIS_PROCESS_9", - "name": "SAMPLE_2_SPECIMEN_1_FILE_9.vcf.gz", - "format": "VCF", - "size": 43009, - "checksum": "2935b5685772b2c2778dfc6facde4186d59e516cc6ad55e92f96b3e63d44b68a", - "checksum_type": "SHA256", - "dataset": "DS_2", - }, - ], - "analysis_processes": - [ - { - "alias": "ANALYSIS_PROCESS_1", - "analysis": "ANALYSIS_1", - "sequencing_process_input_files": ["SEQ_FILE_1"], - }, - { - "alias": "ANALYSIS_PROCESS_2", - "analysis": "ANALYSIS_1", - "sequencing_process_input_files": ["SEQ_FILE_2"], - }, - { - "alias": "ANALYSIS_PROCESS_3", - "analysis": "ANALYSIS_1", - "sequencing_process_input_files": ["SEQ_FILE_3"], - }, - { - "alias": "ANALYSIS_PROCESS_4", - "analysis": "ANALYSIS_1", - "sequencing_process_input_files": ["SEQ_FILE_4"], - }, - { - "alias": "ANALYSIS_PROCESS_5", - "analysis": "ANALYSIS_1", - "sequencing_process_input_files": ["SEQ_FILE_5"], - }, - { - "alias": "ANALYSIS_PROCESS_6", - "analysis": "ANALYSIS_1", - "sequencing_process_input_files": ["SEQ_FILE_6"], - }, - { - "alias": "ANALYSIS_PROCESS_7", - "analysis": "ANALYSIS_1", - "sequencing_process_input_files": ["SEQ_FILE_7"], - }, - { - "alias": "ANALYSIS_PROCESS_8", - "analysis": "ANALYSIS_1", - "sequencing_process_input_files": ["SEQ_FILE_8"], - }, - { - "alias": "ANALYSIS_PROCESS_9", - "analysis": "ANALYSIS_1", - "sequencing_process_input_files": ["SEQ_FILE_9"], - }, - ], - "biospecimens": - [ - { - "alias": "BIOSPECIMEN_1", - "name": "Biospecmen material", - "type": "Blood", - "description": "Blood biospecimen", - "isolation": "Arterial blood specimen", - "storage": "refrigitation at 4 degree", - "individual": "INDV_1", - "age_at_sampling": "66_TO_70", - "tissue": "blood", - }, - { - "alias": "BIOSPECIMEN_2", - "name": "Another biospecimen material", - "type": "Subcutaneous fat", - "description": "Subcutaneous fat biospecimen", - "isolation": "Biopsy of soft tissue ", - "storage": "refrigitation at 4 degree", - "individual": "INDV_1", - "age_at_sampling": "66_TO_70", - "tissue": "subcutaneous adipose tissue", - }, - ], - "conditions": - [ - { - "alias": "COND_1", - "title": "Condition A", - "description": "Condition A is a condition", - "name": "Condition A", - "disease_or_healthy": "DISEASE", - "case_control_status": "TRUE_CASE_STATUS", - "mutant_or_wildtype": "MUTANT", - "study": "STUDY_A", - }, - { - "alias": "COND_2", - "title": "Condition B", - "description": "Condition B is another condition", - "name": "Condition B", - "disease_or_healthy": "HEALTHY", - "case_control_status": "TRUE_CONTROL_STATUS", - "mutant_or_wildtype": "WILDTYPE", - "study": "STUDY_B", - }, - ], - "data_access_committees": - [ - { - "alias": "DAC_1", - "email": "dac_institute_a@dac.dac", - "institute": "institute_a", - }, - ], - "data_access_policies": - [ - { - "alias": "DAP_1", - "name": "DAP 1", - "description": "A Data Access Policy 1", - "policy_text": "This is a very permissible DAP", - "policy_url": "http://some/policy", - "data_access_committee": "DAC_1", - "data_use_permission": "disease specific research", - "data_use_modifiers": ["clinical care use"], - }, - { - "alias": "DAP_2", - "name": "DAP 2", - "description": "A Data Access Policy 2", - "policy_text": "This is a very strict DAP", - "policy_url": "http://some/other/policy", - "data_access_committee": "DAC_1", - "data_use_permission": "no restriction", - "data_use_modifiers": ["user specific restriction"], - }, - ], - "datasets": - [ - { - "alias": "DS_1", - "title": "The A dataset", - "description": "An interesting dataset A", - "types": ["A Type", "Another Type"], - "data_access_policy": "DAP_1", - }, - { - "alias": "DS_2", - "title": "The B dataset", - "description": "An interesting dataset B", - "types": ["And another Type"], - "data_access_policy": "DAP_1", - }, - ], - "individuals": - [ - { - "alias": "INDV_1", - "sex": "MALE_SEX_FOR_CLINICAL_USE", - "karyotype": "OTHER", - "geographical_region": "Italy", - "ancestries": ["European"], - "phenotypic_features": ["Leukemia"], - }, - { - "alias": "MOTHER_1", - "sex": "FEMALE_SEX_FOR_CLINICAL_USE", - "karyotype": "OTHER", - "geographical_region": "Italy", - "ancestries": ["European"], - "phenotypic_features": ["Leukemia"], - }, - { - "alias": "FATHER_1", - "sex": "MALE_SEX_FOR_CLINICAL_USE", - "karyotype": "OTHER", - "geographical_region": "Italy", - "ancestries": ["European"], - "phenotypic_features": ["Leukemia"], - }, - ], - "library_preparation_protocols": - [ - { - "alias": "LIB_PREP_1", - "description": "Sequence library is prepared like this. ", - "library_name": "Library A", - "library_layout": "PE", - "library_type": "WGS", - "library_selection": "UNSPECIFIED", - "library_preparation": "PCR-amplification", - "library_preparation_kit_retail_name": "ILLUMINA_TRU_SEQ_DNA", - "library_preparation_kit_manufacturer": "Illumina", - "primer": "GENE_SPECIFIC", - "end_bias": "FULL_LENGTH", - "target_regions": ["chr6:123456-12345678"], - }, - ], - "publications": - [ - { - "alias": "PUB_1", - "title": "A paper of a study", - "abstract": "This study aims finding findings.", - "author": "John Doe", - "year": 1965, - "journal": "Journal of Studies", - "doi": "10.1234/abcd.5678", - "study": "STUDY_A", - "xref": ["abcd_pubmed_link.pubmed"], - }, - { - "alias": "PUB_2", - "title": "Another paper of the same study", - "abstract": "This study aims finding more findings.", - "author": "Joe Dohn", - "year": 1967, - "journal": "Journal of Studies", - "doi": "10.9876/efgh.5432", - "study": "STUDY_B", - "xref": ["efgh_pubmed_link.pubmed"], - }, - ], - "sample_files": [], - "samples": - [ - { - "alias": "SAMPLE_1", - "name": "GHGAS_blood_sample1", - "type": "CF_DNA", - "description": "Arterial blood sample 1", - "isolation": "Blood collection tube holder/needle", - "storage": "frozen at -20", - "biospecimen": "BIOSPECIMEN_1", - "condition": "COND_1", - }, - { - "alias": "SAMPLE_2", - "name": "GHGAS_tissue_sample1", - "type": "CF_DNA", - "description": "white adipose tissue sample 1", - "isolation": "Core needle biopsy", - "storage": "frozen at -80", - "biospecimen": "BIOSPECIMEN_2", - "condition": "COND_2", - }, - ], - "sequencing_experiments": - [ - { - "alias": "SEQ_EXP_1", - "title": "GHGAE_SEQ_EXP_1", - "description": "Experiment is done like this. ", - "type": "Experiement type A", - "sequencing_protocol": "SEQ_PRO_1", - "library_preparation_protocol": "LIB_PREP_1", - }, - ], - "sequencing_process_files": - [ - { - "alias": "SEQ_FILE_1", - "sequencing_process": "SEQ_PROCESS_1", - "name": "SAMPLE_1_SPECIMEN_1_FILE_1.fastq.gz", - "format": "FASTQ", - "size": 90113, - "checksum": "995254cf212686d88ea73cbaf49489c8dc2784dc31cb586452e0aa835498ab98", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "DS_1", - }, - { - "alias": "SEQ_FILE_2", - "sequencing_process": "SEQ_PROCESS_2", - "name": "SAMPLE_1_SPECIMEN_1_FILE_2.fastq.gz", - "format": "FASTQ", - "size": 104449, - "checksum": "b8de1729ef9b8a424749ce85815c9eeb166cb7f5f5eca4b02f04e2f9277501c6", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "DS_1", - }, - { - "alias": "SEQ_FILE_3", - "sequencing_process": "SEQ_PROCESS_3", - "name": "SAMPLE_1_SPECIMEN_1_FILE_3.fastq.gz", - "format": "FASTQ", - "size": 51201, - "checksum": "6b7f4b8fc774de4359c985835733c169f1731a109db7893dd35acd4afea3c5b4", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "DS_1", - }, - { - "alias": "SEQ_FILE_4", - "sequencing_process": "SEQ_PROCESS_4", - "name": "SAMPLE_2_SPECIMEN_1_FILE_4.fastq.gz", - "format": "FASTQ", - "size": 96257, - "checksum": "9aea8c99cc065836f1f2765a8590971c5b5d2a29c4c6569c475089c5b57d1180", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "DS_2", - }, - { - "alias": "SEQ_FILE_5", - "sequencing_process": "SEQ_PROCESS_5", - "name": "SAMPLE_2_SPECIMEN_1_FILE_5.fastq.gz", - "format": "FASTQ", - "size": 63489, - "checksum": "a13dfc276fe322cb1b7490441097662e60443fb8787b011eaec4621916842847", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "DS_2", - }, - { - "alias": "SEQ_FILE_6", - "sequencing_process": "SEQ_PROCESS_6", - "name": "SAMPLE_2_SPECIMEN_1_FILE_6.fastq.gz", - "format": "FASTQ", - "size": 104449, - "checksum": "e5c186653c619507cec6aa6b7affedeb5ec29a5e23d2814d2710076fa1f5000b", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "DS_2", - }, - { - "alias": "SEQ_FILE_7", - "sequencing_process": "SEQ_PROCESS_7", - "name": "SAMPLE_2_SPECIMEN_1_FILE_7.fastq.gz", - "format": "FASTQ", - "size": 53249, - "checksum": "f37c331e32ba71cfabbd88b9115eeb6a000c1085cc596dcee9db3c7552229049", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "DS_2", - }, - { - "alias": "SEQ_FILE_8", - "sequencing_process": "SEQ_PROCESS_8", - "name": "SAMPLE_2_SPECIMEN_1_FILE_8.fastq.gz", - "format": "FASTQ", - "size": 96257, - "checksum": "6c11379d7ce5625bdef86d2b72c0399280388f2532c26c3934f4ee88e7c25e4d", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "DS_2", - }, - { - "alias": "SEQ_FILE_9", - "sequencing_process": "SEQ_PROCESS_9", - "name": "SAMPLE_2_SPECIMEN_1_FILE_9.fastq.gz", - "format": "FASTQ", - "size": 49153, - "checksum": "23ba42aeef99bffae8f1f4409c64d1a2e19c49dc74c2c6ad6c7b98c5bf04dd1f", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "DS_2", - }, - ], - "sequencing_processes": - [ - { - "alias": "SEQ_PROCESS_1", - "title": "Sequencing Process A", - "description": "Sequencing process A is conducted like this.", - "name": "Sequencing process A", - "sequencing_run_id": "RUN_123", - "sequencing_lane_id": "LANE_123", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "SEQ_EXP_1", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_1", - "sample": "SAMPLE_1", - }, - { - "alias": "SEQ_PROCESS_2", - "title": "Sequencing Process B", - "description": "Sequencing process B is conducted like this.", - "name": "Sequencing process B", - "sequencing_run_id": "RUN_124", - "sequencing_lane_id": "LANE_124", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "SEQ_EXP_1", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_2", - "sample": "SAMPLE_1", - }, - { - "alias": "SEQ_PROCESS_3", - "title": "Sequencing Process C", - "description": "Sequencing process C is conducted like this.", - "name": "Sequencing process C", - "sequencing_run_id": "RUN_125", - "sequencing_lane_id": "LANE_125", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "SEQ_EXP_1", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_3", - "sample": "SAMPLE_1", - }, - { - "alias": "SEQ_PROCESS_4", - "title": "Sequencing Process D", - "description": "Sequencing process D is conducted like this.", - "name": "Sequencing process D", - "sequencing_run_id": "RUN_126", - "sequencing_lane_id": "LANE_126", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "SEQ_EXP_1", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_4", - "sample": "SAMPLE_2", - }, - { - "alias": "SEQ_PROCESS_5", - "title": "Sequencing Process E", - "description": "Sequencing process E is conducted like this.", - "name": "Sequencing process E", - "sequencing_run_id": "RUN_127", - "sequencing_lane_id": "LANE_127", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "SEQ_EXP_1", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_5", - "sample": "SAMPLE_2", - }, - { - "alias": "SEQ_PROCESS_6", - "title": "Sequencing Process F", - "description": "Sequencing process F is conducted like this.", - "name": "Sequencing process F", - "sequencing_run_id": "RUN_128", - "sequencing_lane_id": "LANE_128", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "SEQ_EXP_1", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_6", - "sample": "SAMPLE_2", - }, - { - "alias": "SEQ_PROCESS_7", - "title": "Sequencing Process G", - "description": "Sequencing process G is conducted like this.", - "name": "Sequencing process G", - "sequencing_run_id": "RUN_129", - "sequencing_lane_id": "LANE_129", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "SEQ_EXP_1", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_7", - "sample": "SAMPLE_2", - }, - { - "alias": "SEQ_PROCESS_8", - "title": "Sequencing Process H", - "description": "Sequencing process H is conducted like this.", - "name": "Sequencing process H", - "sequencing_run_id": "RUN_130", - "sequencing_lane_id": "LANE_130", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "SEQ_EXP_1", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_8", - "sample": "SAMPLE_2", - }, - { - "alias": "SEQ_PROCESS_9", - "title": "Sequencing Process I", - "description": "Sequencing process I is conducted like this.", - "name": "Sequencing process I", - "sequencing_run_id": "RUN_131", - "sequencing_lane_id": "LANE_131", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "SEQ_EXP_1", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_9", - "sample": "SAMPLE_2", - }, - ], - "sequencing_protocols": - [ - { - "alias": "SEQ_PRO_1", - "description": "Sequence protocol 1 is conducted like this. ", - "type": "DNA-seq", - "instrument_model": "ILLUMINA_NOVA_SEQ_6000", - "sequencing_center": "Center A", - "sequencing_read_length": "long", - "target_coverage": "x50", - "flow_cell_id": "ID_Cell 1_Lane_1", - "flow_cell_type": "ILLUMINA_NOVA_SEQ_S4", - "umi_barcode_read": "INDEX1", - "umi_barcode_offset": "16", - "umi_barcode_size": "10", - "cell_barcode_read": "INDEX1", - "cell_barcode_offset": "20", - "cell_barcode_size": "18", - "sample_barcode_read": "INDEX1", - }, - ], - "studies": - [ - { - "alias": "STUDY_A", - "title": "The A Study", - "description": "A study that is the A study", - "type": "SYNTHETIC_GENOMICS", - "affiliations": ["Some Institute", "Some other Institute"], - "attributes": - [ - { "key": "budget", "value": "3.5M" }, - { "key": "funding", "value": "EU" }, - ], - }, - { - "alias": "STUDY_B", - "title": "The B Study", - "description": "A study that is the B study", - "type": "WHOLE_GENOME_SEQUENCING", - "affiliations": ["Some Institute"], - }, - ], - "study_files": - [ - { - "alias": "STUDY_FILE_1", - "study": "STUDY_A", - "name": "STUDY_1_SPECIMEN_1_FILE_1.fastq.gz", - "format": "FASTQ", - "size": 106497, - "checksum": "7a586609dd8c7d6f53cbc2e82e1165de2c7aab6769c6dde9882b45048b0fdaa9", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "DS_1", - }, - ], - "trios": - [ - { - "alias": "TRIO_1", - "mother": "MOTHER_1", - "father": "FATHER_1", - "child": "INDV_1", - }, - ], -} diff --git a/tests/fixtures/transformations/normalize/default/original_model.yaml b/tests/fixtures/transformations/normalize/default/original_model.yaml deleted file mode 100644 index fa6d614a..00000000 --- a/tests/fixtures/transformations/normalize/default/original_model.yaml +++ /dev/null @@ -1,2052 +0,0 @@ -id: https://w3id.org/GHGA-Submission-Metadata-Schema -name: GHGA-Submission-Metadata-Schema -description: >- - The submission centric metadata schema for the German Human Genome-Phenome Archive (GHGA). -version: 1.1.0 -imports: - - linkml:types - -prefixes: - COB: http://purl.obolibrary.org/obo/COB_ - EFO: http://www.ebi.ac.uk/efo/EFO_ - GHGA: https://w3id.org/GHGA/ - HANCESTRO: http://purl.obolibrary.org/obo/HANCESTRO_ - SIO: http://semanticscience.org/resource/SIO_ - biolink: https://w3id.org/biolink/vocab/ - linkml: https://w3id.org/linkml/ - GSSO: http://purl.obolibrary.org/obo/gsso/releases/2.0.5/gsso.owl - DUO: http://purl.obolibrary.org/obo/duo/releases/2021-02-23/duo.owl - NCIT: http://purl.obolibrary.org/obo/ncit/releases/2022-08-19/ncit.owl - -default_prefix: GHGA -default_range: string - -default_curi_maps: - - obo_context - - idot_context - - semweb_context - -classes: - Attribute: - description: >- - A key/value pair that further characterizes an entity. - slots: - - key - - key_type - - value - - value_type - exact_mappings: - - SIO:000614 - slot_usage: - key: - description: >- - The key for an attribute. - required: true - key_type: - description: >- - A semantic type that characterizes the attribute key. Usually this is a - term from an ontology. - For example, 'MAXO:0000616' indicates that the attribute is a measurement - of oxygen saturation in the blood. - required: false - value: - description: >- - The value for an attribute. Usually this is a numerical value (without the units). - required: true - value_type: - description: >- - The value_type that characterizes the attribute value. Usually this is a - term from an ontology that describes how to interpret the value. - For example, 'SIO:001413' indicates that the value is to be interpreted as - a percentage. - required: false - - AliasMixin: - mixin: true - description: Mixin for entities that can be assigned an alias at the time of metadata submission. - slots: - - alias - slot_usage: - alias: - required: true - - IdentifiedByAliasMixin: - mixin: true - abstract: true - is_a: AliasMixin - slot_usage: - alias: - identifier: true - - AttributeMixin: - mixin: true - description: Mixin for entities that can have one or more attributes. - slots: - - attributes - slot_usage: - attributes: - required: false - inlined: true - inlined_as_list: true - - Study: - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - description: >- - Studies are experimental investigations of a particular phenomenon. It involves a - detailed examination and analysis of a subject to learn more about the phenomenon - being studied. - slots: - - title - - description - - type - - affiliations - slot_usage: - title: - description: >- - A comprehensive title for the study. - required: true - description: - description: >- - A detailed description (abstract) that describes the goals of this Study. - required: true - type: - description: >- - The type of Study. For example, 'Cancer Genomics', 'Epigenetics', 'Exome Sequencing'. - range: StudyTypeEnum - required: true - affiliations: - required: true - attributes: - description: >- - Custom key/value pairs that further characterizes the Study. - (e.g.: approaches - single-cell,_bulk_etc) - - SequencingExperiment: - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - description: >- - An sequencing experiment is an investigation that consists of a coordinated set of - actions and observations designed to generate data with the goal of verifying, - falsifying, or establishing the validity of a hypothesis. - exact_mappings: - - SIO:000994 - slots: - - title - - description - - type - - sequencing_protocol - - library_preparation_protocol - slot_usage: - title: - description: >- - Name for the experiment (eg: GHGAE_PBMC_RNAseq). - description: - description: >- - A detailed description of the Experiment. - required: true - type: - description: >- - The type of sequencing experiment. - required: false - sequencing_protocol: - required: true - inlined: false - library_preparation_protocol: - required: true - inlined: false - - Condition: - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - description: >- - An condition that is linked to comparable samples. - slots: - - title - - description - - name - - disease_or_healthy - - case_control_status - - mutant_or_wildtype - - study - slot_usage: - name: - required: true - description: - required: true - disease_or_healthy: - required: true - case_control_status: - required: true - mutant_or_wildtype: - required: true - study: - required: true - inlined: false - - LibraryPreparationProtocol: - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - description: >- - Information about the library_preparation of an sequencing experiment. - slots: - - description - - library_name - - library_layout - - library_type - - library_selection - - library_preparation - - library_preparation_kit_retail_name - - library_preparation_kit_manufacturer - - primer - - end_bias - - target_regions - - rnaseq_strandedness - slot_usage: - description: - description: >- - Description about how a sequencing library was prepared (eg: Library construction method). - required: true - library_name: - required: true - library_layout: - required: true - library_type: - required: true - library_selection: - required: true - library_preparation: - required: true - library_preparation_kit_retail_name: - required: false - recommended: true - library_preparation_kit_manufacturer: - required: false - recommended: true - primer: - required: false - recommended: true - end_bias: - required: false - recommended: true - attributes: - description: >- - One or more attributes that further characterizes this library_preparation Protocol. - target_regions: - required: false - rnaseq_strandedness: - required: false - recommended: true - - SequencingProtocol: - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - description: >- - Information about the sequencing of a sample. - slots: - - description - - type - - instrument_model - - sequencing_center - - sequencing_read_length - - target_coverage - - flow_cell_id - - flow_cell_type - - umi_barcode_read - - umi_barcode_offset - - umi_barcode_size - - cell_barcode_read - - cell_barcode_offset - - cell_barcode_size - - sample_barcode_read - slot_usage: - instrument_model: - required: true - type: - description: >- - Type of the sequencing Protocol (eg: mRNA-seq, Whole exome long-read sequencing etc). - description: - description: >- - Description about the sequencing Protocol (eg: mRNA-seq, Whole exome long-read sequencing etc). - required: true - attributes: - description: >- - One or more attributes that further characterizes this Sequencing Protocol. - sequencing_center: - required: false - recommended: true - sequencing_read_length: - required: false - target_coverage: - required: false - flow_cell_id: - required: false - recommended: true - flow_cell_type: - required: false - recommended: true - umi_barcode_read: - required: false - recommended: true - umi_barcode_size: - required: false - recommended: true - umi_barcode_offset: - required: false - recommended: true - cell_barcode_read: - required: false - recommended: true - cell_barcode_size: - required: false - recommended: true - cell_barcode_offset: - required: false - recommended: true - sample_barcode_read: - required: false - recommended: true - - SequencingProcess: - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - description: >- - A sequencing process linking a sample to sequencing output. - slots: - - title - - description - - name - - sequencing_run_id - - sequencing_lane_id - - sequencing_machine_id - - sequencing_experiment - - index_sequence - - lane_number - - sample - slot_usage: - name: - required: true - description: - required: true - sequencing_run_id: - description: >- - Identifier of the sequencing run. Used for batch correction. - required: false - sequencing_lane_id: - description: >- - Identifier of the sequencing lane. Used for batch correction. - required: false - sequencing_machine_id: - description: >- - Identifier of the sequencing machine. Used for batch correction. - required: false - sequencing_experiment: - required: true - inlined: false - lane_number: - required: false - recommended: true - index_sequence: - required: false - recommended: true - - sample: - required: true - inlined: false - - Biospecimen: - mixins: - - IdentifiedByAliasMixin - description: >- - A Biospecimen is any natural material taken from a biological entity (usually a human) for testing, - diagnostics, treatment, or research purposes. The Biospecimen is linked to the Individual from which - the Biospecimen is derived. - exact_mappings: - - OBI:0100051 - slots: - - name - - type - - description - - isolation - - storage - - individual - - age_at_sampling - - vital_status_at_sampling - - tissue - slot_usage: - name: - required: false - recommended: true - type: - description: >- - The type of Biospecimen. - required: false - recommended: true - description: - required: false - isolation: - required: false - recommended: true - storage: - required: false - recommended: true - individual: - description: >- - The Individual entity from which this Biospecimen was derived. - inlined: false - required: true - age_at_sampling: - required: true - vital_status_at_sampling: - required: false - recommended: true - tissue: - required: true - - Sample: - mixins: - - IdentifiedByAliasMixin - - AttributeMixin - description: >- - A sample is a limited quantity of something to be used for testing, analysis, - inspection, investigation, demonstration, or trial use. A sample is prepared from - a Biospecimen (isolate or tissue). - exact_mappings: - - SIO:001050 - - biolink:MaterialSample - slots: - - name - - type - - description - - isolation - - storage - - biospecimen - - condition - - xref - slot_usage: - name: - description: >- - Name of the sample (eg:GHGAS_Blood_Sample1 or GHGAS_PBMC_RNAseq_S1). - required: true - type: - description: >- - The type of sample. - range: SampleTypeEnum - in_subset: - - ontology - required: false - description: - description: >- - Short textual description of the sample - (How the sample was collected, sample source, - Protocol followed for processing the sample etc). - required: true - storage: - required: false - recommended: true - isolation: - required: false - recommended: true - xref: - description: >- - One or more cross-references for this Sample. For example, this Sample - may have an EBI BioSamples accession or an EGA Sample accession. - required: false - biospecimen: - description: >- - The Biospecimen from which this Sample was prepared from. - required: false - inlined: false - condition: - required: true - inlined: false - - Individual: - mixins: - - IdentifiedByAliasMixin - aliases: ["subject", "patient"] - description: >- - An Individual is a Person who is participating in a Study. - slots: - - sex - - karyotype - - geographical_region - - ancestries - - phenotypic_features - slot_usage: - sex: - required: true - karyotype: - required: false - geographical_region: - required: false - ancestries: - required: false - phenotypic_features: - description: >- - The Phenotypic Feature entity that is associated with this Biospecimen at the time of retrieval - from the organism. Typically, a concept from Human Phenotype Ontology. - For example, 'HP:0100244' indicates that the Individual - from_which_the_Biospecimen - was extracted from - exhibits_'Fibrosarcoma'_as_one_of_its_phenotype. - required: false - - Trio: - mixins: - - IdentifiedByAliasMixin - description: >- - A trio is defined by three individuals representing an individual and their parents. - slots: - - mother - - father - - child - slot_usage: - mother: - required: true - inlined: false - father: - required: true - inlined: false - child: - required: true - inlined: false - - File: - mixins: - - IdentifiedByAliasMixin - description: >- - A file is an object that contains information generated from a process, either an - Experiment or an Analysis. - slots: - - name - - format - - size - - checksum - - forward_or_reverse - - checksum_type - - dataset - slot_usage: - name: - description: >- - The given filename. - required: true - format: - required: true - checksum: - required: true - checksum_type: - required: true - size: - required: true - dataset: - inlined: false - required: true - forward_or_reverse: - required: false - recommended: true - - StudyFile: - is_a: File - description: >- - A StudyFile is a File that is associated with a Study. - slots: - - study - slot_usage: - study: - inlined: false - required: true - - SampleFile: - is_a: File - description: >- - A SampleFile is a File that is associated with a Sample. - slots: - - sample - slot_usage: - sample: - inlined: false - required: true - - SequencingProcessFile: - is_a: File - description: >- - A SequencingProcessFile is a File that is associated with a SequencingProcess. - slots: - - sequencing_process - slot_usage: - sequencing_process: - inlined: false - required: true - - AnalysisProcessOutputFile: - is_a: File - description: >- - A AnalysisProcessOutputFile is a File that is associated as an output file with an AnalysisProcess. - slots: - - analysis_process - slot_usage: - analysis_process: - inlined: false - required: true - - Analysis: - mixins: - - IdentifiedByAliasMixin - aliases: ["data analysis"] - description: >- - An Analysis is a data transformation that transforms input data to output data. - The workflow used to achieve this transformation and the individual steps are also captured. - slots: - - title - - description - - type - - reference_genome - - reference_chromosome - slot_usage: - type: - description: >- - The type of the Analysis. Either Reference Alignment (BAM) or Sequence Variation (VCF) - required: false - description: - description: >- - Describing how an Analysis was carried out. (e.g.: computational tools, settings, etc.). - required: false - reference_genome: - required: true - reference_chromosome: - required: true - - AnalysisProcess: - mixins: - - IdentifiedByAliasMixin - slots: - - analysis - - study_input_files - - sample_input_files - - sequencing_process_input_files - slot_usage: - analysis: - inlined: false - description: >- - The Analysis the AnalysisProcess was part of - required: true - study_input_files: - inlined: false - required: false - sample_input_files: - inlined: false - required: false - sequencing_process_input_files: - inlined: false - required: false - - Dataset: - mixins: - - IdentifiedByAliasMixin - description: >- - A Dataset is a collection of Files that is prepared for distribution - and is tied to a Data Access Policy. - exact_mappings: - - SIO:000089 - slots: - - title - - description - - types - - data_access_policy - slot_usage: - title: - description: >- - A title for the submitted Dataset. - required: true - description: - required: true - types: - description: >- - The type of a dataset. - required: true - data_access_policy: - description: >- - The Data Access Policy that applies to this Dataset. - required: true - inlined: false - - DataAccessPolicy: - mixins: - - IdentifiedByAliasMixin - description: >- - A Data Access Policy specifies under which circumstances, legal or otherwise, - a user can have access to one or more Datasets belonging to one or more Studies. - slots: - - name - - description - - policy_text - - policy_url - - data_access_committee - - data_use_permission - - data_use_modifiers - slot_usage: - name: - description: >- - A name for the Data Access Policy. - required: true - description: - description: >- - A short description for the Data Access Policy. - required: true - policy_text: - description: >- - The terms of data use and policy verbiage should be captured here. - required: true - policy_url: - description: >- - URL for the policy, if available. This is useful if the terms of the policy is - made available online at a resolvable URL. - required: false - recommended: true - data_access_committee: - description: >- - The Data Access Committee linked to this policy. - required: true - inlined: false - data_use_permission: - description: >- - Data use permission associated with a policy. Typically one or more terms from DUO - and should be descendants of 'DUO:0000001 data use permission'. - required: true - data_use_modifiers: - description: >- - Modifier for Data use permission associated with a policy. - Should be descendants of 'DUO:0000017 data use modifier' - required: false - recommended: true - - DataAccessCommittee: - mixins: - - IdentifiedByAliasMixin - description: >- - A group of members that are delegated to grant access to one or more datasets - after ensuring the minimum criteria for data sharing has been met, and request - for data use does not raise ethical and/or legal concerns. - slots: - - email - - institute - slot_usage: - email: - required: true - institute: - required: true - - Publication: - mixins: - - IdentifiedByAliasMixin - description: >- - The Publication entity represents a publication. While a publication can be any - article that is published, the minimum expectation is that the publication has a - valid DOI. - slots: - - title - - abstract - - author - - year - - journal - - doi - - study - - xref - slot_usage: - title: - description: >- - The title for the Publication. - required: false - abstract: - description: >- - The study abstract that describes the goals. Can also hold abstract from a publication related to this study. - required: false - author: - required: false - year: - required: false - journal: - required: false - xref: - description: >- - One or more cross-references for this Publication. - required: false - doi: - description: DOI identifier of the Publication. - required: true - study: - description: >- - The Study entity associated with this Publication. - required: true - inlined: false - - Submission: - tree_root: true - description: >- - A grouping entity that represents information about one or more entities. - A submission can be considered as a set of inter-related (and inter-connected) - entities that represent a data submission to GHGA. - slots: - - analyses - - analysis_process_output_files - - analysis_processes - - biospecimens - - conditions - - data_access_committees - - data_access_policies - - datasets - - individuals - - library_preparation_protocols - - publications - - sample_files - - samples - - sequencing_experiments - - sequencing_process_files - - sequencing_processes - - sequencing_protocols - - studies - - study_files - - trios - slot_usage: - studies: - description: >- - Information about a Study entities associated with this submission. - required: true - inlined: true - inlined_as_list: true - samples: - description: >- - Information about one or more Sample entities associated with this submission. - required: true - inlined: true - inlined_as_list: true - biospecimens: - description: >- - Information about one or more Biospecimen entities associated with this submission. - required: true - inlined: true - inlined_as_list: true - conditions: - description: The Conditions associated with this Submission. - required: true - inlined: true - inlined_as_list: true - individuals: - description: >- - Information about one or more Individual entities associated with this submission. - required: true - inlined: true - inlined_as_list: true - sequencing_experiments: - description: >- - Information about one or more Experiment entities associated with this submission. - required: true - inlined: true - inlined_as_list: true - sequencing_protocols: - description: >- - One or more sequencing protocol entities associated with this Submission. - required: true - inlined: true - inlined_as_list: true - library_preparation_protocols: - description: >- - One or more library preparation protocol entities associated with this Submission. - required: true - inlined: true - inlined_as_list: true - analyses: - description: >- - Information about one or more Analysis entities associated with this submission. - required: true - inlined: true - inlined_as_list: true - study_files: - description: The StudyFiles that are part of this submission. - required: true - inlined: true - inlined_as_list: true - sample_files: - description: The SampleFiles that are part of this submission. - required: true - inlined: true - inlined_as_list: true - sequencing_process_files: - description: The SequencingProcessFiles that are part of this submission. - required: true - inlined: true - inlined_as_list: true - sequencing_processes: - description: The SequencingProcesses that are part of this submission. - required: true - inlined: true - inlined_as_list: true - analysis_processes: - description: The AnalysisProcesses that are part of this submission. - required: true - inlined: true - inlined_as_list: true - analysis_process_output_files: - description: The AnalysisProcessOutputFiles that are part of this submission. - required: true - inlined: true - inlined_as_list: true - datasets: - description: >- - One or more Dataset that are part of this submission. - required: true - inlined: true - inlined_as_list: true - data_access_policies: - description: >- - The Data Access Policy that applies to Dataset in this submission. - required: true - inlined: true - inlined_as_list: true - data_access_committees: - description: >- - The Data Access Committee that applies to Dataset in this submission. - required: true - inlined: true - inlined_as_list: true - publications: - description: >- - One or more Publication entities associated with this Submission. - required: true - inlined: true - inlined_as_list: true - trios: - description: The Trios associated with this Submission. - required: true - inlined: true - inlined_as_list: true - -slots: - alias: - description: The alias for an entity at the time of submission. - - description: - description: Description of an entity. - exact_mappings: - - SIO:000185 - - key: - description: The key of an attribute. - - key_type: - description: The semantic type for the key of an attribute. - - value: - description: The value of an attribute - - value_type: - description: The semantic type for the value of an attribute. - - attributes: - description: Key/value pairs corresponding to an entity. - range: Attribute - multivalued: true - - type: - description: >- - The type of an entity. - Note: Not to be confused with rdf:type - - types: - description: >- - The types of an entity. - Note: Not to be confused with rdf:type - multivalued: True - - name: - description: The name for an entity. - - title: - description: The title that describes an entity. - - xref: - description: Database cross references for an entity. - multivalued: true - - study: - description: The study associated with an entity. - range: Study - - studies: - description: The study associated with an entity. - range: Study - multivalued: True - - publications: - description: The Publication associated with an entity. - range: Publication - multivalued: True - - sample: - description: The sample associated with an entity. - range: Sample - - samples: - description: The samples associated with an entity. - range: Sample - multivalued: true - - sequencing_experiment: - description: The sequencing experiment associated with an entity. - range: SequencingExperiment - - sequencing_experiments: - description: The sequencing experiments associated with an entity. - range: SequencingExperiment - multivalued: true - - sequencing_process: - description: The SequencingProcess associated with an entity. - range: SequencingProcess - - analyses: - description: The analyses associated with an entity. - range: Analysis - multivalued: true - - analysis: - description: The Analysis associated with an entity - range: Analysis - - analysis_process: - description: The AnalysisProcess associated with an entity. - range: AnalysisProcess - - analysis_processes: - description: The AnalysisProcess associated with an entity. - range: AnalysisProcess - multivalued: true - - dataset: - description: The Dataset associated with an entity. - range: Dataset - - datasets: - description: The Datasets associated with an entity. - multivalued: true - range: Dataset - - biospecimen: - description: The biospecimen associated with an entity. - range: Biospecimen - - biospecimens: - description: The biospecimens associated with an entity. - range: Biospecimen - multivalued: true - - individual: - description: The subject/individual associated with an entity. - range: Individual - - individuals: - description: The subjects/individuals associated with an entity. - range: Individual - multivalued: true - - phenotypic_features: - description: Phenotypic feature concepts that the entity is associated with. - in_subset: - - ontology - # range: PhenotypicFeaturesEnum - multivalued: true - - mother: - description: The mother of an individual. - range: Individual - - father: - description: The father of an individual. - range: Individual - - child: - description: The child of two individuals. - range: Individual - - ancestries: - description: >- - A person's descent or lineage, from a person or from a population. - in_subset: - - ontology - # range: AncestryEnum - multivalued: true - - study_files: - description: >- - The StudyFiles associated with an entity. - range: StudyFile - multivalued: True - - sample_files: - description: >- - The SampleFiles associated with an entity. - range: SampleFile - multivalued: True - - sequencing_process_files: - description: >- - The SequencingProcessFiles associated with an entity. - range: SequencingProcessFile - multivalued: True - - sequencing_processes: - description: The SequencingProcesses associated with an entity. - range: SequencingProcess - multivalued: true - - study_input_files: - description: >- - The StudyFile associated used as an input for an entity. - range: StudyFile - multivalued: True - - sample_input_files: - description: >- - The SampleFile associated used as an input for an entity. - range: SampleFile - multivalued: True - - sequencing_process_input_files: - description: >- - The SequencingProcessFile associated used as an input for an entity. - range: SequencingProcessFile - multivalued: True - - analysis_process_output_files: - description: >- - The AnalysisProcessOutputFiles associated with an entity. - range: AnalysisProcessOutputFile - multivalued: True - - data_access_policy: - description: Data Access Policy associated with an entity. - range: DataAccessPolicy - - data_access_policies: - description: Data Access Policies associated with an entity. - range: DataAccessPolicy - multivalued: True - - data_access_committee: - description: Data Access Committee associated with an entity. - range: DataAccessCommittee - - data_access_committees: - description: Data Access Committees associated with an entity. - range: DataAccessCommittee - multivalued: True - - data_use_permission: - description: >- - Data use permission associated with an entity. Typically one or more terms from DUO. - Should be descendants of 'DUO:0000001 data use permission'. - range: DataUsePermissionEnum - - data_use_modifiers: - description: >- - Modifier for Data use permission associated with an entity. - Should be descendants of 'DUO:0000017 data use modifier' - range: DataUseModifierEnum - multivalued: true - - sequencing_protocol: - range: SequencingProtocol - description: The sequencing protocol associated with an entity. - - condition: - range: Condition - description: The condition associated with an entity. - - library_preparation_protocol: - range: LibraryPreparationProtocol - description: The library_preparation Protocol associated with an entity. - - sequencing_protocols: - range: SequencingProtocol - multivalued: True - description: The sequencing protocol associated with an entity. - - conditions: - range: Condition - multivalued: True - description: The Conditions associated with an entity. - - library_preparation_protocols: - range: LibraryPreparationProtocol - multivalued: True - description: The library_preparation Protocol associated with an entity. - - institute: - description: The institute a person is affiliated with. - - email: - description: >- - Email of a person. - - affiliations: - description: >- - The Institution(s) associated with an entity. - multivalued: True - - library_name: - description: >- - A short name identifying the library to potential users. - The same name may refer to multiple versions of the same continually updated library. - - library_layout: - description: >- - Describe whether the library was sequenced in single-end (forward or reverse) or paired-end mode - range: LibraryPreparationLibraryLayoutEnum - exact_mappings: - - NCIT:C175894 - - library_type: - description: >- - Describe the level of omics analysis (eg: Metagenome, transcriptome, etc) - range: LibraryPreparationLibraryTypeEnum - - library_selection: - description: >- - Whether any method was used to select for or against, enrich, or screen the material being sequenced. - library_selection method (e.g. random, PCA, cDNA, etc ) - range: LibraryPreparationLibrarySelectionEnum - - library_preparation: - description: >- - The general method for sequencing library_preparation (e.g. KAPA PCR-free). - - library_preparation_kit_retail_name: - description: >- - A unique identifier for the kit used to construct a genomic library. - This may include the vendor name, kit name and kit version - (e.g. Agilent sure select Human Exome V8, Twist RefSeq Exome, etc.) - range: LibraryPreparationKitRetailNameEnum - - library_preparation_kit_manufacturer: - description: >- - Manufacturer of library_preparation kit - - primer: - description: >- - The type of primer used for reverse transcription, e.g. 'oligo-dT' or 'random' primer. - This allows users to identify content of the cDNA library input e.g. enriched for mRNA. - exact_mappings: - - EFO:0010192 - range: PrimerEnum - - end_bias: - description: >- - The end of the cDNA molecule that is preferentially sequenced, - e.g. 3/5 prime tag or end, or the full-length transcript. - exact_mappings: - - EFO:0010187 - range: EndBiasEnum - - target_regions: - multivalued: True - description: >- - Subset of genes or specific regions of the genome, which are most likely to be involved in the phenotype under study. - - rnaseq_strandedness: - description: >- - The strandedness of the library, whether reads come from both strands of the cDNA - or only from the first (antisense) or the second (sense) strand. - range: LibraryPreparationRNASeqStrandednessEnum - - sequencing_center: - description: >- - Center where sample was sequenced. - - instrument_model: - description: >- - The name and model of the technology platform used to perform sequencing. - range: InstrumentModelEnum - - sequencing_read_length: - description: >- - Length of sequencing reads (eg: Long or short or actual number of the read length etc). - The number of nucleotides successfully ordered from each side of a nucleic acid fragment - obtained after the completion of a sequencing process - - index_sequence: - description: >- - A unique nucleotide sequence that is added to a sample during library_preparation to serve as a unique identifier for the sample. - exact_mappings: - - NCIT:C165443 - - sequencing_run_id: - description: >- - The identifier of a sequencing run. - - sequencing_lane_id: - description: >- - The identifier of a sequencing lane. - - sequencing_machine_id: - description: >- - The identifier of a sequencing machine. - - forward_or_reverse: - description: >- - Denotes whether a submitted FASTQ file contains forward (R1) or reverse (R2) reads for paired-end sequencing. - The number that identifies each read direction in a paired-end nucleotide sequencing reaction. - range: ForwardOrReverseEnum - - lane_number: - description: >- - The numerical identifier for the lane or machine unit where a sample was located during nucleotide sequencing. - - target_coverage: - description: >- - Mean coverage for whole genome sequencing, or mean target coverage for whole exome and targeted sequencing. - The number of times a particular locus (site, nucleotide, amplicon, region) was sequenced. - - flow_cell_id: - description: >- - Flow Cell ID (eg: Experiment ID_Cell 1_Lane_1). - The barcode assigned to a flow cell used in nucleotide sequencing. - - flow_cell_type: - description: >- - Type of flow cell used (e.g. S4, S2 for NovaSeq; PromethION, Flongle for Nanopore). - Aparatus in the fluidic subsystem where the sheath and sample meet. - Can be one of several types; jet-in-air, quartz cuvette, or a hybrid of the two. - The sample flows through the center of a fluid column of sheath fluid in the flow cell. - range: FlowCellTypeEnum - - umi_barcode_read: - description: >- - The type of read that contains the UMI barcode (Eg: index1/index2/read1/read2). - range: IndexReadEnum - - umi_barcode_offset: - description: >- - The offset in sequence of the UMI identifying barcode. (E.g. '16'). - - umi_barcode_size: - description: >- - The size of the UMI identifying barcode (Eg. '10'). - - cell_barcode_read: - description: >- - The type of read that contains the cell barcode (eg: index1/index2/read1/read2). - range: IndexReadEnum - - cell_barcode_offset: - description: >- - The offset in sequence of the cell identifying barcode. (Eg. '0'). - - cell_barcode_size: - description: >- - The size of the cell identifying barcode (E.g. '16'). - - sample_barcode_read: - description: >- - The type of read that contains the sample barcode (eg: index1/index2/read1/read2). - range: SampleBarcodeReadEnum - - isolation: - description: >- - Method or device employed for collecting/isolating a biospecimen or a sample. - in_subset: - - ontology - # range: IsolationEnum - - storage: - description: >- - Methods by which a biospecimen or a sample is stored - (e.g. frozen in liquid nitrogen). - - disease_or_healthy: - description: >- - Whether a condition corresponds to a disease or a healthy state. - range: DiseaseOrHealthyEnum - - case_control_status: - description: >- - Whether a condition corresponds to a treatment or a control. - range: CaseControlStatusEnum - - mutant_or_wildtype: - description: >- - Whether a condition corresponds to a mutant or a wildtype. - range: MutantOrWildtypeEnum - - vital_status_at_sampling: - description: >- - Vital Status of an Individual at the point of sampling (eg:'Alive', 'Deceased'). - range: VitalStatusEnum - - geographical_region: - description: >- - The geographical region where the Individual is located. - Any demarcated area of the Earth; may be determined by both natural and human boundaries. - in_subset: - - ontology - # range: GeographicalRegionEnum - - vital_status: - description: >- - The state or condition of being living or deceased; - also includes the case where the vital status is unknown. - range: VitalStatusEnum - deprecated: redundant, solved by use of vital_status_at_sampling at the Biospecimen level - - sex: - description: >- - The assemblage of physical properties or qualities by which male is distinguished from female; - the physical difference between male and female; the distinguishing peculiarity of male or female. - range: IndividualSexEnum - - karyotype: - description: >- - The karyotype of an individual if defined. - range: KaryotypeEnum - - age_at_sampling: - description: Age of an individual. - range: AgeRangeEnum - - format: - description: >- - The format of the file: BAM, SAM, CRAM, BAI, etc. - range: FileFormatEnum - - size: - description: The size of a file in bytes. - range: integer - - checksum: - description: >- - A computed value which depends on the contents of a block of data and which is transmitted or - stored along with the data in order to detect corruption of the data. - The receiving system recomputes the checksum based upon the received data and compares this - value with the one sent with the data. If the two values are the same, the receiver has some confidence - that the data was received correctly. - exact_mappings: - - NCIT:C43522 - - checksum_type: - description: >- - The type of algorithm used to generate the checksum of a file. - - reference_chromosome: - description: >- - The reference chromosome used for this Analysis. - - reference_genome: - description: >- - A published genetic sequence that is used as a reference sequence against which other sequences are compared. - Reference genome(s) or annotation(s) used for prior analyses (eg: GRCh38.p13). - - policy_text: - description: The complete text for the Data Access Policy. - - policy_url: - description: Alternative to pasting the Data Access Policy text. - - abstract: - description: >- - The study abstract that describes the goals. - Can also hold abstract from a publication related to this study - - author: - description: >- - The individual who is responsible for the content of a document version. - - year: - description: >- - Year in which the paper was published. - range: integer - - journal: - description: >- - Name of the journal. - - doi: - description: >- - DOI identifier of a publication. - - tissue: - in_subset: - - ontology - # range: TissueEnum - - trios: - description: The Trios associated with an entity. - range: Trio - multivalued: true - -subsets: - ontology: - description: >- - This slot is part of an ontology which is currently not otherwise encoded - in the schema. - -enums: - DataUseModifierEnum: - description: Permitted values for data use modifier - reachable_from: - source_ontology: http://purl.obolibrary.org/obo/duo/releases/2021-02-23/duo.owl - source_nodes: - - DUO:0000017 - include_self: false - permissible_values: - clinical care use: - meaning: DUO:0000043 - return to database or resource: - meaning: DUO:0000029 - institution specific restriction: - meaning: DUO:0000028 - project specific restriction: - meaning: DUO:0000027 - user specific restriction: - meaning: DUO:0000026 - time limit on use: - meaning: DUO:0000025 - publication moratorium: - meaning: DUO:0000024 - geographical restriction: - meaning: DUO:0000022 - ethics approval required: - meaning: DUO:0000021 - collaboration required: - meaning: DUO:0000020 - publication required: - meaning: DUO:0000019 - not for profit, non commercial use only: - meaning: DUO:0000018 - non-commercial use only: - meaning: DUO:0000046 - not for profit organisation use only: - meaning: DUO:0000045 - genetic studies only: - meaning: DUO:0000016 - no general methods research: - meaning: DUO:0000015 - research specific restrictions: - meaning: DUO:0000012 - population origins or ancestry research prohibited: - meaning: DUO:00000044 - - DataUsePermissionEnum: - description: Permitted values for data use permission - reachable_from: - source_ontology: http://purl.obolibrary.org/obo/duo/releases/2021-02-23/duo.owl - source_nodes: - - DUO:0000001 - include_self: false - permissible_values: - general research use: - meaning: DUO:0000042 - health or medical or biomedical research: - meaning: DUO:0000006 - disease specific research: - meaning: DUO:0000007 - no restriction: - meaning: DUO:0000004 - population origins or ancestry research only: - meaning: DUO:0000011 - - AncestryEnum: - description: Permitted values for ancestry - reachable_from: - source_ontology: http://purl.obolibrary.org/obo/hancestro/releases/2022-05-12/hancestro.owl - source_nodes: - - HANCESTRO:0004 - include_self: false - - GeographicalRegionEnum: - description: Permitted values for geographical region - reachable_from: - source_ontology: http://purl.obolibrary.org/obo/hancestro/releases/2022-05-12/hancestro.owl - source_nodes: - - HANCESTRO:0002 - include_self: false - - KaryotypeEnum: - description: Permitted values for karyotype - permissible_values: - 46_XY: - 46_XX: - OTHER: - - PhenotypicFeaturesEnum: - description: An enum describing permissible phenotype descriptors - include: - - reachable_from: - source_ontology: http://www.ebi.ac.uk/efo/releases/v3.54.0/efo.owl - include_self: false - - reachable_from: - source_ontology: https://www.orphadata.com/data/ontologies/ordo/last_version/ORDO_en_4.2.owl - include_self: false - - reachable_from: - source_ontology: http://snomed.info/sct/900000000000207008/version/20200131 - source_nodes: - - SNOMED:404684003 - include_self: false - - reachable_from: - source_ontology: http://purl.obolibrary.org/obo/mondo/releases/2022-12-01/mondo.owl - include_self: false - - reachable_from: - source_ontology: http://purl.obolibrary.org/obo/hp/releases/2023-04-05/hp-international.owl - include_self: false - - IsolationEnum: - description: Describes how biomaterial was isolated. - reachable_from: - source_ontology: http://snomed.info/sct/900000000000207008/version/20200131 - source_nodes: - - SNOMED:118292001 - include_self: false - - SampleTypeEnum: - description: >- - The type of a sample - permissible_values: - CF_DNA: - DEPLETED_RNA: - DS_DNA_CH_IP: - FFPE_DNA: - FFPE_TOTAL_RNA: - GENOMIC_DNA: - PCR_PRODUCTS: - POLY_A_RNA: - SINGLE_CELL_DNA: - SINGLE_CELL_RNA: - SMALL_RNA: - TOTAL_RNA: - - TissueEnum: - description: >- - A tissue as described in the BRENDA ontology. - reachable_from: - source_ontology: http://purl.obolibrary.org/obo/bto/releases/2021-10-26/bto.owl - - IndividualSexEnum: - description: >- - The sex of an Individual as as defined in a specific medical and clinical context. - reachable_from: - source_ontology: http://purl.obolibrary.org/obo/gsso/releases/2.0.5/gsso.owl - source_nodes: - - GSSO:009428 - include_self: false - permissible_values: - FEMALE_SEX_FOR_CLINICAL_USE: - meaning: GSSO:011317 - IMAGING_SEX: - meaning: GSSO:009318 - MALE_SEX_FOR_CLINICAL_USE: - meaning: GSSO:011318 - SPECIFIED_SEX_FOR_CLINICAL_USE: - meaning: GSSO:011319 - UNKNOWN_SEX_FOR_CLINICAL_USE: - meaning: GSSO:011320 - - VitalStatusEnum: - description: >- - Enum to capture the vital status of an individual. - permissible_values: - ALIVE: - description: >- - Showing characteristics of life; displaying signs of life. - DECEASED: - description: >- - The cessation of life. - UNKNOWN: - description: >- - Vital status is unknown. - - StudyTypeEnum: - description: >- - Enum to capture the type of a study. - permissible_values: - CANCER_GENOMICS: - EPIGENETICS: - EXOME_SEQUENCING: - FORENSIC_GENETICS: - PALEO_GENOMICS: - GENE_REGULATION_STUDY: - METAGENOMICS: - OTHER: - POOLED_CLONE_SEQUENCING: - POPULATION_GENOMICS: - RNASEQ: - RESEQUENCING: - SYNTHETIC_GENOMICS: - TRANSCRIPTOME_ANALYSIS: - WHOLE_GENOME_SEQUENCING: - GWAS: - - FileFormatEnum: - description: >- - Enum to capture file types. - permissible_values: - AGP: - BAI: - BAM: - BCF: - BED: - CRAI: - CRAM: - CSV: - FASTA: - FASTQ: - GFF: - HDF5: - INFO: - JSON: - MD: - OTHER: - PED: - SAM: - SFF: - SRF: - TAB: - TABIX: - TSV: - TXT: - VCF: - WIG: - - LibraryPreparationLibraryLayoutEnum: - description: >- - Single-end vs paired-end library - permissible_values: - SE: - PE: - - LibraryPreparationLibraryTypeEnum: - description: >- - The type of the library - permissible_values: - WGS: - WXS: - WCS: - TOTAL_RNA: - M_RNA: - MI_RNA: - NC_RNA: - ATAC: - METHYLATION: - CHROMOSOME_CONFORMATION_CAPTURE: - - LibraryPreparationLibrarySelectionEnum: - description: >- - Permitted vocabulary for library selections - permissible_values: - 5_METHYLCYTIDINE_ANTIBODY_METHOD: - CAGE_METHOD: - C_DNA_METHOD: - CF_H_METHOD: - CF_M_METHOD: - CF_S_METHOD: - CF_T_METHOD: - CH_IP_SEQ_METHOD: - D_NASE_METHOD: - HMPR_METHOD: - HYBRID_SELECTION_METHOD: - INVERSE_R_RNA: - MBD2_PROTEIN_METHYL_CP_G_BINDING_DOMAIN_METHOD: - MDA: - MF_METHOD: - M_NASE_METHOD: - MSLL_METHOD: - OLIGO_D_T: - PADLOCK_PROBES_CAPTURE_METHOD: - PCR_METHOD: - POLY_A: - RACE_METHOD: - RANDOM_PCR_METHOD: - RANDOM_METHOD: - RT_PCR_METHOD: - REDUCED_REPRESENTATION_METHOD: - REPEAT_FRACTIONATION: - RESTRICTION_DIGEST_METHOD: - SIZE_FRACTIONATION_METHOD: - UNSPECIFIED: - OTHER: - - LibraryPreparationKitRetailNameEnum: - description: >- - Permitted values for library preparation kit retail name - permissible_values: - 10X_GENOMICS_CHROMIUM_SINGLE_CELL_3_V2: - 10X_GENOMICS_CHROMIUM_SINGLE_CELL_3_V3: - ACCEL_NGS_2_S_PLUS_DNA_LIBRARY_KIT: - ACCEL_NGS_METHYL_SEQ_DNA: - AGILENT_STRAND_SPECIFIC_RNA: - AGILENT_SURE_SELECT_CUSTOM_ENRICHMENT_KIT: - AGILENT_SURE_SELECT_V3: - AGILENT_SURE_SELECT_V4: - AGILENT_SURE_SELECT_V4_UT_RS: - AGILENT_SURE_SELECT_V5: - AGILENT_SURE_SELECT_V5_UT_RS: - AGILENT_SURE_SELECT_V6: - AGILENT_SURE_SELECT_V6_ONE: - AGILENT_SURE_SELECT_V6_UT_RS: - AGILENT_SURE_SELECT_V7: - AGILENT_SURE_SELECT_WGS: - AGILENT_SURE_SELECT_XT_HS_HUMAN_ALL_EXON_V7: - AGILENT_SURE_SELECT_XT_MOUSE_ALL_EXON: - AGILENT_XT_HS_SURE_SELECT_CLINICAL_RESEARCH_EXOME_V2: - AVENIO_CT_DNA_KIT: - IDT_X_GEN_EXOME_RESEARCH_PANEL: - ILLUMINA_DNA_PCR_FREE: - ILLUMINA_NEXTERA_DNA_FLEX: - ILLUMINA_NEXTERA_EXOME_ENRICHMENT_KIT: - ILLUMINA_STRANDED_M_RNA_PREP_LIGATION: - ILLUMINA_TRU_SEQ_CH_IP_SAMPLE_PREPARATION_KIT: - ILLUMINA_TRU_SEQ_CUSTOM_AMPLICON: - ILLUMINA_TRU_SEQ_DNA: - ILLUMINA_TRU_SEQ_NANO_DNA: - ILLUMINA_TRU_SEQ_NANO_DNA_HT: - ILLUMINA_TRU_SEQ_NANO_DNA_LT: - ILLUMINA_TRU_SEQ_NANO_FFPE_DNA: - ILLUMINA_TRU_SEQ_PCR_FREE: - ILLUMINA_TRU_SEQ_PCR_FREE_DNA: - ILLUMINA_TRUSEQ_PCR_FREE_METHYL: - ILLUMINA_TRU_SEQ_RNA: - ILLUMINA_TRU_SEQ_SMALL_RNA_KIT: - ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_KIT: - ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_LIBRARY_PREP_GLOBIN: - ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_RIBO_MINUS_GOLD: - ILLUMINA_VAHTS_TOTAL_RNA: - INFORM_ONCO_PANEL_HG19: - ION_AMPLI_SEQ_EXOME_KIT: - KAPA_HIFI_HOT_START_READYMIX: - KAPA_HYPER_PREP_KIT: - KAPA_HYPER_PLUS_KIT: - KAPA_M_RNA_HYPER_PREP_KIT: - MAGNETIC_METHYLATED_DNA_IMMUNOPRECIPITATION_DIAGNODE: - NEB_NEXT_CH_IP_SEQ_LIBRARY_PREP_KIT_FOR_ILLUMINA: - NEB_NEXT_GLOBIN_R_RNA_DEPLETION_KIT_HUMAN_MOUSE_RAT_WITH_BEADS: - NEB_NEXT_POLY_A_M_RNA_MAGNETIC_ISOLATION_MODULE: - NEB_NEXT_RNA_ULTRA_II_STRANDED: - NEBNEXT_ULTRA_DIRECTIONAL_RNA: - NEB_NEXT_ULTRA_DNA: - NEB_NEXT_ULTRA_DNA_LIBRARY_PREP_KIT_FOR_ILLUMINA: - NEB_NEXT_ULTRA_II_DIRECTIONAL_RNA: - NEB_NEXT_ULTRA_II_DNA_LIBRARY_PREP_KIT_FOR_ILLUMINA: - NEXTERA_XT_DNA: - OLIGO_D_T: - PICO_METHYL_SEQ: - SMART_SEQ_V4_ULTRA_LOW_INPUT_RNA_KIT: - SMAR_TER_STRANDED_TOTAL_RNA_SEQ_KIT: - SMAR_TER_ULTRA_LOW_INPUT_RNA_AND_NEB_NEXT_CH_IP_SEQ: - SMAR_TER_ULTRA_LOW_INPUT_RNA_V4_AND_NEB_NEXT_CH_IP_SEQ: - SMAR_TSEQ2_TAG: - SUPER_SCRIPT_II_RT_BULK: - SURE_CELL_ATAC_SEQ_LIBRARY_PREP_KIT: - SURE_SELECT_EUROFINS_ENRICHMENT_CUSTOM_01: - TAKARA_CLONTECH_SMAR_TER_STRANDED_TOTAL_RNA: - TAKARA_SMAR_TER_PREP_X_DNA_LIBRARY_KIT_ACTIVE_MOTIF_CUSTOM_INDICES_01: - TEMPLATE_SWITCHING_RT_ENZYME_MIX_BULK: - TWIST_HUMAN_CORE_EXOME_PLUS_KIT: - ULTRALOW_METHYL_SEQ_WITH_TRUE_METHYL_OX_BS_MODULE: - - LibraryPreparationRNASeqStrandednessEnum: - description: >- - Permitted values for library preparation RNASeq strandedness - permissible_values: - SENSE: - ANTISENSE: - BOTH: - - PrimerEnum: - description: >- - Permitted values for primer - permissible_values: - OLIGO_D_T: - RANDOM: - GENE_SPECIFIC: - OTHER: - - EndBiasEnum: - description: >- - Permitted values for end bias - permissible_values: - 3_PRIME_END: - 5_PRIME_END: - FULL_LENGTH: - - InstrumentModelEnum: - description: >- - Permitted values for instrument model - permissible_values: - ILLUMINA_HI_SCAN: - ILLUMINA_HI_SEQ_1000: - ILLUMINA_HI_SEQ_1500: - ILLUMINA_HI_SEQ_2000: - ILLUMINA_HI_SEQ_2500: - ILLUMINA_HI_SEQ_3000: - ILLUMINA_HI_SEQ_4000: - ILLUMINA_HI_SEQ_X_FIVE: - ILLUMINA_HI_SEQ_X_TEN: - ILLUMINA_HI_SEQ_X: - ILLUMINA_I_SCAN: - ILLUMINA_I_SEQ_100: - ILLUMINA_MINI_SEQ: - ILLUMINA_MI_SEQ: - ILLUMINA_MI_SEQ_DX: - ILLUMINA_MI_SEQ_DX_RESEARCH_MODE: - ILLUMINA_NEXT_SEQ_500: - ILLUMINA_NEXT_SEQ_550: - ILLUMINA_NEXT_SEQ_550_DX: - ILLUMINA_NEXT_SEQ_550_DX_RESEARCH_MODE: - ILLUMINA_NEXT_SEQ_1000: - ILLUMINA_NEXT_SEQ_2000: - ILLUMINA_NOVA_SEQ_6000: - ILLUMINA_GENOME_ANALYZER: - ILLUMINA_GENOME_ANALYZER_II: - ILLUMINA_GENOME_ANALYZER_IIX: - ILLUMINA_HI_SCAN_SQ: - PAC_BIO_REVIO: - PAC_BIO_ONSO: - PAC_BIO_SEQUEL_IIE: - PAC_BIO_SEQUEL_II: - PAC_BIO_SEQUEL: - PAC_BIO_RS: - PAC_BIO_RS_II: - ONT_MIN_ION: - ONT_GRID_ION: - ONT_PROMETH_ION: - DNBSEQ_G50: - DNBSEQ_T7: - DNBSEQ_G400: - DNBSEQ_G400_FAST: - ULTIMA_UG_100: - OTHER: - - FlowCellTypeEnum: - description: >- - Permitted values for flow cell type - permissible_values: - ILLUMINA_NOVA_SEQ_S2: - ILLUMINA_NOVA_SEQ_S4: - PROMETH_ION: - FLONGLE: - MIN_ION: - GRID_ION: - OTHER: - - IndexReadEnum: - description: >- - Permitted Values to indicate the location of a sequence component in a read or index - permissible_values: - INDEX1: - INDEX2: - READ1: - READ2: - - SampleBarcodeReadEnum: - description: >- - Permitted values for sample barcode read - permissible_values: - INDEX1: - INDEX1_AND_INDEX2: - OTHER: - - DiseaseOrHealthyEnum: - description: >- - Enum to capture whether a condition corresponds to a disease or a healthy state. - permissible_values: - DISEASE: - description: Disease state. - HEALTHY: - description: Healthy state. - NOT_APPLICABLE: - description: The distinction is not applicaple. - - CaseControlStatusEnum: - description: >- - Enum to capture whether a condition corresponds to a case or a control condition. - reachable_from: - source_ontology: http://purl.obolibrary.org/obo/ncit/releases/2022-08-19/ncit.owl - source_nodes: - - NCIT:C99268 - include_self: false - permissible_values: - NEITHER_CASE_OR_CONTROL_STATUS: - meaning: NCIT:C99273 - PROBABLE_CASE_STATUS: - meaning: NCIT:C99271 - PROBABLE_CONTROL_STATUS: - meaning: NCIT:C99272 - TRUE_CASE_STATUS: - meaning: NCIT:C99269 - TRUE_CONTROL_STATUS: - meaning: NCIT:C99270 - UNABLE_TO_ASSESS_CASE_OR_CONTROL_STATUS: - meaning: NCIT:C99274 - - MutantOrWildtypeEnum: - description: >- - Enum to capture whether a condition corresponds to a mutant or a wildtype. - permissible_values: - MUTANT: - description: Mutant state. - WILDTYPE: - description: Wildtype state. - NOT_APPLICABLE: - description: The distinction is not applicaple. - - ForwardOrReverseEnum: - description: >- - Enum to capture whether the reads from paired-end sequencing are forward (R1) or reverse (R2). - permissible_values: - FORWARD: - description: The reads are forward (R1) reads - REVERSE: - description: The reads are reverse (R2) reads - - AgeRangeEnum: - description: >- - Enum to capture the age range that an Indiviudal belongs to. - permissible_values: - 0_TO_5: - description: Age between 0 to 5. - 6_TO_10: - description: Age between 6 to 10. - 11_TO_15: - description: Age between 11 to 15. - 16_TO_20: - description: Age between 16 to 20. - 21_TO_25: - description: Age between 21 to 25. - 26_TO_30: - description: Age between 26 to 30. - 31_TO_35: - description: Age between 31 to 35. - 36_TO_40: - description: Age between 36 to 40. - 41_TO_45: - description: Age between 41 to 45. - 46_TO_50: - description: Age between 46 to 50. - 51_TO_55: - description: Age between 51 to 55. - 56_TO_60: - description: Age between 56 to 60. - 61_TO_65: - description: Age between 61 to 65. - 66_TO_70: - description: Age between 66 to 70. - 71_TO_75: - description: Age between 71 to 75. - 76_TO_80: - description: Age between 76 to 80. - 81_OR_OLDER: - description: Age above 80. - UNKNOWN: - description: Age range unknown. diff --git a/tests/fixtures/transformations/normalize/default/transformed_metadata.yaml b/tests/fixtures/transformations/normalize/default/transformed_metadata.yaml deleted file mode 100644 index db3ad967..00000000 --- a/tests/fixtures/transformations/normalize/default/transformed_metadata.yaml +++ /dev/null @@ -1,642 +0,0 @@ -{ - "analyses": - [ - { - "alias": "ANALYSIS_1", - "title": "Analysis 1 ", - "description": "Description of analysis 1", - "type": "Sequence Variation", - "reference_genome": "GRCh37", - "reference_chromosome": "chr6", - }, - ], - "analysis_process_output_files": - [ - { - "alias": "OUTPUT_1", - "analysis_process": "ANALYSIS_PROCESS_1", - "name": "SAMPLE_1_SPECIMEN_1_FILE_1.vcf.gz", - "format": "VCF", - "size": 92161, - "checksum": "653c42e051644f1d03fd8a73c55649b9bea6d36b354348e9dc33ce355af41289", - "checksum_type": "SHA256", - "dataset": "DS_1", - }, - { - "alias": "OUTPUT_2", - "analysis_process": "ANALYSIS_PROCESS_2", - "name": "SAMPLE_1_SPECIMEN_1_FILE_2.vcf.gz", - "format": "VCF", - "size": 71681, - "checksum": "5864b0ef8f3c25cd7da50fcb3b88f8884831ebbc87435dc3f84371437162d170", - "checksum_type": "SHA256", - "dataset": "DS_1", - }, - { - "alias": "OUTPUT_3", - "analysis_process": "ANALYSIS_PROCESS_3", - "name": "SAMPLE_1_SPECIMEN_1_FILE_3.vcf.gz", - "format": "VCF", - "size": 122881, - "checksum": "68568c92cc9f836f9a2a1b701327ac089b7ff3c52228c4038b9de54edca876e0", - "checksum_type": "SHA256", - "dataset": "DS_1", - }, - { - "alias": "OUTPUT_4", - "analysis_process": "ANALYSIS_PROCESS_4", - "name": "SAMPLE_2_SPECIMEN_1_FILE_4.vcf.gz", - "format": "VCF", - "size": 45057, - "checksum": "ef2b7a9496ac3e8d90a6b2317a0ddc05fdc8e2cb616a14431544b0920cca2d41", - "checksum_type": "SHA256", - "dataset": "DS_2", - }, - { - "alias": "OUTPUT_5", - "analysis_process": "ANALYSIS_PROCESS_5", - "name": "SAMPLE_2_SPECIMEN_1_FILE_5.vcf.gz", - "format": "VCF", - "size": 65537, - "checksum": "b446a4e9cd57e2446e113b603be5e761672e88c0b3d87de5f12ca6bfa73cf110", - "checksum_type": "SHA256", - "dataset": "DS_2", - }, - { - "alias": "OUTPUT_6", - "analysis_process": "ANALYSIS_PROCESS_6", - "name": "SAMPLE_2_SPECIMEN_1_FILE_6.vcf.gz", - "format": "VCF", - "size": 45057, - "checksum": "c3f451348e9c5cb0acbacd2df071392d151f007554bc2c08de667a1349eb0a86", - "checksum_type": "SHA256", - "dataset": "DS_2", - }, - { - "alias": "OUTPUT_7", - "analysis_process": "ANALYSIS_PROCESS_7", - "name": "SAMPLE_2_SPECIMEN_1_FILE_7.vcf.gz", - "format": "VCF", - "size": 61441, - "checksum": "b17e8d803fb62757d41ccbe26ed719e6aa95119ffd55fac64dc100ea985d42f0", - "checksum_type": "SHA256", - "dataset": "DS_2", - }, - { - "alias": "OUTPUT_8", - "analysis_process": "ANALYSIS_PROCESS_8", - "name": "SAMPLE_2_SPECIMEN_1_FILE_8.vcf.gz", - "format": "VCF", - "size": 92161, - "checksum": "2912879766f9c619fdebb8f10ba4dad02a367ee30f52c1a55bb8cad4999efa53", - "checksum_type": "SHA256", - "dataset": "DS_2", - }, - { - "alias": "OUTPUT_9", - "analysis_process": "ANALYSIS_PROCESS_9", - "name": "SAMPLE_2_SPECIMEN_1_FILE_9.vcf.gz", - "format": "VCF", - "size": 43009, - "checksum": "2935b5685772b2c2778dfc6facde4186d59e516cc6ad55e92f96b3e63d44b68a", - "checksum_type": "SHA256", - "dataset": "DS_2", - }, - ], - "analysis_processes": - [ - { - "alias": "ANALYSIS_PROCESS_1", - "analysis": "ANALYSIS_1", - "sequencing_process_input_files": ["SEQ_FILE_1"], - }, - { - "alias": "ANALYSIS_PROCESS_2", - "analysis": "ANALYSIS_1", - "sequencing_process_input_files": ["SEQ_FILE_2"], - }, - { - "alias": "ANALYSIS_PROCESS_3", - "analysis": "ANALYSIS_1", - "sequencing_process_input_files": ["SEQ_FILE_3"], - }, - { - "alias": "ANALYSIS_PROCESS_4", - "analysis": "ANALYSIS_1", - "sequencing_process_input_files": ["SEQ_FILE_4"], - }, - { - "alias": "ANALYSIS_PROCESS_5", - "analysis": "ANALYSIS_1", - "sequencing_process_input_files": ["SEQ_FILE_5"], - }, - { - "alias": "ANALYSIS_PROCESS_6", - "analysis": "ANALYSIS_1", - "sequencing_process_input_files": ["SEQ_FILE_6"], - }, - { - "alias": "ANALYSIS_PROCESS_7", - "analysis": "ANALYSIS_1", - "sequencing_process_input_files": ["SEQ_FILE_7"], - }, - { - "alias": "ANALYSIS_PROCESS_8", - "analysis": "ANALYSIS_1", - "sequencing_process_input_files": ["SEQ_FILE_8"], - }, - { - "alias": "ANALYSIS_PROCESS_9", - "analysis": "ANALYSIS_1", - "sequencing_process_input_files": ["SEQ_FILE_9"], - }, - ], - "biospecimens": - [ - { - "alias": "BIOSPECIMEN_1", - "name": "Biospecmen material", - "type": "Blood", - "description": "Blood biospecimen", - "isolation": "Arterial blood specimen", - "storage": "refrigitation at 4 degree", - "individual": "INDV_1", - "age_at_sampling": "66_TO_70", - "tissue": "blood", - }, - { - "alias": "BIOSPECIMEN_2", - "name": "Another biospecimen material", - "type": "Subcutaneous fat", - "description": "Subcutaneous fat biospecimen", - "isolation": "Biopsy of soft tissue ", - "storage": "refrigitation at 4 degree", - "individual": "INDV_1", - "age_at_sampling": "66_TO_70", - "tissue": "subcutaneous adipose tissue", - }, - ], - "conditions": - [ - { - "alias": "COND_1", - "title": "Condition A", - "description": "Condition A is a condition", - "name": "Condition A", - "disease_or_healthy": "DISEASE", - "case_control_status": "TRUE_CASE_STATUS", - "mutant_or_wildtype": "MUTANT", - "study": "STUDY_A", - }, - { - "alias": "COND_2", - "title": "Condition B", - "description": "Condition B is another condition", - "name": "Condition B", - "disease_or_healthy": "HEALTHY", - "case_control_status": "TRUE_CONTROL_STATUS", - "mutant_or_wildtype": "WILDTYPE", - "study": "STUDY_B", - }, - ], - "data_access_committees": - [ - { - "alias": "DAC_1", - "email": "dac_institute_a@dac.dac", - "institute": "institute_a", - }, - ], - "data_access_policies": - [ - { - "alias": "DAP_1", - "name": "DAP 1", - "description": "A Data Access Policy 1", - "policy_text": "This is a very permissible DAP", - "policy_url": "http://some/policy", - "data_access_committee": "DAC_1", - "data_use_permission": "disease specific research", - "data_use_modifiers": ["clinical care use"], - }, - { - "alias": "DAP_2", - "name": "DAP 2", - "description": "A Data Access Policy 2", - "policy_text": "This is a very strict DAP", - "policy_url": "http://some/other/policy", - "data_access_committee": "DAC_1", - "data_use_permission": "no restriction", - "data_use_modifiers": ["user specific restriction"], - }, - ], - "datasets": - [ - { - "alias": "DS_1", - "title": "The A dataset", - "description": "An interesting dataset A", - "types": ["A Type", "Another Type"], - "data_access_policy": "DAP_1", - }, - { - "alias": "DS_2", - "title": "The B dataset", - "description": "An interesting dataset B", - "types": ["And another Type"], - "data_access_policy": "DAP_1", - }, - ], - "individuals": - [ - { - "alias": "INDV_1", - "sex": "MALE_SEX_FOR_CLINICAL_USE", - "karyotype": "OTHER", - "geographical_region": "Italy", - "ancestries": ["European"], - "phenotypic_features": ["Leukemia"], - }, - { - "alias": "MOTHER_1", - "sex": "FEMALE_SEX_FOR_CLINICAL_USE", - "karyotype": "OTHER", - "geographical_region": "Italy", - "ancestries": ["European"], - "phenotypic_features": ["Leukemia"], - }, - { - "alias": "FATHER_1", - "sex": "MALE_SEX_FOR_CLINICAL_USE", - "karyotype": "OTHER", - "geographical_region": "Italy", - "ancestries": ["European"], - "phenotypic_features": ["Leukemia"], - }, - ], - "library_preparation_protocols": - [ - { - "alias": "LIB_PREP_1", - "description": "Sequence library is prepared like this. ", - "library_name": "Library A", - "library_layout": "PE", - "library_type": "WGS", - "library_selection": "UNSPECIFIED", - "library_preparation": "PCR-amplification", - "library_preparation_kit_retail_name": "ILLUMINA_TRU_SEQ_DNA", - "library_preparation_kit_manufacturer": "Illumina", - "primer": "GENE_SPECIFIC", - "end_bias": "FULL_LENGTH", - "target_regions": ["chr6:123456-12345678"], - }, - ], - "publications": - [ - { - "alias": "PUB_1", - "title": "A paper of a study", - "abstract": "This study aims finding findings.", - "author": "John Doe", - "year": 1965, - "journal": "Journal of Studies", - "doi": "10.1234/abcd.5678", - "study": "STUDY_A", - "xref": ["abcd_pubmed_link.pubmed"], - }, - { - "alias": "PUB_2", - "title": "Another paper of the same study", - "abstract": "This study aims finding more findings.", - "author": "Joe Dohn", - "year": 1967, - "journal": "Journal of Studies", - "doi": "10.9876/efgh.5432", - "study": "STUDY_B", - "xref": ["efgh_pubmed_link.pubmed"], - }, - ], - "sample_files": [], - "samples": - [ - { - "alias": "SAMPLE_1", - "name": "GHGAS_blood_sample1", - "type": "CF_DNA", - "description": "Arterial blood sample 1", - "isolation": "Blood collection tube holder/needle", - "storage": "frozen at -20", - "biospecimen": "BIOSPECIMEN_1", - "condition": "COND_1", - }, - { - "alias": "SAMPLE_2", - "name": "GHGAS_tissue_sample1", - "type": "CF_DNA", - "description": "white adipose tissue sample 1", - "isolation": "Core needle biopsy", - "storage": "frozen at -80", - "biospecimen": "BIOSPECIMEN_2", - "condition": "COND_2", - }, - ], - "sequencing_experiments": - [ - { - "alias": "SEQ_EXP_1", - "title": "GHGAE_SEQ_EXP_1", - "description": "Experiment is done like this. ", - "type": "Experiement type A", - "sequencing_protocol": "SEQ_PRO_1", - "library_preparation_protocol": "LIB_PREP_1", - }, - ], - "sequencing_process_files": - [ - { - "alias": "SEQ_FILE_1", - "sequencing_process": "SEQ_PROCESS_1", - "name": "SAMPLE_1_SPECIMEN_1_FILE_1.fastq.gz", - "format": "FASTQ", - "size": 90113, - "checksum": "995254cf212686d88ea73cbaf49489c8dc2784dc31cb586452e0aa835498ab98", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "DS_1", - }, - { - "alias": "SEQ_FILE_2", - "sequencing_process": "SEQ_PROCESS_2", - "name": "SAMPLE_1_SPECIMEN_1_FILE_2.fastq.gz", - "format": "FASTQ", - "size": 104449, - "checksum": "b8de1729ef9b8a424749ce85815c9eeb166cb7f5f5eca4b02f04e2f9277501c6", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "DS_1", - }, - { - "alias": "SEQ_FILE_3", - "sequencing_process": "SEQ_PROCESS_3", - "name": "SAMPLE_1_SPECIMEN_1_FILE_3.fastq.gz", - "format": "FASTQ", - "size": 51201, - "checksum": "6b7f4b8fc774de4359c985835733c169f1731a109db7893dd35acd4afea3c5b4", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "DS_1", - }, - { - "alias": "SEQ_FILE_4", - "sequencing_process": "SEQ_PROCESS_4", - "name": "SAMPLE_2_SPECIMEN_1_FILE_4.fastq.gz", - "format": "FASTQ", - "size": 96257, - "checksum": "9aea8c99cc065836f1f2765a8590971c5b5d2a29c4c6569c475089c5b57d1180", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "DS_2", - }, - { - "alias": "SEQ_FILE_5", - "sequencing_process": "SEQ_PROCESS_5", - "name": "SAMPLE_2_SPECIMEN_1_FILE_5.fastq.gz", - "format": "FASTQ", - "size": 63489, - "checksum": "a13dfc276fe322cb1b7490441097662e60443fb8787b011eaec4621916842847", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "DS_2", - }, - { - "alias": "SEQ_FILE_6", - "sequencing_process": "SEQ_PROCESS_6", - "name": "SAMPLE_2_SPECIMEN_1_FILE_6.fastq.gz", - "format": "FASTQ", - "size": 104449, - "checksum": "e5c186653c619507cec6aa6b7affedeb5ec29a5e23d2814d2710076fa1f5000b", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "DS_2", - }, - { - "alias": "SEQ_FILE_7", - "sequencing_process": "SEQ_PROCESS_7", - "name": "SAMPLE_2_SPECIMEN_1_FILE_7.fastq.gz", - "format": "FASTQ", - "size": 53249, - "checksum": "f37c331e32ba71cfabbd88b9115eeb6a000c1085cc596dcee9db3c7552229049", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "DS_2", - }, - { - "alias": "SEQ_FILE_8", - "sequencing_process": "SEQ_PROCESS_8", - "name": "SAMPLE_2_SPECIMEN_1_FILE_8.fastq.gz", - "format": "FASTQ", - "size": 96257, - "checksum": "6c11379d7ce5625bdef86d2b72c0399280388f2532c26c3934f4ee88e7c25e4d", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "DS_2", - }, - { - "alias": "SEQ_FILE_9", - "sequencing_process": "SEQ_PROCESS_9", - "name": "SAMPLE_2_SPECIMEN_1_FILE_9.fastq.gz", - "format": "FASTQ", - "size": 49153, - "checksum": "23ba42aeef99bffae8f1f4409c64d1a2e19c49dc74c2c6ad6c7b98c5bf04dd1f", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "DS_2", - }, - ], - "sequencing_processes": - [ - { - "alias": "SEQ_PROCESS_1", - "title": "Sequencing Process A", - "description": "Sequencing process A is conducted like this.", - "name": "Sequencing process A", - "sequencing_run_id": "RUN_123", - "sequencing_lane_id": "LANE_123", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "SEQ_EXP_1", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_1", - "sample": "SAMPLE_1", - }, - { - "alias": "SEQ_PROCESS_2", - "title": "Sequencing Process B", - "description": "Sequencing process B is conducted like this.", - "name": "Sequencing process B", - "sequencing_run_id": "RUN_124", - "sequencing_lane_id": "LANE_124", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "SEQ_EXP_1", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_2", - "sample": "SAMPLE_1", - }, - { - "alias": "SEQ_PROCESS_3", - "title": "Sequencing Process C", - "description": "Sequencing process C is conducted like this.", - "name": "Sequencing process C", - "sequencing_run_id": "RUN_125", - "sequencing_lane_id": "LANE_125", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "SEQ_EXP_1", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_3", - "sample": "SAMPLE_1", - }, - { - "alias": "SEQ_PROCESS_4", - "title": "Sequencing Process D", - "description": "Sequencing process D is conducted like this.", - "name": "Sequencing process D", - "sequencing_run_id": "RUN_126", - "sequencing_lane_id": "LANE_126", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "SEQ_EXP_1", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_4", - "sample": "SAMPLE_2", - }, - { - "alias": "SEQ_PROCESS_5", - "title": "Sequencing Process E", - "description": "Sequencing process E is conducted like this.", - "name": "Sequencing process E", - "sequencing_run_id": "RUN_127", - "sequencing_lane_id": "LANE_127", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "SEQ_EXP_1", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_5", - "sample": "SAMPLE_2", - }, - { - "alias": "SEQ_PROCESS_6", - "title": "Sequencing Process F", - "description": "Sequencing process F is conducted like this.", - "name": "Sequencing process F", - "sequencing_run_id": "RUN_128", - "sequencing_lane_id": "LANE_128", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "SEQ_EXP_1", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_6", - "sample": "SAMPLE_2", - }, - { - "alias": "SEQ_PROCESS_7", - "title": "Sequencing Process G", - "description": "Sequencing process G is conducted like this.", - "name": "Sequencing process G", - "sequencing_run_id": "RUN_129", - "sequencing_lane_id": "LANE_129", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "SEQ_EXP_1", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_7", - "sample": "SAMPLE_2", - }, - { - "alias": "SEQ_PROCESS_8", - "title": "Sequencing Process H", - "description": "Sequencing process H is conducted like this.", - "name": "Sequencing process H", - "sequencing_run_id": "RUN_130", - "sequencing_lane_id": "LANE_130", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "SEQ_EXP_1", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_8", - "sample": "SAMPLE_2", - }, - { - "alias": "SEQ_PROCESS_9", - "title": "Sequencing Process I", - "description": "Sequencing process I is conducted like this.", - "name": "Sequencing process I", - "sequencing_run_id": "RUN_131", - "sequencing_lane_id": "LANE_131", - "sequencing_machine_id": "SEQ_MACHINE_123", - "sequencing_experiment": "SEQ_EXP_1", - "index_sequence": "AGTCGATCGTAC", - "lane_number": "lane_9", - "sample": "SAMPLE_2", - }, - ], - "sequencing_protocols": - [ - { - "alias": "SEQ_PRO_1", - "description": "Sequence protocol 1 is conducted like this. ", - "type": "DNA-seq", - "instrument_model": "ILLUMINA_NOVA_SEQ_6000", - "sequencing_center": "Center A", - "sequencing_read_length": "long", - "target_coverage": "x50", - "flow_cell_id": "ID_Cell 1_Lane_1", - "flow_cell_type": "ILLUMINA_NOVA_SEQ_S4", - "umi_barcode_read": "INDEX1", - "umi_barcode_offset": "16", - "umi_barcode_size": "10", - "cell_barcode_read": "INDEX1", - "cell_barcode_offset": "20", - "cell_barcode_size": "18", - "sample_barcode_read": "INDEX1", - }, - ], - "studies": - [ - { - "alias": "STUDY_A", - "title": "The A Study", - "description": "A study that is the A study", - "type": "SYNTHETIC_GENOMICS", - "affiliations": ["Some Institute", "Some other Institute"], - "attributes": - [ - { "key": "budget", "value": "3.5M" }, - { "key": "funding", "value": "EU" }, - ], - }, - { - "alias": "STUDY_B", - "title": "The B Study", - "description": "A study that is the B study", - "type": "WHOLE_GENOME_SEQUENCING", - "affiliations": ["Some Institute"], - }, - ], - "study_files": - [ - { - "alias": "STUDY_FILE_1", - "study": "STUDY_A", - "name": "STUDY_1_SPECIMEN_1_FILE_1.fastq.gz", - "format": "FASTQ", - "size": 106497, - "checksum": "7a586609dd8c7d6f53cbc2e82e1165de2c7aab6769c6dde9882b45048b0fdaa9", - "forward_or_reverse": "REVERSE", - "checksum_type": "SHA256", - "dataset": "DS_1", - }, - ], - "trios": - [ - { - "alias": "TRIO_1", - "mother": "MOTHER_1", - "father": "FATHER_1", - "child": "INDV_1", - }, - ], -} diff --git a/tests/fixtures/transformations/normalize/default/transformed_model.yaml b/tests/fixtures/transformations/normalize/default/transformed_model.yaml deleted file mode 100644 index ae4b51fc..00000000 --- a/tests/fixtures/transformations/normalize/default/transformed_model.yaml +++ /dev/null @@ -1,3619 +0,0 @@ -classes: - AliasMixin: - description: - Mixin for entities that can be assigned an alias at the time of metadata - submission. - mixin: true - slot_usage: - alias: - alias: alias - description: The alias for an entity at the time of submission. - domain_of: - - AliasMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: AliasMixin - range: string - required: true - slots: - - alias - Analysis: - aliases: - - data analysis - description: - An Analysis is a data transformation that transforms input data to - output data. The workflow used to achieve this transformation and the individual - steps are also captured. - slot_usage: - alias: - alias: alias - description: The alias for an entity at the time of submission. - domain_of: - - AliasMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - identifier: true - owner: Analysis - range: string - required: true - description: - alias: description - description: - "Describing how an Analysis was carried out. (e.g.: computational - tools, settings, etc.)." - domain_of: - - Study - - SequencingExperiment - - Condition - - LibraryPreparationProtocol - - SequencingProtocol - - SequencingProcess - - Biospecimen - - Sample - - Analysis - - Dataset - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Analysis - range: string - required: false - reference_chromosome: - alias: reference_chromosome - description: The reference chromosome used for this Analysis. - domain_of: - - Analysis - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Analysis - range: string - required: true - reference_genome: - alias: reference_genome - description: - "A published genetic sequence that is used as a reference sequence - against which other sequences are compared. Reference genome(s) or annotation(s) - used for prior analyses (eg: GRCh38.p13)." - domain_of: - - Analysis - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Analysis - range: string - required: true - title: - alias: title - description: The title that describes an entity. - domain_of: - - Study - - SequencingExperiment - - Condition - - SequencingProcess - - Analysis - - Dataset - - Publication - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Analysis - range: string - type: - alias: type - description: - The type of the Analysis. Either Reference Alignment (BAM) or - Sequence Variation (VCF) - domain_of: - - Study - - SequencingExperiment - - SequencingProtocol - - Biospecimen - - Sample - - Analysis - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Analysis - range: string - required: false - slots: - - title - - description - - type - - reference_genome - - reference_chromosome - - alias - AnalysisProcess: - slot_usage: - alias: - alias: alias - description: The alias for an entity at the time of submission. - domain_of: - - AliasMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - identifier: true - owner: AnalysisProcess - range: string - required: true - analysis: - alias: analysis - description: The Analysis the AnalysisProcess was part of - domain_of: - - AnalysisProcess - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - owner: AnalysisProcess - range: Analysis - required: true - sample_input_files: - alias: sample_input_files - description: The SampleFile associated used as an input for an entity. - domain_of: - - AnalysisProcess - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - multivalued: true - owner: AnalysisProcess - range: SampleFile - required: false - sequencing_process_input_files: - alias: sequencing_process_input_files - description: - The SequencingProcessFile associated used as an input for an - entity. - domain_of: - - AnalysisProcess - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - multivalued: true - owner: AnalysisProcess - range: SequencingProcessFile - required: false - study_input_files: - alias: study_input_files - description: The StudyFile associated used as an input for an entity. - domain_of: - - AnalysisProcess - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - multivalued: true - owner: AnalysisProcess - range: StudyFile - required: false - slots: - - analysis - - study_input_files - - sample_input_files - - sequencing_process_input_files - - alias - AnalysisProcessOutputFile: - description: - A AnalysisProcessOutputFile is a File that is associated as an output - file with an AnalysisProcess. - slot_usage: - alias: - alias: alias - description: The alias for an entity at the time of submission. - domain_of: - - AliasMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - identifier: true - owner: AnalysisProcessOutputFile - range: string - required: true - analysis_process: - alias: analysis_process - description: The AnalysisProcess associated with an entity. - domain_of: - - AnalysisProcessOutputFile - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - owner: AnalysisProcessOutputFile - range: AnalysisProcess - required: true - checksum: - alias: checksum - description: - A computed value which depends on the contents of a block of - data and which is transmitted or stored along with the data in order to - detect corruption of the data. The receiving system recomputes the checksum - based upon the received data and compares this value with the one sent with - the data. If the two values are the same, the receiver has some confidence - that the data was received correctly. - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: AnalysisProcessOutputFile - range: string - required: true - checksum_type: - alias: checksum_type - description: The type of algorithm used to generate the checksum of a file. - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: AnalysisProcessOutputFile - range: string - required: true - dataset: - alias: dataset - description: The Dataset associated with an entity. - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - owner: AnalysisProcessOutputFile - range: Dataset - required: true - format: - alias: format - description: "The format of the file: BAM, SAM, CRAM, BAI, etc." - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: AnalysisProcessOutputFile - range: FileFormatEnum - required: true - forward_or_reverse: - alias: forward_or_reverse - description: - Denotes whether a submitted FASTQ file contains forward (R1) - or reverse (R2) reads for paired-end sequencing. The number that identifies - each read direction in a paired-end nucleotide sequencing reaction. - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: AnalysisProcessOutputFile - range: ForwardOrReverseEnum - recommended: true - required: false - name: - alias: name - description: The given filename. - domain_of: - - Condition - - SequencingProcess - - Biospecimen - - Sample - - File - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: AnalysisProcessOutputFile - range: string - required: true - size: - alias: size - description: The size of a file in bytes. - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: AnalysisProcessOutputFile - range: integer - required: true - slots: - - analysis_process - - name - - format - - size - - checksum - - forward_or_reverse - - checksum_type - - dataset - - alias - Attribute: - description: A key/value pair that further characterizes an entity. - exact_mappings: - - SIO:000614 - slot_usage: - key: - alias: key - description: The key for an attribute. - domain_of: - - Attribute - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Attribute - range: string - required: true - key_type: - alias: key_type - description: - A semantic type that characterizes the attribute key. Usually - this is a term from an ontology. For example, 'MAXO:0000616' indicates that - the attribute is a measurement of oxygen saturation in the blood. - domain_of: - - Attribute - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Attribute - range: string - required: false - value: - alias: value - description: - The value for an attribute. Usually this is a numerical value - (without the units). - domain_of: - - Attribute - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Attribute - range: string - required: true - value_type: - alias: value_type - description: - The value_type that characterizes the attribute value. Usually - this is a term from an ontology that describes how to interpret the value. - For example, 'SIO:001413' indicates that the value is to be interpreted - as a percentage. - domain_of: - - Attribute - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Attribute - range: string - required: false - slots: - - key - - key_type - - value - - value_type - AttributeMixin: - description: Mixin for entities that can have one or more attributes. - mixin: true - slot_usage: - attributes: - alias: attributes - description: Key/value pairs corresponding to an entity. - domain_of: - - AttributeMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: AttributeMixin - range: Attribute - required: false - slots: - - attributes - Biospecimen: - description: - A Biospecimen is any natural material taken from a biological entity - (usually a human) for testing, diagnostics, treatment, or research purposes. - The Biospecimen is linked to the Individual from which the Biospecimen is derived. - exact_mappings: - - OBI:0100051 - slot_usage: - age_at_sampling: - alias: age_at_sampling - description: Age of an individual. - domain_of: - - Biospecimen - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Biospecimen - range: AgeRangeEnum - required: true - alias: - alias: alias - description: The alias for an entity at the time of submission. - domain_of: - - AliasMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - identifier: true - owner: Biospecimen - range: string - required: true - description: - alias: description - description: Description of an entity. - domain_of: - - Study - - SequencingExperiment - - Condition - - LibraryPreparationProtocol - - SequencingProtocol - - SequencingProcess - - Biospecimen - - Sample - - Analysis - - Dataset - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Biospecimen - range: string - required: false - individual: - alias: individual - description: The Individual entity from which this Biospecimen was derived. - domain_of: - - Biospecimen - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - owner: Biospecimen - range: Individual - required: true - isolation: - alias: isolation - description: - Method or device employed for collecting/isolating a biospecimen - or a sample. - domain_of: - - Biospecimen - - Sample - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Biospecimen - range: string - recommended: true - required: false - name: - alias: name - description: The name for an entity. - domain_of: - - Condition - - SequencingProcess - - Biospecimen - - Sample - - File - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Biospecimen - range: string - recommended: true - required: false - storage: - alias: storage - description: - Methods by which a biospecimen or a sample is stored (e.g. frozen - in liquid nitrogen). - domain_of: - - Biospecimen - - Sample - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Biospecimen - range: string - recommended: true - required: false - tissue: - alias: tissue - domain_of: - - Biospecimen - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Biospecimen - range: string - required: true - type: - alias: type - description: The type of Biospecimen. - domain_of: - - Study - - SequencingExperiment - - SequencingProtocol - - Biospecimen - - Sample - - Analysis - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Biospecimen - range: string - recommended: true - required: false - vital_status_at_sampling: - alias: vital_status_at_sampling - description: - Vital Status of an Individual at the point of sampling (eg:'Alive', - 'Deceased'). - domain_of: - - Biospecimen - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Biospecimen - range: VitalStatusEnum - recommended: true - required: false - slots: - - name - - type - - description - - isolation - - storage - - individual - - age_at_sampling - - vital_status_at_sampling - - tissue - - alias - Condition: - description: An condition that is linked to comparable samples. - slot_usage: - alias: - alias: alias - description: The alias for an entity at the time of submission. - domain_of: - - AliasMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - identifier: true - owner: Condition - range: string - required: true - attributes: - alias: attributes - description: Key/value pairs corresponding to an entity. - domain_of: - - AttributeMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: Condition - range: Attribute - required: false - case_control_status: - alias: case_control_status - description: Whether a condition corresponds to a treatment or a control. - domain_of: - - Condition - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Condition - range: CaseControlStatusEnum - required: true - description: - alias: description - description: Description of an entity. - domain_of: - - Study - - SequencingExperiment - - Condition - - LibraryPreparationProtocol - - SequencingProtocol - - SequencingProcess - - Biospecimen - - Sample - - Analysis - - Dataset - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Condition - range: string - required: true - disease_or_healthy: - alias: disease_or_healthy - description: Whether a condition corresponds to a disease or a healthy state. - domain_of: - - Condition - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Condition - range: DiseaseOrHealthyEnum - required: true - mutant_or_wildtype: - alias: mutant_or_wildtype - description: Whether a condition corresponds to a mutant or a wildtype. - domain_of: - - Condition - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Condition - range: MutantOrWildtypeEnum - required: true - name: - alias: name - description: The name for an entity. - domain_of: - - Condition - - SequencingProcess - - Biospecimen - - Sample - - File - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Condition - range: string - required: true - study: - alias: study - description: The study associated with an entity. - domain_of: - - Condition - - StudyFile - - Publication - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - owner: Condition - range: Study - required: true - title: - alias: title - description: The title that describes an entity. - domain_of: - - Study - - SequencingExperiment - - Condition - - SequencingProcess - - Analysis - - Dataset - - Publication - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Condition - range: string - slots: - - title - - description - - name - - disease_or_healthy - - case_control_status - - mutant_or_wildtype - - study - - attributes - - alias - DataAccessCommittee: - description: - A group of members that are delegated to grant access to one or more - datasets after ensuring the minimum criteria for data sharing has been met, - and request for data use does not raise ethical and/or legal concerns. - slot_usage: - alias: - alias: alias - description: The alias for an entity at the time of submission. - domain_of: - - AliasMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - identifier: true - owner: DataAccessCommittee - range: string - required: true - email: - alias: email - description: Email of a person. - domain_of: - - DataAccessCommittee - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: DataAccessCommittee - range: string - required: true - institute: - alias: institute - description: The institute a person is affiliated with. - domain_of: - - DataAccessCommittee - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: DataAccessCommittee - range: string - required: true - slots: - - email - - institute - - alias - DataAccessPolicy: - description: - A Data Access Policy specifies under which circumstances, legal or - otherwise, a user can have access to one or more Datasets belonging to one or - more Studies. - slot_usage: - alias: - alias: alias - description: The alias for an entity at the time of submission. - domain_of: - - AliasMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - identifier: true - owner: DataAccessPolicy - range: string - required: true - data_access_committee: - alias: data_access_committee - description: The Data Access Committee linked to this policy. - domain_of: - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - owner: DataAccessPolicy - range: DataAccessCommittee - required: true - data_use_modifiers: - alias: data_use_modifiers - description: - Modifier for Data use permission associated with a policy. Should - be descendants of 'DUO:0000017 data use modifier' - domain_of: - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - multivalued: true - owner: DataAccessPolicy - range: DataUseModifierEnum - recommended: true - required: false - data_use_permission: - alias: data_use_permission - description: - Data use permission associated with a policy. Typically one or - more terms from DUO and should be descendants of 'DUO:0000001 data use permission'. - domain_of: - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: DataAccessPolicy - range: DataUsePermissionEnum - required: true - description: - alias: description - description: A short description for the Data Access Policy. - domain_of: - - Study - - SequencingExperiment - - Condition - - LibraryPreparationProtocol - - SequencingProtocol - - SequencingProcess - - Biospecimen - - Sample - - Analysis - - Dataset - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: DataAccessPolicy - range: string - required: true - name: - alias: name - description: A name for the Data Access Policy. - domain_of: - - Condition - - SequencingProcess - - Biospecimen - - Sample - - File - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: DataAccessPolicy - range: string - required: true - policy_text: - alias: policy_text - description: - The terms of data use and policy verbiage should be captured - here. - domain_of: - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: DataAccessPolicy - range: string - required: true - policy_url: - alias: policy_url - description: - URL for the policy, if available. This is useful if the terms - of the policy is made available online at a resolvable URL. - domain_of: - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: DataAccessPolicy - range: string - recommended: true - required: false - slots: - - name - - description - - policy_text - - policy_url - - data_access_committee - - data_use_permission - - data_use_modifiers - - alias - Dataset: - description: - A Dataset is a collection of Files that is prepared for distribution - and is tied to a Data Access Policy. - exact_mappings: - - SIO:000089 - slot_usage: - alias: - alias: alias - description: The alias for an entity at the time of submission. - domain_of: - - AliasMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - identifier: true - owner: Dataset - range: string - required: true - data_access_policy: - alias: data_access_policy - description: The Data Access Policy that applies to this Dataset. - domain_of: - - Dataset - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - owner: Dataset - range: DataAccessPolicy - required: true - description: - alias: description - description: Description of an entity. - domain_of: - - Study - - SequencingExperiment - - Condition - - LibraryPreparationProtocol - - SequencingProtocol - - SequencingProcess - - Biospecimen - - Sample - - Analysis - - Dataset - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Dataset - range: string - required: true - title: - alias: title - description: A title for the submitted Dataset. - domain_of: - - Study - - SequencingExperiment - - Condition - - SequencingProcess - - Analysis - - Dataset - - Publication - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Dataset - range: string - required: true - types: - alias: types - description: The type of a dataset. - domain_of: - - Dataset - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - multivalued: true - owner: Dataset - range: string - required: true - slots: - - title - - description - - types - - data_access_policy - - alias - File: - description: - A file is an object that contains information generated from a process, - either an Experiment or an Analysis. - slot_usage: - alias: - alias: alias - description: The alias for an entity at the time of submission. - domain_of: - - AliasMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - identifier: true - owner: File - range: string - required: true - checksum: - alias: checksum - description: - A computed value which depends on the contents of a block of - data and which is transmitted or stored along with the data in order to - detect corruption of the data. The receiving system recomputes the checksum - based upon the received data and compares this value with the one sent with - the data. If the two values are the same, the receiver has some confidence - that the data was received correctly. - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: File - range: string - required: true - checksum_type: - alias: checksum_type - description: The type of algorithm used to generate the checksum of a file. - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: File - range: string - required: true - dataset: - alias: dataset - description: The Dataset associated with an entity. - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - owner: File - range: Dataset - required: true - format: - alias: format - description: "The format of the file: BAM, SAM, CRAM, BAI, etc." - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: File - range: FileFormatEnum - required: true - forward_or_reverse: - alias: forward_or_reverse - description: - Denotes whether a submitted FASTQ file contains forward (R1) - or reverse (R2) reads for paired-end sequencing. The number that identifies - each read direction in a paired-end nucleotide sequencing reaction. - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: File - range: ForwardOrReverseEnum - recommended: true - required: false - name: - alias: name - description: The given filename. - domain_of: - - Condition - - SequencingProcess - - Biospecimen - - Sample - - File - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: File - range: string - required: true - size: - alias: size - description: The size of a file in bytes. - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: File - range: integer - required: true - slots: - - name - - format - - size - - checksum - - forward_or_reverse - - checksum_type - - dataset - - alias - IdentifiedByAliasMixin: - abstract: true - mixin: true - slot_usage: - alias: - alias: alias - description: The alias for an entity at the time of submission. - domain_of: - - AliasMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - identifier: true - owner: IdentifiedByAliasMixin - range: string - required: true - slots: - - alias - Individual: - aliases: - - subject - - patient - description: An Individual is a Person who is participating in a Study. - slot_usage: - alias: - alias: alias - description: The alias for an entity at the time of submission. - domain_of: - - AliasMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - identifier: true - owner: Individual - range: string - required: true - ancestries: - alias: ancestries - description: A person's descent or lineage, from a person or from a population. - domain_of: - - Individual - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - multivalued: true - owner: Individual - range: string - required: false - geographical_region: - alias: geographical_region - description: - The geographical region where the Individual is located. Any - demarcated area of the Earth; may be determined by both natural and human - boundaries. - domain_of: - - Individual - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Individual - range: string - required: false - karyotype: - alias: karyotype - description: The karyotype of an individual if defined. - domain_of: - - Individual - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Individual - range: KaryotypeEnum - required: false - phenotypic_features: - alias: phenotypic_features - description: - The Phenotypic Feature entity that is associated with this Biospecimen - at the time of retrieval from the organism. Typically, a concept from Human - Phenotype Ontology. For example, 'HP:0100244' indicates that the Individual - - from_which_the_Biospecimen was extracted from - exhibits_'Fibrosarcoma'_as_one_of_its_phenotype. - domain_of: - - Individual - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - multivalued: true - owner: Individual - range: string - required: false - sex: - alias: sex - description: - The assemblage of physical properties or qualities by which male - is distinguished from female; the physical difference between male and female; - the distinguishing peculiarity of male or female. - domain_of: - - Individual - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Individual - range: IndividualSexEnum - required: true - slots: - - sex - - karyotype - - geographical_region - - ancestries - - phenotypic_features - - alias - LibraryPreparationProtocol: - description: Information about the library_preparation of an sequencing experiment. - slot_usage: - alias: - alias: alias - description: The alias for an entity at the time of submission. - domain_of: - - AliasMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - identifier: true - owner: LibraryPreparationProtocol - range: string - required: true - attributes: - alias: attributes - description: - One or more attributes that further characterizes this library_preparation - Protocol. - domain_of: - - AttributeMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: LibraryPreparationProtocol - range: Attribute - required: false - description: - alias: description - description: - "Description about how a sequencing library was prepared (eg: - Library construction method)." - domain_of: - - Study - - SequencingExperiment - - Condition - - LibraryPreparationProtocol - - SequencingProtocol - - SequencingProcess - - Biospecimen - - Sample - - Analysis - - Dataset - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: LibraryPreparationProtocol - range: string - required: true - end_bias: - alias: end_bias - description: - The end of the cDNA molecule that is preferentially sequenced, - e.g. 3/5 prime tag or end, or the full-length transcript. - domain_of: - - LibraryPreparationProtocol - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: LibraryPreparationProtocol - range: EndBiasEnum - recommended: true - required: false - library_layout: - alias: library_layout - description: - Describe whether the library was sequenced in single-end (forward - or reverse) or paired-end mode - domain_of: - - LibraryPreparationProtocol - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: LibraryPreparationProtocol - range: LibraryPreparationLibraryLayoutEnum - required: true - library_name: - alias: library_name - description: - A short name identifying the library to potential users. The - same name may refer to multiple versions of the same continually updated - library. - domain_of: - - LibraryPreparationProtocol - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: LibraryPreparationProtocol - range: string - required: true - library_preparation: - alias: library_preparation - description: - The general method for sequencing library_preparation (e.g. KAPA - PCR-free). - domain_of: - - LibraryPreparationProtocol - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: LibraryPreparationProtocol - range: string - required: true - library_preparation_kit_manufacturer: - alias: library_preparation_kit_manufacturer - description: Manufacturer of library_preparation kit - domain_of: - - LibraryPreparationProtocol - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: LibraryPreparationProtocol - range: string - recommended: true - required: false - library_preparation_kit_retail_name: - alias: library_preparation_kit_retail_name - description: - A unique identifier for the kit used to construct a genomic library. - This may include the vendor name, kit name and kit version (e.g. Agilent - sure select Human Exome V8, Twist RefSeq Exome, etc.) - domain_of: - - LibraryPreparationProtocol - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: LibraryPreparationProtocol - range: LibraryPreparationKitRetailNameEnum - recommended: true - required: false - library_selection: - alias: library_selection - description: - Whether any method was used to select for or against, enrich, - or screen the material being sequenced. library_selection method (e.g. random, - PCA, cDNA, etc ) - domain_of: - - LibraryPreparationProtocol - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: LibraryPreparationProtocol - range: LibraryPreparationLibrarySelectionEnum - required: true - library_type: - alias: library_type - description: - "Describe the level of omics analysis (eg: Metagenome, transcriptome, - etc)" - domain_of: - - LibraryPreparationProtocol - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: LibraryPreparationProtocol - range: LibraryPreparationLibraryTypeEnum - required: true - primer: - alias: primer - description: - The type of primer used for reverse transcription, e.g. 'oligo-dT' - or 'random' primer. This allows users to identify content of the cDNA library - input e.g. enriched for mRNA. - domain_of: - - LibraryPreparationProtocol - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: LibraryPreparationProtocol - range: PrimerEnum - recommended: true - required: false - rnaseq_strandedness: - alias: rnaseq_strandedness - description: - The strandedness of the library, whether reads come from both - strands of the cDNA or only from the first (antisense) or the second (sense) - strand. - domain_of: - - LibraryPreparationProtocol - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: LibraryPreparationProtocol - range: LibraryPreparationRNASeqStrandednessEnum - recommended: true - required: false - target_regions: - alias: target_regions - description: - Subset of genes or specific regions of the genome, which are - most likely to be involved in the phenotype under study. - domain_of: - - LibraryPreparationProtocol - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - multivalued: true - owner: LibraryPreparationProtocol - range: string - required: false - slots: - - description - - library_name - - library_layout - - library_type - - library_selection - - library_preparation - - library_preparation_kit_retail_name - - library_preparation_kit_manufacturer - - primer - - end_bias - - target_regions - - rnaseq_strandedness - - attributes - - alias - Publication: - description: - The Publication entity represents a publication. While a publication - can be any article that is published, the minimum expectation is that the publication - has a valid DOI. - slot_usage: - abstract: - alias: abstract - description: - The study abstract that describes the goals. Can also hold abstract - from a publication related to this study. - domain_of: - - Publication - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Publication - range: string - required: false - alias: - alias: alias - description: The alias for an entity at the time of submission. - domain_of: - - AliasMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - identifier: true - owner: Publication - range: string - required: true - author: - alias: author - description: - The individual who is responsible for the content of a document - version. - domain_of: - - Publication - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Publication - range: string - required: false - doi: - alias: doi - description: DOI identifier of the Publication. - domain_of: - - Publication - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Publication - range: string - required: true - journal: - alias: journal - description: Name of the journal. - domain_of: - - Publication - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Publication - range: string - required: false - study: - alias: study - description: The Study entity associated with this Publication. - domain_of: - - Condition - - StudyFile - - Publication - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - owner: Publication - range: Study - required: true - title: - alias: title - description: The title for the Publication. - domain_of: - - Study - - SequencingExperiment - - Condition - - SequencingProcess - - Analysis - - Dataset - - Publication - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Publication - range: string - required: false - xref: - alias: xref - description: One or more cross-references for this Publication. - domain_of: - - Sample - - Publication - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - multivalued: true - owner: Publication - range: string - required: false - year: - alias: year - description: Year in which the paper was published. - domain_of: - - Publication - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Publication - range: integer - required: false - slots: - - title - - abstract - - author - - year - - journal - - doi - - study - - xref - - alias - Sample: - description: - A sample is a limited quantity of something to be used for testing, - analysis, inspection, investigation, demonstration, or trial use. A sample is - prepared from a Biospecimen (isolate or tissue). - exact_mappings: - - SIO:001050 - - biolink:MaterialSample - slot_usage: - alias: - alias: alias - description: The alias for an entity at the time of submission. - domain_of: - - AliasMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - identifier: true - owner: Sample - range: string - required: true - attributes: - alias: attributes - description: Key/value pairs corresponding to an entity. - domain_of: - - AttributeMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: Sample - range: Attribute - required: false - biospecimen: - alias: biospecimen - description: The Biospecimen from which this Sample was prepared from. - domain_of: - - Sample - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - owner: Sample - range: Biospecimen - required: false - condition: - alias: condition - description: The condition associated with an entity. - domain_of: - - Sample - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - owner: Sample - range: Condition - required: true - description: - alias: description - description: - Short textual description of the sample (How the sample was collected, - sample source, Protocol followed for processing the sample etc). - domain_of: - - Study - - SequencingExperiment - - Condition - - LibraryPreparationProtocol - - SequencingProtocol - - SequencingProcess - - Biospecimen - - Sample - - Analysis - - Dataset - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Sample - range: string - required: true - isolation: - alias: isolation - description: - Method or device employed for collecting/isolating a biospecimen - or a sample. - domain_of: - - Biospecimen - - Sample - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Sample - range: string - recommended: true - required: false - name: - alias: name - description: Name of the sample (eg:GHGAS_Blood_Sample1 or GHGAS_PBMC_RNAseq_S1). - domain_of: - - Condition - - SequencingProcess - - Biospecimen - - Sample - - File - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Sample - range: string - required: true - storage: - alias: storage - description: - Methods by which a biospecimen or a sample is stored (e.g. frozen - in liquid nitrogen). - domain_of: - - Biospecimen - - Sample - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Sample - range: string - recommended: true - required: false - type: - alias: type - description: The type of sample. - domain_of: - - Study - - SequencingExperiment - - SequencingProtocol - - Biospecimen - - Sample - - Analysis - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - in_subset: - - ontology - owner: Sample - range: SampleTypeEnum - required: false - xref: - alias: xref - description: - One or more cross-references for this Sample. For example, this - Sample may have an EBI BioSamples accession or an EGA Sample accession. - domain_of: - - Sample - - Publication - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - multivalued: true - owner: Sample - range: string - required: false - slots: - - name - - type - - description - - isolation - - storage - - biospecimen - - condition - - xref - - attributes - - alias - SampleFile: - description: A SampleFile is a File that is associated with a Sample. - slot_usage: - alias: - alias: alias - description: The alias for an entity at the time of submission. - domain_of: - - AliasMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - identifier: true - owner: SampleFile - range: string - required: true - checksum: - alias: checksum - description: - A computed value which depends on the contents of a block of - data and which is transmitted or stored along with the data in order to - detect corruption of the data. The receiving system recomputes the checksum - based upon the received data and compares this value with the one sent with - the data. If the two values are the same, the receiver has some confidence - that the data was received correctly. - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SampleFile - range: string - required: true - checksum_type: - alias: checksum_type - description: The type of algorithm used to generate the checksum of a file. - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SampleFile - range: string - required: true - dataset: - alias: dataset - description: The Dataset associated with an entity. - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - owner: SampleFile - range: Dataset - required: true - format: - alias: format - description: "The format of the file: BAM, SAM, CRAM, BAI, etc." - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SampleFile - range: FileFormatEnum - required: true - forward_or_reverse: - alias: forward_or_reverse - description: - Denotes whether a submitted FASTQ file contains forward (R1) - or reverse (R2) reads for paired-end sequencing. The number that identifies - each read direction in a paired-end nucleotide sequencing reaction. - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SampleFile - range: ForwardOrReverseEnum - recommended: true - required: false - name: - alias: name - description: The given filename. - domain_of: - - Condition - - SequencingProcess - - Biospecimen - - Sample - - File - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SampleFile - range: string - required: true - sample: - alias: sample - description: The sample associated with an entity. - domain_of: - - SequencingProcess - - SampleFile - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - owner: SampleFile - range: Sample - required: true - size: - alias: size - description: The size of a file in bytes. - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SampleFile - range: integer - required: true - slots: - - sample - - name - - format - - size - - checksum - - forward_or_reverse - - checksum_type - - dataset - - alias - SequencingExperiment: - description: - An sequencing experiment is an investigation that consists of a coordinated - set of actions and observations designed to generate data with the goal of verifying, - falsifying, or establishing the validity of a hypothesis. - exact_mappings: - - SIO:000994 - slot_usage: - alias: - alias: alias - description: The alias for an entity at the time of submission. - domain_of: - - AliasMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - identifier: true - owner: SequencingExperiment - range: string - required: true - attributes: - alias: attributes - description: Key/value pairs corresponding to an entity. - domain_of: - - AttributeMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: SequencingExperiment - range: Attribute - required: false - description: - alias: description - description: A detailed description of the Experiment. - domain_of: - - Study - - SequencingExperiment - - Condition - - LibraryPreparationProtocol - - SequencingProtocol - - SequencingProcess - - Biospecimen - - Sample - - Analysis - - Dataset - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingExperiment - range: string - required: true - library_preparation_protocol: - alias: library_preparation_protocol - description: The library_preparation Protocol associated with an entity. - domain_of: - - SequencingExperiment - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - owner: SequencingExperiment - range: LibraryPreparationProtocol - required: true - sequencing_protocol: - alias: sequencing_protocol - description: The sequencing protocol associated with an entity. - domain_of: - - SequencingExperiment - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - owner: SequencingExperiment - range: SequencingProtocol - required: true - title: - alias: title - description: "Name for the experiment (eg: GHGAE_PBMC_RNAseq)." - domain_of: - - Study - - SequencingExperiment - - Condition - - SequencingProcess - - Analysis - - Dataset - - Publication - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingExperiment - range: string - type: - alias: type - description: The type of sequencing experiment. - domain_of: - - Study - - SequencingExperiment - - SequencingProtocol - - Biospecimen - - Sample - - Analysis - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingExperiment - range: string - required: false - slots: - - title - - description - - type - - sequencing_protocol - - library_preparation_protocol - - attributes - - alias - SequencingProcess: - description: A sequencing process linking a sample to sequencing output. - slot_usage: - alias: - alias: alias - description: The alias for an entity at the time of submission. - domain_of: - - AliasMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - identifier: true - owner: SequencingProcess - range: string - required: true - attributes: - alias: attributes - description: Key/value pairs corresponding to an entity. - domain_of: - - AttributeMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: SequencingProcess - range: Attribute - required: false - description: - alias: description - description: Description of an entity. - domain_of: - - Study - - SequencingExperiment - - Condition - - LibraryPreparationProtocol - - SequencingProtocol - - SequencingProcess - - Biospecimen - - Sample - - Analysis - - Dataset - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProcess - range: string - required: true - index_sequence: - alias: index_sequence - description: - A unique nucleotide sequence that is added to a sample during - library_preparation to serve as a unique identifier for the sample. - domain_of: - - SequencingProcess - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProcess - range: string - recommended: true - required: false - lane_number: - alias: lane_number - description: - The numerical identifier for the lane or machine unit where a - sample was located during nucleotide sequencing. - domain_of: - - SequencingProcess - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProcess - range: string - recommended: true - required: false - name: - alias: name - description: The name for an entity. - domain_of: - - Condition - - SequencingProcess - - Biospecimen - - Sample - - File - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProcess - range: string - required: true - sample: - alias: sample - description: The sample associated with an entity. - domain_of: - - SequencingProcess - - SampleFile - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - owner: SequencingProcess - range: Sample - required: true - sequencing_experiment: - alias: sequencing_experiment - description: The sequencing experiment associated with an entity. - domain_of: - - SequencingProcess - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - owner: SequencingProcess - range: SequencingExperiment - required: true - sequencing_lane_id: - alias: sequencing_lane_id - description: Identifier of the sequencing lane. Used for batch correction. - domain_of: - - SequencingProcess - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProcess - range: string - required: false - sequencing_machine_id: - alias: sequencing_machine_id - description: Identifier of the sequencing machine. Used for batch correction. - domain_of: - - SequencingProcess - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProcess - range: string - required: false - sequencing_run_id: - alias: sequencing_run_id - description: Identifier of the sequencing run. Used for batch correction. - domain_of: - - SequencingProcess - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProcess - range: string - required: false - title: - alias: title - description: The title that describes an entity. - domain_of: - - Study - - SequencingExperiment - - Condition - - SequencingProcess - - Analysis - - Dataset - - Publication - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProcess - range: string - slots: - - title - - description - - name - - sequencing_run_id - - sequencing_lane_id - - sequencing_machine_id - - sequencing_experiment - - index_sequence - - lane_number - - sample - - attributes - - alias - SequencingProcessFile: - description: A SequencingProcessFile is a File that is associated with a SequencingProcess. - slot_usage: - alias: - alias: alias - description: The alias for an entity at the time of submission. - domain_of: - - AliasMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - identifier: true - owner: SequencingProcessFile - range: string - required: true - checksum: - alias: checksum - description: - A computed value which depends on the contents of a block of - data and which is transmitted or stored along with the data in order to - detect corruption of the data. The receiving system recomputes the checksum - based upon the received data and compares this value with the one sent with - the data. If the two values are the same, the receiver has some confidence - that the data was received correctly. - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProcessFile - range: string - required: true - checksum_type: - alias: checksum_type - description: The type of algorithm used to generate the checksum of a file. - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProcessFile - range: string - required: true - dataset: - alias: dataset - description: The Dataset associated with an entity. - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - owner: SequencingProcessFile - range: Dataset - required: true - format: - alias: format - description: "The format of the file: BAM, SAM, CRAM, BAI, etc." - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProcessFile - range: FileFormatEnum - required: true - forward_or_reverse: - alias: forward_or_reverse - description: - Denotes whether a submitted FASTQ file contains forward (R1) - or reverse (R2) reads for paired-end sequencing. The number that identifies - each read direction in a paired-end nucleotide sequencing reaction. - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProcessFile - range: ForwardOrReverseEnum - recommended: true - required: false - name: - alias: name - description: The given filename. - domain_of: - - Condition - - SequencingProcess - - Biospecimen - - Sample - - File - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProcessFile - range: string - required: true - sequencing_process: - alias: sequencing_process - description: The SequencingProcess associated with an entity. - domain_of: - - SequencingProcessFile - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - owner: SequencingProcessFile - range: SequencingProcess - required: true - size: - alias: size - description: The size of a file in bytes. - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProcessFile - range: integer - required: true - slots: - - sequencing_process - - name - - format - - size - - checksum - - forward_or_reverse - - checksum_type - - dataset - - alias - SequencingProtocol: - description: Information about the sequencing of a sample. - slot_usage: - alias: - alias: alias - description: The alias for an entity at the time of submission. - domain_of: - - AliasMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - identifier: true - owner: SequencingProtocol - range: string - required: true - attributes: - alias: attributes - description: - One or more attributes that further characterizes this Sequencing - Protocol. - domain_of: - - AttributeMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: SequencingProtocol - range: Attribute - required: false - cell_barcode_offset: - alias: cell_barcode_offset - description: - The offset in sequence of the cell identifying barcode. (Eg. - '0'). - domain_of: - - SequencingProtocol - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProtocol - range: string - recommended: true - required: false - cell_barcode_read: - alias: cell_barcode_read - description: "The type of read that contains the cell barcode (eg: index1/index2/read1/read2)." - domain_of: - - SequencingProtocol - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProtocol - range: IndexReadEnum - recommended: true - required: false - cell_barcode_size: - alias: cell_barcode_size - description: The size of the cell identifying barcode (E.g. '16'). - domain_of: - - SequencingProtocol - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProtocol - range: string - recommended: true - required: false - description: - alias: description - description: - "Description about the sequencing Protocol (eg: mRNA-seq, Whole - exome long-read sequencing etc)." - domain_of: - - Study - - SequencingExperiment - - Condition - - LibraryPreparationProtocol - - SequencingProtocol - - SequencingProcess - - Biospecimen - - Sample - - Analysis - - Dataset - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProtocol - range: string - required: true - flow_cell_id: - alias: flow_cell_id - description: - "Flow Cell ID (eg: Experiment ID_Cell 1_Lane_1). The barcode - assigned to a flow cell used in nucleotide sequencing." - domain_of: - - SequencingProtocol - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProtocol - range: string - recommended: true - required: false - flow_cell_type: - alias: flow_cell_type - description: - Type of flow cell used (e.g. S4, S2 for NovaSeq; PromethION, - Flongle for Nanopore). Aparatus in the fluidic subsystem where the sheath - and sample meet. Can be one of several types; jet-in-air, quartz cuvette, - or a hybrid of the two. The sample flows through the center of a fluid column - of sheath fluid in the flow cell. - domain_of: - - SequencingProtocol - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProtocol - range: FlowCellTypeEnum - recommended: true - required: false - instrument_model: - alias: instrument_model - description: - The name and model of the technology platform used to perform - sequencing. - domain_of: - - SequencingProtocol - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProtocol - range: InstrumentModelEnum - required: true - sample_barcode_read: - alias: sample_barcode_read - description: "The type of read that contains the sample barcode (eg: index1/index2/read1/read2)." - domain_of: - - SequencingProtocol - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProtocol - range: SampleBarcodeReadEnum - recommended: true - required: false - sequencing_center: - alias: sequencing_center - description: Center where sample was sequenced. - domain_of: - - SequencingProtocol - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProtocol - range: string - recommended: true - required: false - sequencing_read_length: - alias: sequencing_read_length - description: - "Length of sequencing reads (eg: Long or short or actual number - of the read length etc). The number of nucleotides successfully ordered - from each side of a nucleic acid fragment obtained after the completion - of a sequencing process" - domain_of: - - SequencingProtocol - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProtocol - range: string - required: false - target_coverage: - alias: target_coverage - description: - Mean coverage for whole genome sequencing, or mean target coverage - for whole exome and targeted sequencing. The number of times a particular - locus (site, nucleotide, amplicon, region) was sequenced. - domain_of: - - SequencingProtocol - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProtocol - range: string - required: false - type: - alias: type - description: - "Type of the sequencing Protocol (eg: mRNA-seq, Whole exome long-read - sequencing etc)." - domain_of: - - Study - - SequencingExperiment - - SequencingProtocol - - Biospecimen - - Sample - - Analysis - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProtocol - range: string - umi_barcode_offset: - alias: umi_barcode_offset - description: - The offset in sequence of the UMI identifying barcode. (E.g. - '16'). - domain_of: - - SequencingProtocol - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProtocol - range: string - recommended: true - required: false - umi_barcode_read: - alias: umi_barcode_read - description: "The type of read that contains the UMI barcode (Eg: index1/index2/read1/read2)." - domain_of: - - SequencingProtocol - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProtocol - range: IndexReadEnum - recommended: true - required: false - umi_barcode_size: - alias: umi_barcode_size - description: The size of the UMI identifying barcode (Eg. '10'). - domain_of: - - SequencingProtocol - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: SequencingProtocol - range: string - recommended: true - required: false - slots: - - description - - type - - instrument_model - - sequencing_center - - sequencing_read_length - - target_coverage - - flow_cell_id - - flow_cell_type - - umi_barcode_read - - umi_barcode_offset - - umi_barcode_size - - cell_barcode_read - - cell_barcode_offset - - cell_barcode_size - - sample_barcode_read - - attributes - - alias - Study: - description: - Studies are experimental investigations of a particular phenomenon. - It involves a detailed examination and analysis of a subject to learn more about - the phenomenon being studied. - slot_usage: - affiliations: - alias: affiliations - description: The Institution(s) associated with an entity. - domain_of: - - Study - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - multivalued: true - owner: Study - range: string - required: true - alias: - alias: alias - description: The alias for an entity at the time of submission. - domain_of: - - AliasMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - identifier: true - owner: Study - range: string - required: true - attributes: - alias: attributes - description: - "Custom key/value pairs that further characterizes the Study. - (e.g.: approaches - single-cell,_bulk_etc)" - domain_of: - - AttributeMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: Study - range: Attribute - required: false - description: - alias: description - description: - A detailed description (abstract) that describes the goals of - this Study. - domain_of: - - Study - - SequencingExperiment - - Condition - - LibraryPreparationProtocol - - SequencingProtocol - - SequencingProcess - - Biospecimen - - Sample - - Analysis - - Dataset - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Study - range: string - required: true - title: - alias: title - description: A comprehensive title for the study. - domain_of: - - Study - - SequencingExperiment - - Condition - - SequencingProcess - - Analysis - - Dataset - - Publication - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Study - range: string - required: true - type: - alias: type - description: - The type of Study. For example, 'Cancer Genomics', 'Epigenetics', - 'Exome Sequencing'. - domain_of: - - Study - - SequencingExperiment - - SequencingProtocol - - Biospecimen - - Sample - - Analysis - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: Study - range: StudyTypeEnum - required: true - slots: - - title - - description - - type - - affiliations - - attributes - - alias - StudyFile: - description: A StudyFile is a File that is associated with a Study. - slot_usage: - alias: - alias: alias - description: The alias for an entity at the time of submission. - domain_of: - - AliasMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - identifier: true - owner: StudyFile - range: string - required: true - checksum: - alias: checksum - description: - A computed value which depends on the contents of a block of - data and which is transmitted or stored along with the data in order to - detect corruption of the data. The receiving system recomputes the checksum - based upon the received data and compares this value with the one sent with - the data. If the two values are the same, the receiver has some confidence - that the data was received correctly. - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: StudyFile - range: string - required: true - checksum_type: - alias: checksum_type - description: The type of algorithm used to generate the checksum of a file. - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: StudyFile - range: string - required: true - dataset: - alias: dataset - description: The Dataset associated with an entity. - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - owner: StudyFile - range: Dataset - required: true - format: - alias: format - description: "The format of the file: BAM, SAM, CRAM, BAI, etc." - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: StudyFile - range: FileFormatEnum - required: true - forward_or_reverse: - alias: forward_or_reverse - description: - Denotes whether a submitted FASTQ file contains forward (R1) - or reverse (R2) reads for paired-end sequencing. The number that identifies - each read direction in a paired-end nucleotide sequencing reaction. - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: StudyFile - range: ForwardOrReverseEnum - recommended: true - required: false - name: - alias: name - description: The given filename. - domain_of: - - Condition - - SequencingProcess - - Biospecimen - - Sample - - File - - DataAccessPolicy - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: StudyFile - range: string - required: true - size: - alias: size - description: The size of a file in bytes. - domain_of: - - File - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - owner: StudyFile - range: integer - required: true - study: - alias: study - description: The study associated with an entity. - domain_of: - - Condition - - StudyFile - - Publication - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - owner: StudyFile - range: Study - required: true - slots: - - study - - name - - format - - size - - checksum - - forward_or_reverse - - checksum_type - - dataset - - alias - Submission: - description: - A grouping entity that represents information about one or more entities. - A submission can be considered as a set of inter-related (and inter-connected) - entities that represent a data submission to GHGA. - slot_usage: - analyses: - alias: analyses - description: - Information about one or more Analysis entities associated with - this submission. - domain_of: - - Submission - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: Submission - range: Analysis - required: true - analysis_process_output_files: - alias: analysis_process_output_files - description: The AnalysisProcessOutputFiles that are part of this submission. - domain_of: - - Submission - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: Submission - range: AnalysisProcessOutputFile - required: true - analysis_processes: - alias: analysis_processes - description: The AnalysisProcesses that are part of this submission. - domain_of: - - Submission - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: Submission - range: AnalysisProcess - required: true - biospecimens: - alias: biospecimens - description: - Information about one or more Biospecimen entities associated - with this submission. - domain_of: - - Submission - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: Submission - range: Biospecimen - required: true - conditions: - alias: conditions - description: The Conditions associated with this Submission. - domain_of: - - Submission - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: Submission - range: Condition - required: true - data_access_committees: - alias: data_access_committees - description: The Data Access Committee that applies to Dataset in this submission. - domain_of: - - Submission - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: Submission - range: DataAccessCommittee - required: true - data_access_policies: - alias: data_access_policies - description: The Data Access Policy that applies to Dataset in this submission. - domain_of: - - Submission - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: Submission - range: DataAccessPolicy - required: true - datasets: - alias: datasets - description: One or more Dataset that are part of this submission. - domain_of: - - Submission - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: Submission - range: Dataset - required: true - individuals: - alias: individuals - description: - Information about one or more Individual entities associated - with this submission. - domain_of: - - Submission - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: Submission - range: Individual - required: true - library_preparation_protocols: - alias: library_preparation_protocols - description: - One or more library preparation protocol entities associated - with this Submission. - domain_of: - - Submission - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: Submission - range: LibraryPreparationProtocol - required: true - publications: - alias: publications - description: One or more Publication entities associated with this Submission. - domain_of: - - Submission - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: Submission - range: Publication - required: true - sample_files: - alias: sample_files - description: The SampleFiles that are part of this submission. - domain_of: - - Submission - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: Submission - range: SampleFile - required: true - samples: - alias: samples - description: - Information about one or more Sample entities associated with - this submission. - domain_of: - - Submission - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: Submission - range: Sample - required: true - sequencing_experiments: - alias: sequencing_experiments - description: - Information about one or more Experiment entities associated - with this submission. - domain_of: - - Submission - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: Submission - range: SequencingExperiment - required: true - sequencing_process_files: - alias: sequencing_process_files - description: The SequencingProcessFiles that are part of this submission. - domain_of: - - Submission - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: Submission - range: SequencingProcessFile - required: true - sequencing_processes: - alias: sequencing_processes - description: The SequencingProcesses that are part of this submission. - domain_of: - - Submission - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: Submission - range: SequencingProcess - required: true - sequencing_protocols: - alias: sequencing_protocols - description: - One or more sequencing protocol entities associated with this - Submission. - domain_of: - - Submission - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: Submission - range: SequencingProtocol - required: true - studies: - alias: studies - description: Information about a Study entities associated with this submission. - domain_of: - - Submission - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: Submission - range: Study - required: true - study_files: - alias: study_files - description: The StudyFiles that are part of this submission. - domain_of: - - Submission - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: Submission - range: StudyFile - required: true - trios: - alias: trios - description: The Trios associated with this Submission. - domain_of: - - Submission - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: true - inlined_as_list: true - multivalued: true - owner: Submission - range: Trio - required: true - slots: - - analyses - - analysis_process_output_files - - analysis_processes - - biospecimens - - conditions - - data_access_committees - - data_access_policies - - datasets - - individuals - - library_preparation_protocols - - publications - - sample_files - - samples - - sequencing_experiments - - sequencing_process_files - - sequencing_processes - - sequencing_protocols - - studies - - study_files - - trios - tree_root: true - Trio: - description: - A trio is defined by three individuals representing an individual - and their parents. - slot_usage: - alias: - alias: alias - description: The alias for an entity at the time of submission. - domain_of: - - AliasMixin - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - identifier: true - owner: Trio - range: string - required: true - child: - alias: child - description: The child of two individuals. - domain_of: - - Trio - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - owner: Trio - range: Individual - required: true - father: - alias: father - description: The father of an individual. - domain_of: - - Trio - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - owner: Trio - range: Individual - required: true - mother: - alias: mother - description: The mother of an individual. - domain_of: - - Trio - from_schema: https://w3id.org/GHGA-Submission-Metadata-Schema - inlined: false - owner: Trio - range: Individual - required: true - slots: - - mother - - father - - child - - alias -default_curi_maps: - - obo_context - - idot_context - - semweb_context -default_prefix: GHGA -default_range: string -description: - The submission centric metadata schema for the German Human Genome-Phenome - Archive (GHGA). -enums: - AgeRangeEnum: - description: Enum to capture the age range that an Indiviudal belongs to. - permissible_values: - 0_TO_5: - description: Age between 0 to 5. - 11_TO_15: - description: Age between 11 to 15. - 16_TO_20: - description: Age between 16 to 20. - 21_TO_25: - description: Age between 21 to 25. - 26_TO_30: - description: Age between 26 to 30. - 31_TO_35: - description: Age between 31 to 35. - 36_TO_40: - description: Age between 36 to 40. - 41_TO_45: - description: Age between 41 to 45. - 46_TO_50: - description: Age between 46 to 50. - 51_TO_55: - description: Age between 51 to 55. - 56_TO_60: - description: Age between 56 to 60. - 61_TO_65: - description: Age between 61 to 65. - 66_TO_70: - description: Age between 66 to 70. - 6_TO_10: - description: Age between 6 to 10. - 71_TO_75: - description: Age between 71 to 75. - 76_TO_80: - description: Age between 76 to 80. - 81_OR_OLDER: - description: Age above 80. - UNKNOWN: - description: Age range unknown. - AncestryEnum: - description: Permitted values for ancestry - reachable_from: - include_self: false - source_nodes: - - HANCESTRO:0004 - source_ontology: http://purl.obolibrary.org/obo/hancestro/releases/2022-05-12/hancestro.owl - CaseControlStatusEnum: - description: - Enum to capture whether a condition corresponds to a case or a control - condition. - permissible_values: - NEITHER_CASE_OR_CONTROL_STATUS: - meaning: NCIT:C99273 - PROBABLE_CASE_STATUS: - meaning: NCIT:C99271 - PROBABLE_CONTROL_STATUS: - meaning: NCIT:C99272 - TRUE_CASE_STATUS: - meaning: NCIT:C99269 - TRUE_CONTROL_STATUS: - meaning: NCIT:C99270 - UNABLE_TO_ASSESS_CASE_OR_CONTROL_STATUS: - meaning: NCIT:C99274 - reachable_from: - include_self: false - source_nodes: - - NCIT:C99268 - source_ontology: http://purl.obolibrary.org/obo/ncit/releases/2022-08-19/ncit.owl - DataUseModifierEnum: - description: Permitted values for data use modifier - permissible_values: - clinical care use: - meaning: DUO:0000043 - collaboration required: - meaning: DUO:0000020 - ethics approval required: - meaning: DUO:0000021 - genetic studies only: - meaning: DUO:0000016 - geographical restriction: - meaning: DUO:0000022 - institution specific restriction: - meaning: DUO:0000028 - no general methods research: - meaning: DUO:0000015 - non-commercial use only: - meaning: DUO:0000046 - not for profit organisation use only: - meaning: DUO:0000045 - not for profit, non commercial use only: - meaning: DUO:0000018 - population origins or ancestry research prohibited: - meaning: DUO:00000044 - project specific restriction: - meaning: DUO:0000027 - publication moratorium: - meaning: DUO:0000024 - publication required: - meaning: DUO:0000019 - research specific restrictions: - meaning: DUO:0000012 - return to database or resource: - meaning: DUO:0000029 - time limit on use: - meaning: DUO:0000025 - user specific restriction: - meaning: DUO:0000026 - reachable_from: - include_self: false - source_nodes: - - DUO:0000017 - source_ontology: http://purl.obolibrary.org/obo/duo/releases/2021-02-23/duo.owl - DataUsePermissionEnum: - description: Permitted values for data use permission - permissible_values: - disease specific research: - meaning: DUO:0000007 - general research use: - meaning: DUO:0000042 - health or medical or biomedical research: - meaning: DUO:0000006 - no restriction: - meaning: DUO:0000004 - population origins or ancestry research only: - meaning: DUO:0000011 - reachable_from: - include_self: false - source_nodes: - - DUO:0000001 - source_ontology: http://purl.obolibrary.org/obo/duo/releases/2021-02-23/duo.owl - DiseaseOrHealthyEnum: - description: - Enum to capture whether a condition corresponds to a disease or a - healthy state. - permissible_values: - DISEASE: - description: Disease state. - HEALTHY: - description: Healthy state. - NOT_APPLICABLE: - description: The distinction is not applicaple. - EndBiasEnum: - description: Permitted values for end bias - permissible_values: - 3_PRIME_END: {} - 5_PRIME_END: {} - FULL_LENGTH: {} - FileFormatEnum: - description: Enum to capture file types. - permissible_values: - AGP: {} - BAI: {} - BAM: {} - BCF: {} - BED: {} - CRAI: {} - CRAM: {} - CSV: {} - FASTA: {} - FASTQ: {} - GFF: {} - HDF5: {} - INFO: {} - JSON: {} - MD: {} - OTHER: {} - PED: {} - SAM: {} - SFF: {} - SRF: {} - TAB: {} - TABIX: {} - TSV: {} - TXT: {} - VCF: {} - WIG: {} - FlowCellTypeEnum: - description: Permitted values for flow cell type - permissible_values: - FLONGLE: {} - GRID_ION: {} - ILLUMINA_NOVA_SEQ_S2: {} - ILLUMINA_NOVA_SEQ_S4: {} - MIN_ION: {} - OTHER: {} - PROMETH_ION: {} - ForwardOrReverseEnum: - description: - Enum to capture whether the reads from paired-end sequencing are - forward (R1) or reverse (R2). - permissible_values: - FORWARD: - description: The reads are forward (R1) reads - REVERSE: - description: The reads are reverse (R2) reads - GeographicalRegionEnum: - description: Permitted values for geographical region - reachable_from: - include_self: false - source_nodes: - - HANCESTRO:0002 - source_ontology: http://purl.obolibrary.org/obo/hancestro/releases/2022-05-12/hancestro.owl - IndexReadEnum: - description: - Permitted Values to indicate the location of a sequence component - in a read or index - permissible_values: - INDEX1: {} - INDEX2: {} - READ1: {} - READ2: {} - IndividualSexEnum: - description: - The sex of an Individual as as defined in a specific medical and - clinical context. - permissible_values: - FEMALE_SEX_FOR_CLINICAL_USE: - meaning: GSSO:011317 - IMAGING_SEX: - meaning: GSSO:009318 - MALE_SEX_FOR_CLINICAL_USE: - meaning: GSSO:011318 - SPECIFIED_SEX_FOR_CLINICAL_USE: - meaning: GSSO:011319 - UNKNOWN_SEX_FOR_CLINICAL_USE: - meaning: GSSO:011320 - reachable_from: - include_self: false - source_nodes: - - GSSO:009428 - source_ontology: http://purl.obolibrary.org/obo/gsso/releases/2.0.5/gsso.owl - InstrumentModelEnum: - description: Permitted values for instrument model - permissible_values: - DNBSEQ_G400: {} - DNBSEQ_G400_FAST: {} - DNBSEQ_G50: {} - DNBSEQ_T7: {} - ILLUMINA_GENOME_ANALYZER: {} - ILLUMINA_GENOME_ANALYZER_II: {} - ILLUMINA_GENOME_ANALYZER_IIX: {} - ILLUMINA_HI_SCAN: {} - ILLUMINA_HI_SCAN_SQ: {} - ILLUMINA_HI_SEQ_1000: {} - ILLUMINA_HI_SEQ_1500: {} - ILLUMINA_HI_SEQ_2000: {} - ILLUMINA_HI_SEQ_2500: {} - ILLUMINA_HI_SEQ_3000: {} - ILLUMINA_HI_SEQ_4000: {} - ILLUMINA_HI_SEQ_X: {} - ILLUMINA_HI_SEQ_X_FIVE: {} - ILLUMINA_HI_SEQ_X_TEN: {} - ILLUMINA_I_SCAN: {} - ILLUMINA_I_SEQ_100: {} - ILLUMINA_MINI_SEQ: {} - ILLUMINA_MI_SEQ: {} - ILLUMINA_MI_SEQ_DX: {} - ILLUMINA_MI_SEQ_DX_RESEARCH_MODE: {} - ILLUMINA_NEXT_SEQ_1000: {} - ILLUMINA_NEXT_SEQ_2000: {} - ILLUMINA_NEXT_SEQ_500: {} - ILLUMINA_NEXT_SEQ_550: {} - ILLUMINA_NEXT_SEQ_550_DX: {} - ILLUMINA_NEXT_SEQ_550_DX_RESEARCH_MODE: {} - ILLUMINA_NOVA_SEQ_6000: {} - ONT_GRID_ION: {} - ONT_MIN_ION: {} - ONT_PROMETH_ION: {} - OTHER: {} - PAC_BIO_ONSO: {} - PAC_BIO_REVIO: {} - PAC_BIO_RS: {} - PAC_BIO_RS_II: {} - PAC_BIO_SEQUEL: {} - PAC_BIO_SEQUEL_II: {} - PAC_BIO_SEQUEL_IIE: {} - ULTIMA_UG_100: {} - IsolationEnum: - description: Describes how biomaterial was isolated. - reachable_from: - include_self: false - source_nodes: - - SNOMED:118292001 - source_ontology: http://snomed.info/sct/900000000000207008/version/20200131 - KaryotypeEnum: - description: Permitted values for karyotype - permissible_values: - 46_XX: {} - 46_XY: {} - OTHER: {} - LibraryPreparationKitRetailNameEnum: - description: Permitted values for library preparation kit retail name - permissible_values: - 10X_GENOMICS_CHROMIUM_SINGLE_CELL_3_V2: {} - 10X_GENOMICS_CHROMIUM_SINGLE_CELL_3_V3: {} - ACCEL_NGS_2_S_PLUS_DNA_LIBRARY_KIT: {} - ACCEL_NGS_METHYL_SEQ_DNA: {} - AGILENT_STRAND_SPECIFIC_RNA: {} - AGILENT_SURE_SELECT_CUSTOM_ENRICHMENT_KIT: {} - AGILENT_SURE_SELECT_V3: {} - AGILENT_SURE_SELECT_V4: {} - AGILENT_SURE_SELECT_V4_UT_RS: {} - AGILENT_SURE_SELECT_V5: {} - AGILENT_SURE_SELECT_V5_UT_RS: {} - AGILENT_SURE_SELECT_V6: {} - AGILENT_SURE_SELECT_V6_ONE: {} - AGILENT_SURE_SELECT_V6_UT_RS: {} - AGILENT_SURE_SELECT_V7: {} - AGILENT_SURE_SELECT_WGS: {} - AGILENT_SURE_SELECT_XT_HS_HUMAN_ALL_EXON_V7: {} - AGILENT_SURE_SELECT_XT_MOUSE_ALL_EXON: {} - AGILENT_XT_HS_SURE_SELECT_CLINICAL_RESEARCH_EXOME_V2: {} - AVENIO_CT_DNA_KIT: {} - IDT_X_GEN_EXOME_RESEARCH_PANEL: {} - ILLUMINA_DNA_PCR_FREE: {} - ILLUMINA_NEXTERA_DNA_FLEX: {} - ILLUMINA_NEXTERA_EXOME_ENRICHMENT_KIT: {} - ILLUMINA_STRANDED_M_RNA_PREP_LIGATION: {} - ILLUMINA_TRUSEQ_PCR_FREE_METHYL: {} - ILLUMINA_TRU_SEQ_CH_IP_SAMPLE_PREPARATION_KIT: {} - ILLUMINA_TRU_SEQ_CUSTOM_AMPLICON: {} - ILLUMINA_TRU_SEQ_DNA: {} - ILLUMINA_TRU_SEQ_NANO_DNA: {} - ILLUMINA_TRU_SEQ_NANO_DNA_HT: {} - ILLUMINA_TRU_SEQ_NANO_DNA_LT: {} - ILLUMINA_TRU_SEQ_NANO_FFPE_DNA: {} - ILLUMINA_TRU_SEQ_PCR_FREE: {} - ILLUMINA_TRU_SEQ_PCR_FREE_DNA: {} - ILLUMINA_TRU_SEQ_RNA: {} - ILLUMINA_TRU_SEQ_SMALL_RNA_KIT: {} - ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_KIT: {} - ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_LIBRARY_PREP_GLOBIN: {} - ILLUMINA_TRU_SEQ_STRANDED_TOTAL_RNA_RIBO_MINUS_GOLD: {} - ILLUMINA_VAHTS_TOTAL_RNA: {} - INFORM_ONCO_PANEL_HG19: {} - ION_AMPLI_SEQ_EXOME_KIT: {} - KAPA_HIFI_HOT_START_READYMIX: {} - KAPA_HYPER_PLUS_KIT: {} - KAPA_HYPER_PREP_KIT: {} - KAPA_M_RNA_HYPER_PREP_KIT: {} - MAGNETIC_METHYLATED_DNA_IMMUNOPRECIPITATION_DIAGNODE: {} - NEBNEXT_ULTRA_DIRECTIONAL_RNA: {} - NEB_NEXT_CH_IP_SEQ_LIBRARY_PREP_KIT_FOR_ILLUMINA: {} - NEB_NEXT_GLOBIN_R_RNA_DEPLETION_KIT_HUMAN_MOUSE_RAT_WITH_BEADS: {} - NEB_NEXT_POLY_A_M_RNA_MAGNETIC_ISOLATION_MODULE: {} - NEB_NEXT_RNA_ULTRA_II_STRANDED: {} - NEB_NEXT_ULTRA_DNA: {} - NEB_NEXT_ULTRA_DNA_LIBRARY_PREP_KIT_FOR_ILLUMINA: {} - NEB_NEXT_ULTRA_II_DIRECTIONAL_RNA: {} - NEB_NEXT_ULTRA_II_DNA_LIBRARY_PREP_KIT_FOR_ILLUMINA: {} - NEXTERA_XT_DNA: {} - OLIGO_D_T: {} - PICO_METHYL_SEQ: {} - SMART_SEQ_V4_ULTRA_LOW_INPUT_RNA_KIT: {} - SMAR_TER_STRANDED_TOTAL_RNA_SEQ_KIT: {} - SMAR_TER_ULTRA_LOW_INPUT_RNA_AND_NEB_NEXT_CH_IP_SEQ: {} - SMAR_TER_ULTRA_LOW_INPUT_RNA_V4_AND_NEB_NEXT_CH_IP_SEQ: {} - SMAR_TSEQ2_TAG: {} - SUPER_SCRIPT_II_RT_BULK: {} - SURE_CELL_ATAC_SEQ_LIBRARY_PREP_KIT: {} - SURE_SELECT_EUROFINS_ENRICHMENT_CUSTOM_01: {} - TAKARA_CLONTECH_SMAR_TER_STRANDED_TOTAL_RNA: {} - TAKARA_SMAR_TER_PREP_X_DNA_LIBRARY_KIT_ACTIVE_MOTIF_CUSTOM_INDICES_01: {} - TEMPLATE_SWITCHING_RT_ENZYME_MIX_BULK: {} - TWIST_HUMAN_CORE_EXOME_PLUS_KIT: {} - ULTRALOW_METHYL_SEQ_WITH_TRUE_METHYL_OX_BS_MODULE: {} - LibraryPreparationLibraryLayoutEnum: - description: Single-end vs paired-end library - permissible_values: - PE: {} - SE: {} - LibraryPreparationLibrarySelectionEnum: - description: Permitted vocabulary for library selections - permissible_values: - 5_METHYLCYTIDINE_ANTIBODY_METHOD: {} - CAGE_METHOD: {} - CF_H_METHOD: {} - CF_M_METHOD: {} - CF_S_METHOD: {} - CF_T_METHOD: {} - CH_IP_SEQ_METHOD: {} - C_DNA_METHOD: {} - D_NASE_METHOD: {} - HMPR_METHOD: {} - HYBRID_SELECTION_METHOD: {} - INVERSE_R_RNA: {} - MBD2_PROTEIN_METHYL_CP_G_BINDING_DOMAIN_METHOD: {} - MDA: {} - MF_METHOD: {} - MSLL_METHOD: {} - M_NASE_METHOD: {} - OLIGO_D_T: {} - OTHER: {} - PADLOCK_PROBES_CAPTURE_METHOD: {} - PCR_METHOD: {} - POLY_A: {} - RACE_METHOD: {} - RANDOM_METHOD: {} - RANDOM_PCR_METHOD: {} - REDUCED_REPRESENTATION_METHOD: {} - REPEAT_FRACTIONATION: {} - RESTRICTION_DIGEST_METHOD: {} - RT_PCR_METHOD: {} - SIZE_FRACTIONATION_METHOD: {} - UNSPECIFIED: {} - LibraryPreparationLibraryTypeEnum: - description: The type of the library - permissible_values: - ATAC: {} - CHROMOSOME_CONFORMATION_CAPTURE: {} - METHYLATION: {} - MI_RNA: {} - M_RNA: {} - NC_RNA: {} - TOTAL_RNA: {} - WCS: {} - WGS: {} - WXS: {} - LibraryPreparationRNASeqStrandednessEnum: - description: Permitted values for library preparation RNASeq strandedness - permissible_values: - ANTISENSE: {} - BOTH: {} - SENSE: {} - MutantOrWildtypeEnum: - description: - Enum to capture whether a condition corresponds to a mutant or a - wildtype. - permissible_values: - MUTANT: - description: Mutant state. - NOT_APPLICABLE: - description: The distinction is not applicaple. - WILDTYPE: - description: Wildtype state. - PhenotypicFeaturesEnum: - description: An enum describing permissible phenotype descriptors - include: - - reachable_from: - include_self: false - source_ontology: http://www.ebi.ac.uk/efo/releases/v3.54.0/efo.owl - - reachable_from: - include_self: false - source_ontology: https://www.orphadata.com/data/ontologies/ordo/last_version/ORDO_en_4.2.owl - - reachable_from: - include_self: false - source_nodes: - - SNOMED:404684003 - source_ontology: http://snomed.info/sct/900000000000207008/version/20200131 - - reachable_from: - include_self: false - source_ontology: http://purl.obolibrary.org/obo/mondo/releases/2022-12-01/mondo.owl - - reachable_from: - include_self: false - source_ontology: http://purl.obolibrary.org/obo/hp/releases/2023-04-05/hp-international.owl - PrimerEnum: - description: Permitted values for primer - permissible_values: - GENE_SPECIFIC: {} - OLIGO_D_T: {} - OTHER: {} - RANDOM: {} - SampleBarcodeReadEnum: - description: Permitted values for sample barcode read - permissible_values: - INDEX1: {} - INDEX1_AND_INDEX2: {} - OTHER: {} - SampleTypeEnum: - description: The type of a sample - permissible_values: - CF_DNA: {} - DEPLETED_RNA: {} - DS_DNA_CH_IP: {} - FFPE_DNA: {} - FFPE_TOTAL_RNA: {} - GENOMIC_DNA: {} - PCR_PRODUCTS: {} - POLY_A_RNA: {} - SINGLE_CELL_DNA: {} - SINGLE_CELL_RNA: {} - SMALL_RNA: {} - TOTAL_RNA: {} - StudyTypeEnum: - description: Enum to capture the type of a study. - permissible_values: - CANCER_GENOMICS: {} - EPIGENETICS: {} - EXOME_SEQUENCING: {} - FORENSIC_GENETICS: {} - GENE_REGULATION_STUDY: {} - GWAS: {} - METAGENOMICS: {} - OTHER: {} - PALEO_GENOMICS: {} - POOLED_CLONE_SEQUENCING: {} - POPULATION_GENOMICS: {} - RESEQUENCING: {} - RNASEQ: {} - SYNTHETIC_GENOMICS: {} - TRANSCRIPTOME_ANALYSIS: {} - WHOLE_GENOME_SEQUENCING: {} - TissueEnum: - description: A tissue as described in the BRENDA ontology. - reachable_from: - source_ontology: http://purl.obolibrary.org/obo/bto/releases/2021-10-26/bto.owl - VitalStatusEnum: - description: Enum to capture the vital status of an individual. - permissible_values: - ALIVE: - description: Showing characteristics of life; displaying signs of life. - DECEASED: - description: The cessation of life. - UNKNOWN: - description: Vital status is unknown. -id: https://w3id.org/GHGA-Submission-Metadata-Schema -name: GHGA-Submission-Metadata-Schema -prefixes: - COB: http://purl.obolibrary.org/obo/COB_ - DUO: http://purl.obolibrary.org/obo/duo/releases/2021-02-23/duo.owl - EFO: http://www.ebi.ac.uk/efo/EFO_ - GHGA: https://w3id.org/GHGA/ - GSSO: http://purl.obolibrary.org/obo/gsso/releases/2.0.5/gsso.owl - HANCESTRO: http://purl.obolibrary.org/obo/HANCESTRO_ - NCIT: http://purl.obolibrary.org/obo/ncit/releases/2022-08-19/ncit.owl - SIO: http://semanticscience.org/resource/SIO_ - biolink: https://w3id.org/biolink/vocab/ - linkml: https://w3id.org/linkml/ - schema: http://schema.org/ - shex: http://www.w3.org/ns/shex# - xsd: http://www.w3.org/2001/XMLSchema# -slots: - abstract: {} - affiliations: {} - age_at_sampling: {} - alias: {} - analyses: {} - analysis: {} - analysis_process: {} - analysis_process_output_files: {} - analysis_processes: {} - ancestries: {} - attributes: {} - author: {} - biospecimen: {} - biospecimens: {} - case_control_status: {} - cell_barcode_offset: {} - cell_barcode_read: {} - cell_barcode_size: {} - checksum: {} - checksum_type: {} - child: {} - condition: {} - conditions: {} - data_access_committee: {} - data_access_committees: {} - data_access_policies: {} - data_access_policy: {} - data_use_modifiers: {} - data_use_permission: {} - dataset: {} - datasets: {} - description: {} - disease_or_healthy: {} - doi: {} - email: {} - end_bias: {} - father: {} - flow_cell_id: {} - flow_cell_type: {} - format: {} - forward_or_reverse: {} - geographical_region: {} - index_sequence: {} - individual: {} - individuals: {} - institute: {} - instrument_model: {} - isolation: {} - journal: {} - karyotype: {} - key: {} - key_type: {} - lane_number: {} - library_layout: {} - library_name: {} - library_preparation: {} - library_preparation_kit_manufacturer: {} - library_preparation_kit_retail_name: {} - library_preparation_protocol: {} - library_preparation_protocols: {} - library_selection: {} - library_type: {} - mother: {} - mutant_or_wildtype: {} - name: {} - phenotypic_features: {} - policy_text: {} - policy_url: {} - primer: {} - publications: {} - reference_chromosome: {} - reference_genome: {} - rnaseq_strandedness: {} - sample: {} - sample_barcode_read: {} - sample_files: {} - sample_input_files: {} - samples: {} - sequencing_center: {} - sequencing_experiment: {} - sequencing_experiments: {} - sequencing_lane_id: {} - sequencing_machine_id: {} - sequencing_process: {} - sequencing_process_files: {} - sequencing_process_input_files: {} - sequencing_processes: {} - sequencing_protocol: {} - sequencing_protocols: {} - sequencing_read_length: {} - sequencing_run_id: {} - sex: {} - size: {} - storage: {} - studies: {} - study: {} - study_files: {} - study_input_files: {} - target_coverage: {} - target_regions: {} - tissue: {} - title: {} - trios: {} - type: {} - types: {} - umi_barcode_offset: {} - umi_barcode_read: {} - umi_barcode_size: {} - value: {} - value_type: {} - vital_status_at_sampling: {} - xref: {} - year: {} -subsets: - ontology: - description: - This slot is part of an ontology which is currently not otherwise - encoded in the schema. -types: - boolean: - base: Bool - description: A binary (true or false) value - exact_mappings: - - schema:Boolean - repr: bool - uri: xsd:boolean - notes: - - If you are authoring schemas in LinkML YAML, the type is referenced with the lower case "boolean". - curie: - base: Curie - comments: - - in RDF serializations this MUST be expanded to a URI - - in non-RDF serializations MAY be serialized as the compact representation - conforms_to: https://www.w3.org/TR/curie/ - description: a compact URI - repr: str - uri: xsd:string - notes: - - If you are authoring schemas in LinkML YAML, the type is referenced with the lower - case "curie". - date: - base: XSDDate - description: a date (year, month and day) in an idealized calendar - exact_mappings: - - schema:Date - repr: str - uri: xsd:date - notes: - - URI is dateTime because OWL reasoners don't work with straight date or time - - If you are authoring schemas in LinkML YAML, the type is referenced with the lower - case "date". - date_or_datetime: - base: str - description: Either a date or a datetime - repr: str - uri: linkml:DateOrDatetime - notes: - - If you are authoring schemas in LinkML YAML, the type is referenced with the lower - case "date_or_datetime". - datetime: - base: XSDDateTime - description: The combination of a date and time - exact_mappings: - - schema:DateTime - repr: str - uri: xsd:dateTime - notes: - - If you are authoring schemas in LinkML YAML, the type is referenced with the lower - case "datetime". - decimal: - base: Decimal - broad_mappings: - - schema:Number - description: - A real number with arbitrary precision that conforms to the xsd:decimal - specification - uri: xsd:decimal - notes: - - If you are authoring schemas in LinkML YAML, the type is referenced with the lower - case "decimal". - double: - base: float - close_mappings: - - schema:Float - description: A real number that conforms to the xsd:double specification - uri: xsd:double - notes: - - If you are authoring schemas in LinkML YAML, the type is referenced with the lower - case "double". - float: - base: float - description: A real number that conforms to the xsd:float specification - exact_mappings: - - schema:Float - uri: xsd:float - notes: - - If you are authoring schemas in LinkML YAML, the type is referenced with the lower - case "float". - integer: - base: int - description: An integer - exact_mappings: - - schema:Integer - uri: xsd:integer - notes: - - If you are authoring schemas in LinkML YAML, the type is referenced with the lower - case "integer". - ncname: - base: NCName - description: Prefix part of CURIE - repr: str - uri: xsd:string - notes: - - If you are authoring schemas in LinkML YAML, the type is referenced with the lower - case "ncname". - nodeidentifier: - base: NodeIdentifier - description: A URI, CURIE or BNODE that represents a node in a model. - repr: str - uri: shex:nonLiteral - notes: - - If you are authoring schemas in LinkML YAML, the type is referenced with the lower - case "nodeidentifier". - objectidentifier: - base: ElementIdentifier - comments: - - Used for inheritance and type checking - description: A URI or CURIE that represents an object in the model. - notes: - - If you are authoring schemas in LinkML YAML, the type is referenced with the lower - case "objectidentifier". - repr: str - uri: shex:iri - string: - base: str - description: A character string - exact_mappings: - - schema:Text - notes: - - In RDF serializations, a slot with range of string is treated as a literal or - type xsd:string. If you are authoring schemas in LinkML YAML, the type is referenced - with the lower case "string". - uri: xsd:string - time: - base: XSDTime - description: A time object represents a (local) time of day, independent of any particular day - exact_mappings: schema:Time - notes: - - URI is dateTime because OWL reasoners do not work with straight date or time - - If you are authoring schemas in LinkML YAML, the type is referenced with the lower - case "time". - repr: str - uri: xsd:time - uri: - base: URI - close_mappings: - - schema:URL - comments: - - in RDF serializations a slot with range of uri is treated as a literal or type - xsd:anyURI unless it is an identifier or a reference to an identifier, in which - case it is translated directly to a node - conforms_to: https://www.ietf.org/rfc/rfc3987.txt - description: a complete URI - repr: str - uri: xsd:anyURI - notes: - - If you are authoring schemas in LinkML YAML, the type is referenced with the lower - case "uri". - uriorcurie: - base: URIorCURIE - description: a URI or a CURIE - repr: str - uri: xsd:anyURI - notes: - - If you are authoring schemas in LinkML YAML, the type is referenced with the lower - case "uriorcurie". - sparqlpath: - base: str - conforms_to: https://www.w3.org/TR/sparql11-query/#propertypaths - description: A string encoding a SPARQL Property Path. The value of the string MUST conform to SPARQL syntax and SHOULD dereference to zero or more valid objects within the current instance document when encoded as RDF. - notes: - - If you are authoring schemas in LinkML YAML, the type is referenced with the lower case "sparqlpath". - repr: str - uri: xsd:string - jsonpath: - base: str - conforms_to: https://www.ietf.org/archive/id/draft-goessner-dispatch-jsonpath-00.html - description: A string encoding a JSON Path. The value of the string MUST conform to JSON Point syntax and SHOULD dereference to zero or more valid objects within the current instance document when encoded in tree form. - notes: - - If you are authoring schemas in LinkML YAML, the type is referenced with the lower case "jsonpath". - repr: str - uri: xsd:string - jsonpointer: - base: str - conforms_to: https://datatracker.ietf.org/doc/html/rfc6901 - description: A string encoding a JSON Pointer. The value of the string MUST conform to JSON Point syntax and SHOULD dereference to a valid object within the current instance document when encoded in tree form. - notes: - - If you are authoring schemas in LinkML YAML, the type is referenced with the lower case "jsonpointer". - repr: str - uri: xsd:string -version: 1.1.0 diff --git a/tests/fixtures/workflows.py b/tests/fixtures/workflows.py index 10ddce49..5c56fcf3 100644 --- a/tests/fixtures/workflows.py +++ b/tests/fixtures/workflows.py @@ -25,7 +25,6 @@ from metldata.builtin_transformations.infer_references import ( REFERENCE_INFERENCE_TRANSFORMATION, ) -from metldata.builtin_workflows.ghga_archive import GHGA_ARCHIVE_WORKFLOW from metldata.custom_types import Json from metldata.event_handling.models import SubmissionAnnotation from metldata.model_utils.essentials import MetadataModel @@ -155,7 +154,6 @@ def _read_all_test_cases( WORKFLOWS_BY_NAME: dict[str, WorkflowDefinition] = { "example_workflow": EXAMPLE_WORKFLOW_DEFINITION, - "ghga_archive_workflow": GHGA_ARCHIVE_WORKFLOW, } WORKFLOW_TEST_CASES = _read_all_test_cases(workflows_by_name=WORKFLOWS_BY_NAME) diff --git a/tests/fixtures/workflows/ghga_archive_workflow/simple/artifacts/embedded_public/transformed_metadata.yaml b/tests/fixtures/workflows/ghga_archive_workflow/simple/artifacts/embedded_public/transformed_metadata.yaml deleted file mode 100644 index eaa425fd..00000000 --- a/tests/fixtures/workflows/ghga_archive_workflow/simple/artifacts/embedded_public/transformed_metadata.yaml +++ /dev/null @@ -1,128 +0,0 @@ -datasets: - - accession: TESTD0000000001 - experiment_files: - - TESTF0000000003 - - TESTF0000000004 - experiments: - - TESTE0000000001 - files: - - TESTF0000000001 - - TESTF0000000002 - - TESTF0000000003 - - TESTF0000000004 - sample_files: - - TESTF0000000001 - - TESTF0000000002 - samples: - - TESTS0000000001 -embedded_dataset: - - accession: TESTD0000000001 - experiment_files: - - accession: TESTF0000000003 - experiment: - accession: TESTE0000000001 - description: A test experiment. - files: - - TESTF0000000003 - - TESTF0000000004 - samples: - - TESTS0000000001 - - TESTS0000000002 - format: fastq - size: 92345234 - - accession: TESTF0000000004 - experiment: - accession: TESTE0000000001 - description: A test experiment. - files: - - TESTF0000000003 - - TESTF0000000004 - samples: - - TESTS0000000001 - - TESTS0000000002 - format: fastq - size: 234243 - experiments: - - TESTE0000000001 - files: - - TESTF0000000001 - - TESTF0000000002 - - TESTF0000000003 - - TESTF0000000004 - sample_files: - - accession: TESTF0000000001 - format: fastq - sample: - accession: TESTS0000000001 - description: A tests sample. - experiment: - accession: TESTE0000000001 - description: A test experiment. - files: - - TESTF0000000003 - - TESTF0000000004 - samples: - - TESTS0000000001 - - TESTS0000000002 - files: - - TESTF0000000001 - - TESTF0000000002 - size: 299943 - - accession: TESTF0000000002 - format: fastq - sample: - accession: TESTS0000000001 - description: A tests sample. - experiment: - accession: TESTE0000000001 - description: A test experiment. - files: - - TESTF0000000003 - - TESTF0000000004 - samples: - - TESTS0000000001 - - TESTS0000000002 - files: - - TESTF0000000001 - - TESTF0000000002 - size: 234243 - samples: - - TESTS0000000001 -experiment_files: - - accession: TESTF0000000003 - experiment: TESTE0000000001 - format: fastq - size: 92345234 - - accession: TESTF0000000004 - experiment: TESTE0000000001 - format: fastq - size: 234243 -experiments: - - accession: TESTE0000000001 - description: A test experiment. - files: - - TESTF0000000003 - - TESTF0000000004 - samples: - - TESTS0000000001 - - TESTS0000000002 -sample_files: - - accession: TESTF0000000001 - format: fastq - sample: TESTS0000000001 - size: 299943 - - accession: TESTF0000000002 - format: fastq - sample: TESTS0000000001 - size: 234243 -samples: - - accession: TESTS0000000001 - description: A tests sample. - experiment: TESTE0000000001 - files: - - TESTF0000000001 - - TESTF0000000002 - - accession: TESTS0000000002 - description: A tests sample. - experiment: TESTE0000000001 - files: [] diff --git a/tests/fixtures/workflows/ghga_archive_workflow/simple/config.yaml b/tests/fixtures/workflows/ghga_archive_workflow/simple/config.yaml deleted file mode 100644 index 82673e11..00000000 --- a/tests/fixtures/workflows/ghga_archive_workflow/simple/config.yaml +++ /dev/null @@ -1,108 +0,0 @@ -normalize_model: {} -aggregate_stats: - aggregations: - - input: Dataset - output: DatasetStats - operations: - - output_path: accession - input_paths: - - accession - function: StringCopy - - output_path: file_formats.stats - input_paths: - - sample_files.format - function: StringElementCount - visit_only_once: - - SampleFile -add_accessions: - accession_slot_name: accession - accession_slot_description: The accession for an entity. -embed_restricted: - embedding_profiles: - - target_class: EmbeddedDataset - source_class: Dataset - description: "Fully embedded dataset." - embedded_references: - sample_files: - target_class: EmbeddedSampleFile - source_class: SampleFile - description: "Fully sample file." - embedded_references: - sample: - target_class: EmbeddedSample - source_class: Sample - description: "Fully embedded sample." - embedded_references: - experiment: Experiment - experiment_files: - target_class: EmbeddedExperimentFile - source_class: ExperimentFile - description: "Fully experiment file." - embedded_references: - experiment: Experiment -infer_multiway_references: - inferred_ref_map: - Dataset: - samples: - path: "Dataset(sample_files)>SampleFile(sample)>Sample" - multivalued: true - experiments: - path: "Dataset(experiment_files)>ExperimentFile(experiment)>Experiment" - multivalued: true - Experiment: - samples: - path: "Experiment<(experiment)Sample" - multivalued: true - files: - path: "Experiment<(experiment)ExperimentFile" - multivalued: true - Sample: - files: - path: "Sample<(sample)SampleFile" - multivalued: true -merge_dataset_file_lists: - merge_instructions: - - class_name: Dataset - source_slots: [sample_files, experiment_files] - target_slot: files - target_description: >- - All files associated with the dataset. -remove_restricted_metadata: - slots_to_delete: - SampleFile: - - alias - - filename - - checksum - ExperimentFile: - - alias - - filename - - checksum - Sample: - - alias - Dataset: - - alias - Experiment: - - alias -embed_public: - embedding_profiles: - - target_class: EmbeddedDataset - source_class: Dataset - description: "Fully embedded dataset." - embedded_references: - sample_files: - target_class: EmbeddedSampleFile - source_class: SampleFile - description: "Fully sample file." - embedded_references: - sample: - target_class: EmbeddedSample - source_class: Sample - description: "Fully embedded sample." - embedded_references: - experiment: Experiment - experiment_files: - target_class: EmbeddedExperimentFile - source_class: ExperimentFile - description: "Fully experiment file." - embedded_references: - experiment: Experiment diff --git a/tests/fixtures/workflows/ghga_archive_workflow/simple/metadata_annotation.yaml b/tests/fixtures/workflows/ghga_archive_workflow/simple/metadata_annotation.yaml deleted file mode 100644 index 3dc73a4d..00000000 --- a/tests/fixtures/workflows/ghga_archive_workflow/simple/metadata_annotation.yaml +++ /dev/null @@ -1,14 +0,0 @@ -accession_map: - sample_files: - test_sample_01_R1: TESTF0000000001 - test_sample_01_R2: TESTF0000000002 - experiment_files: - test_sample_02_R1: TESTF0000000003 - test_sample_02_R2: TESTF0000000004 - datasets: - test_dataset_01: TESTD0000000001 - samples: - test_sample_01: TESTS0000000001 - test_sample_02: TESTS0000000002 - experiments: - test_experiment_01: TESTE0000000001 diff --git a/tests/fixtures/workflows/ghga_archive_workflow/simple/original_metadata.yaml b/tests/fixtures/workflows/ghga_archive_workflow/simple/original_metadata.yaml deleted file mode 100644 index 95128c89..00000000 --- a/tests/fixtures/workflows/ghga_archive_workflow/simple/original_metadata.yaml +++ /dev/null @@ -1,44 +0,0 @@ -sample_files: - - alias: test_sample_01_R1 - filename: test_sample_01_R1.fastq - format: fastq - checksum: 1c8aed294d5dec3740a175f6b655725fa668bfe41311e74f7ca9d85c91371b4e - size: 299943 - sample: test_sample_01 - - alias: test_sample_01_R2 - filename: test_sample_01_R2.fastq - format: fastq - checksum: de44d5e9d2103cd5f9de899a5c231430f5d05c66ecf17a2bb8daf1660a41994a - size: 234243 - sample: test_sample_01 -experiment_files: - - alias: test_sample_02_R1 - filename: test_sample_02_R1.fastq - format: fastq - checksum: 774a6e39ee77a74d841b13f0050dfcf97a6f260751bfc2c5282e35692e4ee6b1 - size: 92345234 - experiment: test_experiment_01 - - alias: test_sample_02_R2 - filename: test_sample_02_R2.fastq - format: fastq - checksum: 7e793b40583daca28a594d45bdc9218c04353581d5bbbecab88b13c068bba8a4 - size: 234243 - experiment: test_experiment_01 -datasets: - - alias: test_dataset_01 - sample_files: - - test_sample_01_R1 - - test_sample_01_R2 - experiment_files: - - test_sample_02_R1 - - test_sample_02_R2 -samples: - - alias: test_sample_01 - description: A tests sample. - experiment: test_experiment_01 - - alias: test_sample_02 - description: A tests sample. - experiment: test_experiment_01 -experiments: - - alias: test_experiment_01 - description: A test experiment. diff --git a/tests/fixtures/workflows/ghga_archive_workflow/simple/original_model.yaml b/tests/fixtures/workflows/ghga_archive_workflow/simple/original_model.yaml deleted file mode 100644 index 5040f249..00000000 --- a/tests/fixtures/workflows/ghga_archive_workflow/simple/original_model.yaml +++ /dev/null @@ -1,250 +0,0 @@ -id: https://w3id.org/Minimal-Model -name: Minimal-Model -version: 0.9.0 -prefixes: - linkml: https://w3id.org/linkml/ -imports: - - linkml:types - -default_range: string - -classes: - SampleFile: - slots: - - alias - - format - - size - - filename - - checksum - - sample - slot_usage: - alias: - required: true - identifier: true - format: - required: true - size: - required: true - filename: - required: true - checksum: - required: true - sample: - required: true - multivalued: false - inlined: false - - ExperimentFile: - slots: - - alias - - format - - size - - filename - - checksum - - experiment - slot_usage: - alias: - required: true - identifier: true - format: - required: true - size: - required: true - filename: - required: true - checksum: - required: true - experiment: - required: true - multivalued: false - inlined: false - - Dataset: - description: >- - A Dataset is a collection of Files. - slots: - - alias - - sample_files - - experiment_files - slot_usage: - alias: - required: true - identifier: true - sample_files: - required: true - multivalued: true - inlined: false - experiment_files: - required: true - multivalued: true - inlined: false - - Sample: - description: >- - A sample that was used to generate Files containing experiment data. - slots: - - alias - - description - - experiment - slot_usage: - alias: - required: true - identifier: true - description: - required: true - experiment: - required: true - multivalued: false - inlined: false - - Experiment: - description: >- - An experiment containing one or multiple samples. - slots: - - alias - - description - slot_usage: - alias: - required: true - identifier: true - description: - required: true - - Submission: - tree_root: true - description: >- - A grouping entity that represents information about one or more entities. - A submission can be considered as a set of inter-related (and inter-connected) - entities that represent a data submission to GHGA. - slots: - - sample_files - - experiment_files - - datasets - - samples - - experiments - slot_usage: - sample_files: - required: true - multivalued: true - inlined: true - inlined_as_list: true - experiment_files: - required: true - multivalued: true - inlined: true - inlined_as_list: true - datasets: - required: true - multivalued: true - inlined: true - inlined_as_list: true - samples: - required: true - multivalued: true - inlined: true - inlined_as_list: true - experiments: - required: true - multivalued: true - inlined: true - inlined_as_list: true - -slots: - alias: - description: The alias for an entity. - - description: - description: Description of an entity. - - sample_files: - description: >- - The sample files associated with an entity. - range: SampleFile - - experiment_files: - description: >- - The sample files associated with an entity. - range: ExperimentFile - - datasets: - description: >- - The datasets associated with an entity. - range: Dataset - - sample: - description: >- - The sample associated with an entity. - range: Sample - - samples: - description: >- - The samples associated with an entity. - range: Sample - - experiment: - description: >- - The experiment associated with an entity. - range: Experiment - - experiments: - description: >- - The experiments associated with an entity. - range: Experiment - - filename: - description: >- - The given filename. - - format: - description: >- - The format of the file: BAM, SAM, CRAM, BAI, etc. - range: file format enum - - size: - description: The size of a file in bytes. - range: integer - - checksum: - description: >- - A computed value which depends on the contents of a block of data and which is transmitted or - stored along with the data in order to detect corruption of the data. - The receiving system recomputes the checksum based upon the received data and compares this - value with the one sent with the data. If the two values are the same, the receiver has some confidence - that the data was received correctly. - -enums: - file format enum: - description: >- - Enum to capture file types. - permissible_values: - bam: - description: BAM File - complete_genomics: - description: Complete Genomics File - cram: - description: CRAM File - fasta: - description: Fasta File - fastq: - description: FastQ File - pacbio_hdf5: - description: PacBio HDF5 File - sff: - description: >- - Standard flowgram format used to encode results - of pyrosequencing from the 454 Life Sciences platform. - srf: - description: >- - SRF is a generic format for DNA sequence data. - vcf: - description: >- - VCF file for storing gene sequence variations. - txt: - description: >- - Text file. - pxf: - description: >- - Phenopacket file. - other: - description: >- - Other format. diff --git a/tests/load/__init__.py b/tests/load/__init__.py deleted file mode 100644 index 8d0aed92..00000000 --- a/tests/load/__init__.py +++ /dev/null @@ -1,17 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Test the load sub-package.""" diff --git a/tests/load/test_client.py b/tests/load/test_client.py deleted file mode 100644 index cfbd1c33..00000000 --- a/tests/load/test_client.py +++ /dev/null @@ -1,88 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Test the client module.""" - -import json -from uuid import uuid4 - -import pytest -from pytest_httpx import HTTPXMock - -from metldata.load.client import upload_artifacts_via_http_api -from metldata.load.collect import get_artifact_topic -from metldata.load.config import ArtifactLoaderClientConfig -from metldata.load.models import ArtifactResourceDict -from tests.fixtures.event_handling import ( - Event, - FileSystemEventFixture, - file_system_event_fixture, # noqa: F401 -) - -EXAMPLE_ARTIFACTS: ArtifactResourceDict = { - "example_artifact": [ - {"some": "example", "artifact": "data"}, - ] -} - - -@pytest.mark.asyncio -async def test_upload_artifacts_via_http_api( - file_system_event_fixture: FileSystemEventFixture, # noqa: F811 - httpx_mock: HTTPXMock, -): - """Test the happy path of using the upload_artifacts_via_http_api function.""" - - token = "some-token" - config = ArtifactLoaderClientConfig( - artifact_types=list(EXAMPLE_ARTIFACTS.keys()), - artifact_topic_prefix="artifact", - loader_api_root="http://localhost:8000", - **file_system_event_fixture.config.model_dump(), - ) - - # publish artifacts: - artifact_events = [ - Event( - topic=get_artifact_topic( - artifact_topic_prefix=config.artifact_topic_prefix, - artifact_type=artifact_type, - ), - type_=artifact_type, - key=str(uuid4()), # will later be the submission id - payload={"content": artifact_content}, - ) - for artifact_type, artifact_contents in EXAMPLE_ARTIFACTS.items() - for artifact_content in artifact_contents - ] - await file_system_event_fixture.publish_events(artifact_events) - - # mock the api: - httpx_mock.add_response( - url=f"{config.loader_api_root}/rpc/load-artifacts", - method="POST", - status_code=204, - ) - - # upload to api: - upload_artifacts_via_http_api(token=token, config=config) - - # ensure that the api was called with the expected data: - observed_requests = httpx_mock.get_requests() - assert len(observed_requests) == 1 - observed_artifacts = json.loads(observed_requests[0].content.decode("utf-8")) - assert observed_artifacts == EXAMPLE_ARTIFACTS - assert observed_requests[0].headers["Authorization"] == f"Bearer {token}" diff --git a/tests/load/test_main.py b/tests/load/test_main.py deleted file mode 100644 index e5b74d4a..00000000 --- a/tests/load/test_main.py +++ /dev/null @@ -1,266 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Test the main modules.""" - -import json -from copy import deepcopy - -import pytest -from ghga_service_commons.utils.utc_dates import now_as_utc -from hexkit.protocols.dao import ResourceNotFoundError -from hexkit.providers.akafka.testutils import ( # noqa: F401; pylint: disable=unused-import - KafkaFixture, - kafka_fixture, -) - -from metldata.artifacts_rest.artifact_dao import ArtifactDaoCollection -from metldata.artifacts_rest.load_resources import ( - convert_file_information, - get_file_slots, -) -from metldata.artifacts_rest.models import ArtifactResource, GlobalStats -from metldata.load.auth import generate_token -from metldata.load.stats import STATS_COLLECTION_NAME -from tests.fixtures.load.joint import ( # noqa: F401; pylint: disable=unused-import - EMBEDDED_DATASET_TEST_PATH, - JointFixture, - joint_fixture, -) -from tests.fixtures.mongodb import ( # noqa: F401; pylint: disable=unused-import - MongoDbFixture, - mongodb_fixture, -) -from tests.fixtures.workflows import EXAMPLE_ARTIFACTS - - -@pytest.mark.asyncio -async def test_load_artifacts_endpoint_happy( - joint_fixture: JointFixture, # noqa: F811 -): - """Test the happy path of using the load artifacts endpoint.""" - - async with joint_fixture.kafka.record_events( - in_topic=joint_fixture.config.dataset_change_event_topic - ) as dataset_recorder: - async with joint_fixture.kafka.record_events( - in_topic=joint_fixture.config.resource_change_event_topic - ) as resource_recorder: - response = await joint_fixture.client.post( - "/rpc/load-artifacts", - json=joint_fixture.artifact_resources, - headers={"Authorization": f"Bearer {joint_fixture.token}"}, - ) - assert response.status_code == 204 - - assert len(resource_recorder.recorded_events) == 2 - for event in resource_recorder.recorded_events: - assert event.type_ == joint_fixture.config.resource_upsertion_type - assert len(dataset_recorder.recorded_events) == 2 - for event in dataset_recorder.recorded_events: - assert event.type_ == joint_fixture.config.dataset_upsertion_type - - # check that the artifact resources were loaded based on an example: - expected_artifact_name = "embedded_public" - - expected_file_resource_class = "StudyFile" - expected_file_resource_id = joint_fixture.expected_file_resource_content[ - "accession" - ] - - expected_embedded_dataset_resource_class = "EmbeddedDataset" - expected_embedded_dataset_resource_id = ( - joint_fixture.expected_embedded_dataset_resource_content["accession"] - ) - - dao_collection = await ArtifactDaoCollection.construct( - dao_factory=joint_fixture.mongodb.dao_factory, - artifact_infos=joint_fixture.artifact_infos, - ) - - dao = await dao_collection.get_dao( - artifact_name=expected_artifact_name, class_name=expected_file_resource_class - ) - observed_resource = await dao.get_by_id(expected_file_resource_id) - assert observed_resource.content == joint_fixture.expected_file_resource_content - - dao = await dao_collection.get_dao( - artifact_name=expected_artifact_name, - class_name=expected_embedded_dataset_resource_class, - ) - observed_resource = await dao.get_by_id(expected_embedded_dataset_resource_id) - assert ( - observed_resource.content - == joint_fixture.expected_embedded_dataset_resource_content - ) - - # check that the summary statistics has been created: - expected_resource_stats = { - "DataAccessPolicy": {"count": 1}, - "Dataset": {"count": 2}, - "DataAccessCommittee": {"count": 1}, - "StudyFile": { - "count": 3, - "stats": {"format": [{"value": "FASTQ", "count": 3}]}, - }, - "Study": {"count": 1}, - "EmbeddedDataset": {"count": 2}, - } - stats_dao = await joint_fixture.mongodb.dao_factory.get_dao( - name=STATS_COLLECTION_NAME, dto_model=GlobalStats, id_field="id" - ) - async for stats in stats_dao.find_all(mapping={}): - assert stats.id == "global" - assert abs((now_as_utc() - stats.created).seconds) < 5 - assert stats.resource_stats == expected_resource_stats - - # replace tested resource with slightly changed one - changed_accession = "CHANGED_EMBEDDED_DATASET" - new_artifact_resources = deepcopy(joint_fixture.artifact_resources) - del new_artifact_resources[expected_artifact_name][0]["embedded_dataset"][0] - new_artifact_resources[expected_artifact_name][0]["embedded_dataset"][0][ - "accession" - ] = "CHANGED_EMBEDDED_DATASET" - expected_resource_content = new_artifact_resources[expected_artifact_name][0][ - "embedded_dataset" - ][0] - - # submit changed request - async with joint_fixture.kafka.record_events( - in_topic=joint_fixture.config.dataset_change_event_topic - ) as dataset_recorder: - async with joint_fixture.kafka.record_events( - in_topic=joint_fixture.config.resource_change_event_topic - ) as resource_recorder: - response = await joint_fixture.client.post( - "/rpc/load-artifacts", - json=new_artifact_resources, - headers={"Authorization": f"Bearer {joint_fixture.token}"}, - ) - assert response.status_code == 204 - - assert len(resource_recorder.recorded_events) == 3 - for event in resource_recorder.recorded_events: - if event.key == f"dataset_embedded_{changed_accession}": - assert event.type_ == joint_fixture.config.resource_upsertion_type - else: - assert event.type_ == joint_fixture.config.resource_deletion_event_type - - assert len(dataset_recorder.recorded_events) == 3 - - for event in dataset_recorder.recorded_events: - if event.key == f"dataset_embedded_{changed_accession}": - assert event.type_ == joint_fixture.config.dataset_upsertion_type - else: - assert event.type_ == joint_fixture.config.dataset_deletion_type - - observed_resource = await dao.get_by_id(changed_accession) - assert observed_resource.content == expected_resource_content - - # submit an empty request: - async with joint_fixture.kafka.record_events( - in_topic=joint_fixture.config.dataset_change_event_topic - ) as dataset_recorder: - async with joint_fixture.kafka.record_events( - in_topic=joint_fixture.config.resource_change_event_topic - ) as resource_recorder: - response = await joint_fixture.client.post( - "/rpc/load-artifacts", - json={}, - headers={"Authorization": f"Bearer {joint_fixture.token}"}, - ) - assert response.status_code == 204 - - assert len(resource_recorder.recorded_events) == 9 - for event in resource_recorder.recorded_events: - assert event.type_ == joint_fixture.config.resource_deletion_event_type - - assert len(dataset_recorder.recorded_events) == 1 - for event in dataset_recorder.recorded_events: - assert event.type_ == joint_fixture.config.dataset_deletion_type - - # confirm that example resource was deleted: - with pytest.raises(ResourceNotFoundError): - await dao.get_by_id(changed_accession) - - -@pytest.mark.asyncio -async def test_load_artifacts_endpoint_invalid_resources( - joint_fixture: JointFixture, # noqa: F811 -): - """Test using the load artifacts endpoint with resources of unknown artifacts.""" - - # load example artifacts resources: - unknown_artifact_resources = { - "unknown_artifact": [list(EXAMPLE_ARTIFACTS.values())[0]] # noqa: RUF015 - } - response = await joint_fixture.client.post( - "/rpc/load-artifacts", - json=unknown_artifact_resources, - headers={"Authorization": f"Bearer {joint_fixture.token}"}, - ) - assert response.status_code == 422 - - -@pytest.mark.asyncio -async def test_load_artifacts_endpoint_invalid_token( - joint_fixture: JointFixture, # noqa: F811 -): - """Test that using the load artifacts endpoint with an invalid token fails.""" - - invalid_token = generate_token() - - # load artifact resources with invalid token: - response = await joint_fixture.client.post( - "/rpc/load-artifacts", - json={}, - headers={"Authorization": f"Bearer {invalid_token}"}, - ) - assert response.status_code == 403 - - -@pytest.mark.asyncio -async def test_file_slot_transformation( - joint_fixture: JointFixture, # noqa: F811 -): - """Test that file slots are discovered and file extensions are extracted correctly""" - - with open(EMBEDDED_DATASET_TEST_PATH, encoding="utf-8") as file: - embedded_datasets = json.load(file) - - file_slots = [] - artifact_info = joint_fixture.artifact_infos[0] - - # get all embedded datset resources - for embedded_dataset in embedded_datasets["embedded_dataset"]: - resource = ArtifactResource( - id_=embedded_dataset["accession"], - class_name="EmbeddedDataset", - content=embedded_dataset, - ) - current_file_slots = get_file_slots( - artifact_info=artifact_info, resource=resource - ) - file_slots.extend(current_file_slots) - - extension_mapping = { - "STUDY_FILE_1": ".fastq.gz", - "STUDY_FILE_2": ".fastq", - "STUDY_FILE_3": ".gz", - "STUDY_FILE_4": "", - } - for file_info in convert_file_information(file_slots=file_slots): - assert extension_mapping[file_info.accession] == file_info.file_extension diff --git a/tests/model_utils/__init__.py b/tests/model_utils/__init__.py deleted file mode 100644 index 20826764..00000000 --- a/tests/model_utils/__init__.py +++ /dev/null @@ -1,17 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Test the model_utils sub-package.""" diff --git a/tests/model_utils/test_anchor.py b/tests/model_utils/test_anchor.py deleted file mode 100644 index 067adfb3..00000000 --- a/tests/model_utils/test_anchor.py +++ /dev/null @@ -1,132 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Test the anchor module.""" - - -import pytest - -from metldata.model_utils.anchors import ( - AnchorPoint, - AnchorPointNotFoundError, - InvalidAnchorPointError, - filter_anchor_points, - get_anchor_points, - get_anchors_points_by_target, - lookup_anchor_point, -) -from metldata.model_utils.essentials import MetadataModel -from tests.fixtures.metadata_models import ( - ANCHORS_INVALID_MODELS, - VALID_MINIMAL_METADATA_MODEL, -) - -EXAMPLE_ANCHOR_POINTS = { - AnchorPoint(target_class="File", identifier_slot="alias", root_slot="files"), - AnchorPoint(target_class="Dataset", identifier_slot="alias", root_slot="datasets"), -} - -EXAMPLE_ANCHOR_POINTS_BY_TARGET = { - "File": AnchorPoint( - target_class="File", identifier_slot="alias", root_slot="files" - ), - "Dataset": AnchorPoint( - target_class="Dataset", identifier_slot="alias", root_slot="datasets" - ), -} - - -def test_get_anchor_points_happy(): - """Test the happy path of using the get_anchor_points function.""" - - expected_anchor_points = EXAMPLE_ANCHOR_POINTS - - observed_anchor_points = get_anchor_points(model=VALID_MINIMAL_METADATA_MODEL) - - assert observed_anchor_points == expected_anchor_points - - -@pytest.mark.parametrize("invalid_model", ANCHORS_INVALID_MODELS) -def test_get_anchor_points_invalid(invalid_model: MetadataModel): - """Test the get_anchor_points function for models with invalid anchor points.""" - - with pytest.raises(InvalidAnchorPointError): - _ = get_anchor_points(model=invalid_model) - - -def test_get_anchor_points_by_target_happy(): - """Test the happy path of using the get_anchors_by_target function.""" - - expected_anchor_points = EXAMPLE_ANCHOR_POINTS_BY_TARGET - - observed_anchor_points = get_anchors_points_by_target( - model=VALID_MINIMAL_METADATA_MODEL - ) - - assert observed_anchor_points == expected_anchor_points - - -def test_filter_anchor_points_happy(): - """Test the happy path of using the filter_anchor_points function.""" - - class_of_interest = "File" - expected_anchor_points = { - class_of_interest: EXAMPLE_ANCHOR_POINTS_BY_TARGET[class_of_interest], - } - - observed_anchor_points = filter_anchor_points( - anchor_points_by_target=EXAMPLE_ANCHOR_POINTS_BY_TARGET, - classes_of_interest={class_of_interest}, - ) - - assert observed_anchor_points == expected_anchor_points - - -def test_filter_anchor_points_non_existing_class(): - """Test the happy path of using the filter_anchor_points function.""" - - classes_of_interest = set(EXAMPLE_ANCHOR_POINTS_BY_TARGET.keys()) - classes_of_interest.add("NonExisting") - - with pytest.raises(AnchorPointNotFoundError): - _ = filter_anchor_points( - anchor_points_by_target=EXAMPLE_ANCHOR_POINTS_BY_TARGET, - classes_of_interest=classes_of_interest, - ) - - -def test_lookup_anchor_point_happy(): - """Test the happy path of using the lookup_anchor_point function.""" - - class_name = "File" - expected_anchor_point = EXAMPLE_ANCHOR_POINTS_BY_TARGET[class_name] - - observed_anchor_point = lookup_anchor_point( - class_name=class_name, anchor_points_by_target=EXAMPLE_ANCHOR_POINTS_BY_TARGET - ) - - assert observed_anchor_point == expected_anchor_point - - -def test_lookup_anchor_point_not_found(): - """Test the using the lookup_anchor_point function with a class name that does - not exist.""" - - with pytest.raises(AnchorPointNotFoundError): - _ = lookup_anchor_point( - class_name="NonExisting", - anchor_points_by_target=EXAMPLE_ANCHOR_POINTS_BY_TARGET, - ) diff --git a/tests/model_utils/test_assumptions.py b/tests/model_utils/test_assumptions.py deleted file mode 100644 index 1888cd49..00000000 --- a/tests/model_utils/test_assumptions.py +++ /dev/null @@ -1,87 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Testing the assumptions module.""" - -from contextlib import nullcontext - -import pytest - -from metldata.model_utils.assumptions import ( - MetadataModelAssumptionError, - check_basic_model_assumption, - check_class_exists, - check_class_slot_exists, -) -from metldata.model_utils.essentials import MetadataModel -from tests.fixtures.metadata_models import ( - INVALID_METADATA_MODELS, - VALID_METADATA_MODELS, - VALID_MINIMAL_METADATA_MODEL, -) - - -@pytest.mark.parametrize( - "model, is_valid", - [(valid_model, True) for valid_model in VALID_METADATA_MODELS] - + [(invalid_model, False) for invalid_model in INVALID_METADATA_MODELS], -) -def test_metadata_model_assumption_checking(model: MetadataModel, is_valid: bool): - """Test the assumptions regarding the metadata model are correctly checked.""" - - with nullcontext() if is_valid else pytest.raises(MetadataModelAssumptionError): - check_basic_model_assumption(model) - - -@pytest.mark.parametrize( - "model, class_name, exists", - [ - (VALID_MINIMAL_METADATA_MODEL, "Dataset", True), - (VALID_MINIMAL_METADATA_MODEL, "NotExistingClass", False), - ], -) -def test_check_class_exists(model: MetadataModel, class_name: str, exists: bool): - """Test the check_class_exists function.""" - - with nullcontext() if exists else pytest.raises(MetadataModelAssumptionError): - check_class_exists(model=model, class_name=class_name) - - -@pytest.mark.parametrize( - "model, class_name, slot_name, ignore_parents, exists", - [ - (VALID_MINIMAL_METADATA_MODEL, "Dataset", "alias", False, True), - (VALID_MINIMAL_METADATA_MODEL, "Dataset", "alias", True, False), - (VALID_MINIMAL_METADATA_MODEL, "Dataset", "files", True, True), - (VALID_MINIMAL_METADATA_MODEL, "Dataset", "not_existing_slot", False, False), - (VALID_MINIMAL_METADATA_MODEL, "NotExistingClass", "name", False, False), - ], -) -def test_check_class_slot_exists( - model: MetadataModel, - class_name: str, - slot_name: str, - ignore_parents: bool, - exists: bool, -): - """Test the check_class_slot_exists function.""" - - with nullcontext() if exists else pytest.raises(MetadataModelAssumptionError): - check_class_slot_exists( - model=model, - class_name=class_name, - slot_name=slot_name, - ignore_parents=ignore_parents, - ) diff --git a/tests/model_utils/test_config.py b/tests/model_utils/test_config.py deleted file mode 100644 index aa5d6ba7..00000000 --- a/tests/model_utils/test_config.py +++ /dev/null @@ -1,42 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Testing the metadata validator.""" - -from contextlib import nullcontext - -import pytest - -from metldata.model_utils.assumptions import MetadataModelAssumptionError -from metldata.model_utils.config import MetadataModelConfig -from metldata.model_utils.essentials import MetadataModel -from tests.fixtures.metadata_models import ( - INVALID_METADATA_MODELS, - VALID_METADATA_MODELS, -) - - -@pytest.mark.parametrize( - "model, is_valid", - [(valid_model, True) for valid_model in VALID_METADATA_MODELS] - + [(invalid_model, False) for invalid_model in INVALID_METADATA_MODELS], -) -def test_config(model: MetadataModel, is_valid: bool): - """Test with valid and invalid model.""" - - with model.temporary_yaml_path() as model_path: - with nullcontext() if is_valid else pytest.raises(MetadataModelAssumptionError): - config = MetadataModelConfig(metadata_model_path=model_path) - _ = config.metadata_model diff --git a/tests/model_utils/test_essentials.py b/tests/model_utils/test_essentials.py deleted file mode 100644 index 8468d7aa..00000000 --- a/tests/model_utils/test_essentials.py +++ /dev/null @@ -1,59 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Test the essentials module.""" - -from copy import deepcopy - -from linkml_runtime import SchemaView - -from metldata.model_utils.essentials import MetadataModel -from tests.fixtures.metadata_models import ( - VALID_MINIMAL_METADATA_MODEL, - VALID_MINIMAL_MODEL_EXAMPLE_PATH, -) - - -def test_metadata_model_from_path(): - """Test the MetadataModel creation from path.""" - - model = MetadataModel.init_from_path(VALID_MINIMAL_MODEL_EXAMPLE_PATH) - - assert model.name == "Minimal-Model" - - -def test_metadata_model_get_schema_view(): - """Test getting a schema view from a MetadataModel.""" - - schema_view = VALID_MINIMAL_METADATA_MODEL.schema_view - - assert isinstance(schema_view, SchemaView) - - -def test_metadata_model_temporary_yaml(): - """Test getting a temporary yaml file from a MetadataModel.""" - - model = deepcopy(VALID_MINIMAL_METADATA_MODEL) - - # modify the model: - model.name = "Test-Model-Modified" - - # get a temporary yaml file: - with model.temporary_yaml_path() as model_path: - # load a copy of that file into a new model instance: - model_copy = MetadataModel.init_from_path(model_path) - - assert model_copy == model diff --git a/tests/model_utils/test_identifiers.py b/tests/model_utils/test_identifiers.py deleted file mode 100644 index dde6b01f..00000000 --- a/tests/model_utils/test_identifiers.py +++ /dev/null @@ -1,30 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Test the identifiers module.""" - -from metldata.model_utils.identifiers import get_class_identifiers -from tests.fixtures.metadata_models import VALID_MINIMAL_METADATA_MODEL - - -def test_get_class_identifiers_happy(): - """Test the happy path of using the get_class_identifiers function.""" - - expected_identifiers = {"File": "alias", "Dataset": "alias"} - - observed_identifiers = get_class_identifiers(model=VALID_MINIMAL_METADATA_MODEL) - - assert observed_identifiers == expected_identifiers diff --git a/tests/model_utils/test_manipulate.py b/tests/model_utils/test_manipulate.py deleted file mode 100644 index 4d2f3476..00000000 --- a/tests/model_utils/test_manipulate.py +++ /dev/null @@ -1,212 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""test the manipulate module""" - -import pytest -from linkml_runtime.linkml_model.meta import SlotDefinition - -from metldata.model_utils.identifiers import get_class_identifier -from metldata.model_utils.manipulate import ( - ClassNotFoundError, - ClassSlotNotFoundError, - add_slot_if_not_exists, - add_slot_usage_annotation, - delete_class_slot, - disable_identifier_slot, - upsert_class_slot, -) -from tests.fixtures.metadata_models import VALID_MINIMAL_METADATA_MODEL - - -def test_add_slot_if_not_exists_exists(): - """Test add_slot_if_not_exists if the slot exists.""" - - # try to change existing files slot to string: - new_slot = SlotDefinition(name="files", range="string") - - original_model = VALID_MINIMAL_METADATA_MODEL - original_schema_view = original_model.schema_view - - updated_schema_view = add_slot_if_not_exists( - schema_view=original_schema_view, new_slot=new_slot - ) - updated_model = updated_schema_view.export_model() - - # nothing should have changed: - assert updated_model == original_model - - -def test_add_slot_if_not_exists_not_exists(): - """Test add_slot_if_not_exists if the slot does not exist.""" - - new_slot = SlotDefinition(name="test", range="string") - - original_model = VALID_MINIMAL_METADATA_MODEL - original_schema_view = original_model.schema_view - - updated_schema_view = add_slot_if_not_exists( - schema_view=original_schema_view, new_slot=new_slot - ) - - # make sure that the updated model differs from the original in the new slot: - original_model_slots = set(original_schema_view.all_slots()) - updated_model_slots = set(updated_schema_view.all_slots()) - assert updated_model_slots.difference(original_model_slots) == {new_slot.name} - - -def test_upsert_class_slot_exists(): - """Test upsert_class_slot if the slot exists.""" - - # change existing files slot to string in the Dataset class: - class_name = "Dataset" - new_slot = SlotDefinition(name="files", range="string") - - original_model = VALID_MINIMAL_METADATA_MODEL - original_schema_view = original_model.schema_view - - updated_schema_view = upsert_class_slot( - schema_view=original_schema_view, class_name=class_name, new_slot=new_slot - ) - - # induced_slot should have changed: - updated_class_slot = updated_schema_view.induced_slot( - slot_name=new_slot.name, class_name=class_name - ) - assert updated_class_slot.range == "string" - - # check that the global slot definition has not changed: - updated_global_slot = updated_schema_view.get_slot(slot_name=new_slot.name) - assert updated_global_slot.range == "File" - - -def test_upsert_class_slot_not_exists(): - """Test upsert_class_slot if the slot does not exists.""" - - class_name = "Dataset" - new_slot = SlotDefinition(name="test", range="string") - - original_model = VALID_MINIMAL_METADATA_MODEL - original_schema_view = original_model.schema_view - - updated_schema_view = upsert_class_slot( - schema_view=original_schema_view, class_name=class_name, new_slot=new_slot - ) - - # check that the slot exists on the global and class level in an identical fashion: - assert new_slot.name in updated_schema_view.class_slots(class_name=class_name) - updated_class_slot = updated_schema_view.induced_slot( - slot_name=new_slot.name, class_name=class_name - ) - updated_global_slot = updated_schema_view.get_slot(slot_name=new_slot.name) - assert updated_class_slot.range == updated_global_slot.range == new_slot.range - - -def test_delete_class_slot_happy(): - """Test the happy path of using delete_class_slot.""" - - class_name = "Dataset" - slot_name = "files" - - original_model = VALID_MINIMAL_METADATA_MODEL - original_schema_view = original_model.schema_view - - updated_schema_view = delete_class_slot( - schema_view=original_schema_view, class_name=class_name, slot_name=slot_name - ) - - # check that the slot does not exist on the class level anymore: - assert slot_name not in updated_schema_view.class_slots(class_name=class_name) - - # check that the slot still exists on the global level: - assert updated_schema_view.get_slot(slot_name=slot_name) is not None - - -def test_delete_class_slot_class_not_exists(): - """Test delete_class_slot if the class does not exist.""" - - class_name = "DoesNotExist" - slot_name = "files" - - original_model = VALID_MINIMAL_METADATA_MODEL - original_schema_view = original_model.schema_view - - with pytest.raises(ClassNotFoundError): - delete_class_slot( - schema_view=original_schema_view, class_name=class_name, slot_name=slot_name - ) - - -def test_delete_class_slot_slot_not_exists(): - """Test delete_class_slot if the slot does not exist.""" - - class_name = "Dataset" - slot_name = "does_not_exist" - - original_model = VALID_MINIMAL_METADATA_MODEL - original_schema_view = original_model.schema_view - - with pytest.raises(ClassSlotNotFoundError): - delete_class_slot( - schema_view=original_schema_view, class_name=class_name, slot_name=slot_name - ) - - -def test_add_slot_usage_annotation(): - """Test the happy path of using add_slot_usage_annotation.""" - - class_name = "Dataset" - slot_name = "files" - annotation_key = "usage" - annotation_value = "required" - - original_model = VALID_MINIMAL_METADATA_MODEL - original_schema_view = original_model.schema_view - - updated_schema_view = add_slot_usage_annotation( - schema_view=original_schema_view, - class_name=class_name, - slot_name=slot_name, - annotation_key=annotation_key, - annotation_value=annotation_value, - ) - - # check that annotations are correctly compiled to yaml level: - model_dict = updated_schema_view.export_model().as_dict() - assert ( - model_dict["classes"][class_name]["slot_usage"][slot_name]["annotations"][ - annotation_key - ]["value"] - == annotation_value - ) - - -def test_disable_identifier_slot(): - """Test the happy path of using disable_identifier_slot.""" - - class_name = "Dataset" - - original_model = VALID_MINIMAL_METADATA_MODEL - original_schema_view = original_model.schema_view - - updated_schema_view = disable_identifier_slot( - schema_view=original_schema_view, - class_name=class_name, - ) - updated_model = updated_schema_view.export_model() - - # check that the slot is correctly disabled: - assert get_class_identifier(model=updated_model, class_name=class_name) is None diff --git a/tests/model_utils/test_metadata_validator.py b/tests/model_utils/test_metadata_validator.py deleted file mode 100644 index f30fb878..00000000 --- a/tests/model_utils/test_metadata_validator.py +++ /dev/null @@ -1,47 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Testing the metadata validator.""" - -from contextlib import nullcontext -from typing import Any - -import pytest - -from metldata.model_utils.metadata_validator import MetadataValidator -from tests.fixtures.metadata import ( - INVALID_MINIMAL_METADATA_EXAMPLES, - VALID_MINIMAL_METADATA_EXAMPLES, -) -from tests.fixtures.metadata_models import VALID_MINIMAL_METADATA_MODEL - - -@pytest.mark.parametrize( - "metadata, is_valid", - [(valid_metadata, True) for valid_metadata in VALID_MINIMAL_METADATA_EXAMPLES] - + [ - (invalid_metadata, False) - for invalid_metadata in INVALID_MINIMAL_METADATA_EXAMPLES - ], -) -def test_validate_against_model(metadata: dict[str, Any], is_valid: bool): - """Test the validation of metadata against a model.""" - - validator = MetadataValidator(model=VALID_MINIMAL_METADATA_MODEL) - - with nullcontext() if is_valid else pytest.raises( - MetadataValidator.ValidationError - ): - validator.validate(metadata) diff --git a/tests/submission_registry/__init__.py b/tests/submission_registry/__init__.py deleted file mode 100644 index 327be0b7..00000000 --- a/tests/submission_registry/__init__.py +++ /dev/null @@ -1,17 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Test submission_registry subpackage.""" diff --git a/tests/submission_registry/test_event_publisher.py b/tests/submission_registry/test_event_publisher.py deleted file mode 100644 index 00604327..00000000 --- a/tests/submission_registry/test_event_publisher.py +++ /dev/null @@ -1,100 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Testing the event publisher.""" - -import json - -from ghga_service_commons.utils.utc_dates import now_as_utc - -from metldata.config import SubmissionConfig -from metldata.event_handling.event_handling import FileSystemEventPublisher -from metldata.event_handling.models import SubmissionAnnotation, SubmissionEventPayload -from metldata.submission_registry import models -from metldata.submission_registry.event_publisher import SourceEventPublisher -from tests.fixtures.config import config_sub_fixture # noqa: F401 -from tests.fixtures.event_handling import ( - Event, - FileSystemEventFixture, - file_system_event_fixture, # noqa: F401 -) - - -def check_source_events( - *, - expected_submissions: list[models.Submission], - source_event_topic: str, - source_event_type: str, - file_system_event_fixture: FileSystemEventFixture, # noqa: F811 -): - """Check the content of a source event. - - Raises: - AssertionError: if it does not match the expectations. - EventNotPublishedError: if the event was not yet published. - """ - - expected_events = [ - Event( - topic=source_event_topic, - type_=source_event_type, - key=expected_submission.id, - payload=json.loads( - SubmissionEventPayload( - submission_id=expected_submission.id, - content=expected_submission.content, # type: ignore - annotation=SubmissionAnnotation( - accession_map=expected_submission.accession_map - ), - ).model_dump_json() - ), - ) - for expected_submission in expected_submissions - ] - - file_system_event_fixture.expect_events(expected_events=expected_events) - - -def test_happy( - config_sub_fixture: SubmissionConfig, # noqa: F811 - file_system_event_fixture: FileSystemEventFixture, # noqa: F811 -): - """Test the happy path of publishing a submission.""" - - provider = FileSystemEventPublisher(config=file_system_event_fixture.config) - event_publisher = SourceEventPublisher(config=config_sub_fixture, provider=provider) - - # publish a submission: - submission = models.Submission( - id="submission001", - title="test", - description="test", - content={"test_class": [{"alias": "test_alias1"}]}, - accession_map={"test_class": {"test_alias1": "test_accession1"}}, - status_history=( - models.StatusChange( - timestamp=now_as_utc(), new_status=models.SubmissionStatus.PENDING - ), - ), - ) - event_publisher.publish_submission(submission) - - # check published source event: - check_source_events( - expected_submissions=[submission], - source_event_topic=config_sub_fixture.source_event_topic, - source_event_type=config_sub_fixture.source_event_type, - file_system_event_fixture=file_system_event_fixture, - ) diff --git a/tests/submission_registry/test_identifiers.py b/tests/submission_registry/test_identifiers.py deleted file mode 100644 index fe0d2325..00000000 --- a/tests/submission_registry/test_identifiers.py +++ /dev/null @@ -1,77 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -"""Test the identifiers module.""" - -from metldata.model_utils.anchors import AnchorPoint -from metldata.submission_registry.identifiers import generate_accession_map - - -class FakeAccessionRegistry: - """A fake accession registry.""" - - def __init__(self): - """Initialize with counter to generate predictable accessions.""" - - self._counter = 1 - - def get_accession(self, *, resource_type: str) -> str: - """Generates and registers a new accession for a resource of the specified type.""" - - accession = f"generated_{resource_type.lower()}_accession{self._counter}" - self._counter += 1 - - return accession - - -def test_generate_accession_map(): - """Test generating an accession map for a given content.""" - - accession_registry = FakeAccessionRegistry() - content = { - "class1_anchor": [{"alias": "test_alias1"}], - "class2_anchor": [{"alias": "test_alias2"}, {"alias": "test_alias3"}], - } - anchor_points_by_target = { - "Class1": AnchorPoint( - root_slot="class1_anchor", target_class="Class1", identifier_slot="alias" - ), - "Class2": AnchorPoint( - root_slot="class2_anchor", target_class="Class2", identifier_slot="alias" - ), - "Class3": AnchorPoint( - root_slot="class3_anchor", target_class="Class3", identifier_slot="alias" - ), - } - existing_accession_map = { - "class2_anchor": {"test_alias2": "existing_class2_accession1"}, - "class3_anchor": {"test_alias3": "existing_class3_accession2"}, - } - expected_accession_map = { - "class1_anchor": {"test_alias1": "generated_class1_accession1"}, - "class2_anchor": { - "test_alias2": "existing_class2_accession1", - "test_alias3": "generated_class2_accession2", - }, - } - - observed_accession_map = generate_accession_map( - content=content, - existing_accession_map=existing_accession_map, - accession_registry=accession_registry, # type: ignore - anchor_points_by_target=anchor_points_by_target, - ) - - assert observed_accession_map == expected_accession_map diff --git a/tests/submission_registry/test_models.py b/tests/submission_registry/test_models.py deleted file mode 100644 index 0b72badd..00000000 --- a/tests/submission_registry/test_models.py +++ /dev/null @@ -1,54 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Test model functionality.""" - -from datetime import timedelta - -from ghga_service_commons.utils.utc_dates import now_as_utc - -from metldata.submission_registry.models import ( - StatusChange, - Submission, - SubmissionStatus, -) - - -def test_submission_current_status(): - """Test whether the current status property returns the latest status.""" - - submission = Submission( - title="test", - description="test", - content={"test_class": [{"alias": "test_alias1"}]}, - accession_map={"test_class": {"test_alias1": "test_accession1"}}, - id="testsubmission001", - status_history=( - StatusChange( - timestamp=now_as_utc(), new_status=SubmissionStatus.IN_REVIEW # second - ), - StatusChange( - timestamp=now_as_utc() + timedelta(days=10), # third - new_status=SubmissionStatus.COMPLETED, - ), - StatusChange( - timestamp=now_as_utc() - timedelta(days=10), # first - new_status=SubmissionStatus.PENDING, - ), - ), - ) - - assert submission.current_status == SubmissionStatus.COMPLETED diff --git a/tests/submission_registry/test_submission_registry.py b/tests/submission_registry/test_submission_registry.py deleted file mode 100644 index 0902e0fb..00000000 --- a/tests/submission_registry/test_submission_registry.py +++ /dev/null @@ -1,210 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Test the submission registry.""" - -import pytest - -from metldata.accession_registry.accession_registry import AccessionRegistry -from metldata.accession_registry.accession_store import AccessionStore -from metldata.config import SubmissionConfig -from metldata.event_handling.event_handling import FileSystemEventPublisher -from metldata.submission_registry import models -from metldata.submission_registry.event_publisher import SourceEventPublisher -from metldata.submission_registry.submission_registry import SubmissionRegistry -from metldata.submission_registry.submission_store import SubmissionStore -from tests.fixtures.config import config_sub_fixture # noqa: F401 -from tests.fixtures.event_handling import ( - FileSystemEventFixture, - file_system_event_fixture, # noqa: F401 -) -from tests.fixtures.metadata import ( - INVALID_MINIMAL_METADATA_EXAMPLES, - VALID_MINIMAL_METADATA_EXAMPLES, -) -from tests.submission_registry.test_event_publisher import check_source_events - - -def test_happy( - config_sub_fixture: SubmissionConfig, # noqa: F811 - file_system_event_fixture: FileSystemEventFixture, # noqa: F811 -): - """Test the happy path of using the submission registry.""" - - # inject dependencies: - submission_store = SubmissionStore(config=config_sub_fixture) - provider = FileSystemEventPublisher(config=file_system_event_fixture.config) - event_publisher = SourceEventPublisher(config=config_sub_fixture, provider=provider) - accession_store = AccessionStore(config=config_sub_fixture) - accession_registry = AccessionRegistry( - config=config_sub_fixture, accession_store=accession_store - ) - submission_registry = SubmissionRegistry( - config=config_sub_fixture, - submission_store=submission_store, - event_publisher=event_publisher, - accession_registry=accession_registry, - ) - - # create a new submission: - submission_header = models.SubmissionHeader(title="test", description="test") - submission_id = submission_registry.init_submission(header=submission_header) - - # check submission in store: - observed_submission = submission_store.get_by_id(submission_id) - assert observed_submission.title == submission_header.title - assert observed_submission.description == submission_header.description - assert observed_submission.content is None - assert observed_submission.current_status == models.SubmissionStatus.PENDING - - # provide content: - submission_content = VALID_MINIMAL_METADATA_EXAMPLES[0] - submission_registry.upsert_submission_content( - submission_id=submission_id, content=submission_content - ) - - # check submission in store: - observed_submission = submission_store.get_by_id(submission_id) - assert observed_submission.content == submission_content - assert observed_submission.current_status == models.SubmissionStatus.PENDING - - # update content: - submission_content_updated = VALID_MINIMAL_METADATA_EXAMPLES[1] - submission_registry.upsert_submission_content( - submission_id=submission_id, content=submission_content_updated - ) - - # check submission in store: - observed_submission = submission_store.get_by_id(submission_id) - assert observed_submission.content == submission_content_updated - assert observed_submission.current_status == models.SubmissionStatus.PENDING - - # check accessions are in store: - for class_ in observed_submission.accession_map.values(): - for accession in class_.values(): - assert accession_store.exists(accession=accession) - - # check published source event: - check_source_events( - expected_submissions=[observed_submission], - source_event_topic=config_sub_fixture.source_event_topic, - source_event_type=config_sub_fixture.source_event_type, - file_system_event_fixture=file_system_event_fixture, - ) - - # declare submission is complete: - submission_registry.complete_submission(id_=submission_id) - - # check submission in store: - observed_submission = submission_store.get_by_id(submission_id) - assert observed_submission.current_status == models.SubmissionStatus.COMPLETED - - # check published source event: - check_source_events( - expected_submissions=[observed_submission], - source_event_topic=config_sub_fixture.source_event_topic, - source_event_type=config_sub_fixture.source_event_type, - file_system_event_fixture=file_system_event_fixture, - ) - - -def test_failed_content_validation( - config_sub_fixture: SubmissionConfig, # noqa: F811 - file_system_event_fixture: FileSystemEventFixture, # noqa: F811 -): - """Test that invalid content cannot be upserted.""" - - # inject dependencies: - submission_store = SubmissionStore(config=config_sub_fixture) - provider = FileSystemEventPublisher(config=file_system_event_fixture.config) - event_publisher = SourceEventPublisher(config=config_sub_fixture, provider=provider) - accession_store = AccessionStore(config=config_sub_fixture) - accession_registry = AccessionRegistry( - config=config_sub_fixture, accession_store=accession_store - ) - submission_registry = SubmissionRegistry( - config=config_sub_fixture, - submission_store=submission_store, - event_publisher=event_publisher, - accession_registry=accession_registry, - ) - - # create a new submission: - submission_header = models.SubmissionHeader(title="test", description="test") - submission_id = submission_registry.init_submission(header=submission_header) - - # check submission in store: - observed_submission_original = submission_store.get_by_id(submission_id) - - # provide invalid content: - submission_content = INVALID_MINIMAL_METADATA_EXAMPLES[0] - with pytest.raises(SubmissionRegistry.ValidationError): - submission_registry.upsert_submission_content( - submission_id=submission_id, content=submission_content - ) - - # check that the submission was not changed: - observed_submission_updated = submission_store.get_by_id(submission_id) - assert observed_submission_original == observed_submission_updated - - -def test_update_after_completion( - config_sub_fixture: SubmissionConfig, # noqa: F811 - file_system_event_fixture: FileSystemEventFixture, # noqa: F811 -): - """Test no updates can be carried out after completion.""" - - # inject dependencies: - submission_store = SubmissionStore(config=config_sub_fixture) - provider = FileSystemEventPublisher(config=file_system_event_fixture.config) - event_publisher = SourceEventPublisher(config=config_sub_fixture, provider=provider) - accession_store = AccessionStore(config=config_sub_fixture) - accession_registry = AccessionRegistry( - config=config_sub_fixture, accession_store=accession_store - ) - submission_registry = SubmissionRegistry( - config=config_sub_fixture, - submission_store=submission_store, - event_publisher=event_publisher, - accession_registry=accession_registry, - ) - - # create a new submission: - submission_header = models.SubmissionHeader(title="test", description="test") - submission_id = submission_registry.init_submission(header=submission_header) - - # provide content: - submission_content = VALID_MINIMAL_METADATA_EXAMPLES[0] - submission_registry.upsert_submission_content( - submission_id=submission_id, content=submission_content - ) - - # check submission in store: - observed_submission = submission_store.get_by_id(submission_id) - - # declare submission is complete: - submission_registry.complete_submission(id_=submission_id) - - # try to update content: - submission_content_updated = VALID_MINIMAL_METADATA_EXAMPLES[1] - with pytest.raises(SubmissionRegistry.StatusError): - submission_registry.upsert_submission_content( - submission_id=submission_id, content=submission_content_updated - ) - - # check that the submission content did not change: - observed_submission = submission_store.get_by_id(submission_id) - assert observed_submission.content == submission_content diff --git a/tests/submission_registry/test_submission_store.py b/tests/submission_registry/test_submission_store.py deleted file mode 100644 index 23968e37..00000000 --- a/tests/submission_registry/test_submission_store.py +++ /dev/null @@ -1,94 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Testing the submission store.""" - -import pytest -from ghga_service_commons.utils.utc_dates import now_as_utc - -from metldata.config import SubmissionConfig -from metldata.submission_registry.models import ( - StatusChange, - Submission, - SubmissionStatus, -) -from metldata.submission_registry.submission_store import SubmissionStore -from tests.fixtures.config import config_sub_fixture # noqa: F401 - -EXAMPLE_SUBMISSION = Submission( - title="test", - description="test", - content={"test_class": [{"alias": "test_alias1"}]}, - accession_map={"test_class": {"test_alias1": "test_accession1"}}, - id="testsubmission001", - status_history=( - StatusChange( - timestamp=now_as_utc(), - new_status=SubmissionStatus.COMPLETED, - ), - ), -) - - -def test_happy(config_sub_fixture: SubmissionConfig): # noqa: F811 - """Test the happy path of inserting, querying, and updating a submission using - the submission store.""" - - submission_store = SubmissionStore(config=config_sub_fixture) - - # make sure that sumbission does not exist: - assert not submission_store.exists(submission_id=EXAMPLE_SUBMISSION.id) - - # create new submission: - submission_store.insert_new(submission=EXAMPLE_SUBMISSION) - - # make sure that sumbission exists: - assert submission_store.exists(submission_id=EXAMPLE_SUBMISSION.id) - - # query newly created submission: - submission_queried = submission_store.get_by_id(submission_id=EXAMPLE_SUBMISSION.id) - assert EXAMPLE_SUBMISSION == submission_queried - - # update the submision: - submission_updated = EXAMPLE_SUBMISSION.model_copy( - update={"title": "updated test submission"} - ) - submission_store.update_existing(submission=submission_updated) - - # query updated submission: - submission_updated_queried = submission_store.get_by_id( - submission_id=submission_updated.id - ) - assert submission_updated_queried == submission_updated - - # test getting all existing submission IDs - submission_2 = EXAMPLE_SUBMISSION.model_copy(update={"id": "testsubmission002"}) - submission_store.insert_new(submission=submission_2) - - assert submission_store.get_all_submission_ids() == [ - "testsubmission001", - "testsubmission002", - ] - - -def test_query_non_existing( - config_sub_fixture: SubmissionConfig, # noqa: F811 -): - """Test querying for a non-existing submission.""" - - submission_store = SubmissionStore(config=config_sub_fixture) - - with pytest.raises(SubmissionStore.SubmissionDoesNotExistError): - _ = submission_store.get_by_id(submission_id="non-exisitng-id") diff --git a/tests/test_metadata_utils.py b/tests/test_metadata_utils.py deleted file mode 100644 index 098c8896..00000000 --- a/tests/test_metadata_utils.py +++ /dev/null @@ -1,134 +0,0 @@ -# Copyright 2021 - 2023 Universität Tübingen, DKFZ, EMBL, and Universität zu Köln -# for the German Human Genome-Phenome Archive (GHGA) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""Test the metadata utils.""" - - -import pytest - -from metldata.metadata_utils import ( - MetadataResourceNotFoundError, - convert_resource_list_to_dict, - get_resources_of_class, - lookup_resource_by_identifier, - upsert_resources_in_metadata, -) -from metldata.model_utils.anchors import AnchorPoint, get_anchors_points_by_target -from tests.fixtures.metadata import VALID_MINIMAL_METADATA_EXAMPLE -from tests.fixtures.metadata_models import VALID_MINIMAL_METADATA_MODEL - - -def test_lookup_resource_by_identifier_happy(): - """Test the happy path of using the lookup_resource_by_identifier function.""" - - identifier = "test_sample_01_R1" - resource_dict = convert_resource_list_to_dict( - resources=VALID_MINIMAL_METADATA_EXAMPLE["files"], identifier_slot="alias" - ) - expected_resource = resource_dict[identifier] - - anchor_points_by_target = get_anchors_points_by_target( - model=VALID_MINIMAL_METADATA_MODEL - ) - observed_resource = lookup_resource_by_identifier( - class_name="File", - global_metadata=VALID_MINIMAL_METADATA_EXAMPLE, - identifier=identifier, - anchor_points_by_target=anchor_points_by_target, - ) - - assert observed_resource == expected_resource - - -def test_lookup_resource_by_identifier_not_exist(): - """Test the using the lookup_resource_by_identifier function with an identifier - that does not exist.""" - - identifier = "non_existing_identifier" - - anchor_points_by_target = get_anchors_points_by_target( - model=VALID_MINIMAL_METADATA_MODEL - ) - - with pytest.raises(MetadataResourceNotFoundError): - _ = lookup_resource_by_identifier( - class_name="File", - global_metadata=VALID_MINIMAL_METADATA_EXAMPLE, - identifier=identifier, - anchor_points_by_target=anchor_points_by_target, - ) - - -EXAMPLE_GLOBAL_METADATA = { - "files": [ - { - "alias": "test_sample_01_R1", - "file_format": "fastq", - "file_size": 1234567890, - }, - { - "alias": "test_sample_01_R2", - "file_format": "fastq", - "file_size": 1234567890, - }, - ] -} - -EXAMPLE_ANCHOR_POINTS_BY_TARGET = { - "File": AnchorPoint(target_class="File", identifier_slot="alias", root_slot="files") -} - - -def test_get_resources_of_class_happy(): - """Test the happy path of using the get_resources_of_class function.""" - - expected_resources = EXAMPLE_GLOBAL_METADATA["files"] - - observed_resources = get_resources_of_class( - class_name="File", - global_metadata=EXAMPLE_GLOBAL_METADATA, - anchor_points_by_target=EXAMPLE_ANCHOR_POINTS_BY_TARGET, - ) - - assert observed_resources == expected_resources - - -def test_update_resources_in_metadata_happy(): - """Test the happy path of using the update_resources_in_metadata function.""" - - modified_resources = [ - { - "alias": "test_sample_01_R1", - "file_format": "fastq", - "some_new_field": "some_new_value", - }, - { - "alias": "test_sample_01_R2", - "file_format": "fastq", - "some_new_field": "some_new_value", - }, - ] - - expected_metadata = {"files": modified_resources} - - observed_metadata = upsert_resources_in_metadata( - resources=modified_resources, - class_name="File", - global_metadata=EXAMPLE_GLOBAL_METADATA, - anchor_points_by_target=EXAMPLE_ANCHOR_POINTS_BY_TARGET, - ) - - assert observed_metadata == expected_metadata