diff --git a/xos/core/models/core.xproto b/xos/core/models/core.xproto
index e5e7b64..0714036 100644
--- a/xos/core/models/core.xproto
+++ b/xos/core/models/core.xproto
@@ -69,6 +69,7 @@
      required string timezone = 30 [default = "America/New_York", max_length = 100, blank = False, null = False, db_index = False];
      required manytomany dashboards->DashboardView/UserDashboardView:user = 31 [db_index = False, null = False, blank = True];
      optional string policy_status = 32 [default = "0 - Policy in process", max_length = 1024];
+     required string leaf_model_name = 33 [null = False, max_length = 1024, help_text = "The most specialized model in this chain of inheritance, often defined by a service developer"];
 }
 
 // A user may give a permission that he has to another user
diff --git a/xos/core/models/user.py b/xos/core/models/user.py
index 64199f7..e701d20 100644
--- a/xos/core/models/user.py
+++ b/xos/core/models/user.py
@@ -168,6 +168,7 @@
 
     dashboards = models.ManyToManyField(
         'DashboardView', through='UserDashboardView', blank=True)
+    leaf_model_name = models.CharField( help_text = "The most specialized model in this chain of inheritance, often defined by a service developer", max_length = 1024, null = False )
 
     policy_status = models.CharField( default = "0 - Policy in process", max_length = 1024, null = True )
 
@@ -281,6 +282,8 @@
                             model.save(update_fields=['enacted','deleted','policed'], silent=silent)
 
     def save(self, *args, **kwargs):
+        if not self.leaf_model_name:
+            self.leaf_model_name = "User"
 
         if not self.id:
             self.set_password(self.password)
