Natural Language Interfaces: Specifying and Using Conceptual Constraints