diff --git a/product/ERP5Type/Accessor/Interface.py b/product/ERP5Type/Accessor/Interface.py
index 799110e9fedb716ae0345af2b081d5dcccd35a81..f32542a0eeb071a6d94a5ae4e2a7fb1e853a9ef7 100644
--- a/product/ERP5Type/Accessor/Interface.py
+++ b/product/ERP5Type/Accessor/Interface.py
@@ -49,6 +49,12 @@ class Getter(Accessor):
   def __init__(self, id, key):
     self._id = id
     self._key = key
+    self._value = None
 
   def __call__(self, instance):
-    return instance.provides(self._key)
+    value = self._value
+    if value is None:
+      # Store the value for performance
+      value = instance.provides(self._key)
+      self._value = value
+    return value