Here's a straightforward, hypothetical use case where a mandatory top-level 
non-config leaf makes sense (in my opinion anyway):

    module example-uptime {
        prefix uptime;
        namespace urn:X-example:example-uptime;

        import ietf-yang-types {
            prefix yang;
        }

        leaf uptime {
            type yang:timeticks;
            config false;
            mandatory true;

            description "The amount of time since the server was last powered 
on or restarted.";
        }
    }

- Alex

________________________________________
From: Phil Shafer <[email protected]>
Sent: Thursday, 19 January 2017 12:51 p.m.
To: Alex Campbell
Cc: Ladislav Lhotka; NETMOD WG
Subject: Re: [netmod] top-level mandatory nodes

I was really looking for a use case.  What's is a specific scenario
where one would want a device to always report data even when there
is no interesting data to report (since interesting data would mean
the device would want to report it)?

I've seen this misused where the modeler wants the device to say
"I've got no TLA data", where the model should be happy that being
implicit in the lack of data.

Thanks,
 Phil



Alex Campbell writes:
>The purpose of a mandatory config=false node is to say that the data is 
>_always_ needed.
>
>In the case where the node is also top-level, if your server fails to provide 
>that data,
> then your server is not compliant with the YANG.
>
>If the data is sometimes not needed, then the module author should not have 
>marked it as
> mandatory.
>
>Alex
>
>________________________________________
>From: netmod <[email protected]> on behalf of Phil Shafer 
><[email protected]>
>Sent: Thursday, 19 January 2017 10:35 a.m.
>To: Ladislav Lhotka
>Cc: NETMOD WG
>Subject: Re: [netmod] top-level mandatory nodes
>
>Ladislav Lhotka writes:
>>>> 6087bis says in sec. 5.10:
>>>>  Top-level database data definitions MUST NOT be mandatory.
>>Right - I think the following should do:
>>OLD
>>  Top-level database data definitions MUST NOT be mandatory.
>>NEW
>>  Top-level data nodes that represent configuration MUST NOT be mandatory.
>
>[old news, but...]
>
>I guess I'm missing the use case for mandatory top-level config=false
>data models.  Can you please describe one?  I imagine that just because
>my device implements a non-config data model, I should not be forced
>to generate data for it when/if that data is not needed.  What's the
>scenario where I need to be forced to make this data?
>
>Thanks,
> Phil
>
>_______________________________________________
>netmod mailing list
>[email protected]
>https://www.ietf.org/mailman/listinfo/netmod

_______________________________________________
netmod mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/netmod

Reply via email to