Akwatype provides a number of standard properties to qualify the objects of its models.
However, each project or organization has its own needs and Akwatype has the custom properties to meet them.
A custom property is defined by its name and the following properties
- type (String)
- Type of the values of this property (String, Integer, Boolean...)
- values (List - depends on the type of property)
- Lists of possible values for this property
- This list of values allows to check the validity of the values entered when using this property
- it also allows to feed the completion of the editor which will automatically propose the list of possible values during the input
- Lists of possible values for this property
- openAPI (boolean)
- if true, the custom property will be included in the OpenAPI extension of akwatype when generating the OpenAPI description
- x-akwatype-custom-properties
- if true, the custom property will be included in the OpenAPI extension of akwatype when generating the OpenAPI description
Once declared, a custom property is used as a standard Akwatype property.
Concerning the data model Akwatype has :
- customTypeProperty
- customFieldProperty
example :
customTypeProperty myTypeProperty { type:String values:["T1","T2","T3"] openAPI: true }
customFieldProperty myFieldProperty { type:Integer values:[2,5] openAPI: true } type Vehicle{ properties { label:"any type of vehicle" myTypeProperty: "T1" } model:String{ label:"vehicle model" myFieldProperty:2 } brand:String }