[Uri-review] Re: [art] Re: Alternative representation of URIs in YANG

Kent Watsen <kent+ietf@watsen.net> Wed, 28 January 2026 14:56 UTC

Return-Path: <0100019c051aeaa7-a7e15831-0a71-4ffe-a1b4-c73800ebe47e-000000@amazonses.watsen.net>
X-Original-To: uri-review@mail2.ietf.org
Delivered-To: uri-review@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id B29C8AE53EF8; Wed, 28 Jan 2026 06:56:22 -0800 (PST)
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -1.897
X-Spam-Level:
X-Spam-Status: No, score=-1.897 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: mail2.ietf.org (amavisd-new); dkim=pass (1024-bit key) header.d=amazonses.com
Received: from mail2.ietf.org ([166.84.6.31]) by localhost (mail2.ietf.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id p_mPIcu7NX9A; Wed, 28 Jan 2026 06:56:22 -0800 (PST)
Received: from a8-83.smtp-out.amazonses.com (a8-83.smtp-out.amazonses.com [54.240.8.83]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail2.ietf.org (Postfix) with ESMTPS id 49811AE53EF3; Wed, 28 Jan 2026 06:56:22 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/simple; s=6gbrjpgwjskckoa6a5zn6fwqkn67xbtw; d=amazonses.com; t=1769612176; h=Content-Type:Mime-Version:Subject:From:In-Reply-To:Date:Cc:Content-Transfer-Encoding:Message-Id:References:To:Feedback-ID; bh=gyX8fDSHxKxDV7KK5MhSqjbKtCrD1gDBG5rhrW0e8S4=; b=inSJbgKyMN2dVOe9f+I81VlL41y2roj0rbtuZunjJfK0+cK2QluTdWDQjYPz+N5q COJoln5nf4XyOtGl0HQcO42Dy2EjNJLUnVowB3sBg3+LxHbbAIvPMaZl+98oZkrQfBw 8HrkaKh0jM59CDYN02ny3Y2bWpp1CyeQpkL7TOb4=
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3826.700.81\))
From: Kent Watsen <kent+ietf@watsen.net>
In-Reply-To: <58bfdddb-fc1a-401a-945b-2c3637a48620@betaapp.fastmail.com>
Date: Wed, 28 Jan 2026 14:56:16 +0000
Content-Transfer-Encoding: quoted-printable
Message-ID: <0100019c051aeaa7-a7e15831-0a71-4ffe-a1b4-c73800ebe47e-000000@email.amazonses.com>
References: <87zf669z4x.fsf@hobgoblin.ariadne.com> <0100019be639037e-5401829e-3666-454e-b2c1-e9ac65a04ac5-000000@email.amazonses.com> <e1356eb8-31ba-47ce-9a1f-8d42713184a9@betaapp.fastmail.com> <263D72B1-54D9-47BA-9787-8A3F3889A6ED@gmail.com> <f5bjyx8y0v0.fsf@lochinver.inf.ed.ac.uk> <D7A3B7FB-0284-4DCF-B840-8114860A0FDD@gmail.com> <802512BC-D897-40DE-A79F-ACB6E8921DA7@mnot.net> <9A94D747-2F88-46A2-8DD2-188C1F0B0A3F@gmail.com> <0100019bfb182b61-75a76690-f254-4bd2-8001-3a708adbae9d-000000@email.amazonses.com> <58bfdddb-fc1a-401a-945b-2c3637a48620@betaapp.fastmail.com>
To: Martin Thomson <mt@lowentropy.net>
X-Mailer: Apple Mail (2.3826.700.81)
Feedback-ID: ::1.us-east-1.DKmIRZFhhsBhtmFMNikgwZUWVrODEw9qVcPhqJEI2DA=:AmazonSES
X-SES-Outgoing: 2026.01.28-54.240.8.83
Message-ID-Hash: 45L4MMYUWPAAJTAGHX7XJFHQCWBLWLRO
X-Message-ID-Hash: 45L4MMYUWPAAJTAGHX7XJFHQCWBLWLRO
X-MailFrom: 0100019c051aeaa7-a7e15831-0a71-4ffe-a1b4-c73800ebe47e-000000@amazonses.watsen.net
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-uri-review.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: Mahesh Jethanandani <mjethanandani@gmail.com>, art@ietf.org, "uri@w3.org" <uri@w3.org>, uri-review@ietf.org
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [Uri-review] Re: [art] Re: Alternative representation of URIs in YANG
List-Id: Proposed URI Schemes <uri-review.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/uri-review/v48MaujGGeb_-CJNlV93nxYQOwk>
List-Archive: <https://mailarchive.ietf.org/arch/browse/uri-review>
List-Help: <mailto:uri-review-request@ietf.org?subject=help>
List-Owner: <mailto:uri-review-owner@ietf.org>
List-Post: <mailto:uri-review@ietf.org>
List-Subscribe: <mailto:uri-review-join@ietf.org>
List-Unsubscribe: <mailto:uri-review-leave@ietf.org>


> On Jan 26, 2026, at 7:14 PM, Martin Thomson <mt@lowentropy.net> wrote:
> 
> On Tue, Jan 27, 2026, at 03:17, Kent Watsen wrote:
>> PS: I still don't think the HTTP folks made their case.
> 
> What case?

That the "ietf-uri" structure couldn't encode any URI string.   Dale showed that all the provided examples were encodable.


> It might be worth stepping back a little here and examining what the fundamental goals are.  Looking at -31 of the draft, the <uri> element is part of the client only.  Apparently, an HTTP client has a single URI that it is fixated on.

Yes, this has been the data model all along.   This is the case for the entire suite of client-server drafts.  For instance, the "ietf-tcp-client" YANG module configures an IP address and a port.


> That doesn't match my model of an HTTP client at all.  Clients routinely make many requests to different resources, following redirects and making decisions about other requests that might be made.

Sure, but there has a be a start point, and that's what's being configured here.


> So, is a client *defined* by the resource that it fetches or interacts with?  Almost certainly not.  Is it instantiated to request a single resource?  That's possible, but not especially useful.  I guess you could use that to model a single invocation of the Fetch API, but I don't think that Fetch is conceived of as a single interaction with the API or that a binding to a single URI is a good fit for the model.
> 
> The question I'd like to ask is whether this module needs to define the client in this way.  I see that this element is mandatory, but only for a subset of the URI components that would not be sufficient to construct a functioning HTTPS URI (I can't be sure for other schemes).
> 
> What purpose do you see this information serving?

The use-case is primarily for programmatic APIs, not browsers.

For instance, the draft-ietf-netconf-http-notif uses this module to configure a router/firewall/switch to send logs to a collector over HTTP.  In this case, the HTTP client truly uses a single URL for the lifetime of the connection.

Similarly, draft-ietf-netconf-restconf-client-server uses this module to configure a controller/orchestrator/NMS to connect to a router/firewall/switch over RESTCONF.  In this case, the HTTP client uses a tree of URLs, defined by the YANG modules the router/firewall/switch implements.


> --Martin

Martin, this all began due to an AUTH48 expert-review request from IANA, to which you raised a concern for the "ietf-uri" module, which is no longer, which is fine.  Can we unblock the RFC Editor now?

Kent