You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@vcl.apache.org by bu...@apache.org on 2013/01/09 15:59:51 UTC

svn commit: r845737 [2/2] - in /websites/staging/vcl/trunk/content: ./ confluence_export/database-schema.html

Modified: websites/staging/vcl/trunk/content/confluence_export/database-schema.html
==============================================================================
--- websites/staging/vcl/trunk/content/confluence_export/database-schema.html (original)
+++ websites/staging/vcl/trunk/content/confluence_export/database-schema.html Wed Jan  9 14:59:50 2013
@@ -78,832 +78,772 @@
   
   <div id="content">
     <h1 class="title">Database Schema</h1>
-    <p><a name="DatabaseSchema-affiliationtable"></a></p>
+    <div class="toc">
+<ul>
+<li><a href="#affiliation-table">affiliation table</a></li>
+<li><a href="#blockcomputers-table">blockComputers table</a></li>
+<li><a href="#blockrequest-table">blockRequest table</a></li>
+<li><a href="#blocktimes-table">blockTimes table</a></li>
+<li><a href="#blockwebdate-table">blockWebDate table</a></li>
+<li><a href="#blockwebtime-table">blockWebTime table</a></li>
+<li><a href="#changelog-table">changelog table</a></li>
+<li><a href="#clickthroughs-table">clickThroughs table</a></li>
+<li><a href="#computer-table">computer table</a></li>
+<li><a href="#computerloadflow-table">computerloadflow table</a></li>
+<li><a href="#computerloadlog-table">computerloadlog table</a></li>
+<li><a href="#computerloadstate-table">computerloadstate table</a></li>
+<li><a href="#connectmethod-table">connectmethod table</a></li>
+<li><a href="#connectmethodmap-table">connectmethodmap table</a></li>
+<li><a href="#continuations-table">continuations table</a></li>
+<li><a href="#documentation-table">documentation table</a></li>
+<li><a href="#image-table">image table</a></li>
+<li><a href="#imagemeta-table">imagemeta table</a></li>
+<li><a href="#imagerevision-table">imagerevision table</a></li>
+<li><a href="#imtype-table">IMtype table</a></li>
+<li><a href="#localauth-table">localauth table</a></li>
+<li><a href="#log-table">log table</a></li>
+<li><a href="#loginlog-table">loginlog table</a></li>
+<li><a href="#managementnode-table">managementnode table</a></li>
+<li><a href="#module-table">module table</a></li>
+<li><a href="#os-table">OS table</a></li>
+<li><a href="#osinstalltype-table">OSinstalltype table</a></li>
+<li><a href="#ostype-table">OStype table</a></li>
+<li><a href="#platform-table">platform table</a></li>
+<li><a href="#privnode-table">privnode table</a></li>
+<li><a href="#provisioning-table">provisioning table</a></li>
+<li><a href="#provisioningosinstalltype-table">provisioningOSinstalltype table</a></li>
+<li><a href="#querylog-table">querylog table</a></li>
+<li><a href="#request-table">request table</a></li>
+<li><a href="#reservation-table">reservation table</a></li>
+<li><a href="#reservationaccounts-table">reservationaccounts table</a></li>
+<li><a href="#resource-table">resource table</a></li>
+<li><a href="#resourcegroup-table">resourcegroup table</a></li>
+<li><a href="#resourcegroupmembers-table">resourcegroupmembers table</a></li>
+<li><a href="#resourcemap-table">resourcemap table</a></li>
+<li><a href="#resourcepriv-table">resourcepriv table</a></li>
+<li><a href="#resourcetype-table">resourcetype table</a></li>
+<li><a href="#schedule-table">schedule table</a></li>
+<li><a href="#scheduletimes-table">scheduletimes table</a></li>
+<li><a href="#serverprofile-table">serverprofile table</a></li>
+<li><a href="#serverrequest-table">serverrequest table</a></li>
+<li><a href="#shibauth-table">shibauth table</a></li>
+<li><a href="#sitemaintenance-table">sitemaintenance table</a></li>
+<li><a href="#state-table">state table</a></li>
+<li><a href="#statgraphcache-table">statgraphcache table</a></li>
+<li><a href="#subimages-table">subimages table</a></li>
+<li><a href="#sublog-table">sublog table</a></li>
+<li><a href="#user-table">user table</a></li>
+<li><a href="#usergroup-table">usergroup table</a></li>
+<li><a href="#usergroupmembers-table">usergroupmembers table</a></li>
+<li><a href="#usergrouppriv-table">usergrouppriv table</a></li>
+<li><a href="#usergroupprivtype-table">usergroupprivtype table</a></li>
+<li><a href="#userpriv-table">userpriv table</a></li>
+<li><a href="#userprivtype-table">userprivtype table</a></li>
+<li><a href="#variable-table">variable table</a></li>
+<li><a href="#vmhost-table">vmhost table</a></li>
+<li><a href="#vmprofile-table">vmprofile table</a></li>
+<li><a href="#vmtype-table">vmtype table</a></li>
+<li><a href="#winkms-table">winKMS table</a></li>
+<li><a href="#winproductkey-table">winProductKey table</a></li>
+<li><a href="#xmlrpclog-table">xmlrpcLog table</a></li>
+</ul>
+</div>
 <h3 id="affiliation-table">affiliation table</h3>
 <p>This table contains a list of affiliations that can access this VCL site.</p>
-<p>id - id of entry
-name - name of entry
-shibname - for affiliations using shibboleth - the name of the shibboleth
-affiliation (the part after @ in eduPersonScopedAffiliation)
-dataUpdateText - this will be displayed on the User Preferences-&gt;Personal
-Information page to provide information on how to update things other than
-Preferred Name in that box
-sitewwwaddress - URL for login page for this affiliation; typically it is
-just the URL encoded parameters to index.php to have the authentication
-method already selected (i.e.
-https://vcl.example.org/vcl/index.php?mode=selectauth&amp;authtype=EXAMPLE%20LDAP)
-helpaddress - support email address for this affiliation
-shibonly - 1 if this affiliation can only be authenticated via shibboleth,
-0 if LDAP is also set up</p>
-<p><a name="DatabaseSchema-blockComputerstable"></a></p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>name</strong> - name of entry</li>
+<li><strong>shibname</strong> - for affiliations using shibboleth - the name of the shibboleth affiliation (the part after @ in eduPersonScopedAffiliation)</li>
+<li><strong>dataUpdateText</strong> - this will be displayed on the User Preferences-&gt;Personal Information page to provide information on how to update things other than Preferred Name in that box</li>
+<li><strong>sitewwwaddress</strong> - URL for login page for this affiliation; typically it is just the URL encoded parameters to index.php to have the authentication method already selected (i.e. <a href="https://vcl.example.org/vcl/index.php?mode=selectauth&amp;authtype=EXAMPLE%20LDAP" class="external-link" rel="nofollow">https://vcl.example.org/vcl/index.php?mode=selectauth&amp;authtype=EXAMPLE%20LDAP</a>)</li>
+<li><strong>helpaddress</strong> - support email address for this affiliation</li>
+<li><strong>shibonly</strong> - 1 if this affiliation can only be authenticated via shibboleth, 0 if LDAP is also set up</li>
+</ul>
 <h3 id="blockcomputers-table">blockComputers table</h3>
-<p>This table tracks which computers have been allocated to individual block
-allocation time slots.</p>
-<p>blockTimeid - reference to blockTimes.id
-computerid - reference to computer.id
-imageid - reference to image.id
-reloadrequestid - reference to request.id - reload reservation for
-preloading this node</p>
-<p><a name="DatabaseSchema-blockRequesttable"></a></p>
+<p>This table tracks which computers have been allocated to individual block allocation time slots.</p>
+<ul>
+<li><strong>blockTimeid</strong> - reference to blockTimes.id</li>
+<li><strong>computerid</strong> - reference to computer.id</li>
+<li><strong>imageid</strong> - reference to image.id</li>
+<li><strong>reloadrequestid</strong> - reference to request.id - reload reservation for preloading this node</li>
+</ul>
 <h3 id="blockrequest-table">blockRequest table</h3>
-<p>This table contains all of the block allocations that have been requested
-and their current state.</p>
-<p>id - id of entry
-name - name of entry
-imageid - reference to image.id
-numMachines - number of machines to preload for this block allocation
-groupid - reference to usergroup.id - user group that will have access to
-machines in this block allocation
-repeating - enum field - weekly, monthly, or list - how this block
-allocation repeats
-ownerid - reference to user.id - owner of the block allocation
-admingroupid - reference to usergroup.id - (to be deprecated in 2.3) - user
-group that can modify this block allocation
-managementnodeid - reference to managementnode.id - management node that is
-to process this block allocation
-expireTime - last date and time of block allocation time slots
-processing - flag used by vcld to determine if a vcld process is processing
-this block allocation
-status - enum field - requested, accepted, completed, reject - current
-status of the block allocation
-comments - any comments entered by the person that requested the block
-allocation</p>
-<p><a name="DatabaseSchema-blockTimestable"></a></p>
+<p>This table contains all of the block allocations that have been requested and their current state.</p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>name</strong> - name of entry</li>
+<li><strong>imageid</strong> - reference to image.id</li>
+<li><strong>numMachines</strong> - number of machines to preload for this block allocation</li>
+<li><strong>groupid</strong> - reference to usergroup.id - user group that will have access to machines in this block allocation</li>
+<li><strong>repeating</strong> - enum field - weekly, monthly, or list - how this block allocation repeats</li>
+<li><strong>ownerid</strong> - reference to user.id - owner of the block allocation</li>
+<li><strong>admingroupid</strong> - reference to usergroup.id - (to be deprecated in 2.3) - user group that can modify this block allocation</li>
+<li><strong>managementnodeid</strong> - reference to managementnode.id - management node that is to process this block allocation</li>
+<li><strong>expireTime</strong> - last date and time of block allocation time slots</li>
+<li><strong>processing</strong> - flag used by vcld to determine if a vcld process is processing this block allocation</li>
+<li><strong>status</strong> - enum field - requested, accepted, completed, reject - current status of the block allocation</li>
+<li><strong>comments</strong> - any comments entered by the person that requested the block allocation</li>
+</ul>
 <h3 id="blocktimes-table">blockTimes table</h3>
-<p>This table contains all of the time slots associated with a block
-allocation that are active or have not yet been reached. Time slots are
-deleted after they are completed.</p>
-<p>id - id of entry
-blockRequestid - reference to blockRequest.id
-start - start of block time
-end - end of block time
-processed - flag for vcld - 1 if block time has been processed by vcld, 0
-if not
-skip - flag for users to skip individual instances of repeating block
-allocations - 1 to skip, 0 to use</p>
-<p><a name="DatabaseSchema-blockWebDatetable"></a></p>
+<p>This table contains all of the time slots associated with a block allocation that are active or have not yet been reached. Time slots are deleted after they are completed.</p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>blockRequestid</strong> - reference to blockRequest.id</li>
+<li><strong>start</strong> - start of block time</li>
+<li><strong>end</strong> - end of block time</li>
+<li><strong>processed</strong> - flag for vcld - 1 if block time has been processed by vcld, 0 if not</li>
+<li><strong>skip</strong> - flag for users to skip individual instances of repeating block allocations - 1 to skip, 0 to use</li>
+</ul>
 <h3 id="blockwebdate-table">blockWebDate table</h3>
-<p>This table contains date related items associated with a block allocation
-so that they can more easily be retrieved when editing a block allocation.</p>
-<p>blockRequestid - reference to blockRequest.id
-start - start date of block allocation
-end - end date of block allocation
-days - for weekly repeating blocks, this is a bitmask of the selected days;
-for monthly repeating blocks, this is the day of the week; for lists, this
-is the order the item is in the set of dates
-weeknum - only used for monthly repeating blocks - the selected week of the
-month</p>
-<p><a name="DatabaseSchema-blockWebTimetable"></a></p>
+<p>This table contains date related items associated with a block allocation so that they can more easily be retrieved when editing a block allocation.</p>
+<ul>
+<li><strong>blockRequestid</strong> - reference to blockRequest.id</li>
+<li><strong>start</strong> - start date of block allocation</li>
+<li><strong>end</strong> - end date of block allocation</li>
+<li><strong>days</strong> - for weekly repeating blocks, this is a bitmask of the selected days; for monthly repeating blocks, this is the day of the week; for lists, this is the order the item is in the set of dates</li>
+<li><strong>weeknum</strong> - only used for monthly repeating blocks - the selected week of the month</li>
+</ul>
 <h3 id="blockwebtime-table">blockWebTime table</h3>
-<p>This table contains time related items associated with a block allocation
-so that they can more easily be retrieved when editing a block allocation.</p>
-<p>blockRequestid - reference to blockRequest.id
-starthour - start hour of block allocation
-startminute - start minute of block allocation
-startmeridian - start meridian of block allocation
-endhour - end hour of block allocation
-endminute - end minute of block allocation
-endmeridian - end meridian of block allocation
-order - for weekly and monthly repeating blocks, this is the sequential
-order of the time slot; for lists, it is the sequential order of the
-date/time</p>
-<p><a name="DatabaseSchema-changelogtable"></a></p>
+<p>This table contains time related items associated with a block allocation so that they can more easily be retrieved when editing a block allocation.</p>
+<ul>
+<li><strong>blockRequestid</strong> - reference to blockRequest.id</li>
+<li><strong>starthour</strong> - start hour of block allocation</li>
+<li><strong>startminute</strong> - start minute of block allocation</li>
+<li><strong>startmeridian</strong> - start meridian of block allocation</li>
+<li><strong>endhour</strong> - end hour of block allocation</li>
+<li><strong>endminute</strong> - end minute of block allocation</li>
+<li><strong>endmeridian</strong> - end meridian of block allocation</li>
+<li><strong>order</strong> - for weekly and monthly repeating blocks, this is the sequential order of the time slot; for lists, it is the sequential order of the date/time</li>
+</ul>
 <h3 id="changelog-table">changelog table</h3>
 <p>This table logs changes made to reservations.</p>
-<p>id - id of entry
-logid - reference to log.id
-start - change to start time of reservation
-end - change to end time of reservation
-computerid - reference to computer.id - change to computer assigned to
-reservation
-remoteIP - change to remote IP of reservation user
-wasavailable - mostly deprecated - if submitted change to start/end time of
-reservation was available for use or not
-timestamp - datetime entry was added</p>
-<p><a name="DatabaseSchema-clickThroughstable"></a></p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>logid</strong> - reference to log.id</li>
+<li><strong>start</strong> - change to start time of reservation</li>
+<li><strong>end</strong> - change to end time of reservation</li>
+<li><strong>computerid</strong> - reference to computer.id - change to computer assigned to reservation</li>
+<li><strong>remoteIP</strong> - change to remote IP of reservation user</li>
+<li><strong>wasavailable</strong> - mostly deprecated - if submitted change to start/end time of reservation was available for use or not</li>
+<li><strong>timestamp</strong> - datetime entry was added</li>
+</ul>
 <h3 id="clickthroughs-table">clickThroughs table</h3>
-<p>This table logs click through agreements users must agree to when they
-create images.</p>
-<p>userid - reference to user.id - user that clicked agreement
-imageid - reference to image.id - image for which agreement was clicked
-imagerevisionid - reference to imagerevision.id - image revision for which
-agreement was clicked
-accepted - datetime agreement clicked
-agreement - text of agreement at time it was clicked</p>
-<p><a name="DatabaseSchema-computertable"></a></p>
+<p>This table logs click through agreements users must agree to when they create images.</p>
+<ul>
+<li><strong>userid</strong> - reference to user.id - user that clicked agreement</li>
+<li><strong>imageid</strong> - reference to image.id - image for which agreement was clicked</li>
+<li><strong>imagerevisionid</strong> - reference to imagerevision.id - image revision for which agreement was clicked</li>
+<li><strong>accepted</strong> - datetime agreement clicked</li>
+<li><strong>agreement</strong> - text of agreement at time it was clicked</li>
+</ul>
 <h3 id="computer-table">computer table</h3>
-<p>This table contains all information about compute nodes and VMs that VCL
-controls. All bare metal computers, virtual hosts, and virtual machines
-must have an entry in this table.</p>
-<p>id - id of entry
-stateid - reference to state.id - current state of computer
-ownerid - reference to owner.id - owner of computer
-platformid - reference to platform.id - platform of computer
-scheduleid - reference to schedule.id - schedule of computer
-currentimageid - reference to image.id - image currently loaded on computer
-nextimageid - reference to image.id - image to be loaded next on computer,
-only used under certain circumstances
-imagerevisionid - reference to imagerevision.id - image revision currently
-loaded on computer (somewhat redundant with currentimageid)
-RAM - amount of RAM physical computer has, or maximum amount of RAM that
-can be allocated to virtual computer
-procnumber - number of processor cores physical computer has, or maximum
-number of processor cores that can be allocated to virtual computer
-procspeed - speed of processor cores in MHz
-network - speed of (public?) NIC(s) in Mbps
-hostname - private hostname of computer
-IPaddress - public IP address
-privateIPaddress - private IP address
+<p>This table contains all information about compute nodes and VMs that VCL controls. All bare metal computers, virtual hosts, and virtual machines must have an entry in this table.</p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>stateid</strong> - reference to state.id - current state of computer</li>
+<li><strong>ownerid</strong> - reference to owner.id - owner of computer</li>
+<li><strong>platformid</strong> - reference to platform.id - platform of computer</li>
+<li><strong>scheduleid</strong> - reference to schedule.id - schedule of computer</li>
+<li><strong>currentimageid</strong> - reference to image.id - image currently loaded on computer</li>
+<li><strong>nextimageid</strong> - reference to image.id - image to be loaded next on computer, only used under certain circumstances</li>
+<li><strong>imagerevisionid</strong> - reference to imagerevision.id - image revision currently loaded on computer (somewhat redundant with currentimageid)</li>
+<li><strong>RAM</strong> - amount of RAM physical computer has, or maximum amount of RAM that can be allocated to virtual computer</li>
+<li><strong>procnumber</strong> - number of processor cores physical computer has, or maximum number of processor cores that can be allocated to virtual computer</li>
+<li><strong>procspeed</strong> - speed of processor cores in MHz</li>
+<li><strong>network</strong> - speed of (public?) NIC(s) in Mbps</li>
+<li><strong>hostname</strong> - private hostname of computer</li>
+<li><strong>IPaddress</strong> - public IP address</li>
+<li><strong>privateIPaddress</strong> - private IP address
 eth0macaddress - MAC address of private NIC
-eth1macaddress - MAC address of public NIC
-type - blade, lab, or virtualmachine - type of the computer
-provisioningid - reference to provisioning.id - provisioning module/method
-to be used for computer
-drivetype - hda or sda - type of drive in the computer (is this still
-used?)
-deleted - flag to show if computer has been deleted - 1 if deleted, 0 if
-not
-notes - any notes entered when computer placed into maintenance state
-lastcheck - date stamp of last time the computer was checked through
-healthcheck.pl
-location - physical location of node (Data Center 1, rack 1, etc)
-dsa - Not being used. Was planned for storing host keys for ssh
-dsapub - Not being used. Was planned for storing host keys for ssh
-rsa - Not being used. Was planned for storing host keys for ssh
-rsapub - Not being used. Was planned for storing host keys for ssh 
-host - Not being used. Was planned for storing host keys for ssh
-hostpub - Not being used. Was planned for storing host keys for ssh
-vmhostid - reference to vmhost.id - only used for virtual machines, this is
-the host computer of the VM
-vmtypeid - reference to vmtype.id - only used for virtual machines, this is
-the type of the VM (vmware, xen, kvm, etc)</p>
-<p><a name="DatabaseSchema-computerloadflowtable"></a></p>
+eth1macaddress - MAC address of public NIC</li>
+<li><strong>type</strong> - blade, lab, or virtualmachine - type of the computer</li>
+<li><strong>provisioningid</strong> - reference to provisioning.id - provisioning module/method to be used for computer</li>
+<li><strong>drivetype</strong> - hda or sda - type of drive in the computer (is this still used?)</li>
+<li><strong>deleted</strong> - flag to show if computer has been deleted - 1 if deleted, 0 if not</li>
+<li><strong>notes</strong> - any notes entered when computer placed into maintenance state</li>
+<li><strong>lastcheck</strong> - date stamp of last time the computer was checked through healthcheck.pl</li>
+<li><strong>location</strong> - physical location of node (Data Center 1, rack 1, etc)</li>
+<li><strong>dsa</strong> - Not being used. Was planned for storing host keys for ssh</li>
+<li><strong>dsapub</strong> - Not being used. Was planned for storing host keys for ssh</li>
+<li><strong>rsa</strong> - Not being used. Was planned for storing host keys for ssh</li>
+<li><strong>rsapub</strong> - Not being used. Was planned for storing host keys for ssh </li>
+<li><strong>host</strong> - Not being used. Was planned for storing host keys for ssh</li>
+<li><strong>hostpub</strong> - Not being used. Was planned for storing host keys for ssh</li>
+<li><strong>vmhostid</strong> - reference to vmhost.id - only used for virtual machines, this is the host computer of the VM</li>
+<li><strong>vmtypeid</strong> - reference to vmtype.id - only used for virtual machines, this is the type of the VM (vmware, xen, kvm, etc)</li>
+</ul>
 <h3 id="computerloadflow-table">computerloadflow table</h3>
-<p>This table contains entries that establish a flow of states that are
-followed when a reservation is being deployed so that users can have
-feedback on the current reservations page about their reservations.</p>
-<p>computerloadstateid - reference to computerloadstate.id
-nextstateid - reference to computerloadstate.id - the computer load state
-that follows this one
-type - type of load this sequence is for</p>
-<p><a name="DatabaseSchema-computerloadlogtable"></a></p>
+<p>This table contains entries that establish a flow of states that are followed when a reservation is being deployed so that users can have feedback on the current reservations page about their reservations.</p>
+<ul>
+<li><strong>computerloadstateid</strong> - reference to computerloadstate.id</li>
+<li><strong>nextstateid</strong> - reference to computerloadstate.id - the computer load state that follows this one</li>
+<li><strong>type</strong> - type of load this sequence is for</li>
+</ul>
 <h3 id="computerloadlog-table">computerloadlog table</h3>
-<p>This table contains actual log entries for each state processed when a
-reservation is being deployed so that users can have feedback on the
-current reservations page about their reservations.</p>
-<p>id - id of entry
-reservationid - reference to reservation.id - reservation this entry is for
-computerid - reference to computer.id
-loadstateid - reference to computerloadstate.id - state this entry is for
-timestamp - date/time entry entered into log
-additionalinfo - details about this entry</p>
-<p><a name="DatabaseSchema-computerloadstatetable"></a></p>
+<p>This table contains actual log entries for each state processed when a reservation is being deployed so that users can have feedback on the current reservations page about their reservations.</p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>reservationid</strong> - reference to reservation.id - reservation this entry is for</li>
+<li><strong>computerid</strong> - reference to computer.id</li>
+<li><strong>loadstateid</strong> - reference to computerloadstate.id - state this entry is for</li>
+<li><strong>timestamp</strong> - date/time entry entered into log</li>
+<li><strong>additionalinfo</strong> - details about this entry</li>
+</ul>
 <h3 id="computerloadstate-table">computerloadstate table</h3>
-<p>This table contains the load states that a reservation goes through when
-being deployed and their estimated time so that an estimate of how much
-longer the deploy will take can be generated.</p>
-<p>id - id of entry
-loadstatename - short name of state
-prettyname - more descriptive name of state
-est - estimated time for state in minutes</p>
-<p><a name="DatabaseSchema-connectmethodtable"></a></p>
+<p>This table contains the load states that a reservation goes through when being deployed and their estimated time so that an estimate of how much longer the deploy will take can be generated.</p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>loadstatename</strong> - short name of state</li>
+<li><strong>prettyname</strong> - more descriptive name of state</li>
+<li><strong>est</strong> - estimated time for state in minutes</li>
+</ul>
 <h3 id="connectmethod-table">connectmethod table</h3>
-<p>This table contains all of the connect methods available to be assigned to
-an image.  Connect methods are things like RDP, ssh, VNC, etc.</p>
-<p>id - id of entry
-name - name of entry
-description - description of connect method
-protocol - TCP or UDP
-port - tcp or udp port number
-connecttext - this text will be displayed on the Connect page, there are a
-few variable substitutions available to be used: #userid#, #password#,</p>
-<h1 id="connectip-and-connectport">connectIP#, and #connectport</h1>
-<p>servicename - name of service to be started to enable connect method on
-provisioned node
-startupscript - name of script to be run to enable connect method on
-provisioned node</p>
-<p><a name="DatabaseSchema-connectmethodmaptable"></a></p>
+<p>This table contains all of the connect methods available to be assigned to an image.  Connect methods are things like RDP, ssh, VNC, etc.</p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>name</strong> - name of entry</li>
+<li><strong>description</strong> - description of connect method</li>
+<li><strong>protocol</strong> - TCP or UDP</li>
+<li><strong>port</strong> - tcp or udp port number</li>
+<li><strong>connecttext</strong> - this text will be displayed on the Connect page, there are a few variable substitutions available to be used: #userid#, #password#, #connectIP#, and #connectport#</li>
+<li><strong>servicename</strong> - name of service to be started to enable connect method on provisioned node</li>
+<li><strong>startupscript</strong> - name of script to be run to enable connect method on provisioned node</li>
+</ul>
 <h3 id="connectmethodmap-table">connectmethodmap table</h3>
-<p>This table contains two types of information and can be somewhat confusing.
- It tracks which connect methods are mapped to which OS types, OSes, and
-image revisions.  It also contains which methods can be assigned to which
-OS types and OSes.  Entries that have autoprovisioned set to 0 or 1 are
-entries that tell whether or not the image can be assigned to that OS type
-or OS.  Entries that have autoprovisioned set to NULL tell whether that
-method is enabled in addition to default methods for the image, or whether
-that method is a default one but disable for the image.</p>
-<p>connectmethodid - reference to connectmethod.id
-OStypeid - reference to OStype.id - OS type this entry applies to (can be
-NULL)
-OSid - reference to OS.id - OS this entry applies to (can be NULL)
-imagerevisionid - reference to imagerevision.id - image revision this entry
-applies to (can be NULL)
-disabled - flag telling if method is enabled/disabled for combination of
-OStypeid, OSid, and imagerevisionid
-autoprovisioned - NULL, 0, or 1 - flag to tell if this connect method can
-be autoprovisioned by vcld or if the image owner must install the software
-to enable it</p>
-<p><a name="DatabaseSchema-continuationstable"></a></p>
+<p>This table contains two types of information and can be somewhat confusing.  It tracks which connect methods are mapped to which OS types, OSes, and image revisions.  It also contains which methods can be assigned to which OS types and OSes.  Entries that have autoprovisioned set to 0 or 1 are entries that tell whether or not the image can be assigned to that OS type or OS.  Entries that have autoprovisioned set to NULL tell whether that method is enabled in addition to default methods for the image, or whether that method is a default one but disable for the image.</p>
+<ul>
+<li><strong>connectmethodid</strong> - reference to connectmethod.id</li>
+<li><strong>OStypeid</strong> - reference to OStype.id - OS type this entry applies to (can be NULL)</li>
+<li><strong>OSid</strong> - reference to OS.id - OS this entry applies to (can be NULL)</li>
+<li><strong>imagerevisionid</strong> - reference to imagerevision.id - image revision this entry applies to (can be NULL)</li>
+<li><strong>disabled</strong> - flag telling if method is enabled/disabled for combination of OStypeid, OSid, and imagerevisionid</li>
+<li><strong>autoprovisioned</strong> - NULL, 0, or 1 - flag to tell if this connect method can be autoprovisioned by vcld or if the image owner must install the software to enable it</li>
+</ul>
 <h3 id="continuations-table">continuations table</h3>
-<p>This table contains "continuations" which are basically saved states that
-can then be submitted by the frontend to perform an action.</p>
-<p>id - id of entry
-userid - reference to user.id - who this entry belongs to
-expiretime - date/time entry expires
-frommode - mode transitioning from
-tomode - mode transitioning to
-data - serialized data saved with this continuation
-multicall - flag to tell if this continuation can be called more than one
-time
-parentid - reference to continuations.id - parent of this continuation for
-continuation chains (can be NULL)
-deletefromid - reference to continuations.id - id in a continuation chain
-from which to start deleting the chain</p>
-<p><a name="DatabaseSchema-documentationtable"></a></p>
+<p>This table contains "continuations" which are basically saved states that can then be submitted by the frontend to perform an action.</p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>userid</strong> - reference to user.id - who this entry belongs to</li>
+<li><strong>expiretime</strong> - date/time entry expires</li>
+<li><strong>frommode</strong> - mode transitioning from</li>
+<li><strong>tomode</strong> - mode transitioning to</li>
+<li><strong>data</strong> - serialized data saved with this continuation</li>
+<li><strong>multicall</strong> - flag to tell if this continuation can be called more than one time</li>
+<li><strong>parentid</strong> - reference to continuations.id - parent of this continuation for continuation chains (can be NULL)</li>
+<li><strong>deletefromid</strong> - reference to continuations.id - id in a continuation chain from which to start deleting the chain</li>
+</ul>
 <h3 id="documentation-table">documentation table</h3>
-<p>This table is deprecated.  At one time, there was a built in documentation
-wiki like part of the site.</p>
-<p>name - name of entry
-title - title of documentation item
-data - text of documentation item</p>
-<p><a name="DatabaseSchema-imagetable"></a></p>
+<p>This table is deprecated.  At one time, there was a built in documentation wiki like part of the site.</p>
+<ul>
+<li><strong>name</strong> - name of entry</li>
+<li><strong>title</strong> - title of documentation item</li>
+<li><strong>data</strong> - text of documentation item</li>
+</ul>
 <h3 id="image-table">image table</h3>
-<p>This table contains all information about the images available through VCL.
- It comes with a single required special image - "No image" that is used to
-signify when a computer is not loaded with anything.</p>
-<p>id - id of entry
-name - system name of image
-prettyname - name of image that is displayed to users
-ownerid - reference to user.id - owner of image
-platformid - reference to platform.id - platform of image
-OSid - reference to OS.id - OS of image
-imagemetaid - reference to imagemeta.id - NULL or id from imagemeta table
-where additional image information is stored
-minram - minimum RAM required for this image in MB; for VM images, this is
-how much RAM to allocate to the VM - however, vcld controls the minimum
-that will be allocated to a VM
-minprocnumber - minimum number of cores required by image
-minprocspeed - minimum processor speed required by image in MHz
-minnetwork - minimum (public?) network speed required by image in Mbps
-maxconcurrent - maximum concurrent reservations that can be made for image
-reloadtime - reload time for image - used by backend for knowing how long
-to wait during certain parts of deploying the image; only used by the
-frontend the first time the image is loaded, after which historical data is
-used to estimate loading time
-deleted - flag to show if image has been deleted - 1 if deleted, 0 if not
-test - flag to show if there is a test version of this image available
-(depricated?)
-lastupdate - date/time image was last updated
-forcheckout - flag to tell if the image should show up in the list of
-images on the new reservations page - this is designed to be used for
-subimages in clusters where the subimages should not be directly reserved
-maxinitialtime - maximum initial time the image can be reserved
-project - vcl, hpc, or vclhpc - string used to control some network
-configuration?
-size - size of the image in MB?
-architecture - x86 or x86_64 - architecture of image
-description - description of image displayed on new reservations page
-usage - notes on how to use image displayed on Connect page
-basedoffrevisionid - reference to imagerevision.id - image revision this
-image was based off of</p>
-<p><a name="DatabaseSchema-imagemetatable"></a></p>
+<p>This table contains all information about the images available through VCL.  It comes with a single required special image - "No image" that is used to signify when a computer is not loaded with anything.</p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>name</strong> - system name of image</li>
+<li><strong>prettyname</strong> - name of image that is displayed to users</li>
+<li><strong>ownerid</strong> - reference to user.id - owner of image</li>
+<li><strong>platformid</strong> - reference to platform.id - platform of image</li>
+<li><strong>OSid</strong> - reference to OS.id - OS of image</li>
+<li><strong>imagemetaid</strong> - reference to imagemeta.id - NULL or id from imagemeta table where additional image information is stored</li>
+<li><strong>minram</strong> - minimum RAM required for this image in MB; for VM images, this is how much RAM to allocate to the VM - however, vcld controls the minimum that will be allocated to a VM</li>
+<li><strong>minprocnumber</strong> - minimum number of cores required by image</li>
+<li><strong>minprocspeed</strong> - minimum processor speed required by image in MHz</li>
+<li><strong>minnetwork</strong> - minimum (public?) network speed required by image in Mbps</li>
+<li><strong>maxconcurrent</strong> - maximum concurrent reservations that can be made for image</li>
+<li><strong>reloadtime</strong> - reload time for image - used by backend for knowing how long to wait during certain parts of deploying the image; only used by the frontend the first time the image is loaded, after which historical data is used to estimate loading time</li>
+<li><strong>deleted</strong> - flag to show if image has been deleted - 1 if deleted, 0 if not</li>
+<li><strong>test</strong> - flag to show if there is a test version of this image available (depricated?)</li>
+<li><strong>lastupdate</strong> - date/time image was last updated</li>
+<li><strong>forcheckout</strong> - flag to tell if the image should show up in the list of images on the new reservations page - this is designed to be used for subimages in clusters where the subimages should not be directly reserved</li>
+<li><strong>maxinitialtime</strong> - maximum initial time the image can be reserved</li>
+<li><strong>project</strong> - vcl, hpc, or vclhpc - string used to control some network configuration?</li>
+<li><strong>size</strong> - size of the image in MB?</li>
+<li><strong>architecture</strong> - x86 or x86_64 - architecture of image</li>
+<li><strong>description</strong> - description of image displayed on new reservations page</li>
+<li><strong>usage</strong> - notes on how to use image displayed on Connect page</li>
+<li><strong>basedoffrevisionid</strong> - reference to imagerevision.id - image revision this image was based off of</li>
+</ul>
 <h3 id="imagemeta-table">imagemeta table</h3>
-<p>This table contains additional information about some images.  It was added
-so that the extra information would not needed to be recorded for every
-image when most of them would not need it.</p>
-<p>id - id of entry
-checkuser - flag to tell if reservations for image should be timed out if
-user is disconnect for &gt; 15 minutes - 0 not to do timeout, 1 to do timeout
-subimages - flag to tell if subimages are associated with image
-usergroupid - reference to usergroup.id - user group allowed to log in to
-reservations for image (deprecated?)
-sysprep - flat to tell if sysprep should be used on this image (bare metal
-images only, sysprep is always disabled for VMs)
-postoption - ??
-architecture - ??
-rootaccess - flag to tell if users should have root access on reservations
-for image - 1 to have it, 0 not to</p>
-<p><a name="DatabaseSchema-imagerevisiontable"></a></p>
+<p>This table contains additional information about some images.  It was added so that the extra information would not needed to be recorded for every image when most of them would not need it.</p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>checkuser</strong> - flag to tell if reservations for image should be timed out if user is disconnect for &gt; 15 minutes - 0 not to do timeout, 1 to do timeout</li>
+<li><strong>subimages</strong> - flag to tell if subimages are associated with image</li>
+<li><strong>usergroupid</strong> - reference to usergroup.id - user group allowed to log in to reservations for image (deprecated?)</li>
+<li><strong>sysprep</strong> - flat to tell if sysprep should be used on this image (bare metal images only, sysprep is always disabled for VMs)</li>
+<li><strong>postoption</strong> - ??</li>
+<li><strong>architecture</strong> - ??</li>
+<li><strong>rootaccess</strong> - flag to tell if users should have root access on reservations for image - 1 to have it, 0 not to</li>
+</ul>
 <h3 id="imagerevision-table">imagerevision table</h3>
-<p>This table contains an entry for every revision (including the initial one)
-of each image.</p>
-<p>id - id of entry
-imageid - reference to image.id
-revision - number of this revision
-userid - reference to user.id - user that created the revision
-datecreated - date/time revision was created
-deleted - flag to tell if revision has been deleted - 1 for deleted, 0
-otherwise
-datedeleted - date/time revision was set to deleted
-production - flag to tell if this revision is the production one - 1 for
-production, 0 otherwise
-comments - comments entered when revision was created for keeping track of
-what was done to the image
-imagename - system name of revision
-autocaptured - flag to tell if this was an auto-captured revision - 1 if it
-was, 0 otherwise</p>
-<p><a name="DatabaseSchema-IMtypetable"></a></p>
+<p>This table contains an entry for every revision (including the initial one) of each image.</p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>imageid</strong> - reference to image.id</li>
+<li><strong>revision</strong> - number of this revision</li>
+<li><strong>userid</strong> - reference to user.id - user that created the revision</li>
+<li><strong>datecreated</strong> - date/time revision was created</li>
+<li><strong>deleted</strong> - flag to tell if revision has been deleted - 1 for deleted, 0 otherwise</li>
+<li><strong>datedeleted</strong> - date/time revision was set to deleted</li>
+<li><strong>production</strong> - flag to tell if this revision is the production one - 1 for production, 0 otherwise</li>
+<li><strong>comments</strong> - comments entered when revision was created for keeping track of what was done to the image</li>
+<li><strong>imagename</strong> - system name of revision</li>
+<li><strong>autocaptured</strong> - flag to tell if this was an auto-captured revision - 1 if it was, 0 otherwise</li>
+</ul>
 <h3 id="imtype-table">IMtype table</h3>
-<p>This table never really got used.  The idea was the people could be
-notified via IM in addition to or instead of via email.</p>
-<p>id - id of entry
-name - name of entry</p>
-<p><a name="DatabaseSchema-localauthtable"></a></p>
+<p>This table never really got used.  The idea was the people could be notified via IM in addition to or instead of via email.</p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>name</strong> - name of entry</li>
+</ul>
 <h3 id="localauth-table">localauth table</h3>
 <p>This table contains password hashes for local accounts.</p>
-<p>userid - reference to user.id
-passhash - sha1 hash of password and salt
-salt - 8 character salt to be hashed with the password
-lastupdated - date/time entry was last updated
-lockedout - (unused) flag to tell if this account is locked out - 1 if
-locked out, 0 otherwise</p>
-<p><a name="DatabaseSchema-logtable"></a></p>
+<ul>
+<li><strong>userid</strong> - reference to user.id</li>
+<li><strong>passhash</strong> - sha1 hash of password and salt</li>
+<li><strong>salt</strong> - 8 character salt to be hashed with the password</li>
+<li><strong>lastupdated</strong> - date/time entry was last updated</li>
+<li><strong>lockedout</strong> - (unused) flag to tell if this account is locked out - 1 if locked out, 0 otherwise</li>
+</ul>
 <h3 id="log-table">log table</h3>
-<p>This table contains an entry for every reservation made in VCL except for
-those made by the special account 'vclreload'.</p>
-<p>id - id of entry
-userid - reference to user.id
-nowfuture - now or future - whether the reservation was for 'now' or a
-future date/time
-start - start time of the reservation
-loaded - date/time the image was ready for user connection
-initialend - scheduled end time of reservation
-finalend - date/time reservation actually ended
-wasavailable - flag to tell if requested reservation was actually available
-- somewhat deprecated because users get feedback that a selection is not
-available without actually submitting it
-ending - deleted, released, failed, failedtest, noack, nologin, timeout,
-EOR, or none - how the reservation ended
-requestid - reference to request.id - useful for looking through vcld logs
-computerid - reference to computer.id
-remoteIP - IP address of user's machine
-imageid - reference to image.id
-size - ??</p>
-<p><a name="DatabaseSchema-loginlogtable"></a></p>
+<p>This table contains an entry for every reservation made in VCL except for those made by the special account 'vclreload'.</p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>userid</strong> - reference to user.id</li>
+<li><strong>nowfuture</strong> - now or future - whether the reservation was for 'now' or a future date/time</li>
+<li><strong>start</strong> - start time of the reservation</li>
+<li><strong>loaded</strong> - date/time the image was ready for user connection</li>
+<li><strong>initialend</strong> - scheduled end time of reservation</li>
+<li><strong>finalend</strong> - date/time reservation actually ended</li>
+<li><strong>wasavailable</strong> - flag to tell if requested reservation was actually available - somewhat deprecated because users get feedback that a selection is not available without actually submitting it</li>
+<li><strong>ending</strong> - deleted, released, failed, failedtest, noack, nologin, timeout, EOR, or none - how the reservation ended</li>
+<li><strong>requestid</strong> - reference to request.id - useful for looking through vcld logs</li>
+<li><strong>computerid</strong> - reference to computer.id</li>
+<li><strong>remoteIP</strong> - IP address of user's machine</li>
+<li><strong>imageid</strong> - reference to image.id</li>
+<li><strong>size</strong> - ??</li>
+</ul>
 <h3 id="loginlog-table">loginlog table</h3>
 <p>This table contains a log of every authentication attempt.</p>
-<p>user - user id entered on login page
-authmech - authentication method selected
-affiliationid - affiliation used to authenticate user
-timestamp - date/time authentication attempt occurred
-passfail - 0 for fail, 1 for pass
-remoteIP - IP address of user's machine</p>
-<p><a name="DatabaseSchema-managementnodetable"></a></p>
+<ul>
+<li><strong>user</strong> - user id entered on login page</li>
+<li><strong>authmech</strong> - authentication method selected</li>
+<li><strong>affiliationid</strong> - affiliation used to authenticate user</li>
+<li><strong>timestamp</strong> - date/time authentication attempt occurred</li>
+<li><strong>passfail</strong> - 0 for fail, 1 for pass</li>
+<li><strong>remoteIP</strong> - IP address of user's machine</li>
+</ul>
 <h3 id="managementnode-table">managementnode table</h3>
 <p>This table contains information about each management node.</p>
-<p>id - id of entry
-IPaddress - IP of management node
-hostname - hostname of management node
-ownerid - reference to user.id - owner of management node
-stateid - reference to state.id - current state of management node
-lastcheckin - date/time of last check in by management node
-checkininterval - how often in seconds the management node should be
-checking in
-installpath - path to root of image library
-imagelibenable - 1 to enable sharing images among management nodes, 0
-otherwise
-imagelibgroupid - reference to resourcegroup.id - resource group that
-contains other management nodes from which this one can get images
-imagelibuser - user to use when fetching images from other management nodes
-imagelibkey - ssh identity key to use when fetching images from other
-management nodes
-keys - comman delimited list of ssh identity keys to use when sshing to
-compute nodes
-predictivemoduleid - id of module for predicting which image to load when a
-reservation completes
-sshport - ssh port to listen on
-publicIPconfiguration - how compute nodes managed by this node obtain their
-public IP
-publicSubnetMask - if publicIPconfiguration is 'static', enter the subnet
-mask to be used when configuring the compute nodes addresses
-publicDefaultGateway - if publicIPconfiguration is 'static', enter the
-gateway to be used when configuring the compute nodes addresses
-publicDNSserver - if publicIPconfiguration is 'static', enter the DNS
-server to be used when configuring the compute nodes addresses
-sysadminEmailAddress - email address to use when sending problem reports
-sharedMailBox - email address to use for sending shadow emails of user
-emails
-NOT_STANDALONE - ??</p>
-<p><a name="DatabaseSchema-moduletable"></a></p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>IPaddress</strong> - IP of management node</li>
+<li><strong>hostname</strong> - hostname of management node</li>
+<li><strong>ownerid</strong> - reference to user.id - owner of management node</li>
+<li><strong>stateid</strong> - reference to state.id - current state of management node</li>
+<li><strong>lastcheckin</strong> - date/time of last check in by management node</li>
+<li><strong>checkininterval</strong> - how often in seconds the management node should be checking in</li>
+<li><strong>installpath</strong> - path to root of image library</li>
+<li><strong>imagelibenable</strong> - 1 to enable sharing images among management nodes, 0 otherwise</li>
+<li><strong>imagelibgroupid</strong> - reference to resourcegroup.id - resource group that contains other management nodes from which this one can get images</li>
+<li><strong>imagelibuser</strong> - user to use when fetching images from other management nodes</li>
+<li><strong>imagelibkey</strong> - ssh identity key to use when fetching images from other management nodes</li>
+<li><strong>keys</strong> - comman delimited list of ssh identity keys to use when sshing to compute nodes</li>
+<li><strong>predictivemoduleid</strong> - id of module for predicting which image to load when a reservation completes</li>
+<li><strong>sshport</strong> - ssh port to listen on</li>
+<li><strong>publicIPconfiguration</strong> - how compute nodes managed by this node obtain their public IP</li>
+<li><strong>publicSubnetMask</strong> - if publicIPconfiguration is 'static', enter the subnet mask to be used when configuring the compute nodes addresses</li>
+<li><strong>publicDefaultGateway</strong> - if publicIPconfiguration is 'static', enter the gateway to be used when configuring the compute nodes addresses</li>
+<li><strong>publicDNSserver</strong> - if publicIPconfiguration is 'static', enter the DNS server to be used when configuring the compute nodes addresses</li>
+<li><strong>sysadminEmailAddress</strong> - email address to use when sending problem reports</li>
+<li><strong>sharedMailBox</strong> - email address to use for sending shadow emails of user emails
+NOT_STANDALONE - ??</li>
+</ul>
 <h3 id="module-table">module table</h3>
-<p>This table contains information about the various perl modules that are
-part of vcld.</p>
-<p>id - id of module
-name - name of module
-prettyname - more descriptive name of module
-description - description of module
-perlpackage - string to use when including this module in perl scripts</p>
-<p><a name="DatabaseSchema-OStable"></a></p>
+<p>This table contains information about the various perl modules that are part of vcld.</p>
+<ul>
+<li><strong>id</strong> - id of module</li>
+<li><strong>name</strong> - name of module</li>
+<li><strong>prettyname</strong> - more descriptive name of module</li>
+<li><strong>description</strong> - description of module</li>
+<li><strong>perlpackage</strong> - string to use when including this module in perl scripts</li>
+</ul>
 <h3 id="os-table">OS table</h3>
 <p>This table contains information about OSes VCL knows about.</p>
-<p>id - id of entry
-name - name of entry
-prettyname - more descriptive name of OS
-type - reference to OStype.name - windows, linux, unix, etc
-installtype - reference to OSinstalltype.name - none, partimage, kickstart,
-etc
-sourcepath - ??
-moduleid - reference to module.id - module that handles this OS</p>
-<p><a name="DatabaseSchema-OSinstalltypetable"></a></p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>name</strong> - name of entry</li>
+<li><strong>prettyname</strong> - more descriptive name of OS</li>
+<li><strong>type</strong> - reference to OStype.name - windows, linux, unix, etc</li>
+<li><strong>installtype</strong> - reference to OSinstalltype.name - none, partimage, kickstart, etc</li>
+<li><strong>sourcepath</strong> - ??</li>
+<li><strong>moduleid</strong> - reference to module.id - module that handles this OS</li>
+</ul>
 <h3 id="osinstalltype-table">OSinstalltype table</h3>
 <p>This table is a list of the ways an image can be installed.</p>
-<p>id - id of entry
-name - name of entry</p>
-<p><a name="DatabaseSchema-OStypetable"></a></p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>name</strong> - name of entry</li>
+</ul>
 <h3 id="ostype-table">OStype table</h3>
-<p>This table contains a list of OS types VCL knows about - linux, unix,
-windows, etc.</p>
-<p>id - id of entry
-name - name of entry</p>
-<p><a name="DatabaseSchema-platformtable"></a></p>
+<p>This table contains a list of OS types VCL knows about - linux, unix, windows, etc.</p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>name</strong> - name of entry</li>
+</ul>
 <h3 id="platform-table">platform table</h3>
-<p>This table contains a list of platforms VCL knows about - i386, i386_lab
-(special case for lab machines), and ultrasparc.</p>
-<p>id - id of entry
-name - name of entry</p>
-<p><a name="DatabaseSchema-privnodetable"></a></p>
+<p>This table contains a list of platforms VCL knows about - i386, i386_lab (special case for lab machines), and ultrasparc.</p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>name</strong> - name of entry</li>
+</ul>
 <h3 id="privnode-table">privnode table</h3>
-<p>This table contains all of the nodes that make up the Privilege Tree on the
-Privileges page.</p>
-<p>id - id of entry
-parent - reference to privnode.id - parent of this node
-name - name of entry</p>
-<p><a name="DatabaseSchema-provisioningtable"></a></p>
+<p>This table contains all of the nodes that make up the Privilege Tree on the Privileges page.</p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>parent</strong> - reference to privnode.id - parent of this node</li>
+<li><strong>name</strong> - name of entry</li>
+</ul>
 <h3 id="provisioning-table">provisioning table</h3>
 <p>This table contains all of the provisioning modules that are part of vcld.</p>
-<p>id - id of entry
-name - name of entry
-prettyname - more descriptive name of provisioning method
-moduleid - reference to module.id - id of module that handles this
-provisioning method</p>
-<p><a name="DatabaseSchema-provisioningOSinstalltypetable"></a></p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>name</strong> - name of entry</li>
+<li><strong>prettyname</strong> - more descriptive name of provisioning method</li>
+<li><strong>moduleid</strong> - reference to module.id - id of module that handles this provisioning method</li>
+</ul>
 <h3 id="provisioningosinstalltype-table">provisioningOSinstalltype table</h3>
-<p>This table is a mapping of which provisioning methods can handle which OS
-install types.</p>
-<p>provisioningid - reference to provisioning.id
-OSinstalltypeid - reference to OSinstalltype.id</p>
-<p><a name="DatabaseSchema-querylogtable"></a></p>
+<p>This table is a mapping of which provisioning methods can handle which OS install types.</p>
+<ul>
+<li><strong>provisioningid</strong> - reference to provisioning.id</li>
+<li><strong>OSinstalltypeid</strong> - reference to OSinstalltype.id</li>
+</ul>
 <h3 id="querylog-table">querylog table</h3>
-<p>This table contains an entry for every query performed by the frontend that
-modifies the database (i.e. everything but SELECT statements).</p>
-<p>userid - reference to user.id
-timestamp - date/time of query
-mode - mode of site when query performed
-query - string of query</p>
-<p><a name="DatabaseSchema-requesttable"></a></p>
+<p>This table contains an entry for every query performed by the frontend that modifies the database (i.e. everything but SELECT statements).</p>
+<ul>
+<li><strong>userid</strong> - reference to user.id</li>
+<li><strong>timestamp</strong> - date/time of query</li>
+<li><strong>mode</strong> - mode of site when query performed</li>
+<li><strong>query</strong> - string of query</li>
+</ul>
 <h3 id="request-table">request table</h3>
-<p>This table contains information about every current or future reservation. 
-Only a single entry exists in this table for cluster reservations.</p>
-<p>id - id of entry
-stateid - reference to state.id - current state of reservation
-userid - reference to user.id
-laststateid - reference to state.id - last state of reservation
-logid - reference to log.id - log entry for reservation
-forimaging - 0 for normal reservation, 1 for imaging
-test - ??
-preload - ??
-start - date/time for start of reservation
-end - date/time for end of reservation
-daterequested - date/time reservation submitted
-datemodified - date/time reservation modified
-checkuser - flag to tell if reservation should be timed out if user is
-disconnect for &gt; 15 minutes - 0 not to do timeout, 1 to do timeout</p>
-<p><a name="DatabaseSchema-reservationtable"></a></p>
+<p>This table contains information about every current or future reservation.  Only a single entry exists in this table for cluster reservations.</p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>stateid</strong> - reference to state.id - current state of reservation</li>
+<li><strong>userid</strong> - reference to user.id</li>
+<li><strong>laststateid</strong> - reference to state.id - last state of reservation</li>
+<li><strong>logid</strong> - reference to log.id - log entry for reservation</li>
+<li><strong>forimaging</strong> - 0 for normal reservation, 1 for imaging</li>
+<li><strong>test</strong> - ??</li>
+<li><strong>preload</strong> - ??</li>
+<li><strong>start</strong> - date/time for start of reservation</li>
+<li><strong>end</strong> - date/time for end of reservation</li>
+<li><strong>daterequested</strong> - date/time reservation submitted</li>
+<li><strong>datemodified</strong> - date/time reservation modified</li>
+<li><strong>checkuser</strong> - flag to tell if reservation should be timed out if user is disconnect for &gt; 15 minutes - 0 not to do timeout, 1 to do timeout</li>
+</ul>
 <h3 id="reservation-table">reservation table</h3>
-<p>This table contains information about every current or future reservation. 
-There will be one entry in this table corresponding to each entry in the
-request table for normal reservations, and multiple entries (one for each
-node) in this one for each entry in the request table for cluster
-reservations.</p>
-<p>id - id of entry
-requestid - reference to request.id - corresponding entry in request table
-computerid - reference to computer.id - computer assigned to this
-reservation
-imageid - reference to image.id - image deployed on computer
-imagerevisionid - reference to imagerevision.id - image revision to be
-deployed on computer
-managementnodeid - reference to managementnode.id - management node
-handling this reservation
-remoteIP - IP address of user's machine
-lastcheck - date/time reservation last checked by vcld
-pw - user's password for reservation - leave empty to signify user should
-use enterprise authentication password
-connectIP - (unused)
-connectport - (unused)</p>
-<p><a name="DatabaseSchema-reservationaccountstable"></a></p>
+<p>This table contains information about every current or future reservation.  There will be one entry in this table corresponding to each entry in the request table for normal reservations, and multiple entries (one for each node) in this one for each entry in the request table for cluster reservations.</p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>requestid</strong> - reference to request.id - corresponding entry in request table</li>
+<li><strong>computerid</strong> - reference to computer.id - computer assigned to this reservation</li>
+<li><strong>imageid</strong> - reference to image.id - image deployed on computer</li>
+<li><strong>imagerevisionid</strong> - reference to imagerevision.id - image revision to be deployed on computer</li>
+<li><strong>managementnodeid</strong> - reference to managementnode.id - management node handling this reservation</li>
+<li><strong>remoteIP</strong> - IP address of user's machine</li>
+<li><strong>lastcheck</strong> - date/time reservation last checked by vcld</li>
+<li><strong>pw</strong> - user's password for reservation - leave empty to signify user should use enterprise authentication password</li>
+<li><strong>connectIP</strong> - (unused)</li>
+<li><strong>connectport</strong> - (unused)</li>
+</ul>
 <h3 id="reservationaccounts-table">reservationaccounts table</h3>
-<p>This table contains userids and passwords for additional accounts for
-server reservations.  There is not an entry for the owner of the
-reservation.  These correspond to the admin and login user groups.</p>
-<p>reservationid - reference to reservation.id
-userid - reference to user.id
-password - user's password for this reservation</p>
-<p><a name="DatabaseSchema-resourcetable"></a></p>
+<p>This table contains userids and passwords for additional accounts for server reservations.  There is not an entry for the owner of the reservation.  These correspond to the admin and login user groups.</p>
+<ul>
+<li><strong>reservationid</strong> - reference to reservation.id</li>
+<li><strong>userid</strong> - reference to user.id</li>
+<li><strong>password</strong> - user's password for this reservation</li>
+</ul>
 <h3 id="resource-table">resource table</h3>
-<p>This table contains an entry for every resource VCL knows about.  Every
-resource has a unique id from this table, and a sub id from a resource
-specific table (computer, image, management node, etc).</p>
-<p>id - id of entry
-resourcetypeid - reference to resourcetype.id - type of this resource
-subid - reference to id from specific resource table (computer.id,
-image.id, managementnode.id, etc)</p>
-<p><a name="DatabaseSchema-resourcegrouptable"></a></p>
+<p>This table contains an entry for every resource VCL knows about.  Every resource has a unique id from this table, and a sub id from a resource specific table (computer, image, management node, etc).</p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>resourcetypeid</strong> - reference to resourcetype.id - type of this resource</li>
+<li><strong>subid</strong> - reference to id from specific resource table (computer.id, image.id, managementnode.id, etc)</li>
+</ul>
 <h3 id="resourcegroup-table">resourcegroup table</h3>
 <p>This table contains all of the resource groups.</p>
-<p>id - id of entry
-name - name of entry
-ownerusergroupid - reference to usergroup.id - user group that owns this
-resource group
-resourcetypeid - reference to resourcetype.id - type of this resource group</p>
-<p><a name="DatabaseSchema-resourcegroupmemberstable"></a></p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>name</strong> - name of entry</li>
+<li><strong>ownerusergroupid</strong> - reference to usergroup.id - user group that owns this resource group</li>
+<li><strong>resourcetypeid</strong> - reference to resourcetype.id - type of this resource group</li>
+</ul>
 <h3 id="resourcegroupmembers-table">resourcegroupmembers table</h3>
 <p>This table contains a list of which resources are in which resource groups.</p>
-<p>resourceid - reference to resource.id
-resourcegroupid - reference to resourcegroup.id</p>
-<p><a name="DatabaseSchema-resourcemaptable"></a></p>
+<ul>
+<li><strong>resourceid</strong> - reference to resource.id</li>
+<li><strong>resourcegroupid</strong> - reference to resourcegroup.id</li>
+</ul>
 <h3 id="resourcemap-table">resourcemap table</h3>
 <p>This table contains which resource groups map to other resource groups.</p>
 <p>resourcegroupid1 - reference to resourcegroup.id
 resourcetypeid1 - reference to resourcetype.id
 resourcegroupid2 - reference to resourcegroup.id
 resourcetypeid2 - reference to resourcetype.id</p>
-<p><a name="DatabaseSchema-resourceprivtable"></a></p>
 <h3 id="resourcepriv-table">resourcepriv table</h3>
 <p>This table contains the attributes that can be granted to resource groups.</p>
-<p>id - id of entry
-resourcegroupid - reference to resourcegroup.id - resource group being
-assigned attribute
-privnodeid - reference to privnode.id - node where attribute being assigned
-type - block, cascade, available, administer, manageGroup, or manageMapping
-- attribute being assigned at node</p>
-<p><a name="DatabaseSchema-resourcetypetable"></a></p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>resourcegroupid</strong> - reference to resourcegroup.id - resource group being assigned attribute</li>
+<li><strong>privnodeid</strong> - reference to privnode.id - node where attribute being assigned</li>
+<li><strong>type</strong> - block, cascade, available, administer, manageGroup, or manageMapping - attribute being assigned at node</li>
+</ul>
 <h3 id="resourcetype-table">resourcetype table</h3>
 <p>This table contains a list of all the resource types.</p>
-<p>id - id of entry
-name - name of entry</p>
-<p><a name="DatabaseSchema-scheduletable"></a></p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>name</strong> - name of entry</li>
+</ul>
 <h3 id="schedule-table">schedule table</h3>
 <p>This table contains all of the schedules available.</p>
-<p>id - id of entry
-name - name of entry
-ownerid - reference to user.id - owner of schedule</p>
-<p><a name="DatabaseSchema-scheduletimestable"></a></p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>name</strong> - name of entry</li>
+<li><strong>ownerid</strong> - reference to user.id - owner of schedule</li>
+</ul>
 <h3 id="scheduletimes-table">scheduletimes table</h3>
-<p>This table contains all of the starts/ends of the time slots for each
-schedule.  Schedules are what times during a week that computers are
-available.  They run from midnight Sunday morning (0) to midnight Sunday
-morning one week later (10080).</p>
-<p>scheduleid - reference to schedule.id
-start - start of time slot in minutes since midnight Sunday morning
-end - end of time slot in minutes since midnight Sunday morning</p>
-<p><a name="DatabaseSchema-serverprofiletable"></a></p>
+<p>This table contains all of the starts/ends of the time slots for each schedule.  Schedules are what times during a week that computers are available.  They run from midnight Sunday morning (0) to midnight Sunday morning one week later (10080).</p>
+<ul>
+<li><strong>scheduleid</strong> - reference to schedule.id</li>
+<li><strong>start</strong> - start of time slot in minutes since midnight Sunday morning</li>
+<li><strong>end</strong> - end of time slot in minutes since midnight Sunday morning</li>
+</ul>
 <h3 id="serverprofile-table">serverprofile table</h3>
 <p>This table contains all of the server profiles.</p>
-<p>id - id of entry
-name - name of entry
-description - info about profile
-imageid - reference to image.id
-ownerid - reference to user.id - owner of this profile
-ending - specified or indefinite - how reservations for this profile will
-typically end
-fixedIP - IP address reservations for this profile will typically use
-fixedMAC - MAC address reservations for this profile will typically use
-admingroupid - reference to usergroup.id
-logingroupid - reference to usergroup.id
-monitored - </p>
-<p><a name="DatabaseSchema-serverrequesttable"></a></p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>name</strong> - name of entry</li>
+<li><strong>description</strong> - info about profile</li>
+<li><strong>imageid</strong> - reference to image.id</li>
+<li><strong>ownerid</strong> - reference to user.id - owner of this profile</li>
+<li><strong>ending</strong> - specified or indefinite - how reservations for this profile will typically end</li>
+<li><strong>fixedIP</strong> - IP address reservations for this profile will typically use</li>
+<li><strong>fixedMAC</strong> - MAC address reservations for this profile will typically use</li>
+<li><strong>admingroupid</strong> - reference to usergroup.id</li>
+<li><strong>logingroupid</strong> - reference to usergroup.id</li>
+<li><strong>monitored</strong> - </li>
+</ul>
 <h3 id="serverrequest-table">serverrequest table</h3>
 <p>This table contains an entry for each server reservation.</p>
-<p>id - id of entry
-serverprofileid - reference to serverprofile.id - 0 if no profile used or
-too many items changed from profile
-requestid - reference to request.id - main request entry associated with
-this server reservation
-fixedIP - IP address to use on deployed machine
-fixedMAC - MAC address to use on deployed machine
-admingroupid - reference to usergroup.id - user group containing users that
-should be able to control this reservation and have admin access to the
-machine
-logingroupid - reference to usergroup.id - user group containing users that
-should be only be able to log in to this machine (will see reservation, but
-only the Connect button)
-monitored - 1 to have this reservation monitored, 0 otherwise</p>
-<p><a name="DatabaseSchema-shibauthtable"></a></p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>serverprofileid</strong> - reference to serverprofile.id - 0 if no profile used or too many items changed from profile</li>
+<li><strong>requestid</strong> - reference to request.id - main request entry associated with this server reservation</li>
+<li><strong>fixedIP</strong> - IP address to use on deployed machine</li>
+<li><strong>fixedMAC</strong> - MAC address to use on deployed machine</li>
+<li><strong>admingroupid</strong> - reference to usergroup.id - user group containing users that should be able to control this reservation and have admin access to the machine</li>
+<li><strong>logingroupid</strong> - reference to usergroup.id - user group containing users that should be only be able to log in to this machine (will see reservation, but only the Connect button)</li>
+<li><strong>monitored</strong> - 1 to have this reservation monitored, 0 otherwise</li>
+</ul>
 <h3 id="shibauth-table">shibauth table</h3>
-<p>This table contains authentication information related to shibboleth
-logins.</p>
-<p>id - id of entry
-userid - reference to user.id - user entry associated with
-ts - date/time entry was inserted
-sessid - shib session id
-data - various shibboleth related data passed in from httpd</p>
-<p><a name="DatabaseSchema-sitemaintenancetable"></a></p>
+<p>This table contains authentication information related to shibboleth logins.</p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>userid</strong> - reference to user.id - user entry associated with</li>
+<li><strong>ts</strong> - date/time entry was inserted</li>
+<li><strong>sessid</strong> - shib session id</li>
+<li><strong>data</strong> - various shibboleth related data passed in from httpd</li>
+</ul>
 <h3 id="sitemaintenance-table">sitemaintenance table</h3>
-<p>This table contains an entry for any active or upcoming scheduled site
-maintenance windows.</p>
-<p>id - id of entry
-start - date/time for start of maintenance window
-end - date/time for end of maintenance window
-ownerid - reference to user.id - owner of this entry
-created - date/time entry created
-reason - info about why maintenance is scheduled
-usermessage - message that will be displayed to users about the maintenance
-informhoursahead - hours before the start time that a warning should be
-displayed on the VCL site about upcoming maintenance
-allowreservations - 1 to allow reservations to be scheduled ahead of time
-that overlap with the window, 0 to keep overlapping future reservations
-from being scheduled</p>
-<p><a name="DatabaseSchema-statetable"></a></p>
+<p>This table contains an entry for any active or upcoming scheduled site maintenance windows.</p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>start</strong> - date/time for start of maintenance window</li>
+<li><strong>end</strong> - date/time for end of maintenance window</li>
+<li><strong>ownerid</strong> - reference to user.id - owner of this entry</li>
+<li><strong>created</strong> - date/time entry created</li>
+<li><strong>reason</strong> - info about why maintenance is scheduled</li>
+<li><strong>usermessage</strong> - message that will be displayed to users about the maintenance</li>
+<li><strong>informhoursahead</strong> - hours before the start time that a warning should be displayed on the VCL site about upcoming maintenance</li>
+<li><strong>allowreservations</strong> - 1 to allow reservations to be scheduled ahead of time that overlap with the window, 0 to keep overlapping future reservations from being scheduled</li>
+</ul>
 <h3 id="state-table">state table</h3>
-<p>This table contains all of the states used in VCL.  Not all states are used
-any place where states are used.  For example, there are states used in the
-request table that are not used in the computer table.</p>
-<p>id - id of entry
-name - name of entry</p>
-<p><a name="DatabaseSchema-statgraphcachetable"></a></p>
+<p>This table contains all of the states used in VCL.  Not all states are used any place where states are used.  For example, there are states used in the request table that are not used in the computer table.</p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>name</strong> - name of entry</li>
+</ul>
 <h3 id="statgraphcache-table">statgraphcache table</h3>
-<p>This table contains cached values for the stat graphs.  Some of the data
-points take enough computation time that it is prohibitive to calculate
-them for really long periods of time.  This table allows historical points
-to computed once and then saved forever.</p>
-<p>graphtype - totalres, concurres, concurblade, or concurvm - type of graph
-for this entry
-statdate - date for this entry
-affiliationid - affiliation for this entry
-value - data point value for this entry</p>
-<p><a name="DatabaseSchema-subimagestable"></a></p>
+<p>This table contains cached values for the stat graphs.  Some of the data points take enough computation time that it is prohibitive to calculate them for really long periods of time.  This table allows historical points to computed once and then saved forever.</p>
+<ul>
+<li><strong>graphtype</strong> - totalres, concurres, concurblade, or concurvm - type of graph for this entry</li>
+<li><strong>statdate</strong> - date for this entry</li>
+<li><strong>affiliationid</strong> - affiliation for this entry</li>
+<li><strong>value</strong> - data point value for this entry</li>
+</ul>
 <h3 id="subimages-table">subimages table</h3>
 <p>This table contains a list of sub images associated with any clusters.</p>
-<p>imagemetaid - reference to imagemeta.id
-imageid - reference to image.id - subimage associated with imagemetaid</p>
-<p><a name="DatabaseSchema-sublogtable"></a></p>
+<ul>
+<li><strong>imagemetaid</strong> - reference to imagemeta.id</li>
+<li><strong>imageid</strong> - reference to image.id - subimage associated with imagemetaid</li>
+</ul>
 <h3 id="sublog-table">sublog table</h3>
-<p>This table contains an entry for each computer that was part of a log table
-entry.  For normal reservations, this is a single entry; for cluster
-reservations, it is one entry for each subimage.</p>
-<p>logid - reference to log.id - corresponding entry in log table
-imageid - reference to image.id - image deployed for this reservation
-imagerevisionid - reference to imagerevision.id - image revision deployed
-for this reservation
-computerid - reference to computer.id - computer deployed for this
-reservation
-IPaddress - IP address of computer during this deploy
-managementnodeid - reference to managementnode.id - management node that
-handled this deploy
-predictivemoduleid - reference to module.id - prediction module used to
-load image when this reservation finished ??
-hostcomputerid - reference to computer.id - for VMs, this was the host the
-VM was deployed to</p>
-<p><a name="DatabaseSchema-usertable"></a></p>
+<p>This table contains an entry for each computer that was part of a log table entry.  For normal reservations, this is a single entry; for cluster reservations, it is one entry for each subimage.</p>
+<ul>
+<li><strong>logid</strong> - reference to log.id - corresponding entry in log table</li>
+<li><strong>imageid</strong> - reference to image.id - image deployed for this reservation</li>
+<li><strong>imagerevisionid</strong> - reference to imagerevision.id - image revision deployed for this reservation</li>
+<li><strong>computerid</strong> - reference to computer.id - computer deployed for this reservation</li>
+<li><strong>IPaddress</strong> - IP address of computer during this deploy</li>
+<li><strong>managementnodeid</strong> - reference to managementnode.id - management node that handled this deploy</li>
+<li><strong>predictivemoduleid</strong> - reference to module.id - prediction module used to load image when this reservation finished ??</li>
+<li><strong>hostcomputerid</strong> - reference to computer.id - for VMs, this was the host the VM was deployed to</li>
+</ul>
 <h3 id="user-table">user table</h3>
-<p>This table contains an entry for every user that has every logged in to
-VCL.</p>
-<p>id - id of entry
-uid - numeric id of user for accounts on deployed reservations
-unityid - normal user id for user
-affiliationid - reference to affiliation.id - affiliation of user
-firstname - first name of user
-lastname - last name of user
-preferredname - preferred name of user
-email - email address of user
-emailnotices - 1 to get email notices, 0 otherwise
-IMtypeid - reference to IMtype.id - type of IM address in IMid
-IMid - IM account for user
-adminlevelid - reference to adminlevel.id - deprecated
-width - screen width for RDP files
-height - screen height for RDP files
-bpp - color depth for RDP files
-audiomode - audio mode for RDP files
-mapdrives - drive mapping status for RDP files
-mapprinters - printer mapping status for RDP files
-mapserial - serial mapping status for RDP files
-showallgroups - 1 to show user groups from all affiliations where user
-groups can be selected, 0 to only show user groups matching user's
-affiliation
-lastupdated - date/time user's info was last updated</p>
-<p><a name="DatabaseSchema-usergrouptable"></a></p>
+<p>This table contains an entry for every user that has every logged in to VCL.</p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>uid</strong> - numeric id of user for accounts on deployed reservations</li>
+<li><strong>unityid</strong> - normal user id for user</li>
+<li><strong>affiliationid</strong> - reference to affiliation.id - affiliation of user</li>
+<li><strong>firstname</strong> - first name of user</li>
+<li><strong>lastname</strong> - last name of user</li>
+<li><strong>preferredname</strong> - preferred name of user</li>
+<li><strong>email</strong> - email address of user</li>
+<li><strong>emailnotices</strong> - 1 to get email notices, 0 otherwise</li>
+<li><strong>IMtypeid</strong> - reference to IMtype.id - type of IM address in IMid</li>
+<li><strong>IMid</strong> - IM account for user</li>
+<li><strong>adminlevelid</strong> - reference to adminlevel.id - deprecated</li>
+<li><strong>width</strong> - screen width for RDP files</li>
+<li><strong>height</strong> - screen height for RDP files</li>
+<li><strong>bpp</strong> - color depth for RDP files</li>
+<li><strong>audiomode</strong> - audio mode for RDP files</li>
+<li><strong>mapdrives</strong> - drive mapping status for RDP files</li>
+<li><strong>mapprinters</strong> - printer mapping status for RDP files</li>
+<li><strong>mapserial</strong> - serial mapping status for RDP files</li>
+<li><strong>showallgroups</strong> - 1 to show user groups from all affiliations where user groups can be selected, 0 to only show user groups matching user's affiliation</li>
+<li><strong>lastupdated</strong> - date/time user's info was last updated</li>
+</ul>
 <h3 id="usergroup-table">usergroup table</h3>
 <p>This table contains all of the user groups.</p>
-<p>id - id of entry
-name - name of entry
-affiliationid - reference to affiliation.id - affiliation of user group
-ownerid - reference to user.id - owner of user group
-editusergroupid - reference to usergroup.id - user group that can edit
-membership of this one
-custom - 1 for groups created on user groups page, 0 otherwise
-courseroll - 1 for user group created by courseroll scripts, 0 otherwise
-initialmaxtime - max time allowed for initial reservation creation for user
-group
-totalmaxtime - total time allowed for reservations created by users in this
-group
-maxextendtime - max time allowed per extension for users in this group
-overlapResCount - number of allowed overlapping reservations for users in
-this group (note that 1 is invalid as it doesn't make sense)</p>
-<p><a name="DatabaseSchema-usergroupmemberstable"></a></p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>name</strong> - name of entry</li>
+<li><strong>affiliationid</strong> - reference to affiliation.id - affiliation of user group</li>
+<li><strong>ownerid</strong> - reference to user.id - owner of user group</li>
+<li><strong>editusergroupid</strong> - reference to usergroup.id - user group that can edit membership of this one</li>
+<li><strong>custom</strong> - 1 for groups created on user groups page, 0 otherwise</li>
+<li><strong>courseroll</strong> - 1 for user group created by courseroll scripts, 0 otherwise</li>
+<li><strong>initialmaxtime</strong> - max time allowed for initial reservation creation for user group</li>
+<li><strong>totalmaxtime</strong> - total time allowed for reservations created by users in this group</li>
+<li><strong>maxextendtime</strong> - max time allowed per extension for users in this group</li>
+<li><strong>overlapResCount</strong> - number of allowed overlapping reservations for users in this group (note that 1 is invalid as it doesn't make sense)</li>
+</ul>
 <h3 id="usergroupmembers-table">usergroupmembers table</h3>
 <p>This table tracks which users are members of which user groups.</p>
-<p>userid - reference to user.id
-usergroupid - reference to usergroup.id</p>
-<p><a name="DatabaseSchema-usergroupprivtable"></a></p>
+<ul>
+<li><strong>userid</strong> - reference to user.id</li>
+<li><strong>usergroupid</strong> - reference to usergroup.id</li>
+</ul>
 <h3 id="usergrouppriv-table">usergrouppriv table</h3>
-<p>This table is a list of which additional user group privileges have been
-assigned to which user groups.</p>
-<p>usergroupid - reference to usergroup.id
-userprivtypeid - reference to usergroupprivtype.id - it probably should
-have been named usergroupprivtypeid</p>
-<p><a name="DatabaseSchema-usergroupprivtypetable"></a></p>
+<p>This table is a list of which additional user group privileges have been assigned to which user groups.</p>
+<ul>
+<li><strong>usergroupid</strong> - reference to usergroup.id</li>
+<li><strong>userprivtypeid</strong> - reference to usergroupprivtype.id - it probably should have been named usergroupprivtypeid</li>
+</ul>
 <h3 id="usergroupprivtype-table">usergroupprivtype table</h3>
-<p>This table contains additional privileges that can be associated with user
-groups that don't make sense to have at any particular privilege node.</p>
-<p>id - id of entry
-name - name of entry
-help - explaination of privilege type</p>
-<p><a name="DatabaseSchema-userprivtable"></a></p>
+<p>This table contains additional privileges that can be associated with user groups that don't make sense to have at any particular privilege node.</p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>name</strong> - name of entry</li>
+<li><strong>help</strong> - explaination of privilege type</li>
+</ul>
 <h3 id="userpriv-table">userpriv table</h3>
-<p>This table contains the user and user group privileges assigned in the
-privilege tree.</p>
-<p>id - id of entry
-userid - reference to user.id
-usergroupid - reference to usergroup.id
-privnodeid - reference to privnode.id - node where user privilege being
-granted
-userprivtypeid - reference to userprivtype.id - user privilege being
-granted</p>
-<p><a name="DatabaseSchema-userprivtypetable"></a></p>
+<p>This table contains the user and user group privileges assigned in the privilege tree.</p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>userid</strong> - reference to user.id</li>
+<li><strong>usergroupid</strong> - reference to usergroup.id</li>
+<li><strong>privnodeid</strong> - reference to privnode.id - node where user privilege being granted</li>
+<li><strong>userprivtypeid</strong> - reference to userprivtype.id - user privilege being granted</li>
+</ul>
 <h3 id="userprivtype-table">userprivtype table</h3>
 <p>This table contains all of the available user privileges.</p>
-<p>id - id of entry
-name - name of entry</p>
-<p><a name="DatabaseSchema-variabletable"></a></p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>name</strong> - name of entry</li>
+</ul>
 <h3 id="variable-table">variable table</h3>
-<p>This table is a place to store any generic data.  It can be settings that
-stay around forever, or things that only need to be temporarily stored.  It
-also provides for a place for the frontend and backend to share less
-structured information that what is in other tables.</p>
-<p>id - id of entry
-name - name of entry
-serialization - serialization method used for storing data
-value - data stored
-setby - what set the entry - perl module, web code, etc
-timestamp - date/time entry set</p>
-<p><a name="DatabaseSchema-vmhosttable"></a></p>
+<p>This table is a place to store any generic data.  It can be settings that stay around forever, or things that only need to be temporarily stored.  It also provides for a place for the frontend and backend to share less structured information that what is in other tables.</p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>name</strong> - name of entry</li>
+<li><strong>serialization</strong> - serialization method used for storing data</li>
+<li><strong>value</strong> - data stored</li>
+<li><strong>setby</strong> - what set the entry - perl module, web code, etc</li>
+<li><strong>timestamp</strong> - date/time entry set</li>
+</ul>
 <h3 id="vmhost-table">vmhost table</h3>
 <p>This table contains an entry for each virtual host.</p>
-<p>id - id of entry
-computerid - reference to computer.id - physical machine entry refers to
-vmlimit - max number of VMs that can be on this host
-vmprofileid - reference to vmprofile.id - profile being used on this host
-vmkernalnic - ??
-vmwaredisk - localdisk or networkdisk - ??</p>
-<p><a name="DatabaseSchema-vmprofiletable"></a></p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>computerid</strong> - reference to computer.id - physical machine entry refers to</li>
+<li><strong>vmlimit</strong> - max number of VMs that can be on this host</li>
+<li><strong>vmprofileid</strong> - reference to vmprofile.id - profile being used on this host</li>
+<li><strong>vmkernalnic</strong> - ??</li>
+<li><strong>vmwaredisk</strong> - localdisk or networkdisk - ??</li>
+</ul>
 <h3 id="vmprofile-table">vmprofile table</h3>
 <p>This table contains an entry for each virtual host profile.</p>
-<p>id - id of entry
-profilename - name of the profile
-vmtypeid - reference to vmtype.id - hypervisor type of this profile
-imageid - reference to image.id - image deployed on host
-repositorypath - ??
-datastorepath - ??
-virtualdiskpath - ??
-vmpath - ??
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>profilename</strong> - name of the profile</li>
+<li><strong>vmtypeid</strong> - reference to vmtype.id - hypervisor type of this profile</li>
+<li><strong>imageid</strong> - reference to image.id - image deployed on host</li>
+<li><strong>repositorypath</strong> - ??</li>
+<li><strong>datastorepath</strong> - ??</li>
+<li><strong>virtualdiskpath</strong> - ??</li>
+<li><strong>vmpath</strong> - ??
 virtualswitch0 - name of virtual switch0
 virtualswitch1 - name of virtual switch1
-virtualswitch2 - name of virtual switch2
-virtualswitch3 - name of virtual switch3
-vmdisk - localdist or networkdisk - ??
-username - username to use when accessing hosts with this profile
-password - password to use when accessing hosts with this profile
-vmware_mac_eth0_generated - 1 to generate eth0 MAC for VMs on hosts with
-this profile, 0 to use MAC from computer table
-vmware_mac_eth1_generated - 1 to generate eth1 MAC for VMs on hosts with
-this profile, 0 to use MAC from computer table</p>
-<p><a name="DatabaseSchema-vmtypetable"></a></p>
+virtualswitch2 - name of virtual switch2</li>
+</ul>
 <h3 id="vmtype-table">vmtype table</h3>
 <p>This table contains all of the virtual machine types.</p>
-<p>id - id of entry
-name - name of entry</p>
-<p><a name="DatabaseSchema-winKMStable"></a></p>
+<ul>
+<li><strong>id</strong> - id of entry</li>
+<li><strong>name</strong> - name of entry</li>
+</ul>
 <h3 id="winkms-table">winKMS table</h3>
 <p>This table contains Windows KMS licensing information.</p>
-<p>affiliationid - reference to affiliation.id
-address - IP address of KMS server
-port - port KMS server is listening on</p>
-<p><a name="DatabaseSchema-winProductKeytable"></a></p>
+<ul>
+<li><strong>affiliationid</strong> - reference to affiliation.id</li>
+<li><strong>address</strong> - IP address of KMS server</li>
+<li><strong>port</strong> - port KMS server is listening on</li>
+</ul>
 <h3 id="winproductkey-table">winProductKey table</h3>
 <p>This table contains Windows product key information.</p>
-<p>affiliationid - reference to affiliation.id
-productname - ??
-productkey - ??</p>
-<p><a name="DatabaseSchema-xmlrpcLogtable"></a></p>
+<ul>
+<li><strong>affiliationid</strong> - reference to affiliation.id</li>
+<li><strong>productname</strong> - ??</li>
+<li><strong>productkey</strong> - ??</li>
+</ul>
 <h3 id="xmlrpclog-table">xmlrpcLog table</h3>
 <p>This table logs each XML RPC API call.</p>
-<p>xmlrpcKeyid - reference to user.id - user that made API call (originally,

[... 18 lines stripped ...]