On Tue, Jul 13, 2021 at 8:07 AM Balázs Lengyel <balazs.leng...@ericsson.com> wrote:
> Hello Andy, > > Looking through the use-cases I think the producer will always know > whether it includes default values or not. This is the case if the instance > data set is produced by the server e.g. in UC4, UC5, or if it created by > some design activity UC1, UC2, UC3, UC8. (UC6 and UC7 are so broad and > loosely defined it is hard to say much about them.) > > > > Once the producer knows whether defaults are included or not it can set > the include-defaults accordingly, so the default value for include-defaults > is not so important. However, I chose trim as the default because: > > - during the WGLC the draft explicitly stated that defaults SHOULD NOT > be included and the WG was happy/ok with that > - IMHO It is better to have short files, > > > I strongly object to having a default-stmt since it does matter and the usage is incorrect. If the include-defaults is not set then conveying a default value of 'trim' is incorrect. Leaving it out of a representation does not change the semantics of the model. The consumer will add that leaf = "trim" if it is missing. Andy Note, I used the term *producer*, as IMHO the above is true in all cases > whether the server produces the file or some design activity creates the > server. > > Regards Balazs > > > > *From:* netmod <netmod-boun...@ietf.org> *On Behalf Of *Andy Bierman > *Sent:* 2021. július 8., csütörtök 19:16 > *To:* NetMod WG <netmod@ietf.org> > *Subject:* [netmod] yang-instance-file include-defaults leaf > > > > Hi, > > > > The module has this object: > > > > leaf includes-defaults { > > type enumeration { > > enum report-all { > > value 1; > > description > > "All data nodes SHOULD be included independent of > > any default values."; > > } > > enum trim { > > value 2; > > description > > "Data nodes that have a default defined and where > > the actual value is the default value SHOULD > > NOT be included."; > > } > > enum explicit { > > value 3; > > description > > "Data nodes that have a default defined and where > > the actual value is the default value SHOULD NOT be > > included. However, if the actual value was set by > > a NETCONF client or other management application > > by the way of an explicit management operation the > > data node SHOULD be included."; > > } > > } > > default trim; > > > > The draft is extremely server-centric, like most IETF standards, but this > > leaf is too server-centric to ignore. > > > > Consider the possibility that the source of the file is NOT a NETCONF > server. > > This data may not be known so the default of "trim" may not be correct. > > > > IMO this leaf is noise because any tool that knows the schema will also > > know the YANG defaults. The solution is incomplete anyway because > > the presence of a leaf that has a YANG default is not enough. > > The "report-all-tagged" mode must be used to identify defaults. > > IMO this leaf should be removed, but at least add an enum called "unknown". > > > > > > Andy > > > > >
_______________________________________________ netmod mailing list netmod@ietf.org https://www.ietf.org/mailman/listinfo/netmod