Martin Bjorklund <[email protected]> writes: > Ladislav Lhotka <[email protected]> wrote: >> On Mon, 2017-12-04 at 18:22 +0100, Juergen Schoenwaelder wrote: >> > On Mon, Dec 04, 2017 at 06:05:58PM +0100, Ladislav Lhotka wrote: >> > > On Mon, 2017-12-04 at 17:34 +0100, Martin Bjorklund wrote: >> > > > Ladislav Lhotka <[email protected]> wrote: >> > > > > Hi, >> > > > > >> > > > > if we have >> > > > > >> > > > > augment "/target/node" { >> > > > > when "..."; >> > > > > ... >> > > > > } >> > > > > >> > > > > is the "when" expression supposed to be evaluated separately in each >> > > > >> > > > datastore, >> > > > > and the augment applied only in those datastores where the result is >> > > > > true? >> > > > >> > > > Yes. >> > > >> > > But then it cannot be guaranteed that the schema for <operational> is a >> > > superset >> > > of the schema of configuration datastores - the when expression can >> > > evaluate >> > > to >> > > false in <operational> but true in <intended>. >> > > >> > >> > For me, its still the same schema - a when expression does not change >> > my notion of 'schema'. > > Agreed. > >> Well, according to draft-ietf-netmod-revised-datastores-07: >> >> o datastore schema: The combined set of schema nodes for all modules >> supported by a particular datastore, taking into consideration any >> deviations and enabled features for that datastore. > > This text does not write that nodes with false when expressions are > not considered part of the schema. > >> And "when" determines whether a given schema node is valid or not. So if a >> schema node is invalid in the schema of <operational> but valid in the >> schema of >> <intended> > > They are still part of the schema. > > Again, it is a matter of terminology - when we say that the "schema" > of <operational> is a superset of the "schema" of the conventional > datastores, we do not exclude false when expressions from the > "schema". As per the defintion above we include the modules, their > features and deviations in the term "schema".
My understanding was that superset means that the schema tree of <intended> has to be a subtree of <operational> schema tree. The paragraph in revised-datastores-07 seems to support this interpretation as it talks about "YANG nodes omitted from <operational>", not about modules, features and deviations: The datastore schema for <operational> MUST be a superset of the combined datastore schema used in all configuration datastores except that YANG nodes supported in a configuration datastore MAY be omitted from <operational> if a server is not able to accurately report them. Lada > > > /martin > > > >>, then the former can hardly be a superset of the latter. >> >> Lada >> >> > >> > /js >> > >> -- >> Ladislav Lhotka >> Head, CZ.NIC Labs >> PGP Key ID: 0xB8F92B08A9F76C67 >> >> _______________________________________________ >> netmod mailing list >> [email protected] >> https://www.ietf.org/mailman/listinfo/netmod >> -- Ladislav Lhotka Head, CZ.NIC Labs PGP Key ID: 0xB8F92B08A9F76C67 _______________________________________________ netmod mailing list [email protected] https://www.ietf.org/mailman/listinfo/netmod
