Subject: [netmod] import by revision

From: Andy Bierman <[email-masked]>
Date: Thu, 31 May 2012 12:19:09 -0700

Hi,

I think the use-case for import-by-revision in sec. 5.1.1 is
really vague and the example is not clear.

    When the author of "a" publishes a new revision, the changes may not
    be acceptable to the author of "b".  If the new revision is
    acceptable, the author of "b" can republish with an updated revision
    in the "import" statement.

This is wrong.  Why wouldn't the changes to module "a" be acceptable
if the author follows the update rules in section 10?

The import exact revision rule is too fragile and does not match
any real use cases:

    7.1.5.1.  The import's revision-date Statement

        The import's "revision-date" statement is used to specify the exact
        version of the module to import.  The "revision-date" statement MUST
         match the most recent "revision" statement in the imported module.

The most common and important use case is to require "version>= X", not "version == X".
I know this can cause optional nodes to suddenly appear in expanded uses-stmts,
but this is actually a feature (reusing multiple versions of a complex type in
the same data model is a bad idea).

The relevant revision date is the one that the client or other data model starts
relying on the presence of a particular definition.  After that point, since
only legal changes are being made, the client or other data model can upgrade
to a new version without breaking anything.

Andy

---

From: Martin Bjorklund <[email-masked]>
Date: Thu, 31 May 2012 23:00:40 +0200 (CEST)

Hi,

I think I agree with you.  I have never seen import by revision being
used.  include by revision, however, is used, and useful.

Note that RFC 6087 says:

   The revision-date substatement within the imports statement SHOULD be
   present if any groupings are used from the external module.

/martin

Andy Bierman <[email-masked]> wrote:
> _______________________________________________
> netmod mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/netmod
>

---

From: Andy Bierman <[email-masked]>
Date: Thu, 31 May 2012 16:18:48 -0700

> used.  include by revision, however, is used, and useful.
I suppose, but I don't agree that XML namespaces are somehow precious
resources that need to be used over and over again.  Submodules promote
giant kitchen-sink module design, so I like to discourage their use.

>     present if any groupings are used from the external module.

This is really because YANG conformance is so primitive.
The guideline probably needs MUST, not SHOULD.   Adding new objects
to the conformance of module X as a side effect of a change in module Y
is a weakness of the YANG conformance model.

Andy

>
> Andy Bierman<[email-masked]>  wrote:
>> Hi,
>>