diff --git a/Makefile b/Makefile
index 5129e81..8f51890 100644
--- a/Makefile
+++ b/Makefile
@@ -39,7 +39,7 @@
 yang-lint: pyang
 	#pyang --lint ./config-models/*.x/files/yang/*.yang
 	pyang --lint ./config-models/aether-1.x/files/yang/*.yang
-	pyang --lint ./config-models/aether-2.x/files/yang/*.yang
+	pyang --lint ./config-models/aether-2.0.x/files/yang/*.yang
 	pyang --lint ./config-models/aether-2.1.x/files/yang/*.yang
 	pyang --lint ./config-models/aether-2.2.x/files/yang/*.yang
 	pyang --lint ./config-models/aether-3.x/files/yang/*.yang
diff --git a/config-models/aether-2.0.x/CHANGELOG.md b/config-models/aether-2.0.x/CHANGELOG.md
new file mode 100644
index 0000000..c6c3b1e
--- /dev/null
+++ b/config-models/aether-2.0.x/CHANGELOG.md
@@ -0,0 +1,9 @@
+<!--
+SPDX-FileCopyrightText: 2021 Open Networking Foundation
+
+SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+-->
+
+Changes on 1/3/2022
+===================
+
diff --git a/config-models/aether-2.x/Chart.yaml b/config-models/aether-2.0.x/Chart.yaml
similarity index 89%
rename from config-models/aether-2.x/Chart.yaml
rename to config-models/aether-2.0.x/Chart.yaml
index b7f98e5..682915a 100644
--- a/config-models/aether-2.x/Chart.yaml
+++ b/config-models/aether-2.0.x/Chart.yaml
@@ -3,8 +3,8 @@
 # SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
 
 apiVersion: v2
-name: config-model-aether
-version: 2.0.3
+name: config-model-aether-2
+version: 2.0.0
 kubeVersion: ">=1.18.0"
 appVersion: 2.0.0
 description: Aether config model
diff --git a/config-models/aether-2.0.x/files/aether-2.0.0.tree b/config-models/aether-2.0.x/files/aether-2.0.0.tree
new file mode 100644
index 0000000..24f7a1b
--- /dev/null
+++ b/config-models/aether-2.0.x/files/aether-2.0.0.tree
@@ -0,0 +1,161 @@
+module: onf-application
+  +--rw application
+     +--rw application* [id]
+        +--rw id              application-id
+        +--rw display-name?   string
+        +--rw description?    at:description
+        +--rw address         ietf:host
+        +--rw endpoint* [endpoint-id]
+        |  +--rw endpoint-id      yg:yang-identifier
+        |  +--rw port-start?      ietf:port-number
+        |  +--rw port-end?        ietf:port-number
+        |  +--rw protocol?        at:protocol
+        |  +--rw mbr
+        |  |  +--rw uplink?     at:bitrate
+        |  |  +--rw downlink?   at:bitrate
+        |  +--rw traffic-class?   -> /tc:traffic-class/traffic-class/id
+        |  +--rw display-name?    string
+        +--rw enterprise      -> /ent:enterprise/enterprise/id
+
+module: onf-connectivity-service
+  +--rw connectivity-service
+     +--rw connectivity-service* [id]
+        +--rw id                    connectivity-service-id
+        +--rw display-name?         string
+        +--rw description?          at:description
+        +--rw core-5g-endpoint?     inet:uri
+        +--rw acc-prometheus-url?   inet:uri
+
+module: onf-device-group
+  +--rw device-group
+     +--rw device-group* [id]
+        +--rw id              device-group-id
+        +--rw description?    at:description
+        +--rw display-name?   string
+        +--rw imsis* [imsi-id]
+        |  +--rw imsi-id            yg:yang-identifier
+        |  +--rw imsi-range-from?   uint64
+        |  +--rw imsi-range-to?     uint64
+        |  +--rw display-name?      string
+        +--rw ip-domain?      -> /ipd:ip-domain/ip-domain/id
+        +--rw device
+        |  +--rw mbr
+        |  |  +--rw uplink      at:bitrate
+        |  |  +--rw downlink    at:bitrate
+        |  +--rw traffic-class    -> /tc:traffic-class/traffic-class/id
+        +--rw site            -> /st:site/site/id
+
+module: onf-enterprise
+  +--rw enterprise
+     +--rw enterprise* [id]
+        +--rw id                      enterprise-id
+        +--rw display-name?           string
+        +--rw description?            at:description
+        +--rw connectivity-service* [connectivity-service]
+           +--rw connectivity-service    -> /cs:connectivity-service/connectivity-service/id
+           +--rw enabled?                boolean
+
+module: onf-ip-domain
+  +--rw ip-domain
+     +--rw ip-domain* [id]
+        +--rw id               ip-domain-id
+        +--rw display-name?    string
+        +--rw dnn              at:dnn
+        +--rw dns-primary?     inet:ip-address
+        +--rw dns-secondary?   inet:ip-address
+        +--rw subnet           inet:ipv4-prefix
+        +--rw admin-status?    at:admin-status
+        +--rw mtu?             at:mtu
+        +--rw description?     at:description
+        +--rw enterprise       -> /ent:enterprise/enterprise/id
+
+module: onf-site
+  +--rw site
+     +--rw site* [id]
+        +--rw id                 site-id
+        +--rw display-name?      string
+        +--rw small-cell* [small-cell-id]
+        |  +--rw small-cell-id    yg:yang-identifier
+        |  +--rw address?         inet:host
+        |  +--rw tac              at:tac
+        |  +--rw enable?          boolean
+        |  +--rw display-name?    string
+        +--rw monitoring
+        |  +--rw edge-cluster-prometheus-url?      inet:uri
+        |  +--rw edge-monitoring-prometheus-url?   inet:uri
+        |  +--rw edge-device* [edge-device-id]
+        |     +--rw edge-device-id    yg:yang-identifier
+        |     +--rw display-name?     string
+        |     +--rw description?      at:description
+        +--rw enterprise         -> /ent:enterprise/enterprise/id
+        +--rw imsi-definition
+        |  +--rw mcc           at:mcc
+        |  +--rw mnc           at:mnc
+        |  +--rw enterprise    at:ent
+        |  +--rw format        string
+        +--rw description?       at:description
+
+module: onf-template
+  +--rw template
+     +--rw template* [id]
+        +--rw id                  template-id
+        +--rw display-name?       string
+        +--rw sst?                at:sst
+        +--rw sd?                 at:sd
+        +--rw slice
+        |  +--rw mbr
+        |     +--rw uplink?                at:bitrate
+        |     +--rw downlink?              at:bitrate
+        |     +--rw uplink-burst-size?     at:burst
+        |     +--rw downlink-burst-size?   at:burst
+        +--rw default-behavior    at:behavior
+        +--rw description?        at:description
+
+module: onf-traffic-class
+  +--rw traffic-class
+     +--rw traffic-class* [id]
+        +--rw id              traffic-class-id
+        +--rw display-name?   string
+        +--rw arp?            at:arp
+        +--rw qci?            at:qci
+        +--rw pelr?           at:pelr
+        +--rw pdb?            at:pdb
+        +--rw description?    at:description
+
+module: onf-upf
+  +--rw upf
+     +--rw upf* [id]
+        +--rw id                 upf-id
+        +--rw address            inet:host
+        +--rw port               inet:port-number
+        +--rw config-endpoint?   inet:uri
+        +--rw display-name?      string
+        +--rw description?       at:description
+        +--rw enterprise         -> /ent:enterprise/enterprise/id
+        +--rw site               -> /st:site/site/id
+
+module: onf-vcs
+  +--rw vcs
+     +--rw vcs* [id]
+        +--rw id                  vcs-id
+        +--rw display-name?       string
+        +--rw device-group* [device-group]
+        |  +--rw device-group    -> /dg:device-group/device-group/id
+        |  +--rw enable?         boolean
+        +--rw default-behavior    at:behavior
+        +--rw filter* [application]
+        |  +--rw application    -> /app:application/application/id
+        |  +--rw priority?      at:priority
+        |  +--rw allow?         boolean
+        +--rw upf?                -> /upf:upf/upf/id
+        +--rw description?        at:description
+        +--rw enterprise          -> /ent:enterprise/enterprise/id
+        +--rw site                -> /st:site/site/id
+        +--rw sst                 at:sst
+        +--rw sd                  at:sd
+        +--rw slice
+           +--rw mbr
+              +--rw uplink?                at:bitrate
+              +--rw downlink?              at:bitrate
+              +--rw uplink-burst-size?     at:burst
+              +--rw downlink-burst-size?   at:burst
diff --git a/config-models/aether-2.x/files/yang/ietf-inet-types.yang b/config-models/aether-2.0.x/files/yang/ietf-inet-types.yang
similarity index 100%
rename from config-models/aether-2.x/files/yang/ietf-inet-types.yang
rename to config-models/aether-2.0.x/files/yang/ietf-inet-types.yang
diff --git a/config-models/aether-2.x/files/yang/ietf-yang-types.yang b/config-models/aether-2.0.x/files/yang/ietf-yang-types.yang
similarity index 100%
rename from config-models/aether-2.x/files/yang/ietf-yang-types.yang
rename to config-models/aether-2.0.x/files/yang/ietf-yang-types.yang
diff --git a/config-models/aether-2.0.x/files/yang/onf-aether-types.yang b/config-models/aether-2.0.x/files/yang/onf-aether-types.yang
new file mode 100755
index 0000000..679648e
--- /dev/null
+++ b/config-models/aether-2.0.x/files/yang/onf-aether-types.yang
@@ -0,0 +1,159 @@
+// SPDX-FileCopyrightText: 2021 Open Networking Foundation
+//
+// SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+
+module onf-aether-types {
+  namespace "http://opennetworking.org/aether/aether-types";
+  prefix at;
+
+  import ietf-inet-types { prefix inet; }
+
+  organization "Open Networking Foundation.";
+  contact "Scott Baker";
+  description "A set of base types for aether modeling.";
+
+  revision "2021-09-10" {
+    description "Aether Base Types";
+    reference "RFC 6087";
+  }
+
+  typedef bitrate {
+      type uint64 {
+      }
+    description "The typedef for bitrate";
+  }
+
+  typedef burst {
+      type uint32 {
+      }
+      default 625000;
+    description "The typedef for burst";
+  }
+
+  typedef mcc {
+      type string {
+        pattern '[0-9]{3}';
+      }
+    description "The typedef for mcc";
+  }
+
+  typedef mnc {
+      type string {
+        pattern '[0-9]{2,3}';
+      }
+    description "The typedef for mnc";
+  }
+
+  typedef tac {
+      type string {
+        length 4..8;
+        pattern '[0-9A-F\.]*';
+      }
+    description "The typedef for tac";
+  }
+
+  typedef ent {
+      type uint32 {
+        range 0..999;
+      }
+    description "The typedef for ent";
+  }
+
+  typedef dnn {
+      type string {
+        length 1..32;
+      }
+    description "The typedef for dnn";
+  }
+
+  typedef sst {
+      type uint8 {
+        range 1..255;
+      }
+    description "The typedef for sst";
+  }
+
+  typedef sd {
+      type uint32 {
+        range 0..16777215;
+      }
+    description "The typedef for sd";
+  }
+
+  typedef qci {
+      type uint8 {
+        range 1..32;
+      }
+    description "The typedef for qci";
+  }
+
+  typedef arp {
+      type uint8 {
+        range 1..15;
+      }
+    description "The typedef for arp";
+  }
+
+  typedef pelr {
+      type int8 {
+        range 0..10;
+      }
+    description "The typedef for pelr";
+  }
+
+  typedef pdb {
+      type uint16 {
+        range 0..1000;
+      }
+    description "The typedef for pdb";
+  }
+
+  typedef priority {
+    type uint8 {
+      // priorities 201-255 are reserved for system use
+      range 0..200;
+    }
+    description "The typedef for priority";
+  }
+
+  // "TCP" or "UDP"
+  typedef protocol {
+      type string {
+        length 3;
+        pattern "TCP|UDP";
+      }
+      default "TCP";
+    description "The typedef for protocol";
+  }
+
+  // "ENABLE" | "MAINTENTANCE" | "DISABLE"
+  typedef admin-status {
+      type string {
+        length 0..16;
+        pattern "ENABLE|MAINTENANCE|DISABLE";
+      }
+      default "ENABLE";
+    description "The typedef for admin-status";
+  }
+
+  typedef behavior {
+      type string {
+        length 0..20;
+        pattern "DENY-ALL|ALLOW-ALL|ALLOW-PUBLIC";
+      }
+    description "The typedef for behavior";
+  }
+
+  typedef mtu {
+      type inet:port-number;
+      default 1492;
+    description "The typedef for mtu";
+  }
+
+  typedef description {
+    type string {
+      length 1..1024;
+    }
+    description "The typedef for description";
+  }
+}
diff --git a/config-models/aether-2.0.x/files/yang/onf-application.yang b/config-models/aether-2.0.x/files/yang/onf-application.yang
new file mode 100755
index 0000000..c48cab1
--- /dev/null
+++ b/config-models/aether-2.0.x/files/yang/onf-application.yang
@@ -0,0 +1,128 @@
+// SPDX-FileCopyrightText: 2021 Open Networking Foundation
+//
+// SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+
+module onf-application {
+  namespace "http://opennetworking.org/enterprise/application";
+  prefix app;
+
+  import ietf-inet-types{ prefix ietf; }
+  import ietf-yang-types{ prefix yg; }
+  import onf-aether-types{ prefix at; }
+  import onf-enterprise{ prefix ent; }
+  import onf-traffic-class{ prefix tc; }
+
+  organization "Open Networking Foundation.";
+  contact "Scott Baker";
+  description
+    "An Aether Application is an application that devices may
+     connect to. Includes a set of endpoints where services are
+     provided.";
+
+  revision "2021-09-10" {
+    description "Aether Application.";
+    reference "RFC 6087";
+  }
+
+  typedef application-id {
+        type yg:yang-identifier {
+            length 1..32;
+        }
+    description "The typedef for application-id";
+  }
+
+  container application {
+    description "The top level container";
+
+    list application {
+      key "id";
+      description
+        "List of applications";
+
+      leaf id {
+        type application-id;
+        description "ID for this application.";
+      }
+
+      leaf display-name {
+        type string {
+            length 1..80;
+        }
+        description "display name to use in GUI or CLI";
+      }
+
+      leaf description {
+        type at:description;
+        description "description of this application";
+      }
+
+      leaf address {
+        type ietf:host;
+        mandatory true;
+        description
+            "Address of this application. Either a hostname, an IP, or a subnet.";
+      }
+
+      list endpoint {
+        key "endpoint-id";
+        leaf endpoint-id {
+          type yg:yang-identifier;
+          description
+              "Id of this endpoint";
+        }
+        leaf port-start {
+          type ietf:port-number;
+          description
+              "First port in range";
+        }
+        leaf port-end {
+          type ietf:port-number;
+          description
+              "Last port in range";
+        }
+        leaf protocol {
+          type at:protocol;
+          description
+              "Protocol of this endpoint";
+        }
+        container mbr {
+          description "Maximum bitrate";
+          leaf uplink {
+            type at:bitrate;
+            units bps;
+            description "Per-Device per-Application MBR uplink data rate in bps";
+          }
+
+          leaf downlink {
+            type at:bitrate;
+            units bps;
+            description "Per-Device per application MBR downlink data rate in bps";
+          }
+        }
+        leaf traffic-class {
+          type leafref {
+            path "/tc:traffic-class/tc:traffic-class/tc:id";
+          }
+          description
+            "Link to traffic class";
+        }
+        leaf display-name {
+          type string {
+              length 1..80;
+          }
+          description "display name to use in GUI or CLI";
+        }
+        description "list for endpoint";
+      }
+
+      leaf enterprise {
+        type leafref {
+          path "/ent:enterprise/ent:enterprise/ent:id";
+        }
+        mandatory true;
+        description
+          "Link to enterprise that owns this Application. May be set to None if the application is global to all Enterprises.";
+      }
+    }
+  }
+}
diff --git a/config-models/aether-2.x/files/yang/connectivity-service.yang b/config-models/aether-2.0.x/files/yang/onf-connectivity-service.yang
similarity index 68%
rename from config-models/aether-2.x/files/yang/connectivity-service.yang
rename to config-models/aether-2.0.x/files/yang/onf-connectivity-service.yang
index e86e360..e1d53b6 100755
--- a/config-models/aether-2.x/files/yang/connectivity-service.yang
+++ b/config-models/aether-2.0.x/files/yang/onf-connectivity-service.yang
@@ -2,28 +2,30 @@
 //
 // SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
 
-module connectivity-service {
+module onf-connectivity-service {
   namespace "http://opennetworking.org/aether/connectivity-service";
   prefix cs;
 
   import ietf-inet-types { prefix inet; }
+  import ietf-yang-types{ prefix yg; }
+  import onf-aether-types { prefix at; }
 
   organization "Open Networking Foundation.";
   contact "Scott Baker";
-  description "To generate JSON from this use command
-    pyang -f jtoxx test1.yang | python3 -m json.tool > test1.json
-    Copied from YangUIComponents project";
+  description
+    "An Aether Connectivity service is the linkage between the
+     ROC and a core that provides connectivity.";
 
-  revision "2020-11-30" {
+  revision "2021-10-21" {
     description "An Aether Connectivity Service. Specifies the endpoints where the sdcore-adapter should push configuration to. A single connectivity service may be attached to multiple Enterprises.";
     reference "RFC 6087";
   }
 
   typedef connectivity-service-id {
-        type string {
+        type yg:yang-identifier {
             length 1..32;
         }
-    description "The typedef for connectivity-service-id";
+   description "The typedef for connectivity-service-id";
   }
 
   container connectivity-service {
@@ -47,20 +49,19 @@
       }
 
       leaf description {
-        type string {
-          length 1..100;
-        }
+        type at:description;
         description "description of this connectivity service";
       }
 
-      leaf spgwc-endpoint {
+      leaf core-5g-endpoint {
         type inet:uri;
-        description "url of the spgwc service";
+        description "url of the 5g core";
       }
 
-      leaf hss-endpoint {
-        type inet:uri;
-        description "url of the hss service";
+      leaf acc-prometheus-url {
+          type inet:uri;
+          description
+            "URL of ACC prometheus";
       }
     }
   }
diff --git a/config-models/aether-2.0.x/files/yang/onf-device-group.yang b/config-models/aether-2.0.x/files/yang/onf-device-group.yang
new file mode 100755
index 0000000..a93c295
--- /dev/null
+++ b/config-models/aether-2.0.x/files/yang/onf-device-group.yang
@@ -0,0 +1,141 @@
+// SPDX-FileCopyrightText: 2021 Open Networking Foundation
+//
+// SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+
+module onf-device-group {
+  namespace "http://opennetworking.org/aether/device-group";
+  prefix dg;
+
+  import ietf-yang-types{ prefix yg; }
+  import onf-aether-types { prefix at; }
+  import onf-ip-domain{ prefix ipd; }
+  import onf-site{ prefix st; }
+  import onf-traffic-class{ prefix tc; }
+
+  organization "Open Networking Foundation.";
+  contact "Scott Baker";
+  description
+    "An aether device group represents a list of device IMSIS.
+     This list is expressed as a set of ranges,
+         [(from_imsi, to_imsi),
+          (from_imsi, to_imsi),
+          ...].
+     Each device group belongs to a site and has associated
+     with it an ip-profile that determines the IP address
+     and DNS settings that apply to devices within the
+     group";
+
+  revision "2021-06-02" {
+    description "An Aether Device Group";
+    reference "RFC 6087";
+  }
+
+  typedef device-group-id {
+        type yg:yang-identifier {
+            length 1..32;
+        }
+    description "The typedef for device-group-id";
+  }
+
+  container device-group {
+    description "The top level container";
+
+    list device-group {
+      key "id";
+      description
+        "List of device groups";
+
+      leaf id {
+        type device-group-id;
+        description "ID for this device group.";
+      }
+
+      leaf description {
+        type at:description;
+        description "description of this device group";
+      }
+
+      leaf display-name {
+        type string {
+            length 1..80;
+        }
+        description "display name to use in GUI or CLI";
+      }
+
+      list imsis {
+        // TODO: imsi-range-from cannot be used as a list index
+        key "imsi-id";
+        leaf imsi-id {
+          type yg:yang-identifier;
+          description
+              "Id of this imsi-range";
+        }
+        leaf imsi-range-from {
+          type uint64;
+          description
+              "value of imsi-range-from";
+        }
+        leaf imsi-range-to {
+          type uint64;
+          description
+              "value of imsi-range-to";
+        }
+        leaf display-name {
+          type string {
+              length 1..80;
+          }
+          description "display name to use in GUI or CLI";
+        }
+        description
+          "List of imsi ranges that comprise this group. It's acceptable for
+           a range to degenerate to being a singleton";
+      }
+
+      leaf ip-domain {
+        type leafref {
+          path "/ipd:ip-domain/ipd:ip-domain/ipd:id";
+        }
+        description
+          "Link to ip-domain settings that determine the pool of IP addresses,
+           as well as the domain resolver settings to use";
+      }
+
+      container device {
+        description "Per-device QOS Settings";
+        container mbr {
+          description "Maximum bitrate";
+          leaf uplink {
+            type at:bitrate;
+            units bps;
+            mandatory true;
+            description "Per-device MBR uplink data rate in bps";
+          }
+
+          leaf downlink {
+            type at:bitrate;
+            units bps;
+            mandatory true;
+            description "Per-device MBR downlink data rate in bps";
+          }
+        }
+        leaf traffic-class {
+          type leafref {
+            path "/tc:traffic-class/tc:traffic-class/tc:id";
+          }
+          mandatory true;
+          description
+            "Link to traffic class";
+        }
+      }
+
+      leaf site {
+        type leafref {
+          path "/st:site/st:site/st:id";
+        }
+        mandatory true;
+        description
+          "Link to site";
+      }
+    }
+  }
+}
diff --git a/config-models/aether-2.x/files/yang/enterprise.yang b/config-models/aether-2.0.x/files/yang/onf-enterprise.yang
similarity index 77%
rename from config-models/aether-2.x/files/yang/enterprise.yang
rename to config-models/aether-2.0.x/files/yang/onf-enterprise.yang
index 9bc6bbb..16ad5f9 100755
--- a/config-models/aether-2.x/files/yang/enterprise.yang
+++ b/config-models/aether-2.0.x/files/yang/onf-enterprise.yang
@@ -2,28 +2,30 @@
 //
 // SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
 
-module enterprise {
+module onf-enterprise {
   namespace "http://opennetworking.org/aether/enterprise";
   prefix ent;
 
-  import connectivity-service { prefix cs; }
+  import ietf-yang-types{ prefix yg; }
+  import onf-aether-types { prefix at; }
+  import onf-connectivity-service { prefix cs; }
 
   organization "Open Networking Foundation.";
   contact "Scott Baker";
-  description "To generate JSON from this use command
-    pyang -f jtoxx test1.yang | python3 -m json.tool > test1.json
-    Copied from YangUIComponents project";
+  description
+    "An Aether Enterprise is an administration entity that
+     has ownership of resrouces.";
 
-  revision "2020-11-30" {
+  revision "2021-06-02" {
     description "An Aether Enterprise. Used to distinguish ownership of devices and other resources as well as a domain of configuration.";
     reference "RFC 6087";
   }
 
   typedef enterprise-id {
-        type string {
+        type yg:yang-identifier {
             length 1..32;
         }
-    description "The typedef for enterprise-id";
+   description "The typedef for enterprise-id";
   }
 
   container enterprise {
@@ -47,9 +49,7 @@
       }
 
       leaf description {
-        type string {
-          length 1..100;
-        }
+        type at:description;
         description "description of this enterprise";
       }
 
@@ -68,7 +68,7 @@
           description
             "Allow or disallow pushes to this connectivity service";
         }
-        description "The container for connectivity-service";
+        description "The list for connectivity-service";
       }
     }
   }
diff --git a/config-models/aether-2.0.x/files/yang/onf-ip-domain.yang b/config-models/aether-2.0.x/files/yang/onf-ip-domain.yang
new file mode 100755
index 0000000..e896cc5
--- /dev/null
+++ b/config-models/aether-2.0.x/files/yang/onf-ip-domain.yang
@@ -0,0 +1,104 @@
+// SPDX-FileCopyrightText: 2021 Open Networking Foundation
+//
+// SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+
+module onf-ip-domain {
+  namespace "http://opennetworking.org/aether/ip-domain";
+  prefix ipd;
+
+  import ietf-inet-types { prefix inet; }
+  import ietf-yang-types{ prefix yg; }
+  import onf-aether-types { prefix at; }
+  import onf-enterprise{ prefix ent; }
+
+  organization "Open Networking Foundation.";
+  contact "Scott Baker";
+  description
+    "An Aether IP-Domain. This is a list of available subnets
+     that may be assigned to UEs, as well as DNS servers and other
+     metadata";
+
+  revision "2021-06-02" {
+    description "An Aether IP and Domain Specification";
+    reference "RFC 6087";
+  }
+
+  typedef ip-domain-id {
+        type yg:yang-identifier {
+            length 1..32;
+        }
+    description "The typedef for ip-domain-id";
+  }
+
+  container ip-domain {
+    description "The top level container";
+
+    list ip-domain {
+      key "id";
+      description
+        "List of ip domains";
+
+      leaf id {
+        type ip-domain-id;
+        description "ID for this ip domain.";
+      }
+
+      leaf display-name {
+        type string {
+            length 1..80;
+        }
+        description "display name to use in GUI or CLI";
+      }
+
+      leaf dnn {
+        type at:dnn;
+        mandatory true;
+        description "DNN/APN";
+      }
+
+      leaf dns-primary {
+        type inet:ip-address;
+        description "primary dns server name";
+      }
+
+      leaf dns-secondary {
+        type inet:ip-address;
+        description "secondary dns server name";
+      }
+
+      // Note: Cannot use a subnet as a list key. Dropped support from a
+      // list of subnets to a single subnet. Revisit in the future.
+      leaf subnet {
+        type inet:ipv4-prefix;
+        mandatory true;
+        description "subnet to allocate ip addresses from";
+      }
+
+      leaf admin-status {
+        type at:admin-status;
+        description "administrative status";
+      }
+
+      leaf mtu {
+        type at:mtu;
+        description "maximum transmission unit";
+      }
+
+      leaf description {
+        type at:description;
+        description "description of this ip domain";
+      }
+
+      // Ip-Domain is always owned by an Enterprise, because it contains
+      // IP addresses relative to that Enterprise.
+      leaf enterprise {
+        type leafref {
+          path "/ent:enterprise/ent:enterprise/ent:id";
+        }
+        mandatory true;
+        description
+          "Link to enterprise that owns this IP-Domain";
+      }
+    }
+  }
+}
diff --git a/config-models/aether-2.0.x/files/yang/onf-site.yang b/config-models/aether-2.0.x/files/yang/onf-site.yang
new file mode 100755
index 0000000..b5f22c4
--- /dev/null
+++ b/config-models/aether-2.0.x/files/yang/onf-site.yang
@@ -0,0 +1,172 @@
+// SPDX-FileCopyrightText: 2021 Open Networking Foundation
+//
+// SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+
+module onf-site {
+  namespace "http://opennetworking.org/aether/site";
+  prefix st;
+
+  import ietf-inet-types { prefix inet; }
+  import ietf-yang-types{ prefix yg; }
+  import onf-aether-types{ prefix at; }
+  import onf-enterprise{ prefix ent; }
+
+  organization "Open Networking Foundation.";
+  contact "Scott Baker";
+  description
+    "An Aether site is a location where resources are deployed.";
+
+  revision "2021-09-10" {
+    description "An Aether Site.";
+    reference "RFC 6087";
+  }
+
+  typedef site-id {
+        type yg:yang-identifier {
+            length 1..32;
+        }
+    description "The typedef for site-id";
+  }
+
+  container site {
+    description "The top level container";
+
+    list site {
+      key "id";
+      description
+        "List of site";
+
+      leaf id {
+        type site-id;
+        description "ID for this site.";
+      }
+
+      leaf display-name {
+        type string {
+            length 1..80;
+        }
+        description "display name to use in GUI or CLI";
+      }
+
+      list small-cell {
+        key "small-cell-id";
+        leaf small-cell-id {
+          type yg:yang-identifier;
+          description
+            "Id of small cell";
+        }
+        leaf address {
+          type inet:host;
+          description
+            "Address of small cell";
+        }
+        leaf tac {
+          type at:tac;
+          mandatory true;
+          description
+              "Type Allocation Code";
+        }
+        leaf enable {
+          type boolean;
+          default true;
+          description
+            "Enable this small cell";
+        }
+        leaf display-name {
+          type string {
+              length 1..80;
+          }
+          description "display name to use in GUI or CLI";
+        }
+        description
+          "List of small cell addresses";
+      }
+
+      container monitoring {
+        leaf edge-cluster-prometheus-url {
+          type inet:uri;
+          description
+            "URL of edge cluster prometheus";
+        }
+        leaf edge-monitoring-prometheus-url {
+          type inet:uri;
+          description
+            "URL of monitoring prometheus";
+        }
+        list edge-device {
+          key "edge-device-id";
+          leaf edge-device-id {
+            type yg:yang-identifier;
+            description
+              "Id of edge monitoring device";
+          }
+          leaf display-name {
+            type string {
+                length 1..80;
+            }
+            description "display name to use in GUI or CLI";
+          }
+          leaf description {
+            type at:description;
+            description "description of this site";
+          }
+          description
+            "List of edge monitoring devices";
+        }
+        description
+            "container for monitoring";
+      }
+
+      leaf enterprise {
+        type leafref {
+          path "/ent:enterprise/ent:enterprise/ent:id";
+        }
+        mandatory true;
+        description
+          "Link to enterprise that owns this site";
+      }
+
+      container imsi-definition {
+        leaf mcc {
+          type at:mcc;
+          mandatory true;
+          description "mobile country code";
+        }
+        leaf mnc {
+          type at:mnc;
+          mandatory true;
+          description "mobile network code";
+        }
+        leaf enterprise {
+          type at:ent;
+          mandatory true;
+          description "enterprise-specific identifier";
+        }
+        leaf format {
+          type string {
+            length 15;
+          }
+          mandatory true;
+          description "IMSI format specifier, describes how fields are packed into an IMSI. Must be exactly 15 characters long. For example, CCCNNNEEESSSSSS.";
+          // Format specifiers:
+          //   C = MCC
+          //   N = MNC
+          //   E = Enterprise
+          //   0 = Forced Zero
+          //   S = Subscriber ID
+          // default is
+          //   3 digit MCC
+          //   3 digit MNC
+          //   3 digit enterprise ID
+          //   5 digit subscriber ID
+        }
+        description "container for imsi-defination";
+      }
+
+      leaf description {
+        type at:description;
+        description "description of this site";
+      }
+    }
+  }
+}
diff --git a/config-models/aether-2.0.x/files/yang/onf-template.yang b/config-models/aether-2.0.x/files/yang/onf-template.yang
new file mode 100755
index 0000000..bbd94ef
--- /dev/null
+++ b/config-models/aether-2.0.x/files/yang/onf-template.yang
@@ -0,0 +1,104 @@
+// SPDX-FileCopyrightText: 2021 Open Networking Foundation
+//
+// SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+
+module onf-template {
+  namespace "http://opennetworking.org/aether/template";
+  prefix tp;
+
+  import ietf-yang-types{ prefix yg; }
+  import onf-aether-types{ prefix at; }
+
+  organization "Open Networking Foundation.";
+  contact "Scott Baker";
+  description
+    "The aether vcs-template holds common parameters used
+     by a virtual connectivity service. Templates are used to
+     populate a VCS.";
+
+  revision "2021-09-10" {
+    description "An Aether Virtual Cellular Service Template";
+    reference "RFC 6087";
+  }
+
+  typedef template-id {
+        type yg:yang-identifier {
+            length 1..32;
+        }
+    description "The typedef for template-id";
+  }
+
+  container template {
+    description "The top level container";
+
+    list template {
+      key "id";
+      description
+        "List of vcs templates";
+
+      leaf id {
+        type template-id;
+        description "ID for this vcs template.";
+      }
+
+      leaf display-name {
+        type string {
+            length 1..80;
+        }
+        description "display name to use in GUI or CLI";
+      }
+
+      leaf sst {
+        type at:sst;
+        description "Slice/Service type";
+      }
+
+      leaf sd {
+        type at:sd;
+        description "Slice differentiator";
+      }
+
+      container slice {
+        description "Per-Slice QOS Settings";
+        container mbr {
+          description "Maximum bitrate";
+          leaf uplink {
+            type at:bitrate;
+            units bps;
+            description "Per-Slice MBR uplink data rate in bps";
+          }
+
+          leaf downlink {
+            type at:bitrate;
+            units bps;
+            description "Per-Slice MBR downlink data rate in bps";
+          }
+
+          leaf uplink-burst-size {
+            type at:burst;
+            units bytes;
+            description "Per-Slice Uplink burst size";
+          }
+
+          leaf downlink-burst-size {
+            type at:burst;
+            units bytes;
+            description "Per-Slice Downlink burst size";
+          }
+        }
+      }
+
+      leaf default-behavior {
+        type at:behavior;
+        mandatory true;
+        description
+          "Default behavior if no filter rules match";
+      }
+
+      leaf description {
+        type at:description;
+        description "description of this vcs template";
+      }
+    }
+  }
+}
diff --git a/config-models/aether-2.0.x/files/yang/onf-traffic-class.yang b/config-models/aether-2.0.x/files/yang/onf-traffic-class.yang
new file mode 100755
index 0000000..a592267
--- /dev/null
+++ b/config-models/aether-2.0.x/files/yang/onf-traffic-class.yang
@@ -0,0 +1,76 @@
+// SPDX-FileCopyrightText: 2021 Open Networking Foundation
+//
+// SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+
+module onf-traffic-class {
+  namespace "http://opennetworking.org/aether/traffic-class";
+  prefix tp;
+
+  import ietf-yang-types{ prefix yg; }
+  import onf-aether-types{ prefix at; }
+
+  organization "Open Networking Foundation.";
+  contact "Scott Baker";
+  description
+    "The aether traffic class associates qos constants
+     with a named class of service";
+
+  revision "2021-09-10" {
+    description "An Aether Traffic Class";
+    reference "RFC 6087";
+  }
+
+  typedef traffic-class-id {
+        type yg:yang-identifier {
+            length 1..32;
+        }
+    description "The typedef for traffic-class-id";
+  }
+
+  container traffic-class {
+    description "The top level container";
+
+    list traffic-class {
+      key "id";
+      description
+        "List of traffic class";
+
+      leaf id {
+        type traffic-class-id;
+        description "ID for this traffic class.";
+      }
+
+      leaf display-name {
+        type string {
+            length 1..80;
+        }
+        description "display name to use in GUI or CLI";
+      }
+
+      leaf arp {
+        type at:arp;
+        description "Allocation and Retention Priority. 1 is the highest. 15 is the lowest.";
+      }
+
+      leaf qci {
+        type at:qci;
+        description "QOS Class Identifier";
+      }
+
+      leaf pelr {
+        type at:pelr;
+        description "PELR exponent";
+      }
+
+      leaf pdb {
+        type at:pdb;
+        description "PDB";
+      }
+
+      leaf description {
+        type at:description;
+        description "description of this traffic class";
+      }
+    }
+  }
+}
diff --git a/config-models/aether-2.0.x/files/yang/onf-upf.yang b/config-models/aether-2.0.x/files/yang/onf-upf.yang
new file mode 100755
index 0000000..5c8be50
--- /dev/null
+++ b/config-models/aether-2.0.x/files/yang/onf-upf.yang
@@ -0,0 +1,98 @@
+// SPDX-FileCopyrightText: 2021 Open Networking Foundation
+//
+// SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+
+module onf-upf {
+  namespace "http://opennetworking.org/aether/upf";
+  prefix upf;
+
+  import ietf-inet-types { prefix inet; }
+  import ietf-yang-types{ prefix yg; }
+  import onf-aether-types { prefix at; }
+  import onf-enterprise{ prefix ent; }
+  import onf-site{ prefix st; }
+
+  organization "Open Networking Foundation.";
+  contact "Scott Baker";
+  description "A Aether UPF List is a named User Plane Function.";
+
+  revision "2021-09-16" {
+    description "An Aether User Plane Function";
+    reference "RFC 6087";
+  }
+
+  typedef upf-id {
+        type yg:yang-identifier {
+            length 1..32;
+        }
+   description "The typedef for upf-id";
+  }
+
+  container upf {
+    description "The top level container";
+
+    list upf {
+      key "id";
+      description
+        "A list of named upfs.";
+
+      leaf id {
+        type upf-id;
+        description "ID for this upf.";
+      }
+
+      leaf address {
+        type inet:host;
+        mandatory true;
+        description
+          "Address of UPF";
+      }
+
+      leaf port {
+        type inet:port-number;
+        mandatory true;
+        description
+            "Port for UPF";
+      }
+
+      leaf config-endpoint {
+        type inet:uri;
+        description "url for configuring the UPF";
+      }
+
+      leaf display-name {
+        type string {
+            length 1..80;
+        }
+        description "display name to use in GUI or CLI";
+      }
+
+      leaf description {
+        type at:description;
+        description "description of this UPF";
+      }
+
+      // UPFs are always owned by an Enterprise, since they typically exist on the
+      // Enterprise's edge.
+      leaf enterprise {
+        type leafref {
+          path "/ent:enterprise/ent:enterprise/ent:id";
+        }
+        mandatory true;
+        description
+          "Link to enterprise that owns this Access Point List";
+      }
+
+      // UPFs always reside at a site, as the exist on physical infrastructure. GUI
+      // will ensure that the tuple (DG, VCS, UPF) all exist on the same site.
+      leaf site {
+        type leafref {
+          path "/st:site/st:site/st:id";
+        }
+        mandatory true;
+        description
+          "Link to site";
+      }
+    }
+  }
+}
diff --git a/config-models/aether-2.0.x/files/yang/onf-vcs.yang b/config-models/aether-2.0.x/files/yang/onf-vcs.yang
new file mode 100755
index 0000000..c275565
--- /dev/null
+++ b/config-models/aether-2.0.x/files/yang/onf-vcs.yang
@@ -0,0 +1,187 @@
+// SPDX-FileCopyrightText: 2021 Open Networking Foundation
+//
+// SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+
+module onf-vcs {
+  namespace "http://opennetworking.org/aether/vcs";
+  prefix sl;
+
+  import ietf-yang-types{ prefix yg; }
+  import onf-aether-types{ prefix at; }
+  import onf-application{ prefix app; }
+  import onf-device-group{ prefix dg; }
+  import onf-enterprise{ prefix ent; }
+  import onf-upf { prefix upf; }
+  import onf-site{ prefix st; }
+
+  organization "Open Networking Foundation.";
+  contact "Scott Baker";
+  description
+    "An Aether Virtual Cellular Service (VCS) is
+     used to connect devices with applications";
+
+  revision "2021-09-10" {
+    description "An Aether Virtual Cellular Service";
+    reference "RFC 6087";
+  }
+
+  typedef vcs-id {
+        type yg:yang-identifier {
+            length 1..32;
+        }
+    description "The typedef for vcs-id";
+  }
+
+  container vcs {
+    description "The top level container";
+
+    list vcs {
+      key "id";
+      description
+        "List of virtual cellular services";
+
+      leaf id {
+        type vcs-id;
+        description "ID for this vcs.";
+      }
+
+      leaf display-name {
+        type string {
+            length 1..80;
+        }
+        description "display name to use in GUI or CLI";
+      }
+
+      list device-group {
+        key "device-group";
+        leaf device-group {
+          type leafref {
+            path "/dg:device-group/dg:device-group/dg:id";
+          }
+          description
+            "Link to device group";
+        }
+        leaf enable {
+          type boolean;
+          default true;
+          description
+            "Enable this device group";
+        }
+        description
+          "A list of device groups. Groups will only participate in
+           the VCS if the enable field is set to True";
+      }
+
+      leaf default-behavior {
+        type at:behavior;
+        mandatory true;
+        description
+          "Default behavior if no filter rules match";
+      }
+
+      list filter {
+        key "application";
+        leaf application {
+          type leafref {
+            path "/app:application/app:application/app:id";
+          }
+          mandatory true;
+          description
+            "Link to application";
+        }
+        leaf priority {
+          type at:priority;
+          default 0;
+          description
+            "Priority of this application";
+        }
+        leaf allow {
+          type boolean;
+          default true;
+          description
+            "Allow or deny this application";
+        }
+        description
+          "A list of applications to allow and/or deny. Rules are executed in
+           priority order. The first rule to match will determine the fate
+           of the packet.";
+      }
+
+      leaf upf {
+        type leafref {
+          path "/upf:upf/upf:upf/upf:id";
+        }
+        description
+          "Link to user plane that implements this vcf";
+      }
+
+      leaf description {
+        type at:description;
+        description "description of this vcs";
+      }
+
+      leaf enterprise {
+        type leafref {
+          path "/ent:enterprise/ent:enterprise/ent:id";
+        }
+        mandatory true;
+        description
+          "Link to enterprise that owns this VCS";
+      }
+
+      leaf site {
+        type leafref {
+          path "/st:site/st:site/st:id";
+        }
+	mandatory true;
+        description
+          "Link to site where this VCS is deployed";
+      }
+
+      // the following are populated from the template
+      leaf sst {
+        type at:sst;
+        mandatory true;
+        description "Slice/Service type. Immutable.";
+      }
+
+      leaf sd {
+        type at:sd;
+        mandatory true;
+        description "Slice differentiator. Immutable.";
+      }
+
+      container slice {
+        description "Per-Slice QOS Settings";
+        container mbr {
+          description "Maximum bitrate";
+          leaf uplink {
+            type at:bitrate;
+            units bps;
+            description "Per-Slice MBR uplink data rate in bps";
+          }
+
+          leaf downlink {
+            type at:bitrate;
+            units bps;
+            description "Per-Slice MBR downlink data rate in bps";
+          }
+
+          leaf uplink-burst-size {
+            type at:burst;
+            units bytes;
+            description "Per-Slice Uplink burst size";
+          }
+
+          leaf downlink-burst-size {
+            type at:burst;
+            units bytes;
+            description "Per-Slice Downlink burst size";
+          }
+        }
+      }
+
+      // end of items populated from the template
+    }
+  }
+}
diff --git a/config-models/aether-2.x/templates/_helpers.tpl b/config-models/aether-2.0.x/templates/_helpers.tpl
similarity index 100%
rename from config-models/aether-2.x/templates/_helpers.tpl
rename to config-models/aether-2.0.x/templates/_helpers.tpl
diff --git a/config-models/aether-2.0.x/templates/model.yaml b/config-models/aether-2.0.x/templates/model.yaml
new file mode 100644
index 0000000..301bfae
--- /dev/null
+++ b/config-models/aether-2.0.x/templates/model.yaml
@@ -0,0 +1,65 @@
+# SPDX-FileCopyrightText: 2021-present Open Networking Foundation <info@opennetworking.org>
+#
+# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+
+apiVersion: config.onosproject.org/v1beta1
+kind: Model
+metadata:
+  name: {{ template "aether.fullname" . }}
+  namespace: {{ .Release.Namespace }}
+  labels:
+    {{- include "aether.labels" . | nindent 4 }}
+spec:
+  plugin:
+    type: Aether
+    version: {{ .Chart.AppVersion | quote }}
+  modules:
+  - name: connectivity-service
+    organization: Open Networking Foundation
+    revision: 2021-10-21
+    file: onf-connectivity-service.yang
+  - name: enterprise
+    organization: Open Networking Foundation
+    revision: 2021-06-02
+    file: onf-enterprise.yang
+  - name: aether-types
+    organization: Open Networking Foundation
+    revision: 2021-09-10
+    file: onf-aether-types.yang
+  - name: application
+    organization: Open Networking Foundation
+    revision: 2021-09-10
+    file: onf-application.yang
+  - name: device-group
+    organization: Open Networking Foundation
+    revision: 2021-06-02
+    file: onf-device-group.yang
+  - name: ip-domain
+    organization: Open Networking Foundation
+    revision: 2021-06-02
+    file: onf-ip-domain.yang
+  - name: site
+    organization: Open Networking Foundation
+    revision: 2021-09-10
+    file: onf-site.yang
+  - name: upf-list
+    organization: Open Networking Foundation
+    revision: 2021-09-16
+    file: onf-upf.yang
+  - name: vcs
+    organization: Open Networking Foundation
+    revision: 2021-09-10
+    file: onf-vcs.yang
+  - name: template
+    organization: Open Networking Foundation
+    revision: 2021-09-10
+    file: onf-template.yang
+  - name: traffic-class
+    organization: Open Networking Foundation
+    revision: 2021-06-02
+    file: onf-traffic-class.yang    
+  files:
+    {{- range $path, $_  := $.Files.Glob "files/yang/*.yang" }}
+    {{ base $path }}: |
+{{ $.Files.Get $path | indent 6 }}
+    {{- end }}
diff --git a/config-models/aether-2.0.x/values.yaml b/config-models/aether-2.0.x/values.yaml
new file mode 100644
index 0000000..2e984ed
--- /dev/null
+++ b/config-models/aether-2.0.x/values.yaml
@@ -0,0 +1,3 @@
+# SPDX-FileCopyrightText: 2020-present Open Networking Foundation <info@opennetworking.org>
+#
+# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
diff --git a/config-models/aether-2.x/.helmignore b/config-models/aether-2.x/.helmignore
deleted file mode 100644
index 01d4cd9..0000000
--- a/config-models/aether-2.x/.helmignore
+++ /dev/null
@@ -1,25 +0,0 @@
-# SPDX-FileCopyrightText: 2021 Open Networking Foundation
-#
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
-
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
diff --git a/config-models/aether-2.x/files/aether-2.0.0.tree b/config-models/aether-2.x/files/aether-2.0.0.tree
deleted file mode 100644
index df204d5..0000000
--- a/config-models/aether-2.x/files/aether-2.0.0.tree
+++ /dev/null
@@ -1,101 +0,0 @@
-module: access-profile
-  +--rw access-profile
-     +--rw access-profile* [id]
-        +--rw id              access-profile-id
-        +--rw display-name?   string
-        +--rw type?           string
-        +--rw filter?         string
-        +--rw description?    string
-
-module: aether-subscriber
-  +--rw subscriber
-     +--rw ue* [id]
-        +--rw id                       ietf:uuid
-        +--rw display-name?            string
-        +--rw (imsi)?
-        |  +--:(wildcard)
-        |  |  +--rw imsi-wildcard?     string
-        |  +--:(range)
-        |     +--rw imsi-range-from?   uint64
-        |     +--rw imsi-range-to?     uint64
-        +--rw serving-plmn
-        |  +--rw mcc?   mcc
-        |  +--rw mnc?   mnc
-        |  +--rw tac?   tac
-        +--rw requested-apn?           string
-        +--rw priority?                uint32
-        +--rw enabled?                 boolean
-        +--rw enterprise?              -> /ent:enterprise/enterprise/id
-        +--rw profiles
-           +--rw apn-profile?        -> /apn:apn-profile/apn-profile/id
-           +--rw up-profile?         -> /up:up-profile/up-profile/id
-           +--rw qos-profile?        -> /qos:qos-profile/qos-profile/id
-           +--rw access-profile* [access-profile]
-           |  +--rw access-profile    -> /ap:access-profile/access-profile/id
-           |  +--rw allowed?          boolean
-           +--rw security-profile?   -> /sec:security-profile/security-profile/id
-
-module: apn-profile
-  +--rw apn-profile
-     +--rw apn-profile* [id]
-        +--rw id               apn-profile-id
-        +--rw display-name?    string
-        +--rw apn-name?        string
-        +--rw dns-primary?     inet:ip-address
-        +--rw dns-secondary?   inet:ip-address
-        +--rw mtu?             uint32
-        +--rw gx-enabled?      boolean
-        +--rw description?     string
-
-module: connectivity-service
-  +--rw connectivity-service
-     +--rw connectivity-service* [id]
-        +--rw id                connectivity-service-id
-        +--rw display-name?     string
-        +--rw description?      string
-        +--rw spgwc-endpoint?   inet:uri
-        +--rw hss-endpoint?     inet:uri
-
-module: enterprise
-  +--rw enterprise
-     +--rw enterprise* [id]
-        +--rw id                      enterprise-id
-        +--rw display-name?           string
-        +--rw description?            string
-        +--rw connectivity-service* [connectivity-service]
-           +--rw connectivity-service    -> /cs:connectivity-service/connectivity-service/id
-           +--rw enabled?                boolean
-
-module: qos-profile
-  +--rw qos-profile
-     +--rw qos-profile* [id]
-        +--rw id              qos-profile-id
-        +--rw display-name?   string
-        +--rw apn-ambr
-        |  +--rw uplink?     uint32
-        |  +--rw downlink?   uint32
-        +--rw qci?            uint32
-        +--rw arp
-        |  +--rw priority?                   uint32
-        |  +--rw preemption-capability?      boolean
-        |  +--rw preemption-vulnerability?   boolean
-        +--rw description?    string
-
-module: security-profile
-  +--rw security-profile
-     +--rw security-profile* [id]
-        +--rw id              security-profile-id
-        +--rw display-name?   string
-        +--rw key?            string
-        +--rw opc?            string
-        +--rw sqn?            uint32
-        +--rw description?    string
-
-module: up-profile
-  +--rw up-profile
-     +--rw up-profile* [id]
-        +--rw id                up-profile-id
-        +--rw display-name?     string
-        +--rw user-plane?       string
-        +--rw access-control?   string
-        +--rw description?      string
diff --git a/config-models/aether-2.x/files/yang/access-profile.yang b/config-models/aether-2.x/files/yang/access-profile.yang
deleted file mode 100755
index 080ab14..0000000
--- a/config-models/aether-2.x/files/yang/access-profile.yang
+++ /dev/null
@@ -1,72 +0,0 @@
-// SPDX-FileCopyrightText: 2021 Open Networking Foundation
-//
-// SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
-
-module access-profile {
-  namespace "http://opennetworking.org/aether/access-profile";
-  prefix pro;
-
-  organization "Open Networking Foundation.";
-  contact "Scott Baker";
-  description "To generate JSON from this use command
-    pyang -f jtoxx test1.yang | python3 -m json.tool > test1.json
-    Copied from YangUIComponents project";
-
-  revision "2020-10-22" {
-    description "An Aether access Profile";
-    reference "RFC 6087";
-  }
-
-  // TODO: Think more on whether this should be a UUID or
-  // simply a unique name. If it's a UUID, could fix the
-  // string length.
-  typedef access-profile-id {
-        type string {
-            length 1..32;
-        }
-    description "The typedef for access-profile-id";
-  }
-
-  container access-profile {
-    description "The top level container";
-
-    list access-profile {
-      key "id";
-      description
-        "List of access profiles";
-
-      leaf id {
-        type access-profile-id;
-        description "ID for this access profile.";
-      }
-
-      leaf display-name {
-        type string {
-            length 1..80;
-        }
-        description "display name to use in GUI or CLI";
-      }
-
-      leaf type {
-        type string {
-          length 1..32;
-        }
-        description "type of profile";
-      }
-
-      leaf filter {
-        type string {
-          length 0..32;
-        }
-        description "filter";
-      }
-
-      leaf description {
-        type string {
-          length 1..100;
-        }
-        description "description of this profile";
-      }
-    }
-  }
-}
diff --git a/config-models/aether-2.x/files/yang/aether-subscriber.yang b/config-models/aether-2.x/files/yang/aether-subscriber.yang
deleted file mode 100755
index d1f43c9..0000000
--- a/config-models/aether-2.x/files/yang/aether-subscriber.yang
+++ /dev/null
@@ -1,188 +0,0 @@
-// SPDX-FileCopyrightText: 2021 Open Networking Foundation
-//
-// SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
-
-module aether-subscriber {
-  namespace "http://opennetworking.org/aether/subscriber";
-  prefix sub;
-
-  import apn-profile{ prefix apn; }
-  import qos-profile{ prefix qos; }
-  import up-profile{ prefix up; }
-  import access-profile{ prefix ap; }
-  import security-profile{ prefix sec; }
-  import enterprise{ prefix ent; }
-  import ietf-yang-types{ prefix ietf; }
-
-  organization "Open Networking Foundation.";
-  contact "Scott Baker";
-  description "To generate JSON from this use command
-    pyang -f jtoxx test1.yang | python3 -m json.tool > test1.json
-    Copied from YangUIComponents project";
-
-  revision "2020-10-22" {
-    description "An Aether Subscriber";
-    reference "RFC 6087";
-  }
-
-  typedef mcc {
-      type uint32 {
-        range 0..999;
-      }
-    description "The typedef for mmc";
-  }
-
-  typedef mnc {
-      type uint32 {
-        range 0..999;
-      }
-    description "The typedef for mnc";
-  }
-
-  typedef tac {
-      type uint32 {
-        range 0..99999999;
-      }
-    description "The typedef for tac";
-  }
-
-  container subscriber {
-    description "The top level container";
-
-    list ue {
-      key "id";
-      description
-        "List of subscriber devices";
-
-      leaf id {
-        type ietf:uuid;
-        description "identifier for this subscriber, typically a UUID";
-      }
-
-      leaf display-name {
-        type string {
-            length 1..80;
-        }
-        description "display name to use in GUI or CLI";
-      }
-
-      choice imsi {
-        case wildcard {
-          leaf imsi-wildcard {
-            type string {
-              length 1..15;
-            }
-            description "The typedef for imsi-wildcard";
-          }
-        }
-        case range {
-          leaf imsi-range-from {
-            type uint64;
-            description "The typedef for imsi-range-from";
-          }
-          leaf imsi-range-to {
-            type uint64;
-            description "The typedef for imsi-range-to";
-          }
-        }
-        description "The choice for imsi";
-      }
-
-      container serving-plmn {
-        leaf mcc {
-          type mcc;
-          description "mobile country code";
-        }
-        leaf mnc {
-          type mnc;
-          description "mobile network code";
-        }
-        leaf tac {
-          type tac;
-          description "type allocation code";
-        }
-        description "The container for serving-plmn";
-      }
-
-      leaf requested-apn {
-        type string {
-            length 0..31;
-        }
-        description "requested access point name";
-      }
-
-      leaf priority {
-        type uint32 {
-          range 0..1000;
-        }
-        default 0;
-        description
-          "Priority for this subscriber range";
-      }
-
-      leaf enabled {
-        type boolean;
-        default false;
-        description
-          "Enable or disable this ue";
-      }
-
-      leaf enterprise {
-        type leafref {
-          path "/ent:enterprise/ent:enterprise/ent:id";
-        }
-        description
-          "Link to enterprise that owns this UE range";
-      }
-
-      container profiles {
-        leaf apn-profile {
-          type leafref {
-            path "/apn:apn-profile/apn:apn-profile/apn:id";
-          }
-          description
-            "Link to apn profile";
-        }
-        leaf up-profile {
-          type leafref {
-            path "/up:up-profile/up:up-profile/up:id";
-          }
-          description
-            "Link to user plane profile";
-        }
-        leaf qos-profile {
-          type leafref {
-            path "/qos:qos-profile/qos:qos-profile/qos:id";
-          }
-          description
-            "Link to qos profile";
-        }
-        list access-profile {
-          key "access-profile";
-          leaf access-profile {
-            type leafref {
-              path "/ap:access-profile/ap:access-profile/ap:id";
-            }
-            description
-                "Link to access profile";
-          }
-          leaf allowed {
-            type boolean;
-            default true;
-            description
-              "Allow or disallow this ue to use this access profile";
-          }
-          description "The list for access-profile";
-        }
-        leaf security-profile {
-          type leafref {
-            path "/sec:security-profile/sec:security-profile/sec:id";
-          }
-          description
-            "Link to security profile";
-        }
-        description "The container for profiles";
-      }
-    }
-  }
-}
diff --git a/config-models/aether-2.x/files/yang/apn-profile.yang b/config-models/aether-2.x/files/yang/apn-profile.yang
deleted file mode 100755
index 9f2125e..0000000
--- a/config-models/aether-2.x/files/yang/apn-profile.yang
+++ /dev/null
@@ -1,92 +0,0 @@
-// SPDX-FileCopyrightText: 2021 Open Networking Foundation
-//
-// SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
-
-module apn-profile {
-  namespace "http://opennetworking.org/aether/apn-profile";
-  prefix pro;
-
-  import ietf-inet-types { prefix inet; }
-
-  organization "Open Networking Foundation.";
-  contact "Scott Baker";
-  description "To generate JSON from this use command
-    pyang -f jtoxx test1.yang | python3 -m json.tool > test1.json
-    Copied from YangUIComponents project";
-
-  revision "2020-10-22" {
-    description "An Aether APN Profile";
-    reference "RFC 6087";
-  }
-
-  // TODO: Think more on whether this should be a UUID or
-  // simply a unique name. If it's a UUID, could fix the
-  // string length.
-  typedef apn-profile-id {
-        type string {
-            length 1..32;
-        }
-    description "The typedef for apn-profile-id";
-  }
-
-  container apn-profile {
-    description "The top level container";
-
-    list apn-profile {
-      key "id";
-      description
-        "List of apn profiles";
-
-      leaf id {
-        type apn-profile-id;
-        description "ID for this apn profile.";
-      }
-
-      leaf display-name {
-        type string {
-            length 1..80;
-        }
-        description "display name to use in GUI or CLI";
-      }
-
-      leaf apn-name {
-        type string {
-          length 1..32;
-        }
-        description "apn name";
-      }
-
-      leaf dns-primary {
-        type inet:ip-address;
-        description "primary dns server name";
-      }
-
-      leaf dns-secondary {
-        type inet:ip-address;
-        description "secondary dns server name";
-      }
-
-      leaf mtu {
-        type uint32 {
-          range 68..65535;
-        }
-        units bytes;
-        default 1460;
-        description "maximum transmission unit";
-      }
-
-      leaf gx-enabled {
-        type boolean;
-        default false;
-        description "enable gx interface";
-      }
-
-      leaf description {
-        type string {
-          length 1..100;
-        }
-        description "description of this profile";
-      }
-    }
-  }
-}
diff --git a/config-models/aether-2.x/files/yang/qos-profile.yang b/config-models/aether-2.x/files/yang/qos-profile.yang
deleted file mode 100755
index 85b6630..0000000
--- a/config-models/aether-2.x/files/yang/qos-profile.yang
+++ /dev/null
@@ -1,113 +0,0 @@
-// SPDX-FileCopyrightText: 2021 Open Networking Foundation
-//
-// SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
-
-module qos-profile {
-  namespace "http://opennetworking.org/aether/qos-profile";
-  prefix pro;
-
-  organization "Open Networking Foundation.";
-  contact "Scott Baker";
-  description "To generate JSON from this use command
-    pyang -f jtoxx test1.yang | python3 -m json.tool > test1.json
-    Copied from YangUIComponents project";
-
-  revision "2020-10-22" {
-    description "An Aether qos Profile";
-    reference "RFC 6087";
-  }
-
-  // TODO: Think more on whether this should be a UUID or
-  // simply a unique name. If it's a UUID, could fix the
-  // string length.
-  typedef qos-profile-id {
-        type string {
-            length 1..32;
-        }
-    description "The typedef for qos-profile-id";
-  }
-
-  container qos-profile {
-    description "The top level container";
-
-    list qos-profile {
-      key "id";
-      description
-        "List of qos profiles";
-
-      leaf id {
-        type qos-profile-id;
-        description "ID for this qos profile.";
-      }
-
-      leaf display-name {
-        type string {
-            length 1..80;
-        }
-        description "display name to use in GUI or CLI";
-      }
-
-      container apn-ambr {
-        leaf uplink {
-          type uint32 {
-            range 0..4294967295;
-          }
-          units bps;
-          default 0;
-          description
-            "Upstream aggregate maximum bit rate";
-        }
-        leaf downlink {
-          type uint32 {
-            range 0..4294967295;
-          }
-          units bps;
-          default 0;
-          description
-            "Downstream aggregate maximum bit rate";
-        }
-        description "The container for apn-ambr";
-      }
-
-      leaf qci {
-        type uint32 {
-          range 0..85;
-        }
-        default 9;
-        description
-          "QoS Class Identifier";
-      }
-
-      container arp {
-        leaf priority {
-          type uint32 {
-            range 0..15;
-          }
-          default 0;
-          description
-            "Priority";
-        }
-        leaf preemption-capability {
-          type boolean;
-          default true;
-          description
-            "True if a bearer with lower priority should be dropped";
-        }
-        leaf preemption-vulnerability {
-          type boolean;
-          default true;
-          description
-            "This bearer may be dropped for a bearer with higher priority";
-        }
-        description "Evolved-ARP";
-      }
-
-      leaf description {
-        type string {
-          length 1..100;
-        }
-        description "description of this profile";
-      }
-    }
-  }
-}
diff --git a/config-models/aether-2.x/files/yang/security-profile.yang b/config-models/aether-2.x/files/yang/security-profile.yang
deleted file mode 100755
index 00413b1..0000000
--- a/config-models/aether-2.x/files/yang/security-profile.yang
+++ /dev/null
@@ -1,74 +0,0 @@
-// SPDX-FileCopyrightText: 2021 Open Networking Foundation
-//
-// SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
-
-module security-profile {
-  namespace "http://opennetworking.org/aether/security-profile";
-  prefix sec;
-
-  organization "Open Networking Foundation.";
-  contact "Scott Baker";
-  description "To generate JSON from this use command
-    pyang -f jtoxx test1.yang | python3 -m json.tool > test1.json
-    Copied from YangUIComponents project";
-
-  revision "2020-11-30" {
-    description "An Aether Security Profile. Contains keys and other security items associated with devices. Configured by the operator.";
-    reference "RFC 6087";
-  }
-
-  typedef security-profile-id {
-        type string {
-            length 1..32;
-        }
-    description "The typedef for security-profile-id";
-  }
-
-  container security-profile {
-    description "The top level container";
-
-    list security-profile {
-      key "id";
-      description
-        "List of security profiles";
-
-      leaf id {
-        type security-profile-id;
-        description "ID for this security profile.";
-      }
-
-      leaf display-name {
-        type string {
-            length 1..80;
-        }
-        description "display name to use in GUI or CLI";
-      }
-
-      leaf key {
-        type string {
-          length 1..32;
-        }
-        description "Secret key for USIM";
-      }
-
-      leaf opc {
-        type string {
-          length 1..32;
-        }
-        description "Secret key for Operator";
-      }
-
-      leaf sqn {
-        type uint32;
-        description "sequence number";
-      }
-
-      leaf description {
-        type string {
-          length 1..100;
-        }
-        description "description of this security profile";
-      }
-    }
-  }
-}
diff --git a/config-models/aether-2.x/files/yang/up-profile.yang b/config-models/aether-2.x/files/yang/up-profile.yang
deleted file mode 100755
index bf17f89..0000000
--- a/config-models/aether-2.x/files/yang/up-profile.yang
+++ /dev/null
@@ -1,72 +0,0 @@
-// SPDX-FileCopyrightText: 2021 Open Networking Foundation
-//
-// SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
-
-module up-profile {
-  namespace "http://opennetworking.org/aether/user-plane-profile";
-  prefix pro;
-
-  organization "Open Networking Foundation.";
-  contact "Scott Baker";
-  description "To generate JSON from this use command
-    pyang -f jtoxx test1.yang | python3 -m json.tool > test1.json
-    Copied from YangUIComponents project";
-
-  revision "2020-10-22" {
-    description "An Aether user plane Profile";
-    reference "RFC 6087";
-  }
-
-  // TODO: Think more on whether this should be a UUID or
-  // simply a unique name. If it's a UUID, could fix the
-  // string length.
-  typedef up-profile-id {
-        type string {
-            length 1..32;
-        }
-    description "The typedef for up-profile-id";
-  }
-
-  container up-profile {
-    description "The top level container";
-
-    list up-profile {
-      key "id";
-      description
-        "List of user plane profiles";
-
-      leaf id {
-        type up-profile-id;
-        description "ID for this user plane profile.";
-      }
-
-      leaf display-name {
-        type string {
-            length 1..80;
-        }
-        description "display name to use in GUI or CLI";
-      }
-
-      leaf user-plane {
-        type string {
-          length 1..255;
-        }
-        description "user plane name";
-      }
-
-      leaf access-control {
-        type string {
-          length 1..32;
-        }
-        description "access control policy";
-      }
-
-      leaf description {
-        type string {
-          length 1..100;
-        }
-        description "description of this profile";
-      }
-    }
-  }
-}
diff --git a/config-models/aether-2.x/templates/model.yaml b/config-models/aether-2.x/templates/model.yaml
deleted file mode 100644
index 787912e..0000000
--- a/config-models/aether-2.x/templates/model.yaml
+++ /dev/null
@@ -1,53 +0,0 @@
-# SPDX-FileCopyrightText: 2021-present Open Networking Foundation <info@opennetworking.org>
-#
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
-
-apiVersion: config.onosproject.org/v1beta1
-kind: Model
-metadata:
-  name: {{ template "aether.fullname" . }}
-  namespace: {{ .Release.Namespace }}
-  labels:
-    {{- include "aether.labels" . | nindent 4 }}
-spec:
-  plugin:
-    type: Aether
-    version: {{ .Chart.AppVersion | quote }}
-  modules:
-  - name: aether-subscriber
-    organization: Open Networking Foundation
-    revision: 2020-10-22
-    file: aether-subscriber.yang
-  - name: apn-profile
-    organization: Open Networking Foundation
-    revision: 2020-10-22
-    file: apn-profile.yang
-  - name: up-profile
-    organization: Open Networking Foundation
-    revision: 2020-10-22
-    file: up-profile.yang
-  - name: qos-profile
-    organization: Open Networking Foundation
-    revision: 2020-10-22
-    file: qos-profile.yang
-  - name: access-profile
-    organization: Open Networking Foundation
-    revision: 2020-10-22
-    file: access-profile.yang
-  - name: enterprise
-    organization: Open Networking Foundation
-    revision: 2020-11-30
-    file: enterprise.yang
-  - name: connectivity-service
-    organization: Open Networking Foundation
-    revision: 2020-11-30
-    file: connectivity-service.yang
-  - name: security-profile
-    organization: Open Networking Foundation
-    revision: 2020-11-30
-    file: security-profile.yang
-  files:
-    {{- range $path, $_  := $.Files.Glob "files/yang/*.yang" }}
-    {{ base $path }}: |
-{{ $.Files.Get $path | indent 6 }}
-    {{- end }}
diff --git a/config-models/aether-2.x/values.yaml b/config-models/aether-2.x/values.yaml
deleted file mode 100644
index 1b22ea4..0000000
--- a/config-models/aether-2.x/values.yaml
+++ /dev/null
@@ -1,3 +0,0 @@
-# SPDX-FileCopyrightText: 2021-present Open Networking Foundation <info@opennetworking.org>
-#
-# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
