Some implementation classes in org.apache.sis.filter work on character strings. Expressions may be comparing character strings for order, sometime in case-insensitive way. Expressions may also need to format numbers or dates. We should have a java.util.Locale information somewhere.
More generally, Filter and Expression implementations should know their context. This context may include the Locale, TimeZone, etc. The context could be specified in the FilterFactory.