Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
BaSyx / Documentation / VAB / JSON Serialization
|See also||HTTP/REST Mapping||TCP Mapping||Exceptions|
Both the TCP and the HTTP mapping use a json serialization for objects send over the VAB. In the following, this json serialization is explained.
There are multiple requirements on the JSON serialization:
- Preserve type information, since JSON only knows a small set of types
- Be compatible to the JSON serialization defined in Details of the Asset Administration Shell
- Be compatible to the C#-SDK since it is not using the VAB
The following types are taken as is from the JSON type scheme:
- number (integer or double)
- object (i.e. map)
Additionally, these types are introduced:
- ordered lists
Functions are most commonly not serializable. Exception of this are Java functions, that can be represented by their byte code. However, there still needs to be an indication that a value is representing a function. This is done by passing this information in the _basyxFunctionType key. The allowed values are: