Yes, bar's relationship to base identity foo is Backward-Compatible in both 
cases.  We've used the "multiple base" methodology in some of the 
recently-released BBF models, as one example.

The main potential concern is that (A) is a bit awkward (in my opinion), and 
whether your YANG tooling will handle that.  (B) is also likely easier to read 
for your end-users.  (YMMV).

Thanks;
-Jeff


From: netmod <netmod-boun...@ietf.org> On Behalf Of Italo Busi
Sent: Friday, January 27, 2023 11:55 AM
To: netmod@ietf.org
Subject: [netmod] Changing an identity base

According to section 11 of RFC7950, the following change is considered BC: o A 
"base" statement may be added to an "identity" statement. Since, as explained 
in section 7.18.2 of RF
External 
(italo.busi=40huawei....@dmarc.ietf.org<mailto:italo.busi=40huawei....@dmarc.ietf.org>)
  Report This 
Email<https://protection.inkyphishfence.com/report?id=Y29tbXNjb3BlL2plZmYuaGFydGxleUBjb21tc2NvcGUuY29tLzA0Njc2ZWNlMmFlNGM3OTQzOTFhMzZlNzNjOWQ5ZmY3LzE2NzQ4Mzg1MDEuMTM=#key=4a1d6108a6ce092fcc6b62878ef6f9d0>
  FAQ<https://www.inky.com/banner-faq>  Protection by 
INKY<https://www.inky.com/protection-by-inky>

According to section 11 of RFC7950, the following change is considered BC:

   o  A "base" statement may be added to an "identity" statement.

Since, as explained in section 7.18.2 of RFC7950, the derivation of identities 
is transitive, my understanding is that replacing a "base" statement with new  
"base" statement which is derived from the previous one is also a BC change.

Considering the example below, the NEW (A) change is BC according to section 11 
of RFC7950. However, NEW (B) is equivalent to NEW (A), since the new baz is 
derived from foo, and therefore it is also a BC change.

Is my understanding correct?

Thanks, Italo

OLD

identity foo {}

identity bar {
  base foo;
}

NEW (A)

identity foo {}

identity baz {
  base foo
}

identity bar {
  base foo;
  base baz;
}

NEW (B)

identity foo {}

identity baz {
  base foo
}

identity bar {
  base baz;
}

_______________________________________________
netmod mailing list
netmod@ietf.org
https://www.ietf.org/mailman/listinfo/netmod

Reply via email to