tblLVST_GrammarSet
Table Description:
The grammar tables, of which this is the top level, are necessarily complex, because of the varying
ways of using different kinds of grammars. For LV_Concept grammars, the grammar set will only contain
a single grammardetailid link, always as root, and with an active grammar identifier of 0. However,
SRGS allows multiple, active, root grammars which compete during the decode. In this case, it becomes
necessary to track which grammars are root, and which are not, to reconstruct the recognition grammars.
LumenVox always stores the subordinate grammar used (external ones referenced by URI from the root or
other external grammars); for other systems, the grammars stored may only be th top level grammar.
Table structure:
Primary Keys:
GrammarSetID
Foreign Key |
Reference Table |
Reference Key |
RequestID |
tblLVST_Requests |
RequestID |
GrammarDetailID |
tblLVST_GrammarDetail |
GrammarDetailID |
cIsRoot |
tblLVST_GrammarSet_cIsRoot |
GrammarDetailID |
Column Descriptions and Constraints:
Column |
Description |
Constraint Name |
Constraint Description |
RequestID |
Identifies the request this grammar set belongs to. |
N/A |
N/A |
ActiveGrammarSet |
Identifies one (there can be more) active grammar set for the requested decode. |
N/A |
N/A |
GrammarDetailID |
Identifies the detailed grammar description, including raw and translated forms, etc. |
N/A |
N/A |
cIsRoot |
Identifies the grammar detail as the root grammar for this request and active set. Uses
"TRUE" and "FALSE" constant values to indicate yes or no.
|
N/A |
N/A |
Table Constraints:
Constraint Name |
Constraint Description |
Columns Related |
OneRoot |
There can be only one root for a (request, active grammar set). Every other grammar in that
pair must be a subordinate grammar.
|
RequestID, ActiveGrammarSet, IsRoot |