diff --git a/models/tapi/src/main/java/org/onosproject/models/tapi/TapiModelRegistrator.java b/models/tapi/src/main/java/org/onosproject/models/tapi/TapiModelRegistrator.java
index c4f1550..14e4a84 100644
--- a/models/tapi/src/main/java/org/onosproject/models/tapi/TapiModelRegistrator.java
+++ b/models/tapi/src/main/java/org/onosproject/models/tapi/TapiModelRegistrator.java
@@ -37,7 +37,8 @@
 
 
 /**
- * Component to register the TAPI 2.0 service model and its dependencies.
+ * Component to register the TAPI 2.1.X service (NBI) model and its
+ * dependencies.
  */
 @Component(immediate = true)
 public class TapiModelRegistrator extends AbstractYangModelRegistrator {
@@ -49,19 +50,19 @@
     private static Map<YangModuleId, AppModuleInfo> getAppInfo() {
         Map<YangModuleId, AppModuleInfo> appInfo = new HashMap<>();
 
-        appInfo.put(new DefaultYangModuleId("tapi-connectivity", "2018-10-16"),
+        appInfo.put(new DefaultYangModuleId("tapi-connectivity", "2018-12-10"),
                     new DefaultAppModuleInfo(TapiConnectivity.class, null));
 
-        appInfo.put(new DefaultYangModuleId("tapi-common", "2018-10-16"),
+        appInfo.put(new DefaultYangModuleId("tapi-common", "2018-12-10"),
                     new DefaultAppModuleInfo(TapiCommon.class, null));
 
-        appInfo.put(new DefaultYangModuleId("tapi-topology", "2018-10-16"),
+        appInfo.put(new DefaultYangModuleId("tapi-topology", "2018-12-10"),
                     new DefaultAppModuleInfo(TapiTopology.class, null));
 
-        appInfo.put(new DefaultYangModuleId("tapi-photonic-media", "2018-10-16"),
+        appInfo.put(new DefaultYangModuleId("tapi-photonic-media", "2018-12-10"),
                     new DefaultAppModuleInfo(TapiPhotonicMedia.class, null));
 
-        appInfo.put(new DefaultYangModuleId("tapi-path-computation", "2018-10-16"),
+        appInfo.put(new DefaultYangModuleId("tapi-path-computation", "2018-12-10"),
                     new DefaultAppModuleInfo(TapiPathComputation.class, null));
 
         return ImmutableMap.copyOf(appInfo);
