submodule openconfig-aft-ethernet {
  belongs-to "openconfig-aft" {
    prefix "oc-aft";
  }

  import openconfig-extensions { prefix "oc-ext"; }
  import openconfig-yang-types { prefix "oc-yang"; }

  // Include common cross-AFT groupings from the common submodule.
  include openconfig-aft-common;

  oc-ext:openconfig-version "0.3.0";

  organization
    "OpenConfig working group";

  contact
    "OpenConfig working group
    www.openconfig.net";

  description
    "Submodule containing definitions of groupings for the abstract
    forwarding tables for Ethernet.";

  revision 2017-05-10 {
    description
      "Refactor to provide concretised per-AF schemas per AFT.";
    reference "0.3.0";
  }

  grouping aft-ethernet-structural {
    description
      "Structural grouping defining the schema for the Ethernet
      abstract forwarding table.";

    list mac-entry {
      key "mac-address";

      description
        "List of the Ethernet entries within the abstract
        forwarding table. This list is keyed by the outer MAC address
        of the Ethernet frame.";

      leaf mac-address {
        type leafref {
          path "../config/mac-address";
        }
        description
          "Reference to the outer MAC address matched by the
          entry.";
      }

      container config {
        description
          "Configuration parameters for the Ethernet AFT entry.";
        uses aft-ethernet-entry-config;
      }

      container state {
        config false;
        description
          "Operational state parameters for the Ethernet AFT
          entry.";
        uses aft-ethernet-entry-config;
        uses aft-ethernet-entry-state;
      }

      uses aft-common-nhop-structural;
    }
  }

  grouping aft-ethernet-entry-config {
    description
      "Configuration parameters for the Ethernet AFT entry.";

    leaf mac-address {
        type oc-yang:mac-address;
        description
          "The outer MAC address of the Ethernet frame that must
          be matched for the AFT entry to be utilised.";
    }
  }

  grouping aft-ethernet-entry-state {
    description
      "Operational state parameters for the Ethernet AFT entry.";
    uses aft-common-entry-state;    
  }
}