The new query Query.IsInstanceOf takes an argument that is a String, representing the class name of interest. However, all other queries with string arguments actually take a StringValueExp. A StringValueExp usually comes from Query.valueOf(string) but can also come from Query.attr and Query.classattr. In future versions of the spec we may add other operations that return StringValueExp (for example substring or concatenation). Thus in addition to the inconsistency there is a loss of functionality from using String rather than StringValueExp here.