Contains the actual grammars used during recognition. The MD5 hash is used to uniquely identify grammars; when trying to determine if a grammar is already in the database, first, compute the MD5 hash on the suspect grammar (LumenVox uses crpytopp), and examine each the 16 bytes in groups of four, treating them as 4 long integers (C++ type). You can do rapid searching by examining each of the integers to determine if a suspect grammar matches something in the database. Consult the encoding to determine if you need to process the actual content, and the format to determine how to handle the resulting content.
Column Name | Data Type | Data Length | Default Value | See Also |
---|---|---|---|---|
GContentID | INTEGER | N/A | N/A | N/A |
GContentMD5_1 | INTEGER | N/A | N/A |
sqlite_encode_binary sqlite_decode_binary |
GContentMD5_2 | INTEGER | N/A | N/A |
sqlite_encode_binary sqlite_decode_binary |
GContentMD5_3 | INTEGER | N/A | N/A |
sqlite_encode_binary sqlite_decode_binary |
GContentMD5_4 | INTEGER | N/A | N/A |
sqlite_encode_binary sqlite_decode_binary |
cGContentFormat | INTEGER | N/A | N/A |
tblLVST_GrammarContent_cGContentFormat sqlite_encode_binary sqlite_decode_binary |
cGContentEncoding | INTEGER | N/A | N/A |
tblLVST_GrammarContent tblLVST_GrammarContent_cGContentEncoding sqlite_encode_binary sqlite_decode_binary |
GContent | TEXT | N/A | N/A |
sqlite_encode_binary sqlite_decode_binary |
GContentID
Foreign Key | Reference Table | Reference Key |
---|---|---|
GContentFormat | tblLVST_DBConstants | ContentValue |
GContentEncoding | tblLVST_DBConstants | ContentValue |
Column | Description | Constraint Name | Constraint Description |
---|---|---|---|
GContentID | Autoincrementing primary key. | N/A | N/A |
GContentMD5_1 | The first group of 4 bytes of the 128 bit (16 byte) MD5 hash on original grammar. The hash itself is stored by first computing the MD5 on the grammar, and then treating the hash as four 4-byte integers. The grammar is placed into the database along with the 4 groups of the hash, to quickly search for grammars, and to uniquely identify grammars. The four MD5 fields are only useful as a group. | N/A | N/A |
GContentMD5_2 | The second group of 4 bytes of 128 bit (16 byte) MD5 hash on original grammar. The hash itself is stored by first computing the MD5 on the grammar, and then treating the hash as four 4-byte integers. The grammar is placed into the database along with the 4 groups of the hash, to quickly search for grammars, and to uniquely identify grammars. The four MD5 fields are only useful as a group. | N/A | N/A |
GContentMD5_3 | The third group 4 bytes of 128 bit (16 byte) MD5 hash on original grammar. The hash itself is stored by first computing the MD5 on the grammar, and then treating the hash as four 4-byte integers. The grammar is placed into the database along with the 4 groups of the hash, to quickly search for grammars, and to uniquely identify grammars. The four MD5 fields are only useful as a group. | N/A | N/A |
GContentMD5_4 | The fourth group 4 bytes of 128 bit (16 byte) MD5 hash on original grammar. The hash itself is stored by first computing the MD5 on the grammar, and then treating the hash as four 4-byte integers. The grammar is placed into the database along with the 4 groups of the hash, to quickly search for grammars, and to uniquely identify grammars. The four MD5 fields are only useful as a group. | N/A | N/A |
cGContentFormat | Details the grammar format of the grammar content. See tblLVST_GrammarContent_cGContentFormat. | MustExist | The value in cGContentFormat must exist in tblLVST_GrammarContent _cGContentFormat. |
cGContentEncoding | Track the encoding of the grammar. Currently, it must be one of "TEXT" or "BINARY" in tblLVST_GrammarContent_GContentEncoding | MustExist | The value in cGContentEncoding must exsit in tblLVST_GrammarContent _cGContenEncoding. |
GContent | The actual grammar being stored. For TEXT-encoded grammars, the grammar can be used directly; for BINARY-encoded grammars, you *must* use sqlite_decode_binary to retrieve the original binary grammar object. | N/A | N/A |
Constraint Name | Constraint Description | Columns Related |
---|---|---|
notduplicateMD5 | no duplicate MD5 value is allowed | GContentMD5_1, GContentMD5_2, GContentMD5_3, GContentMD5_4 |