Adding OpenConfig YANG models.

Change-Id: I0a2fdd5826e80933cf4b9ae939ff3051acec02aa
diff --git a/models/openconfig/src/main/yang/aft/openconfig-aft-ethernet.yang b/models/openconfig/src/main/yang/aft/openconfig-aft-ethernet.yang
new file mode 100644
index 0000000..cf933db
--- /dev/null
+++ b/models/openconfig/src/main/yang/aft/openconfig-aft-ethernet.yang
@@ -0,0 +1,89 @@
+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;    
+  }
+}
\ No newline at end of file