Re: [netmod] Adding a pre-existing leaf into a new 'choice' - NBC change?

Ladislav Lhotka <lhotka@nic.cz> Fri, 23 November 2018 12:02 UTC

Return-Path: <lhotka@nic.cz>
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 F3332128B14 for <netmod@ietfa.amsl.com>; Fri, 23 Nov 2018 04:02:11 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7
X-Spam-Level:
X-Spam-Status: No, score=-7 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=nic.cz
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 0Ls1rpNSYebB for <netmod@ietfa.amsl.com>; Fri, 23 Nov 2018 04:02:07 -0800 (PST)
Received: from mail.nic.cz (mail.nic.cz [217.31.204.67]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 5A89C12870E for <netmod@ietf.org>; Fri, 23 Nov 2018 04:02:07 -0800 (PST)
Received: from birdie (unknown [IPv6:2001:718:1a02:1::380]) by mail.nic.cz (Postfix) with ESMTPSA id 699DA642DE for <netmod@ietf.org>; Fri, 23 Nov 2018 13:02:04 +0100 (CET)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=nic.cz; s=default; t=1542974524; bh=CUNUPnaBvjXKdqrPeov72A27rRmcXhkEnem4+4vpFPs=; h=From:To:Date; b=rLDDp3W3/wDxfSQfxkDlEqzfJ1fNLLVVCbTAsI0vGG32/Nay086zvMG8lfUbbn+rw SzADCTL5xqYVIAk5KR0cEHcUKc6KRqRcrGLDWYpb6miYdHeDXoxdSy1F3JU1we6ASr Z/UibGkDomHjSObPecwnSwwIMnfYmF6MLW01vK7c=
Message-ID: <d4e91369c2fe948fe6e2a884ee8dc889f6ce12c6.camel@nic.cz>
From: Ladislav Lhotka <lhotka@nic.cz>
To: netmod@ietf.org
Date: Fri, 23 Nov 2018 13:02:03 +0100
In-Reply-To: <20181123113341.br77pxmfhcwn6yck@anna.jacobs.jacobs-university.de>
References: <20181122163046.bkzck2bmbrf3fzm7@anna.jacobs.jacobs-university.de> <87tvk85et8.fsf@nic.cz> <20181123093813.gpxrtanbxgadpwih@anna.jacobs.jacobs-university.de> <20181123.110548.845126088727972359.mbj@tail-f.com> <20181123113341.br77pxmfhcwn6yck@anna.jacobs.jacobs-university.de>
Organization: CZ.NIC
Content-Type: text/plain; charset="UTF-8"
User-Agent: Evolution 3.30.2
Mime-Version: 1.0
Content-Transfer-Encoding: 7bit
X-Virus-Scanned: clamav-milter 0.99.2 at mail
X-Virus-Status: Clean
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/bAYoGrQSqKEuzlPauRFBXwQyY64>
Subject: Re: [netmod] Adding a pre-existing leaf into a new 'choice' - NBC change?
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: Fri, 23 Nov 2018 12:02:12 -0000

On Fri, 2018-11-23 at 12:33 +0100, Juergen Schoenwaelder wrote:
> On Fri, Nov 23, 2018 at 11:05:48AM +0100, Martin Bjorklund wrote:
> > Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de> wrote:
> > > On Fri, Nov 23, 2018 at 10:22:11AM +0100, Ladislav Lhotka wrote:
> > > > Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de> writes:
> > > > 
> > > > > On Thu, Nov 22, 2018 at 03:00:27PM +0100, Martin Bjorklund wrote:
> > > > > > Andy Bierman <andy@yumaworks.com> wrote:
> > > > > > > 9.9 <https://tools.ietf.org/html/rfc7950#section-9.9>;.  The
> > > > > > > leafref
> > > > > > > Built-In Type
> > > > > > > 
> > > > > > >    The leafref built-in type is restricted to the value space of
> > > > > > > some
> > > > > > >    leaf or leaf-list node in the schema tree and optionally
> > > > > > > further
> > > > > > >    restricted by corresponding instance nodes in the data
> > > > > > > tree.  The
> > > > > > >    "path" substatement (Section 9.9.2
> > > > > > > <https://tools.ietf.org/html/rfc7950#section-9.9.2>;) is used to
> > > > > > > identify the referred
> > > > > > >    leaf or leaf-list node in the schema tree.  The value space of
> > > > > > > the
> > > > > > >    referring node is the value space of the referred node.
> > > > > > 
> > > > > > Yes, it should be "data tree" in both occurrences.
> > > > > 
> > > > > Time for an errata?
> > > > 
> > > > Here is the old discussion thread:
> > > > 
> > > > https://www.ietf.org/mail-archive/web/netmod/current/msg15979.html
> > > > 
> > > > Everything relevant had been extensively discussed in it, and I am
> > > > sceptical that we can come up with anything significantly better - it
> > > > will only be more (or different) hand-waving. The problem is inherent in
> > > > the leafref design introduced in YANG 1.1. It won't go away no matter
> > > > how much we paper over it.
> > > > 
> > > 
> > > So you think the use of 'schema tree' in the text quoted above (is
> > > used to identify the referred leaf or leaf-list node in the schema
> > > tree) is correct??
> > > 
> > > I do not want to discuss whether you like the design of leafrefs or
> > > not here - at this time we should focus on whether the text is correct
> > > or not given the design we have. So again, you think that 'schema
> > > tree' is correct in the statement?
> > 
> > After reading the quoted thread and thinking some more, I think the
> > text in 9.9 is in fact correct.  As Lada wrote in that thread:
> >  
> >    2. It [path] also implicitly refers to a leaf node in the schema
> >       [...]
> > 
> > The problem is that this "implicit reference" isn't defined.  9.9
> > talks about reference to a schema node, and 9.9.2 talks about the data
> > tree, but there is no text that ties these together.
> 
> Here is an attempt to rewrite things in a way according to how I
> understand things works. It should be possible to describe what we
> mean. If we can't do that, we have a bigger problem. (I have changed
> only the last two sentences.)
> 
> OLD
> 
>    The leafref built-in type is restricted to the value space of some
>    leaf or leaf-list node in the schema tree and optionally further
>    restricted by corresponding instance nodes in the data tree.  The
>    "path" substatement (Section 9.9.2) is used to identify the referred
>    leaf or leaf-list node in the schema tree.  The value space of the
>    referring node is the value space of the referred node.
> 
> NEW
> 
>    The leafref built-in type is restricted to the value space of some
>    leaf or leaf-list node in the schema tree and optionally further
>    restricted by corresponding instance nodes in the data tree.  The
>    "path" substatement (Section 9.9.2) is used to identify a leaf or
>    leaf-list node in the data tree. The value space of the leafref
>    node is determined by the value space of the schema tree node

The term "value space of a schema tree node" is not defined.


>    definining the referenced data tree node.

With require-instance=false there needn't be any referenced data tree node.

> 
> This likely is not perfect yet but perhaps we manage to make it
> perfect. ;-) What is not yet clearly described I think is what
> 'further restricted by corresponding instance nodes in the data tree'
> means (and that I think depends on require-instance). Perhaps add

Right. In this case it is not "further restricted" but rather there is a
discrete set of possible values.

Lada

> '(see Section 9.9.3)' to the end of the first sentence to handle this.
> 
> /js
>    
-- 
Ladislav Lhotka
Head, CZ.NIC Labs
PGP Key ID: 0xB8F92B08A9F76C67