We need to catch incorrect values in the smart parser. For example "vlan=foo" is an incorrect query since vlan is an integer and thus should only accept integers... so need to map out what attributes are of which type and then check the input value of a search expression so that it matches up.
This makes it possible to return in the search interpretation if a value is incorrect.
This is the last piece of #1007 and I'm writing it down as this separate and more specific issue so we'll actually remember what's left to do :)