diff --git a/models/plugins/yang/mano-types.yang b/models/plugins/yang/mano-types.yang
index 5cf74db..e8dc985 100644
--- a/models/plugins/yang/mano-types.yang
+++ b/models/plugins/yang/mano-types.yang
@@ -150,7 +150,7 @@
     leaf image {
       description
             "Image name for the software image.
-             If the image name is found within the VNF packaage it will
+             If the image name is found within the VNF package it will
              be uploaded to all VIM accounts during onboarding process.
              Otherwise, the image must be added to the VIM account with
              the same name as entered here.
diff --git a/models/plugins/yang/nsd.yang b/models/plugins/yang/nsd.yang
index 23d5d17..15cd2e3 100644
--- a/models/plugins/yang/nsd.yang
+++ b/models/plugins/yang/nsd.yang
@@ -137,7 +137,7 @@
     }
 
     leaf short-name {
-      description "NSD short name.";
+      description "Short name to appear as label in the UI";
       type string;
     }
 
@@ -213,7 +213,7 @@
 
       leaf short-name {
         description
-            "Short name for VLD for UI";
+            "Short name to appear as label in the UI";
         type string;
       }
 
@@ -574,7 +574,7 @@
 
       leaf short-name {
         description
-            "Short name for VNFFGD for UI";
+            "Short name to appear as label in the UI";
         type string;
       }
 
diff --git a/models/plugins/yang/nsr.yang b/models/plugins/yang/nsr.yang
index 6f9b5f7..b081f6a 100644
--- a/models/plugins/yang/nsr.yang
+++ b/models/plugins/yang/nsr.yang
@@ -413,7 +413,7 @@
             description
                 "Type of Service Function.
                 NOTE: This needs to map with Service Function Type in ODL to
-                support VNFFG. Service Function Type is manadatory param in ODL
+                support VNFFG. Service Function Type is mandatory param in ODL
                 SFC. This is temporarily set to string for ease of use";
             type string;
           }
diff --git a/models/plugins/yang/pnfd.yang b/models/plugins/yang/pnfd.yang
index e1f39a7..2f9bcdf 100644
--- a/models/plugins/yang/pnfd.yang
+++ b/models/plugins/yang/pnfd.yang
@@ -63,7 +63,7 @@
       }
 
       leaf short-name {
-        description "PNFD short name.";
+        description "Short name to appear as label in the UI";
         type string;
       }
 
diff --git a/models/plugins/yang/vlr.yang b/models/plugins/yang/vlr.yang
index 20ba6f7..e30aa5b 100644
--- a/models/plugins/yang/vlr.yang
+++ b/models/plugins/yang/vlr.yang
@@ -88,7 +88,7 @@
       }
 
       leaf short-name {
-        description "Short name for VLR for UI";
+        description "Short name to appear as label in the UI";
         type string;
       }
 
diff --git a/models/plugins/yang/vnfd.yang b/models/plugins/yang/vnfd.yang
index d968bc8..1dfb459 100644
--- a/models/plugins/yang/vnfd.yang
+++ b/models/plugins/yang/vnfd.yang
@@ -59,7 +59,7 @@
     }
 
     leaf short-name {
-      description "Short name of the connection point";
+      description "Short name to appear as label in the UI";
       type string;
     }
 
@@ -132,7 +132,7 @@
       }
 
       leaf short-name {
-        description "VNFD short name.";
+        description "Short name to appear as label in the UI";
         type string;
       }
 
@@ -227,7 +227,7 @@
         description
             "List of Internal Virtual Link Descriptors (VLD).
             The internal VLD describes the basic topology of
-            the connectivity (e.g. E-LAN, E-Line, E-Tree)
+            the connectivity such as E-LAN, E-Line, E-Tree.
             between internal VNF components of the system.";
 
         leaf id {
@@ -241,11 +241,12 @@
         }
 
         leaf short-name {
-          description "Short name of the internal VLD";
+          description "Short name to appear as label in the UI";
           type string;
         }
 
         leaf description {
+          description "Description of internal VLD.";
           type string;
         }
 
@@ -304,14 +305,12 @@
         key "name";
         description
             "List for external connection points. Each VNF has one
-            or more external connection points. As the name
-            implies that external connection points are used for
-            connecting the VNF to other VNFs or to external networks.
-            Each VNF exposes these connection points to the
-            orchestrator. The orchestrator can construct network
-            services by connecting the connection points between
-            different VNFs. The NFVO will use VLDs and VNFFGs at
-            the network service level to construct network services.";
+            or more external connection points that connect the VNF
+            to other VNFs or to external networks. Each VNF exposes
+            connection points to the orchestrator, which can construct
+            network services by connecting the connection points
+            between different VNFs. The NFVO will use VLDs and VNFFGs
+            at the network service level to construct network services.";
 
         uses common-connection-point;
       }
@@ -365,13 +364,13 @@
 
         choice cloud-init-input {
           description
-            "Indicates how the contents of cloud-init script are provided.
-             There are 2 choices - inline or in a file";
+              "Indicates how the contents of cloud-init script are provided.
+              There are 2 choices - inline or in a file";
 
           case inline {
             leaf cloud-init {
               description
-                "Contents of cloud-init script, provided inline, in cloud-config format";
+                  "Contents of cloud-init script, provided inline, in cloud-config format";
               type string;
             }
           }
@@ -379,8 +378,8 @@
           case filename {
             leaf cloud-init-file {
               description
-                "Name of file with contents of cloud-init script in cloud-config format";
-                type string;
+                  "Name of file with contents of cloud-init script in cloud-config format";
+              type string;
             }
           }
         }
@@ -393,7 +392,7 @@
               "List for internal connection points. Each VNFC
               has zero or more internal connection points.
               Internal connection points are used for connecting
-              the VNF components internal to the VNF. If a VNF
+              the VNF with components internal to the VNF. If a VNF
               has only one VNFC, it may not have any internal
               connection points.";
 
@@ -430,7 +429,8 @@
           leaf name {
             description
                 "Name of the external interface. Note that
-                this name has only local significance.";
+                this name has only local significance to
+                the VDU.";
             type string;
           }
 
@@ -469,8 +469,8 @@
 
         leaf vdu-depends-on-ref {
           description
-              "Reference to the VDU that
-              source VDU depends.";
+              "Reference to the VDU on which
+              the source VDU depends.";
           type leafref {
             path "../../vdu/id";
           }
@@ -493,7 +493,7 @@
         description
             "Type of Service Function.
              NOTE: This needs to map with Service Function Type in ODL to
-             support VNFFG. Service Function Type is manadatory param in ODL
+             support VNFFG. Service Function Type is mandatory param in ODL
              SFC. This is temporarily set to string for ease of use";
             type string;
       }
