diff --git a/apps/yms/api/src/main/java/org/onosproject/yms/ymsm/YmsService.java b/apps/yms/api/src/main/java/org/onosproject/yms/ymsm/YmsService.java
index d651859..264a191 100644
--- a/apps/yms/api/src/main/java/org/onosproject/yms/ymsm/YmsService.java
+++ b/apps/yms/api/src/main/java/org/onosproject/yms/ymsm/YmsService.java
@@ -26,6 +26,7 @@
 import org.onosproject.yms.ydt.YdtWalker;
 import org.onosproject.yms.ydt.YmsOperationType;
 import org.onosproject.yms.ynh.YangNotificationService;
+import org.onosproject.yms.ysr.YangModuleIdentifier;
 import org.onosproject.yms.ysr.YangModuleLibrary;
 
 /**
@@ -310,11 +311,11 @@
      * The server can optionally support retrieval of the YANG modules it
      * supports.
      *
-     * @param moduleName      YANG module name.
-     * @param moduleNamespace namespace in which the module is defined.
+     *
+     * @param moduleIdentifier module's identifier
      * @return YANG file contents of the requested YANG module.
      */
-    String getYangFile(String moduleName, String moduleNamespace);
+    String getYangFile(YangModuleIdentifier moduleIdentifier);
 
     /**
      * Register protocol specific default CODEC. This is can be used by 1st
diff --git a/apps/yms/api/src/main/java/org/onosproject/yms/ysr/YangModuleIdentifier.java b/apps/yms/api/src/main/java/org/onosproject/yms/ysr/YangModuleIdentifier.java
index 6b02720..acae603 100644
--- a/apps/yms/api/src/main/java/org/onosproject/yms/ysr/YangModuleIdentifier.java
+++ b/apps/yms/api/src/main/java/org/onosproject/yms/ysr/YangModuleIdentifier.java
@@ -28,11 +28,11 @@
      *
      * @return the name of the YANG module
      */
-    String getModuleName();
+    String moduleName();
 
     /**
      * Retrieves revision of the YANG module.
-     *
+     * <p>
      * Reference RFC 7895
      * Each YANG module and submodule within the library has a
      * revision.  This is derived from the most recent revision statement
@@ -42,5 +42,5 @@
      *
      * @return revision of the YANG module
      */
-    String getRevision();
+    String revision();
 }
diff --git a/apps/yms/api/src/main/java/org/onosproject/yms/ysr/YangModuleInformation.java b/apps/yms/api/src/main/java/org/onosproject/yms/ysr/YangModuleInformation.java
index f9c3114..e9f79b3 100644
--- a/apps/yms/api/src/main/java/org/onosproject/yms/ysr/YangModuleInformation.java
+++ b/apps/yms/api/src/main/java/org/onosproject/yms/ysr/YangModuleInformation.java
@@ -48,7 +48,7 @@
      *
      * @return YANG modules identifier
      */
-    YangModuleIdentifier getModuleIdentifier();
+    YangModuleIdentifier moduleIdentifier();
 
     /**
      * Retrieves the YANG modules namespace.
@@ -56,7 +56,7 @@
      *
      * @return YANG modules namespace
      */
-    String getNamespace();
+    String namespace();
 
     /**
      * Reference RFC 7895
@@ -66,7 +66,7 @@
      *
      * @return list of YANG features
      */
-    List<String> getFeatureList();
+    List<String> featureList();
 
     /**
      * Retrieves the list of submodules in the module.
@@ -78,5 +78,5 @@
      *
      * @return list of submodules in the module
      */
-    List<YangModuleIdentifier> getSubModuleIdentifier();
+    List<YangModuleIdentifier> subModuleIdentifiers();
 }
diff --git a/apps/yms/api/src/main/java/org/onosproject/yms/ysr/YangModuleLibrary.java b/apps/yms/api/src/main/java/org/onosproject/yms/ysr/YangModuleLibrary.java
index 284ae86..696d973 100644
--- a/apps/yms/api/src/main/java/org/onosproject/yms/ysr/YangModuleLibrary.java
+++ b/apps/yms/api/src/main/java/org/onosproject/yms/ysr/YangModuleLibrary.java
@@ -63,7 +63,7 @@
      *
      * @return module set id of the YANG library
      */
-    String getModuleSetId();
+    String moduleSetId();
 
     /**
      * Retrieves the current list of YANG modules supported in the server.
@@ -80,5 +80,5 @@
      *
      * @return the current list of YANG modules supported in the server
      */
-    List<YangModuleInformation> getYangModuleList();
+    List<YangModuleInformation> yangModuleList();
 }
