Database schemas
Rule Execution Server uses a simple database schema that relies on the following tables. In addition to these tables, a view is created to list all the enabled rulesets dynamically, if the targeted database management system supports the feature. All database management systems support it, except MySQL 3.x and 4.x. Indexes are created to speed up the search.
For RuleApps, RuleApp properties, ruleset properties, and ruleset resources, MySQL database management systems are limited to the length of the VARCHAR type (255).
The following table describes the database schema for RuleApps.
| Column Name | Mandatory | Database Type | Comments |
|---|---|---|---|
| ID | INTEGER | The value is autogenerated and handled directly by the database. Autogeneration is database dependent. | |
| NAME |
|
VARCHAR(256) | This column stores the name of the RuleApp. |
| MAJOR_VERSION |
|
INTEGER | This column stores the major version number of the RuleApp. |
| MINOR_VERSION |
|
INTEGER | This column stores the minor version number of the RuleApp. |
| CREATION_DATE |
|
BIGINT | This column stores the creation date of the RuleApp as a long data type. |
| DISPLAY_NAME | VARCHAR(256) | This column stores a possible alternative name of the RuleApp. | |
| DESCRIPTION | VARCHAR(256) | This column stores a text that describes the RuleApp. |
The following table describes the database schema for rulesets.
| Column Name | Mandatory | Database Type | Comments |
|---|---|---|---|
| ID | INTEGER | The value is autogenerated and handled directly by the database. Autogeneration is database dependent. | |
| NAME |
|
VARCHAR(256) | This column stores the name of the ruleset. |
| MAJOR_VERSION |
|
INTEGER | This column stores the major version number of the ruleset. |
| MINOR_VERSION |
|
INTEGER | This column stores the minor version number of the ruleset. |
| CREATION_DATE |
|
BIGINT | This column stores the creation date of the ruleset as a long data type. |
| DISPLAY_NAME | VARCHAR(256) | This column stores a possible alternative name of the ruleset. | |
| DESCRIPTION | VARCHAR(256) | This column stores a text that describes the ruleset. | |
| RULEAPP_ID |
|
INTEGER | This column stores the ID of the RuleApp to which the ruleset belongs. |
The following table describes the database schema for RuleApp properties.
| Column Name | Mandatory | Database Type | Comments |
|---|---|---|---|
| ID | INTEGER | The value is autogenerated and handled directly by the database. Autogeneration is database dependent. | |
| RULEAPP_ID | INTEGER | This column stores the ID of the RuleApp to which the property belongs. | |
| NAME |
|
VARCHAR(256) | This column stores the name of the property. |
| VALUE |
|
VARCHAR(2000) or TEXT (for MySQL) |
This column stores the value of the property. |
The following table describes the database schema for ruleset properties.
| Column Name | Mandatory | Database Type | Comments |
|---|---|---|---|
| ID | INTEGER | The value is autogenerated and handled directly by the database. Autogeneration is database dependent. | |
| RULESET_ID | INTEGER | This column stores the ID of the ruleset to which the property belongs. | |
| NAME |
|
VARCHAR(256) | This column stores the name of the property. |
| VALUE |
|
VARCHAR(2000) or TEXT (for MySQL) |
This column stores the value of the property. |
The following table describes the database schema for ruleset resources.
| Column Name | Mandatory | Database Type | Comments |
|---|---|---|---|
| ID | INTEGER | The value is autogenerated and handled directly by the database. Autogeneration is database dependent. | |
| RULESET_ID | INTEGER | This column stores the ID of the ruleset to which the resource belongs. | |
| DATA |
|
BLOB named archive | This column stores the value of the resource. |
The following table describes the database schema for XOM resources.
| Column Name | Mandatory/optional | Database Type | Comments |
|---|---|---|---|
| ID | Optional | INTEGER | The value is autogenerated and handled directly by the database. Autogeneration is database dependent. |
| NAME | Mandatory | VARCHAR (256) | This column stores the name of the resource. |
| MAJOR_VERSION | Mandatory | INTEGER | This column stores the major version number of the resource. |
| MINOR_VERSION | Mandatory | INTEGER | This column stores the minor version number of the resource. |
| SHA1 | Mandatory | VARCHAR (40) | This column stores the checksum of the value of the resource (SHA-1 algorithm). |
| CREATION_DATE | Mandatory | BIGINT | This column stores the creation date of the resource as a long data type. |
| DATA | Mandatory | BLOB | This column stores the content of the resource. |
The following table describes the database schema for managed Java™ XOM libraries.
| Column Name | Mandatory/optional | Database Type | Comments |
|---|---|---|---|
| ID | Optional | INTEGER | The value is autogenerated and handled directly by the database. Autogeneration is database dependent. |
| NAME | Mandatory | VARCHAR (256) | This column stores the name of the library. |
| MAJOR_VERSION | Mandatory | INTEGER | This column stores the major version number of the library. |
| MINOR_VERSION | Mandatory | INTEGER | This column stores the minor version number of the library. |
| CREATION_DATE | Mandatory | BIGINT | This column stores the creation date of the library as a long data type. |
The following table describes the database schema for managed Java XOM libraries.
| Column Name | Mandatory/optional | Database Type | Comments |
|---|---|---|---|
| ID | Optional | INTEGER | The value is autogenerated and handled directly by the database. Autogeneration is database dependent. |
| LIBRARY_ID | Mandatory | INTEGER | This column stores the identifier of the library. |
| URL | Mandatory | VARCHAR (256) | This column stores the value of the URL. |