Changeset 3943


Ignore:
Timestamp:
Nov 9, 2007, 3:00:47 PM (16 years ago)
Author:
Nicklas Nordborg
Message:

References #746: Transfer existing UML diagrams to latest MagicDraw?

  • Added experiments section
  • Fixed images overflow
Location:
trunk/doc/src
Files:
3 added
9 edited

Legend:

Unmodified
Added
Removed
  • trunk/doc/src/docbook/admindoc/plugin_installation.xml

    r3911 r3943  
    674674        <mediaobject>
    675675          <imageobject><imagedata
     676            scalefit="1" width="100%"
    676677            fileref="figures/plugin_jobagents.png" format="PNG"
    677678            /></imageobject>
     
    13401341              <mediaobject>
    13411342                <imageobject><imagedata
     1343                  scalefit="1" width="100%"
    13421344                  fileref="figures/test_with_file_mappings.png" format="PNG"
    13431345                  /></imageobject>
  • trunk/doc/src/docbook/developerdoc/api_overview.xml

    r3942 r3943  
    179179          <imageobject>
    180180            <imagedata
     181              align="center"
     182              scalefit="1" width="100%"
    181183              fileref="figures/uml/datalayer.overview.png" format="PNG" />
    182184          </imageobject>
     
    207209              <imageobject>
    208210                <imagedata
     211                  align="center"
    209212                  fileref="figures/uml/datalayer.basic.png" format="PNG" />
    210213              </imageobject>
     
    427430              <imageobject>
    428431                <imagedata
     432                  align="center"
     433                  scalefit="1" width="100%"
    429434                  fileref="figures/uml/datalayer.authentication.png" format="PNG" />
    430435              </imageobject>
     
    646651              <imageobject>
    647652                <imagedata
     653                  align="center"
    648654                  fileref="figures/uml/datalayer.wares.png" format="PNG" />
    649655              </imageobject>
     
    683689              <imageobject>
    684690                <imagedata
     691                  align="center"
    685692                  fileref="figures/uml/datalayer.reporters.png" format="PNG" />
    686693              </imageobject>
     
    761768              <imageobject>
    762769                <imagedata
     770                  align="center"
    763771                  fileref="figures/uml/datalayer.quota.png" format="PNG" />
    764772              </imageobject>
     
    820828              <imageobject>
    821829                <imagedata
     830                  align="center"
     831                  scalefit="1" width="100%"
    822832                  fileref="figures/uml/datalayer.clients.png" format="PNG" />
    823833              </imageobject>
     
    9911001              <imageobject>
    9921002                <imagedata
     1003                  align="center"
    9931004                  fileref="figures/uml/datalayer.files.png" format="PNG" />
    9941005              </imageobject>
     
    11371148              <imageobject>
    11381149                <imagedata
     1150                  align="center"
    11391151                  fileref="figures/uml/datalayer.platforms.png" format="PNG" />
    11401152              </imageobject>
     
    12261238              <imageobject>
    12271239                <imagedata
     1240                  align="center"
    12281241                  fileref="figures/uml/datalayer.parameters.png" format="PNG" />
    12291242              </imageobject>
     
    13051318              <imageobject>
    13061319                <imagedata
     1320                  align="center"
    13071321                  fileref="figures/uml/datalayer.annotations.png" format="PNG" />
    13081322              </imageobject>
     
    14451459              <imageobject>
    14461460                <imagedata
     1461                  align="center"
    14471462                  fileref="figures/uml/datalayer.protocols.png" format="PNG" />
    14481463              </imageobject>
     
    15051520              <imageobject>
    15061521                <imagedata
     1522                  align="center"
     1523                  scalefit="1" width="100%"
    15071524                  fileref="figures/uml/datalayer.plugins.png" format="PNG" />
    15081525              </imageobject>
     
    16821699              <imageobject>
    16831700                <imagedata
     1701                  align="center"
    16841702                  fileref="figures/uml/datalayer.biomaterials.png" format="PNG" />
    16851703              </imageobject>
     
    18171835              <imageobject>
    18181836                <imagedata
     1837                  align="center"
     1838                  scalefit="1" width="100%"
    18191839                  fileref="figures/uml/datalayer.plates.png" format="PNG" />
    18201840              </imageobject>
     
    19111931              <imageobject>
    19121932                <imagedata
     1933                  align="center"
    19131934                  fileref="figures/uml/datalayer.arrays.png" format="PNG" />
    19141935              </imageobject>
     
    19832004              <imageobject>
    19842005                <imagedata
     2006                  align="center"
     2007                  scalefit="1" width="100%"
    19852008                  fileref="figures/uml/datalayer.rawdata.png" format="PNG" />
    19862009              </imageobject>
     
    20602083    <sect2 id="data_api.experiments">
    20612084      <title>Experiments and analysis</title>
     2085     
     2086     
     2087      <sect3 id="data_api.experiments.uml">
     2088        <title>UML diagram</title>
     2089       
     2090        <figure id="data_api.figures.experiments">
     2091          <title>Experiments</title>
     2092          <screenshot>
     2093            <mediaobject>
     2094              <imageobject>
     2095                <imagedata
     2096                  align="center"
     2097                  scalefit="1" width="75%"
     2098                  fileref="figures/uml/datalayer.experiments.png" format="PNG" />
     2099              </imageobject>
     2100            </mediaobject>
     2101          </screenshot>
     2102        </figure>
     2103      </sect3>
     2104     
     2105      <sect3 id="data_api.experiments.description">
     2106        <title>Experiments</title>
     2107       
     2108        <para>
     2109          The <classname docapi="net.sf.basedb.core.data">ExperimentData</classname>
     2110          class is used to collect information about a single experiment. It
     2111          links to any number of <classname docapi="net.sf.basedb.core.data">RawBioAssayData</classname>
     2112          items, which must all be of the same <classname
     2113          docapi="net.sf.basedb.core">RawDataType</classname>.
     2114        </para>
     2115       
     2116        <para>
     2117          Annotation types that are needed in the analysis must connected to
     2118          the experiment as experimental factors and the annotation values should
     2119          be set on or inherited by each raw bioassay that is part of the
     2120          experiment.
     2121        </para>
     2122       
     2123        <para>
     2124          The directory connected to the experiment is the default directory
     2125          where plugins that generate files should store them.
     2126        </para>
     2127      </sect3>
     2128           
     2129      <sect3 id="data_api.experiments.bioassays">
     2130        <title>Bioassay sets, bioassays and transformations</title>
     2131       
     2132        <para>
     2133          Each line of analysis starts with the creation of a <emphasis>root</emphasis>
     2134          <classname docapi="net.sf.basedb.core.data">BioAssaySetData</classname>,
     2135          which holds the intensities calculated from the raw data.
     2136          A bioassayset can hold one intensity for each channel. The number of
     2137          channels is defined by the raw data type. For each raw bioassay used a
     2138          <classname docapi="net.sf.basedb.core.data">BioAssayData</classname>
     2139          is created.
     2140        </para>
     2141       
     2142        <para>
     2143          Information about the process that calculated the intensities are
     2144          stored in a <classname docapi="net.sf.basedb.core.data">TransformationData</classname>
     2145          object. The root transformation links with the raw bioassays that are used
     2146          in this line of analysis and to a <classname
     2147          docapi="net.sf.basedb.core.data">JobData</classname> which has information
     2148          about which plug-in and parameters that was used in the calculation.
     2149        </para>
     2150     
     2151        <para>
     2152          Once the root bioassayset has been created it is possible to
     2153          again apply a transformation to it. This time the transformation
     2154          links to a single source bioassayset instead of the raw bioassays.
     2155          As before, it still links to a job with information about the plug-in and
     2156          parameters that does the actual work. The transformation must make sure
     2157          that new bioassays are created and linked to the bioassays in the
     2158          source bioassayset. This above process may be repeated as many times
     2159          as needed.
     2160        </para>
     2161       
     2162        <para>
     2163          Data to a bioassay set can only be added to it before it has been
     2164          committed to the database. Once the transaction has been committed
     2165          it is no longed possible to add more data or to modify existing
     2166          data.
     2167        </para>
     2168     
     2169      </sect3>
     2170
     2171      <sect3 id="data_api.experiments.virtualdb">
     2172        <title>Virtual databases, datacubes, etc.</title>
     2173       
     2174        <para>
     2175          The above processes requires a flexible storage solution for the data.
     2176          Each experiment is related to a <classname docapi="net.sf.basedb.core.data">VirtualDb</classname>
     2177          object. This object represents the set of tables that are needed to store
     2178          data for the experiment. All tables are created in a special part of the
     2179          BASE database that we call the <emphasis>dynamic database</emphasis>.
     2180          In MySQL the dynamic database is a separate database, in Postgres it is
     2181          a separate schema.
     2182        </para>
     2183       
     2184        <para>
     2185          A virual database is divided into data cubes. A data cube can be seen
     2186          as a three-dimensional object where each point can hold data that in
     2187          most cases can be interpreted as data for a single spot from an
     2188          array. The coordinates to a point is given by <emphasis>layer</emphasis>,
     2189          <emphasis>column</emphasis> and <emphasis>position</emphasis>. The
     2190          layer and column coordinates are represented by the
     2191          <classname docapi="net.sf.basedb.core.data">DataCubeLayerData</classname>
     2192          and <classname docapi="net.sf.basedb.core.data">DataCubeColumnData</classname>
     2193          objects. The position coordinate has no separate object associated with
     2194          it.
     2195        </para>
     2196       
     2197        <para>
     2198          Data for a single bioassay set is always stored in a single layer. It
     2199          is possible for more than one bioassay set to use the same layer. This
     2200          usually happens for filtering transformations that doesn't modify the
     2201          data.  The filtered bioassay set is then linked to a
     2202          <classname docapi="net.sf.basedb.core.data">DataCubeFilterData</classname>
     2203          object, which has information about which data points that
     2204          passed the filter.
     2205        </para>
     2206       
     2207        <para>
     2208          All data for a bioassay is stored in a single column.
     2209          Two bioassays in different bioassaysets (layers) can only have the same
     2210          column if one is the parent of the other.
     2211        </para>
     2212       
     2213        <para>
     2214          The position coordinate is tied to a reporter.
     2215        </para>
     2216       
     2217        <para>
     2218          A child bioassay set may use the same data cube as it's parent
     2219          bioassay set if all of the following conditions are true:
     2220        </para>
     2221       
     2222        <itemizedlist>
     2223        <listitem>
     2224          <para>
     2225          All positions are linked to the same reporter as the positions
     2226          in the parent bioassay set.
     2227          </para>
     2228        </listitem>
     2229       
     2230        <listitem>
     2231          <para>
     2232          All data points are linked to the same (possible many) raw data
     2233          spots as the corresponding data points in the parent bioassay set.
     2234          </para>
     2235        </listitem>
     2236       
     2237        <listitem>
     2238          <para>
     2239          The bioassays in the child bioassay set each have exactly one
     2240          parent in the parent bioassay set. No parent bioassay may be the
     2241          parent of more than one child bioassay.
     2242          </para>
     2243        </listitem>
     2244        </itemizedlist>
     2245       
     2246        <para>
     2247          If any of the above conditions are not true, a new data cube
     2248          must be created for the child bioassay set.
     2249        </para>
     2250      </sect3>
     2251     
     2252      <sect3 id="data_api.dynamic.description">
     2253        <title>The dynamic database</title>
     2254
     2255        <figure id="data_api.figures.dynamic">
     2256          <title>The dynamic database</title>
     2257          <screenshot>
     2258            <mediaobject>
     2259              <imageobject>
     2260                <imagedata
     2261                  align="center"
     2262                  fileref="figures/uml/datalayer.dynamic.png" format="PNG" />
     2263              </imageobject>
     2264            </mediaobject>
     2265          </screenshot>
     2266        </figure>
     2267       
     2268        <para>
     2269          Each virtual database consists of several tables. The tables
     2270          are dynamically created when needed. For each table shown in the diagram
     2271          the # sign is replaced by the id of the virtual database object at run
     2272          time.
     2273        </para>
     2274       
     2275        <para>
     2276          There are no classes in the data layer for these tables and they
     2277          are not mapped with Hibernate. When we work with these tables we
     2278          are always using batcher classes and queries that works with integer,
     2279          floats and strings.
     2280        </para>
     2281       
     2282        <bridgehead>The D#Spot table</bridgehead>
     2283        <para>
     2284          This is the main table which keeps the intensities for a single spot
     2285          in the data cube. Extra values attached to the spot are kept in separate
     2286          tables, one for each type of value (D#SpotInt, D#SpotFloat and D#SpotString).
     2287        </para>
     2288       
     2289        <bridgehead>The D#Pos table</bridgehead>
     2290        <para>
     2291          This table stores the reporter id for each position in a cube.
     2292          Extra values attached to the position are kept in separate tables,
     2293          one for each type of value (D#PosInt, D#PosFloat and D#PosString).
     2294        </para>
     2295       
     2296        <bridgehead>The D#Filter table</bridgehead>
     2297        <para>
     2298          This table stores the coordinates for the spots that remain after
     2299          filtering. Note that each filter is related to a bioassayset which
     2300          gives the cube and layer values. Each row in the filter table then
     2301          adds the column and position allowing us to find the spots in the
     2302          D#Spot table.
     2303        </para>
     2304       
     2305        <bridgehead>The D#RawParents table</bridgehead>
     2306        <para>
     2307          This table holds mappings for a spot to the raw data it is calculated
     2308          from. We don't need the layer coordinate since all layers in a cube
     2309          must have the same mapping to raw data.
     2310        </para>
     2311       
     2312      </sect3>     
     2313
     2314     
    20622315    </sect2>
    20632316   
    20642317    <sect2 id="data_api.misc">
    20652318      <title>Other classes</title>
     2319     
     2320      <sect3 id="data_api.misc.uml">
     2321        <title>UML diagram</title>
     2322       
     2323        <figure id="data_api.figures.misc">
     2324          <title>Other classes</title>
     2325          <screenshot>
     2326            <mediaobject>
     2327              <imageobject>
     2328                <imagedata
     2329                  align="center"
     2330                  fileref="figures/uml/datalayer.misc.png" format="PNG" />
     2331              </imageobject>
     2332            </mediaobject>
     2333          </screenshot>
     2334        </figure>
     2335      </sect3>
     2336     
    20662337    </sect2>
    20672338
     
    21822453              <imageobject>
    21832454                <imagedata
     2455                  align="center"
     2456                  scalefit="1" width="100%"
    21842457                  fileref="figures/uml/corelayer.datainfiles.png" format="PNG" />
    21852458              </imageobject>
  • trunk/doc/src/docbook/developerdoc/documentation.xml

    r3838 r3943  
    14981498                  <imageobject>
    14991499                    <imagedata
     1500                      scalefit="1" width="100%"
    15001501                      fileref="figures/magicdraw/classtags.png" format="PNG" />
    15011502                  </imageobject>
     
    15721573                  <imageobject>
    15731574                    <imagedata
     1575                      scalefit="1" width="100%"
    15741576                      fileref="figures/magicdraw/attributes.png" format="PNG" />
    15751577                  </imageobject>
     
    16451647                <imageobject>
    16461648                  <imagedata
     1649                    scalefit="1" width="100%"
    16471650                    fileref="figures/uml/datalayer.authentication.png" format="PNG" />
    16481651                </imageobject>
  • trunk/doc/src/docbook/userdoc/import_export_data.xml

    r3675 r3943  
    350350        <screenshot>
    351351          <mediaobject>
    352             <imageobject><imagedata fileref="figures/plugin_parameters.png" format="PNG" /></imageobject>
     352            <imageobject>
     353              <imagedata
     354                scalefit="1" width="100%"
     355                fileref="figures/plugin_parameters.png" format="PNG" />
     356            </imageobject>
    353357          </mediaobject>
    354358        </screenshot>
Note: See TracChangeset for help on using the changeset viewer.