diff --git a/product/ERP5/Document/BusinessTemplate.py b/product/ERP5/Document/BusinessTemplate.py
index 2ae5c9e57aa18cbe50b27a4ee6cfde80df239dc9..2bb8c463b4cf33799c9e183fcee8629e5f1240ce 100644
--- a/product/ERP5/Document/BusinessTemplate.py
+++ b/product/ERP5/Document/BusinessTemplate.py
@@ -4723,9 +4723,13 @@ class LocalRolesTemplateItem(BaseTemplateItem):
         setattr(obj, '__ac_local_roles__', local_roles_dict)
         obj.reindexObject()
 
-  def uninstall(self, context, **kw):
+  def uninstall(self, context, object_path=None, **kw):
     p = context.getPortalObject()
-    for roles_path in self._objects.keys():
+    if object_path is not None:
+      keys = [object_path]
+    else:
+      keys = self._objects.keys()
+    for roles_path in keys:
       path = roles_path.split('/')[1:]
       obj = p.unrestrictedTraverse(path)
       setattr(obj, '__ac_local_roles__', {})