fn:contains
Returns true if the string $arg1 contains $arg2 as a
            substring, taking collations into account.
         
Signatures
fn:contains(
    $arg1 as xs:string?, 
    $arg2 as xs:string?
) as xs:booleanfn:contains(
    $arg1 as xs:string?, 
    $arg2 as xs:string?, 
    $collation as xs:string
) as xs:booleanProperties
The two-argument form of this function is deterministic, context-dependent, and focus-independent. It depends on collations.
The three-argument form of this function is deterministic, context-dependent, and focus-independent. It depends on collations, and static base URI.
Rules
If the value of $arg1 or $arg2 is the empty sequence, or
               contains only ignorable collation units, it is interpreted as the zero-length
               string.
            
If the value of $arg2 is the zero-length string, then the function returns
               true.
            
If the value of $arg1 is the zero-length string, the function returns
               false.
            
The collation used by this function is determined according to the rules in Choosing a collation.
The function returns an xs:boolean indicating whether or not the value of
               $arg1 contains (at the beginning, at the end, or anywhere within) at
               least one sequence of collation units that provides a minimal match to the
               collation units in the value of $arg2, according to the collation that is
               used.
            
Minimal match is defined in [UTS #10].
Error Conditions
A dynamic error may be raised [ERRFOCH0004] if the specified collation does not support collation units.
Examples
The collation used in these examples, http://example.com/CollationA is a
               collation in which both "-" and "*" are ignorable collation units.
            
"Ignorable collation unit" is equivalent to "ignorable collation element" in [UTS #10].
The expression fn:contains ( "tattoo", "t") returns true().
            
The expression fn:contains ( "tattoo", "ttt") returns false().
            
The expression fn:contains ( "", ()) returns true(). (The first rule is applied, followed by the second
               rule.)
            
The expression fn:contains ( "abcdefghi", "-d-e-f-",
                  "http://www.w3.org/2013/collation/UCA?lang=en;alternate=blanked;strength=primary") returns true().
            
The expression fn:contains ( "a*b*c*d*e*f*g*h*i*", "d-ef-",
                  "http://www.w3.org/2013/collation/UCA?lang=en;alternate=blanked;strength=primary") returns true().
            
The expression fn:contains ( "abcd***e---f*--*ghi", "def",
                  "http://www.w3.org/2013/collation/UCA?lang=en;alternate=blanked;strength=primary") returns true().
            
The expression fn:contains ( (), "--***-*---",
                  "http://www.w3.org/2013/collation/UCA?lang=en;alternate=blanked;strength=primary") returns true(). (The second argument contains only ignorable collation units and is
               equivalent to the zero-length string.)