On Wed, Jan 18, 2017 at 03:42:07PM -0800, Andy Bierman wrote:
> On Wed, Jan 18, 2017 at 3:11 PM, Juergen Schoenwaelder <
> [email protected]> wrote:
>
> > On Wed, Jan 18, 2017 at 02:53:06PM -0800, Andy Bierman wrote:
> > > Hi,
> > >
> > > The reason the status-stmt is broken is because status=obsolete is not
> > > inherited from the parent. The status obsolete means it is gone from the
> > > server.
> > > Since YANG data is hierarchical, any descendants of the obsolete node
> > > are no longer accessible in any way.
> > >
> >
> > I am not convinced yet that the status-stmt is broken:
> >
> > - Not all references in YANG are hierarchical nested nodes.
> >
> > - References can cross module boundaries and also organizational
> > boundaries.
> >
> > - Tools can create warnings if non-obsolete definitions reference an
> > obsolete definition so that editors can make proper updates.
> >
> >
> yangdump-pro has warnings. pyang ignores the status-stmt.
>
>
> The text that is broken is in sec. 7.21.2
>
> If a definition is "current", it MUST NOT reference a "deprecated" or
> "obsolete" definition within the same module.
>
> If a definition is "deprecated", it MUST NOT reference an "obsolete"
>
> definition within the same module.
>
>
> We do not seem to have any agreement on what it means to reference an
> object.
>
> It seems obvious that our intention was to disallow current child nodes
> within an obsolete or deprecated parent node.
>
> IMO we need Errata to clarify what it means.
> The YANG compiler MUST generate errors for these 'MUST NOT' violations in
> the YANG syntax.
>
But:
- References can cross module boundaries and thereby also
organizational boundaries.
I think we have to accept that at least temporarily the MUST NOT may
be violated in reality. I think the errata should actually modify the
MUST NOT to a SHOULD NOT in the quoted text.
I also note that obsolete does not _require_ to remove implementation:
o "obsolete" means that the definition is obsolete and SHOULD NOT be
implemented and/or can be removed from implementations.
If I have something worthwhile referencing something marked obsolete,
I may decide to keep the referenced obsolete something.
/js
--
Juergen Schoenwaelder Jacobs University Bremen gGmbH
Phone: +49 421 200 3587 Campus Ring 1 | 28759 Bremen | Germany
Fax: +49 421 200 3103 <http://www.jacobs-university.de/>
_______________________________________________
netmod mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/netmod