diff --git a/config-models/aether-3.x/files/yang/vcs.yang b/config-models/aether-3.x/files/yang/vcs.yang
index ab4e370..5799143 100755
--- a/config-models/aether-3.x/files/yang/vcs.yang
+++ b/config-models/aether-3.x/files/yang/vcs.yang
@@ -8,7 +8,7 @@
 
   import template{ prefix vt; }
   import upf { prefix upf; }
-  import ap-list{ prefix apl; }    
+  import ap-list{ prefix apl; }
   import application{ prefix app; }
   import aether-types{ prefix at; }
   import device-group{ prefix dg; }
@@ -18,7 +18,7 @@
 
   organization "Open Networking Foundation.";
   contact "Scott Baker";
-  description 
+  description
     "An Aether Virtual Cellular Service (VCS) is
      used to connect UE devices with applications";
 
@@ -31,6 +31,7 @@
         type yg:yang-identifier {
             length 1..32;
         }
+    description "The typedef for vcs-id";
   }
 
   container vcs {
@@ -54,13 +55,13 @@
       }
 
       list device-group {
-        key "device-group";   
+        key "device-group";
         leaf device-group {
           type leafref {
             path "/dg:device-group/dg:device-group/dg:id";
-          }          
+          }
           description
-            "Link to device group";          
+            "Link to device group";
         }
         leaf enable {
           type boolean;
@@ -71,19 +72,19 @@
         description
           "A list of device groups. Groups will only participate in
            the VCS if the enable field is set to True";
-      }         
+      }
 
       leaf template {
         type leafref {
           path "/vt:template/vt:template/vt:id";
-        }          
+        }
         description
           "Link to user vcs template that was used to initialize
            this VCS";
       }
 
       list application {
-        key "application";   
+        key "application";
         leaf application {
           type leafref {
             path "/app:application/app:application/app:id";
@@ -102,12 +103,12 @@
           "An ordered list of applications to allow and deny. The deny rules
            will be executed first, followed by the allow rules. The first rule
            to match is returned. An implicit DENY ALL lies at the end.";
-      }      
+      }
 
       leaf upf {
         type leafref {
           path "/upf:upf/upf:upf/upf:id";
-        }          
+        }
         description
           "Link to user plane that implements this vcf";
       }
@@ -115,7 +116,7 @@
       leaf ap {
         type leafref {
           path "/apl:ap-list/apl:ap-list/apl:id";
-        }          
+        }
         description
           "Link to access-point list";
       }
@@ -132,7 +133,7 @@
         mandatory true;
         description
           "Link to enterprise that owns this VCS";
-      }      
+      }
 
       // the following are populated from the template
       leaf sst {
@@ -140,7 +141,7 @@
         mandatory true;
         description "Slice/Service type. Immutable.";
       }
-      
+
       leaf sd {
         type at:sd;
         mandatory true;
@@ -167,5 +168,5 @@
       }
       // end of items populated from the template
     }
-  } 
+  }
 }
