Hi,

Jernej Tuljak <jernej.tul...@mg-soft.si> wrote:
> On 30/01/2023 10:19, Italo Busi wrote:
> >
> > Yes, the intention is not to change the semantic of bar but to
> > introduce a more “restricted” identity from which bar could be derived
> >
> > Something like introducing an identity for italian-car in between car
> > and Ferrari identities
> >
> 
> I understand your intention. I do not understand the intention behind
> text in RFC 7950, however.
> 
> My clarification request was aimed at RFC 7950 authors and whether a
> revision like this could be considered as not changing the semantics
> of the original identity definition because:
> 
>    Otherwise, if the semantics of any previous definition are changed
>    (i.e., if a non-editorial change is made to any definition other
> than
>    those specifically allowed above), then this MUST be achieved by a
>    new definition with a new identifier.
> 
> So, RFC authors: Is "NEWB:bar" definition semantically equivalent to
> "OLD:bar" definition?

I think that this change isn't allowed according to RFC 7950, but it
should have been.  If there ever is a new version of YANG, this should
be fixed.

The quoted text says:

  if a non-editorial change is made to any definition other
  than those specifically allowed above, then this MUST be achieved by a
  new definition with a new identifier

This is a non-editorial change that is not "specifically allowed
above".


/martin



> 
> Jernej
> 
> > Italo
> >
> > *From:* Jernej Tuljak <jernej.tul...@mg-soft.si>
> > *Sent:* lunedì 30 gennaio 2023 08:51
> > *To:* Italo Busi <italo.b...@huawei.com>; netmod@ietf.org
> > *Subject:* Re: [netmod] Changing an identity base
> >
> > On 27/01/2023 17:54, Italo Busi wrote:
> >
> >     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?
> >
> >
> > I'd like a clarification regarding this as well.  Is "NEWB:bar"
> > definition semantically equivalent to "OLD:bar" definition?
> >
> > Jernej
> >
> >
> >     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
> >
_______________________________________________
netmod mailing list
netmod@ietf.org
https://www.ietf.org/mailman/listinfo/netmod

Reply via email to