Re: [calsify] [Last-Call] Artart last call review of draft-ietf-calext-jscontact-07

Robert Stepanek <rsto@fastmailteam.com> Mon, 04 September 2023 09:57 UTC

Return-Path: <rsto@fastmailteam.com>
X-Original-To: calsify@ietfa.amsl.com
Delivered-To: calsify@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 1197EC14CE4F; Mon, 4 Sep 2023 02:57:31 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.106
X-Spam-Level:
X-Spam-Status: No, score=-2.106 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=fastmailteam.com header.b="PqxJyTwm"; dkim=pass (2048-bit key) header.d=messagingengine.com header.b="lfayNR66"
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 A7n2uKMDSwk8; Mon, 4 Sep 2023 02:57:26 -0700 (PDT)
Received: from out5-smtp.messagingengine.com (out5-smtp.messagingengine.com [66.111.4.29]) (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 BA22EC14CE31; Mon, 4 Sep 2023 02:57:25 -0700 (PDT)
Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailout.nyi.internal (Postfix) with ESMTP id 71E745C00BE; Mon, 4 Sep 2023 05:57:22 -0400 (EDT)
Received: from imap43 ([10.202.2.93]) by compute3.internal (MEProxy); Mon, 04 Sep 2023 05:57:22 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= fastmailteam.com; h=cc:cc:content-type:content-type:date:date :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm2; t= 1693821442; x=1693907842; bh=dals2V5tXqIWveARqTOKsmwIbIwO+awufL4 PzCabJ/0=; b=PqxJyTwmbUtOiiYQ9J9uA8DHFySdVnSZG+0+oSfEA2wg4eZVrT3 +uD4D99n/E47nsHF0I5axvSOTZ8jn/U1kxqOVSvRl9WrsAxCBQ1WeSqvjoIpt49G 4L5tQMFEcsF2GgNbaXOvK/SkEGwACv4dBpgNuW0iemDrf27jHfolQFvMy88SDeij d3T7eU4K0RQ9GbUdTTFvchom/RjNpFWheNc+sHL6DaomIQoWoLD5boL/TJ7fOn52 /qx6w32r0pF1evIXEehXy3zd13L1vRl0JqZUbMr3TH9lsnLWJTOc0RHDtUnUpCsH UlUPsf9Xa82AINW9Dg2lUZk60Tz3GM2o2sQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm1; t=1693821442; x=1693907842; bh=dals2V5tXqIWv eARqTOKsmwIbIwO+awufL4PzCabJ/0=; b=lfayNR66oofNhfsHuIGaACLYd4cCp x1tRe972gBFGblgN1DITJ33vFRoPxNx42D2t9JkDAL10eNBQB/Jrxq0edz0LVFHU tIPHnIKMLwB0inNDb0upxoKjZBk5EFjoRVQimNquSiyOXJdk+IniaUzFTANMPOIr NGpdfWYFaYi3PQfJjyqd7PXgaoW+1ZYQPeiPtehA1TmXxNPyzazNp+Zfcnf+j5yX TQfOgxo8WywV5ggfIN6Xlp5RLzkVkrlsTjI0mE08u0bKV0P5HDzWF3FRwp697Klj MxvlGjyZT5hWJyj2wMlKKQPxTJnGU4VSehP3x4dJpVWHdT1+e2Tbj19kw==
X-ME-Sender: <xms:Aar1ZPK16IOU1Rr18CooAJZHVaQ-IN0AaLfbBfdGC6KPZ_9Y_kGi2w> <xme:Aar1ZDIAmxzaS0CSfNo6and1qgwfMn3xt2G7HtJ9eGUdcDisaHYjoz2Jg2fkgyR3_ AjSk-2q2tRGNQ>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedviedrudegkedgvddvucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepofgfggfkjghffffhvfevufgtsegrtderreerreejnecuhfhrohhmpedftfho sggvrhhtucfuthgvphgrnhgvkhdfuceorhhsthhosehfrghsthhmrghilhhtvggrmhdrtg homheqnecuggftrfgrthhtvghrnheplefgheejtddutdfgieefjeejjeduiefhkeevfeeg ueehuddtvdelgfffveefvdejnecuffhomhgrihhnpehitggrnhhnrdhorhhgpdhivghtfh drohhrghenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhm pehrshhtohesfhgrshhtmhgrihhlthgvrghmrdgtohhm
X-ME-Proxy: <xmx:Aar1ZHtZpPEdDymsFvmpcGc5cC8JsOvyal4qu7HHMn0L9_47gnOWnA> <xmx:Aar1ZIYHpvebpNpIUZedvMcBkd63CtW7XZW3dGIOSTauOJj453sxag> <xmx:Aar1ZGZcP_zs0o-GSeqnxEoQEPfuqbPanhMVSM7N61z4b1IZAVm3FA> <xmx:Aqr1ZNzByzsEiwZDyg1bQKZcNMW0_lsZRjRdqw4IVpFHZfNCQOnbrQ>
Feedback-ID: ia5d944da:Fastmail
Received: by mailuser.nyi.internal (Postfix, from userid 501) id 86FD52D40092; Mon, 4 Sep 2023 05:57:21 -0400 (EDT)
X-Mailer: MessagingEngine.com Webmail Interface
User-Agent: Cyrus-JMAP/3.9.0-alpha0-711-g440737448e-fm-20230828.001-g44073744
Mime-Version: 1.0
Message-Id: <31f3f732-db0e-4f02-8ea4-4a0148c187a2@app.fastmail.com>
In-Reply-To: <CAChr6SyGR08pfAZqMHAyicch3HoiEzor2z1Hc6KEbt8KOTG3BQ@mail.gmail.com>
References: <168207023641.10169.13335976589846153291@ietfa.amsl.com> <e77b3332-694c-413d-8fa3-c8a1f005e254@app.fastmail.com> <5beb7882-4f67-039c-00ae-49d86277ccb6@it.aoyama.ac.jp> <3498b43d-14a1-4734-a231-7b92aca934ff@app.fastmail.com> <13F35ABF-6AE8-4E32-8C24-544F02BE79B0@tzi.org> <2bb161cc-fdfc-49f8-8b36-c1b329603f04@app.fastmail.com> <27F6E36C-B7E0-4367-8789-574B1E659EDF@tzi.org> <df38264b-f2fe-413b-a493-4c8d52aa1117@app.fastmail.com> <2a1c3796-6844-b428-6f4b-0a7703a18ba1@it.aoyama.ac.jp> <ced5145f-3331-4337-bca7-d891b4eea739@app.fastmail.com> <CAChr6Swf9QCtBS+ZvLS4VC2OvopBL5usE3Cz0_7saLp=LnG0Tg@mail.gmail.com> <CADZyTk=3waFW+nctSZDtbbLymJ2Lqx=fUMELS2v0BG45QBxOgw@mail.gmail.com> <85c0c403-fa48-4491-b051-c93f6a06d0cf@app.fastmail.com> <CAChr6SyopN4LCwzD+B8ZG6YTdQ6eViU8EArxL26M7d7_h3U7qQ@mail.gmail.com> <f73b4c50-fc47-43c6-b155-c875fffe5c5e@app.fastmail.com> <CAChr6Sw_522zE_ozJ2YyZJAkbY54AgqhzJb-uTiNiVnqF941zA@mail.gmail.com> <9306fcbd-7a44-45e7-847f-e81e82c1213c@app.fastmail.com> <CAChr6SyGR08pfAZqMHAyicch3HoiEzor2z1Hc6KEbt8KOTG3BQ@mail.gmail.com>
Date: Mon, 04 Sep 2023 11:57:00 +0200
From: Robert Stepanek <rsto@fastmailteam.com>
To: Rob Sayre <sayrer@gmail.com>
Cc: Daniel Migault <mglt.ietf@gmail.com>, Martin Dürst <duerst@it.aoyama.ac.jp>, Carsten Bormann <cabo@tzi.org>, art@ietf.org, calsify@ietf.org, draft-ietf-calext-jscontact.all@ietf.org, last-call@ietf.org
Content-Type: multipart/alternative; boundary="1705eacda4ec4421a452ea24af029c26"
Archived-At: <https://mailarchive.ietf.org/arch/msg/calsify/5QRZBbQHzEk46aZhb3nIwjMUOYI>
Subject: Re: [calsify] [Last-Call] Artart last call review of draft-ietf-calext-jscontact-07
X-BeenThere: calsify@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Calendaring and Scheduling Standards Simplification <calsify.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/calsify>, <mailto:calsify-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/calsify/>
List-Post: <mailto:calsify@ietf.org>
List-Help: <mailto:calsify-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/calsify>, <mailto:calsify-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Sep 2023 09:57:31 -0000

On Fri, Sep 1, 2023, at 9:05 AM, Rob Sayre wrote:
> On Thu, Aug 31, 2023 at 11:45 PM Robert Stepanek <rsto@fastmailteam.com> wrote:__
>> I am wary of restating too many requirements in the JSContact RFC for which other RFCs are authorative: there's always the risk of getting it wrong. That especially applies to DNS: https://rfc-annotations.research.icann.org.
> 
> I am not trying to be difficult here.

I don't think you are, I appreciate all your comments! I also agree it's important to come to a good conclusion with internationalizations and URIs, so we should take time for that.

> I think your document is too strict, since the URL fields are delimited by JSON constructs.

We currently strictly require URIs (RFC 3986) because that's straight-forward to convert from and to vCard. So indeed your example IRI (RFC 3987) http://ああ.com <http://xn--l8ja.com/> would not be allowed, it would need to be converted to a URI as outlined in section 3.1 of RFC 3987 <https://datatracker.ietf.org/doc/html/rfc3987#section-3.1>. I can image we allow using IRIs where we currently require URIs, they look like a great addition. I am just cautious as long as I haven't understood all the implications.

One part I'm particularly concerned about is how to convert IRIs for use with vCard URI-typed properties . Citing Section 3.1 of the IRI spec: "Systems [...] MAY convert the ireg-name component of an IRI [...] for schemes known to use domain names in ireg-name, if the scheme definition does not allow percent-encoding for ireg-name".

This suggests to me that getting from an IRI to a valid URI requires scheme-specific rules, and using IRIs in JSContact would require implementations to take these rules into account during conversion to vCard. That's definitely more effort than just copying a string value from one representation to another. It's OK should we decide that IRIs are worth that additional effort, it's just a decision I don't want to take lightly.

What URI schemes do require special handling during IRI conversion? Do all schemes use domain names in ireg-name and so using Punycode for conversion is basically a given? How well are IRIs and URI conversion supported in software libraries, especially outside browsers? Is there more to say about security other than highlighting the spoofing concerns of RFC 3987?

I'd appreciate any feedback, especially from people who have more experience with working with IRIs than me.