Business model definitions syntax
You use the business definitions to model entity and event types.
You define the entities, concepts, and events of your business model by adding constructs in the Definitions editor of the business model file. You use specific constructs to define the nature of the concept, the relationships to other concepts, and the attributes that compose the entity, concept, or event.
Construct | Definition | Example |
---|---|---|
<a concept> is a concept |
Defines a simple concept that is neither an entity nor an event. |
|
<an entity> is a business entity identified by <identifier> |
Defines an entity and the attribute that is used as the entity identifier. The entity ID is of type string. |
|
<an event> is a business event time-stamped by <a time> |
Defines an event that has a time stamp. If no time stamp is specified, a time stamp is applied by default. The event time stamp is of type date & time. |
|
<a concept> is <a concept> |
Defines a concept that inherits from another concept. |
|
<an entity> is <an entity> |
Defines an entity that inherits from another entity. |
|
<an event> is <an event> |
Defines an event that inherits from another event. |
|
<a concept> can be one of: <value>, <value>, <value> |
Defines an enumerated domain with a list of values. |
|
<a concept> has <an attribute>. |
Defines an attribute of the concept, entity,
or event. You cannot use this construct to specify a relationship to an entity. |
|
with <an attribute>, <an attribute> and <an attribute> |
Introduces a list of attributes. |
|
<a concept> is related to <an entity> |
Defines a relationship to an entity. |
|
some |
Defines a multiple (n-ary) relationship. |
|
several different |
Defines a multiple (n-ary) relationship where each item is unique. |
|
<a concept> can be <attribute> |
Indicates an attribute that is defined by a Boolean expression. |
|
<a type>, named the <attribute> |
Specifies an attribute name for a type. This construct is equivalent to <an attribute> (<type>). |
This
expression is equivalent to the following expression:
|
<an attribute> that is <a type> |
Specifies the type of an attribute. This construct is equivalent to <an attribute> (<type>). |
This
expression is equivalent to the following
expression:
|
used as the default <facet> |
Defines a facet so that the concept can be interpreted as another type in the rules. |
|
<a concept> is <a type> whose values are prefixed by a <prefix> |
Adds a prefix to the values of a concept. The type must represent a lexical value such as number, date & time, string. |
|
<a concept> is <a type> whose values are suffixed by a <suffix> |
Adds a suffix to the values of a concept. The type must represent a lexical value such as number, date & time, string. |
|
<a data provider> is a data provider, accepts <input>, returns <output>. |
Defines a data provider that returns values based on input values. The input and output are attributes that you define in the business model. |
|
The default type for attributes is a string, but you can specify a different type.
Construct | Definition | Example |
---|---|---|
(numeric) |
The type of the attribute is a number (double). |
|
(integer) |
The type of the attribute is an integer. |
|
(text) |
The type of the attribute is a string. This type is the default type. |
|
(date & time) |
The type of the attribute is a date and a time. |
|
(time) |
The type of the attribute is a time. |
|
(duration) |
The type of the attribute is a duration. |
|
(<a concept>) |
The attribute inherits the type of the specified existing concept. |
|
(<a type>) |
The attribute has a type, for example a geometry. |
|
<attribute> [mandatory] |
The attribute is mandatory. |
|
<attribute> [<technical_attribute>: <value>] |
The attribute has a technical attribute. |
|
(<type>, <default value> by default ) |
The attribute has a type with a default value. |
|