Subject: [netmod] Module updating rules - removing base statements from an "identityref" type

From: Jernej Tuljak <[email-masked]>
Date: Thu, 30 Sep 2021 10:29:09 +0200

Hi,

can someone clarify the meaning of the following bullet in Section 11, 
RFC7950:

    o  A "base" statement may be removed from an "identityref" type,
       provided there is at least one "base" statement left.

This seems to enable the value space of a definition to narrow across 
revisions of the same module.  Most other changes in this section seem 
to only allow expansion of the value space, relaxing of constraints, 
etc. What kind of revisions does this bullet cover?

Jernej

---

From: Martin Björklund <[email-masked]>
Date: Thu, 30 Sep 2021 10:48:35 +0200 (CEST)

Hi,

Jernej Tuljak <[email-masked]> wrote:
> revisions of the same module.

"base" statements are ANDed, so removing one expands the value space.

9.10.2 says:

   Valid values for an identityref are any identities derived from all
   the identityref's base identities. 

/martin

> Most other changes in this section seem

---

From: Jernej Tuljak <[email-masked]>
Date: Thu, 30 Sep 2021 12:22:59 +0200

>     the identityref's base identities.

Oh, my. That is not how I understood "identityref"s with multiple bases 
worked at all.

Jernej

---

From: Martin Björklund <[email-masked]>
Date: Thu, 30 Sep 2021 12:29:29 +0200 (CEST)

Jernej Tuljak <[email-masked]> wrote:
> Oh, my. That is not how I understood "identityref"s with multiple
> bases worked at all.

If you want OR-semantics you can use a union.

/martin