Mahesh Jethanandani <mjethanand...@gmail.com> wrote: > > > > On Mar 5, 2018, at 6:27 AM, Martin Bjorklund <m...@tail-f.com> wrote: > > > > Martin Bjorklund <m...@tail-f.com <mailto:m...@tail-f.com>> wrote: > >> Juergen Schoenwaelder <j.schoenwael...@jacobs-university.de> wrote: > >>> On Mon, Mar 05, 2018 at 02:54:18PM +0100, Martin Bjorklund wrote: > >>>>> > >>>>> So it seems the running code got it right. ;-) > >>>> > >>>> As the author of that code, I think that was purely by accident... > >>>> > >>>> But I'm not convinced it is the correct solution. We have one example > >>>> in the other thread where someone was confused by the "rw" flag and > >>>> thought that it implied that the node would be present in the data > >>>> tree. > >>>> > >>> > >>> So what does rw mean? > >>> > >>> (i) The schema node has a rw property. > >>> (ii) The schema node can be instantiated and the instantiated data > >>> node > >>> has a rw property. > >>> > >>> I think it is difficult to have both at the same time. If the tree is > >>> a representation of schema nodes, then (i) seems to make more > >>> sense. That said, the explanation in 2.6 is somewhat vague since it > >>> says 'data' and not 'nodes' (like everywhere else): > >>> > >>> OLD: > >>> > >>> <flags> is one of: > >>> rw for configuration data > >>> ro for non-configuration data, output parameters to rpcs > >>> and actions, and notification parameters > >>> > >>> NEW: > >>> > >>> <flags> is one of: > >>> rw for configuration data nodes > >>> ro for non-configuration data nodes, output parameters to rpcs > >>> and actions, and notification parameters > >> > >> I think this is ok. But that means that we also have to add: > >> > >> -- for a choice or case node > >> > >> But in order to be consistent, we should probably have: > >> > >> -- for a choice, case, input or output node > > > > Whoops, it shouldn't be "--". Somehow we should say that no flags are > > used for choice,case,input,output. > > I would agree, as having choice/case statements represented as schema > nodes is not only confusing in the tree diagram
Well, choice and case *are* schema nodes. They are printed within parentheses, which may give you a hint that they are not data nodes and thus not visible in the payload. The tree diagram is intended as a compact, easy-to-read representation of the structure of the YANG module. They will not contain all details needed to produce good examples. /martin , but also confusing > when constructing an example. The tree diagram represents it as a > node, where one would put it in the example, but validation complained > about it (not being a node). > > > > > > > /martin > > > > > >> > >> > >> This means that the correct tree syntax for choice and case will be: > >> > >> +-- (subnet)? > >> +-- :(prefix-length) > >> | +--rw prefix-length? uint8 > >> +-- :(netmask) > >> +--rw netmask? yang:dotted-quad > >> > >> > >> /martin > >> > >> > >>> The document (as far as I searched for it) does not clearly say that > >>> 'node' means 'schema node'. In hindsight, it might have been useful to > >>> explicitely import terminology from RFC 7950 and to use it carefully > >>> (RFC 7950 has 'schema node' and 'data node' but here we largely talk > >>> about 'nodes' - and my assumption is that this means 'schema nodes'.) > >> > >> _______________________________________________ > >> netmod mailing list > >> netmod@ietf.org > >> https://www.ietf.org/mailman/listinfo/netmod > >> > > > > _______________________________________________ > > netmod mailing list > > netmod@ietf.org <mailto:netmod@ietf.org> > > https://www.ietf.org/mailman/listinfo/netmod > > <https://www.ietf.org/mailman/listinfo/netmod> > Mahesh Jethanandani > mjethanand...@gmail.com > _______________________________________________ netmod mailing list netmod@ietf.org https://www.ietf.org/mailman/listinfo/netmod