I’m not sure i understand your problem completely but regarding your examples, isn’t the first entity always the mandatory one ? It doesn’t matter if it’s abcd or xyz right ? As long as it’s at the first position in the question:
‘What is [first] on [second]’ and your bot recognize those correctly, then we know which one is mandatory and which one is not. Sorry if i didn’t understand your question correctly.
I see, because it’s from one intent (i assume) so that makes it hard to decide which subject it should response with. If you have a list of specific cars and engines, then i think you can extract the first entity, check to see if it’s a car or an engine, then answer correspondingly. Although that doesn’t seem very smart, i admit.
Well, i don’t think the problem is about knowing the entity is mandatory or not. We already know the first entity is always the mandatory. The problem is we need to check which type of mandatory entity it is (car or engine) in order to response correctly. So the bot only need to know that the entity is car or engine and that’s good enough. I guess this is more of a logic problem than nlp problem. Or can you train it to recognize both of them regardless of the position ? Although that will be hard, i think.
EDIT: Nevermind, i understand your idea now. I was completely off, sorry about that haha