59 else: |
59 else: |
60 X, Y = tschema, eschema |
60 X, Y = tschema, eschema |
61 card = rschema.rproperty(X, Y, 'cardinality')[1] |
61 card = rschema.rproperty(X, Y, 'cardinality')[1] |
62 composed = rschema.rproperty(X, Y, 'composite') == 'subject' |
62 composed = rschema.rproperty(X, Y, 'composite') == 'subject' |
63 if not cls.rcategories.get(rschema, role, X, Y): |
63 if not cls.rcategories.get(rschema, role, X, Y): |
64 if card in '1+': |
64 if eschema.is_metadata(rschema): |
|
65 category = 'generated' |
|
66 elif card in '1+': |
65 if not rschema.is_final() and composed: |
67 if not rschema.is_final() and composed: |
66 category = 'generated' |
|
67 elif eschema.is_metadata(rschema): |
|
68 category = 'generated' |
68 category = 'generated' |
69 else: |
69 else: |
70 category = 'primary' |
70 category = 'primary' |
71 elif rschema.is_final(): |
71 elif rschema.is_final(): |
72 category = 'secondary' |
72 category = 'secondary' |