Have one object store the semantic term and question (they are tighly coupled and separating them makes some logic more complicated)