ExtensionObject values shall be encoded as a JSON object with the fields shown in Table 37.
Table 37 – JSON Object Definition for an ExtensionObject
Name |
Description |
TypeId |
The NodeId of a DataTypeEncoding Node or a DataType Node formatted using the rules in 5.4.2.10. |
Encoding |
The format of the Body field encoded as a JSON number. This value is 0 if the body is Structure encoded as a JSON object (see 5.4.6). This value is 1 if the body is a ByteString value encoded as a JSON string (see 5.4.2.8). This value is 2 if the body is a XmlElement value encoded as a JSON string (see 5.4.2.9). This field is omitted if the value is 0. |
Body |
Body of the ExtensionObject. The type of this field is specified by the Encoding field. If the Body is empty, the ExtensionObject is NULL and is omitted or encoded as a JSON null. |
For the non-reversible form, ExtensionObject values shall be encoded as a JSON value containing only the value of the Body field. The TypeId and Encoding fields are dropped.