doc/src/docbook/appendix/raw_data_types.xml

Code
Comments
Other
Rev Date Author Line
3334 14 May 07 nicklas 1 <?xml version="1.0" encoding="UTF-8"?>
3334 14 May 07 nicklas 2 <!DOCTYPE appendix PUBLIC 
3334 14 May 07 nicklas 3     "-//Dawid Weiss//DTD DocBook V3.1-Based Extension for XML and graphics inclusion//EN" 
3334 14 May 07 nicklas 4     "../../../../lib/docbook/preprocess/dweiss-docbook-extensions.dtd">
3334 14 May 07 nicklas 5 <!--
3334 14 May 07 nicklas 6   $Id$
3334 14 May 07 nicklas 7   
3675 16 Aug 07 jari 8   Copyright (C) 2007 Nicklas Nordborg
3334 14 May 07 nicklas 9   
3334 14 May 07 nicklas 10   This file is part of BASE - BioArray Software Environment.
3334 14 May 07 nicklas 11   Available at http://base.thep.lu.se/
3334 14 May 07 nicklas 12   
3334 14 May 07 nicklas 13   BASE is free software; you can redistribute it and/or
3334 14 May 07 nicklas 14   modify it under the terms of the GNU General Public License
4477 05 Sep 08 jari 15   as published by the Free Software Foundation; either version 3
3334 14 May 07 nicklas 16   of the License, or (at your option) any later version.
3334 14 May 07 nicklas 17   
3334 14 May 07 nicklas 18   BASE is distributed in the hope that it will be useful,
3334 14 May 07 nicklas 19   but WITHOUT ANY WARRANTY; without even the implied warranty of
3334 14 May 07 nicklas 20   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
3334 14 May 07 nicklas 21   GNU General Public License for more details.
3334 14 May 07 nicklas 22   
3334 14 May 07 nicklas 23   You should have received a copy of the GNU General Public License
4509 11 Sep 08 jari 24   along with BASE. If not, see <http://www.gnu.org/licenses/>.
3334 14 May 07 nicklas 25 -->
3334 14 May 07 nicklas 26
3334 14 May 07 nicklas 27 <appendix id="appendix.rawdatatypes">
5782 04 Oct 11 nicklas 28   <?dbhtml filename="rawdatatypes.html" ?>
3757 20 Sep 07 nicklas 29   <title>Platforms and raw-data-types.xml reference</title>
3757 20 Sep 07 nicklas 30   
3757 20 Sep 07 nicklas 31   <para>
4002 26 Nov 07 nicklas 32     Raw data can be stored either as files attached to items and/or in
4002 26 Nov 07 nicklas 33     the database. The <classname docapi="net.sf.basedb.core">Platform</classname> 
4002 26 Nov 07 nicklas 34     item has information  about this.  For more information see 
4002 26 Nov 07 nicklas 35     <xref linkend="core_api.data_in_files" />.
3757 20 Sep 07 nicklas 36   </para>
3757 20 Sep 07 nicklas 37   
3757 20 Sep 07 nicklas 38   <sect1 id="appendix.rawdatatypes.platforms">
5678 29 Jun 11 nicklas 39     <title>Default platforms and variants installed with BASE</title>
3757 20 Sep 07 nicklas 40     
3757 20 Sep 07 nicklas 41     <informaltable>
3757 20 Sep 07 nicklas 42       <tgroup cols="7">
3757 20 Sep 07 nicklas 43         <colspec colname="platform.name" />
3757 20 Sep 07 nicklas 44         <colspec colname="platform.id" />
3757 20 Sep 07 nicklas 45         <colspec colname="variant.name" />
3757 20 Sep 07 nicklas 46         <colspec colname="variant.id" />
3757 20 Sep 07 nicklas 47         <colspec colname="filetype.item" />
3757 20 Sep 07 nicklas 48         <colspec colname="filetype.name" />
3757 20 Sep 07 nicklas 49         <colspec colname="filetype.id" />
3757 20 Sep 07 nicklas 50         <thead>
3757 20 Sep 07 nicklas 51           <row>
3757 20 Sep 07 nicklas 52             <entry namest="platform.name" nameend="platform.id">Platform</entry>
3757 20 Sep 07 nicklas 53             <entry namest="variant.name" nameend="variant.id">Variants</entry>
3835 15 Oct 07 nicklas 54             <entry namest="filetype.item" nameend="filetype.id">Data file types</entry>
3757 20 Sep 07 nicklas 55           </row>
3757 20 Sep 07 nicklas 56           <row>
3757 20 Sep 07 nicklas 57             <entry>Name</entry>
3757 20 Sep 07 nicklas 58             <entry>ID</entry>
3757 20 Sep 07 nicklas 59             <entry>Name</entry>
3757 20 Sep 07 nicklas 60             <entry>ID</entry>
3757 20 Sep 07 nicklas 61             <entry>Item</entry>
3757 20 Sep 07 nicklas 62             <entry>Name</entry>
3757 20 Sep 07 nicklas 63             <entry>ID</entry>
3757 20 Sep 07 nicklas 64           </row>
3757 20 Sep 07 nicklas 65         </thead>
3757 20 Sep 07 nicklas 66         <tbody>
3757 20 Sep 07 nicklas 67           <row>
3757 20 Sep 07 nicklas 68             <entry morerows="2">Generic</entry>
3757 20 Sep 07 nicklas 69             <entry morerows="2">generic</entry>
3835 15 Oct 07 nicklas 70             <entry morerows="2">-</entry>
3835 15 Oct 07 nicklas 71             <entry morerows="2">-</entry>
3334 14 May 07 nicklas 72
3757 20 Sep 07 nicklas 73             <entry morerows="1">Array design</entry>
3757 20 Sep 07 nicklas 74             <entry>Reporter map</entry>
3757 20 Sep 07 nicklas 75             <entry>generic.reportermap</entry>
3757 20 Sep 07 nicklas 76           </row>
3757 20 Sep 07 nicklas 77           <row>
3757 20 Sep 07 nicklas 78             <entry>Print map</entry>
3757 20 Sep 07 nicklas 79             <entry>generic.printmap</entry>
3757 20 Sep 07 nicklas 80           </row>
3757 20 Sep 07 nicklas 81           <row>
3757 20 Sep 07 nicklas 82             <entry>Raw bioassay</entry>
3835 15 Oct 07 nicklas 83             <entry>Generic raw data</entry>
3757 20 Sep 07 nicklas 84             <entry>generic.rawdata</entry>
3757 20 Sep 07 nicklas 85           </row>
3757 20 Sep 07 nicklas 86           <row>
3835 15 Oct 07 nicklas 87             <entry morerows="1">Affymetrix</entry>
3835 15 Oct 07 nicklas 88             <entry morerows="1">affymetrix</entry>
3835 15 Oct 07 nicklas 89             <entry morerows="1">-</entry>
3835 15 Oct 07 nicklas 90             <entry morerows="1">-</entry>
3757 20 Sep 07 nicklas 91             <entry>Array design</entry>
3835 15 Oct 07 nicklas 92             <entry>CDF file</entry>
3757 20 Sep 07 nicklas 93             <entry>affymetrix.cdf</entry>
3757 20 Sep 07 nicklas 94           </row>
3757 20 Sep 07 nicklas 95           <row>
3757 20 Sep 07 nicklas 96             <entry>Raw bioassay</entry>
3835 15 Oct 07 nicklas 97             <entry>CEL file</entry>
3757 20 Sep 07 nicklas 98             <entry>affymetrix.cel</entry>
3757 20 Sep 07 nicklas 99           </row>
5780 04 Oct 11 nicklas 100           <row>
5780 04 Oct 11 nicklas 101             <entry morerows="1">Sequencing</entry>
5780 04 Oct 11 nicklas 102             <entry morerows="1">sequencing</entry>
5780 04 Oct 11 nicklas 103             <entry morerows="1">Expression-like</entry>
5780 04 Oct 11 nicklas 104             <entry morerows="1">sequencing.expression</entry>
5780 04 Oct 11 nicklas 105             <entry>Array design</entry>
5780 04 Oct 11 nicklas 106             <entry>GTF ref-seq file</entry>
5780 04 Oct 11 nicklas 107             <entry>refseq.gtf</entry>
5780 04 Oct 11 nicklas 108           </row>
5780 04 Oct 11 nicklas 109           <row>
5780 04 Oct 11 nicklas 110             <entry>Raw bioassay</entry>
5780 04 Oct 11 nicklas 111             <entry>FPKM tracking file</entry>
5780 04 Oct 11 nicklas 112             <entry>  sequencing.fpkm_tracking</entry>
5780 04 Oct 11 nicklas 113           </row>
3757 20 Sep 07 nicklas 114         </tbody>
3757 20 Sep 07 nicklas 115       </tgroup>
3757 20 Sep 07 nicklas 116     </informaltable>
3757 20 Sep 07 nicklas 117     
3757 20 Sep 07 nicklas 118   
3757 20 Sep 07 nicklas 119   </sect1>
3757 20 Sep 07 nicklas 120   
3757 20 Sep 07 nicklas 121   <sect1 id="appendix.rawdatatypes.ref">
3757 20 Sep 07 nicklas 122     <title>raw-data-types.xml reference</title>
3757 20 Sep 07 nicklas 123     
3757 20 Sep 07 nicklas 124     <para>
4002 26 Nov 07 nicklas 125       A given platform either supports importing data to the database or it
4002 26 Nov 07 nicklas 126       doesn't. If it supports import, it may be locked to specific raw data type
4002 26 Nov 07 nicklas 127       or it may use any raw data type. Among the default platforms installed with
4005 26 Nov 07 martin 128       BASE, the Affymetrix platform doesn't support importing data while the Generic 
4005 26 Nov 07 martin 129       platform supports importing to any raw data type.
3757 20 Sep 07 nicklas 130     </para>
3757 20 Sep 07 nicklas 131     
4002 26 Nov 07 nicklas 132     <para>
4002 26 Nov 07 nicklas 133       Raw data types are defined in the <filename>raw-data-types.xml</filename>
4002 26 Nov 07 nicklas 134       file. This file is located in the <filename>&lt;basedir&gt;/www/WEB-INF/classes</filename>
4002 26 Nov 07 nicklas 135       directory and contains information about the database tables and columns to
4002 26 Nov 07 nicklas 136       use for storing raw data. BASE ships with default raw data types for many
4002 26 Nov 07 nicklas 137       different microarray platforms, including Genepix, Agilent and Illumina.
4002 26 Nov 07 nicklas 138     </para>
4002 26 Nov 07 nicklas 139     
5678 29 Jun 11 nicklas 140     <tip>
5678 29 Jun 11 nicklas 141       <para>
5678 29 Jun 11 nicklas 142         It is also possible to put additional raw data type definitions in the
5678 29 Jun 11 nicklas 143         <filename>&lt;basedir&gt;/www/WEB-INF/classes/raw-data-types</filename>
5678 29 Jun 11 nicklas 144         subdirectory. BASE will merge all <filename>*.xml</filename> it finds with 
5678 29 Jun 11 nicklas 145         the main <filename>raw-data-types.xml</filename> file. The extra 
5678 29 Jun 11 nicklas 146         configuration files should have the same format as the main 
5678 29 Jun 11 nicklas 147         <filename>raw-data-types.xml</filename> file. Duplicate raw data types 
5678 29 Jun 11 nicklas 148         are not supported and it is not possible to add extra columns to
5678 29 Jun 11 nicklas 149         existing types using this approach.
5678 29 Jun 11 nicklas 150       </para>
5678 29 Jun 11 nicklas 151     </tip>
5678 29 Jun 11 nicklas 152     
4002 26 Nov 07 nicklas 153     <para>
4002 26 Nov 07 nicklas 154       If you want your BASE installation to be configured differently we recommend that 
4002 26 Nov 07 nicklas 155       you do it before the first initialisation of the database.
4002 26 Nov 07 nicklas 156       It is possible to change the configuration of an existing BASE installation but it
4005 26 Nov 07 martin 157       requires manual updates to the database. Following procedure covers how to update:
4002 26 Nov 07 nicklas 158     </para>
4002 26 Nov 07 nicklas 159
4002 26 Nov 07 nicklas 160   <orderedlist>
4002 26 Nov 07 nicklas 161   <listitem>
4002 26 Nov 07 nicklas 162     <para>
4002 26 Nov 07 nicklas 163     Shut down the BASE web server. If you have installed job agents you should shut
4002 26 Nov 07 nicklas 164     down them as well.
4002 26 Nov 07 nicklas 165     </para>
4002 26 Nov 07 nicklas 166   </listitem>
4002 26 Nov 07 nicklas 167   
4002 26 Nov 07 nicklas 168   <listitem>
4002 26 Nov 07 nicklas 169     <para>
5678 29 Jun 11 nicklas 170     Modify the <filename>raw-data-types.xml</filename> file or create a new file
5678 29 Jun 11 nicklas 171     in the <filename>raw-data-types</filename> subdirectory. If you have installed 
4002 26 Nov 07 nicklas 172     job agents, make sure they all have the same version as the web server.
4002 26 Nov 07 nicklas 173     </para>
4002 26 Nov 07 nicklas 174   </listitem>
4002 26 Nov 07 nicklas 175   
4002 26 Nov 07 nicklas 176   <listitem>
4002 26 Nov 07 nicklas 177     <para>
4002 26 Nov 07 nicklas 178     Run the <filename>updatedb.sh</filename> script. Tables for new raw data types
4002 26 Nov 07 nicklas 179     and new columns for existing raw data types automatically be created, but the script 
4002 26 Nov 07 nicklas 180     can't delete tables or columns that have been removed, or modify columns that have 
4002 26 Nov 07 nicklas 181     changed datatype. You will have to do these kind of changes by manually executing
4002 26 Nov 07 nicklas 182     SQL against your database. Check your database documentation for information about SQL syntax.
4002 26 Nov 07 nicklas 183     </para>
4002 26 Nov 07 nicklas 184     
4002 26 Nov 07 nicklas 185     <tip>
4005 26 Nov 07 martin 186       <title>Create a parallel installation</title>
4002 26 Nov 07 nicklas 187       <para>
4005 26 Nov 07 martin 188       You can always create a new temporary parallel installation to check 
4002 26 Nov 07 nicklas 189       what the table generated by installation script looks like. Compare the 
4002 26 Nov 07 nicklas 190       new table to the existing one and make sure they match.
4002 26 Nov 07 nicklas 191       </para>
4002 26 Nov 07 nicklas 192     </tip>
4002 26 Nov 07 nicklas 193   </listitem>
4002 26 Nov 07 nicklas 194   
4002 26 Nov 07 nicklas 195   <listitem>
4002 26 Nov 07 nicklas 196     <para>
4002 26 Nov 07 nicklas 197     Start up the BASE web server and job agents, if any, again.
4002 26 Nov 07 nicklas 198     </para>
4002 26 Nov 07 nicklas 199   </listitem>
4002 26 Nov 07 nicklas 200   </orderedlist>
4002 26 Nov 07 nicklas 201
4002 26 Nov 07 nicklas 202   <tip>
4002 26 Nov 07 nicklas 203     <title>Start with few columns</title>
4002 26 Nov 07 nicklas 204     <para>
4002 26 Nov 07 nicklas 205     It is better to start with too few columns, since it is easier to add
4002 26 Nov 07 nicklas 206     more columns than it is to remove columns that are not needed.
4002 26 Nov 07 nicklas 207     </para>
4002 26 Nov 07 nicklas 208   </tip>
4002 26 Nov 07 nicklas 209
4002 26 Nov 07 nicklas 210   <bridgehead>Format of the raw-data-types.xml file</bridgehead>
4002 26 Nov 07 nicklas 211   <para>
4005 26 Nov 07 martin 212     The following example will serve as a description of the format used in
4005 26 Nov 07 martin 213     <filename>raw-data-types.xml</filename>:
4002 26 Nov 07 nicklas 214   </para>
4005 26 Nov 07 martin 215
4005 26 Nov 07 martin 216
4002 26 Nov 07 nicklas 217   <programlisting language="xml">
4002 26 Nov 07 nicklas 218 <![CDATA[
4002 26 Nov 07 nicklas 219 <?xml version="1.0" ?>
4002 26 Nov 07 nicklas 220 <?xml-stylesheet type="text/xsl" href="raw-data-types.xsl"?>
4002 26 Nov 07 nicklas 221 <!DOCTYPE raw-data-types SYSTEM "raw-data-types.dtd" >
4002 26 Nov 07 nicklas 222 <raw-data-types>
4002 26 Nov 07 nicklas 223    <raw-data-type
4002 26 Nov 07 nicklas 224       id="genepix"
4002 26 Nov 07 nicklas 225       name="GenePix"
4002 26 Nov 07 nicklas 226       channels="2"
4002 26 Nov 07 nicklas 227       table="RawDataGenePix"
4002 26 Nov 07 nicklas 228       >
4002 26 Nov 07 nicklas 229       <property
4002 26 Nov 07 nicklas 230          name="diameter"
4002 26 Nov 07 nicklas 231          title="Spot diameter"
4002 26 Nov 07 nicklas 232          description="The diameter of the spot in Âµm"
4002 26 Nov 07 nicklas 233          column="diameter"
4002 26 Nov 07 nicklas 234          type="float"
4002 26 Nov 07 nicklas 235       />
4002 26 Nov 07 nicklas 236       <property
4002 26 Nov 07 nicklas 237          name="ch1FgMedian"
4002 26 Nov 07 nicklas 238          title="Channel 1 foreground median"
4002 26 Nov 07 nicklas 239          description="The median of the foreground intensity in channel 1"
4002 26 Nov 07 nicklas 240          column="ch1_fg_median"
4002 26 Nov 07 nicklas 241          type="float"
4002 26 Nov 07 nicklas 242          channel="1"
4002 26 Nov 07 nicklas 243       />
4002 26 Nov 07 nicklas 244       <!-- skipped a lot of properties -->
4002 26 Nov 07 nicklas 245       <intensity-formula
4002 26 Nov 07 nicklas 246          name="mean"
4002 26 Nov 07 nicklas 247          title="Mean FG - Mean BG"
4002 26 Nov 07 nicklas 248          description="Subtract mean background from mean foreground"
4002 26 Nov 07 nicklas 249          >
4002 26 Nov 07 nicklas 250          <formula 
4002 26 Nov 07 nicklas 251             channel="1"
4002 26 Nov 07 nicklas 252             expression="raw('ch1FgMean') - raw('ch1BgMean')"
4002 26 Nov 07 nicklas 253          />
4002 26 Nov 07 nicklas 254          <formula 
4002 26 Nov 07 nicklas 255             channel="2"
4002 26 Nov 07 nicklas 256             expression="raw('ch2FgMean') - raw('ch2BgMean')"
4002 26 Nov 07 nicklas 257          />
4002 26 Nov 07 nicklas 258       </intensity-formula>
4002 26 Nov 07 nicklas 259       <!-- and a few more... --->
4002 26 Nov 07 nicklas 260    </raw-data-type>
4002 26 Nov 07 nicklas 261 </raw-data-types>
4002 26 Nov 07 nicklas 262 ]]>  
4002 26 Nov 07 nicklas 263 </programlisting>
4002 26 Nov 07 nicklas 264   
4002 26 Nov 07 nicklas 265   <para>
4002 26 Nov 07 nicklas 266     Each raw data type is represented by a <sgmltag class="starttag">raw-data-type</sgmltag> 
4002 26 Nov 07 nicklas 267     tag. The following attributes can be used:
4002 26 Nov 07 nicklas 268   </para>
4002 26 Nov 07 nicklas 269   
4002 26 Nov 07 nicklas 270     <table frame="all" id="appendix.rawdatatypes.tag">
4002 26 Nov 07 nicklas 271     <title>Attributes for the <sgmltag class="starttag">raw-data-type</sgmltag> tag</title>
4002 26 Nov 07 nicklas 272     <tgroup cols="3" align="left">
4002 26 Nov 07 nicklas 273       <colspec colname="attribute" align="left" />
4002 26 Nov 07 nicklas 274       <colspec colname="required" />
4002 26 Nov 07 nicklas 275       <colspec colname="comment" />
4002 26 Nov 07 nicklas 276       <thead>
4002 26 Nov 07 nicklas 277         <row>
4002 26 Nov 07 nicklas 278           <entry>Attribute</entry>
4002 26 Nov 07 nicklas 279           <entry>Required</entry>
4002 26 Nov 07 nicklas 280           <entry>Comment</entry>
4002 26 Nov 07 nicklas 281         </row>
4002 26 Nov 07 nicklas 282       </thead>
4002 26 Nov 07 nicklas 283       <tbody>
4002 26 Nov 07 nicklas 284         <row>
4002 26 Nov 07 nicklas 285           <entry>id</entry>
4002 26 Nov 07 nicklas 286           <entry>yes</entry>
4002 26 Nov 07 nicklas 287           <entry>
4002 26 Nov 07 nicklas 288             A unique ID of the raw data type. It should contain only letters,
4002 26 Nov 07 nicklas 289             numbers and underscores and the first character must be a letter.
4002 26 Nov 07 nicklas 290           </entry>
4002 26 Nov 07 nicklas 291         </row>
4002 26 Nov 07 nicklas 292         <row>
4002 26 Nov 07 nicklas 293           <entry>name</entry>
4002 26 Nov 07 nicklas 294           <entry>yes</entry>
4002 26 Nov 07 nicklas 295           <entry>
4002 26 Nov 07 nicklas 296             A unique name of the raw data type. The name is usually used by client
4005 26 Nov 07 martin 297             applications for display.
4002 26 Nov 07 nicklas 298           </entry>
4002 26 Nov 07 nicklas 299         </row>
4002 26 Nov 07 nicklas 300         <row>
4002 26 Nov 07 nicklas 301           <entry>table</entry>
4002 26 Nov 07 nicklas 302           <entry>yes</entry>
4002 26 Nov 07 nicklas 303           <entry>
4002 26 Nov 07 nicklas 304             The name of the database table to store data in. The table name
4002 26 Nov 07 nicklas 305             must be unique and can only contain letters,
4002 26 Nov 07 nicklas 306             numbers and underscores. The first character must be a letter.
4002 26 Nov 07 nicklas 307           </entry>
4002 26 Nov 07 nicklas 308         </row>
4002 26 Nov 07 nicklas 309         <row>
4002 26 Nov 07 nicklas 310           <entry>channels</entry>
4002 26 Nov 07 nicklas 311           <entry>yes</entry>
4002 26 Nov 07 nicklas 312           <entry>
4002 26 Nov 07 nicklas 313             The number of channels used by this raw data type. It must be 
4002 26 Nov 07 nicklas 314             a number &gt; 0.
4002 26 Nov 07 nicklas 315           </entry>
4002 26 Nov 07 nicklas 316         </row>
4002 26 Nov 07 nicklas 317         <row>
4002 26 Nov 07 nicklas 318           <entry>description</entry>
4002 26 Nov 07 nicklas 319           <entry>no</entry>
4002 26 Nov 07 nicklas 320           <entry>
4002 26 Nov 07 nicklas 321             An optional (longer) description of the raw data type.
4002 26 Nov 07 nicklas 322           </entry>
4002 26 Nov 07 nicklas 323         </row>
4002 26 Nov 07 nicklas 324       </tbody>
4002 26 Nov 07 nicklas 325     </tgroup>
4002 26 Nov 07 nicklas 326     </table>
4002 26 Nov 07 nicklas 327     
4002 26 Nov 07 nicklas 328     <para>
4002 26 Nov 07 nicklas 329       Following the <sgmltag class="starttag">raw-data-type</sgmltag> tag
4002 26 Nov 07 nicklas 330       is one or more  <sgmltag class="starttag">property</sgmltag> tags.
4002 26 Nov 07 nicklas 331       Each one defines a column in the database that is designed to hold 
4002 26 Nov 07 nicklas 332       data values of a particular type. The following attributes can be used
4002 26 Nov 07 nicklas 333       on this tag:
4002 26 Nov 07 nicklas 334     </para>
4002 26 Nov 07 nicklas 335   
4002 26 Nov 07 nicklas 336     <table frame="all" id="appendix.rawdatatypes.property">
4002 26 Nov 07 nicklas 337     <title>Attributes for the <sgmltag class="starttag">property</sgmltag> tag</title>
4002 26 Nov 07 nicklas 338     <tgroup cols="3" align="left">
4002 26 Nov 07 nicklas 339       <colspec colname="attribute" align="left" />
4002 26 Nov 07 nicklas 340       <colspec colname="required" />
4002 26 Nov 07 nicklas 341       <colspec colname="comment" />
4002 26 Nov 07 nicklas 342       <thead>
4002 26 Nov 07 nicklas 343         <row>
4002 26 Nov 07 nicklas 344           <entry>Attribute</entry>
4002 26 Nov 07 nicklas 345           <entry>Required</entry>
4002 26 Nov 07 nicklas 346           <entry>Comment</entry>
4002 26 Nov 07 nicklas 347         </row>
4002 26 Nov 07 nicklas 348       </thead>
4002 26 Nov 07 nicklas 349       <tbody>
4002 26 Nov 07 nicklas 350         <row>
4002 26 Nov 07 nicklas 351           <entry>*</entry>
4002 26 Nov 07 nicklas 352           <entry></entry>
4002 26 Nov 07 nicklas 353           <entry>
4002 26 Nov 07 nicklas 354             All attributes defined by the 
4002 26 Nov 07 nicklas 355             <sgmltag class="starttag">property</sgmltag> tag in
4002 26 Nov 07 nicklas 356             <filename>extended-properties.xml</filename>. See 
4002 26 Nov 07 nicklas 357             <xref linkend="appendix.extendedproperties.property" />.
4002 26 Nov 07 nicklas 358           </entry>
4002 26 Nov 07 nicklas 359         </row>
4002 26 Nov 07 nicklas 360         <row>
4002 26 Nov 07 nicklas 361           <entry>channels</entry>
4002 26 Nov 07 nicklas 362           <entry>no</entry>
4002 26 Nov 07 nicklas 363           <entry>
4002 26 Nov 07 nicklas 364             The channel number the property belongs to. Allowed values are 0 to
4002 26 Nov 07 nicklas 365             the number of channels specified for the raw data type. If the property
4002 26 Nov 07 nicklas 366             doesn't belong to any channels set the value to 0 or leave it
4002 26 Nov 07 nicklas 367             unspecified.
4002 26 Nov 07 nicklas 368           </entry>
4002 26 Nov 07 nicklas 369         </row>
4002 26 Nov 07 nicklas 370       </tbody>
4002 26 Nov 07 nicklas 371     </tgroup>
4002 26 Nov 07 nicklas 372     </table>
4002 26 Nov 07 nicklas 373     
4002 26 Nov 07 nicklas 374     <para>
4002 26 Nov 07 nicklas 375       Following the <sgmltag class="starttag">property</sgmltag> tags comes 0
4002 26 Nov 07 nicklas 376       or more <sgmltag class="starttag">intensity-formula</sgmltag> tags.
4005 26 Nov 07 martin 377       Each one defines mathematical formulas that can be used to
4005 26 Nov 07 martin 378       calculate the intensity values from the raw data. In the Genepix case,
4002 26 Nov 07 nicklas 379       there are several formulas which differs in the way background is 
4005 26 Nov 07 martin 380       subtracted from foreground intensity values. For other raw data
4002 26 Nov 07 nicklas 381       types, the intensity formula may just copy one of the raw data values.
4002 26 Nov 07 nicklas 382     </para>
4002 26 Nov 07 nicklas 383     
4002 26 Nov 07 nicklas 384     <para>
4002 26 Nov 07 nicklas 385       The intensity formulas are installed as <classname 
4002 26 Nov 07 nicklas 386       docapi="net.sf.basedb.core">Formula</classname> items in the database. This
4002 26 Nov 07 nicklas 387       means that you can manually add, change or remove intensity formulas directly 
4002 26 Nov 07 nicklas 388       from the web interface. The intensity formulas in the <filename>raw-data-types.xml</filename>
4002 26 Nov 07 nicklas 389       file are only used at installation time.
4002 26 Nov 07 nicklas 390     </para>
4002 26 Nov 07 nicklas 391     
4002 26 Nov 07 nicklas 392     <para>
4002 26 Nov 07 nicklas 393       The <sgmltag class="starttag">intensity-formula</sgmltag> tag has the following
4002 26 Nov 07 nicklas 394       attributes:
4002 26 Nov 07 nicklas 395     </para>
4002 26 Nov 07 nicklas 396     
4002 26 Nov 07 nicklas 397     <table frame="all" id="appendix.rawdatatypes.intensity-formula">
4002 26 Nov 07 nicklas 398     <title>Attributes for the <sgmltag class="starttag">intensity-formula</sgmltag> tag</title>
4002 26 Nov 07 nicklas 399     <tgroup cols="3" align="left">
4002 26 Nov 07 nicklas 400       <colspec colname="attribute" align="left" />
4002 26 Nov 07 nicklas 401       <colspec colname="required" />
4002 26 Nov 07 nicklas 402       <colspec colname="comment" />
4002 26 Nov 07 nicklas 403       <thead>
4002 26 Nov 07 nicklas 404         <row>
4002 26 Nov 07 nicklas 405           <entry>Attribute</entry>
4002 26 Nov 07 nicklas 406           <entry>Required</entry>
4002 26 Nov 07 nicklas 407           <entry>Comment</entry>
4002 26 Nov 07 nicklas 408         </row>
4002 26 Nov 07 nicklas 409       </thead>
4002 26 Nov 07 nicklas 410       <tbody>
4002 26 Nov 07 nicklas 411         <row>
4002 26 Nov 07 nicklas 412           <entry>name</entry>
4002 26 Nov 07 nicklas 413           <entry>yes</entry>
4002 26 Nov 07 nicklas 414           <entry>
4002 26 Nov 07 nicklas 415             A unique name for the formula. This is only used during installation.
4002 26 Nov 07 nicklas 416           </entry>
4002 26 Nov 07 nicklas 417         </row>
4002 26 Nov 07 nicklas 418         <row>
4002 26 Nov 07 nicklas 419           <entry>title</entry>
4002 26 Nov 07 nicklas 420           <entry>yes</entry>
4002 26 Nov 07 nicklas 421           <entry>
4002 26 Nov 07 nicklas 422             The title of the formula. This is used by client applications for
4002 26 Nov 07 nicklas 423             display.
4002 26 Nov 07 nicklas 424           </entry>
4002 26 Nov 07 nicklas 425         </row>
4002 26 Nov 07 nicklas 426         <row>
4002 26 Nov 07 nicklas 427           <entry>description</entry>
4002 26 Nov 07 nicklas 428           <entry>no</entry>
4002 26 Nov 07 nicklas 429           <entry>
4002 26 Nov 07 nicklas 430             An optional, longer, description of the formula.
4002 26 Nov 07 nicklas 431           </entry>
4002 26 Nov 07 nicklas 432         </row>
4002 26 Nov 07 nicklas 433       </tbody>
4002 26 Nov 07 nicklas 434     </tgroup>
4002 26 Nov 07 nicklas 435     </table>
4002 26 Nov 07 nicklas 436     
4002 26 Nov 07 nicklas 437     <para>
4002 26 Nov 07 nicklas 438       The <sgmltag class="starttag">intensity-formula</sgmltag> must contain
4002 26 Nov 07 nicklas 439       one <sgmltag class="starttag">formula</sgmltag> tag for each channel
4002 26 Nov 07 nicklas 440       of the raw data type. The attributes of this tag are:
4002 26 Nov 07 nicklas 441     </para>
4002 26 Nov 07 nicklas 442     
4002 26 Nov 07 nicklas 443     <table frame="all" id="appendix.rawdatatypes.formula">
4002 26 Nov 07 nicklas 444     <title>Attributes for the <sgmltag class="starttag">formula</sgmltag> tag</title>
4002 26 Nov 07 nicklas 445     <tgroup cols="3" align="left">
4002 26 Nov 07 nicklas 446       <colspec colname="attribute" align="left" />
4002 26 Nov 07 nicklas 447       <colspec colname="required" />
4002 26 Nov 07 nicklas 448       <colspec colname="comment" />
4002 26 Nov 07 nicklas 449       <thead>
4002 26 Nov 07 nicklas 450         <row>
4002 26 Nov 07 nicklas 451           <entry>Attribute</entry>
4002 26 Nov 07 nicklas 452           <entry>Required</entry>
4002 26 Nov 07 nicklas 453           <entry>Comment</entry>
4002 26 Nov 07 nicklas 454         </row>
4002 26 Nov 07 nicklas 455       </thead>
4002 26 Nov 07 nicklas 456       <tbody>
4002 26 Nov 07 nicklas 457         <row>
4002 26 Nov 07 nicklas 458           <entry>channel</entry>
4002 26 Nov 07 nicklas 459           <entry>yes</entry>
4002 26 Nov 07 nicklas 460           <entry>
4002 26 Nov 07 nicklas 461             The channel number. One tag for each channel must be specified. No
4002 26 Nov 07 nicklas 462             duplicates are allowed.
4002 26 Nov 07 nicklas 463           </entry>
4002 26 Nov 07 nicklas 464         </row>
4002 26 Nov 07 nicklas 465         <row>
4002 26 Nov 07 nicklas 466           <entry>expression</entry>
4002 26 Nov 07 nicklas 467           <entry>yes</entry>
4002 26 Nov 07 nicklas 468           <entry>
4002 26 Nov 07 nicklas 469             The mathematical expression used to calculate the intensities.
4002 26 Nov 07 nicklas 470             The expression is parsed with the <classname docapi="net.sf.basedb.util.jep">Jep</classname>
4002 26 Nov 07 nicklas 471             parser. It supports the common mathematical operations such as +, -, *, /,
4002 26 Nov 07 nicklas 472             some mathematical function like, log2(), ln(), sqrt(), etc. See the API
4002 26 Nov 07 nicklas 473             documentation for Jep for more information. You can also use two special
4002 26 Nov 07 nicklas 474             function developed specifically for this case:
4002 26 Nov 07 nicklas 475             <itemizedlist>
4002 26 Nov 07 nicklas 476             <listitem>
4002 26 Nov 07 nicklas 477               <para>
4002 26 Nov 07 nicklas 478               raw(name): Get the value from the raw data property with the given name,
4002 26 Nov 07 nicklas 479               for example: <code>raw('ch1FgMedian')</code>.
4002 26 Nov 07 nicklas 480               </para>
4002 26 Nov 07 nicklas 481             </listitem>
4002 26 Nov 07 nicklas 482             <listitem>
4002 26 Nov 07 nicklas 483               <para>
4002 26 Nov 07 nicklas 484               mean(name): Get the mean value of the raw data property with the given name,
4002 26 Nov 07 nicklas 485               for example: <code>mean('ch1BgMean')</code>. The mean is calculated from
4002 26 Nov 07 nicklas 486               all raw data spots in the raw bioassay.
4002 26 Nov 07 nicklas 487               </para>
4002 26 Nov 07 nicklas 488             </listitem>
4002 26 Nov 07 nicklas 489             </itemizedlist>
4002 26 Nov 07 nicklas 490           </entry>
4002 26 Nov 07 nicklas 491         </row>
4002 26 Nov 07 nicklas 492       </tbody>
4002 26 Nov 07 nicklas 493     </tgroup>
4002 26 Nov 07 nicklas 494     </table>
4002 26 Nov 07 nicklas 495     
3757 20 Sep 07 nicklas 496   </sect1>
3757 20 Sep 07 nicklas 497
3334 14 May 07 nicklas 498 </appendix>
3334 14 May 07 nicklas 499