Skip to content

Commit bc1cf32

Browse files
committed
Merge branch 'main' of github.com:ELIXIR-Belgium/ENA-metadata-templates
2 parents e852c43 + 7243bde commit bc1cf32

123 files changed

Lines changed: 282 additions & 205 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

README.md

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,52 @@ The European Nucleotide Archive has specific [metadata requirements](https://ena
44

55
This repository contains tabular-format and xlsx spreadsheet metadata templates required to submit data to ENA using the [ena-upload-cli](https://github.com/usegalaxy-eu/ena-upload-cli) or [Galaxy's ENA upload tool](https://toolshed.g2.bx.psu.edu/view/iuc/ena_upload/). Specifically, there are templates for all the existing [sample checklists](https://www.ebi.ac.uk/ena/browser/checklists). These templates are kept **automatically** up to date with ENA to guarantee the use of the latest attributes. Additionally we also provide a machine actionable JSON file for each template and an `checklist_overview.json` file in the root of this repository listing all available templates in a machine actionable way.
66

7+
**Supported ENA Checklists:**
8+
9+
<!-- TABLE START -->
10+
| ID | Name | Description |
11+
| ---------- | ---------- | ------------ |
12+
| [ERC000011](./templates/ERC000011) | ENA default sample checklist | Minimum information required for the sample |
13+
| [ERC000012](./templates/ERC000012) | GSC MIxS air | Genomic Standards Consortium package extension for reporting of measurements and observations obtained from the environment where the sample was obtained. By choosing the environmental package, a selection of fields can be made from a relevant subsets of the GSC terms. |
14+
| [ERC000013](./templates/ERC000013) | GSC MIxS host associated | Genomic Standards Consortium package extension for reporting of measurements and observations obtained from the environment where the sample was obtained. By choosing the environmental package, a selection of fields can be made from a relevant subsets of the GSC terms. |
15+
| [ERC000014](./templates/ERC000014) | GSC MIxS human associated | Genomic Standards Consortium package extension for reporting of measurements and observations obtained from the environment where the sample was obtained. By choosing the environmental package, a selection of fields can be made from a relevant subsets of the GSC terms. |
16+
| [ERC000015](./templates/ERC000015) | GSC MIxS human gut | Genomic Standards Consortium package extension for reporting of measurements and observations obtained from the environment where the sample was obtained. By choosing the environmental package, a selection of fields can be made from a relevant subsets of the GSC terms. |
17+
| [ERC000016](./templates/ERC000016) | GSC MIxS human oral | Genomic Standards Consortium package extension for reporting of measurements and observations obtained from the environment where the sample was obtained. By choosing the environmental package, a selection of fields can be made from a relevant subsets of the GSC terms. |
18+
| [ERC000017](./templates/ERC000017) | GSC MIxS human skin | Genomic Standards Consortium package extension for reporting of measurements and observations obtained from the environment where the sample was obtained. By choosing the environmental package, a selection of fields can be made from a relevant subsets of the GSC terms. |
19+
| [ERC000018](./templates/ERC000018) | GSC MIxS human vaginal | Genomic Standards Consortium package extension for reporting of measurements and observations obtained from the environment where the sample was obtained. By choosing the environmental package, a selection of fields can be made from a relevant subsets of the GSC terms. |
20+
| [ERC000019](./templates/ERC000019) | GSC MIxS microbial mat biolfilm | Genomic Standards Consortium package extension for reporting of measurements and observations obtained from the environment where the sample was obtained. By choosing the environmental package, a selection of fields can be made from a relevant subsets of the GSC terms. |
21+
| [ERC000020](./templates/ERC000020) | GSC MIxS plant associated | Genomic Standards Consortium package extension for reporting of measurements and observations obtained from the environment where the sample was obtained. By choosing the environmental package, a selection of fields can be made from a relevant subsets of the GSC terms. |
22+
| [ERC000021](./templates/ERC000021) | GSC MIxS sediment | Genomic Standards Consortium package extension for reporting of measurements and observations obtained from the environment where the sample was obtained. By choosing the environmental package, a selection of fields can be made from a relevant subsets of the GSC terms. |
23+
| [ERC000022](./templates/ERC000022) | GSC MIxS soil | Genomic Standards Consortium package extension for reporting of measurements and observations obtained from the environment where the sample was obtained. By choosing the environmental package, a selection of fields can be made from a relevant subsets of the GSC terms. |
24+
| [ERC000023](./templates/ERC000023) | GSC MIxS wastewater sludge | Genomic Standards Consortium package extension for reporting of measurements and observations obtained from the environment where the sample was obtained. By choosing the environmental package, a selection of fields can be made from a relevant subsets of the GSC terms. |
25+
| [ERC000024](./templates/ERC000024) | GSC MIxS water | Genomic Standards Consortium package extension for reporting of measurements and observations obtained from the environment where the sample was obtained. By choosing the environmental package, a selection of fields can be made from a relevant subsets of the GSC terms. |
26+
| [ERC000025](./templates/ERC000025) | GSC MIxS miscellaneous natural or artificial environment | Genomic Standards Consortium package extension for reporting of measurements and observations obtained from the environment where the sample was obtained. By choosing the environmental package, a selection of fields can be made from a relevant subsets of the GSC terms. |
27+
| [ERC000027](./templates/ERC000027) | ENA Micro B3 | Minimum information about a Micro B3 sample. A checklist for reporting metadata of marine microbial samples associated with genomics data. NOTE: Non-genomics data, i.e. oceanographic environmental data and morphology-based biodiversity data, should be submitted to the appropriate National Oceanographic Data Centre according to established reporting practices maintained by oceanographic community experts. Major National Oceanographic Data Centres from countries bordering the North-East Atlantic, and its adjacent seas: the Mediterranean, the Black Sea, the Baltic, the North Sea and the Arctic are listed at http://www.seadatanet.org/Overview/Partners. For the Ocean Sampling Day campaign, non-genomics data shall be reported to the PANGAEA (http://www.pangaea.de/submit/). |
28+
| [ERC000028](./templates/ERC000028) | ENA prokaryotic pathogen minimal sample checklist | Minimum information required for a prokaryotic pathogen sample |
29+
| [ERC000029](./templates/ERC000029) | ENA Global Microbial Identifier reporting standard checklist GMI_MDM:1.1 | Minimum Data for Matching (MDM). A checklist for reporting metadata of pathogen samples for the Global Microbial Identifier (GMI) reporting system. More about GMI can be found here http://www.g-m-i.org/ |
30+
| [ERC000030](./templates/ERC000030) | ENA Tara Oceans | Minimum information about a Tara Oceans sample. A checklist for reporting metadata of oceanic plankton samples associated with genomics data from the Tara Oceans Expedition. |
31+
| [ERC000031](./templates/ERC000031) | GSC MIxS built environment | Genomic Standards Consortium package extension for reporting of measurements and observations obtained from the environment where the sample was obtained. By choosing the environmental package, a selection of fields can be made from a relevant subsets of the GSC terms. |
32+
| [ERC000032](./templates/ERC000032) | ENA Influenza virus reporting standard checklist | Minimum information about an Influenza virus sample. A checklist for reporting metadata of Influenza virus samples associated with genomic data. This minimum metadata standard supports submission of avian, human and mammalian surveillance data as well as serology and viruse isolate information (where available). The ENA Influenza sample checklist is based on standards in use at the Influenza Research Database. |
33+
| [ERC000033](./templates/ERC000033) | ENA virus pathogen reporting standard checklist | Minimum information about a virus pathogen. A checklist for reporting metadata of virus pathogen samples associated with genomic data. This minimum metadata standard was developed by the COMPARE platform for submission of virus surveillance and outbreak data (such as Ebola) as well as virus isolate information. |
34+
| [ERC000034](./templates/ERC000034) | ENA mutagenesis by carcinogen treatment checklist | Minimum Information required for reporting samples associated with genomic data, derived from carcinogen induced animal tumours. This minimum metadata standard was developed in collaboration with Duncan Odom lab for the Mouse Liver Cancer Evolution Project. |
35+
| [ERC000035](./templates/ERC000035) | ENA Crop Plant sample enhanced annotation checklist | The ENA Crop sample enhanced checklist has been developed in collaboration with a number of EMBL-EBI teams to capture enriched annotation of published crop plant samples that lack sufficient reported metadata and are typically associated with systematic transcriptomic realignment-based analyses. |
36+
| [ERC000036](./templates/ERC000036) | ENA sewage checklist | Minimum information about sewage samples. A checklist for reporting of sewage surveillance samples associated with sequence data from metagenomic sequencing projects. This minimum metadata standard was developed by the COMPARE platform. |
37+
| [ERC000037](./templates/ERC000037) | ENA Plant Sample Checklist | ENA implementation of plant specimen contextual information associated with molecular data. The checklist has been developed in collaboration with the NCBI-GenBank and iPlant data resources under the umbrella of the Genomic Standards Consortium. |
38+
| [ERC000038](./templates/ERC000038) | ENA Shellfish Checklist | Shellfish contextual information associated with molecular data. The checklist has been developed in collaboration with EMBRIC Project partners. |
39+
| [ERC000039](./templates/ERC000039) | ENA parasite sample checklist | Minimum information about parasite samples. A checklist for reporting metadata of parasite samples associated with molecular data. This standard was developed by the COMPARE platform and can be used for submission of sample metadata derived from protozoan parasites (e.g. Cryptosporidium) and also multicellular eukaryotic parasites (e.g. Platyhelminthes and Nematoda). |
40+
| [ERC000040](./templates/ERC000040) | ENA UniEuk_EukBank Checklist | Minimum information required for reporting samples associated with the UniEuk EukBank initiative. This checklist aims to capture contextual metadata associated with V4 18S SSU rRNA molecular data. |
41+
| [ERC000041](./templates/ERC000041) | ENA Global Microbial Identifier Proficiency Test (GMI PT) checklist | Minimum information to standardise metadata related to samples used in GMI PT (Global Microbial Identifier Proficiency Test). A checklist for reporting metadata of GMI PT samples associated with molecular data. This minimum metadata standard was developed by the COMPARE platform and can be used for submission of sample metadata derived from Campylobacter coli, Campylobacter jejuni, Listeria monocytogenes, Klebsiella pneumoniae, Salmonella enterica, Escherichia coli and Staphylococcus aureus. |
42+
| [ERC000043](./templates/ERC000043) | ENA Marine Microalgae Checklist | Marine microalgae contextual information. The checklist has been developed in collaboration with EMBRIC Project partners and is suitable for reporting metadata related to environmental samples and those in culture collections. |
43+
| [ERC000044](./templates/ERC000044) | COMPARE-ECDC-EFSA pilot human-associated reporting standard | A checklist for reporting metadata of human-associated pathogen samples for the COMPARE-ECDC-EFSA reporting system. |
44+
| [ERC000045](./templates/ERC000045) | COMPARE-ECDC-EFSA pilot food-associated reporting standard | A checklist for reporting metadata of food-borne pathogen samples for the COMPARE-ECDC-EFSA reporting system. |
45+
| [ERC000047](./templates/ERC000047) | GSC MIMAGS | Genomic Standards Consortium package extension for reporting of measurements and observations obtained from the environment where the sample was obtained. By choosing the environmental package, a selection of fields can be made from a relevant subsets of the GSC terms. |
46+
| [ERC000048](./templates/ERC000048) | GSC MISAGS | Genomic Standards Consortium package extension for reporting of measurements and observations obtained from the environment where the sample was obtained. By choosing the environmental package, a selection of fields can be made from a relevant subsets of the GSC terms. |
47+
| [ERC000049](./templates/ERC000049) | GSC MIUVIGS | Genomic Standards Consortium package extension for reporting of measurements and observations obtained from the environment where the sample was obtained. By choosing the environmental package, a selection of fields can be made from a relevant subsets of the GSC terms. |
48+
| [ERC000050](./templates/ERC000050) | ENA binned metagenome | Minimum information to standardise metadata of binned metagenome samples. Ensures binned and MAG metagenome assembly metadata is compatible. |
49+
| [ERC000051](./templates/ERC000051) | PDX Checklist | Minimum information required for reporting samples associated with patient-derived xenograft (PDX) models or patient samples |
50+
| [ERC000052](./templates/ERC000052) | HoloFood Checklist | Minimum information required for reporting HoloFood samples. HoloFood is a 'hologenomic' approach that will improve the efficiency of food production systems by understanding the biomolecular and physiological processes affected by incorporating feed additives and novel sustainable feeds in farmed animals (https://www.holofood.eu/). |
51+
| [ERC000053](./templates/ERC000053) | Tree of Life Checklist | Minimum information required for reporting samples associated with the Tree of Life Programme (https://www.sanger.ac.uk/programme/tree-of-life/). |
52+
<!-- TABLE END -->
753

854
## Tabular metadata templates (*.tsv)
955
There are four *(\\*.tsv)* files, one for each metadata object (**study**, **sample**, **experiment** and **run**).

scripts/controlled_vocabulary/fixed_fields.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ study:
2424
field_type: TEXT_CHOICE_FIELD
2525
- name: new_study_type
2626
cardinality: optional
27-
description: Optional if 'study_type' is not 'other'To propose a new term, select Other and enter a new study type.
27+
description: Optional if 'study_type' is not 'other'. To propose a new term, select Other and enter a new study type.
2828
units: ""
2929
regex: ""
3030
cv: []
@@ -35,7 +35,7 @@ study:
3535
units: ""
3636
regex: ""
3737
cv: []
38-
field_type: TEXT_FIELD
38+
field_type: TEXT_AREA_FIELD
3939

4040
experiment:
4141
description: "An experiment object serves as a metadata record encapsulating essential details about a sequencing experiment, including the experimental design, sequencing type, and relevant parameters. This information enhances the interpretation and contextual understanding of nucleotide sequences submitted to the archive."
@@ -74,7 +74,7 @@ experiment:
7474
units: ""
7575
regex: ""
7676
cv: []
77-
field_type: TEXT_FIELD
77+
field_type: TEXT_AREA_FIELD
7878
- name: library_name
7979
cardinality: optional
8080
description: The submitter's name for this library.
@@ -201,5 +201,5 @@ sample:
201201
units: ""
202202
regex: ""
203203
cv: []
204-
field_type: TEXT_FIELD
204+
field_type: TEXT_AREA_FIELD
205205

scripts/template_updater.py

Lines changed: 32 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,31 @@
1010
import json
1111
import copy
1212

13+
def generate_markdown_table(data_dict):
14+
# Generate a Markdown table from a dictionary
15+
table_content = '| ID | Name | Description |\n| ---------- | ---------- | ------------ |\n'
16+
for checklist in data_dict:
17+
table_content += f"| [{checklist['accession']}](./templates/{checklist['accession']}) | {checklist['name']} | {checklist['description']} |\n"
18+
return table_content
19+
20+
def update_markdown_table(file_path, table_start, table_end, data_dict):
21+
# Read the content of the Markdown file
22+
with open(file_path, 'r') as file:
23+
content = file.read()
24+
25+
# Find the start and end indices of the table using a marker
26+
start_index = content.find(table_start)
27+
end_index = content.find(table_end)
28+
29+
# Generate the updated table content from the dictionary
30+
new_table_content = generate_markdown_table(data_dict)
31+
32+
# Replace the old table content with the updated one
33+
content = f"{content[:start_index]}{table_start}\n{new_table_content}{content[end_index:]}"
34+
35+
# Write the modified content back to the file
36+
with open(file_path, 'w') as file:
37+
file.write(content)
1338

1439
def fetch_object(url):
1540
print(' GET ' + url)
@@ -219,10 +244,16 @@ def main():
219244
# Fetch all checklist IDs and names:
220245
all_checklists = fetching_checklists()
221246

222-
# Write json file with all information
247+
# Write json file listing all checklists
223248
with open("./checklist_overview.json", 'w') as json_file:
224249
json.dump(all_checklists, json_file, indent=4)
225250

251+
# List all checklists inside of main README
252+
file_path = './README.md'
253+
table_start = '<!-- TABLE START -->'
254+
table_end = '<!-- TABLE END -->'
255+
update_markdown_table(file_path, table_start, table_end, all_checklists)
256+
226257
for response_object in all_checklists: #[{'accession':'ERC000013'}]
227258
checklist = response_object['accession']
228259
print(f"Parsing {checklist}")

templates/ERC000011/ERC000011.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@
4848
{
4949
"name": "new_study_type",
5050
"cardinality": "optional",
51-
"description": "Optional if 'study_type' is not 'other'To propose a new term, select Other and enter a new study type.",
51+
"description": "Optional if 'study_type' is not 'other'. To propose a new term, select Other and enter a new study type.",
5252
"units": "",
5353
"regex": "",
5454
"cv": [],
@@ -61,7 +61,7 @@
6161
"units": "",
6262
"regex": "",
6363
"cv": [],
64-
"field_type": "TEXT_FIELD"
64+
"field_type": "TEXT_AREA_FIELD"
6565
}
6666
]
6767
},
@@ -111,7 +111,7 @@
111111
"units": "",
112112
"regex": "",
113113
"cv": [],
114-
"field_type": "TEXT_FIELD"
114+
"field_type": "TEXT_AREA_FIELD"
115115
},
116116
{
117117
"name": "library_name",
@@ -485,7 +485,7 @@
485485
"units": "",
486486
"regex": "",
487487
"cv": [],
488-
"field_type": "TEXT_FIELD"
488+
"field_type": "TEXT_AREA_FIELD"
489489
},
490490
{
491491
"name": "cell_type",

0 commit comments

Comments
 (0)