Return-Path: <br@brianrosen.net>
X-Original-To: dispatch@ietfa.amsl.com
Delivered-To: dispatch@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1])
 by ietfa.amsl.com (Postfix) with ESMTP id AD3C63A0779
 for <dispatch@ietfa.amsl.com>; Wed, 15 Jul 2020 05:37:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.888
X-Spam-Level: 
X-Spam-Status: No, score=-1.888 tagged_above=-999 required=5
 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1,
 SPF_HELO_NONE=0.001, T_SPF_PERMERROR=0.01, URIBL_BLOCKED=0.001]
 autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key)
 header.d=brianrosen-net.20150623.gappssmtp.com
Received: from mail.ietf.org ([4.31.198.44])
 by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id dPI3wvzXFj0i for <dispatch@ietfa.amsl.com>;
 Wed, 15 Jul 2020 05:37:49 -0700 (PDT)
Received: from mail-il1-x131.google.com (mail-il1-x131.google.com
 [IPv6:2607:f8b0:4864:20::131])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (No client certificate requested)
 by ietfa.amsl.com (Postfix) with ESMTPS id 59C5A3A0778
 for <dispatch@ietf.org>; Wed, 15 Jul 2020 05:37:49 -0700 (PDT)
Received: by mail-il1-x131.google.com with SMTP id t27so1785086ill.9
 for <dispatch@ietf.org>; Wed, 15 Jul 2020 05:37:49 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=brianrosen-net.20150623.gappssmtp.com; s=20150623;
 h=mime-version:subject:from:in-reply-to:date:cc
 :content-transfer-encoding:message-id:references:to;
 bh=6e7BpCJeR8y4AzW4pxI3Bamq4vRsyvJmKuCrQMA5mtw=;
 b=nfeIInfovf0ZQXN5DK8XkbNNBqyN8TxzUGCvxEuRPS4Cl4sBKSpW+Miya+tUy/kRw3
 Z8Kvv6bX8Z1UZrsOy1atQMkXwZrQ3qIEuTpq1ttfXY5mUyEqAQg9bNw87vaRsRtaA4zz
 Fosp2zHGFLFY0FytgZL+ftbQM0RUWMc0JkGdJG9RrK9O07Cb4lvAMEmsqELxwo1dJQCZ
 H4jHsAJ/NF6nVxx6/QfBRQlyq4Rx/2QCZuZILcMQhss9KQiG0Sz6E9DLBgdnsvinWcje
 lph+kucULRSkBIqq7vbl0afXHKPJTLgB7RQtkIOAUWF6CPISs94fA1WXHKA3bI2UgAkX
 xx0Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc
 :content-transfer-encoding:message-id:references:to;
 bh=6e7BpCJeR8y4AzW4pxI3Bamq4vRsyvJmKuCrQMA5mtw=;
 b=si1wTwDu5N37yz/pnsT0xPYvN4ZbyRHmbzuJ3kmufQ+wSSsvoXfvmcDpT9KaAUti5A
 fniNXOz0ulW83idtgCQBKXO2ivRW89z6UHV8P4GxtMA49PHqz4ACynFzp2RFcCWHtNxK
 RJS0jMn1tIPX/uWgKuhKuHnXWJALs1Obsd0btHIb5sUxGnPDJo4VMMCiJzq3+ACjTPZI
 NeLUn/t+KvmIUr4+pbBkF9xkU0EaB81iiiQZcg7jCxcG918keqeifLyE/xZeaZQESc6N
 0FW0cB7MS2Q+NAJRpPlhMiw63esEcpycpIClLmK7/vVCLYNjNxyWSnVWMqF19gFphvml
 d4HQ==
X-Gm-Message-State: AOAM532HsfrV05aEvSvZ+mBeo7d0e5ZvRwJbHT0xr8T2XFKVuG9w540J
 281fKFNXCgQXGOdSDzErrhd8y5iwfmE=
X-Google-Smtp-Source: ABdhPJytf2/EQys64MMoypn1Xypwg036AJ3lFVLKDmBMoKxYRQYyAwU9EA6a1t7CtR4MWTkDR1LclQ==
X-Received: by 2002:a92:aad6:: with SMTP id p83mr8958300ill.65.1594816668537; 
 Wed, 15 Jul 2020 05:37:48 -0700 (PDT)
Received: from brians-mbp-2871.lan
 (dynamic-acs-24-154-119-158.zoominternet.net. [24.154.119.158])
 by smtp.gmail.com with ESMTPSA id 5sm1087569ion.7.2020.07.15.05.37.40
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Wed, 15 Jul 2020 05:37:40 -0700 (PDT)
Content-Type: text/plain;
	charset=utf-8
Mime-Version: 1.0 (Mac OS X Mail 13.4 \(3608.80.23.2.2\))
From: Brian Rosen <br@brianrosen.net>
In-Reply-To: <d2ab505d-bc99-482d-a8e5-694f67ce932b@www.fastmail.com>
Date: Wed, 15 Jul 2020 08:37:39 -0400
Cc: dispatch@ietf.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <1C9B201D-7DB6-4A8D-8750-475981DB5863@brianrosen.net>
References: <159467093010.19477.7181341398452455173@ietfa.amsl.com>
 <77B617C1-2148-4AE6-8428-DAD43D01FBC5@tzi.org>
 <d2ab505d-bc99-482d-a8e5-694f67ce932b@www.fastmail.com>
To: Martin Thomson <mt@lowentropy.net>
X-Mailer: Apple Mail (2.3608.80.23.2.2)
Archived-At: <https://mailarchive.ietf.org/arch/msg/dispatch/x1bVs5oEwOvPiO-joVAwCxlpmtw>
Subject: Re: [dispatch] draft-goessner-dispatch-jsonpath-00.txt
X-BeenThere: dispatch@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: DISPATCH Working Group Mail List <dispatch.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dispatch>,
 <mailto:dispatch-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dispatch/>
List-Post: <mailto:dispatch@ietf.org>
List-Help: <mailto:dispatch-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dispatch>,
 <mailto:dispatch-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 15 Jul 2020 12:37:52 -0000

I haven=E2=80=99t seen json pointer in the wild, pretty much ever.  =
I=E2=80=99ve seen A LOT of jsonpath. =20
But I=E2=80=99m not exactly doing mainstream interfaces.

Brian

> On Jul 15, 2020, at 5:40 AM, Martin Thomson <mt@lowentropy.net> wrote:
>=20
> I see three major differences here from JSON pointer:
>=20
> 1. this selects multiple values in the same way that XPath does, so =
this includes // and * and other such things
> 2. predicates (the execution of script is a major concern and really =
begs for a security model), which is largely a consequence of having =
multiple values but not strictly
> 3. syntax
>=20
> Of these, the syntax difference seems gratuitous.  JSON pointer isn't =
exactly awesome~1but it has fewer variants and it isn't inclined toward =
implementation by eval(), which is an anti-feature.
>=20
> Personally, I would much rather see a new JSON pointer developed, =
which would be evolutionary rather than revolutionary; more version 2 =
than competition.  It would be relatively simple to add multi-value and =
relative evaluation to JSON pointer if those are the key use cases.  =
That said, I don't have a lot of insight into what the implementation =
landscape is.  If JSON pointer is moribund, then we might want to =
acknowledge that.  My sense is that it has some relatively wide support, =
including modifications for relative references =
(https://json-schema.org/draft/2019-09/relative-json-pointer.html).
>=20
> Predicates are where this gets tricky, but I would suggest that you =
need to decide the question of whether they are included from the =
outset.  Personally, these seem like they could be a big risk and I =
would defer their addition if not cut them out, but I don't know what =
sort of use cases are driving this.
>=20
> This seems big enough to be a working group (particularly if you put =
the predicate stuff in scope).
>=20
>=20
> On Tue, Jul 14, 2020, at 15:14, Carsten Bormann wrote:
>> (Reply-To set to dispatch@ietf.org)
>>=20
>> I would like to initiate discussion for =
draft-goessner-dispatch-jsonpath:
>>=20
>> https://www.ietf.org/id/draft-goessner-dispatch-jsonpath-00.html
>>=20
>> It says:
>>=20
>>> This document picks up the popular JSONPath specification dated
>>> 2007-02-21 and provides a more normative definition for it.
>>> It is intended as a submission to the IETF DISPATCH WG, in order to
>>> find the right way to complete standardization of this =
specification.
>>> In its current state, it is a strawman document showing what needs =
to
>>> be covered.
>>=20
>> (For some reason the abstract landed in the Contributing note; =
typical=20
>> Internet-Draft deadline day botch.)
>>=20
>> This is a widely implemented specification that has been around for=20=

>> more than a decade; now may be a good opportunity to finally go ahead=20=

>> and turn it into a proper Internet standards document.  The immediate=20=

>> cause for writing this up now is that some IoT discovery work (some =
of=20
>> which happens in W3C) can make good use of JSONPath.  Clearly, we=20
>> already have JSON Pointer (RFC 6901) for a more limited set of=20
>> applications; the specification would do good in defining how these =
two=20
>> fit together.
>>=20
>> There is no active WG that immediately fits this work.
>>=20
>> Eventually CDDL may pick JSONPath up in the form of a predicate=20
>> operator; this might make the CBOR WG the right group (which probably=20=

>> would then go ahead and write up another specification that makes=20
>> JSONPath useful for querying CBOR instances that go beyond the JSON=20=

>> generic data model).
>>=20
>> Reopening the JSON WG may be another approach, as may be creating a=20=

>> short-lived targeted WG.
>>=20
>> Please discuss!
>>=20
>> Gr=C3=BC=C3=9Fe, Carsten
>>=20
>>=20
>>=20
>>> Begin forwarded message:
>>>=20
>>> From: internet-drafts@ietf.org
>>> Subject: New Version Notification for =
draft-goessner-dispatch-jsonpath-00.txt
>>> Date: 2020-07-13 at 22:08:50 CEST
>>> To: "Stefan G=C3=B6ssner" <stefan.goessner@fh-dortmund.de>, "Stefan =
Gossner" <stefan.goessner@fh-dortmund.de>, "Carsten Bormann" =
<cabo@tzi.org>
>>>=20
>>>=20
>>> A new version of I-D, draft-goessner-dispatch-jsonpath-00.txt
>>> has been successfully submitted by Carsten Bormann and posted to the
>>> IETF repository.
>>>=20
>>> Name:		draft-goessner-dispatch-jsonpath
>>> Revision:	00
>>> Title:		JSONPath -- XPath for JSON
>>> Document date:	2020-07-12
>>> Group:		Individual Submission
>>> Pages:		14
>>> URL:            =
https://www.ietf.org/internet-drafts/draft-goessner-dispatch-jsonpath-00.t=
xt
>>> Status:         =
https://datatracker.ietf.org/doc/draft-goessner-dispatch-jsonpath/
>>> Htmlized:       =
https://tools.ietf.org/html/draft-goessner-dispatch-jsonpath-00
>>> Htmlized:       =
https://datatracker.ietf.org/doc/html/draft-goessner-dispatch-jsonpath
>>>=20
>>>=20
>>> Abstract:
>>>  insert abstract here
>>>=20
>>>=20
>>>=20
>>>=20
>>> Please note that it may take a couple of minutes from the time of =
submission
>>> until the htmlized version and diff are available at tools.ietf.org.
>>>=20
>>> The IETF Secretariat
>>>=20
>>>=20
>>=20
>> _______________________________________________
>> dispatch mailing list
>> dispatch@ietf.org
>> https://www.ietf.org/mailman/listinfo/dispatch
>>=20
>=20
> _______________________________________________
> dispatch mailing list
> dispatch@ietf.org
> https://www.ietf.org/mailman/listinfo/dispatch

