Supported Domain Types

The conversion of business data into CER rule objects supports the use of the majority of the application's fundamental domain types.

The table below shows the correct CER data type to use for a CER rule attribute, which at rule object conversion time will be populated from a database or evidence field based on a domain. The table also describes any logic which is applied at data conversion time and the default value that the rule object converters will use for any values which are not sourced directly from data sources (e.g. when populating before-start or after-end values in a timeline):

Table 1. Mapping from Cúram Domain Types to CER Rule Attribute Types

Cúram Domain Type

CER Rule Attribute Type

Data conversion logic

Default value

Numerical types:

  • SVR_DOUBLE;
  • SVR_FLOAT;
  • SVR_INT8;
  • SVR_INT16;
  • SVR_INT32;
  • SVR_INT64; and
  • SVR_MONEY.

Java class - Number

Converted to CER's own numerical format.

0

Character types:

  • SVR_STRING; and
  • SVR_CHAR.
  • Java class - String, for text data other than a code table code; or
  • Code table entry (specifying the appropriate code table) for text data which is a code table code
 

An empty String ("").

SVR_BLOB

Not supported.

   

SVR_BOOLEAN

Java class - Boolean

 

false

SVR_DATE

Java class - curam.util.value.Date

The "zero date" (blank) is converted to a null value.

null

SVR_DATETIME

Java class - curam.util.value.DateTime

The "zero date time" (blank) is converted to a null value.

null

Tip: If there is a mismatch between the database column domain type and the CER rule attribute type, then at conversion time CER will report an error that the value set on the rule attribute does not match its expected type. This error points to the incorrect attribute data type having been modeled on the target rule class.
Important: Each CER rule attribute automatically has a description rule attribute (of type curam.creole.value.Message), inherited from the RootRuleClass.

Rule attributes of this curam.creole.value.Message data type do not map to a domain type, and so cannot be populated by the rule object converter. Any data named "description" in the source data will be ignored.