Re: [NGO] external module properties

Andy Bierman <ietf@andybierman.com> Fri, 02 May 2008 02:48 UTC

Return-Path: <ngo-bounces@ietf.org>
X-Original-To: ngo-archive@optimus.ietf.org
Delivered-To: ietfarch-ngo-archive@core3.amsl.com
Received: from core3.amsl.com (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id EBFB33A69BB; Thu, 1 May 2008 19:48:53 -0700 (PDT)
X-Original-To: ngo@core3.amsl.com
Delivered-To: ngo@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 15E563A6921 for <ngo@core3.amsl.com>; Thu, 1 May 2008 19:48:48 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.36
X-Spam-Level:
X-Spam-Status: No, score=-2.36 tagged_above=-999 required=5 tests=[AWL=0.239, BAYES_00=-2.599]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 9yNOHVf65O6f for <ngo@core3.amsl.com>; Thu, 1 May 2008 19:48:47 -0700 (PDT)
Received: from smtp107.sbc.mail.mud.yahoo.com (smtp107.sbc.mail.mud.yahoo.com [68.142.198.206]) by core3.amsl.com (Postfix) with SMTP id 2B8C83A6785 for <ngo@ietf.org>; Thu, 1 May 2008 19:48:47 -0700 (PDT)
Received: (qmail 2260 invoked from network); 2 May 2008 02:48:49 -0000
Received: from unknown (HELO ?127.0.0.1?) (andybierman@att.net@67.126.241.42 with plain) by smtp107.sbc.mail.mud.yahoo.com with SMTP; 2 May 2008 02:48:47 -0000
X-YMail-OSG: EMnzJFIVM1lX9HwaVem5fFccsn6_D6kWAVIyARuQUnPbpejPfuh.HD.FHWDsk9X2iOQO3vuxUlMBHBHSanhRg1P.M6j1dcVtByPilA8hU6lElS_U8UV8TLAN.xKA6r4A2mQ-
X-Yahoo-Newman-Property: ymail-3
Message-ID: <481A810C.1080601@andybierman.com>
Date: Thu, 01 May 2008 19:48:44 -0700
From: Andy Bierman <ietf@andybierman.com>
User-Agent: Thunderbird 2.0.0.12 (Windows/20080213)
MIME-Version: 1.0
To: Phil Shafer <phil@juniper.net>
References: <200805020224.m422OBiX012038@idle.juniper.net>
In-Reply-To: <200805020224.m422OBiX012038@idle.juniper.net>
Cc: ngo@ietf.org
Subject: Re: [NGO] external module properties
X-BeenThere: ngo@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: NETCONF Goes On - discussions on future work and extensions to NETCONF <ngo.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/ngo>, <mailto:ngo-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/pipermail/ngo>
List-Post: <mailto:ngo@ietf.org>
List-Help: <mailto:ngo-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ngo>, <mailto:ngo-request@ietf.org?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: ngo-bounces@ietf.org
Errors-To: ngo-bounces@ietf.org

Phil Shafer wrote:
> Andy Bierman writes:
>> I don't see how multiple sub-agents within a single agent can implement
>> different versions of the same module, without using different
>> namespace URIs for each variant.  (Maybe somebody can explain
>> it to me;-)
> 
> module A {
>     revision 2008-01-01 { ... }
>     grouping one {
>         leaf foo { ... }
>         leaf goo { ... }
>     }
> }
> 
> module A {
>     revision 2008-04-01 { ... }
>     grouping one {
>         leaf foo { ... }
>         leaf goo { ... }
>         leaf super-cool { ... }
>     }
> }
> 
> module B {
>     import A {
>         revision 2008-01-01;
>     }
> 
>     container zed {
>         uses A:one;
>     }
> }
> 
> module C {
>     import A {
>          revision 2008-04-01;
>     }
>     import B { ... }
> 
>     container yancy {
>         uses A:one;
>     }
> }
> 
> The use of A's one is a compile time issue, and the revision
> on the import makes is clear what contents B and C want.
> yancy will contain super-cool, which zed will not.
> 
> If there was no revision on import, would zed be forced to
> contain super-cool as soon as the 2008-04-01 revision of
> A is published?
> 

I don't really think this feature is worth the complexity.
This seems like it would be better handled in a comprehensive
module conformance section, like SMIv2.

> If you're claiming that this wasn't a problem for MIBs,
> could you please point me at a couple of MIBs that were
> rev'd and the history of how successful these were?
> 

IF-MIB, RMON-MIB, RMON2-MIB, ENTITY-MIB

This is easy in SMIv2 because the MODULE-CONFORMANCE section
can be used to specify the exact leafs in container 'zed' or 'yancy'
that are required, optional, deprecated, or obsolete.  The module
with the uses-stmt needs to specify the conformance for all
the grouping contents.  Nodes added later to grouping 'one'
are not part of the conformance for the 'zed' module.

IMO, this is also the only way 'augment-a-grouping' is ever going to
work in an inter-operable manner.

> Thanks,
>  Phil
> 

Andy


_______________________________________________
NGO mailing list
NGO@ietf.org
https://www.ietf.org/mailman/listinfo/ngo