#set TITLE = "MPD data model and documentation"
#include include/top

<center>

<table width=550 cellpadding=2><tr bgcolor=FFFFFF><td>
Updated: 8 Dec 2003

<br>
<br>

<h2>Introduction</h2>
<ul>
<li><b>MPD primary purpose:</b> characterization of inbred strains of mice.
Phenotypic data and genotypic data (mostly strain-specific SNPs) are contributed by 
a loosely-knit network of investigators.
The initial focus is on a defined set of 
<a href="@CGIPROG?rtn=docs/pristrains">41 priority strains</a>.
Uses of the MPD include
<ul>
<li>as a standardized library of baseline data
<li>to assist investigators in selecting mouse models
<li>to promote discovery of relationships between genetic differences and resultant phenotypic differences
</ul>
<br>
<li><b>Data acquisition:</b>
Primary content is supplied by investigators throughout the scientific community,
<a href="@CGIPROG?rtn=docs/dataguide">contributed</a> voluntarily or by prior agreement.
All content is curated and added to the database by MPD staff.
Investigators usually submit phenotypic data in tables having one row per animal. 
MPD curates the data by editing measurement descriptions for style and conformance,
and by categorizing measurements into the MPD category structure.
Contributed data sets are processed by computing summary statistics (mean, SD, SE, Z) 
for each measurement and for each measurement / strain / sex.  Sex differences are
computed.  A correlation coefficient is computed for each measurement vs. every other
measurement in the MPD.  Where possible, the above process is repeated in log space.
<br>
<br>
<li><b>Data presentation:</b>
is via the <a href="@CGIPROG?rtn=docs/home">MPD web site</a>, which uses
a CGI-based dynamic content system.  Whenever feasible, data are presented
using <a href="@CGIPROG?rtn=docs/plothelp">graphical displays</a>.
</ul>
<br><br><br>


<h2>ER Diagram</h2>
This illustrates the relationships between major MPD entities.  
<b>Move mouse over an entity to see short description.
Click on an entity to see full description.</b>
<br>
<map name=er1>
#include datamodel/er_diagram.map
</map>
<img src="@HTMLURL/im/er_diagram.gif"  border=0  usemap="#er1">

<br>
<br>
<br>
<h2>Table reference</h2>
<table cellpadding=2 width=520>

<tr bgcolor=FFFFEC><td colspan=2><br><b>Major entities</b></td></tr>
#sql select * from DBtables where class = '1' order by name, ord (num)
#include datamodel/tablelist_chunk

<tr bgcolor=FFFFEC><td colspan=2><br><b>Minor entities</b></td></tr>
#sql select * from DBtables where class = '2' order by name, ord (num)
#include datamodel/tablelist_chunk

<tr bgcolor=FFFFEC><td colspan=2><br><b>Linkage to other databases</b></td></tr>
#sql select * from DBtables where class = 'e' order by name, ord (num)
#include datamodel/tablelist_chunk
<tr bgcolor=ECECEC><td colspan=2>The <a href="@CGIPROG?rtn=datamodel/tabledetails&table=journalcits">
journalcits</a> table contains pubmed IDs.</td></tr>
<tr bgcolor=ECECEC><td colspan=2>Certain <a href="@CGIPROG?rtn=datamodel/tabledetails&table=contributed-data">contributed data</a> 
contain external identifiers.  For example, mpd146 contains dbSNP rs# and ss# identifiers.</td></tr>

<tr bgcolor=FFFFEC><td colspan=2><br><b>Dictionaries</b></td></tr>
#sql select * from DBtables where class = 'd' order by name, ord (num)
#include datamodel/tablelist_chunk

<tr bgcolor=FFFFEC><td colspan=2><br><b>Utility</b></td></tr>
#sql select * from DBtables where class = 'u' order by name, ord (num)
#include datamodel/tablelist_chunk

<tr bgcolor=FFFFEC><td colspan=2><br><b>Internal many-to-many mappings</b></td></tr>
#sql select * from DBtables where class = 'r' order by name, ord (num)
#include datamodel/tablelist_chunk

#if @MPDNODE = dev
  <tr bgcolor=FFFFEC><td colspan=2><br><b>Admin / data accession</b> (dev only)</td></tr>
  #sql select * from DBtables where class = 'a' order by name, ord (num)
  #include datamodel/tablelist_chunk
#endif

</table>

<br>
<h3>Notes</h3>
<ul>
<li> Projects may be uniquely identified by integer id or mnemonic symbol, whichever is most convenient.
<li> Measurements should be identified by measnum where possible; they may also be uniquely identified by project and varname.
</ul>

</td></tr></table>

#include include/bottom
