Interpreting natural language queries