If even an 's' or '?' is included in an NLQ phrase that ends with a variable name, then NLQ doesn't recognize the variable.
Stemming should be implemented so "Engines" and "Engine" are recognized the same, as well as "Country" and "Countries" or "Country" and "Country?"
Complete stemming capabilities are needed, but as a first step, even just excluding punctuation could help