schema.py
changeset 9711 59616edc20d7
parent 9660 a78efec4cf04
child 9817 bb719d857421
--- a/schema.py	Mon Apr 28 17:43:35 2014 +0200
+++ b/schema.py	Mon Apr 07 12:03:31 2014 +0200
@@ -696,9 +696,11 @@
                 if rschema.final:
                     continue
                 for rdef in rschema.rdefs.values():
-                    crole = rdef.composite
-                    if crole == role:
-                        rdef_roles.append((rdef, role))
+                    if (role == 'subject' and rdef.subject == self) or \
+                            (role == 'object' and rdef.object == self):
+                        crole = rdef.composite
+                        if crole == role:
+                            rdef_roles.append((rdef, role))
         return rdef_roles
 
     @cachedproperty