Basic PROforma Concepts: Enquiries, Sources and Data Definitions
Enquiries are tasks that collect information from agents end-users or software components, to be used later in the process. An enquiry can hold several requests for data, each known as a source.
Each source is based on a data definition, which defines the structure of the data that the enquiry is requesting. A data definition will typically define the following attributes: name, caption, description, data type, range, default value, and selection mode.
- Data definitions that are not used by sources are not saved with the process-description.
- Data definitions can be saved separately in data definition libraries (.dd files) to facilitate reuse.
- Data definitions can be imported into a process-description either from a library, or from another process-description.
The key difference between a source and a data definition is that a source only exists within the context of an enquiry (or a decision) and therefore also has a statusattribute.
The status of a source determines whether data entry is required for the enquiry to complete. By default, source status is mandatory: this means that the enquiry only completes after a data value has been supplied (either by the user, or from some other external agent or system, e.g. a database). If a source’s status is optional, the enquiry can complete without it.
When a piece of data is collected during runtime enactment, it is held in an instance of a data definition, and referred to as a data item.
Note: The current version of Tallis allows for only one instance of a data Item per data definition.
The figure below describes the relationships between enquiries, sources, data definitions and data items: different enquiries can have a common source; each source is based on a singular data definition; and one instance of data item per data definition is formed during runtime enactment.