On Mon, Jun 24, 2019 at 10:01 AM Michal Vaško <[email protected]> wrote:
> Hi Rob, > I think there is a problem in the RFC because using only allowed steps I > got invalid data from initially valid data. That cannot be correct. > > No. See sec. 7.5.7 If a non-presence container does not have any child nodes, the container may or may not be present in the XML encoding. Just because your retrieval does not contain the NP-container, that does not mean the NP-container was not present in the server for the mandatory-stmt validation. Regards, > Michal > > Andy > On Monday, June 24, 2019 18:52 CEST, "Rob Wilton (rwilton)" < > [email protected]> wrote: > > > Hi Michal, > > > > My thoughts: > > > > According to 7.5.1: > > > > In the first style, the container has no meaning of its own, existing > > only to contain child nodes. In particular, the presence of the > > container node with no child nodes is semantically equivalent to the > > absence of the container node. YANG calls this style a "non-presence > > container". This is the default style. > > > > Hence your request (because the NP container does not have any children) > is equivalent to: > > > > <TOP> > > <L/> > > </TOP> > > > > which fails the "mandatory" check. > > > > Thanks, > > Rob > > > > > > > -----Original Message----- > > > From: netmod <[email protected]> On Behalf Of Michal Vaško > > > Sent: 24 June 2019 17:39 > > > To: netmod <[email protected]> > > > Subject: [netmod] mandatory choice with non-presence container case > > > > > > Hi, > > > I have encountered a situation that I think is not covered by RFC > 7950. My > > > specific use-case was as follows. > > > > > > model: > > > > > > container TOP { > > > leaf L { > > > type empty; > > > } > > > choice A { > > > mandatory true; > > > container C; > > > } > > > } > > > > > > data: > > > > > > <TOP> > > > <L/> > > > <C/> > > > </TOP> > > > > > > Parsing was successful, but printing these data back to XML produced: > > > > > > <TOP> > > > <L/> > > > </TOP> > > > > > > and parsing this correctly failed with missing mandatory choice. > According > > > to section 7.5.7 [1], I think the C container could be omitted but the > > > whole situation does not seem correct. Thank you for any input. > > > > > > Regards, > > > Michal > > > > > > [1] https://tools.ietf.org/html/rfc7950#section-7.5.7 > > > > > > _______________________________________________ > > > netmod mailing list > > > [email protected] > > > https://www.ietf.org/mailman/listinfo/netmod > > > > _______________________________________________ > netmod mailing list > [email protected] > https://www.ietf.org/mailman/listinfo/netmod >
_______________________________________________ netmod mailing list [email protected] https://www.ietf.org/mailman/listinfo/netmod
