See
this java-user discussion
of problems caused by Unicode code-point comparison, instead of collation, in RangeQuery.
RangeQuery could take in a Locale via a setter, which could be used with a java.text.Collator and/or CollationKey's, to handle ranges for languages which have alphabet orderings different from those in Unicode.