A composite natural language processing and information retrieval approach to question answering against a structured knowledge base