Re: [netmod] 'status' statement needed on every node

Robert Wilton <rwilton@cisco.com> Wed, 06 September 2017 09:34 UTC

Return-Path: <rwilton@cisco.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 B98E213247A for <netmod@ietfa.amsl.com>; Wed, 6 Sep 2017 02:34:39 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.501
X-Spam-Level:
X-Spam-Status: No, score=-14.501 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, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.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 rU2aOov_6luL for <netmod@ietfa.amsl.com>; Wed, 6 Sep 2017 02:34:38 -0700 (PDT)
Received: from aer-iport-3.cisco.com (aer-iport-3.cisco.com [173.38.203.53]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 9E7D01323B4 for <netmod@ietf.org>; Wed, 6 Sep 2017 02:34:37 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=2863; q=dns/txt; s=iport; t=1504690477; x=1505900077; h=subject:to:references:from:message-id:date:mime-version: in-reply-to:content-transfer-encoding; bh=esNSAIocypIutyc8FLJdB7hWyN0SgRIHSuOCMCZxSjA=; b=hO7A8rjbhCogjpRd06k2IkXlAwejKqo2SVCKxkvvkw5USlvO9+apv25S mFxs7R/7mZwMp6iRY8Ute5keHNRw96pG7wVXpGTFGpbrBYuL0EIoq/znR 3i1nfLIvC5E1W0KwtTwcwtlKg4ndpui2N2bYtTTvX20pWAod/1s70u3l5 g=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0CtAQAGwK9Z/xbLJq1eGQEBAQEBAQEBAQEBBwEBAQEBiUqLFZEemDoKhT4ChH0UAQIBAQEBAQEBayiFGQEFIw8BBVELGAICJgICVxMIAQGKLa8cgieLOAEBAQcCJoENgh2DUIIOgn2EX2KCR4JhBZEoj0yUUYtUhx2NV4dUgTk2IYENMiEIHBWHZT+KWwEBAQ
X-IronPort-AV: E=Sophos;i="5.41,483,1498521600"; d="scan'208";a="655454066"
Received: from aer-iport-nat.cisco.com (HELO aer-core-4.cisco.com) ([173.38.203.22]) by aer-iport-3.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 06 Sep 2017 09:34:33 +0000
Received: from [10.63.23.66] (dhcp-ensft1-uk-vla370-10-63-23-66.cisco.com [10.63.23.66]) by aer-core-4.cisco.com (8.14.5/8.14.5) with ESMTP id v869YXck027567 for <netmod@ietf.org>; Wed, 6 Sep 2017 09:34:33 GMT
To: netmod@ietf.org
References: <20170905190151.fizr5dljufbyuyty@elstar.local> <20170906014757.GD31035@shrubbery.net> <20170906065723.dnv4xl2mchszcvlo@elstar.local>
From: Robert Wilton <rwilton@cisco.com>
Message-ID: <478d00da-2cdf-b416-c0e5-cbba29c9ed43@cisco.com>
Date: Wed, 06 Sep 2017 10:34:33 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0
MIME-Version: 1.0
In-Reply-To: <20170906065723.dnv4xl2mchszcvlo@elstar.local>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Transfer-Encoding: 8bit
Content-Language: en-US
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/zzEu-X037JU3qaFFEbA1OorH-Nk>
Subject: Re: [netmod] 'status' statement needed on every node
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.22
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: Wed, 06 Sep 2017 09:34:40 -0000

I would prefer if it status was inherited (as an errata to 6020, 7950).  
It seems that when it comes to implementation that is what is going to 
happen regardless.   If a server chooses to not support a deprecated 
node then any children nodes will also not be supported.  Hence, 
regardless of what the YANG module states, their real status is that 
they are deprecated since they won't necessarily be present in all 
servers that implement the module.

However, I do get Juergen's point about clarity.  Given the lengthy 
regex discussion, I suspect others may not agree, but this part could 
potentially be solved via YANG Author Guidelines.  I.e. something 
roughly along the lines of "If a node is marked as deprecated/obsolete 
in a YANG module then all descendant nodes SHOULD also be explicitly 
marked as deprecated/obsolete".

Thanks,
Rob


On 06/09/2017 07:57, Juergen Schoenwaelder wrote:
> On Wed, Sep 06, 2017 at 01:47:57AM +0000, heasley wrote:
>> Isn't this something that is fixed with display (human representation)
>> tools?
>>
> I often work with the original definitions. And if the original
> definitions depend on context, I have to do another lookup (whether
> this is inside the original definition or some tool generated human
> representation does not matter). With the old /foo and /foo-state
> approach this was really bad since you had often objects with the same
> name and it was often not at all clear whether I have been looking at
> the config true or the config false definition without an additional
> search operation. Perhaps I could program my favourite editor to
> generate explicit config statements and status statements on the fly
> but I think we would be better off if readers would not have to
> program editors or use special tools to easily understand what a
> definition really means.
>
>>>> I still don't know what it means to define hierarchical data and say the
>>>> parent is deprecated but not the descendant nodes.
>>> It is odd but can happen anyway. A current augmentation of something
>>> that got deprecated likely stays current. I would hope that tools warn
>>> if they see this but that's it.
>> How is anything ever expunged if parsing tools do not refuse to load
>> a module that depends on a deprecated node that it is attempting to
>> augment?
> Expunged? Deprecating a definition does not expunge anything. Tools
> that refuse to load a module that depends on deprecated nodes are in
> my view broken. It was one of YANG's design goals to support
> augmentations such that definitions and be augmented by independent
> organizations. Hence, we must face reality that it is impossible to
> determine how many augmentations of a definition are out there and
> hence it is impossible to have them all updated at the same time.
>
> /js
>