Working with the set of IEEE 802 YANG modules currently in github as of today (10/30/2018)
================
The ieee802-ethernet-link-oam.yang errors that had been flagged during Yumadump-pro validation were due to a defect in the validator. This has been corrected in Yumadump-pro. (Mandatory objects are allowed in a conditional augment statement.)
The ieee802-dot1ab-lldp.yang module is flagged during yanglint validation:
warn: Schema node "type" not found (deref(.)/../type) with context node "/ieee802-dot1ab-lldp:lldp/port/name".
warn: Schema node "type" not found (deref(.)/../type = 'iana-if-type:ethernetCsmacd' or deref(.)/../type) with context node "/ieee802-dot1ab-lldp:lldp/port/name".
If we could review the following change, which appears to resolve the validation warning. However, I would like confirmation that the change will follow the intent of the model as designed. FYI- I did not see any other yang module under <github>/Yangmodels/standard/ that uses the deref() function.
[ellison@c30 draft]$ diff ieee802-dot1ab-lldp.yang.ORIG ieee802-dot1ab-lldp-FIX.yang
759,761c759,761
< type if:interface-ref;
< must "deref(.)/../type = 'ianaift:ethernetCsmacd'"
< + " or deref(.)/../type = 'ianaift:ieee8023adLag'" {
---
> type if:interface-ref;
> must "/if:interfaces/if:interface[if:name=current()]/if:type = 'ianaift:ethernetCsmacd'"
> + " or /if:interfaces/if:interface[if:name=current()]/if:type = 'ianaift:ieee8023adLag'" {
There remains an issue with the ieee802-dot1q-ats YANG module:
output from Yumadump-pro validation:
Error: Mandatory object 'shaper-ref' not allowed in external augment statement
ieee802-dot1q-ats.yang:76.5: error(335): mandatory object not allowed
RFC 7950 allows a _conditionally_ mandatory node in an 'augment', but 'shaper-ref' nor the 'augment' is conditional. Is there some condition that should be in place on this portion of the model?
Regards,
Mark