Class HTML5CaseBlindCollator

  • All Implemented Interfaces:
    StringCollator, SubstringMatcher

    public class HTML5CaseBlindCollator
    extends java.lang.Object
    implements StringCollator, SubstringMatcher
    A collating sequence that compares strings according to the HTML5 rules for case-blind matching. Specifically, case is ignored for ASCII (English) letters, but not for letters outside the ASCII range.
    • Constructor Detail

      • HTML5CaseBlindCollator

        public HTML5CaseBlindCollator()
    • Method Detail

      • getCollationURI

        public java.lang.String getCollationURI()
        Get the collation URI. It must be possible to use this collation URI to reconstitute the collation
        Specified by:
        getCollationURI in interface StringCollator
        Returns:
        a collation URI that can be used to reconstruct the collation when an XSLT package is reloaded.
      • compareStrings

        public int compareStrings​(UnicodeString a,
                                  UnicodeString b)
        Compare two string objects.
        Specified by:
        compareStrings in interface StringCollator
        Parameters:
        a - the first string
        b - the second string
        Returns:
        <0 if a<b, 0 if a=b, >0 if a>b
        Throws:
        java.lang.ClassCastException - if the objects are of the wrong type for this Comparer
      • comparesEqual

        public boolean comparesEqual​(UnicodeString s1,
                                     UnicodeString s2)
        Test whether one string is equal to another, according to the rules of the XPath compare() function. The result is true if and only if the compare() method returns zero: but the implementation may be more efficient than calling compare and testing the result for zero
        Specified by:
        comparesEqual in interface StringCollator
        Parameters:
        s1 - the first string
        s2 - the second string
        Returns:
        true iff s1 equals s2
      • contains

        public boolean contains​(UnicodeString s1,
                                UnicodeString s2)
        Test whether one string contains another, according to the rules of the XPath contains() function
        Specified by:
        contains in interface SubstringMatcher
        Parameters:
        s1 - the containing string
        s2 - the contained string
        Returns:
        true iff s1 contains s2
      • endsWith

        public boolean endsWith​(UnicodeString s1,
                                UnicodeString s2)
        Test whether one string ends with another, according to the rules of the XPath ends-with() function
        Specified by:
        endsWith in interface SubstringMatcher
        Parameters:
        s1 - the containing string
        s2 - the contained string
        Returns:
        true iff s1 ends with s2
      • startsWith

        public boolean startsWith​(UnicodeString s1,
                                  UnicodeString s2)
        Test whether one string starts with another, according to the rules of the XPath starts-with() function
        Specified by:
        startsWith in interface SubstringMatcher
        Parameters:
        s1 - the containing string
        s2 - the contained string
        Returns:
        true iff s1 starts with s2
      • substringAfter

        public UnicodeString substringAfter​(UnicodeString s1,
                                            UnicodeString s2)
        Return the part of a string after a given substring, according to the rules of the XPath substring-after() function
        Specified by:
        substringAfter in interface SubstringMatcher
        Parameters:
        s1 - the containing string
        s2 - the contained string
        Returns:
        the part of s1 that follows the first occurrence of s2
      • substringBefore

        public UnicodeString substringBefore​(UnicodeString s1,
                                             UnicodeString s2)
        Return the part of a string before a given substring, according to the rules of the XPath substring-before() function
        Specified by:
        substringBefore in interface SubstringMatcher
        Parameters:
        s1 - the containing string
        s2 - the contained string
        Returns:
        the part of s1 that precedes the first occurrence of s2
      • getCollationKey

        public AtomicMatchKey getCollationKey​(UnicodeString s)
        Get a collation key for a string. The essential property of collation keys is that if two values are equal under the collation, then the collation keys are compare correctly under the equals() method.
        Specified by:
        getCollationKey in interface StringCollator
        Parameters:
        s - the string whose collation key is required
        Returns:
        the collation key