Fields are shown under each table. Comments about future
changes or unresolved design issues are shown in contrasting color.
Version specific features are noted by highlighted text.
- tblKeyGroups, group of one or more taxa that can be separated
by using a key block (only one row in table per group)
- GroupID, integer, 2 bytes, identifier for group
- TaxonNameID, integer, 4 bytes, = tblTaxa.TaxonNameID, identifier for taxon that
group is based upon.
- CompCode, integer, 1 byte, component code:
- 1 = group matches this taxon
- 2 = group includes only the taxa enumerated in tblGroupTaxa (all subordinate to the taxon identified by TaxonNameID)
- 3 = group includes all the taxa subordinate to the taxon identified by TaxonNameID except those listed tblGroupTaxa.
- OtherInfo, string, 200 bytes, qualifying information for the group (may be null
string)
- AccessCode, integer, 2 bytes
- Status, integer, 1 byte, 0 = clear, 1 = impaired. Deleted in version 3.4.
- LastUpdate, smalldatetime, date and time of last update
- ModifiedBy, integer, 2 bytes, UserID of the signon that made the change
- ImpairedFlags, integer, 1 byte interpreted bitwise, reasons for impairment (taxonomist
review needed to check if revision of related key blocks is needed). Bit values:
- Flags under editor control
- 1 = An editor marked it as under development.
- 2 = An editor marked it as needing more work.
- 4 = A new member was added to the group.
- 8 = A member was removed from the group.
- Flags under program control
- 16 = Encompassing taxon is at higher rank than necessary.
- 32 = Component is not subordinate to encompassing member.
- 64 = A listed taxon is not a valid or temporary name.
- 128 = Count of components is inconsistent with CompCode.
- 256 = There is no taxon left in group after the list of exclusions.
- 512 = Included component list matches content of encompassing taxon.
- 1024 = A listed component is the same as or subordinate to another listed
component.
- tblGroupTaxa, subordinate to tblKeyGroups, enumeration of
TaxonNameIDs by GroupID (tblKeyGroups.GroupID). If GroupID = n, then taxon
member of group n
- GroupID, 2 bytes, group identifier of which this taxon is a member
- TaxonNameID, 4 bytes, = tblTaxon.TaxonNameID, taxon included or excluded as specified by
tblKeyGroups.CompCode
- LastUpdate, smalldatetime, date and time of last update
- ModifiedBy, integer, 2 bytes, UserID of the signon that made the change
- tblKeyBlocks, decision blocks for working through keys.
Note: There may be multiple blocks for the same group. This can happen
depending on geographic scope, or there may be different ways to split the group
depending on what characters are available.
- BlockID, integer, 2 bytes, identifier for key block
- BlockType, integer, 1 byte
- 1 = dichotomous block (multiple characters, 2 branches); BranchID = 1 or 2; CharID
ranges from 0 to 127
- 4 = matrix (multiple characters, multiple branches); BranchID ranges from 1 to
127; CharID ranges from 0 to 127
- SGroupID, integer, 2 bytes, = tblKeyGroups.GroupID "Stem" group ID for this block
- AccessCode, integer, 2 bytes
- Status, integer, 1 byte, 0 = clear, 1=impaired, 2=under development.
Deleted in version 3.4.
- SourceID, integer, 2 bytes, = tblSources.SourceID
- EditingNote, text, 100 characters maximum, information useful to the person adding
or editing the key
- LastUpdate, smalldatetime, date and time of last update
- ModifiedBy, integer, 2 bytes, UserID of the signon that made the change
- ImpairedFlags, integer, 1 byte interpreted bitwise, reasons for impairment (taxonomist
review needed to check if revision is needed). Bit values:
- 1 = A branch lacks a specified group.
- 2 = An editor marked it as needing more work.
- 4 = One or more related groups is impaired. Related groups include tblKeyBlocks.SGroupID and tblKeyBlockBranches.GroupID where tbkeyBlockBranches.BlockID = tblKeyBlocks.BlockID.
- 8 = An editor marked it as under development.
- 16 = Characters are not fully specified.
- 32 = One or more taxa in a branch group not contained in the stem group.
- PublicNote, text, 300 characters maximum, public note to be shown by key drivers.
Added in version 3.4.
- tblKeyChars, pool of characters available for use in blocks
- CharID, integer, 2 bytes
- Title, 200 characters maximum, identifying phrase for the character. (Do
not confuse this with the character header used for blocks. The header is
found in tblCharStateDetails where CharStateID is found in tblBlockCharStates
where CharStateIndex = 126.)
- CharTypeID, integer, 1 byte, = tblCharTypes.CharTypeID, identifier for type of character
future development
- Priority, integer, 1 byte, 10 = highest priority single character, 9 = next highest
priority character in case first one not available (wrong sex, no sound, etc.), 8 = next highest priority, etc. until a generally available character is reached
future development
- Reliability, integer, 1 byte, estimated reliability of of character, 10 = very
reliable down to 1 for characters with substantial overlap among the available choices,
0 indicates reliability has not been entered future development
- LastUpdate, smalldatetime, date and time of last update
- ModifiedBy, integer, 2 bytes, UserID of the signon that made the change
- tblCharTypes, types of characters future
development
- CharTypeID, integer, 1 byte, identifier for type of character
- Type, integer, 1 byte
- 0 = short, quick version
- 1 = external morphology, both sexes
- 2 = color
- 3 = external morphology, male only
- 4 = external morphology, female only
- 5 = internal morphology
- 6 = sound
- 7 = geographic range
- 8 = seasonal occurence
- 9 = habitat
- 10 = behavior (other than sound)
- Text, 35 characters maximum, as listed above for Type
- tblKeyCharStates, subordinate to tblKeyChars, description
of each character state for each character in tblKeyChars
- CharID, integer, 2 bytes, = tblKeyChars.CharID
- CharStateID, integer, 2 bytes, identifier for this character state; CharID and CharStateID
form a composite primary key
- LastUpdate, smalldatetime, date and time of last update
- ModifiedBy, integer, 2 bytes, UserID of the signon that made the change
- tblCharStateDetails, subordinate to tblKeyCharStates,
display details for character states
(allows for multiple display components for a single character state)
- CharID, integer, 2 bytes, = tblKeyChars.CharID
- CharStateID, integer, 2 bytes, = tblKeyCharStates.CharID
- SeqNum, integer, 1 byte, 1-based sequence number for display components. CharID, CharStateID
and SeqNum form a composite primary key
- Type, integer, 2 bytes
- 1 = text
- 2 = image
- 3 = sound
- 4 = list of image coordinates (not yet implemented)
- Text, 1500 characters maximum
- ImageID, integer, 4 bytes, = tblImages.ImageID
- SoundID, integer, 2 bytes, = tblSounds.SoundID
- LastUpdate, smalldatetime, date and time of last update
- ModifiedBy, integer, 2 bytes, UserID of the signon that made the change
- tblKeyBlockChars, linking table to match blocks and characters
- BlockID, integer, 2 bytes, = tblKeyBlocks.BlockID
- CharIndex, integer, 1 byte, index giving position of character in block; BlockID
and CharIndex form a composite primary key. CharIndex is zero based.
Values range from 0 to 126. Value of 127 is reserved for swapping the indices
of two characters.
- CharID, integer, 2 bytes, = tblKeyChars.CharID
- LastUpdate, smalldatetime, date and time of last update
- ModifiedBy, integer, 2 bytes, UserID of the signon that made the change
- tblKeyBlockBranches, subordinate to tblKeyBlocks, list
giving group selected for each branch
- BlockID, integer, 2 bytes, = tblKeyBlocks.BlockID
- BranchIndex, integer, 1 byte; BlockID and BranchIndex form a composite primary
key. BranchIndex is zero based. Values range from 0 to 126. Value
of 127 is reserved for swapping the indices of two branches.
- GroupID, integer, 2 bytes, = tblKeyGroups.GroupID, the destination group if this
branch is selected
- LastUpdate, smalldatetime, date and time of last update
- ModifiedBy, integer, 2 bytes, UserID of the signon that made the change
- tblBlockCharStates, linking table to match block character
(specific to block) with key character (pool of all characters)
- BlockID, integer, 2 bytes, = tblKeyBlocks.BlockID and tblKeyBlockChars.BlockID
- CharIndex, integer, 1 byte, = tblKeyBlockChars.CharIndex
- CharStateIndex, integer, 1 byte, 0-based index giving position of character state within
character; BlockID, CharIndex and CharStateIndex form a composite primary
key. CharStateIndex is zero based. Values range from 0 to 125.
Value of 126 is reserved for header information for the character. Value of
127 is reserved for swapping the indices of two character states.
- CharID, integer, 2 bytes, = tblKeyChars.CharID and tblKeyCharStates.CharID
- CharStateID, integer, 2 bytes, = tblKeyCharStates.CharStateID
- LastUpdate, smalldatetime, date and time of last update
- ModifiedBy, integer, 2 bytes, UserID of the signon that made the change
- tblBranchCharStates, linking table for block to match
branch with character state. This is used for matrix blocks, but not for
dichotomous blocks.
- BlockID, integer, 2 bytes, = tblKeyBlocks.BlockID
- BranchIndex, integer, 1 byte, = tblKeyBlockBranches.BranchIndex
- CharIndex, integer, 1 byte, = tblBlockCharStates.CharIndex
- CharStateIndex, 1 byte; BlockID, BranchIndex, CharIndex and CharStateIndex form
a composite primary key
- Code, integer, 1 byte, relationship of character state to branch
- 0 = not specified
- 1 = state in branch unknown; if a branch has this setting for one state, it must
have this for all states of that character
- 2 = not applicable to this branch; if a branch has this setting for one state,
it must have this for all states of that character
- 3 = state never found in branch; if all but one state for a character have this
setting, then the remaining state for the branch must be 6
- 4 = state found only rarely in branch
- 5 = states found commonly in branch
- 6 = sole state found in branch; if a branch has this setting for one state, all
other states for that character must be 3
- LastUpdate, smalldatetime, date and time of last update
- ModifiedBy, integer, 2 bytes, UserID of the signon that made the change
|