Distribution Logic
With the distribution logic, you define the following:
● The instances of a data object that are distributed to specific devices at runtime
● The conditions for which specific instances of data objects are distributed to specific devices at runtime
The distribution logic can be defined using the following elements:
● Dependencies defined between data objects
A distribution dependency is a distribution relationship between two standard data objects that is defined in a distribution model. One of the data objects is defined as the Leading data object and the other as the following data object. Whenever a message of a leading data object is distributed by the DOE, the corresponding messages of the following data object are also distributed.

Dependencies can be defined based on associations which have been defined between two standard data objects in the data object builder.
You can define a rule or bulk rule over a dependency and you can define conditional dependencies in the distribution modeler. These features allow you to filter the following data object messages to be distributed as well.
● Data completeness groups
Using data completeness groups, you can define that the data for a data object is to be distributed only if the complete data to be distributed due to a defined dependency is available. For example, you could define that the data of the Order data object is to be distributed only if the data of the Product data object is also available in the Data Orchestration Engine (DOE).
● Static filters
Using static filters for differentiation, you can define multiple dependencies for the same Leading data object with the same source field and link node. Here, the static filter acts as a condition.
● Distribution rules
A distribution rule defines which devices receive which instances of a data object.
It consists of the following elements:
○ Criteria fields and operators defining what needs to be distributed.
Criteria fields are defined as part of distribution rules. They control the data distribution to the mobile devices based on criteria that you define for them.
The criteria fields can be administered at runtime, that is their values can be changed by the administrator to control the data distribution.
○ Device assignment logic defining which devices receive what data (all devices, specific devices, no devices).
○ Execution plan for rule evaluation. The plan defines when the distribution rule is evaluated.

Rules can be defined at distribution model level (direct distribution rules) and dependency level (dependency rules). To filter the instances of the root data object of a distribution model, you use direct distribution rules. To filter the instances of a following data object that are sent to the client, you use dependency rules.
● Bulk distribution rules
Bulk rules are used to define that all the instances of a data object are distributed to all the devices of a specific receiver category (RMM) or to all the devices matching defined criteria.
Example: Consider the scenario where you have to distribute the data of all the products sold by a company to all mobile devices of the field sales representatives of a specific sales center. To realize this scenario, you define a distribution model for a product data object with a bulk rule and device binding with search criteria defining the sales center.

Like normal distribution rules, bulk rules can be defined at distribution model level and dependency level. A bulk rule defined for the root data object of a distribution model ensures that all the instances of this data object are distributed. A bulk rule defined for a dependency works on the instances that are present because of the existing dependency. So the bulk rule defines the distribution of a subset of the instances of the dependent data object.