Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

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 feed.

...

Info
  • When you add the right column of the domain schema first, the left column will be prefilled with a copy of the name from the right column. When editing the left column then it is "user-set" and the automatic copy function will be disabled.
  • When an attribute or relation is selected, the fields on the right side of the screen are prefilled using the information of the attribute or relation. You may deviate from this chosen setting.
  • The validations can only be a validation type. It is not possible to use validation rules.
  • When optional elements of the messages are left out, the parser will set the value unknown for them. This is the same for NULL values in JSON.
  • When generating a JSON message, unknown values will be mapped to NULL. However, the element will be left out completely when the attribute is not required and the value is not user-set.

Hide root element

To define an unnamed array the 'Hide root element' checkbox corresponding to the domain schema root element must be ticked.

...

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. 

...