diff libs/sratoolkit.2.8.0-centos_linux64/schema/sra/ion-torrent.vschema @ 3:38ad1130d077 draft

planemo upload commit a4fb57231f274270afbfebd47f67df05babffa4a-dirty
author charles_s_test
date Mon, 27 Nov 2017 11:21:07 -0500
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/libs/sratoolkit.2.8.0-centos_linux64/schema/sra/ion-torrent.vschema	Mon Nov 27 11:21:07 2017 -0500
@@ -0,0 +1,117 @@
+/*===========================================================================
+*
+*                            PUBLIC DOMAIN NOTICE
+*               National Center for Biotechnology Information
+*
+*  This software/database is a "United States Government Work" under the
+*  terms of the United States Copyright Act.  It was written as part of
+*  the author's official duties as a United States Government employee and
+*  thus cannot be copyrighted.  This software/database is freely available
+*  to the public for use. The National Library of Medicine and the U.S.
+*  Government have not placed any restriction on its use or reproduction.
+*
+*  Although all reasonable efforts have been taken to ensure the accuracy
+*  and reliability of the software and data, the NLM and the U.S.
+*  Government do not and cannot warrant the performance or results that
+*  may be obtained by using this software or data. The NLM and the U.S.
+*  Government disclaim all warranties, express or implied, including
+*  warranties of performance, merchantability or fitness for any particular
+*  purpose.
+*
+*  Please cite the author in any work or product based on this material.
+*
+* ===========================================================================
+*
+*/
+
+/*==========================================================================
+ * NCBI Ion Torrent Sequence Read Archive schema
+ */
+version 1;
+
+include 'ncbi/sra.vschema';
+include 'ncbi/spotname.vschema';
+include 'ncbi/clip.vschema';
+
+
+/*--------------------------------------------------------------------------
+ * functions
+ */
+
+
+/* tokenize_spot_name
+ *  scans name on input
+ *  tokenizes into parts
+ */
+extern function NCBI:SRA:spot_name_token
+    NCBI:SRA:IonTorrent:tokenize_spot_name #1 ( ascii name );
+
+
+/*--------------------------------------------------------------------------
+ * table
+ */
+
+physical INSDC:position:one NCBI:SRA:IonTorrent:encoding:POSITION #1
+{
+    decode
+    {
+        I32 pos_1st_deriv = iunzip ( @ );
+        return ( INSDC:position:one ) < I32 > integral ( pos_1st_deriv );
+    }
+    encode
+    { 
+        I32 pos_1st_deriv = < I32 > deriv ( @ );
+        return izip ( pos_1st_deriv ); 
+    }
+}
+
+/* IonTorrent:tbl
+ *
+ * history:
+ *  1.0.1 - updated ancestry
+ *  1.0.2 - updated ancestry
+ *  1.0.3 - updated ancestry
+ */
+table NCBI:SRA:IonTorrent:tbl:v2 #1.0.3
+    = INSDC:SRA:tbl:sra #1.0.3
+    , NCBI:SRA:tbl:sra_nopos #2.1.3
+    , NCBI:tbl:base_space #2.0.3
+    , NCBI:tbl:phred_quality #2.0.3
+    , NCBI:SRA:tbl:clip #1.0.2
+{
+    /* PLATFORM is always ION_TORRENT */
+    ascii platform_name
+        = < ascii > echo < "ION_TORRENT" > ();
+
+    /* NAME tokenizing and coordinates
+     *  most work happens in skeyname table
+     */
+    NCBI:SRA:spot_name_token out_spot_name_tok
+        = NCBI:SRA:IonTorrent:tokenize_spot_name ( _out_name );
+
+    NCBI:SRA:spot_name_token in_spot_name_tok
+        = NCBI:SRA:IonTorrent:tokenize_spot_name ( NAME );
+
+    // special sequences
+    column < INSDC:dna:text > zip_encoding FLOW_CHARS;
+    column < INSDC:dna:text > zip_encoding KEY_SEQUENCE;
+
+    // position stored as normal 1-based coordinate
+    INSDC:position:one out_position = .POSITION;
+    physical column NCBI:SRA:IonTorrent:encoding:POSITION
+        .POSITION = POSITION;
+
+
+    // clips
+    physical column < INSDC:coord:one > izip_encoding
+        .CLIP_ADAPTER_LEFT = CLIP_ADAPTER_LEFT;
+    physical column < INSDC:coord:one > izip_encoding
+        .CLIP_ADAPTER_RIGHT = CLIP_ADAPTER_RIGHT;
+    physical column < INSDC:coord:one > izip_encoding
+        .CLIP_QUALITY_LEFT = CLIP_QUALITY_LEFT;
+    physical column < INSDC:coord:one > izip_encoding
+        .CLIP_QUALITY_RIGHT = CLIP_QUALITY_RIGHT;
+
+    // signal
+    column < NCBI:isamp1 > izip_encoding SIGNAL;
+};