Semantic learning from keyframe demonstration using object attribute constraints | Synapse