Data dictionary for List Management Schema - IntegratedBreedingPlatform/Documentation GitHub Wiki

Introduction

An essential part of the GMS is maintaining lists of germplasm descriptors for breeding, evaluation, or any other purposes. Examples of germplasm lists are parent lists, cross lists, pedigree nursery lists, and yield trial entry lists. List entries are selected either from existing lists or directly from the GMS. New germplasm generated by list processes are stored in GMS. Two tables are included in an installation to manage lists: LISTNMS and LISTDATA. List entries are uniquely identified by USERID and ListRecordID.

listnms Table

Lists are differentiated from one another by a LISTID and a user-assigned list_name (LISTNAME). Each list can refer to a parent list in the hierarchy. Although there is no specified convention for naming lists, it is suggested that users develop conventions that will allow them to easily recognize a list’s contents. When a newly generated list is saved, the GMS assigns a unique identification number to a list (LISTID).

Columns - Long Name (Name) Description Type Length (bytes)
LIST_ID (LISTID) The unique ID for each list generated Integer 4
LIST_NAME (LISTNAME) Corresponding name of list Text 50
LIST_DATE (LISTDATE) Date list was created Integer 4
LIST_TYPE (LISTTYPE) Type of list; links to LISTYPE and FCODE in the UDFLDS table Text 10
LIST_USER_ID (LISTUID) ID of user owning the list Integer 2
LIST_DESCRIPTION (LISTDESC) Title or description of the list Text 255
LIST_HIERARCHY (LHIERARCHY) ID of the parent list folder Integer 4
LIST_STATUS (LSTATUS) Status of list or folder: 0=Folder, 1=Open List, 1x = hidden, 1xx = locked, 1xxx= final, 9= Deleted Integer 4
SDATE Integer 4
EDATE Integer 4
LISTLOCN Integer 4
LISTREF Integer 4
PROJECTID Integer 4
PROGRAM_UUID Text 36
NOTES Notes! Text Variable

There are six fields in the LISTNMS table for which the user must enter values: list_name, list_date, list_type, list_description, list_hierarchy and list_status. The list_type (LISTTYPE) field describes the purpose of a list. Users can define List_types by setting constants in the UDFLDS table. The list_description (LISTDESC) contains a title or short description of the contents and purpose of a list. The List_status field contains integer codes which can have four digits WXYZ where:

  • Z - flag for either a folder(0) or a list(1)
  • Y - flag for hide(1) or unhide(0)
  • X - flag for Lock(1) or unlock(0)
  • W - flag for Final(1) or not Final(0)

Thus, a row in LISTNMS can represent either a list or a folder. A Folder, can contain another folder(subfolder) or a List, but no ListData Entries. A List can only contain ListData entries. Locking/unlocking and finalizing a list are done recursively to its subfolders and lists. For example if folder PARENT has subfolders SUBF1, SUBF2, and list LST1, and hidden list LST2 and if PARENT is locked (liststatus = 100) then SUBF1, SUBF2 will also have liststatus = 100, LST1 will have liststatus = 101 and LST2 will have liststatus = 111

listdata Table

A list consists of germplasm entries, which are stored in the table, (LISTDATA). Each record in LISTDATA pertains to an entry within a list. ENTRYID is a positive integer which must be unique within each LISTID. The SOURCE column may be used to store a code to indicate where the planting materials came from. This is often the plot id from a previous season, or an accession or stock number. The DESIG column is used to store the name the user wants printed in a fieldbook, not necessarily a variety’s preferred name. The GRPName field usually stores a cross history for the entry. The ENTRYCD, SOURCE, DESIG and GRPNAME columns may be used for other purposes and any of these may also be blank, if the user so desires. Lists often contain entries for unspecified germplasm such as local checks and/or textlines. Textline is an entry used for a comment or for any other purpose it may serve the user. These type of entries, checks and textlines, have zero in the GID field.

Columns - Long Name (Name) Description Type Length (bytes)
LIST_ID (LISTID) ID of the list to which the entry belongs (links to the LISTNMS Table) Integer 4
GERMPLASM_ID (GID) GID of germplasm entry. Integer 4
ENTRY_ID (ENTRYID) Sort order for entries in a list Integer 4
ENTRY_CODE (ENTRYCD_BKP) Entry no. or plot in a nursery identifying an entry. UNUSED Text 47
SEED SOURCE (SOURCE) Seed source of germplasm entry Text 255
GROUP_NAME(GRPNAME) Germplasm cross history Text 5000
LIST_RECORD_ID (LRECID) Record ID within the list Integer 4
LIST_RECORD_STATUS (LRSTATUS) Status of the entry: 0 = active, 9 = deleted Integer 4
LOCAL_LIST_RECORD_ID (LLRECID) Local List ID. Legacy. Unused. Integer 4

listdataprops Table

Name/value pair style properties associated with each list data row.

Columns Name Description Type Length (bytes)
listdataprop_id Primary key. DB Record id. Integer 4
listdata_id Foreign key to the listdata table. Integer 4
column_name Name of the property. Text 50
value Value of the property. Text 255

list_data_view Table

Table for storing added columns and entry details variables of a list

Columns Description Type Length (bytes)
id Primary key. DB record id Integer 4
listid Foreign key to the listnms table. Integer 4
static_id Static ID of added columns Integer 4
name_fldno ID that references fldno in udflds table Integer 4
cvterm_id Foreign key to the cvterm table Integer 4
type_id Foreign key to the cvterm table Integer 4

list_data_details Table

Table to store Entry detail with each list data row

Columns Description Type Length (bytes)
id Primary key. DB record id Integer 4
variable_id Foreign key to the cvterm table. Integer 4
lrecid Foreign key to the listdata table. Integer 4
value Value of the entry detail variable Text 255
cvalue_id Foreign key to the cvterm table. Integer 4
created_by ID of user who created the entry detail Integer 4
modified_by ID of user who modified the entry detail Integer 4
created_date Date and time created Timestamp
modified_date Date and time modified Timestamp