diff --git a/config-models/aether-2.1.x/files/yang/access-profile.yang b/config-models/aether-2.1.x/files/yang/access-profile.yang
index d58a674..080ab14 100755
--- a/config-models/aether-2.1.x/files/yang/access-profile.yang
+++ b/config-models/aether-2.1.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.1.x/files/yang/aether-subscriber.yang b/config-models/aether-2.1.x/files/yang/aether-subscriber.yang
index 30f3e52..a3e7220 100755
--- a/config-models/aether-2.1.x/files/yang/aether-subscriber.yang
+++ b/config-models/aether-2.1.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 typedef for mcc";
   }
 
   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 {
@@ -52,8 +55,8 @@
         "List of subscriber devices";
 
       leaf id {
+	type ietf:uuid;
         description "identifier for this subscriber, typically a UUID";
-        type ietf: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 "leaf for imsi-wildcard";
           }
         }
         case range {
           leaf imsi-range-from {
             type uint64;
+            description "leaf for imsi-range-from";
           }
           leaf imsi-range-to {
             type uint64;
+            description "leaf for imsi-range-to";
           }
         }
+        description "The choice 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.1.x/files/yang/apn-profile.yang b/config-models/aether-2.1.x/files/yang/apn-profile.yang
index 27361dc..8445cc8 100755
--- a/config-models/aether-2.1.x/files/yang/apn-profile.yang
+++ b/config-models/aether-2.1.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.1.x/files/yang/connectivity-service.yang b/config-models/aether-2.1.x/files/yang/connectivity-service.yang
index f12340b..139a93f 100755
--- a/config-models/aether-2.1.x/files/yang/connectivity-service.yang
+++ b/config-models/aether-2.1.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.1.x/files/yang/enterprise.yang b/config-models/aether-2.1.x/files/yang/enterprise.yang
index 38cb4b8..25dd051 100755
--- a/config-models/aether-2.1.x/files/yang/enterprise.yang
+++ b/config-models/aether-2.1.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.1.x/files/yang/ietf-inet-types.yang b/config-models/aether-2.1.x/files/yang/ietf-inet-types.yang
index eacefb6..fa57f75 100644
--- a/config-models/aether-2.1.x/files/yang/ietf-inet-types.yang
+++ b/config-models/aether-2.1.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.1.x/files/yang/qos-profile.yang b/config-models/aether-2.1.x/files/yang/qos-profile.yang
index 5ad91b4..a150263 100755
--- a/config-models/aether-2.1.x/files/yang/qos-profile.yang
+++ b/config-models/aether-2.1.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;
           }
+	  units bps;
           default 0;
-          units bps;
           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.1.x/files/yang/security-profile.yang b/config-models/aether-2.1.x/files/yang/security-profile.yang
index a8a3069..00413b1 100755
--- a/config-models/aether-2.1.x/files/yang/security-profile.yang
+++ b/config-models/aether-2.1.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 {
@@ -41,7 +42,7 @@
             length 1..80;
         }
         description "display name to use in GUI or CLI";
-      }     
+      }
 
       leaf key {
         type string {
@@ -67,7 +68,7 @@
           length 1..100;
         }
         description "description of this security profile";
-      }      
+      }
     }
-  } 
+  }
 }
diff --git a/config-models/aether-2.1.x/files/yang/service-group.yang b/config-models/aether-2.1.x/files/yang/service-group.yang
index 9f2e7da..8b4add1 100755
--- a/config-models/aether-2.1.x/files/yang/service-group.yang
+++ b/config-models/aether-2.1.x/files/yang/service-group.yang
@@ -23,6 +23,7 @@
         type string {
             length 1..32;
         }
+    description "The typede 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 container for service-policies";
+      }
 
       leaf description {
         type string {
           length 1..100;
         }
         description "description of this service group";
-      }      
+      }
     }
-  } 
+  }
 }
diff --git a/config-models/aether-2.1.x/files/yang/service-policy.yang b/config-models/aether-2.1.x/files/yang/service-policy.yang
index a0db158..fa83a38 100755
--- a/config-models/aether-2.1.x/files/yang/service-policy.yang
+++ b/config-models/aether-2.1.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;
           }
+	  units bps;
           default 0;
-          units bps;
           description
             "Downstream aggregate maximum bit rate";
-        }        
+        }
+        description "The container for ambr";
       }
 
       list rules {
@@ -99,7 +101,8 @@
           description
             "Enable or disable this service to use this rule";
         }
-      }       
+        description "The list for rules";
+      }
 
       leaf description {
         type string {
@@ -108,5 +111,5 @@
         description "description of this profile";
       }      
     }
-  } 
+  }
 }
diff --git a/config-models/aether-2.1.x/files/yang/service-rule.yang b/config-models/aether-2.1.x/files/yang/service-rule.yang
index 5dce127..b39c9e9 100755
--- a/config-models/aether-2.1.x/files/yang/service-rule.yang
+++ b/config-models/aether-2.1.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;
             }
+	    units bps;
             default 0;
-            units bps;
             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;
             }
+	    units bps;
             default 0;
-            units bps;
             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.1.x/files/yang/up-profile.yang b/config-models/aether-2.1.x/files/yang/up-profile.yang
index 9a38b02..bf17f89 100755
--- a/config-models/aether-2.1.x/files/yang/up-profile.yang
+++ b/config-models/aether-2.1.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";
-      }      
+      }
     }
-  } 
+  }
 }
