diff --git a/config-models/aether-2.2.x/files/yang/access-profile.yang b/config-models/aether-2.2.x/files/yang/access-profile.yang
index d58a674..080ab14 100755
--- a/config-models/aether-2.2.x/files/yang/access-profile.yang
+++ b/config-models/aether-2.2.x/files/yang/access-profile.yang
@@ -18,12 +18,13 @@
   }
 
   // TODO: Think more on whether this should be a UUID or
-  // simply a unique name. If it's a UUID, could fix the 
+  // 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 {
@@ -44,7 +45,7 @@
             length 1..80;
         }
         description "display name to use in GUI or CLI";
-      }     
+      }
 
       leaf type {
         type string {
@@ -52,7 +53,7 @@
         }
         description "type of profile";
       }
-  
+
       leaf filter {
         type string {
           length 0..32;
@@ -67,5 +68,5 @@
         description "description of this profile";
       }
     }
-  } 
+  }
 }
diff --git a/config-models/aether-2.2.x/files/yang/aether-subscriber.yang b/config-models/aether-2.2.x/files/yang/aether-subscriber.yang
index 30f3e52..5cfa67e 100755
--- a/config-models/aether-2.2.x/files/yang/aether-subscriber.yang
+++ b/config-models/aether-2.2.x/files/yang/aether-subscriber.yang
@@ -11,7 +11,7 @@
   import up-profile{ prefix up; }
   import access-profile{ prefix ap; }
   import security-profile{ prefix sec; }
-  import enterprise{ prefix ent; }  
+  import enterprise{ prefix ent; }
   import ietf-yang-types{ prefix ietf; }
 
   organization "Open Networking Foundation.";
@@ -29,18 +29,21 @@
       type uint32 {
         range 0..999;
       }
+    description "The typede for mcc";
   }
 
   typedef mnc {
       type uint32 {
         range 0..999;
       }
+    description "The typede for mnc";
   }
 
   typedef tac {
       type uint32 {
         range 0..99999999;
       }
+    description "The typede for tac";
   }
 
   container subscriber {
@@ -52,8 +55,8 @@
         "List of subscriber devices";
 
       leaf id {
-        description "identifier for this subscriber, typically a UUID";
         type ietf:uuid;
+        description "identifier for this subscriber, typically a UUID";
       }
 
       leaf display-name {
@@ -61,7 +64,7 @@
             length 1..80;
         }
         description "display name to use in GUI or CLI";
-      }      
+      }
 
       choice imsi {
         case wildcard {
@@ -69,16 +72,20 @@
             type string {
               length 1..15;
             }
+            description "The leaf for imsi-wildcard";
           }
         }
         case range {
           leaf imsi-range-from {
             type uint64;
+            description "The leaf for imsi-range-from";
           }
           leaf imsi-range-to {
             type uint64;
+            description "The leaf for imsi-range-to";
           }
         }
+        description "The choise for imsi";
       }
 
       container serving-plmn {
@@ -94,6 +101,7 @@
           type tac;
           description "type allocation code";
         }
+        description "The container for serving-plmn";
       }
 
       leaf requested-apn {
@@ -122,7 +130,7 @@
       leaf enterprise {
         type leafref {
           path "/ent:enterprise/ent:enterprise/ent:id";
-        }              
+        }
         description
           "Link to enterprise that owns this UE range";
       }
@@ -138,14 +146,14 @@
         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";
         }
@@ -154,7 +162,7 @@
           leaf access-profile {
             type leafref {
               path "/ap:access-profile/ap:access-profile/ap:id";
-            }            
+            }
             description
                 "Link to access profile";
           }
@@ -164,15 +172,17 @@
             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.2.x/files/yang/apn-profile.yang b/config-models/aether-2.2.x/files/yang/apn-profile.yang
index 27361dc..8445cc8 100755
--- a/config-models/aether-2.2.x/files/yang/apn-profile.yang
+++ b/config-models/aether-2.2.x/files/yang/apn-profile.yang
@@ -21,12 +21,13 @@
   }
 
   // TODO: Think more on whether this should be a UUID or
-  // simply a unique name. If it's a UUID, could fix the 
+  // 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 {
@@ -47,7 +48,7 @@
             length 1..80;
         }
         description "display name to use in GUI or CLI";
-      }     
+      }
 
       leaf apn-name {
         type string {
@@ -96,5 +97,5 @@
           "Link to service group";
       }
     }
-  } 
+  }
 }
diff --git a/config-models/aether-2.2.x/files/yang/connectivity-service.yang b/config-models/aether-2.2.x/files/yang/connectivity-service.yang
index f12340b..139a93f 100755
--- a/config-models/aether-2.2.x/files/yang/connectivity-service.yang
+++ b/config-models/aether-2.2.x/files/yang/connectivity-service.yang
@@ -23,6 +23,7 @@
         type string {
             length 1..32;
         }
+    description "The typedef for connectivity-service-id";
   }
 
   container connectivity-service {
@@ -43,7 +44,7 @@
             length 1..80;
         }
         description "display name to use in GUI or CLI";
-      }     
+      }
 
       leaf description {
         type string {
@@ -65,7 +66,7 @@
       leaf pcrf-endpoint {
         type inet:uri;
         description "url of the pcrf service";
-      }         
+      }
     }
-  } 
+  }
 }
diff --git a/config-models/aether-2.2.x/files/yang/enterprise.yang b/config-models/aether-2.2.x/files/yang/enterprise.yang
index 38cb4b8..b556638 100755
--- a/config-models/aether-2.2.x/files/yang/enterprise.yang
+++ b/config-models/aether-2.2.x/files/yang/enterprise.yang
@@ -23,6 +23,7 @@
         type string {
             length 1..32;
         }
+    description "The typedef for enterprise-id";
   }
 
   container enterprise {
@@ -43,7 +44,7 @@
             length 1..80;
         }
         description "display name to use in GUI or CLI";
-      }     
+      }
 
       leaf description {
         type string {
@@ -57,7 +58,7 @@
         leaf connectivity-service {
           type leafref {
             path "/cs:connectivity-service/cs:connectivity-service/cs:id";
-          }            
+          }
           description
             "Link to connectivity services where configuration should be pushed for this enterprise's devices";
         }
@@ -67,7 +68,8 @@
           description
             "Allow or disallow pushes to this connectivity service";
         }
-      }              
+        description "The list for connectivity-service";
+      }
     }
-  } 
+  }
 }
diff --git a/config-models/aether-2.2.x/files/yang/ietf-inet-types.yang b/config-models/aether-2.2.x/files/yang/ietf-inet-types.yang
index eacefb6..fa57f75 100644
--- a/config-models/aether-2.2.x/files/yang/ietf-inet-types.yang
+++ b/config-models/aether-2.2.x/files/yang/ietf-inet-types.yang
@@ -354,11 +354,11 @@
 
   typedef domain-name {
     type string {
+      length "1..253";
       pattern
         '((([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.)*'
       + '([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.?)'
       + '|\.';
-      length "1..253";
     }
     description
      "The domain-name type represents a DNS domain name.  The
diff --git a/config-models/aether-2.2.x/files/yang/qos-profile.yang b/config-models/aether-2.2.x/files/yang/qos-profile.yang
index 5ad91b4..85b6630 100755
--- a/config-models/aether-2.2.x/files/yang/qos-profile.yang
+++ b/config-models/aether-2.2.x/files/yang/qos-profile.yang
@@ -18,12 +18,13 @@
   }
 
   // TODO: Think more on whether this should be a UUID or
-  // simply a unique name. If it's a UUID, could fix the 
+  // 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 {
@@ -44,15 +45,15 @@
             length 1..80;
         }
         description "display name to use in GUI or CLI";
-      }     
+      }
 
       container apn-ambr {
         leaf uplink {
           type uint32 {
             range 0..4294967295;
           }
-          default 0;
           units bps;
+          default 0;
           description
             "Upstream aggregate maximum bit rate";
         }
@@ -60,11 +61,12 @@
           type uint32 {
             range 0..4294967295;
           }
-          default 0;
           units bps;
+          default 0;
           description
             "Downstream aggregate maximum bit rate";
-        }        
+        }
+        description "The container for apn-ambr";
       }
 
       leaf qci {
@@ -80,11 +82,11 @@
         leaf priority {
           type uint32 {
             range 0..15;
-          }          
+          }
           default 0;
           description
             "Priority";
-        }        
+        }
         leaf preemption-capability {
           type boolean;
           default true;
@@ -98,8 +100,8 @@
             "This bearer may be dropped for a bearer with higher priority";
         }
         description "Evolved-ARP";
-      }        
-      
+      }
+
       leaf description {
         type string {
           length 1..100;
@@ -107,5 +109,5 @@
         description "description of this profile";
       }
     }
-  } 
+  }
 }
diff --git a/config-models/aether-2.2.x/files/yang/security-profile.yang b/config-models/aether-2.2.x/files/yang/security-profile.yang
index 745b88e..e060487 100755
--- a/config-models/aether-2.2.x/files/yang/security-profile.yang
+++ b/config-models/aether-2.2.x/files/yang/security-profile.yang
@@ -21,6 +21,7 @@
         type string {
             length 1..32;
         }
+    description "The typedef for security-profile-id";
   }
 
   container security-profile {
@@ -77,7 +78,7 @@
           length 1..100;
         }
         description "description of this security profile";
-      }      
+      }
     }
-  } 
+  }
 }
diff --git a/config-models/aether-2.2.x/files/yang/service-group.yang b/config-models/aether-2.2.x/files/yang/service-group.yang
index 9f2e7da..bb5ddf2 100755
--- a/config-models/aether-2.2.x/files/yang/service-group.yang
+++ b/config-models/aether-2.2.x/files/yang/service-group.yang
@@ -23,6 +23,7 @@
         type string {
             length 1..32;
         }
+    description "The typedef for service-group-id";
   }
 
   typedef service-kind {
@@ -30,6 +31,7 @@
       length 1..32;
       pattern "default|on-demand";
     }
+    description "The typedef for service-kind";
   }
 
   container service-group {
@@ -61,20 +63,21 @@
           description
               "Link to service policy";
         }
-        leaf kind {    
+        leaf kind {
           type service-kind;
           default "default";
           description
             "Type of service link";
         }
-      }      
+        description "The list for service-policies";
+      }
 
       leaf description {
         type string {
           length 1..100;
         }
         description "description of this service group";
-      }      
+      }
     }
-  } 
+  }
 }
diff --git a/config-models/aether-2.2.x/files/yang/service-policy.yang b/config-models/aether-2.2.x/files/yang/service-policy.yang
index a0db158..d30f1ad 100755
--- a/config-models/aether-2.2.x/files/yang/service-policy.yang
+++ b/config-models/aether-2.2.x/files/yang/service-policy.yang
@@ -23,6 +23,7 @@
         type string {
             length 1..32;
         }
+    description "The typedef for service-policy-id";
   }
 
   container service-policy {
@@ -61,15 +62,15 @@
         default 9;
         description
           "Evolved-ARP";
-      }      
+      }
 
       container ambr {
         leaf uplink {
           type uint32 {
             range 0..4294967295;
           }
-          default 0;
           units bps;
+          default 0;
           description
             "Upstream aggregate maximum bit rate";
         }
@@ -77,11 +78,12 @@
           type uint32 {
             range 0..4294967295;
           }
-          default 0;
           units bps;
+          default 0;
           description
             "Downstream aggregate maximum bit rate";
-        }        
+        }
+        description "The container for ambr";
       }
 
       list rules {
@@ -99,14 +101,15 @@
           description
             "Enable or disable this service to use this rule";
         }
-      }       
+        description "The list for rules";
+      }
 
       leaf description {
         type string {
           length 1..100;
         }
         description "description of this profile";
-      }      
+      }
     }
-  } 
+  }
 }
diff --git a/config-models/aether-2.2.x/files/yang/service-rule.yang b/config-models/aether-2.2.x/files/yang/service-rule.yang
index 5dce127..efb0539 100755
--- a/config-models/aether-2.2.x/files/yang/service-rule.yang
+++ b/config-models/aether-2.2.x/files/yang/service-rule.yang
@@ -21,6 +21,7 @@
         type string {
             length 1..32;
         }
+    description "The typedef for service-rule-id";
   }
 
   container service-rule {
@@ -64,11 +65,11 @@
           leaf priority {
             type uint32 {
               range 0..15;
-            }          
+            }
             default 0;
             description
               "Priority";
-          }        
+          }
           leaf preemption-capability {
             type boolean;
             default true;
@@ -89,8 +90,8 @@
             type uint32 {
               range 0..4294967295;
             }
-            default 0;
             units bps;
+            default 0;
             description
               "Upstream maximum requested bandwidth";
           }
@@ -98,11 +99,12 @@
             type uint32 {
               range 0..4294967295;
             }
-            default 0;
             units bps;
+            default 0;
             description
               "Downstream maximum requested bandwidth";
-          }        
+          }
+          description "The container for maximum-requested-bandwidth";
         }
 
         container guaranteed-bitrate {
@@ -110,8 +112,8 @@
             type uint32 {
               range 0..4294967295;
             }
-            default 0;
             units bps;
+            default 0;
             description
               "Upstream guaranteed bitrate";
           }
@@ -119,11 +121,12 @@
             type uint32 {
               range 0..4294967295;
             }
-            default 0;
             units bps;
+            default 0;
             description
               "Downstream guaranteed bitrate";
-          }        
+          }
+          description "The container for guaranteed-bitrate";
         }
 
         container aggregate-maximum-bitrate {
@@ -131,8 +134,8 @@
             type uint32 {
               range 0..4294967295;
             }
-            default 0;
             units bps;
+            default 0;
             description
               "Upstream aggregate maximum bitrate";
           }
@@ -140,14 +143,16 @@
             type uint32 {
               range 0..4294967295;
             }
-            default 0;
             units bps;
+            default 0;
             description
               "Downstream aggregate maximum bitrate";
-          }        
+          }
+          description "The container for aggregate-maximum-bitrate";
         }
+        description "The container for qos";
       }
-  
+
       container flow {
         leaf specification {
           type string {
@@ -155,6 +160,7 @@
           }
           description "specification of this flow";
         }
+        description "The container for flow";
       }
 
       leaf description {
@@ -162,7 +168,7 @@
           length 1..100;
         }
         description "description of this rule";
-      }      
+      }
     }
-  } 
+  }
 }
diff --git a/config-models/aether-2.2.x/files/yang/up-profile.yang b/config-models/aether-2.2.x/files/yang/up-profile.yang
index 9a38b02..bf17f89 100755
--- a/config-models/aether-2.2.x/files/yang/up-profile.yang
+++ b/config-models/aether-2.2.x/files/yang/up-profile.yang
@@ -18,12 +18,13 @@
   }
 
   // TODO: Think more on whether this should be a UUID or
-  // simply a unique name. If it's a UUID, could fix the 
+  // 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 {
@@ -44,7 +45,7 @@
             length 1..80;
         }
         description "display name to use in GUI or CLI";
-      }     
+      }
 
       leaf user-plane {
         type string {
@@ -65,7 +66,7 @@
           length 1..100;
         }
         description "description of this profile";
-      }      
+      }
     }
-  } 
+  }
 }
