This Sage has derived standards for how content is annotated in Synapse and this page describes how the DCC manages the content used to annotate files ( keys, definitions, and ontological references ). Sage Bionetworks has derived standards for how content is annotated Synapse. The latest approved Synapse Annotations used to annotate files.
See Synapse Annotations for general information. Approved terms are available in a searchable Table of Annotations.
The synapseAnnotations Github repo includes schemas for individual terms. The terms are organized by modules in the terms/ folder. There are subfolders for each module, and the term names include the module. The mechanisms that manage and implement these annotations are described in the README.
Annotation schemas in JSON
Templates for adding new terms are included in the term-templates/ directory. Each individual term is stored in its own JSON mini schema. This is a valid JSON Schema, such as the following:
Code Block | ||
---|---|---|
| ||
{ $schema": "<http://json-schema.org/draft-07/schema#",> "$id": "<https://repo-prod.prod.sagebase.org/repo/v1/schema/type/registered/sage.annotations-experimentalData.specimenID-0.0.1",> "description": "Identifying string linked to a particular sample or specimen", "type": "string" } |
Schema editing procedure
Create Github issue if needed in https://github.com/Sage-Bionetworks/synapseAnnotations/issues
Term information is stored in JSON schemas in the synapseAnnotations/terms directory.
NOTE: Terms specific to MODEL-AD are stored in: synapseAnnotations/terms/neuroCreate a JSON schema file or edit an existing one.
Copy and Paste schema template.
Edit
$id
line with Modulename and Key name.Version numbers start with
0.0.1
and should be incremented with each update.Add new term, a brief definition, and an ontology citation for the included definition.
Create a branch name formatted like ‘username-edit-type/‘
Add a brief description of changes to commit
Data checks will start to run in the background. All data checks must successfully pass.
Once desired changes are committed, initiate a Pull Request and select DCC curators as reviewers.
Once the PRs have been merged, the metadata dictionary needs to be updated with the latest version of terms. To register the schemas in Synapse run the register-schemas.R script.
To register all schemas, run
./register-schemas.R terms/*/*.json
Learn more about this script, run
./register-schemas.R --help
To update the Synapse annotations table, run update-annotations-table.R
Github sysbioDCCjsonschemas repo
Add/Remove terms from XLS template file. Alternatively, this can be done programmatically with JSON.
Links
Ontology Lookup Service: https://www.ebi.ac.uk/ols/index
...