|
Examining the Database SchemaThis section examines the slightly more complicated database schema that has been generated this time. As you would expect, you have your message tables. Remember, these are the top-level tables for your messages that gives each message instance a MESSAGE_ID and a STATUS ('W', if waiting to send). There are now two of these tables:
You also now have the tables that are generated based on the Table Grammar you defined for your messages. Remember, these have the same structure as the tables in your VMD except that there are two additional columns: (1) MESSAGE_ID which states the message instance that the data in a given row is associated with, and (2) PARENT_ID which states the parent instance that the data is associated with. As a result, the following tables were generated:
Finally, one final table type was generated; this table is referred to as a group table. If you look at your database, you will see you have a ResultGroup table. A group table will be generated for every group you have in a message's Table Grammar. It contains 3 columns: the MESSAGE_ID and PARENT_ID (populated in exactly the same way as the Table Grammar database tables), and the GROUP_ID. This GROUP_ID specifies a unique ID for the instance of a group under a specific parent - this allows for repetitions of the group. |