Re: [netmod] [Technical Errata Reported] RFC7950 (6855)

Andy Bierman <andy@yumaworks.com> Mon, 28 February 2022 19:05 UTC

Return-Path: <andy@yumaworks.com>
X-Original-To: netmod@ietfa.amsl.com
Delivered-To: netmod@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 2C7663A13F0 for <netmod@ietfa.amsl.com>; Mon, 28 Feb 2022 11:05:59 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.896
X-Spam-Level:
X-Spam-Status: No, score=-1.896 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_BLOCKED=0.001, SPF_HELO_NONE=0.001, T_SCC_BODY_TEXT_LINE=-0.01, 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=yumaworks-com.20210112.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 zMdugcAHHdIw for <netmod@ietfa.amsl.com>; Mon, 28 Feb 2022 11:05:53 -0800 (PST)
Received: from mail-yw1-x112d.google.com (mail-yw1-x112d.google.com [IPv6:2607:f8b0:4864:20::112d]) (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 E420A3A13F2 for <netmod@ietf.org>; Mon, 28 Feb 2022 11:05:52 -0800 (PST)
Received: by mail-yw1-x112d.google.com with SMTP id 00721157ae682-2d6d0cb5da4so119684067b3.10 for <netmod@ietf.org>; Mon, 28 Feb 2022 11:05:52 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20210112.gappssmtp.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to; bh=bdcC+OmsgJrV0EtwMzMy6ZuR4a+7Fyz+QvDEMMnFXDI=; b=1RjotkJbG32H4bpQJTm4jpfLOTwh8fuCvtRLTZXOcZfcB4SFrw2eEOPeCYsk+kXe04 i7AYFKFfs4tB/L1J9eRNnAdZk5zGXJHCuNxWf2mWIOtohiLMZSTONWYg8iBk3lB+34sZ 2eDiJXN/00nYAV2XmvAyh7PyLJlPun1VKpRE3bqAly3pIcLok7zAlGS+oHE3wonOQAJ9 sx34Rs3wx1cufe6y7vtB0GOw8d7jtlOykhpHvfu1htDgC2sEtCvf/yVsRsQBIQT43Klm lVa+nwgPt8jf5XzQLxn26XLC23ZXI77vySYJUGHB4LjP62dzrAn7pvftXtvlX4esZzk2 kINQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=bdcC+OmsgJrV0EtwMzMy6ZuR4a+7Fyz+QvDEMMnFXDI=; b=FdTYPiaMyWmK1jVQskfRh6tYTpL6Rn0PqTui6/mSdHJRPwlF12km3CUm0OIyX+VDH9 z3NMz4gn2GThDyaH3iPASRNfjA/cg5QcgVqkjJgmve8dgz9NUQFEhO4DgBAQnOEqYI3D MjvfIG0VwrRrDyJZGtNM599bpbEg4bWDjTjR6eNgnAyb4LQJFIMo+vbDJSlzpo7gXzqF 33QtMCDUaaepynpHMo0MKkOGCCqKdsy8auw9t4LUzY7O7zXGG3Z2uCXuGaAGW5HLlAHY sbbThx7PbgPWhfhjvcyJA9iserTffSgVjaHTOL8DlRweRqqjMRTA10IMKtCO5H0KVkt0 lp+Q==
X-Gm-Message-State: AOAM531ON7Hr9SQ+XevhDDXVZKfhoR/yOpZHFX4C/reuQmC3AFrBiM8t 54bgVYKKQ//QTPCW7JhMXAp7FNQ9gynN5LBMJGDIa+RhNeE=
X-Google-Smtp-Source: ABdhPJwakZZI4HOscvwG5tDl64LfIYUtRKeXzbZgVsPLqzrhI2NXbT1H0bgiTnAPp4LLHXgGekKP/Ljwsr5PhEsrXN4=
X-Received: by 2002:a81:a842:0:b0:2db:562a:3f13 with SMTP id f63-20020a81a842000000b002db562a3f13mr9888652ywh.322.1646075151110; Mon, 28 Feb 2022 11:05:51 -0800 (PST)
MIME-Version: 1.0
References: <e03ebb9b-b166-4ecc-8fee-5d03752cdfa1@alumni.stanford.edu> <0100017f21f721f0-5e68776b-2836-4e20-8f83-ffbea5993a95-000000@email.amazonses.com> <BY5PR11MB41969DF671A9880073812422B53B9@BY5PR11MB4196.namprd11.prod.outlook.com> <26F9C810-C637-4D07-A2BA-40873D11C23F@att.com> <DM6PR08MB5084642053B62B904FE70B289B3E9@DM6PR08MB5084.namprd08.prod.outlook.com> <CABCOCHRmF=in9AvXfS=-VM7-XDTUJDpA_pTDvX501Ahf+pbdLw@mail.gmail.com> <BY5PR11MB419603E516D40F4E661F27A0B53E9@BY5PR11MB4196.namprd11.prod.outlook.com> <DM6PR08MB5084502D0D76331A6DCFB1BF9B3E9@DM6PR08MB5084.namprd08.prod.outlook.com> <40DDF107-3C45-4871-9FCB-411EF3E33580@att.com> <DM6PR08MB508471EE519C5BE6C8A7DAF59B019@DM6PR08MB5084.namprd08.prod.outlook.com> <20220228185306.fr4xpjiwp6dnhlcj@anna>
In-Reply-To: <20220228185306.fr4xpjiwp6dnhlcj@anna>
From: Andy Bierman <andy@yumaworks.com>
Date: Mon, 28 Feb 2022 11:05:40 -0800
Message-ID: <CABCOCHQ6SdDxTxXvG77aWC+CDsi6W_2CkiH-TDfhxBT6PvxT8A@mail.gmail.com>
To: Jürgen Schönwälder <j.schoenwaelder@jacobs-university.de>, "Sterne, Jason (Nokia - CA/Ottawa)" <jason.sterne@nokia.com>, "SADOVNIKOV, ALEXEI" <AS549R@att.com>, "Rob Wilton (rwilton)" <rwilton@cisco.com>, Andy Bierman <andy@yumaworks.com>, "mbj@tail-f.com" <mbj@tail-f.com>, "warren@kumari.net" <warren@kumari.net>, "netmod@ietf.org" <netmod@ietf.org>, RFC Errata System <rfc-editor@rfc-editor.org>
Content-Type: multipart/alternative; boundary="000000000000a7e77e05d918bc85"
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/kvuUHMj_KYv__jaHDqB7kB__PRQ>
Subject: Re: [netmod] [Technical Errata Reported] RFC7950 (6855)
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: NETMOD WG list <netmod.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/netmod>, <mailto:netmod-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/netmod/>
List-Post: <mailto:netmod@ietf.org>
List-Help: <mailto:netmod-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netmod>, <mailto:netmod-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 28 Feb 2022 19:05:59 -0000

On Mon, Feb 28, 2022 at 10:53 AM Jürgen Schönwälder <
j.schoenwaelder@jacobs-university.de> wrote:

> RFC 7950 defines the ordering rules for the XML serialization of YANG
> data (and it does not really matter what other uses of XML require). A
> rough summary is that XML serializations of data trees are generally
> unordered except that elements representing lists have to follow the
> list ordering rules and that keys of list elements come first and in
> the order they keys are defined.
>
>
- ordered-by user
- rpc input
- rpc output
- action input
- action output


A lot of text in RFC 7950 about it.


/js
>
> On Mon, Feb 28, 2022 at 06:42:56PM +0000, Sterne, Jason (Nokia -
> CA/Ottawa) wrote:
> > Thx.  I probably went too far in my statement about XML documents being
> unordered. But isn't it true that for YANG modelled data, the order of the
> XML *shouldn't* matter ?  It should ideally be processed atomically (i.e.
> after being fully processed/loaded it should be non-ambiguous if you
> assumed every statement was applied at the same instant) ?
> >
> > Some examples:
> > - a YANG container shouldn't appear twice in a single edit-config (i.e.
> shouldn't re-enter a container in the same edit)
> > - a delete of a leaf, and a modification of a value of that leaf,
> shouldn't be in the same edit-config  (i.e. don't just rely on the order of
> the XML to resolve that ambiguity).
> >
> > Jason
> >
> > From: SADOVNIKOV, ALEXEI <AS549R@att.com>
> > Sent: Friday, February 25, 2022 4:15 PM
> > To: Sterne, Jason (Nokia - CA/Ottawa) <jason.sterne@nokia.com>; Rob
> Wilton (rwilton) <rwilton@cisco.com>; Andy Bierman <andy@yumaworks.com>
> > Cc: Kent Watsen <kent+ietf@watsen.net>; mbj@tail-f.com;
> warren@kumari.net; netmod@ietf.org; RFC Errata System <
> rfc-editor@rfc-editor.org>
> > Subject: Re: [netmod] [Technical Errata Reported] RFC7950 (6855)
> >
> > Jason,
> >
> > XML is definitively ordered, e.g. elements flow in a document order, and
> two XML documents with different order of elements are not equivalent.  In
> contrast, same order does not exist in JSON.
> >
> > It is very different discussion if ordering of XML is helpful,
> especially in presence of non-ordered JSON.  IMO the ordering of XML was
> never helpful to begin with, except to internals of some implementations,
> and if implementation is extended to support JSON encoding, the XML
> ordering is an overhead exercise of RFC 7950 compliance, with not much of
> other benefit.
> >
> > Best regards,
> >
> > Alexei Sadovnikov
> > Principal System Architect
> > Business Solutions
> > AT&T Business
> >
> > AT&T Services, Inc.
> > 550 Cochituate Road, Framingham, MA 01701
> > m  781.249.1516 |  o  781.249.1516 |  as549r@att.com<mailto:
> as549r@att.com>
> >
> > This e-mail and any files transmitted with it are AT&T property, are
> confidential, and are intended solely for the use of the individual or
> entity to whom this e-mail is addressed. If you are not one of the named
> recipient(s),  or otherwise have reason to believe that you have received
> this message in error, please notify the sender and delete this message
> immediately from your computer. Any other use, retention, dissemination,
> forwarding, printing, or copying of this e-mail is strictly prohibited.
> >
> >
> >
> > From: "Sterne, Jason (Nokia - CA/Ottawa)" <jason.sterne@nokia.com
> <mailto:jason.sterne@nokia.com>>
> > Date: Friday, February 25, 2022 at 1:30 PM
> > To: "Rob Wilton (rwilton)" <rwilton@cisco.com<mailto:rwilton@cisco.com>>,
> Andy Bierman <andy@yumaworks.com<mailto:andy@yumaworks.com>>
> > Cc: as549r <AS549R@att.com<mailto:AS549R@att.com>>, Kent Watsen <
> kent+ietf@watsen.net<mailto:kent+ietf@watsen.net>>, "mbj@tail-f.com
> <mailto:mbj@tail-f.com>" <mbj@tail-f.com<mailto:mbj@tail-f.com>>, "
> warren@kumari.net<mailto:warren@kumari.net>" <warren@kumari.net<mailto:
> warren@kumari.net>>, "netmod@ietf.org<mailto:netmod@ietf.org>" <
> netmod@ietf.org<mailto:netmod@ietf.org>>, RFC Errata System <
> rfc-editor@rfc-editor.org<mailto:rfc-editor@rfc-editor.org>>
> > Subject: RE: [netmod] [Technical Errata Reported] RFC7950 (6855)
> >
> > Thx for the note about JSON IETF.
> >
> > I had generally thought of XML documents as also being "fundamentally
> unordered collections of members" as well but I must admit I'm not an
> expert in the subtleties of XML.
> >
> > Jason
> >
> > From: Rob Wilton (rwilton) <rwilton@cisco.com<mailto:rwilton@cisco.com>>
> > Sent: Friday, February 25, 2022 1:20 PM
> > To: Andy Bierman <andy@yumaworks.com<mailto:andy@yumaworks.com>>;
> Sterne, Jason (Nokia - CA/Ottawa) <jason.sterne@nokia.com<mailto:
> jason.sterne@nokia.com>>
> > Cc: SADOVNIKOV, ALEXEI <AS549R@att.com<mailto:AS549R@att.com>>; Kent
> Watsen <kent+ietf@watsen.net<mailto:kent+ietf@watsen.net>>; mbj@tail-f.com
> <mailto:mbj@tail-f.com>; warren@kumari.net<mailto:warren@kumari.net>;
> netmod@ietf.org<mailto:netmod@ietf.org>; RFC Errata System <
> rfc-editor@rfc-editor.org<mailto:rfc-editor@rfc-editor.org>>
> > Subject: RE: [netmod] [Technical Errata Reported] RFC7950 (6855)
> >
> > // As a contributor
> >
> > I agree with Andy, and personally, I’ve never found this text to be
> confusing.
> >
> > Note, if encoded as JSON, then as per RFC 7951 section 5.4, the list
> elements can be in any order, because JSON objects are unordered.
> Although, I would probably still return the keys first, even if the client
> is not allowed to rely on them being first/ordered.
> >
> > Rob
> >
> >
> >
> > From: Andy Bierman <andy@yumaworks.com<mailto:andy@yumaworks.com>>
> > Sent: 25 February 2022 16:39
> > To: Sterne, Jason (Nokia - CA/Ottawa) <jason.sterne@nokia.com<mailto:
> jason.sterne@nokia.com>>
> > Cc: SADOVNIKOV, ALEXEI <AS549R@att.com<mailto:AS549R@att.com>>; Rob
> Wilton (rwilton) <rwilton@cisco.com<mailto:rwilton@cisco.com>>; Kent
> Watsen <kent+ietf@watsen.net<mailto:kent+ietf@watsen.net>>; mbj@tail-f.com
> <mailto:mbj@tail-f.com>; warren@kumari.net<mailto:warren@kumari.net>;
> netmod@ietf.org<mailto:netmod@ietf.org>; RFC Errata System <
> rfc-editor@rfc-editor.org<mailto:rfc-editor@rfc-editor.org>>
> > Subject: Re: [netmod] [Technical Errata Reported] RFC7950 (6855)
> >
> >
> >
> > On Fri, Feb 25, 2022 at 8:21 AM Sterne, Jason (Nokia - CA/Ottawa) <
> jason.sterne@nokia.com<mailto:jason.sterne@nokia.com>> wrote:
> > Hi all,
> >
> > There is an interesting consequence of the wording for lists.
> >
> > >     The list's key nodes are encoded as subelements to the list's
> > >     identifier element, in the same order as they are defined within
> the
> > >     "key" statement.
> > >
> > >     The rest of the list's child nodes are encoded as subelements to
> the
> > >     list element, after the keys.  If the list defines RPC or action
> > >     input or output parameters, the subelements are encoded in the same
> > >     order as they are defined within the "list" statement.  Otherwise,
> > >     the subelements are encoded in any order.
> >
> > The first paragraph says the key nodes are encoded in the same order as
> the key statement.  But then the 2nd paragraph says the subelements are
> encoded in the order they are defined.  But it isn't super-clear if that
> entire second paragraph only applies to the "rest of the" nodes (i.e. not
> the keys). The last sentence seems to apply to the keys as well (outside of
> an RPC/action input/output).
> >
> >
> >
> > It seems clear to me that the 2nd paragraph is about the rest of the
> list's child nodes.
> >
> >
> > I believe it is legal to define a YANG list that has a different order
> for the items in the "key" element than in the definition of the key leafs
> right ?  For example:
> >
> > list foo {
> >     key "key-1 key-2 key-3"
> >     leaf key-1 { … }
> >     leaf key-3 { … }
> >     leaf key-2 { … }
> >     leaf some-other-leaf-a
> >     leaf some-other-leaf-b
> > }
> > [not that I'd recommend modelling like that]
> >
> >
> > this is legal and sometimes used.
> >
> >
> > Is it clear enough that the encoding order of the subelements matching
> the YANG-order only applies to the elements *besides* the keys ?
> >
> >
> > yes
> >
> > It is interesting that there is a small inconsistency here. Looking
> purely at the order of the leafs won't match the XML encoding for key leafs.
> >
> > i.e. maybe some implementations will order the XML this way (doesn't
> match the order of *all* leafs):
> >                 <key-1>…
> >                 <key-2>…
> >                 <key-3>…
> >                 <some-other-leaf-a>…
> >                 <some-other-leaf-b>…
> >
> >
> > The text is clear that the keys go first in the order specified in the
> key-stmt.
> >
> >
> > and might some do this (matches the order of *all* leafs, but then
> contradicts the first paragraph):
> >                 <key-1>…
> >                 <key-3>…
> >                 <key-2>…
> >                 <some-other-leaf-a>…
> >                 <some-other-leaf-b>…
> >
> > Jason
> >
> >
> >
> > Andy
> >
> >
> > From: netmod <netmod-bounces@ietf.org<mailto:netmod-bounces@ietf.org>>
> On Behalf Of SADOVNIKOV, ALEXEI
> > Sent: Tuesday, February 22, 2022 11:28 AM
> > To: Rob Wilton (rwilton) <rwilton@cisco.com<mailto:rwilton@cisco.com>>;
> Kent Watsen <kent+ietf@watsen.net<mailto:kent%2Bietf@watsen.net>>
> > Cc: mbj@tail-f.com<mailto:mbj@tail-f.com>; netmod@ietf.org<mailto:
> netmod@ietf.org>; warren@kumari.net<mailto:warren@kumari.net>; RFC Errata
> System <rfc-editor@rfc-editor.org<mailto:rfc-editor@rfc-editor.org>>
> > Subject: Re: [netmod] [Technical Errata Reported] RFC7950 (6855)
> >
> > Thank you, Rob.
> >
> > Best regards,
> >
> > Alexei Sadovnikov
> > Principal System Architect
> > Business Solutions
> > AT&T Business
> >
> > AT&T Services, Inc.
> > 550 Cochituate Road, Framingham, MA 01701
> > m  781.249.1516 |  o  781.249.1516 |  as549r@att.com<mailto:
> as549r@att.com>
> >
> > This e-mail and any files transmitted with it are AT&T property, are
> confidential, and are intended solely for the use of the individual or
> entity to whom this e-mail is addressed. If you are not one of the named
> recipient(s),  or otherwise have reason to believe that you have received
> this message in error, please notify the sender and delete this message
> immediately from your computer. Any other use, retention, dissemination,
> forwarding, printing, or copying of this e-mail is strictly prohibited.
> >
> >
> >
> > From: "Rob Wilton (rwilton)" <rwilton@cisco.com<mailto:rwilton@cisco.com
> >>
> > Date: Tuesday, February 22, 2022 at 10:21 AM
> > To: Kent Watsen <kent+ietf@watsen.net<mailto:kent+ietf@watsen.net>>,
> as549r <AS549R@att.com<mailto:AS549R@att.com>>
> > Cc: RFC Errata System <rfc-editor@rfc-editor.org<mailto:
> rfc-editor@rfc-editor.org>>, "mbj@tail-f.com<mailto:mbj@tail-f.com>" <
> mbj@tail-f.com<mailto:mbj@tail-f.com>>, "warren@kumari.net<mailto:
> warren@kumari.net>" <warren@kumari.net<mailto:warren@kumari.net>>, Joel
> Jaeggli <joelja@bogus.com<mailto:joelja@bogus.com>>, Lou Berger <
> lberger@labn.net<mailto:lberger@labn.net>>, Randy Presuhn <
> randy_presuhn@alumni.stanford.edu<mailto:randy_presuhn@alumni.stanford.edu>>,
> "netmod@ietf.org<mailto:netmod@ietf.org>" <netmod@ietf.org<mailto:
> netmod@ietf.org>>
> > Subject: RE: [netmod] [Technical Errata Reported] RFC7950 (6855)
> >
> > Hi,
> >
> > I basically agree with Kent, Randy, Andy.
> >
> > Alexi,
> >
> > Thanks for flagging this, and the subsequent discussion.
> >
> > I can see your point of view that MUST is used in other similar places,
> and I'm sure that in hindsight it would be nice if the language was used
> consistently in equivalent places.
> >
> > However, I don't think that the lack of a MUST statement makes the other
> text any less normative, or ambiguous.  In particular, there is this
> paragraph of RFC 8174 that updates RFC 2119:
> >
> >    o  These words can be used as defined here, but using them is not
> >       required.  Specifically, normative text does not require the use
> >       of these key words.  They are used for clarity and consistency
> >       when that is what's wanted, but a lot of normative text does not
> >       use them and is still normative.
> >
> > Hence, I have rejected this errata.  If you find the current text to be
> confusing and think that it would be helpful to clarify this is a future
> version of this specification, then I would suggest that you open an issue
> here (
> https://urldefense.com/v3/__https://github.com/netmod-wg/yang-next/issues__;!!BhdT!nBhCe6YCJpOtCnmFwZ1oBRjxufTDTet131D2wG3sxyq6mSUshsyDWQzcIrvGvVlRg4l8NnqjPk8x$
> <
> https://urldefense.com/v3/__https:/github.com/netmod-wg/yang-next/issues__;!!BhdT!nBhCe6YCJpOtCnmFwZ1oBRjxufTDTet131D2wG3sxyq6mSUshsyDWQzcIrvGvVlRg4l8NnqjPk8x$>
> ), and it will get evaluated when we get to revising YANG.
> >
> > Regards,
> > Rob
> >
> >
> > -----Original Message-----
> > From: Kent Watsen <kent+ietf@watsen.net<mailto:kent+ietf@watsen.net>>
> > Sent: 22 February 2022 15:05
> > To: Rob Wilton (rwilton) <rwilton@cisco.com<mailto:rwilton@cisco.com>>
> > Cc: SADOVNIKOV, ALEXEI <AS549R@att.com<mailto:AS549R@att.com>>; RFC
> Errata System <rfc-editor@rfc-editor.org<mailto:rfc-editor@rfc-editor.org>>;
> mbj@tail-f.com<mailto:mbj@tail-f.com>; warren@kumari.net<mailto:
> warren@kumari.net>; Joel Jaeggli <joelja@bogus.com<mailto:joelja@bogus.com>>;
> Lou Berger <lberger@labn.net<mailto:lberger@labn.net>>; Randy Presuhn <
> randy_presuhn@alumni.stanford.edu<mailto:randy_presuhn@alumni.stanford.edu>>;
> netmod@ietf.org<mailto:netmod@ietf.org>
> > Subject: Re: [netmod] [Technical Errata Reported] RFC7950 (6855)
> >
> > Move to close this Errata without accepting it.
> >
> > Kent  // as co-chair
> >
> >
> >
> > On Feb 17, 2022, at 5:53 PM, Randy Presuhn <
> randy_presuhn@alumni.stanford.edu<mailto:randy_presuhn@alumni.stanford.edu>>
> wrote:
> >
> > Hi -
> >
> > On 2022-02-17 1:01 PM, SADOVNIKOV, ALEXEI wrote:
> > Randy,
> > I definitively see that point, and the line of sparing usage can be
> somewhat subjective.
> > In this case, I think use of “MUST” is justified RFC 2119 “actually
> required for interoperation or to limit behavior which has potential for
> causing harm”.
> > Missing “MUST” statement does leave it open for interpretation, and
> >
> > That is simply not true.  The existing text, e.g. "If the container
> > defines RPC or action input or output parameters, these subelements
> > are encoded in the same order as they are defined within the
> > 'container' statement"  leaves no room whatsoever for interpretation.
> >
> > misinterpretation will result in harm – XML payload which encapsulated
> without following these ordering rule can be rejected during decapsulation
> which does follow the rule.  The XML payload is exchanged between client
> and server, often different implementations, hence different interpretation
> by different developers will lead to communication failure.
> >
> > The existing text is unambiguous, and provides no options in ordering.
> >
> > As such, I do not see how proposed errata is at odds with sparing usage
> provision, when it meets the described reason for usage.
> > In other sections of this RFC (7.7.8., 7.8.5. and 7.9.5) “MUST” already
> used for same purpose; it is difficult to see how it is any more important
> in where ‘MUST’ is used vs to where it is not.
> > Having said all that, the suggested errata can be reduced to exclude
> section 7.5.7 and second paragraph of 7.8.5 – in both of this cases the
> exact meaning can be referred from section 7.14.4 (as long as “MUST” is
> present in there).  Would that resolve your concern of sparing usage?
> >
> > Such text-diddling seems utterly pointless to me.
> >
> > Randy
> >
> > --------------------
> > Best regards,
> > *Alexei Sadovnikov*
> > Principal System Architect
> > Business Solutions
> > AT&T Business
> > *AT&T Services, Inc.*
> > 550 Cochituate Road, Framingham, MA 01701
> > m  781.249.1516 |  o  781.249.1516 | _as549r@att.com<mailto:_
> as549r@att.com> <mailto:as549r@att.com>_<mailto:as549r@att.com%3e_>
> > This e-mail and any files transmitted with it are AT&T property, are
> confidential, and are intended solely for the use of the individual or
> entity to whom this e-mail is addressed. If you are not one of the named
> recipient(s),  or otherwise have reason to believe that you have received
> this message in error, please notify the sender and delete this message
> immediately from your computer. Any other use, retention, dissemination,
> forwarding, printing, or copying of this e-mail is strictly prohibited.
> > *From: *Randy Presuhn <randy_presuhn@alumni.stanford.edu<mailto:
> randy_presuhn@alumni.stanford.edu>>
> > *Date: *Thursday, February 17, 2022 at 2:55 PM
> > *To: *RFC Errata System <rfc-editor@rfc-editor.org<mailto:
> rfc-editor@rfc-editor.org>>, "mbj@tail-f.com<mailto:mbj@tail-f.com>" <
> mbj@tail-f.com<mailto:mbj@tail-f.com>>, "warren@kumari.net<mailto:
> warren@kumari.net>" <warren@kumari.net<mailto:warren@kumari.net>>, "
> rwilton@cisco.com<mailto:rwilton@cisco.com>" <rwilton@cisco.com<mailto:
> rwilton@cisco.com>>, "joelja@bogus.com<mailto:joelja@bogus.com>" <
> joelja@bogus.com<mailto:joelja@bogus.com>>, "kent+ietf@watsen.net<mailto:
> kent+ietf@watsen.net>" <kent+ietf@watsen.net<mailto:kent+ietf@watsen.net>>,
> "lberger@labn.net<mailto:lberger@labn.net>" <lberger@labn.net<mailto:
> lberger@labn.net>>
> > *Cc: *as549r <AS549R@att.com<mailto:AS549R@att.com>>, "netmod@ietf.org
> <mailto:netmod@ietf.org>" <netmod@ietf.org<mailto:netmod@ietf.org>>
> > *Subject: *Re: [netmod] [Technical Errata Reported] RFC7950 (6855)
> > Hi -
> > This seems like a remarkably pointless change, and arguably
> > at odds with section 6 of RFC 2119. ("Imperatives of the type
> > defined in this memo must be used with care and sparingly.")
> > Randy
> > On 2022-02-17 10:50 AM, RFC Errata System wrote:
> > > The following errata report has been submitted for RFC7950,
> > > "The YANG 1.1 Data Modeling Language".
> > >
> > > --------------------------------------
> > > You may review the report below and at:
> > >
> https://urldefense.com/v3/__https://www.rfc-editor.org/errata/eid6855__;!!BhdT!gZbsQDBeTveBJPSYBpHQOJS8wjZSUsguzZ6KwXq4NAiJ1cAOZgcko9_3wb4pLOxeGCFKcQFoi9XajHOG-NeqWtpDMmnMUI4$
> <
> https://urldefense.com/v3/__https:/www.rfc-editor.org/errata/eid6855__;!!BhdT!gZbsQDBeTveBJPSYBpHQOJS8wjZSUsguzZ6KwXq4NAiJ1cAOZgcko9_3wb4pLOxeGCFKcQFoi9XajHOG-NeqWtpDMmnMUI4$>
> <
> https://urldefense.com/v3/__https:/www.rfc-editor.org/errata/eid6855__;!!BhdT!gZbsQDBeTveBJPSYBpHQOJS8wjZSUsguzZ6KwXq4NAiJ1cAOZgcko9_3wb4pLOxeGCFKcQFoi9XajHOG-NeqWtpDMmnMUI4$>
> >
> > > --------------------------------------
> > > Type: Technical
> > > Reported by: Alexei Sadovnikov <as549r@att.com<mailto:as549r@att.com>
> <mailto:as549r@att.com><mailto:as549r@att.com%3e>>
> > >
> > > Section: GLOBAL
> > >
> > > Original Text
> > > -------------
> > > 7.5.  The "container" Statement
> > > 7.5.7.  XML Encoding Rules
> > >
> > >     A container node is encoded as an XML element.  The element's local
> > >     name is the container's identifier, and its namespace is the
> module's
> > >     XML namespace (see Section 7.1.3).
> > >
> > >     The container's child nodes are encoded as subelements to the
> > >     container element.  If the container defines RPC or action input or
> > >     output parameters, these subelements are encoded in the same order
> as
> > >     they are defined within the "container" statement.  Otherwise, the
> > >     subelements are encoded in any order.
> > >
> > > 7.8. The "list" Statement
> > > 7.8.5.  XML Encoding Rules
> > >
> > >     The list's key nodes are encoded as subelements to the list's
> > >     identifier element, in the same order as they are defined within
> the
> > >     "key" statement.
> > >
> > >     The rest of the list's child nodes are encoded as subelements to
> the
> > >     list element, after the keys.  If the list defines RPC or action
> > >     input or output parameters, the subelements are encoded in the same
> > >     order as they are defined within the "list" statement.  Otherwise,
> > >     the subelements are encoded in any order.
> > >     . . . . .
> > >
> > > 7.14.  The "rpc" Statement
> > > 7.14.4.  NETCONF XML Encoding Rules
> > >
> > >     . . . . .
> > >
> > >     Input parameters are encoded as child XML elements to the rpc
> node's
> > >     XML element, in the same order as they are defined within the
> "input"
> > >     statement.
> > >
> > >     If the RPC operation invocation succeeded and no output parameters
> > >     are returned, the <rpc-reply> contains a single <ok/> element
> defined
> > >     in [RFC6241].  If output parameters are returned, they are encoded
> as
> > >     child elements to the <rpc-reply> element defined in [RFC6241], in
> > >     the same order as they are defined within the "output" statement.
> > >
> > >
> > > 7.15.  The "action" Statement
> > > 7.15.2.  NETCONF XML Encoding Rules
> > >
> > >     . . . . .
> > >
> > >     The <action> element contains a hierarchy of nodes that identifies
> > >     the node in the datastore.  It MUST contain all containers and list
> > >     nodes in the direct path from the top level down to the list or
> > >     container containing the action.  For lists, all key leafs MUST
> also
> > >     be included.  The innermost container or list contains an XML
> element
> > >     that carries the name of the defined action.  Within this element,
> > >     the input parameters are encoded as child XML elements, in the same
> > >     order as they are defined within the "input" statement.
> > >
> > >     . . . . .
> > >
> > >     If the action operation invocation succeeded and no output
> parameters
> > >     are returned, the <rpc-reply> contains a single <ok/> element
> defined
> > >     in [RFC6241].  If output parameters are returned, they are encoded
> as
> > >     child elements to the <rpc-reply> element defined in [RFC6241], in
> > >     the same order as they are defined within the "output" statement.
> > >
> > >
> > > Corrected Text
> > > --------------
> > > 7.5.  The "container" Statement
> > > 7.5.7.  XML Encoding Rules
> > >
> > >     . . . . .
> > >
> > >     The container's child nodes are encoded as subelements to the
> > >     container element.  If the container defines RPC or action input or
> > >     output parameters, these subelements MUST be encoded in the same
> > order as
> > >     they are defined within the "container" statement.  Otherwise, the
> > >     subelements are encoded in any order.
> > >
> > > 7.8. The "list" Statement
> > > 7.8.5.  XML Encoding Rules
> > >
> > >     The list's key nodes MUST be encoded as subelements to the list's
> > >     identifier element, in the same order as they are defined within
> the
> > >     "key" statement.
> > >
> > >     The rest of the list's child nodes are encoded as subelements to
> the
> > >     list element, after the keys.  If the list defines RPC or action
> > >     input or output parameters, the subelements MUST be encoded in
> > the same
> > >     order as they are defined within the "list" statement.  Otherwise,
> > >     the subelements are encoded in any order.
> > >     . . . . .
> > >
> > > 7.14.  The "rpc" Statement
> > > 7.14.4.  NETCONF XML Encoding Rules
> > >
> > >     . . . . .
> > >
> > >     Input parameters MUST be encoded as child XML elements to the rpc
> > node's
> > >     XML element, in the same order as they are defined within the
> "input"
> > >     statement.
> > >
> > >     If the RPC operation invocation succeeded and no output parameters
> > >     are returned, the <rpc-reply> contains a single <ok/> element
> defined
> > >     in [RFC6241].  If output parameters are returned, they MUST be
> > encoded as
> > >     child elements to the <rpc-reply> element defined in [RFC6241], in
> > >     the same order as they are defined within the "output" statement.
> > >
> > >
> > > 7.15.  The "action" Statement
> > > 7.15.2.  NETCONF XML Encoding Rules
> > >
> > >     . . . . .
> > >
> > >     The <action> element contains a hierarchy of nodes that identifies
> > >     the node in the datastore.  It MUST contain all containers and list
> > >     nodes in the direct path from the top level down to the list or
> > >     container containing the action.  For lists, all key leafs MUST
> also
> > >     be included.  The innermost container or list contains an XML
> element
> > >     that carries the name of the defined action.  Within this element,
> > >     the input parameters MUST be encoded as child XML elements, in
> > the same
> > >     order as they are defined within the "input" statement.
> > >
> > >     . . . . .
> > >
> > >     If the action operation invocation succeeded and no output
> parameters
> > >     are returned, the <rpc-reply> contains a single <ok/> element
> defined
> > >     in [RFC6241].  If output parameters are returned, they MUST be
> > encoded as
> > >     child elements to the <rpc-reply> element defined in [RFC6241], in
> > >     the same order as they are defined within the "output" statement.
> > >
> > > Notes
> > > -----
> > > The RFC 2119 keywords are missing in description of ordering for XML
> > encoding rules for RPC, actions and references thereto and in additional
> > instance of list keys encoding.
> > >
> > > Although the text of RFC suggests reading this as if "MUST" was
> > present, without keyword it is open to interpretation if the sentences
> > actually mean "MUST" or "SHOULD" or may be even "MAY".
> > >
> > > In other places discussing ordering, for example 7.7.8., 7.8.5. and
> > 7.9.5. the "MUST" is actually present, hence proposed errata would make
> > ordering description usage of keywords consistent.
> > >
> > > Instructions:
> > > -------------
> > > This erratum is currently posted as "Reported". If necessary, please
> > > use "Reply All" to discuss whether it should be verified or
> > > rejected. When a decision is reached, the verifying party
> > > can log in to change the status and edit the report, if necessary.
> > >
> > > --------------------------------------
> > > RFC7950 (draft-ietf-netmod-rfc6020bis-14)
> > > --------------------------------------
> > > Title               : The YANG 1.1 Data Modeling Language
> > > Publication Date    : August 2016
> > > Author(s)           : M. Bjorklund, Ed.
> > > Category            : PROPOSED STANDARD
> > > Source              : Network Modeling
> > > Area                : Operations and Management
> > > Stream              : IETF
> > > Verifying Party     : IESG
> > >
> > > _______________________________________________
> > > netmod mailing list
> > > netmod@ietf.org<mailto:netmod@ietf.org> <mailto:netmod@ietf.org>
> > >
> https://urldefense.com/v3/__https://www.ietf.org/mailman/listinfo/netmod__;!!BhdT!gZbsQDBeTveBJPSYBpHQOJS8wjZSUsguzZ6KwXq4NAiJ1cAOZgcko9_3wb4pLOxeGCFKcQFoi9XajHOG-NeqWtpD91awGhs$
> <
> https://urldefense.com/v3/__https:/www.ietf.org/mailman/listinfo/netmod__;!!BhdT!gZbsQDBeTveBJPSYBpHQOJS8wjZSUsguzZ6KwXq4NAiJ1cAOZgcko9_3wb4pLOxeGCFKcQFoi9XajHOG-NeqWtpD91awGhs$>
> <
> https://urldefense.com/v3/__https:/www.ietf.org/mailman/listinfo/netmod__;!!BhdT!gZbsQDBeTveBJPSYBpHQOJS8wjZSUsguzZ6KwXq4NAiJ1cAOZgcko9_3wb4pLOxeGCFKcQFoi9XajHOG-NeqWtpD91awGhs$
> >
> >
> >
> > _______________________________________________
> > netmod mailing list
> > netmod@ietf.org<mailto:netmod@ietf.org>
> > https://www.ietf.org/mailman/listinfo/netmod<
> https://urldefense.com/v3/__https:/www.ietf.org/mailman/listinfo/netmod__;!!BhdT!mg1laEAxyhmBddjWVYRImubHWsCFHW2ba3Z-Q60UtvXousUUp8h1zSQ-WE9JMsWNZBDxIq7HL9z0W_rMKUI$
> >
>
> > _______________________________________________
> > netmod mailing list
> > netmod@ietf.org
> > https://www.ietf.org/mailman/listinfo/netmod
>
>
> --
> Jürgen Schönwälder              Jacobs University Bremen gGmbH
> Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
> Fax:   +49 421 200 3103         <https://www.jacobs-university.de/>
>