proper error handling and safer default query semantics