Undefined events
Events with errors, or undefined events, are treated so that as much correct data as possible is retained and incorrect data is made available for use in rules. The rule engine determines incorrect data through parsing errors and incompatibilities with the BAROC class definitions.
The following incorrect events are handled by the cell as specified:
The event message cannot be parsed as an event. An internal event of class MC_CELL_PARSE_ERROR is created. It contains slots with the complete message text and the line number and column number in the message text that locates the error message. Specific slots for this internal event are listed in the following table:
MC_CELL_PARSE_ERROR slotsSlot
Data
error_columnColumn number in text where an error occurs
error_lineLine number on text where an error occurs
error_messageError message
event_textComplete event message text
- The event is of an undefined class. An internal event of class MC_CELL_UNDEFINED_CLASS is generated. Following is its class definition:
MC_CELL_UNDEFINED_CLASS ISA MC_CELL_EVENT
DEFINES {
severity : default = MINOR;
class_name: STRING;
};
END
It contains slots with the undefined class name, a list of slot names, and a list of slot values. The specific slot used is described in the following table:
MC_CELL_UNDEFINED_CLASS slots
Slot | Data |
|---|---|
class_name | Name of class as specified in the message |
- The event is of a defined class, but contains undefined slots. The event is generated as one of the specified class, and the undefined slots are stored in the bad slot list slots, in corresponding order, as follows:
mc_bad_slot_values: LIST_OF STRING;
- The event has slot values that do not match the data type of the slot, such as a non-numeric value for a numeric type. The event is generated as specified, except the bad slots. Because a valid value is not assigned for the bad slots, the default value applies to those slots. All bad slot values are stored in the two slot lists, as for the event of a defined class with undefined slots.