Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

added the importance: required|recommended|optional to each of the fi… #39

Open
wants to merge 6 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 7 additions & 1 deletion docs/templates/.sheet_documentation_template.md.jinja
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,13 @@
{% for slot in slots %}
### ***{{ slot.name }}***
**description** : {{ slot.description }}<br>
**required** : {{ slot.required }}<br>
{% if slot.requirement == "required" %}
**requirement**: $\color{red}{\textbf{required}}$<br>
{% elif slot.requirement == "recommended" %}
**requirement**: $\color{blue}{\textbf{recommended}}$<br>
{% else %}
**requirement**: $\color{green}{\textbf{optional}}$<br>
{% endif %}
{% if 'Enum' in slot.data_type.range %}
**data type** : Controlled Vocabulary <br>
{% else %}
Expand Down
6 changes: 3 additions & 3 deletions scripts/update_metadata_docs.py
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,8 @@ def extract_slots_from(
[SchemaView, Union[str, None]], Union[dict, None]
] = extract_permissible_values,
) -> list[dict]:
"""Extracts slot information of a given class"""
"""Extract slot information of a given class. Additionally add the slot significance which takes one the 3 values: required, recommended and optional.
"""

return [
{
Expand All @@ -152,12 +153,11 @@ def extract_slots_from(
"range": slot.range,
"enum": add_enum(schema, slot.range),
},
"required": slot.required,
"requirement": "required" if slot.required else "recommended" if slot.recommended else "optional"
}
for slot in schema.class_induced_slots(sheet_name)
]


def generate_workbook(
schema: SchemaView,
sheets: list[str],
Expand Down
14 changes: 7 additions & 7 deletions user_docs/metadata/data_dictionary/Analysis.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,29 +6,29 @@ An Analysis is a data transformation that transforms input data to output data.
## Fields
### ***analysis_method***
**description** : The alias of the Analysis Method that is associated with this Analysis.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : AnalysisMethod <br>
### ***title***
**description** : The title that describes an entity.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
### ***description***
**description** : A description summarizing how this Analysis was carried out (e.g., description of computational tools, pipelines, workflows).<br>
**required** : False<br>
**requirement**: $\color{green}{\textbf{optional}}$<br>
**data type** : string <br>
### ***type***
**description** : The type of this Analysis.<br>
**required** : False<br>
**requirement**: $\color{green}{\textbf{optional}}$<br>
**data type** : string <br>
### ***ega_accession***
**description** : The EGA accession of the 'Analysis' entity (EGAZ).<br>
**required** : False<br>
**requirement**: $\color{green}{\textbf{optional}}$<br>
**data type** : string <br>
### ***research_data_files***
**description** : One or more aliases of the Research Data Files that this Analysis used as input to create Process Data Files.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : ResearchDataFile <br>
### ***alias***
**description** : The alias for an entity at the time of submission.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
26 changes: 15 additions & 11 deletions user_docs/metadata/data_dictionary/AnalysisMethod.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,45 +6,49 @@ An Analysis Method captures the workflow steps that were performed to analyze da
## Fields
### ***name***
**description** : A name identifying this Analysis Method.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
### ***description***
**description** : Description of an entity.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
### ***type***
**description** : The type of an entity. Note: Not to be confused with rdf:type.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
### ***workflow_name***
**description** : The workflow name.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
### ***workflow_version***
**description** : The workflow version.<br>
**required** : False<br>
**requirement**: $\color{blue}{\textbf{recommended}}$<br>
**data type** : string <br>
### ***workflow_repository***
**description** : The workflow repository (e.g., the URL).<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
### ***workflow_doi***
**description** : A digital object identifier for the workflow. Can be a publication or the workflow commit that was used for the Analysis.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
### ***workflow_tasks***
**description** : Tasks performed by the workflow<br>
**required** : False<br>
**requirement**: $\color{blue}{\textbf{recommended}}$<br>
**data type** : string <br>
### ***parameters***
**description** : Key/value pairs where key corresponds to a parameter name and value corresponds to a parameter value (e.g., 'aligner' = 'star_salmon', 'hisat2_build_memory' = '200.GB', 'split_fastq' = 50000000).<br>
**required** : False<br>
**requirement**: $\color{blue}{\textbf{recommended}}$<br>
**data type** : Attribute <br>
### ***software_versions***
**description** : key/value pairs where key corresponds to a software name and value corresponds to a version descriptor (e.g., `salmon` = '1.3.0', `trim-galore` = '0.6.6', `bedtools` = '2.29.2').<br>
**required** : False<br>
**requirement**: $\color{blue}{\textbf{recommended}}$<br>
**data type** : Attribute <br>
### ***attributes***
**description** : One or more attributes that further characterize this Analysis Method.<br>
**requirement**: $\color{green}{\textbf{optional}}$<br>
**data type** : Attribute <br>
### ***alias***
**description** : The alias for an entity at the time of submission.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ An Analysis Method Supporting File is a File that contains additional informatio
## Fields
### ***format***
**description** : The file format of the Supporting File (e.g., TXT, JSON).<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : Controlled Vocabulary <br>

/// details | Permissible Values
Expand All @@ -23,25 +23,25 @@ An Analysis Method Supporting File is a File that contains additional informatio

### ***analysis_method***
**description** : The Analysis Process associated with an entity.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : AnalysisMethod <br>
### ***name***
**description** : The given filename.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
### ***dataset***
**description** : The Dataset alias associated with this File.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : Dataset <br>
### ***ega_accession***
**description** : The EGA accession ID of an entity.<br>
**required** : False<br>
**requirement**: $\color{green}{\textbf{optional}}$<br>
**data type** : string <br>
### ***included_in_submission***
**description** : Whether a File is included in the Submission or not.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : boolean <br>
### ***alias***
**description** : The alias for an entity at the time of submission.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
8 changes: 4 additions & 4 deletions user_docs/metadata/data_dictionary/DataAccessCommittee.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,17 +6,17 @@ A group of members that are delegated to grant access to one or more datasets af
## Fields
### ***email***
**description** : The email of the Data Access Committee (e.g., DAC[at]email.com). This property must not include any personally identifiable data.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
### ***institute***
**description** : The Institute a person is affiliated with.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
### ***ega_accession***
**description** : The EGA accession ID of an entity.<br>
**required** : False<br>
**requirement**: $\color{green}{\textbf{optional}}$<br>
**data type** : string <br>
### ***alias***
**description** : The alias for an entity at the time of submission.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
22 changes: 11 additions & 11 deletions user_docs/metadata/data_dictionary/DataAccessPolicy.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,23 +6,23 @@ A Data Access Policy specifies under which circumstances, legal or otherwise, a
## Fields
### ***name***
**description** : A name for this Data Access Policy.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
### ***description***
**description** : A short description for this Data Access Policy.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
### ***policy_text***
**description** : The complete text for the Data Access Policy.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
### ***policy_url***
**description** : An alternative to the Data Access Policy text is to provide the URL for the policy. This is useful if the terms of the policy are available online at a resolvable URL.<br>
**required** : False<br>
**requirement**: $\color{blue}{\textbf{recommended}}$<br>
**data type** : string <br>
### ***data_use_permission_term***
**description** : The Data Use Permission associated with this Data Use Policy. The used term should be a descendant of 'DUO:0000001: data use permission' (e.g., no restriction).<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : Controlled Vocabulary <br>

/// details | Permissible Values
Expand All @@ -37,11 +37,11 @@ A Data Access Policy specifies under which circumstances, legal or otherwise, a

### ***data_use_permission_id***
**description** : The DUO ID corresponding to the Data Use Permission term (e.g., DUO:0000004).<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
### ***data_use_modifier_terms***
**description** : One or more Data Use Modifiers for the Data Use Permission associated with this Data Use Policy. The used terms should be descendants of 'DUO:0000017: data use modifier' (e.g., clinical care use). Please use 'USER_SPECIFIC_RESTRICTION' if no other modifier applies.<br>
**required** : False<br>
**requirement**: $\color{blue}{\textbf{recommended}}$<br>
**data type** : Controlled Vocabulary <br>

/// details | Permissible Values
Expand Down Expand Up @@ -69,17 +69,17 @@ A Data Access Policy specifies under which circumstances, legal or otherwise, a

### ***data_use_modifier_ids***
**description** : The DUO IDs corresponding to the Data Use Modifier terms (e.g., DUO:0000043).<br>
**required** : False<br>
**requirement**: $\color{blue}{\textbf{recommended}}$<br>
**data type** : string <br>
### ***ega_accession***
**description** : The EGA accession ID of an entity.<br>
**required** : False<br>
**requirement**: $\color{green}{\textbf{optional}}$<br>
**data type** : string <br>
### ***data_access_committee***
**description** : The Data Access Committee linked to this Data Use Policy.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : DataAccessCommittee <br>
### ***alias***
**description** : The alias for an entity at the time of submission.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
14 changes: 7 additions & 7 deletions user_docs/metadata/data_dictionary/Dataset.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,29 +6,29 @@ A Dataset is a collection of Files that is prepared for distribution and is tied
## Fields
### ***title***
**description** : A title for this Dataset.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
### ***description***
**description** : A description summarizing this Dataset.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
### ***types***
**description** : The type of this Dataset.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
### ***ega_accession***
**description** : The EGA accession ID of an entity.<br>
**required** : False<br>
**requirement**: $\color{green}{\textbf{optional}}$<br>
**data type** : string <br>
### ***data_access_policy***
**description** : The Data Access Policy that applies to this Dataset.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : DataAccessPolicy <br>
### ***study***
**description** : The Study associated with this Dataset.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : Study <br>
### ***alias***
**description** : The alias for an entity at the time of submission.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
16 changes: 8 additions & 8 deletions user_docs/metadata/data_dictionary/Experiment.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,33 +6,33 @@ An Experiment is an investigation that consists of a coordinated set of actions
## Fields
### ***experiment_method***
**description** : The alias of one or more Experiment Methods that are associated with this Experiment.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : ExperimentMethod <br>
### ***title***
**description** : The title for this Experiment (e.g., GHGAE_PBMC_RNAseq).<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
### ***description***
**description** : A detailed description of this Experiment.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
### ***type***
**description** : The type of this Experiment.<br>
**required** : False<br>
**requirement**: $\color{green}{\textbf{optional}}$<br>
**data type** : string <br>
### ***ega_accession***
**description** : The EGA accession of the 'Run' entity (EGAR).<br>
**required** : False<br>
**requirement**: $\color{green}{\textbf{optional}}$<br>
**data type** : string <br>
### ***sample***
**description** : The alias of one or more Samples that are associated with this Experiment.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : Sample <br>
### ***attributes***
**description** : Key/value pairs corresponding to an entity.<br>
**required** : False<br>
**requirement**: $\color{green}{\textbf{optional}}$<br>
**data type** : Attribute <br>
### ***alias***
**description** : The alias for an entity at the time of submission.<br>
**required** : True<br>
**requirement**: $\color{red}{\textbf{required}}$<br>
**data type** : string <br>
Loading
Loading