-
Type: New Feature
-
Status: Closed
-
Priority: Major
-
Resolution: Unresolved
-
Affects Version/s: None
-
Fix Version/s: V4.02
-
Component/s: Vocabularies
-
Labels:None
-
Environment:
Proposed
-
Proposal:
-
Resolution:
"JSON properties" are stream properties whose value is of media type application/json or one of its subtypes. They were introduced with ODATA-1177.
As outlined in OData Extension for JSON Data we need query capabilities on these properties.
Requirements:
- Specify a JSON Schema that describes/restricts the JSON stream values (
ODATA-1275) - Address parts of the JSON stream values in common expressions, e.g. in $filter, $compute, $orderby (this issue)
The second requirement can be solved via functions on JSON stream properties, e.g.
- extract/compute an OData value (primitive, complex, collection) from a JSON stream
- special case: extract/compute a JSON stream from a JSON stream
- special case: extract/compute a Boolean value from a JSON stream
These functions can be inspired by (or be direct wrappers for) the SQL/JSON functions
- JSON_QUERY, see IBM Db2, Microsoft SQL Server, Google BigQuery Standard SQL, or SAP HANA
- JSON_VALUE, see IBM Db2, Microsoft SQL Server, Google BigQuery Standard SQL, or SAP HANA
PostgreSQL has its own set of JSON Functions and Operators.