Skip to content
lsl.devlsl.devLSL Dev

JSON_NULL

constant
Constant
string JSON_NULL = "\\u{FDD5}";

Return value for llJsonValueType function indicating the Json data type of a given address specifier in a given string-serialized JSON text.

Also the return string value for llJsonGetValue function when the bare word ‘null’ is at the given address specifier in a given string-serialized JSON text.

Also used to encode the bare word ‘null’ within a Json text to signify an empty, valueless placeholder Value at that location (the empty LSL String, "", can be used as well for that).

Example 1
// Showing usage of JSON_NULL
// within a Json text string
string jText;
5 collapsed lines
default
{
state_entry(){
jText = llList2Json(JSON_OBJECT, ["A", 4, "B", 5]);
llOwnerSay(jText); // jText is '{"A":4,"B":5}'
llOwnerSay(llJsonGetValue(jText, ["B"])); // The string "5"
jText = llJsonSetValue(jText, ["B"], JSON_NULL);
llOwnerSay(jText); // jText is now '{"A":4,"B":null}'
llOwnerSay(llJsonGetValue(jText, ["B"])); // The Unicode value of JSON_NULL
}
}

From the issue templates included by the wiki article:

  • BUG-3692: type=bug|<s>JSON_NULL may be deceptively returned instead of JSON_INVALID when [http://tools.ietf.org/html/rfc4627 noncompliant Json text] is encountered by either llJsonValueType or llJsonGetValue.</s> Fixed with release 13.09.21.281328.
Type FlagsValueUnicodeIntegerURL EncodedHTML EncodedDescription
JSON_INVALIDU+FDDO64976“%EF%B7%90”&#xFDD0;Value returned when inputs are not well formed.
JSON_OBJECTU+FDD164977“%EF%B7%91”&#xFDD1;
JSON_ARRAYU+FDD264978“%EF%B7%92”&#xFDD2;
JSON_NUMBERU+FDD364979“%EF%B7%93”&#xFDD3;
JSON_STRINGU+FDD464980“%EF%B7%94”&#xFDD4;
JSON_NULLU+FDD564981“%EF%B7%95”&#xFDD5;
JSON_TRUEU+FDD664982“%EF%B7%96”&#xFDD6;
JSON_FALSEU+FDD764983“%EF%B7%97”&#xFDD7;
JSON_DELETEU+FDD864984“%EF%B7%98”&#xFDD8;Used with llJsonSetValue to remove a key-value pair.
Original wiki source

Some wiki templates and tables need their original context. View this article on the Second Life Wiki. Technical wording and examples are retained from the source; historical guidance may differ from current behavior.