[Teas] Re: Gunter Van de Velde's Discuss on draft-ietf-teas-actn-vn-yang-27: (with DISCUSS)

Dhruv Dhody <dhruv.ietf@gmail.com> Sat, 08 June 2024 06:41 UTC

Return-Path: <dhruv.ietf@gmail.com>
X-Original-To: teas@ietfa.amsl.com
Delivered-To: teas@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 5EDC1C1654E9; Fri, 7 Jun 2024 23:41:49 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.094
X-Spam-Level:
X-Spam-Status: No, score=-2.094 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, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, 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=gmail.com
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 h3FWwMX2R3ed; Fri, 7 Jun 2024 23:41:44 -0700 (PDT)
Received: from mail-ua1-x92a.google.com (mail-ua1-x92a.google.com [IPv6:2607:f8b0:4864:20::92a]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 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 B90ADC15106A; Fri, 7 Jun 2024 23:41:44 -0700 (PDT)
Received: by mail-ua1-x92a.google.com with SMTP id a1e0cc1a2514c-80acf1bca86so848907241.3; Fri, 07 Jun 2024 23:41:44 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1717828904; x=1718433704; darn=ietf.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=7GpASUm3H8GDyK7YnF1vulOh1gdzATVtKm9O694QxD8=; b=cZu+oDF0kopvTxjs8b3RPa1wOk/pIp3y/tng4p8r+0EL9h85v9PdNrEOiK7StcJ/3Q lApEuOxy6ln3PVVNdwHR2uAyq5DDbpw+aJPWImcI73DeOI6igGS8TaROlKSQDq2LTPAb /cbfGruk6jlEr+OyfZfIMDcwGmmHEVs0lPAXLqbKYB1Jq0aCQJ3HdgWa38zJbmbD1bfV QJa7BkiXr6knspIU/tC2gCkJ/o63wWSZZeK7vnMWaVUEJLuPAPK8HXoTdUUkpUsgjhnJ QtE1t9EXcNdi/opsl8F3YotUsgYqKLeRKWs7sHdwlb9TArNd3y1Zz/aHMm5PDlrH2ESb 50jg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1717828904; x=1718433704; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=7GpASUm3H8GDyK7YnF1vulOh1gdzATVtKm9O694QxD8=; b=P/GY5hKu2PQFc11PFPbXFnoTcmBu1lTHPK/BVi/Xic2AECcENisGiZeVLnmvY3j17Y X2OAmSayeFN7JJym35L3QGBLUT5dB7NBKt5K2nICGsXC1BUE6iACNTi1o7U9FAp0y0Zn cOx8+LcuKmOeLrwnS/OR9Lz47FRVC8yPIf5QOGGrL20h+SxMMlxSUvXH5Iqlahg2uhnI aiG6zuW4gIhSgWq9hMtR5qJ33IvS8ufW3TB24Jvbw5sv8b2ntxlsuxQCgGWeBU4bx7JM 6C83b5uWXT5BlbT56YOq2D9pvwznSopP9YAPF9tVWc/erzUBiOEqiDyn+sL4Zo6BXA3O dnLg==
X-Forwarded-Encrypted: i=1; AJvYcCXN5cfqee9ZjRfg9PzN9CaC9hjCdzTkn0l2Pq1CNuBW6NoBWp0JYcHPd6OVeQ2eSfQdQc51y4mUolLWQDZa0qLN1dMtDuCvzOOXPxaN/EBC8QlQwL7zhfNicl9L/pwc0CrXg8Y6I4fOEch9zL16hJM0jiHLgI0QMg+RFUrW6icXmtJdaetre0XSCw==
X-Gm-Message-State: AOJu0Yxc49dnBZ1TxMFsRjutL00ap1jUlCskgrC9N+rha7V1sphR61hC vGI87WgVyjPVAh9mfUUmufUr1wHFo39gop9CTH2TOCdPdAXgjI5MhNffmf5CMad++20BAooJxvw 8S16kiFK7lN9+YCQnfVZC8QzUIkZl5Xl7Vaxzag==
X-Google-Smtp-Source: AGHT+IELHK/8xSxZ+WkmN3Q57PIweLd4ngxkn0+60HCrm3Cx++Q5NUkRrSGTt4Q1DO92rni6xoP3Y8gph3VTyxbrxdo=
X-Received: by 2002:a05:6102:c49:b0:48b:c455:8b57 with SMTP id ada2fe7eead31-48c2736dc60mr5633546137.7.1717828903643; Fri, 07 Jun 2024 23:41:43 -0700 (PDT)
MIME-Version: 1.0
References: <171775367359.61526.13460294319166688678@ietfa.amsl.com> <CAB75xn5v580gxKEdZwfTGU8kjv2u2LZOSq=H_u0ftN=dUDq4tw@mail.gmail.com> <AS1PR07MB8589BEA359346CC08EB2E4E1E0FB2@AS1PR07MB8589.eurprd07.prod.outlook.com> <CAB75xn7dom=w1kB6cv9H3MZJvvCqTxgv0S-AhENqJd8Wb+sEGg@mail.gmail.com> <AS1PR07MB85895BA87D1DE2DF3E2A183FE0FB2@AS1PR07MB8589.eurprd07.prod.outlook.com> <5E5DB371-3050-4FB5-87B0-E1DF48FC3397@gmail.com>
In-Reply-To: <5E5DB371-3050-4FB5-87B0-E1DF48FC3397@gmail.com>
From: Dhruv Dhody <dhruv.ietf@gmail.com>
Date: Sat, 08 Jun 2024 07:41:06 +0100
Message-ID: <CAB75xn41gQDXqNHhZDOM2ywX_1OjzRN5WQ+uA+5T1PaHMS4rNw@mail.gmail.com>
To: Mahesh Jethanandani <mjethanandani@gmail.com>
Content-Type: multipart/mixed; boundary="000000000000964c08061a5b3585"
Message-ID-Hash: UKM6JSJF5LNSX5UL3ZWVELKDLX6FEY5C
X-Message-ID-Hash: UKM6JSJF5LNSX5UL3ZWVELKDLX6FEY5C
X-MailFrom: dhruv.ietf@gmail.com
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-teas.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: "Gunter van de Velde (Nokia)" <gunter.van_de_velde@nokia.com>, The IESG <iesg@ietf.org>, "draft-ietf-teas-actn-vn-yang@ietf.org" <draft-ietf-teas-actn-vn-yang@ietf.org>, "teas-chairs@ietf.org" <teas-chairs@ietf.org>, "teas@ietf.org" <teas@ietf.org>, "vbeeram@juniper.net" <vbeeram@juniper.net>
X-Mailman-Version: 3.3.9rc4
Precedence: list
Subject: [Teas] Re: Gunter Van de Velde's Discuss on draft-ietf-teas-actn-vn-yang-27: (with DISCUSS)
List-Id: Traffic Engineering Architecture and Signaling working group discussion list <teas.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/teas/phUcJgCqB9lbcgZlxUw6izDo3XE>
List-Archive: <https://mailarchive.ietf.org/arch/browse/teas>
List-Help: <mailto:teas-request@ietf.org?subject=help>
List-Owner: <mailto:teas-owner@ietf.org>
List-Post: <mailto:teas@ietf.org>
List-Subscribe: <mailto:teas-join@ietf.org>
List-Unsubscribe: <mailto:teas-leave@ietf.org>

Thanks Mahesh, Gunter,

I have made an update to the YANG.

- I updated the module description to include the abbreviations
- Changed the following leaf names of child nodes
          - vn-id to id
          - ap-id to id

- vn-ap-id to id

- vnm-id to id

- src to ap

- src-vn-ap-id to vn-ap-id

- dest to ap

- dest-vn-ap-id to vn-ap-id


Please check the update. I will update the tree, json, and text to upload a
new revision once you are satisfied.

Thanks,
Dhruv



On Fri, Jun 7, 2024 at 7:30 PM Mahesh Jethanandani <mjethanandani@gmail.com>
wrote:

> Hi Gunter/Dhruv,
>
> Gunter, you are right that the idea of YANG has been to make it a very
> readable, and therefore understandable language. And this extends to how
> node names are selected. The section that you quote below goes to the heart
> of that desire, and has been captured after extensive discussion in the
> NETMOD WG. If I understand you, there are two issues that you highlighting.
> The use of acronyms in node names, and the naming of parent vs child nodes.
>
> To the use of acronyms in node names, there is obviously a balance between
> that and providing descriptive enough names that make the model reading
> easy, i.e., avoid long XPaths. Generally, if the draft uses an acronym and
> explains its usage in the draft, it is fair to use it in the YANG model.
> Towards that end, the compromise that the WG came up with, sounds
> reasonable to me. However, I do expect the authors to use the description
> field in the YANG model to carry some of that description from the draft,
> to help with readability. That is because once the YANG model is separated
> from the draft, the description in the draft can get lost. Therefore, if
> the YANG model names a node ‘vn’, I expect the description field to expand
> it to say “Virtual Network (VN) ...”. Moreover, lot of tools, including
> OpenAPI generators, use the description field to describe usage, which
> makes it all the more important to have good descriptions.
>
> The use of parent identifier in the child is a litte more straight
> forward. There is really no need to. In this case, instead of ‘vn-id’, ‘id’
> would have sufficed.
>
> HTH.
>
> On Jun 7, 2024, at 6:07 AM, Gunter van de Velde (Nokia) <
> gunter.van_de_velde@nokia.com> wrote:
>
> Hi Dhruv,
>
> Using container names in leaf names is something that should be avoided.
> It adds no additional meaning and increases the path length.
>
> Descriptions clarify what a particular node or statement is intended for,
> making the model easier to understand for those who read it.
>
> There is a hint about this specified in:
>
> https://datatracker.ietf.org/doc/html/draft-ietf-netmod-rfc6087bis-20#section-4.3.1
>
> “
>    Identifiers SHOULD include complete words and/or well-known acronyms
>    or abbreviations.  Child nodes within a container or list SHOULD NOT
>    replicate the parent identifier.  YANG identifiers are hierarchical
>    and are only meant to be unique within the the set of sibling nodes
>    defined in the same module namespace.
>
>    It is permissible to use common identifiers such as "name" or "id" in
>    data definition statements, especially if these data nodes share a
>    common data type.
> “
>
> However, I'm uncertain whether the IETF mandates or enforces the use of
> human-readable names for YANG nodes, or whether there are guidelines to
> avoid including parent node names in the names of sibling nodes.
>
> Perhaps @Mahesh Jethanandani <mjethanandani@gmail.com> (NETMOD AD) could
> provide some insight on this matter? If this aspect hasn’t been a priority
> and has not been enforced at the IETF, then I might be overly concerned
> about the readability and style of YANG.
>
> G/
>
>
>
>
>
> *From:* Dhruv Dhody <dhruv.ietf@gmail.com>
> *Sent:* Friday, June 7, 2024 2:09 PM
> *To:* Gunter van de Velde (Nokia) <gunter.van_de_velde@nokia.com>
> *Cc:* The IESG <iesg@ietf.org>; draft-ietf-teas-actn-vn-yang@ietf.org;
> teas-chairs@ietf.org; teas@ietf.org; vbeeram@juniper.net
> *Subject:* Re: Gunter Van de Velde's Discuss on
> draft-ietf-teas-actn-vn-yang-27: (with DISCUSS)
>
>
> *CAUTION:* This is an external email. Please be very careful when
> clicking links or opening attachments. See the URL nok.it/ext for
> additional information.
>
>
> Hi Gunter,
>
> On Fri, Jun 7, 2024 at 12:01 PM Gunter van de Velde (Nokia) <
> gunter.van_de_velde@nokia.com> wrote:
>
> I understand. It is always a compromise. I fight with this myself all the
> time when suffering yang coding moments.
>
> In this file i see for example src. Why not use ‘source’? same with other
> key-words.
>
>
>
> Dhruv: It was kept as 'src' to match it with 'dest'.
> If we change it, we should change to 'source' and 'destination'. And also
> handle other leaves like multi-src, multi-dest, src-vn-ap-id, dest-vn-ap-id
> and feature name 'multi-src-dest'.
>
> Longer names also makes the tree diagram difficult to follow because of
> the 80 char width (especially with the feature name).
>
>
>
> About your example:
>
>
> path "/virtual-network/vn/vn-id"; will become
>
> path "/virtual-network/virtual-network/virtual-network-identifier";
>
>
> I question the fact that it is not required that the virtual-network
> should be repeated for the “identifier” leaf.
> More user friendly and less long would be:
>
> path "/virtual-network/virtual-network/identifier";
>
>
> Once you are in the node virtual-network, you know you are handling a
> virtual-network identifier. Why name it double? It makes the path longer
> for no apparent reason as you correctly observed.
>
>
>
> Dhruv: I agree. If the change is made, following your suggestion would
> make sense. I was just illustrating my point :)
>
> I am a little apprehensive in making this late change that will have a
> huge churn in the document (and the model). The JSON examples would need to
> be reworked as well as other YANG models that build on the VN model. Could
> I add text in the description clause in the YANG module that expands these
> abbreviations instead?
>
> But, if you feel strongly about this (and the responsible AD confirms) I
> will make the requested change.
>
> Thanks,
> Dhruv
>
>
>
>
>
>
>
> G/
>
>
> *From:* Dhruv Dhody <dhruv.ietf@gmail.com>
> *Sent:* Friday, June 7, 2024 12:35 PM
> *To:* Gunter van de Velde (Nokia) <gunter.van_de_velde@nokia.com>
> *Cc:* The IESG <iesg@ietf.org>; draft-ietf-teas-actn-vn-yang@ietf.org;
> teas-chairs@ietf.org; teas@ietf.org;vbeeram@juniper.net
> *Subject:* Re: Gunter Van de Velde's Discuss on
> draft-ietf-teas-actn-vn-yang-27: (with DISCUSS)
>
>
> *CAUTION:* This is an external email. Please be very careful when
> clicking links or opening attachments. See the URL nok.it/ext for
> additional information.
>
>
> Hi Gunter,
>
> Thanks for your review.
>
> On Fri, Jun 7, 2024 at 10:47 AM Gunter Van de Velde via Datatracker <
> noreply@ietf.org> wrote:
>
> Gunter Van de Velde has entered the following ballot position for
> draft-ietf-teas-actn-vn-yang-27: Discuss
>
> When responding, please keep the subject line intact and reply to all
> email addresses included in the To and CC lines. (Feel free to cut this
> introductory paragraph, however.)
>
>
> Please refer to
> https://www.ietf.org/about/groups/iesg/statements/handling-ballot-positions/
>
> for more information about how to handle DISCUSS and COMMENT positions.
>
>
> The document, along with other ballot positions, can be found here:
> https://datatracker.ietf.org/doc/draft-ietf-teas-actn-vn-yang/
>
>
>
> ----------------------------------------------------------------------
> DISCUSS:
> ----------------------------------------------------------------------
>
> # Gunter Van de Velde, RTG AD, comments for draft-ietf-teas-actn-vn-yang-27
>
> Please find https://www.ietf.org/blog/handling-iesg-ballot-positions/
> documenting the handling of ballots.
>
> Many thanks for the RTG-DIR reviews from Darren Dukes and many thanks to
> Vishnu
> Pavan Beeram for the Shepherd write-up.
>
> Please find below 1 blocking DISCUSS about the yang node names used, that
> seems
> reasonably simple to address
>
> #DISCUSS items
> #=============
> ##DISCUSS1
> One of the motivations to use YANG is to have human readable structure to
> understand config and state of a device. When looking through the document
> i
> see many very abbreviated acronymns. e.g. vn, vn-id, src, src-vn-ap.id,
> etc
>
> If not overly lengthy, why not use node names in the style of source,
> virtual-network, virtual-network-id, etc? There is no real reason to
> abbreviate
> in the yang model, assuming the node names are not overly long and it makes
> reading and understanding the leafs more trivial.
>
>
> Dhruv: The complaint that we get with longer names is that the leafref
> paths become too long and lose human readability.
>
>
>   +--rw virtual-network
>
>      +--rw vn* [vn-id]
>
>         +--rw vn-id                     vn-id
>
>
>
>
>
> path "/virtual-network/vn/vn-id"; will become
>
> path "/virtual-network/virtual-network/virtual-network-identifier";
>
>
> The idea of expanding it once as a top container and using VN for leaves
> inside seems like a good compromise. I would also consider VN to be
> well-known for anyone dealing with this YANG file.
>
> Hope this explains our thinking, does it make sense to you?
>
> Thanks,
> Dhruv
>
>
>
> Mahesh Jethanandani
> mjethanandani@gmail.com
>
>
>
>
>
>
>