refactor Named Predicate to require a trailing ?

This makes it distinguishable from regular identifiers