about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--README.md2
-rw-r--r--doc/database.org123
-rw-r--r--doc/database.svg882
-rw-r--r--doc/joss/2016/paper.bib50
-rw-r--r--doc/joss/2016/paper.json23
-rw-r--r--doc/joss/2016/paper.md84
-rw-r--r--doc/joss/2016/qtl.pngbin0 -> 146924 bytes
-rw-r--r--doc/joss/2016/qtl2.pngbin0 -> 375505 bytes
8 files changed, 1163 insertions, 1 deletions
diff --git a/README.md b/README.md
index 4fe739bf..b6907b0d 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,5 @@
+[![DOI](https://zenodo.org/badge/5591/genenetwork/genenetwork2.svg)](https://zenodo.org/badge/latestdoi/5591/genenetwork/genenetwork2)
+
 # GENENETWORK
 
 This repository contains the source code for the GeneNetwork server
diff --git a/doc/database.org b/doc/database.org
index cf3781a8..2221c4fb 100644
--- a/doc/database.org
+++ b/doc/database.org
@@ -681,7 +681,21 @@ No longer used
 
 ** Species & Strain (should be sample)
 
-Menu
+select * from Species;
++----+-----------+----------------------+----------------+----------------------+-------------------------+------------+---------+
+| Id | SpeciesId | SpeciesName          | Name           | MenuName             | FullName                | TaxonomyId | OrderId |
++----+-----------+----------------------+----------------+----------------------+-------------------------+------------+---------+
+|  1 |         1 | Mouse                | mouse          | Mouse                | Mus musculus            |      10090 |      30 |
+|  2 |         2 | Rat                  | rat            | Rat                  | Rattus norvegicus       |      10116 |      40 |
+|  3 |         3 | Arabidopsis thaliana | arabidopsis    | Arabidopsis thaliana | Arabidopsis thaliana    |       3702 |      60 |
+|  4 |         4 | Human                | human          | Human                | Homo sapiens            |       9606 |      10 |
+|  5 |         5 | Barley               | barley         | Barley               | Hordeum vulgare         |       4513 |      70 |
+|  6 |         6 | Drosophila           | drosophila     | Drosophila           | Drosophila melanogaster |       7227 |      50 |
+|  7 |         7 | Macaque monkey       | macaque monkey | Macaque monkey       | Macaca mulatta          |       9544 |      20 |
+|  8 |         8 | Soybean              | soybean        | Soybean              | Soybean                 |       3847 |      80 |
+|  9 |         9 | Tomato               | tomato         | Tomato               | Tomato                  |       4081 |      90 |
++----+-----------+----------------------+----------------+----------------------+-------------------------+------------+---------+
+
 
 ** InbredSet 
 
@@ -746,3 +760,110 @@ This table is used in
 : wqflask/wqflask/correlation/show_corr_results.py
 
 In there we find 'ProbeSetData.Id = ProbeSetXRef.dataId'.
+
+select * from ProbeSetXRef limit 5;
++------------------+------------+--------+------------+--------------------+------------+-------------------+---------------------+-----------------+--------------------+--------+----------------------+------+
+| ProbeSetFreezeId | ProbeSetId | DataId | Locus_old  | LRS_old            | pValue_old | mean              | se                  | Locus           | LRS                | pValue | additive             | h2   |
++------------------+------------+--------+------------+--------------------+------------+-------------------+---------------------+-----------------+--------------------+--------+----------------------+------+
+|                1 |          1 |      1 | 10.095.400 |   13.3971627898894 |      0.163 |  5.48794285714286 | 0.08525787814808819 | rs13480619      | 12.590069931048001 |  0.269 |          -0.28515625 | NULL |
+|                1 |          2 |      2 | D15Mit189  | 10.042057464356201 |      0.431 |  9.90165714285714 |  0.0374686634976217 | CEL-17_50896182 |   10.5970737900941 |  0.304 | -0.11678333333333299 | NULL |
+|                1 |          3 |      3 | D5Mit139   |   5.43678531742749 |      0.993 |  7.83948571428571 |  0.0457583416912569 | rs13478499      |    6.0970532702754 |  0.988 |    0.112957489878542 | NULL |
+|                1 |          4 |      4 | D1Mit511   |   9.87815279480766 |      0.483 | 8.315628571428569 |  0.0470396593931327 | rs6154379       | 11.774867551173099 |  0.286 |   -0.157113725490196 | NULL |
+|                1 |          5 |      5 | D16H21S16  | 10.191723834264499 |      0.528 |  9.19345714285714 |  0.0354801718293322 | rs4199265       | 10.923263374016202 |  0.468 |  0.11476470588235299 | NULL |
++------------------+------------+--------+------------+--------------------+------------+-------------------+---------------------+-----------------+--------------------+--------+----------------------+------+
+
+i.e., for Strain Id 1 (DataId) 1, the locus '10.095.400' has a
+phenotype value of 5.742.
+
+GeneNetwork1 already has a limited REST interface, if you do
+
+: curl "http://robot.genenetwork.org/webqtl/main.py?cmd=get&probeset=1443823_s_at&db=HC_M2_0606_P"
+
+we get
+
+: ProbeSetID      B6D2F1  C57BL/6J        DBA/2J  BXD1    BXD2    BXD5    BXD6   BXD8     BXD9    BXD11   BXD12   BXD13   BXD15   BXD16   BXD19   BXD20   BXD21  BXD22    BXD23   BXD24   BXD27   BXD28   BXD29   BXD31   BXD32   BXD33   BXD34  BXD38    BXD39   BXD40   BXD42   BXD67   BXD68   BXD43   BXD44   BXD45   BXD48  BXD50    BXD51   BXD55   BXD60   BXD61   BXD62   BXD63   BXD64   BXD65   BXD66  BXD69    BXD70   BXD73   BXD74   BXD75   BXD76   BXD77   BXD79   BXD73a  BXD83  BXD84    BXD85   BXD86   BXD87   BXD89   BXD90   BXD65b  BXD93   BXD94   A/J    AKR/J    C3H/HeJ C57BL/6ByJ      CXB1    CXB2    CXB3    CXB4    CXB5    CXB6   CXB7     CXB8    CXB9    CXB10   CXB11   CXB12   CXB13   BXD48a  129S1/SvImJ    BALB/cJ  BALB/cByJ       LG/J    NOD/ShiLtJ      PWD/PhJ BXD65a  BXD98   BXD99  CAST/EiJ KK/HlJ  WSB/EiJ NZO/HlLtJ       PWK/PhJ D2B6F1
+: 1443823_s_at    15.251  15.626  14.716  15.198  14.918  15.057  15.232  14.968 14.87    15.084  15.192  14.924  15.343  15.226  15.364  15.36   14.792  14.908 15.344   14.948  15.08   15.021  15.176  15.14   14.796  15.443  14.636  14.921 15.22    15.62   14.816  15.39   15.428  14.982  15.05   15.13   14.722  14.636 15.242   15.527  14.825  14.416  15.125  15.362  15.226  15.176  15.328  14.895 15.141   15.634  14.922  14.764  15.122  15.448  15.398  15.089  14.765  15.234 15.302   14.774  14.979  15.212  15.29   15.012  15.041  15.448  14.34   14.338 14.809   15.046  14.816  15.232  14.933  15.255  15.21   14.766  14.8    15.506 15.749   15.274  15.599  15.673  14.651  14.692  14.552  14.563  14.164  14.546 15.044   14.695  15.162  14.772  14.645  15.493  14.75   14.786  15.003  15.148 15.221
+
+getTraitData is defined in the file [[https://github.com/genenetwork/genenetwork/blob/master/web/webqtl/textUI/cmdClass.py#L134][web/webqtl/textUI/cmdClass.py]].
+probe is None, so the code at line 199 is run
+
+query = "SELECT Strain.Name, %sData.value from %sData, Strain, %s,
+%sXRef WHERE %s.Name = '%s' and %sXRef.%sId = %s.Id and
+%sXRef.%sFreezeId = %d and %sXRef.DataId = %sData.Id and
+%sData.StrainId = Strain.Id order by Strain.Id" % (prefix, prefix,
+prefix, prefix, prefix, probeset,prefix, prefix, prefix, prefix,
+prefix, dbId, prefix, prefix, prefix)
+
+where prefix is ProbeSet (one presumes). So, let's see if we can do this by hand
+
+SELECT Strain.Name, ProbeSetData.value from ProbeSetData, Strain, ProbeSet,
+ProbeSetXRef WHERE ProbeSet.Name = '1443823_s_at' and ProbeSetXRef.ProbeSetId = ProbeSet.Id and
+ProbeSetXRef.ProbeSetFreezeId = $dbid and ProbeSetXRef.DataId = ProbeSetData.Id and
+ProbeSetData.StrainId = Strain.Id ORDER BY Strain.Id
+
+The $dbid is listed in the ProbeSetFreeze table,
+
+SELECT ProbeFreezeId,Name FROM ProbeSetFreeze WHERE Name='HC_M2_0606_P' limit 5;
+
++---------------+--------------+
+| ProbeFreezeId | Name         |
++---------------+--------------+
+|            30 | HC_M2_0606_P |
++---------------+--------------+
+
+select id,name from ProbeSet WHERE Name = '1443823_s_at' limit 5;
++--------+--------------+
+| id     | name         |
++--------+--------------+
+| 106556 | 1443823_s_at |
++--------+--------------+
+
+So
+
+query = "SELECT Strain.Name, %sData.value from %sData, Strain, %s,
+%sXRef WHERE %s.Name = '%s' and %sXRef.%sId = %s.Id and
+%sXRef.%sFreezeId = %d and %sXRef.DataId = %sData.Id and
+%sData.StrainId = Strain.Id order by Strain.Id" % (prefix, prefix,
+prefix, prefix, prefix, probeset,prefix, prefix, prefix, prefix,
+prefix, dbId, prefix, prefix, prefix)
+
+CORRECT NAME:
+
+SELECT Strain.Name, ProbeSetData.value from ProbeSetData, Strain,
+ProbeSet, ProbeSetXRef WHERE ProbeSet.Name = 'at_probe' and
+ProbeSetXRef.ProbeSetId = ProbeSet.Id and
+ProbeSetXRef.ProbeSetFreezeId = dbid and ProbeSetXRef.DataId =
+ProbeSetData.Id and ProbeSetData.StrainId = Strain.Id order by
+Strain.Id
+
+
+select * from ProbeSetXRef WHERE probesetfreezeid=30 limit 5;
++------------------+------------+--------+------------+--------------------+------------+--------------------+--------------------+-----------------+--------------------+--------+-------------------+------+
+| ProbeSetFreezeId | ProbeSetId | DataId | Locus_old  | LRS_old            | pValue_old | mean               | se                 | Locus           | LRS                | pValue | additive          | h2   |
++------------------+------------+--------+------------+--------------------+------------+--------------------+--------------------+-----------------+--------------------+--------+-------------------+------+
+|               30 |          1 | 445962 | 01.059.350 | 7.1753152078069595 |      0.961 |            30.0646 |   1.79763935596594 | rs13475891      | 7.1753152078069204 |  0.973 |        4.71778125 | NULL |
+|               30 |          2 | 445963 | D4Mit156   |   7.58944292943285 |      0.724 | 232.38328571428602 |   9.00278909374791 | CEL-4_118751423 |   7.57513435426218 |  0.793 |  25.2660951417004 | NULL |
+|               30 |          3 | 445964 | D1Mit134   |  9.766065497826819 |      0.737 |             47.206 |   1.58413526287766 | mCV23431007     |   9.76606549782677 |  0.797 | -4.82405952380952 | NULL |
+|               30 |          4 | 445965 | D1Mit155   |   18.0045829157241 |      0.033 | 132.29248571428602 |   4.37799472291842 | rs3689947       |   17.9365068406286 |  0.049 |  -16.945619047619 | NULL |
+|               30 |          5 | 445966 | D5Mit197   |   9.51068902627823 |      0.476 |   271.309971428571 | 7.4294268316065395 | rs6239372       |   10.4214974316601 |   0.41 | -25.6148045454546 | NULL |
++------------------+------------+--------+------------+--------------------+------------+--------------------+--------------------+-----------------+--------------------+--------+-------------------+------+
+
+So, apparently ProbeSetFreezeID points to the database identifier in
+ProbeSetFreeze which has the name of the 'DB'. OK, that kinda makes
+sense now. Meanwhile Probeset.name points to the phenotype name.
+
+ProbeSetXRef binds these tables together. Finally there is the data in
+
+select * from ProbeSetData limit 5;
++----+----------+-------+
+| Id | StrainId | value |
++----+----------+-------+
+|  1 |        1 | 5.742 |
+|  1 |        2 | 5.006 |
+|  1 |        3 | 6.079 |
+|  1 |        4 | 6.414 |
+|  1 |        5 | 4.885 |
++----+----------+-------+
+5 rows in set (0.00 sec)
+
+linked by ProbeSetXRef.dataid.
diff --git a/doc/database.svg b/doc/database.svg
new file mode 100644
index 00000000..9ddc2f47
--- /dev/null
+++ b/doc/database.svg
@@ -0,0 +1,882 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="210mm"
+   height="297mm"
+   viewBox="0 0 744.09448819 1052.3622047"
+   id="svg2"
+   version="1.1"
+   inkscape:version="0.91 r13725"
+   sodipodi:docname="database.svg">
+  <defs
+     id="defs4">
+    <marker
+       inkscape:isstock="true"
+       style="overflow:visible;"
+       id="marker12489"
+       refX="0.0"
+       refY="0.0"
+       orient="auto"
+       inkscape:stockid="Arrow2Mend">
+      <path
+         transform="scale(0.6) rotate(180) translate(0,0)"
+         d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
+         style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#0000d7;stroke-opacity:1;fill:#0000d7;fill-opacity:1"
+         id="path12491" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow2Lend"
+       orient="auto"
+       refY="0.0"
+       refX="0.0"
+       id="Arrow2Lend"
+       style="overflow:visible;"
+       inkscape:isstock="true">
+      <path
+         id="path4445"
+         style="fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
+         d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
+         transform="scale(1.1) rotate(180) translate(1,0)" />
+    </marker>
+    <marker
+       inkscape:isstock="true"
+       style="overflow:visible;"
+       id="marker11727"
+       refX="0.0"
+       refY="0.0"
+       orient="auto"
+       inkscape:stockid="Arrow2Mend">
+      <path
+         transform="scale(0.6) rotate(180) translate(0,0)"
+         d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
+         style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#0000da;stroke-opacity:1;fill:#0000da;fill-opacity:1"
+         id="path11729" />
+    </marker>
+    <marker
+       inkscape:isstock="true"
+       style="overflow:visible;"
+       id="marker11607"
+       refX="0.0"
+       refY="0.0"
+       orient="auto"
+       inkscape:stockid="Arrow2Lend">
+      <path
+         transform="scale(1.1) rotate(180) translate(1,0)"
+         d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
+         style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#0000da;stroke-opacity:1;fill:#0000da;fill-opacity:1"
+         id="path11609" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0.0"
+       refX="0.0"
+       id="Arrow1Lend"
+       style="overflow:visible;"
+       inkscape:isstock="true">
+      <path
+         id="path4427"
+         d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
+         style="fill-rule:evenodd;stroke:#0000a3;stroke-width:1pt;stroke-opacity:1;fill:#0000a3;fill-opacity:1"
+         transform="scale(0.8) rotate(180) translate(12.5,0)" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow2Mend"
+       orient="auto"
+       refY="0.0"
+       refX="0.0"
+       id="Arrow2Mend"
+       style="overflow:visible;"
+       inkscape:isstock="true"
+       inkscape:collect="always">
+      <path
+         id="path4451"
+         style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#0000d7;stroke-opacity:1;fill:#0000d7;fill-opacity:1"
+         d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
+         transform="scale(0.6) rotate(180) translate(0,0)" />
+    </marker>
+    <marker
+       inkscape:isstock="true"
+       style="overflow:visible;"
+       id="marker10561"
+       refX="0.0"
+       refY="0.0"
+       orient="auto"
+       inkscape:stockid="Arrow2Mend">
+      <path
+         transform="scale(0.6) rotate(180) translate(0,0)"
+         d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
+         style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1"
+         id="path10563" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow2Mstart"
+       orient="auto"
+       refY="0.0"
+       refX="0.0"
+       id="Arrow2Mstart"
+       style="overflow:visible"
+       inkscape:isstock="true">
+      <path
+         id="path4448"
+         style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#0000b1;stroke-opacity:1;fill:#0000b1;fill-opacity:1"
+         d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
+         transform="scale(0.6) translate(0,0)" />
+    </marker>
+    <marker
+       inkscape:stockid="TriangleOutM"
+       orient="auto"
+       refY="0.0"
+       refX="0.0"
+       id="TriangleOutM"
+       style="overflow:visible"
+       inkscape:isstock="true">
+      <path
+         id="path4569"
+         d="M 5.77,0.0 L -2.88,5.0 L -2.88,-5.0 L 5.77,0.0 z "
+         style="fill-rule:evenodd;stroke:#0000b1;stroke-width:1pt;stroke-opacity:1;fill:#0000b1;fill-opacity:1"
+         transform="scale(0.4)" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0.0"
+       refX="0.0"
+       id="Arrow1Lstart"
+       style="overflow:visible"
+       inkscape:isstock="true">
+      <path
+         id="path4424"
+         d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
+         style="fill-rule:evenodd;stroke:#0000b1;stroke-width:1pt;stroke-opacity:1;fill:#0000b1;fill-opacity:1"
+         transform="scale(0.8) translate(12.5,0)" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow2Mstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow2Mstart-5"
+       style="overflow:visible"
+       inkscape:isstock="true">
+      <path
+         inkscape:connector-curvature="0"
+         id="path4448-2"
+         style="fill:#0000b1;fill-opacity:1;fill-rule:evenodd;stroke:#0000b1;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
+         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+         transform="scale(0.6,0.6)" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow2Mend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow2Mend-8"
+       style="overflow:visible"
+       inkscape:isstock="true">
+      <path
+         inkscape:connector-curvature="0"
+         id="path4451-9"
+         style="fill:#0000b1;fill-opacity:1;fill-rule:evenodd;stroke:#0000b1;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
+         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+         transform="scale(-0.6,-0.6)" />
+    </marker>
+    <marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker12489-7"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow2Mend">
+      <path
+         inkscape:connector-curvature="0"
+         transform="scale(-0.6,-0.6)"
+         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+         style="fill:#0000d7;fill-opacity:1;fill-rule:evenodd;stroke:#0000d7;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
+         id="path12491-4" />
+    </marker>
+    <marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker12489-7-2"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow2Mend">
+      <path
+         inkscape:connector-curvature="0"
+         transform="scale(-0.6,-0.6)"
+         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+         style="fill:#0000d7;fill-opacity:1;fill-rule:evenodd;stroke:#0000d7;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
+         id="path12491-4-9" />
+    </marker>
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="0.98994949"
+     inkscape:cx="361.50633"
+     inkscape:cy="527.18241"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="false"
+     inkscape:window-width="1085"
+     inkscape:window-height="1276"
+     inkscape:window-x="28"
+     inkscape:window-y="142"
+     inkscape:window-maximized="0"
+     inkscape:snap-bbox="false"
+     inkscape:snap-nodes="true">
+    <inkscape:grid
+       type="xygrid"
+       id="grid3355" />
+  </sodipodi:namedview>
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1">
+    <rect
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.46889797px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       id="rect3357"
+       width="174.81682"
+       height="25.531101"
+       x="39.020161"
+       y="85.668076" />
+    <rect
+       style="fill:none"
+       id="rect4159"
+       width="280"
+       height="20"
+       x="40"
+       y="72.362206" />
+    <rect
+       style="fill:none"
+       id="rect4164"
+       width="290"
+       height="20"
+       x="40"
+       y="72.362206" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:100%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;-inkscape-font-specification:'sans-serif, Normal';font-stretch:normal;font-variant:normal;text-anchor:start;text-align:start;writing-mode:lr;"
+       x="40"
+       y="82.362206"
+       id="text4181"
+       sodipodi:linespacing="100%"><tspan
+         sodipodi:role="line"
+         id="tspan4183"
+         x="40"
+         y="82.362206">ProbesetData</tspan><tspan
+         sodipodi:role="line"
+         x="40"
+         y="107.36221"
+         id="tspan4185" /></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:20px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="100"
+       y="132.3622"
+       id="text4187"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan4189"
+         x="100"
+         y="132.3622" /></text>
+    <rect
+       style="fill:none"
+       id="rect4191"
+       width="80"
+       height="70.000008"
+       x="60"
+       y="92.362206" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
+       x="60"
+       y="102.3622"
+       id="text4208"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan4210"
+         x="60"
+         y="102.3622">id</tspan><tspan
+         sodipodi:role="line"
+         x="60"
+         y="127.3622"
+         id="tspan4212" /></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:100%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;-inkscape-font-specification:'sans-serif, Normal';font-stretch:normal;font-variant:normal;text-anchor:start;text-align:start;writing-mode:lr;"
+       x="90"
+       y="102.3622"
+       id="text4214"
+       sodipodi:linespacing="100%"><tspan
+         sodipodi:role="line"
+         id="tspan4216"
+         x="90"
+         y="102.3622">strainid</tspan><tspan
+         sodipodi:role="line"
+         x="90"
+         y="127.3622"
+         id="tspan4218" /></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:20px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="210"
+       y="102.3622"
+       id="text4220"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         x="210"
+         y="102.3622"
+         id="tspan4224" /><tspan
+         sodipodi:role="line"
+         x="210"
+         y="127.3622"
+         id="tspan4228" /></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="160.71428"
+       y="102.3622"
+       id="text4230"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan4232"
+         x="160.71428"
+         y="102.3622">value</tspan><tspan
+         sodipodi:role="line"
+         x="160.71428"
+         y="117.9872"
+         id="tspan4234" /></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="40"
+       y="162.3622"
+       id="text4236"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan4238"
+         x="40"
+         y="162.3622">ProbeSetXRef</tspan><tspan
+         sodipodi:role="line"
+         x="40"
+         y="177.9872"
+         id="tspan4240" /></text>
+    <rect
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.69999564px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       id="rect3357-3"
+       width="393.15714"
+       height="25.300003"
+       x="39.849991"
+       y="171.49791" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="60"
+       y="182.3622"
+       id="text4257"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan4259"
+         x="60"
+         y="182.3622">ProbeSetFreezeId</tspan><tspan
+         sodipodi:role="line"
+         x="60"
+         y="197.9872"
+         id="tspan4261" /></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="190"
+       y="182.3622"
+       id="text4263"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan4265"
+         x="190"
+         y="182.3622">ProbeSetID</tspan><tspan
+         sodipodi:role="line"
+         x="190"
+         y="197.9872"
+         id="tspan4267" /></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="290"
+       y="182.3622"
+       id="text4269"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan4271"
+         x="290"
+         y="182.3622">DataId</tspan><tspan
+         sodipodi:role="line"
+         x="290"
+         y="197.9872"
+         id="tspan4273" /></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="360"
+       y="182.3622"
+       id="text4275"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan4277"
+         x="360"
+         y="182.3622">pValue</tspan><tspan
+         sodipodi:role="line"
+         x="360"
+         y="197.9872"
+         id="tspan4279" /></text>
+    <rect
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.50748467px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       id="rect3357-6"
+       width="205.08281"
+       height="25.492514"
+       x="249.75372"
+       y="87.830231" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="250"
+       y="82.362206"
+       id="text4296"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         x="250"
+         y="82.362206"
+         id="tspan12343">ProbesetFreeze</tspan><tspan
+         sodipodi:role="line"
+         x="250"
+         y="97.987206"
+         id="tspan4300" /></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="312.52795"
+       y="102.3622"
+       id="text4302"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         x="312.52795"
+         y="102.3622"
+         id="tspan5260">ProbeFreezeId </tspan><tspan
+         sodipodi:role="line"
+         x="312.52795"
+         y="117.9872"
+         id="tspan4308" /><tspan
+         sodipodi:role="line"
+         x="312.52795"
+         y="133.6122"
+         id="tspan4306" /></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="404.24365"
+       y="102.3622"
+       id="text4310"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan4312"
+         x="404.24365"
+         y="102.3622">Name</tspan><tspan
+         sodipodi:role="line"
+         x="404.24365"
+         y="117.9872"
+         id="tspan4314" /></text>
+    <path
+       style="fill:none"
+       id="path4331"
+       sodipodi:type="arc"
+       sodipodi:cx="415"
+       sodipodi:cy="57.362206"
+       sodipodi:rx="15"
+       sodipodi:ry="15"
+       sodipodi:start="0"
+       sodipodi:end="0.30092023"
+       d="m 430,57.362206 a 15,15 0 0 1 -0.67404,4.445988 L 415,57.362206 Z" />
+    <path
+       style="fill:none"
+       id="path4333"
+       sodipodi:type="arc"
+       sodipodi:cx="415"
+       sodipodi:cy="57.362206"
+       sodipodi:rx="25"
+       sodipodi:ry="5"
+       sodipodi:start="0"
+       sodipodi:end="0.30092094"
+       d="m 440,57.362206 a 25,5 0 0 1 -1.1234,1.481999 L 415,57.362206 Z" />
+    <path
+       style="fill:none"
+       id="path4335"
+       sodipodi:type="arc"
+       sodipodi:cx="400"
+       sodipodi:cy="57.362206"
+       sodipodi:rx="10"
+       sodipodi:ry="15"
+       sodipodi:start="0"
+       sodipodi:end="0.30092094"
+       d="m 410,57.362206 a 10,15 0 0 1 -0.44936,4.445998 L 400,57.362206 Z" />
+    <path
+       style="fill:none"
+       id="path4337"
+       sodipodi:type="arc"
+       sodipodi:cx="336.88586"
+       sodipodi:cy="45.240116"
+       sodipodi:rx="30.304577"
+       sodipodi:ry="1.5152289"
+       sodipodi:start="0"
+       sodipodi:end="0.30092094"
+       d="m 367.19044,45.240116 a 30.304577,1.5152289 0 0 1 -1.36177,0.449114 l -28.94281,-0.449114 z" />
+    <path
+       style="fill:none"
+       id="path4341"
+       sodipodi:type="arc"
+       sodipodi:cx="279.81226"
+       sodipodi:cy="30.592905"
+       sodipodi:rx="10.101525"
+       sodipodi:ry="4.0406103"
+       sodipodi:start="0"
+       sodipodi:end="0.27257505"
+       d="m 289.91378,30.592905 a 10.101525,4.0406103 0 0 1 -0.37294,1.087782 l -9.72858,-1.087782 z" />
+    <path
+       style="fill:none"
+       id="path4343"
+       sodipodi:type="arc"
+       sodipodi:cx="294.96454"
+       sodipodi:cy="47.007885"
+       sodipodi:rx="5.0507627"
+       sodipodi:ry="12.374369"
+       sodipodi:start="0"
+       sodipodi:end="0.27257505"
+       d="m 300.0153,47.007885 a 5.0507627,12.374369 0 0 1 -0.18647,3.331332 l -4.86429,-3.331332 z" />
+    <path
+       style="fill:none"
+       id="path4345"
+       sodipodi:type="arc"
+       sodipodi:cx="314.15744"
+       sodipodi:cy="50.795956"
+       sodipodi:rx="17.172594"
+       sodipodi:ry="2.5253813"
+       sodipodi:start="0"
+       sodipodi:end="0.27257505"
+       d="m 331.33003,50.795956 a 17.172594,2.5253813 0 0 1 -0.63399,0.679863 l -16.5386,-0.679863 z" />
+    <path
+       style="fill:none"
+       id="path4347"
+       sodipodi:type="arc"
+       sodipodi:cx="372.49374"
+       sodipodi:cy="53.573875"
+       sodipodi:rx="36.112953"
+       sodipodi:ry="5.8083773"
+       sodipodi:start="0"
+       sodipodi:end="0.27257505"
+       d="m 408.6067,53.573875 a 36.112953,5.8083773 0 0 1 -1.33326,1.563687 l -34.7797,-1.563687 z" />
+    <path
+       style="opacity:0.92099998;fill:#1df5d5;fill-opacity:1;stroke:#000000;stroke-width:0.05549314;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.96610173"
+       id="path4362"
+       sodipodi:type="arc"
+       sodipodi:cx="432.99887"
+       sodipodi:cy="78.632385"
+       sodipodi:rx="26.093044"
+       sodipodi:ry="18.630219"
+       sodipodi:start="0.86050045"
+       sodipodi:end="0.81667097"
+       d="m 450.01305,92.757239 a 26.093044,18.630219 0 0 1 -36.6095,-1.82283 26.093044,18.630219 0 0 1 2.15172,-26.157287 26.093044,18.630219 0 0 1 36.65666,1.249611 26.093044,18.630219 0 0 1 -1.34842,26.184672"
+       sodipodi:open="true" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="427.39667"
+       y="80.98439"
+       id="text4412"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan4414"
+         x="427.39667"
+         y="80.98439">DB</tspan><tspan
+         sodipodi:role="line"
+         x="427.39667"
+         y="96.60939"
+         id="tspan4416" /></text>
+    <rect
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.63383168px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       id="rect3357-6-4"
+       width="263.54529"
+       height="30.944864"
+       x="473.30872"
+       y="-76.369919"
+       transform="scale(1,-1)" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="475.78186"
+       y="35.138592"
+       id="text5279"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan5281"
+         x="475.78186"
+         y="35.138592">ProbeFreeze</tspan><tspan
+         sodipodi:role="line"
+         x="475.78186"
+         y="50.763592"
+         id="tspan5283" /></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="481.84277"
+       y="64.433014"
+       id="text5285"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan5287"
+         x="481.84277"
+         y="64.433014">id</tspan><tspan
+         sodipodi:role="line"
+         x="481.84277"
+         y="80.058014"
+         id="tspan5289" /></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="509.11688"
+       y="64.433014"
+       id="text5291"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan5293"
+         x="509.11688"
+         y="64.433014">ProbeFreezeId</tspan><tspan
+         sodipodi:role="line"
+         x="509.11688"
+         y="80.058006"
+         id="tspan5295" /></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="616.19305"
+       y="64.433014"
+       id="text5297"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan5299"
+         x="616.19305"
+         y="64.433014">TissueId</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="263.64981"
+       y="101.80865"
+       id="text5965"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan5967"
+         x="263.64981"
+         y="101.80865">id</tspan><tspan
+         sodipodi:role="line"
+         x="263.64981"
+         y="117.43365"
+         id="tspan5969" /></text>
+    <path
+       style="opacity:0.92099998;fill:#1df5d5;fill-opacity:1;stroke:#000000;stroke-width:0.04304412;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.96610173"
+       id="path4362-2"
+       sodipodi:type="arc"
+       sodipodi:cx="506.08649"
+       sodipodi:cy="83.625862"
+       sodipodi:rx="20.03821"
+       sodipodi:ry="14.595966"
+       sodipodi:start="0.86050045"
+       sodipodi:end="0.81667097"
+       d="m 519.15256,94.692071 a 20.03821,14.595966 0 0 1 -28.11434,-1.428108 20.03821,14.595966 0 0 1 1.65242,-20.493098 20.03821,14.595966 0 0 1 28.15056,0.979016 20.03821,14.595966 0 0 1 -1.03552,20.514553"
+       sodipodi:open="true" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="501.03564"
+       y="86.656364"
+       id="text7497"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan7499"
+         x="501.03564"
+         y="86.656364">=</tspan></text>
+    <path
+       style="fill:none;fill-rule:evenodd;stroke:#0000a3;stroke-width:2.8;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none;marker-end:url(#Arrow2Mend)"
+       d="m 385.87827,117.9711 c 0,0 59.599,62.62946 92.93404,22.22336 30.30457,-42.426411 30.30457,-42.426411 30.30457,-42.426411"
+       id="path11531"
+       inkscape:connector-curvature="0" />
+    <path
+       style="fill:none;fill-rule:evenodd;stroke:#0000da;stroke-width:4.50923538;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker11727)"
+       d="M 303.7558,169.72606 71.513981,116.30022"
+       id="path11707"
+       inkscape:connector-curvature="0" />
+    <path
+       style="fill:none;fill-rule:evenodd;stroke:#0000d7;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none;marker-end:url(#marker12489)"
+       d="m 138.3909,171.50919 130.30968,-59.599"
+       id="path12481"
+       inkscape:connector-curvature="0" />
+    <rect
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.46889797px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       id="rect3357-8"
+       width="174.81682"
+       height="25.531101"
+       x="42.901268"
+       y="25.4035" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="43.436558"
+       y="17.966"
+       id="text12592"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan12594"
+         x="43.436558"
+         y="17.966">Strain</tspan><tspan
+         sodipodi:role="line"
+         x="43.436558"
+         y="33.591"
+         id="tspan12596" /></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="55.558392"
+       y="41.199509"
+       id="text12598"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         x="55.558392"
+         y="41.199509"
+         id="tspan12610">id</tspan><tspan
+         sodipodi:role="line"
+         x="55.558392"
+         y="56.824509"
+         id="tspan12602" /></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="101.01525"
+       y="40.189354"
+       id="text12604"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan12606"
+         x="101.01525"
+         y="40.189354">name</tspan><tspan
+         sodipodi:role="line"
+         x="101.01525"
+         y="55.814354"
+         id="tspan12608" /></text>
+    <path
+       style="fill:none;fill-rule:evenodd;stroke:#0000d7;stroke-width:0.96167564;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker12489-7)"
+       d="M 108.99621,89.933268 65.230166,45.329821"
+       id="path12481-0"
+       inkscape:connector-curvature="0" />
+    <rect
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.46889797px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       id="rect3357-8-7"
+       width="174.81682"
+       height="25.531101"
+       x="40.880962"
+       y="240.56599" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="43.436558"
+       y="231.10818"
+       id="text14098"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan14100"
+         x="43.436558"
+         y="231.10818">ProbeSet</tspan><tspan
+         sodipodi:role="line"
+         x="43.436558"
+         y="246.73318"
+         id="tspan14102" /></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="53.538086"
+       y="257.37213"
+       id="text14104"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         x="53.538086"
+         y="257.37213"
+         id="tspan14108">id</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="90.913734"
+       y="256.362"
+       id="text14112"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         x="90.913734"
+         y="256.362"
+         id="tspan14116">name</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="144.45181"
+       y="255.35185"
+       id="text14120"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         x="144.45181"
+         y="255.35185"
+         id="tspan14124">many infos</tspan></text>
+    <path
+       style="fill:none;fill-rule:evenodd;stroke:#0000d7;stroke-width:1.89054883;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker12489-7-2)"
+       d="M 72.019909,251.65943 208.39464,196.3512"
+       id="path12481-0-6"
+       inkscape:connector-curvature="0"
+       inkscape:transform-center-x="-32.453094"
+       inkscape:transform-center-y="114.65633" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:12.5px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       x="150.51273"
+       y="40.18935"
+       id="text3465"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan3467"
+         x="150.51273"
+         y="40.18935">speciesid</tspan><tspan
+         sodipodi:role="line"
+         x="150.51273"
+         y="55.81435"
+         id="tspan3469" /></text>
+  </g>
+</svg>
diff --git a/doc/joss/2016/paper.bib b/doc/joss/2016/paper.bib
new file mode 100644
index 00000000..34c0fd05
--- /dev/null
+++ b/doc/joss/2016/paper.bib
@@ -0,0 +1,50 @@
+@article{WGCNA:2008,
+  author       = {Langfelder, P. and Horvath, S.},
+  title        = {{WGCNA: an R package for weighted correlation network analysis}},
+  journal      = {BMC Bioinformatics},
+  year         = {2008},
+  volume       = {9},
+  pages        = {559},
+  doi          = {10.1186/1471-2105-9-559},
+  url          = {http://www.ncbi.nlm.nih.gov/pubmed/19114008},
+  abstract     = {BACKGROUND: Correlation networks are increasingly being used in bioinformatics applications. For example, weighted gene co-expression network analysis is a systems biology method for describing the correlation patterns among genes across microarray samples. Weighted correlation network analysis (WGCNA) can be used for finding clusters (modules) of highly correlated genes, for summarizing such clusters using the module eigengene or an intramodular hub gene, for relating modules to one another and to external sample traits (using eigengene network methodology), and for calculating module membership measures. Correlation networks facilitate network based gene screening methods that can be used to identify candidate biomarkers or therapeutic targets. These methods have been successfully applied in various biological contexts, e.g. cancer, mouse genetics, yeast genetics, and analysis of brain imaging data. While parts of the correlation network methodology have been described in separate publications, there is a need to provide a user-friendly, comprehensive, and consistent software implementation and an accompanying tutorial. RESULTS: The WGCNA R software package is a comprehensive collection of R functions for performing various aspects of weighted correlation network analysis. The package includes functions for network construction, module detection, gene selection, calculations of topological properties, data simulation, visualization, and interfacing with external software. Along with the R package we also present R software tutorials. While the methods development was motivated by gene expression data, the underlying data mining approach can be applied to a variety of different settings. CONCLUSION: The WGCNA package provides R functions for weighted correlation network analysis, e.g. co-expression network analysis of gene expression data. The R package along with its source code and additional material are freely available at http://www.genetics.ucla.edu/labs/horvath/CoexpressionNetwork/Rpackages/WGCNA.}
+}
+
+@article{Wang:2016,
+  author       = {Wang, X. and Pandey, A. K. and Mulligan, M. K. and Williams, E. G. and Mozhui, K. and Li, Z. and Jovaisaite, V. and Quarles, L. D. and Xiao, Z. and Huang, J. and Capra, J. A. and Chen, Z. and Taylor, W. L. and Bastarache, L. and Niu, X. and Pollard, K. S. and Ciobanu, D. C. and Reznik, A. O. and Tishkov, A. V. and Zhulin, I. B. and Peng, J. and Nelson, S. F. and Denny, J. C. and Auwerx, J. and Lu, L. and Williams, R. W.},
+  title        = {{Joint mouse-human phenome-wide association to test gene function and disease risk}},
+  journal      = {Nat Commun},
+  year         = {2016},
+  volume       = {7},
+  pages        = {10464},
+  doi          = {10.1038/ncomms10464},
+  url          = {http://www.ncbi.nlm.nih.gov/pubmed/26833085},
+  abstract     = {Phenome-wide association is a novel reverse genetic strategy to analyze genome-to-phenome relations in human clinical cohorts. Here we test this approach using a large murine population segregating for approximately 5 million sequence variants, and we compare our results to those extracted from a matched analysis of gene variants in a large human cohort. For the mouse cohort, we amassed a deep and broad open-access phenome consisting of approximately 4,500 metabolic, physiological, pharmacological and behavioural traits, and more than 90 independent expression quantitative trait locus (QTL), transcriptome, proteome, metagenome and metabolome data sets--by far the largest coherent phenome for any experimental cohort (www.genenetwork.org). We tested downstream effects of subsets of variants and discovered several novel associations, including a missense mutation in fumarate hydratase that controls variation in the mitochondrial unfolded protein response in both mouse and Caenorhabditis elegans, and missense mutations in Col6a5 that underlies variation in bone mineral density in both mouse and human.}
+}
+
+@article{Lippert:2011,
+  author       = {Lippert, C. and Listgarten, J. and Liu, Y. and Kadie, C. M. and Davidson, R. I. and Heckerman, D.},
+  title        = {{FaST linear mixed models for genome-wide association studies}},
+  journal      = {Nat Methods},
+  year         = {2011},
+  volume       = {8},
+  number       = {10},
+  pages        = {833-835},
+  doi          = {10.1038/nmeth.1681},
+  url          = {http://www.ncbi.nlm.nih.gov/pubmed/21892150},
+  abstract     = {We describe factored spectrally transformed linear mixed models (FaST-LMM), an algorithm for genome-wide association studies (GWAS) that scales linearly with cohort size in both run time and memory use. On Wellcome Trust data for 15,000 individuals, FaST-LMM ran an order of magnitude faster than current efficient algorithms. Our algorithm can analyze data for 120,000 individuals in just a few hours, whereas current algorithms fail on data for even 20,000 individuals (http://mscompbio.codeplex.com/).}
+}
+
+@article{Arends:2010,
+  author       = {Arends, D. and Prins, P. and Jansen, R. C. and Broman, K. W.},
+  title        = {{R/qtl: high-throughput multiple QTL mapping}},
+  journal      = {Bioinformatics},
+  year         = {2010},
+  volume       = {26},
+  number       = {23},
+  pages        = {2990-2992},
+  doi          = {10.1093/bioinformatics/btq565},
+  url          = {http://www.ncbi.nlm.nih.gov/pubmed/20966004},
+  abstract     = {MOTIVATION: R/qtl is free and powerful software for mapping and exploring quantitative trait loci (QTL). R/qtl provides a fully comprehensive range of methods for a wide range of experimental cross types. We recently added multiple QTL mapping (MQM) to R/qtl. MQM adds higher statistical power to detect and disentangle the effects of multiple linked and unlinked QTL compared with many other methods. MQM for R/qtl adds many new features including improved handling of missing data, analysis of 10,000 s of molecular traits, permutation for determining significance thresholds for QTL and QTL hot spots, and visualizations for cis-trans and QTL interaction effects. MQM for R/qtl is the first free and open source implementation of MQM that is multi-platform, scalable and suitable for automated procedures and large genetical genomics datasets. AVAILABILITY: R/qtl is free and open source multi-platform software for the statistical language R, and is made available under the GPLv3 license. R/qtl can be installed from http://www.rqtl.org/. R/qtl queries should be directed at the mailing list, see http://www.rqtl.org/list/. CONTACT: kbroman@biostat.wisc.edu.},
+
+}
diff --git a/doc/joss/2016/paper.json b/doc/joss/2016/paper.json
new file mode 100644
index 00000000..c3c02156
--- /dev/null
+++ b/doc/joss/2016/paper.json
@@ -0,0 +1,23 @@
+{
+  "@context": "https://raw.githubusercontent.com/mbjones/codemeta/master/codemeta.jsonld",
+  "@type": "Code",
+  "author": [
+    {
+      "@id": "0000-0002-9623-3401",
+      "@type": "Person",
+      "email": "jakevdp@uw.edu",
+      "name": "Jake VanderPlas",
+      "affiliation": "University of Washington eScience Institute"
+    }
+  ],
+  "identifier": "https://zenodo.org/record/50995#.Vyp9DBUrJBw",
+  "codeRepository": "http://github.com/jakevdp/mst_clustering",
+  "datePublished": "2016-05-04",
+  "dateModified": "2016-05-04",
+  "dateCreated": "2016-05-04",
+  "description": "Clustering via Euclidean Minimum Spanning Trees",
+  "keywords": "machine learning",
+  "license": "BSD",
+  "title": "mst_clustering",
+  "version": "v1.0"
+}
diff --git a/doc/joss/2016/paper.md b/doc/joss/2016/paper.md
new file mode 100644
index 00000000..42fcd500
--- /dev/null
+++ b/doc/joss/2016/paper.md
@@ -0,0 +1,84 @@
+---
+title: 'GeneNetwork: framework for web-based genetics'
+tags:
+  - bioinformatics
+  - genetics
+  - genomics
+authors:
+  - name: Zachary Sloan
+    orcid: 0000-0002-8099-1363
+    affiliation: University of Tennessee Health Science Center, USA
+  - name: Danny Arends
+    orcid: 0000-0001-8738-0162
+    affiliation: Humboldt Universityl, Berlin, Germany
+  - name: Karl W. Broman
+    orcid: 0000-0002-4914-6671
+    affiliation: University of Wisconsin, USA
+  - name: Arthur Centeno
+    orcid: 0000-0003-3142-2081
+    affiliation: University of Tennessee Health Science Center, USA
+  - name: Nick Furlotte
+    orcid: ?
+  - name: Harm Nijveen
+    orcid: 0000-0002-9167-4945
+    affiliation: Wageningen University, The Netherlands
+  - name: Lei Yan
+    orcid: 0000-0001-5259-3379
+    affiliation: University of Tennessee Health Science Center, USA
+  - name: Xiang Zhou
+    orcid: 0000-0002-4331-7599
+    affiliation: University of Michigan
+  - name: Robert W. WIlliams
+    orcid: 0000-0001-8924-4447
+    affiliation: University of Tennessee Health Science Center, USA
+  - name: Pjotr Prins
+    orcid: orcid.org/0000-0002-8021-9162
+    affiliation: University Medical Center Utrecht, The Netherlands
+    affiliation: University of Tennessee Health Science Center, USA
+date: 29 May 2016
+bibliography: paper.bib
+---
+
+# Summary
+
+GeneNetwork (GN) is a free and open source (FOSS) framework for
+web-based genetics that can be deployed anywhere. GN allows biologists
+to upload experimental data and map phenotypes interactively against
+genotypes using tools, such as R/QTL [@Arends:2010] mapping, interval
+mapping for model organisms and pylmm; an implementation of FaST-LMM
+[@Lippert:2011] which is suitable for human populations and outbred
+crosses, such as the mouse diversity outcross. Interactive D3 graphics
+are included from R/qtlcharts and presentation-ready figures can be
+generated. Recently we have added functionality for phenotype
+correlation [@Wang:2016] and network analysis [@WGCNA:2008].
+
+-![Mouse LMM mapping example](qtl2.png)
+
+GN is written in python and javascript and contains a rich set of
+tools and libraries that can be written in any computer language. A
+full list of included software can be found in
+[guix-bioinformatics](https://github.com/genenetwork/guix-bioinformatics/blob/master/gn/packages/genenetwork.scm). To
+make it easy to install GN locally in a byte reproducible way,
+including all dependencies and a 2GB MySQL test database (the full
+database is 160GB and growing), GN is packaged with
+[GNU Guix](https://www.gnu.org/software/guix/), as described
+[here](https://github.com/genenetwork/genenetwork2/blob/staging/doc/README.org).
+GNU Guix deployment makes it feasible to deploy and rebrand GN
+anywhere.
+
+# Future work
+
+More mapping tools will be added, including support for Genome-wide
+Efficient Mixed Model Association (GEMMA). The
+[Biodiallance genome browser](http://www.biodalliance.org/) is being
+added as a Google Summer of Code project with special tracks related
+to QTL mapping and network analysis. Faster LMM solutions are being
+worked on, including GPU support.
+
+A REST interface is being added so that data can be uploaded to a
+server, analysis run remotely on high performance hardware, and
+results downloaded and used for further analysis. This feature will
+allow biologist-programmers to use R and python on their computer and
+execute computations on GN enabled servers.
+
+# References
diff --git a/doc/joss/2016/qtl.png b/doc/joss/2016/qtl.png
new file mode 100644
index 00000000..995a2739
--- /dev/null
+++ b/doc/joss/2016/qtl.png
Binary files differdiff --git a/doc/joss/2016/qtl2.png b/doc/joss/2016/qtl2.png
new file mode 100644
index 00000000..e0b684ef
--- /dev/null
+++ b/doc/joss/2016/qtl2.png
Binary files differ