[yang-doctors] [IANA #1289473] Revision statements in IANA-maintained YANG modules
Amanda Baber via RT <iana-issues@iana.org> Thu, 14 December 2023 03:30 UTC
Return-Path: <iana-shared@icann.org>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8E076C14CF0D for <yang-doctors@ietfa.amsl.com>; Wed, 13 Dec 2023 19:30:16 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.636
X-Spam-Level:
X-Spam-Status: No, score=-5.636 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.249, MISSING_HEADERS=1.021, RCVD_IN_DNSWL_HI=-5, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=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
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 6apRpHd1iywl for <yang-doctors@ietfa.amsl.com>; Wed, 13 Dec 2023 19:30:12 -0800 (PST)
Received: from smtp.lax.icann.org (smtp.lax.icann.org [IPv6:2620:0:2d0:201::1:81]) (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 9031CC14F5F8 for <yang-doctors@ietf.org>; Wed, 13 Dec 2023 19:30:12 -0800 (PST)
Received: from request6.lax.icann.org (request1.lax.icann.org [10.32.11.221]) by smtp.lax.icann.org (Postfix) with ESMTP id 6BAD3E6586; Thu, 14 Dec 2023 03:30:12 +0000 (UTC)
Received: by request6.lax.icann.org (Postfix, from userid 48) id 5825C78C2D; Thu, 14 Dec 2023 03:30:12 +0000 (UTC)
RT-Owner: amanda.baber
From: Amanda Baber via RT <iana-issues@iana.org>
Reply-To: iana-issues@iana.org
In-Reply-To: <rt-5.0.3-1650890-1701877242-1399.1289473-37-0@icann.org>
References: <RT-Ticket-1289473@icann.org> <rt-5.0.3-1585205-1701829314-1497.1289473-37-0@icann.org> <2279F086-FC49-414F-A36A-007567BC9D93@gmail.com> <rt-5.0.3-1650890-1701877242-1399.1289473-37-0@icann.org>
Message-ID: <rt-5.0.3-1008033-1702524612-117.1289473-37-0@icann.org>
X-RT-Loop-Prevention: IANA
X-RT-Ticket: IANA #1289473
X-Managed-BY: RT 5.0.3 (http://www.bestpractical.com/rt/)
X-RT-Originator: amanda.baber@icann.org
CC: yang-doctors@ietf.org, mbj+ietf@4668.se
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
X-RT-Original-Encoding: utf-8
Precedence: bulk
Date: Thu, 14 Dec 2023 03:30:12 +0000
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/ysdC-1q--lMUF463myiaUudy6a4>
Subject: [yang-doctors] [IANA #1289473] Revision statements in IANA-maintained YANG modules
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.39
List-Id: Email list of the yang-doctors directorate <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 14 Dec 2023 03:30:16 -0000
Thanks, all. We've updated our internal documentation. Amanda On Wed Dec 06 15:40:42 2023, mjethanandani@gmail.com wrote: > Not from my side. Thanks > > Mahesh Jethanandani > mjethanandani@gmail.com > > > On Dec 5, 2023, at 6:22 PM, Amanda Baber via RT <iana- > > issues@iana.org> wrote: > > > > Hi all, > > > > Sending a reminder for this one. Are there any objections to these > > processing instructions for IANA-maintained modules? > > > >> 1. Publish the initial version of the module as-is from the RFC. > >> > >> 2. When the module is updated the first time, change the "This > >> version of > >> this YANG module..." as discussed [below]. > >> > >> 3. For every module update, add a "revision" statement with a > >> "reference" statement that refers to the published module (e.g., > >> https://www.iana.org/assignments/yang-parameters/iana-dns-class- > >> rr-type@2023-11-08.yang) > > > > Please see below. > > > > thanks, > > Amanda > > > >> On Wed Nov 29 12:07:59 2023, mbj+ietf@4668.se wrote: > >> Hi, > >> > >> "Amanda Baber via RT" <iana-issues@iana.org> wrote: > >>> Hi all, > >>> > >>> First, we understand that existing revision statements in > >>> IANA-maintained modules should be left alone. > >>> > >>> A few questions: > >>> > >>> 1) When we first add an entry to an IANA-maintained module, should > >>> we, > >>> as Martin suggested, change, e.g. "This version of this YANG module > >>> is > >>> part of RFC 8294; see the RFC itself for full legal notices." to > >>> "This > >>> original version of this YANG module is part of RFC 8294; see the > >>> RFC > >>> itself for full legal notices."? > >> > >> I think so, but I would like to hear what others have to say. > >> > >> > >>> > >>> 2a) Is it agreed that if IANA registers a codepoint in a First Come > >>> First Served or Expert Review range, and there is no associated > >>> specification, IANA will list a URL? > >>> > >>> 2b) If the registration is in the RRTYPE registry in > >>> https://www.iana.org/assignments/dns-parameters, would that > >>> reference > >>> be to https://www.iana.org/assignments/dns-parameters, > >>> https://www.iana.org/assignments/iana-dns-class-rr-type [1], or for > >>> example, > >>> https://www.iana.org/assignments/yang-parameters/iana-dns-class-rr- > >>> type@2023-11-08.yang? > >>> > >>> [1] We prefer to leave out the trailing > >>> "/iana-dns-class-rr-type.xhtml" in case other extensions are > >>> preferred > >>> in the future, although the .xhtml version will continue to work. > >> > >> The motivation behind the rule is to make it easy for readers of a > >> module to find the original source of the module. In the example > >> above, I think that the reference to > >> https://www.iana.org/assignments/dns-parameters should be in the > >> module's reference statement, which it is. > >> > >> So I'd say either one of > >> https://www.iana.org/assignments/iana-dns-class-rr-type or > >> https://www.iana.org/assignments/yang-parameters/iana-dns-class-rr- > >> type@2023-11-08.yang > >> (see more below). > >> > >> > >>> > >>> 2c) About this: > >>> > >>>> When I validate this module directly with pyang, I get the errors: > >>>> > >>>> $ pyang --ietf iana-routing-types@2022-08-19.yang > >>>> iana-routing-types@2022-08-19.yang:35: error: RFC 8407: 4.8: > >>>> statement > >>>> "revision" must have a "reference" substatement > >>> > >>> We were using https://yangcatalog.org/yangvalidator, which is where > >>> we > >>> came across the ietf-* vs. iana-* reference discrepancy. We've > >>> since > >>> started using pyang. > >>> > >>> Something I should note here is that IANA operations staff (as > >>> opposed > >>> to its technical staff, which includes regular and irregular IETF > >>> participants) are not only not expert in YANG but are also, > >>> essentially, liberal arts majors who have learned to use command > >>> line > >>> tools and markup languages as needed. (I also have a two-year > >>> programming degree that involved about half an hour of JSON, which > >>> is > >>> why I get to be the delegate here.) > >> > >> Ok. So perhaps the simplest solution would be: > >> > >> 1. Publish the initial version of the module as-is from the RFC. > >> > >> 2. When the module is updated the first time, change the "This > >> version of > >> this YANG module..." as discussed above. > >> > >> 3. For every module update, add a "revision" statement with a > >> "reference" statement that refers to the published module (e.g., > >> https://www.iana.org/assignments/yang-parameters/iana-dns-class- > >> rr-type@2023-11-08.yang) > >> > >> > >> > >> As an alternative, if we decide that IANA-maintained modules don't > >> need "reference" in "revision", I can add a flag "--iana" to pyang > >> that would implement this. But in this case, we should probably add > >> the URL to the IANA registry (e.g., > >> https://www.iana.org/assignments/iana-dns-class-rr-type) somewhere, > >> probably in the module's "description". > >> > >> > >> /martin > >> > >> > >> > >>> > >>> Where RFC 8407 is concerned, we acted on the IANA Considerations > >>> section only, and didn't recognize that (as actors on modules) we > >>> need > >>> to implement certain other sections of that document. We've relied > >>> on > >>> online validation tools, as we had/have with MIB modules. > >>> > >>> I think we need a tutorial before we re-approach RFC 8407 and turn > >>> our > >>> internal module maintenance notes into an internal manual (which if > >>> not already necessary will certainly be so when > >>> draft-ietf-netmod-yang-module-versioning and > >>> draft-ietf-netmod-yang-semver arrive). Are there resources you can > >>> recommend? > >>> > >>> thanks, > >>> Amanda > >>> > >>> On Thu Nov 23 07:39:39 2023, mbj+ietf@4668.se wrote: > >>>> Ladislav Lhotka <ladislav.lhotka@nic.cz> wrote: > >>>>> Dne 22. 11. 23 v 11:24 Martin Björklund napsal(a): > >>>>>> Hi, > >>>>>> Ladislav Lhotka <ladislav.lhotka=40nic.cz@dmarc.ietf.org> > >>>>>> wrote: > >>>>>>> Hi Amanda, > >>>>>>> > >>>>>>> "Amanda Baber via RT" <iana-issues@iana.org> writes: > >>>>>>> > >>>>>>>> Hi, > >>>>>>>> > >>>>>>>> We came across an issue when attempting to validate RFC > >>>>>>>> 9403's > >>>>>>>> ietf-rib-extension@2023-11-20.yang module before posting. > >>>>>>>> > >>>>>>>> That module refers to iana-routing-types@2022-08-19.yang, and > >>>>>>>> pyang is > >>>>>>>> refusing to validate it on the grounds that > >>>>>>>> iana-routing-types@2022-08-19.yang doesn't have references > >>>>>>>> for > >>>>>>>> its > >>>>>>>> revision statements. (Which it indeed does not.) > >>>>>>>> > >>>>>>>> However, if we try to validate iana-routing-types@2022-08- > >>>>>>>> 19.yang > >>>>>>>> directly, we don't get any errors. > >>>>>>>> > >>>>>>>> Which pyang reaction is correct? > >>>>>> When I validate this module directly with pyang, I get the > >>>>>> errors: > >>>>>> $ pyang --ietf iana-routing-types@2022-08-19.yang > >>>>>> iana-routing-types@2022-08-19.yang:35: error: RFC 8407: 4.8: > >>>>>> statement > >>>>>> "revision" must have a "reference" substatement > >>>>>> ... > >>>>>> > >>>>>>> > >>>>>>> RFC 8407 states in sec. 4.8: > >>>>>>> > >>>>>>> The "revision" statement MUST have a "reference" substatement. > >>>>>>> > >>>>>>> The module description refers to RFC 8294 though, and I am not > >>>>>>> sure > >>>>>>> how this particular module is updated and whether there is > >>>>>>> always > >>>>>>> a > >>>>>>> relevant reference available for a given revision. > >>>>>>> > >>>>>>>> > >>>>>>>> One larger issue is that we weren't aware that we needed to > >>>>>>>> add > >>>>>>>> references for revision statements in the IANA-maintained > >>>>>>>> modules. We > >>>>>>>> have no expertise in YANG and have been relying entirely on > >>>>>>>> validation > >>>>>>>> tools (and on IANA Considerations sections for registry > >>>>>>>> maintenance > >>>>>>>> instructions in general). > >>>>>>>> > >>>>>>>> Should we go back and add references to revision statements > >>>>>>>> for > >>>>>>>> all > >>>>>>>> the IANA-maintained modules? > >>>>>>> > >>>>>>> This could lead to problems with versioning of modules. > >>>>>>> > >>>>>>>> > >>>>>>>> Do we need to do so only going forward? > >>>>>>> > >>>>>>> I'd suggest to add reference statements to future > >>>>>>> (substantial) > >>>>>>> revisions of modules, perhaps even retroactively, but only > >>>>>>> where > >>>>>>> it > >>>>>>> makes sense. > >>>>>>> > >>>>>>>> > >>>>>>>> Either way, we have two questions: > >>>>>>>> > >>>>>>>> 1) Many of the registries mirrored by the IANA-maintained > >>>>>>>> modules > >>>>>>>> have > >>>>>>>> First Come First Served or Expert Review ranges that don't > >>>>>>>> require > >>>>>>>> that the applicant provide a specification. For those > >>>>>>>> registrations, > >>>>>>>> we list the name of a contact person in the registry's > >>>>>>>> "Reference" > >>>>>>>> field. In the module, would we continue to omit the reference > >>>>>>>> field? > >>>>>>> > >>>>>>> If there is no suitable document to refer to, it makes no > >>>>>>> sense to > >>>>>>> me > >>>>>>> to add any stub references. RFC 8407 is IMO unnecesarily > >>>>>>> strict > >>>>>>> here, > >>>>>>> and a SHOULD might suffice. > >>>>>> The full text in RFC 8407 is: > >>>>>> A "revision" statement MUST be present for each published > >>>>>> version of > >>>>>> the module. The "revision" statement MUST have a > >>>>>> "reference" > >>>>>> substatement. It MUST identify the published document that > >>>>>> contains > >>>>>> the module. > >>>>>> In this case, there really isn't any "published document" - the > >>>>>> module > >>>>>> is published directly on the web. One option could be to add > >>>>>> the > >>>>>> URL > >>>>>> to the module in "reference". The motivation for the rule is: > >>>>> > >>>>> Right, but this link to the authoritative registry page belongs > >>>>> to > >>>>> the > >>>>> "reference" statement that is a direct substatement of "module" > >>>>> (see > >>>>> e.g. [1]). The problem here is that RFC 8407 requires *every* > >>>>> "revision" statement to contain "reference". > >>>>> > >>>>> Lada > >>>>> > >>>>> [1] > >>>>> https://www.iana.org/assignments/iana-dns-class-rr-type/iana-dns- > >>>>> class-rr-type.xhtml > >>>> > >>>> In this example, the module's "reference" is > >>>> > >>>> https://www.iana.org/assignments/dns-parameters > >>>> > >>>> > >>>> > >>>> I was thinking the revision's "reference" could be > >>>> > >>>> https://www.iana.org/assignments/iana-dns-class-rr-type/iana-dns- > >>>> class-rr-type.xhtml > >>>> > >>>> or even > >>>> > >>>> https://www.iana.org/assignments/yang-parameters/iana-dns-class- > >>>> rr- > >>>> type@2023-11-08.yang > >>>> > >>>> > >>>> > >>>> /martin > >>>> > >>>> > >>>> > >>>>> > >>>>>> Modules are often extracted from their original > >>>>>> documents, and it is useful for developers and operators to > >>>>>> know > >>>>>> how > >>>>>> to find the original source document in a consistent manner. > >>>>>> So the URL would help for this. > >>>>>> Side note. In the description of the module it says: > >>>>>> This version of this YANG module is part of RFC 8294; see > >>>>>> the RFC itself for full legal notices."; > >>>>>> This isn't true... Should IANA change the description of the > >>>>>> module > >>>>>> when it updates the module? Perhaps to: > >>>>>> This original version of this YANG module is part of RFC > >>>>>> 8294; > >>>>>> see > >>>>>> the RFC itself for full legal notices."; > >>>>>> /martin > >>>>>> > >>>>>>> > >>>>>>>> > >>>>>>>> 2) When we need to correct an IANA-maintained module, in the > >>>>>>>> absence > >>>>>>>> of a document to refer to, what can we do to make the > >>>>>>>> revision > >>>>>>>> statement valid? > >>>>>>> > >>>>>>> I'd say yes. > >>>>>>> > >>>>>>> Best regards, Lada > >>>>>>> > >>>>>>>> > >>>>>>>> Best regards, > >>>>>>>> > >>>>>>>> Amanda Baber > >>>>>>>> IANA Operations Manager > >>>>>>>> > >>>>>>>> _______________________________________________ > >>>>>>>> yang-doctors mailing list > >>>>>>>> yang-doctors@ietf.org > >>>>>>>> https://www.ietf.org/mailman/listinfo/yang-doctors > >>>>>>> > >>>>>>> -- > >>>>>>> Ladislav Lhotka, CZ.NIC > >>>>>>> PGP Key ID: 0xB8F92B08A9F76C67 > >>>>>>> > >>>>>>> _______________________________________________ > >>>>>>> yang-doctors mailing list > >>>>>>> yang-doctors@ietf.org > >>>>>>> https://www.ietf.org/mailman/listinfo/yang-doctors > >>>>> > >>>>> -- > >>>>> Ladislav Lhotka, CZ.NIC > >>>>> PGP Key ID: 0xB8F92B08A9F76C67 > >>> > >>> _______________________________________________ > >>> yang-doctors mailing list > >>> yang-doctors@ietf.org > >>> https://www.ietf.org/mailman/listinfo/yang-doctors > > > > _______________________________________________ > > yang-doctors mailing list > > yang-doctors@ietf.org > > https://www.ietf.org/mailman/listinfo/yang-doctors
- [yang-doctors] [IANA #1289473] Revision statement… Amanda Baber via RT
- Re: [yang-doctors] [IANA #1289473] Revision state… Ladislav Lhotka
- Re: [yang-doctors] [IANA #1289473] Revision state… Martin Björklund
- Re: [yang-doctors] [IANA #1289473] Revision state… Ladislav Lhotka
- Re: [yang-doctors] [IANA #1289473] Revision state… Martin Björklund
- [yang-doctors] [IANA #1289473] Revision statement… Amanda Baber via RT
- Re: [yang-doctors] [IANA #1289473] Revision state… Martin Björklund
- [yang-doctors] [IANA #1289473] Revision statement… Amanda Baber via RT
- Re: [yang-doctors] [IANA #1289473] Revision state… Ladislav Lhotka
- Re: [yang-doctors] [IANA #1289473] Revision state… Acee Lindem
- Re: [yang-doctors] [IANA #1289473] Revision state… Mahesh Jethanandani
- [yang-doctors] [IANA #1289473] Revision statement… Amanda Baber via RT