Re: [netmod] yang-data-ext issues
Andy Bierman <andy@yumaworks.com> Mon, 16 April 2018 16:07 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 E724A12E8C7 for <netmod@ietfa.amsl.com>; Mon, 16 Apr 2018 09:07:09 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.61
X-Spam-Level:
X-Spam-Status: No, score=-2.61 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_LOW=-0.7, SPF_PASS=-0.001, T_DKIMWL_WL_MED=-0.01] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.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 hx2fc0PzKvSv for <netmod@ietfa.amsl.com>; Mon, 16 Apr 2018 09:07:07 -0700 (PDT)
Received: from mail-lf0-x235.google.com (mail-lf0-x235.google.com [IPv6:2a00:1450:4010:c07::235]) (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 EEABA12E8C3 for <netmod@ietf.org>; Mon, 16 Apr 2018 09:07:06 -0700 (PDT)
Received: by mail-lf0-x235.google.com with SMTP id g203-v6so22885549lfg.11 for <netmod@ietf.org>; Mon, 16 Apr 2018 09:07:06 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=1UK8zmfGh51nRaNdjb00Jd1rqAicHCGwQVB/iLIRHYo=; b=mkahOZLTdcwUbz/atzRYAPG4d88rd9tM7SCWBZC3wNBVBVzA4fWsAwSbeNLDQnWJYo d7k/WCc5dcMgwNQjW+kUR6ab1lhaNIB2QT4mrilJMb+pXmad2T757hztAhCcevuudSkM MQ1PCgjhW1/3kVeKP0U+sYT17QbE74HiRYXD9O3MvZqHUFNsVTWdmPdxUxkbh8gU2T5I 7/2/4Bt9R2yLQJrAy8/Peq+vXfNNOXimt+U3GYB7mg5Ns8XJdZByGX0n3huCh3iVV6F4 WykuTswgD83jHF7kU1lmb0EvF3P81QAx6sgAfARla8KAgU2DdkX9f4SK/PYecbR+60j+ Qzqw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=1UK8zmfGh51nRaNdjb00Jd1rqAicHCGwQVB/iLIRHYo=; b=ZNE59+IBPjTREl9AkZzh318lMLuMKMLrVItGf4dgVrteTqU8pL1JUQNnpggt0VTpB2 AVcyS9v6NoUnFX058lgwNId+FT0LZcl+z/eAUgc0IM97TykNJZToLeAqMKuYKm0/z3k3 IAfuLHuGRZgYeG9OTRfSPqiFIsCRChDFPAlpo2LoIzqfmScZwTfsQbqN1d3WHg0kDRec Xb6qSS3/oOwrHQmIjZkTL6rxJVY0vkGr7z3p2RY4/oESMvBYm8c8R2vGyrI/8YFbrC/d EW0i5QXaBaM1+Cq5DCEey649TT73FhJwViWgtAJT3XnMwYCYRd5VAVXItXmWfObKXR4j +BOQ==
X-Gm-Message-State: ALQs6tAu6Q9DcgkcUoTwTlQlqmXqc1R5jLXKo+mRpGYUuyUNsfp4uRK7 Vr66KtwoWXRZ0Vi0CUNxGg0WD+eZDsu80hFveuRAdw==
X-Google-Smtp-Source: AIpwx49XiuO7g4XKlvhJDmYwiynSlZtAwzcXdWO4/9YRnFNGTRWIu5oHGljQZFQaEjUTeyvKoxiUulU/RqyCzC5m0qM=
X-Received: by 2002:a19:4c46:: with SMTP id z67-v6mr4151149lfa.141.1523894825185; Mon, 16 Apr 2018 09:07:05 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:d8c6:0:0:0:0:0 with HTTP; Mon, 16 Apr 2018 09:07:04 -0700 (PDT)
In-Reply-To: <ef8e1caf-686e-1074-d094-6b6cd907a1a8@cisco.com>
References: <20180416.145617.1262098657698751846.mbj@tail-f.com> <CABCOCHQS5SdJhZrgoVug4Lux2WLCmieN26Kte_FEdzh9VB=riw@mail.gmail.com> <ef8e1caf-686e-1074-d094-6b6cd907a1a8@cisco.com>
From: Andy Bierman <andy@yumaworks.com>
Date: Mon, 16 Apr 2018 09:07:04 -0700
Message-ID: <CABCOCHRr=h=G43aJqwVRc+pcs-QV93_adHB4hDQckkVpacH8eA@mail.gmail.com>
To: Robert Wilton <rwilton@cisco.com>
Cc: Martin Bjorklund <mbj@tail-f.com>, NetMod WG <netmod@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000bb0d7e0569f96936"
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/tXbOB7wEEaEBUgBcJ3OQHeb85a4>
Subject: Re: [netmod] yang-data-ext issues
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: Mon, 16 Apr 2018 16:07:10 -0000
On Mon, Apr 16, 2018 at 8:44 AM, Robert Wilton <rwilton@cisco.com> wrote: > Don't groupings have a somewhat similar concern? > > E.g. if two groupings define the same data node name and are used at the > same point then you would get a namespace clash, but YANG does not disallow > the groupings: > > grouping foo_widget { > leaf name { > type string; > description "Name of my foo widget"; > } > } > > grouping bar_widget { > leaf name { > type string; > description "Name of my bar widget"; > } > } > > > container all_widgets { > uses foo_widget; > uses bar_widget; > } > > > The principal difference here, is that the compiler can easily check and > reject the conflict at the uses statements. > > Hence I think that it would be good if we could find a solution for > yang-data-ext that doesn't not require all root yang-data nodes to be > unique, since that feels somewhat clunky. I.e. my preference is to keep > them less restrictive, as Martin has proposed, if this is feasible. > > It is not clunky that 2 top-level YANG data nodes in the same module have unique names. This is simple and deterministic. This restriction has not been a problem so far. The yang-data statement has to define the context or new abstract namespace, or whatever this hack is called. Every tool that implements yang-data has to be able to interpret a yang-data statement exactly the same way. If you want to reinvent XSD substitutionGroup, then do it right. > Thanks, > Rob > > Andy > > On 16/04/2018 15:36, Andy Bierman wrote: > > Hi, > > I am strongly opposed to this change because it breaks the rule in YANG 1.1 > that there cannot be 2 sibling nodes defined in the same module namespace. > > IMO since any yang-data nodes are ALLOWED to be used at the top-level, > then these top-level nodes cannot have conflicting names. > > It is very important when parsing an instance document that the instance > data > can be associated with the correct schema. This is not possible if the > same top-level node has multiple yang-data nodes defined. > > If one needs to define data that is not top-level, (1) use > augment-yang-data > or (2) use a different module. > > > Andy > > > > On Mon, Apr 16, 2018 at 5:56 AM, Martin Bjorklund <mbj@tail-f.com> wrote: > >> Hi, >> >> While preparing draft-ietf-netmod-yang-data-ext-02, it turned out that >> it is not clear what, if any, restrictions should be enforced for >> yang-data structures. Even among the authors we have different ideas >> for how this should work. >> >> Background: >> >> In 8040, the original yang-data extension had a restriction that said >> that a yang-data structure MUST have exactly one container, since it >> wouldn't be possible to have a yang-data structure in an XML instance >> document otherwise. >> >> Since people want to use yang-data structures in other places, this >> restriction was lifted in the new draft: >> >> There is no longer an assumption that a yang data structure can >> only be used as a top-level abstraction, instead of nested within >> some other data structure. >> >> >> With this in mind, here's a use case that I think we ought to support: >> >> rpc my-first-rpc { >> description >> "Bla bla... >> If an error occurs, <error-info> will contain an instance of >> the yang-data structure 'my-first-rpc-error-info'."; >> ... >> } >> >> yang-data my-first-rpc-error-info { >> leaf reason { ... } >> container user-info { ... } >> } >> >> rpc my-second-rpc { >> description >> "Bla bla... >> If an error occurs, <error-info> will contain an instance of >> the yang-data structure 'my-second-rpc-error-info'."; >> ... >> } >> >> yang-data my-second-rpc-error-info { >> leaf reason { ... } >> leaf important-url { ... } >> } >> >> (maybe in the future we could even have a YANG extension statement to >> formalize the description: >> >> rpc my-first-rpc { >> ... >> opx:error-info-structure my-first-rpc-error-info; >> } >> >> but this is not point now.) >> > I see no reason to reinvent the grouping-stmt. You could easily say opx:error-info-structure argument is a grouping name as it is a yang-data name. > >> In the example above, note that the leaf "reason" is present in both >> structures. IMO this is not a problem, since these structures are >> used in different contexts. >> >> My point is that I think we should impose as few restrictions as >> possible to the yang-data extension. It should be up to the user of >> yang-data to ensure that the structure is defined in such a way so >> that it can be used properly. For example, a structure that is >> supposed to describe an XML instance document cannot define two leafs >> at the top level. >> >> If the WG agrees with what I wrote above, we need to change the >> augment-yang-data extension so that you would write for example: >> >> yx:augment-yang-data /ex:my-first-rpc-error-info/ex:user-info { >> ... >> } >> >> Comments? >> >> >> >> /martin >> >> _______________________________________________ >> netmod mailing list >> netmod@ietf.org >> https://www.ietf.org/mailman/listinfo/netmod >> > > > > _______________________________________________ > netmod mailing listnetmod@ietf.orghttps://www.ietf.org/mailman/listinfo/netmod > > >
- Re: [netmod] yang-data-ext issues Kent Watsen
- Re: [netmod] yang-data-ext issues Joe Clarke
- Re: [netmod] yang-data-ext issues Kent Watsen
- [netmod] yang-data-ext issues Martin Bjorklund
- Re: [netmod] yang-data-ext issues Joe Clarke
- Re: [netmod] yang-data-ext issues Andy Bierman
- Re: [netmod] yang-data-ext issues Martin Bjorklund
- Re: [netmod] yang-data-ext issues Martin Bjorklund
- Re: [netmod] yang-data-ext issues Andy Bierman
- Re: [netmod] yang-data-ext issues Robert Wilton
- Re: [netmod] yang-data-ext issues Andy Bierman
- Re: [netmod] yang-data-ext issues Martin Bjorklund
- Re: [netmod] yang-data-ext issues Robert Wilton
- Re: [netmod] yang-data-ext issues Andy Bierman
- Re: [netmod] yang-data-ext issues Ladislav Lhotka
- Re: [netmod] yang-data-ext issues Kent Watsen
- Re: [netmod] yang-data-ext issues Martin Bjorklund
- Re: [netmod] yang-data-ext issues Andy Bierman
- Re: [netmod] yang-data-ext issues Martin Bjorklund
- Re: [netmod] yang-data-ext issues Andy Bierman
- Re: [netmod] yang-data-ext issues Kent Watsen
- Re: [netmod] yang-data-ext issues Robert Varga
- Re: [netmod] yang-data-ext issues Ladislav Lhotka
- Re: [netmod] yang-data-ext issues Martin Bjorklund
- Re: [netmod] yang-data-ext issues Andy Bierman
- Re: [netmod] yang-data-ext issues Martin Bjorklund
- Re: [netmod] yang-data-ext issues Andy Bierman
- Re: [netmod] yang-data-ext issues Robert Varga
- Re: [netmod] yang-data-ext issues Juergen Schoenwaelder
- Re: [netmod] yang-data-ext issues Robert Varga
- Re: [netmod] yang-data-ext issues Juergen Schoenwaelder
- Re: [netmod] yang-data-ext issues Martin Bjorklund
- Re: [netmod] yang-data-ext issues Martin Bjorklund
- Re: [netmod] yang-data-ext issues Andy Bierman
- Re: [netmod] yang-data-ext issues Martin Bjorklund
- Re: [netmod] yang-data-ext issues Andy Bierman
- [netmod] Extensions vs new YANG versions [was Re:… Robert Wilton
- Re: [netmod] yang-data-ext issues Robert Wilton
- Re: [netmod] Extensions vs new YANG versions [was… Ladislav Lhotka
- Re: [netmod] yang-data-ext issues Ladislav Lhotka
- Re: [netmod] yang-data-ext issues Ladislav Lhotka
- Re: [netmod] yang-data-ext issues Martin Bjorklund
- Re: [netmod] yang-data-ext issues Martin Bjorklund
- Re: [netmod] yang-data-ext issues Martin Bjorklund
- Re: [netmod] yang-data-ext issues Ladislav Lhotka
- Re: [netmod] yang-data-ext issues Andy Bierman
- Re: [netmod] yang-data-ext issues Kent Watsen
- Re: [netmod] yang-data-ext issues Martin Bjorklund
- Re: [netmod] yang-data-ext issues Martin Bjorklund
- Re: [netmod] yang-data-ext issues Andy Bierman
- Re: [netmod] yang-data-ext issues Andy Bierman
- Re: [netmod] yang-data-ext issues Ladislav Lhotka
- Re: [netmod] yang-data-ext issues Juergen Schoenwaelder
- Re: [netmod] yang-data-ext issues Ladislav Lhotka
- Re: [netmod] yang-data-ext issues Andy Bierman
- Re: [netmod] yang-data-ext issues Ladislav Lhotka
- Re: [netmod] yang-data-ext issues Ladislav Lhotka
- Re: [netmod] yang-data-ext issues Andy Bierman
- Re: [netmod] yang-data-ext issues Ladislav Lhotka
- Re: [netmod] yang-data-ext issues Martin Bjorklund
- Re: [netmod] yang-data-ext issues Robert Wilton
- Re: [netmod] yang-data-ext issues Ladislav Lhotka
- Re: [netmod] yang-data-ext issues Robert Wilton
- Re: [netmod] yang-data-ext issues Ladislav Lhotka
- Re: [netmod] yang-data-ext issues Juergen Schoenwaelder
- Re: [netmod] yang-data-ext issues Ladislav Lhotka
- Re: [netmod] yang-data-ext issues Andy Bierman
- Re: [netmod] yang-data-ext issues Juergen Schoenwaelder
- Re: [netmod] yang-data-ext issues Ladislav Lhotka
- Re: [netmod] yang-data-ext issues Kent Watsen
- Re: [netmod] yang-data-ext issues Andy Bierman
- Re: [netmod] yang-data-ext issues Kent Watsen
- Re: [netmod] yang-data-ext issues Juergen Schoenwaelder
- Re: [netmod] yang-data-ext issues Kent Watsen
- Re: [netmod] yang-data-ext issues Juergen Schoenwaelder
- Re: [netmod] yang-data-ext issues Martin Bjorklund
- Re: [netmod] yang-data-ext issues Ladislav Lhotka
- Re: [netmod] yang-data-ext issues Martin Bjorklund
- Re: [netmod] yang-data-ext issues Martin Bjorklund
- Re: [netmod] yang-data-ext issues Martin Bjorklund
- Re: [netmod] yang-data-ext issues Ladislav Lhotka
- Re: [netmod] yang-data-ext issues Martin Bjorklund
- Re: [netmod] yang-data-ext issues Robert Wilton
- Re: [netmod] yang-data-ext issues Martin Bjorklund
- Re: [netmod] yang-data-ext issues Juergen Schoenwaelder
- Re: [netmod] yang-data-ext issues Ladislav Lhotka
- Re: [netmod] yang-data-ext issues Robert Varga
- Re: [netmod] yang-data-ext issues Robert Varga
- Re: [netmod] yang-data-ext issues Kent Watsen
- Re: [netmod] yang-data-ext issues Juergen Schoenwaelder
- Re: [netmod] yang-data-ext issues Andy Bierman
- Re: [netmod] yang-data-ext issues Kent Watsen
- Re: [netmod] yang-data-ext issues Ladislav Lhotka