Re: SQL/JSON path issues/questions

From: Alexander Korotkov <a(dot)korotkov(at)postgrespro(dot)ru>
To: Oleg Bartunov <obartunov(at)postgrespro(dot)ru>
Cc: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, Liudmila Mantrova <l(dot)mantrova(at)postgrespro(dot)ru>, Kyotaro Horiguchi <horikyota(dot)ntt(at)gmail(dot)com>, Thom Brown <thom(at)linux(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: SQL/JSON path issues/questions
Date: 2019-06-28 11:30:50
Message-ID: CAPpHfdtL1yNKXxSoZTk32mnR+wRr_PKyz7U2hkOdXTDOitrtFg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Fri, Jun 28, 2019 at 9:01 AM Oleg Bartunov <obartunov(at)postgrespro(dot)ru> wrote:
> On Fri, Jun 28, 2019 at 8:10 AM Alvaro Herrera <alvherre(at)2ndquadrant(dot)com> wrote:
> >
> > On 2019-Jun-28, Alexander Korotkov wrote:
> >
> > > On Tue, Jun 25, 2019 at 6:38 PM Liudmila Mantrova
> > > <l(dot)mantrova(at)postgrespro(dot)ru> wrote:
> > > > Thank you for the catch! Please see the modified version of patch 0004
> > > > attached.
> > >
> > > I tried to review and revise the part related to filters, but I failed
> > > because I don't understand the notions used in the documentation.
> > >
> > > What is the difference between filter expression and filter condition?
> > > I can guess that filter expression contains question mark,
> > > parentheses and filter condition inside. But this sentence is in
> > > contradiction with my guess: "A filter expression must be enclosed in
> > > parentheses and preceded by a question mark". So, filter expression
> > > is inside the parentheses. Then what is filter condition? The same?
> >
> > The SQL standard defines "JSON filter expressions" (in 9.39 of the 2016
> > edition). It does not use either term "filter condition" nor bare
> > "filter"; it uses "JSON path predicate" which is the part of the JSON
> > filter expression that is preceded by the question mark and enclosed by
> > parens.
>
> Yes, this is what I used in my talk
> http://www.sai.msu.su/~megera/postgres/talks/jsonpath-ibiza-2019.pdf
>
> >
> > Maybe we should stick with the standard terminology ...
>
> Sure.

+1

> As for the jsonpath documentation, I think we should remember, that
> jsonpath is a part of SQL/JSON, and in the following releases we will
> expand documentation to include SQL/JSON functions, so I suggest to
> have one chapter SQL/JSON with following structure:
> 1. Introduction
> 1.1 SQL/JSON data model
> 1.2 SQL/JSON path language
> 1.3 <SQL/JSON functions> -- to be added
> 2. PostgreSQL implementation
> 2.1 jsonpath data type -- link from json data types
> 2.2 jsonpath functions and operators -- link from functions
> 2.3 Indexing
>
> I plan to work on a separate chapter "JSON handling in PostgreSQL" for
> PG13, which includes
> JSON(b) data types, functions, indexing and SQL/JSON.

It would be great if you manage to do this.

------
Alexander Korotkov
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Alvaro Herrera 2019-06-28 13:12:21 Re: Conflict handling for COPY FROM
Previous Message Amit Kapila 2019-06-28 11:30:10 Re: [PATCH] Stop ALTER SYSTEM from making bad assumptions