Class ICUCollationField

  • public class ICUCollationField
    extends FieldType
    Field for collated sort keys. These can be used for locale-sensitive sort and range queries.

    This field can be created in two ways:

    • Based upon a system collator associated with a Locale.
    • Based upon a tailored ruleset.

    Using a System collator:

    • locale: RFC 3066 locale ID (mandatory)
    • strength: 'primary','secondary','tertiary', 'quaternary', or 'identical' (optional)
    • decomposition: 'no', or 'canonical' (optional)

    Using a Tailored ruleset:

    • custom: UTF-8 text file containing rules supported by RuleBasedCollator (mandatory)
    • strength: 'primary','secondary','tertiary', 'quaternary', or 'identical' (optional)
    • decomposition: 'no' or 'canonical' (optional)

    Expert options:

    • alternate: 'shifted' or 'non-ignorable'. Can be used to ignore punctuation/whitespace.
    • caseLevel: 'true' or 'false'. Useful with strength=primary to ignore accents but not case.
    • caseFirst: 'lower' or 'upper'. Useful to control which is sorted first when case is not ignored.
    • numeric: 'true' or 'false'. Digits are sorted according to numeric value, e.g. foobar-9 sorts before foobar-10
    • variableTop: single character or contraction. Controls what is variable for 'alternate'
    See Also:
    Collator, ULocale, RuleBasedCollator