On Tue, May 1, 2012 at 12:22 PM, Andrew Dunstan <and...@dunslane.net> wrote: > Second, RFC 4627 is absolutely clear: a valid JSON value can only be an > object or an array, so this thing about converting arbitrary datum values to > JSON is a fantasy. If anything, we should adjust the JSON input routines to > disallow anything else, rather than start to output what is not valid JSON.
No, the RFC says (emphasis mine): A JSON *text* is a serialized object or array. If we let the JSON type correspond to a *value* instead, this restriction does not apply, and the JSON type has a useful recursive definition. For example, this function would not be possible if we applied the "object or array" restriction: unnest(json) returns setof json Note that a similar distinction appears with the XML type: "document" versus "content". -Joey -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers