Page History
Info | ||||
---|---|---|---|---|
| ||||
|
The domain schema is a contract of communication. The purpose of the domain schema is to define what items are needed in a message and to specify its elements. For example the representation of a person. In this case the persons first name (1), always followed by his last name and his job(s). The right column represents the application domain, where the left column represents the domain schema of the message.
You start with an entity (2) that represents the begin and the end of the message. For every attribute/relation you can select a name (3), what datatype (4) it is, if it is required (5) to be part of the message, if it is multivalued (6), add a validation (7), and any additional documentation (8) that will be part of the Swagger OpenAPI feed.
Info |
---|
|
...
Note |
---|
You can make translations between message and your application domain. For example, it is possible to store a single-valued attribute in the message in a multi-valued attribute in your application domain. You have to be aware that you can only make a translation into a more general data type. For example the other way is not possible. When sending a message, it is not possible to place a multivalued attribute of your application domain in a single valued attribute of the domain schema. |
Hide root element
To define an unnamed array the 'Hide root element' checkbox corresponding to the domain schema root element must be ticked.
Example of a JSON message that consists of an unnamed array:
Code Block |
---|
[ { "JohnId",: 23 }1, { "Name": "RickBob", 30 } "Age": 35, { "Gender": "Paul", 27 male" } ] |
When making use of unnamed arrays, only one child (relation or attribute) can follow the root element.
Domain Schema in another Domain Schema
If parts of the domain schema are being reused, or the size of the domain schema is getting too large to understand and/or maintain, it may be a good choice to cut up the large domain schema and use the sub domain schema's in the main domain schema.
...
Because domain schemas can be referenced by other domain schemas, it is possible to create infinite loops. For more information on how to set the infinite-loop-limit for Runtime, check the properties documentation page.
Infinite loop
Because domain schemas can be referenced by other domain schemas, it is now possible that infinite loops are created.
...
For more information on how to set the infinite-loop-limit for Runtime, check the properties documentation page.