Requirements#
In addition to the common JSON requirements shared by the different backends (such as “vajson” and “”nlohmann_json”), “vajson” offers extended capabilities. These additional features are captured as requirements in the following section.
JSON Validation
|
status: valid
security: NO
safety: ASIL_B
|
||||
vaJson shall provide a service to check the well-formedness of JSON data. Errors shall be reported including the error reason and the location in the JSON document for malformed JSON and invalid schemata (user-defined errors). |
|||||
JSON Deserialization RFC extensions
|
status: valid
security: NO
safety: ASIL_B
|
||||
vaJson shall provide a service to ignore trailing commas and accept hexadecimal integers. |
|||||
JSON Event Callbacks
|
status: valid
security: NO
safety: ASIL_B
|
||||
vaJson shall provide a service to listen to events for every parsed JSON item. The user shall be notified for every simple type directly, and for every complex type using start and end events. |
|||||
Unicode Support
|
status: valid
security: NO
safety: ASIL_B
|
||||
vaJson shall provide support for UTF-8 encoded strings. UTF-8 encoded strings shall be decoded and encoded by vaJson. |
|||||
Binary Content Support
|
status: valid
security: NO
safety: ASIL_B
|
||||
vaJson shall allow for plain binary content and binary strings. Both types are represented as JSON values and handled accordingly (i.e., they must follow the JSON specification for values). |
|||||