Current output class defines output using a behaviorKey and behaviorValue, but I think this does not adequately describe output. This set of attributes is good for describing the agent's intentional action, but does not support multiple simultaneous outputs well. For instance, the agent cannot speak and make facial gestures at the same time.
I am unsure how this should be handled exactly. It seems as though only one behavior at a time should be allowed, but in many cases this behavior is defined by a set of attributes. Perhaps this can be handled by just using a list of keys and values or (even better) a dict object, but this seems a bit clumsy.
Current output class defines output using a behaviorKey and behaviorValue, but I think this does not adequately describe output. This set of attributes is good for describing the agent's intentional action, but does not support multiple simultaneous outputs well. For instance, the agent cannot speak and make facial gestures at the same time.
I am unsure how this should be handled exactly. It seems as though only one behavior at a time should be allowed, but in many cases this behavior is defined by a set of attributes. Perhaps this can be handled by just using a list of keys and values or (even better) a dict object, but this seems a bit clumsy.