Hi, I'm refreshing an old thread to clarify specific use case, see below...
Dne 25.2.2016 v 16:31 Martin Bjorklund napsal(a): > William Ivory <wiv...@brocade.com> wrote: >> >> -----Original Message----- >> From: Martin Bjorklund [mailto:m...@tail-f.com] >> Sent: 25 February 2016 15:17 >> To: William Ivory <wiv...@brocade.com> >> Cc: netmod@ietf.org >> Subject: Re: [netmod] Clarification needed for YANG 1.1 XPATH context >> >> William Ivory <wiv...@brocade.com> wrote: >>> Hi, >>> >>> I'm looking for clarification on the meaning of the following >>> paragraph in section 6.4.1 (XPATH context) in RFC6020bis: >>> >>> 'If a node that exists in the accessible tree has a non-presence >>> container as a child, then the non-presence container also exists in >>> the tree.' >>> >>> It's unclear to me what this is trying to say, and why - for example, >>> does this mean that I need to validate any 'must' and 'when' >>> statements on the child container even when nothing within that child >>> container is configured? >> must expressions are always evaluated if the node where the must >> expression is defined exists, regardless of the number of children >> this node has. >> >> [wivory] So in my example where the child container (non-presence) has >> NO children, then it doesn't exist, and any must statement on it >> should not be run. Only when a non-presence container has a non-zero >> number of children should any 'must' statements on that container be >> run. >> >> [wivory] If that's the case, then would it be correct to say that the >> intention of this paragraph is as a reminder that one must evaluate >> 'must' statements on nodes that have no inherent meaning and exist >> only because they contain child nodes? > No; section 7.5.3 says: > > When a datastore is validated, all "must" constraints are > conceptually evaluated once for each node in the accessible tree (see > Section 6.4.1). > > And the quoted paragraph of 6.4.1 says that the NP-container > (conceptually) exists if its parent exists - regardless of number of > children. > > So if the parent exists, any must expressions in the NP-container are > evaluated. > what about top-level NP-container with must constraint? Is a root node something which is always present in accessible tree (even in an empty tree)? Intuitively, I believe that it is, so even constraints on top-level NP-containers are supposed to be evaluated, but I cannot find something about it in RFC. Regards, Radek _______________________________________________ netmod mailing list netmod@ietf.org https://www.ietf.org/mailman/listinfo/netmod