StudyVariable.pm

- NAME
- SYNOPSIS
- DESCRIPTION
- LICENSE
- FEEDBACK
- AUTHOR - Steve Mathias
- DETAILS
- Imported Packages
- Public methods

- printXML
- asHTML

# NAME

Genetics::StudyVariable

# SYNOPSIS

      $sv = new Genetics::StudyVariable(name => 'EA Aff Stat',
                                        importID => 445,
                                        dateCreated => $today,
                                        Keywords => [ {name => "Test Data",
                                                       dataType => "Boolean",
                                                       value => 1},
                                                    ],
                                        description => "EA Trait Locus",
                                        category => "AffectionStatus",
                                        format => "Code",
                                        isXLinked => 0,
                                        Codes => [ {code => 0,
                                                    description => "Unknown EA Status"},
                                                   {code => 1,
                                                    description => "EA Unaffected"},
                                                   {code => 2,
                                                    description => "EA Affected"},
                                                 ],
                                        AffStatDef => {name => 'EA',
                                                       diseaseAlleleFreq => 0.001,
                                                       pen11 => 0.0,
                                                       pen12 => 0.0,
                                                       pen22 => 1.0,
                                                       AffStatElements => [ {code => 0,
                                                                             type => "Unknown",
                                                                             formula => "'EA Aff Stat' = 0"},
                                                                            {code => 1,
                                                                             type => "Unaffected",
                                                                             formula => "'EA Aff Stat' = 1"},
                                                                            {code => 2,
                                                                             type => "Affected",
                                                                             formula => "'EA Aff Stat' = 2"},
                                                                          ],
                                                      },
                                        LCDef => {name => 'EA Default LC',
                                                  LiabilityClasses => [ {code => 0,
                                                                         description => "Unknown Age",
                                                                         pen11 => 0.0,
                                                                         pen12 => 0.0,
                                                                         pen22 => 1.0,
                                                                         formula => "'Age' = ''"},
                                                                        {code => 1,
                                                                         description => "Age less than 40",
                                                                         pen11 => 0.0,
                                                                         pen12 => 0.2,
                                                                         pen22 => 1.0,
                                                                         formula => "'Age' < 40"},
                                                                        {code => 2,
                                                                         description => "Age less than 50",
                                                                         pen11 => 0.0,
                                                                         pen12 => 0.3,
                                                                         pen22 => 1.0,
                                                                         formula => "'Age' < 50"},
                                                                        {code => 3,
                                                                         description => "Age grater than or equal to 60",
                                                                         pen11 => 0.0,
                                                                         pen12 => 0.4,
                                                                         pen22 => 1.0,
                                                                         formula => "'Age' >= 60"},
                                                                      ],
                                                 },
                                       ) ;

    See the GenPerl Tutorial for more information.

# DESCRIPTION

StudyVariable objects represent definitions of physical traits, affection status loci, environmental exposure, or drug treatments.

# LICENSE

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

# FEEDBACK

Currently, all feedback should be sent directly to the author.

# AUTHOR - Steve Mathias

Email: mathias@genomica.com

Phone: (720) 565-4029

Address: Genomica Corporation 1745 38th Street Boulder, CO 80301

# DETAILS

The rest of the documentation describes each of the object variables and methods. The names of internal variables and methods are preceded with an underscore (_).

# Imported Packages

     Genetics::Object       Superclass
     strict                 Just to be anal
     vars                   Global variables

# Public methods

      printXML              Print an XML representation of the object

## printXML

      Function  : Print an XML representation of the object.
      Argument  : A Genetics::StudyVariable object and the XML::Writer object being
                  used to generate the XML.
      Returns   : String
      Scope     : Public Instance Method
      Comments  : Calls Genetics::Object->printGeneralXML to generate XML elements
                  common to all Genetics::Object objects.

## asHTML

      Function  : Generate an HTML representation of the object.
      Argument  : A Genetics::StudyVariable object and a scalar containing the
                  name of the GenPerl database in which the object is stored.
      Returns   : Scalar containing the HTML text.
      Scope     : Public Instance Method
      Comments  : Calls Genetics::Object->_generalHTMLParam to generate HTML
                  elements common to all Genetics::Object objects.  An
                  HTML::Template object is used to actually generate the HTML.