Subject: [netmod] Hi Benoit. I am the author of draft-ietf-pim-igmp-mld-snooping-yang. Now datatracker shows YANG validation errors, and it augments IEEE YANG model. Could you please help me how to deal with them? Thanks a lot!

From: Hongji Zhao <[email-masked]>
Date: Sun, 9 Feb 2020 09:18:50 +0000

Hi Benoit,

The draft-ietf-pim-igmp-mld-snooping-yang is about IGMP & MLD Snooping yang module.
https://datatracker.ietf.org/doc/draft-ietf-pim-igmp-mld-snooping-yang/

1) Now this draft has passed WGLC, but datatracker is still showing several YANG Validation errors. It's saying it can't find the ietf-l2vpn, ietf-pseudowires, ieee802-dot1q-bridge module.
   It was suggested that the errors are a tool issue.   How to deal with it?

2) This draft imports and augments an IEEE YANG model (ieee802-dot1q-bridge module). Is there any specific process we need to follow when augments an IEEE YANG model?

Thanks a lot!

*********************************************************************************************************************************************
Error details:
draft-ietf-pim-igmp-mld-snooping-yang-09.txt:
xym 0.4:
Extracting 'ietf-igmp-mld-snooping'
   Getting YANG file name from module name: ietf-igmp-mld-snooping.yang
   Removed 10 empty lines

[email-masked]:
pyang 2.1.1: pyang --verbose --ietf -p {libs} {model}:
# read [email-masked] (CL)
# read /a/www/ietf-datatracker/6.117.0/env/share/yang/modules/ietf/ietf-inet-types.yang
# read /a/www/ietf-ftp/yang/draftmod/[email-masked]
# read /a/www/ietf-datatracker/6.117.0/env/share/yang/modules/ietf/ietf-yang-types.yang
# read /a/www/ietf-ftp/yang/draftmod/[email-masked]
# read /a/www/ietf-datatracker/6.117.0/env/share/yang/modules/ietf/ietf-interfaces.yang
# read /a/www/ietf-ftp/yang/rfcmod/[email-masked]
# read /a/www/ietf-datatracker/6.117.0/env/share/yang/modules/ietf/ietf-routing.yang
# read /a/www/ietf-ftp/yang/rfcmod/[email-masked]
# read /a/www/ietf-datatracker/6.117.0/env/share/yang/modules/ietf/ietf-routing-types.yang
# read /a/www/ietf-ftp/yang/rfcmod/[email-masked]
# read /a/www/ietf-datatracker/6.117.0/env/share/yang/modules/ietf/ietf-network-instance.yang
# read /a/www/ietf-ftp/yang/rfcmod/[email-masked]
# read /a/www/ietf-datatracker/6.117.0/env/share/yang/modules/ietf/ietf-ip.yang
# read /a/www/ietf-ftp/yang/rfcmod/[email-masked]
# read /a/www/ietf-datatracker/6.117.0/env/share/yang/modules/ietf/ietf-yang-schema-mount.yang
# read /a/www/ietf-ftp/yang/rfcmod/[email-masked]
[email-masked]:27: error: module "ietf-l2vpn" not found in search path
[email-masked]:34: error: module "ietf-pseudowires" not found in search path
[email-masked]:38: error: module "ieee802-dot1q-bridge" not found in search path

yanglint 0.14.80: yanglint --verbose -p {rfclib} -p {draftlib} -p {tmplib} {model} -i:
err : Data model "ietf-l2vpn" not found.
err : Importing "ietf-l2vpn" module into "ietf-igmp-mld-snooping" failed.
err : Module "ietf-igmp-mld-snooping" parsing failed.

*********************************************************************************************************************************************

module ietf-igmp-mld-snooping {
  yang-version 1.1;
  namespace "urn:ietf:params:xml:ns:yang:ietf-igmp-mld-snooping";

  prefix ims;

  import ietf-inet-types {
    prefix "inet";
  }

  ...

  import ieee802-dot1q-bridge {
    prefix "dot1q";
  }

  ...

  augment "/dot1q:bridges/dot1q:bridge" {
    description
      "Reference IGMP & MLD snooping instance in BRIDGE scenario";

    leaf igmp-snooping-instance {
      type igmp-mld-snooping-instance-ref;

      description
        "Configure IGMP snooping instance under bridge view";
    }
    leaf mld-snooping-instance {
      type igmp-mld-snooping-instance-ref;

      description
        "Configure MLD snooping instance under bridge view";
    }
  }

BR/Hongji