Re: [Jsonpath] JSNOPath Interim meeting next week

Carsten Bormann <cabo@tzi.org> Mon, 25 April 2022 21:26 UTC

Return-Path: <cabo@tzi.org>
X-Original-To: jsonpath@ietfa.amsl.com
Delivered-To: jsonpath@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 77E39C2AFD77 for <jsonpath@ietfa.amsl.com>; Mon, 25 Apr 2022 14:26:28 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0
X-Spam-Level:
X-Spam-Status: No, score=0 tagged_above=-999 required=5 tests=[SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id TTxox39F5AAy for <jsonpath@ietfa.amsl.com>; Mon, 25 Apr 2022 14:26:26 -0700 (PDT)
Received: from gabriel-smtp.zfn.uni-bremen.de (gabriel-smtp.zfn.uni-bremen.de [134.102.50.15]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1A441C2AFD76 for <jsonpath@ietf.org>; Mon, 25 Apr 2022 14:26:24 -0700 (PDT)
Received: from smtpclient.apple (p5089ad4f.dip0.t-ipconnect.de [80.137.173.79]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by gabriel-smtp.zfn.uni-bremen.de (Postfix) with ESMTPSA id 4KnJ3f0C6TzDCcJ; Mon, 25 Apr 2022 23:26:21 +0200 (CEST)
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3696.80.82.1.1\))
From: Carsten Bormann <cabo@tzi.org>
In-Reply-To: <30f10fea-3125-c2de-efeb-ea61f3da8bc5@goessner.net>
Date: Mon, 25 Apr 2022 23:26:21 +0200
Cc: Tim Bray <tbray@textuality.com>, jsonpath@ietf.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <8E117611-F451-4F25-80CF-5B65C4A0B3D3@tzi.org>
References: <CAHBU6it2-yx0iXCm_yV7reBa1++7=5w92Q=sqGzHq=5A9J1MoQ@mail.gmail.com> <30f10fea-3125-c2de-efeb-ea61f3da8bc5@goessner.net>
To: Stefan Gössner <stefan@goessner.net>
X-Mailer: Apple Mail (2.3696.80.82.1.1)
Archived-At: <https://mailarchive.ietf.org/arch/msg/jsonpath/oHGXAFu42c4WXCd-Wd3oiACycsw>
Subject: Re: [Jsonpath] JSNOPath Interim meeting next week
X-BeenThere: jsonpath@ietf.org
X-Mailman-Version: 2.1.34
Precedence: list
List-Id: A summary description of the list to be included in the table on this page <jsonpath.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/jsonpath>, <mailto:jsonpath-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/jsonpath/>
List-Post: <mailto:jsonpath@ietf.org>
List-Help: <mailto:jsonpath-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/jsonpath>, <mailto:jsonpath-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 25 Apr 2022 21:26:28 -0000


> On 25. Apr 2022, at 19:53, Stefan Gössner <stefan@goessner.net> wrote:
> 
> I think, we need to address/discuss ...
> 
> * Filtering object members by index (key), which isn't possible right now. In combination with regular expressions that would be very powerful ($[? @index =~ 'cat|dog') ... avoiding function syntax here.

Syntax:
So the extension point would be @foo for getting a property (English word) of each current node — that makes a lot of sense to me.

Semantics:
We would make a single, explicit exception from the “don’t look up” principle here — I think that such an exception is acceptable specifically for going horizontally from the member value (element) to its name (index).  This just means that the implementation must keep the name/index as context when diving down into a member value/array element.

> * how to deal with functions ... how could an extension point be of help here (length property of objects/arrays) ?

@length works using the same extension point; no function syntax needed.

Grüße, Carsten