The relation argument is the relation whose fillers' type is to be found.
(defconcept B
:is (:and (:all r A) (:exactly 3 r) (:filled-by r Joe Fred)))
(defconcept C
:is-primitive B
:implies (:and (:some s A) (:at-most 2 s))
:defaults (:filled-by s Sue))
(tellm (C Mary))
(get-role-types (fc C) (fr r)) ==> (|C|A)
(get-role-types (fc C) (fr s)) ==> NIL
(get-role-types (fi Mary) (fr r)) ==> (|C|A)
(get-role-types (fi Mary) (fr s)) ==> (|C|THING)