Fix #15: Handle empty queries in schema.search()