Difference between revisions of "ENA Submission Pipeline"

From BGBM Collection Workflows
Jump to: navigation, search
Line 55: Line 55:
* darf keine Umlaute enthalten
* darf keine Umlaute enthalten
* Spaltennamen müssen den INSDC-Featuren entsprechen
* Spaltennamen müssen den INSDC-Featuren entsprechen
* für matK wird organelle = plastid benötigt

Revision as of 12:49, 14 December 2019

Attention: BGBM submissions to ENA including registration of new names should only be done by authorised staff! Please contact the DNA Bank if you want to submit sequences SIX weeks ahead of paper submission! The following guide shall help you to prepare all required data and to understand the complexity of sequence submissions. The submission itself will be done by authorised staff only!

1 Researchers

1.1 INPUT required for any submission

  1. DNA alignment in NEXUS format with annotations following the INSDC vocabulary
  2. Sample metadata in CSV format following the BGBM standard (TODO: description of this standard)
  3. List of standardized scientific names
  4. Project metadata (short name, title of study, abstract, release date, autors/contributors)

1.2 Check all taxon names against NCBI Taxonomy

Option A: Use the NCBI tool: https://www.ncbi.nlm.nih.gov/Taxonomy/TaxIdentifier/tax_identifier.cgi

Option B: Use OpenRefine: TODO: documentation

  • Names muss follow IPNI standard (except for unidenified organisms and new described taxa), most common mistakes are blanks in authorship (e.g. H. Karst); IPNI always without blanks (H.Karst); BGBM follows this standard in all its collection databases
  • Names not found at ENA/NCBI Taxonomy must be registered at ENA (by BGBM DNA Bank!). Note, that you will only find names associated to published sequences!
  • ENA has rules in place for registration of new names one must follow. BGBM documents those name submissions centrally, to enable updating sequence records after publication of new names.

Attention: the registration of new names might require up to two weeks, make sure ALL names are checked carefully and submitted right in time

1.3 Add Annotations to Sequences

  • Required Software: Phyde, Geneious, every common text editor (e.g. Geany, Notepad++, Textpad)
  • Video Tutorial: https://www.youtube.com/watch?v=CY1e2RkULas
  • Attention: ENA requires use of certain vocabulary for annotations see Annotations

Export your file into Nexus format!

2 DNA Bank

2.1 Registration of all new names at NCBI/ENA

  1. Login at ENA's Webin
  2. Click on "Taxonomy Check/Request" --> Next
  3. Enter organism name / upload list of names
    1. Save list of names as txt file (one per row) or enter individually
    2. todo: Beispiel-Anfragen hinzufügen

2.2 Create project at ENA to get project number

  1. Login at ENA's Webin
  2. Click on "Register study (project)" --> Next
  3. Fill out relevant information (Short name, Title of study, Abstract, Release date)

2.3 Überprüfung der Korrespondenz zwischen DNA-Alignment und Metadaten

Benötigte Software: beliebiger Software für Tabellenkalkulation (z.B. LibreOffice), beliebiger Texteditor (z.B. Geany)

  1. Die Sequenznamen des DNA-Alignments müssen den Einträgen einer der Spalten der Metadaten-Datei exakt entsprechen.
  2. Die Metadaten-Datei darf hierbei mehr Einträge haben als das DNA-Alignment, aber das DNA-ALignment darf nicht mehr Einträge haben als die Metadaten-Datei.

2.4 Schritt 6 DNA Bank: Konvertierung des DNA-Alignments von NEXUS-Format zu Flatfile-Format, Integration der Metadaten

Benötigte Software: https://github.com/michaelgruenstaeudl/annonex2embl

2.4.1 Metadaten-File

  • darf keine Leerzeilen enthalten
  • muss mit Komma separiert sein (Windows -> Region zu Englisch (USA) ändern -> CSV export dann mit Komma statt Semikolon
  • darf keine Umlaute enthalten
  • Spaltennamen müssen den INSDC-Featuren entsprechen
  • für matK wird organelle = plastid benötigt

annonex2embl -n $INPUT -c $METAD -o ${INPUT%.nex*}.embl -d $DESCR -e $EMAIL -a $AUTHR

SET INPUT=examples/DNA_Alignment.nex
SET METAD=examples/Metadata.csv
SET DESCR="description_of_alignment"
SET EMAIL=your_email_here@bgbm.org
SET AUTHR="Your_name_here"

annonex2embl -n %INPUT% -c %METAD% -o output.embl -d %DESCR% -e %EMAIL% -a %AUTHR%

Beispiele für DESCR:

  • ITS: "18S rRNA gene (partial), ITS1, 5.8S rRNA gene, ITS2 and 28S rRNA gene (partial)"
  • trnLF: "tRNA-Leu (trnL) gene, partial sequence; trnL-trnF intergenix spacer, complete sequence; and tRNA-Phe (trnF) gene"
  • trnKmatK: "tRNA-Lys (trnK) gene and intron, partial sequence; maturase K (matK) gene, complete cds; psbA gene, partial sequence"
  • rpl16: "rpl16 intron, partial sequence"

2.4.2 Kontrolle des EMBL-Files

  • erste Zeile mol_type richtig übernommen?
  • Datumsangaben in ISO?
  • Identifier mit Unterstrichen (DB_123 statt DB 123)
  • description_of_alignment ersetzt?
  • 58S etc. ersetzt?

2.5 Validierung des EMBL-Flatfile

Benötigte Software: https://mvnrepository.com/artifact/uk.ac.ebi.ena.sequence/embl-api-validator -> eine Version auswählen und dann das jar runterladen

 java -jar embl-api-validator-1.1.265.jar $INPUT ###Check current version number!!!

 SET INPUT=examples/DNA_Alignment.embl 
 java -jar embl-api-validator-1.1.265.jar %INPUT% ###Check current version number!!!

2.6 Entscheidung zwischen Art der Submission

Option A: Interaktiver/GUI-basierter Submission; beschrieben in Schritten 9a und 9b

Option B: Programmatic/Command-Line-basierter Submission; beschrieben in Schritt 10

2.7 9a Konvertierung des EMBL-Flatfiles zu einer ENA Checklist

Benötigte Software: EMBL2checklists (Gruenstaeudl & Hartmaring 2019)

See details here: https://www.protocols.io/view/usage-of-embl2checklists-v6me9c6


 EMBL2checklists_CLI -i $INPUT -o ${INPUT%.embl*}.tsv -c $CHOSEN_CHECKLIST -e no

 SET INPUT=examples/DNA_Alignment.embl 

 EMBL2checklists_CLI -i %INPUT% -o output.tsv -c %CHOSEN_CHECKLIST% -e no

2.8 9b Upload der ENA Checklist unter Angabe der Projektnummer

  1. Bei ENA's Webin einloggen
  2. Klicke auf "Submit other assembled and annotated sequences [formerly EMBL-Bank]" --> Next
  3. Richtige Studie auswählen (nämlich jene, die unter Schritt 1 angelegt wurde) --> Next
  4. Klicke auf "Submit Completed Spreadsheet" und jene Datei auswählen, die unter Schritt 8a erstellt wurde --> Next

2.9 10a DNA Bank: Vorbereiten der xml-Dateien

  1. packen der embl-Datei und Checksumme bestimmen
gzip Akhani-et-al_Willdenowia_Tamarix_trnG-S_ENA-submission.embl
md5sum Akhani-et-al_Willdenowia_Tamarix_trnG-S_ENA-submission.embl.gz
  1. Es werden zwei xml-Dateien benötigt *_submission.xml und *_analysis.xml
  2. Ausfüllen der *_analysis.xml - Datei; die STUDY_REF accession ist die Nummer, der Study, die wir in Schritt 1 angelegt haben!
  3. die *_submission.xml - Datei beinhaltet nur ein leeres Schema

2.10 10b DNA Bank: Hochladen der Dateien über ftp und command line

  1. Der ftp-Server von ENA kann entweder direkt über die Command Line angesprochen werden, oder man nutzt ein beliebiges ftp-Programm. In jedem Fall werden die ENA Webin-Login-Daten benötigt
ftp webin.ebi.ac.uk  ##Login
Type bin to use binary mode.
Type ls command to check the content of your drop box.
Type prompt to switch off confirmation for each file uploaded.
Use mput command to upload files. ##lade folgendes hoch: 1) das *.gz file, das *_submission.xml und das *_analysis.xml
Use by commande to exit the ftp client.
  1. Testsubmission auf dem ENA-Testserver (IMMER vor der echten Submission machen!)
curl -u Webin-NUMMER:TOPSECRETPASSWORD -F "SUBMISSION=@Akhani-et-al_Willdenowia_Tamarix_trnG-S_ENA-submission.xml" -F "ANALYSIS=@Akhani-et-al_Willdenowia_Tamarix_trnG-S_ENA-analysis.xml" "https://wwwdev.ebi.ac.uk/ena/submit/drop-box/submit/" > Akhani-et-al_Willdenowia_Tamarix_trnG-S_Test.xml
  1. Ausgabe des Tests prüfen -> *_Test.xml
  2. Wenn Test erfolgreich -> Submission auf dem ENA-Server
curl -u Webin-NUMMER:TOPSECRETPASSWORD -F "SUBMISSION=@Akhani-et-al_Willdenowia_Tamarix_trnG-S_ENA-submission.xml" -F "ANALYSIS=@Akhani-et-al_Willdenowia_Tamarix_trnG-S_ENA-analysis.xml" "https://www.ebi.ac.uk/ena/submit/drop-box/submit/" > Akhani-et-al_Willdenowia_Tamarix_trnG-S_Test.xml