Read a JSON object, returning objects as a dicts. The
representation depends on the options, where the default is:
- String values are mapped to Prolog strings
- JSON
true
, false
and null
are represented using these
Prolog atoms.
- JSON objects are mapped to dicts.
- Optionally, a
type
field in an object assigns a tag for
the dict.
The predicate json_read_dict/3 processes the same options as
json_read/3, but with different defaults. In addition, it
processes the tag
option. See json_read/3 for details about
the shared options.
- tag(+Name)
- When converting to/from a dict, map the indicated JSON
attribute to the dict tag. No mapping is performed if Name
is the empty atom ('', default). See json_read_dict/2 and
json_write_dict/2.
- default_tag(+Tag)
- Provide the default tag if the above
tag
option does not
apply.
- null(+NullTerm)
- Default the atom
null
.
- true(+TrueTerm)
- Default the atom
true
.
- false(+FalseTerm)
- Default the atom
false
- end_of_file(+ErrorOrTerm)
- Action on reading end-of-file. See json_read/3 for details.
- value_string_as(+Type)
- Prolog type used for strings used as value. Default
is
string
. The alternative is atom
, producing a
packed string object.