Andy Bierman <[email protected]> writes:

> On Mon, Jun 8, 2015 at 11:49 AM, Ladislav Lhotka <[email protected]> wrote:
>> Andy Bierman <[email protected]> writes:
>>
>>> On Mon, Jun 8, 2015 at 8:39 AM, Kent Watsen <[email protected]> wrote:
>>>>
>>>>
>>>>
>>>>>I think the two leafs are coupled through the path statement and so the
>>>>>values of both should conform to the same type. If I extend Balazs¹
>>>>>example with uint8 and 1..10 range:
>>>>>
>>>>>1. Would a leafref value of 256 be acceptable?
>>>>>
>>>>>2. How about "foo"?
>>>>
>>>>
>>>> I agree it doesn't makes sense, but is the configuration invalid?
>>>>
>>>> The leafref is marked require-instance=false, it just means a matching
>>>> condition will never succeed.
>>>>
>>>
>>> If require-instance = false then the node must conform to
>>> the data type for the leaf.  This means the typedef used
>>> in the implemented version.
>>>
>>>> Would a configuration be invalid if a "when" expression could never
>>>> evaluate to true?
>>>>
>>>
>>> The node would never appear in a configuration.
>>> A must-stmt then is always false would make the config invalid.
>>
>> What's actually relevant to the subject of this thread (and supports
>> Kent's point somewhat) is this example:
>>
>> leaf foo {
>>   type uint8;
>>   must ". <= 10";
>> }
>> leaf bar {
>>   type leafref {
>>     require-instance false;
>>     path "../foo";
>>   }
>> }
>>
>> Should <bar>20</bar> be flagged as invalid? IMO no. At first sight it
>> looks exactly like Balazs' example but in fact it is different - if
>> there is no "foo", the must expression doesn't apply.
>>
>
> I don't see where a range "1..20" is introduced.
> The "leaf bar" has the same type as /foo,
> so that is uint8.
>
> I see your point... does "require-instance false"
> mean it could be a valid value for the leaf, but
> no instances happen to exist with that value?
>
> Or does it mean valid for the same data-type but the instance
> may never exist?
>
> I think "valid for the data type" is correct.
> The must-stmt says valid for the leaf to exist.
> That is a separate test.

Agreed. Lada

>
>> Lada
>
> Andy
>
>>
>>
>>>
>>>
>>>>
>>>> Kent
>>>>
>>>
>>>
>>> Andy
>>>
>>>> _______________________________________________
>>>> netmod mailing list
>>>> [email protected]
>>>> https://www.ietf.org/mailman/listinfo/netmod
>>
>> --
>> Ladislav Lhotka, CZ.NIC Labs
>> PGP Key ID: E74E8C0C

-- 
Ladislav Lhotka, CZ.NIC Labs
PGP Key ID: E74E8C0C

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

Reply via email to