home *** CD-ROM | disk | FTP | other *** search
/ MacFormat UK 160 - Disc 2 / MF_UK_160_2.iso / pc / DiscContent / Trials / oxygen / lib / oxygen.jar / builtin / xqueryFunctions.xml < prev    next >
Encoding:
Extensible Markup Language  |  2005-07-21  |  83.8 KB  |  1,190 lines

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <xquery_functions>
  3.     <function name="abs">
  4.         <signature>fn:abs($arg as numeric?) as numeric?</signature>
  5.         <summary>Summary: Returns the absolute value of $arg. If $arg is negative returns -$arg
  6.             otherwise returns $arg. If type of $arg is one of the four numeric types xs:float,
  7.             xs:double, xs:decimal or xs:integer the type of the return is the same as the type of
  8.             $arg. If the type of $arg is a type derived from one of the numeric types, the type of
  9.             the return is the base numeric type.</summary>
  10.     </function>
  11.     <function name="add-dayTimeDuration-to-date">
  12.         <signature>op:add-dayTimeDuration-to-date( $arg1 as xs:date, $arg2 as xdt:dayTimeDuration)
  13.             as xs:date</signature>
  14.         <summary>Summary: Returns the xs:date computed by adding $arg2 to the normalized value of
  15.             $arg1.If $arg2 is negative, then the xs:date returned precedes $arg1.The result has the
  16.             same timezone as arg1. If arg1 has no timezone, the result has no timezone.</summary>
  17.     </function>
  18.     <function name="add-dayTimeDuration-to-dateTime">
  19.         <signature>op:add-dayTimeDuration-to-dateTime( $arg1 as xs:dateTime, $arg2 as
  20.             xdt:dayTimeDuration) as xs:dateTime </signature>
  21.         <summary>Summary: Returns the xs:dateTime computed by adding $arg2 to the normalized value
  22.             of $arg1. If $arg2 is negative, then the result xs:dateTime precedes $arg1. The result
  23.             has the same timezone as arg1. If arg1 has no timezone, the result has no timezone.</summary>
  24.     </function>
  25.     <function name="add-dayTimeDuration-to-time">
  26.         <signature>op:add-dayTimeDuration-to-time( $arg1 as xs:time, $arg2 as xdt:dayTimeDuration)
  27.             as xs:time </signature>
  28.         <summary>Summary: First, the days component in the canonical lexical representation of $arg2
  29.             is set to zero (0) and the value of the resulting xdt:dayTimeDuration is calculated.
  30.             Alternatively, the value modulus 86,400 is used. This value is added to the normalized
  31.             value of $arg1 and the result returned. Note that the xs:time returned may occur in a
  32.             following or preceding day and may be less than $arg1. The result has the same timezone
  33.             as arg1. If arg1 has no timezone, the result has no timezone.</summary>
  34.     </function>
  35.     <function name="add-dayTimeDurations">
  36.         <signature>fn:add-dayTimeDurations( $arg1 as xdt:dayTimeDuration, $arg2 as
  37.             xdt:dayTimeDuration) as xdt:dayTimeDuration </signature>
  38.         <summary>Summary: Returns the result of adding the value of $arg1 to the value of $arg2.
  39.             Backs up the "+" operator on xdt:dayTimeDuration values.</summary>
  40.     </function>
  41.     <function name="add-yearMonthDuration-to-date">
  42.         <signature>fn:add-yearMonthDuration-to-date( $arg1 as xs:date, $arg2 as
  43.             xdt:yearMonthDuration) as xs:date </signature>
  44.         <summary>Summary: Returns the xs:date computed by adding $arg2 to the normalized value of
  45.             $arg1. If $arg2 is negative, then the xs:date returned precedes $arg1. The result has
  46.             the same timezone as arg1. If arg1 has no timezone, the result has no timezone </summary>
  47.     </function>
  48.     <function name="add-yearMonthDuration-to-dateTime">
  49.         <signature>fn:add-yearMonthDuration-to-dateTime( $arg1 as xs:dateTime, $arg2 as
  50.             xdt:yearMonthDuration) as xs:dateTime </signature>
  51.         <summary>Summary: Returns the xs:dateTime computed by adding $arg2 to the normalized value
  52.             of $arg1If $arg2 is negative, then the result xs:dateTime precedes $arg1. The result has
  53.             the same timezone as arg1. If arg1 has no timezone, the result has no timezone.</summary>
  54.     </function>
  55.     <function name="add-yearMonthDurations">
  56.         <signature>fn:add-yearMonthDurations( $arg1 as xdt:yearMonthDuration, $arg2 as
  57.             xdt:yearMonthDuration) as xdt:yearMonthDuration </signature>
  58.         <summary>Summary: Returns the result of adding the value of $arg1 to the value of $arg2.
  59.             Backs up the "+" operator on xdt:yearMonthDuration values.</summary>
  60.     </function>
  61.     <function name="adjust-date-to-timezone">
  62.         <signature>fn:adjust-date-to-timezone($arg as xs:date?) as xs:date?</signature>
  63.         <signature>fn:adjust-date-to-timezone( $arg as xs:date?, $timezone as xdt:dayTimeDuration?)
  64.             as xs:date? </signature>
  65.         <summary>Summary: Adjusts an xs:date value to a specific timezone, or to no timezone at all.
  66.             If $timezone is the empty sequence, returns an xs:date without a timezone. Otherwise,
  67.             returns an xs:date with a timezone. For purposes of timezone adjustment, an xs:date is
  68.             treated as an xs:dateTime with time 00:00:00.</summary>
  69.     </function>
  70.     <function name="adjust-dateTime-to-timezone">
  71.         <signature>fn:adjust-dateTime-to-timezone($arg as xs:dateTime?) as xs:dateTime?</signature>
  72.         <signature>fn:adjust-dateTime-to-timezone( $arg as xs:dateTime?, $timezone as
  73.             xdt:dayTimeDuration?) as xs:dateTime? </signature>
  74.         <summary>Summary: Adjusts an xs:dateTime value to a specific timezone, or to no timezone at
  75.             all. If $timezone is the empty sequence, returns an xs:dateTime without a timezone.
  76.             Otherwise, returns an xs:dateTime with a timezone.</summary>
  77.     </function>
  78.     <function name="adjust-time-to-timezone">
  79.         <signature>fn:adjust-time-to-timezone($arg as xs:time?) as xs:time? </signature>
  80.         <signature>fn:adjust-time-to-timezone( $arg as xs:time?, $timezone as xdt:dayTimeDuration?)
  81.             as xs:time? </signature>
  82.         <summary>Summary: Adjusts an xs:time value to a specific timezone, or to no timezone at all.
  83.             If $timezone is the empty sequence, returns an xs:time without a timezone. Otherwise,
  84.             returns an xs:time with a timezone.</summary>
  85.     </function>
  86.     <function name="anyURI-equal">
  87.         <signature>op:anyURI-equal($arg1 as xs:anyURI, $arg2 as xs:anyURI) as xs:boolean </signature>
  88.         <summary>Summary: Returns true if $arg1 and $arg2 compare equal on a codepoint-by-codepoint
  89.             basis. Otherwise, returns false. This function backs up the "eq" and
  90.             "ne" operators on anyURI.</summary>
  91.     </function>
  92.     <function name="avg">
  93.         <signature>fn:avg($arg as xdt:anyAtomicType*) as xdt:anyAtomicType?</signature>
  94.         <summary>Summary: Returns the average of the values in the input sequence $arg, that is, the
  95.             sum of the values divided by the number of values.</summary>
  96.     </function>
  97.     <function name="base-uri">
  98.         <signature>fn:base-uri($arg as node()?) as xs:anyURI?</signature>
  99.         <summary>Summary: Returns the value of the base-uri property for $arg as defined by the
  100.             accessor function dm:base-uri() for that kind of node.</summary>
  101.         <signature>fn:base-uri() as xs:anyURI?</signature>
  102.         <summary>Summary: This version of the function returns the value of the base-uri property
  103.             from the static context. If the base-uri property is undefined, the empty sequence is returned.</summary>
  104.     </function>
  105.     <function name="base64Binary-equal">
  106.         <signature>op:base64Binary-equal( $value1 as xs:base64Binary, $value2 as xs:base64Binary) as xs:boolean</signature>
  107.         <summary>Summary: Returns true if $value1 and $value2 are of the same length, measured in
  108.             binary octets, and contain the same octets in the same order. Otherwise, returns false.</summary>
  109.     </function>
  110.     <function name="boolean">
  111.         <signature>fn:boolean($arg as item()*) as xs:boolean</signature>
  112.         <summary>Summary: Computes the effective boolean value of the sequence $arg</summary>
  113.     </function>
  114.     <function name="boolean-equal">
  115.         <signature>op:boolean-equal($value1 as xs:boolean, $value2 as xs:boolean) as xs:boolean</signature>
  116.         <summary>Summary: Returns true if both arguments are true or if both arguments are false.
  117.             Returns false if one of the arguments is true and the other argument is false.</summary>
  118.     </function>
  119.     <function name="boolean-greater-than">
  120.         <signature>op:boolean-greater-than($arg1 as xs:boolean, $arg2 as xs:boolean) as xs:boolean</signature>
  121.         <summary>Summary: Returns true if $arg1 is true and $arg2 is false. Otherwise, returns false.</summary>
  122.     </function>
  123.     <function name="boolean-less-than">
  124.         <signature>op:boolean-less-than($arg1 as xs:boolean, $arg2 as xs:boolean) as xs:boolean</signature>
  125.         <summary>Summary: Returns true if $arg1 is false and $arg2 is true. Otherwise, returns false.</summary>
  126.     </function>
  127.     <function name="ceiling">
  128.         <signature>fn:ceiling($arg as numeric?) as numeric?</signature>
  129.         <summary>Summary: Returns the smallest (closest to negative infinity) number with no
  130.             fractional part that is not less than the value of $arg. If type of $arg is one of the
  131.             four numeric types xs:float, xs:double, xs:decimal or xs:integer the type of the return
  132.             is the same as the type of $arg. If the type of $arg is a type derived from one of the
  133.             numeric types, the type of the return is the base numeric type.</summary>
  134.     </function>
  135.     <function name="codepoints-to-string">
  136.         <signature>fn:codepoints-to-string($arg as xs:integer*) as xs:string</signature>
  137.         <summary>Creates an xs:string from a sequence of code points. Returns the zero-length string
  138.             if $arg is the empty sequence. If any of the code points in $arg is not a legal XML
  139.             character, an error is raised</summary>
  140.     </function>
  141.     <function name="collection">
  142.         <signature>fn:collection($arg as xs:string?) as node()*</signature>
  143.         <summary>Summary: Takes a xs:string as argument and returns a sequence of nodes obtained by
  144.             interpreting $arg as an xs:anyURI and resolving it according to the mapping specified in
  145.             Available collections. If Available collections provides a mapping from this string to a
  146.             sequence of nodes, the function returns that sequence. If Available collections maps the
  147.             string to an empty sequence, then the function returns an empty sequence. If Available
  148.             collections provides no mapping for the string, an error is raised </summary>
  149.     </function>
  150.     <function name="compare">
  151.         <signature>fn:compare($comparand1 as xs:string?, $comparand2 as xs:string?) as xs:integer?</signature>
  152.         <signature>fn:compare( $comparand1 as xs:string?, $comparand2 as xs:string?, $collation as
  153.             xs:string) as xs:integer? </signature>
  154.         <summary>Summary: Returns -1, 0, or 1, depending on whether the value of the $comparand1 is
  155.             respectively less than, equal to, or greater than the value of $comparand2, according to
  156.             the rules of the collation that is used.</summary>
  157.     </function>
  158.     <function name="concat">
  159.         <signature>fn:concat( $arg1 as xdt:anyAtomicType?, $arg2 as xdt:anyAtomicType?, ... ) as
  160.             xs:string </signature>
  161.         <summary>Summary: Accepts two or more xdt:anyAtomicType arguments and converts them to
  162.             xs:string. Returns the xs:string that is the concatenation of the values of its
  163.             arguments after conversion. If any of the arguments is the empty sequence, the argument
  164.             is treated as the zero-length string.</summary>
  165.     </function>
  166.     <function name="concatenate">
  167.         <signature>op:concatenate($seq1 as item()*, $seq2 as item()*) as item()*</signature>
  168.         <summary>Summary: Returns a sequence consisting of the items in $seq1 followed by the items
  169.             in $seq2. This function backs up the infix operator ",". If either
  170.             sequence is the empty sequence, the other operand is returned.</summary>
  171.     </function>
  172.     <function name="contains">
  173.         <signature>fn:contains($arg1 as xs:string?, $arg2 as xs:string?) as xs:boolean</signature>
  174.         <signature>fn:contains( $arg1 as xs:string?, $arg2 as xs:string?, $collation as xs:string)
  175.             as xs:boolean </signature>
  176.         <summary>Summary: Returns an xs:boolean indicating whether or not the value of $arg1
  177.             contains (at the beginning, at the end, or anywhere within) at least one sequence of
  178.             collation units that provides a minimal match to the collation units in the value of
  179.             $arg2, according to the collation that is used.</summary>
  180.     </function>
  181.     <function name="count">
  182.         <signature>fn:count($arg as item()*) as xs:integer</signature>
  183.         <summary>Summary: Returns the number of items in the value of $arg.</summary>
  184.     </function>
  185.     <function name="current-date">
  186.         <signature>fn:current-date() as xs:date </signature>
  187.         <summary>Summary: Returns xs:date(fn:current-dateTime()). This is a xs:date (with timezone)
  188.             that is current at some time during the evaluation of a query or transformation in which
  189.             fn:current-date() is executed. This function is ¬∑stable¬∑. The precise instant during the
  190.             query or transformation represented by the value of fn:current-date() is ¬∑implementation dependent¬∑.</summary>
  191.     </function>
  192.     <function name="current-dateTime">
  193.         <signature>fn:current-dateTime() as xs:dateTime</signature>
  194.         <summary>Summary: Returns the xs:dateTime (with timezone) from the dynamic context.This is a
  195.             xs:dateTime that is current at some time during the evaluation of a query or
  196.             transformation in which fn:current-dateTime() is executed. This function is ¬∑stable¬∑.
  197.             The precise instant during the query or transformation represented by the value of
  198.             fn:current-dateTime() is ¬∑implementation dependent¬∑.</summary>
  199.     </function>
  200.     <function name="current-time">
  201.         <signature>fn:current-time() as xs:time</signature>
  202.         <summary>Summary: Returns xs:time(fn:current-dateTime()). This is axs:time (with timezone)
  203.             that is current at some time during the evaluation of a query or transformation in which
  204.             fn:current-time() is executed. This function is ¬∑stable¬∑. The precise instant during the
  205.             query or transformation represented by the value of fn:current-time() is ¬∑implementation dependent¬∑.</summary>
  206.     </function>
  207.     <function name="data">
  208.         <signature>fn:data($arg as item()*) as xdt:anyAtomicType*</signature>
  209.         <summary>Summary: fn:data takes a sequence of items and returns a sequence of atomic values.</summary>
  210.     </function>
  211.     <function name="date-equal">
  212.         <signature>op:date-equal($arg1 as xs:date, $arg2 as xs:date) as xs:boolean</signature>
  213.         <summary>Summary: Returns true if and only if the normalized value of $arg1 is equal to the
  214.             normalized value of $arg2. Returns false otherwise.</summary>
  215.     </function>
  216.     <function name="date-greater-than">
  217.         <signature>op:date-greater-than($arg1 as xs:date, $arg2 as xs:date) as xs:boolean</signature>
  218.         <summary>Summary: Returns true if and only if the normalized value of $arg1 is greater than
  219.             the normalized value of $arg2. Returns false otherwise.</summary>
  220.     </function>
  221.     <function name="date-less-than">
  222.         <signature>op:date-less-than($arg1 as xs:date, $arg2 as xs:date) as xs:boolean</signature>
  223.         <summary>Summary: Returns true if and only if the normalized value of $arg1 is less than the
  224.             normalized value of $arg2. Returns false otherwise.</summary>
  225.     </function>
  226.     <function name="deep-equal">
  227.         <signature>fn:deep-equal($parameter1 as item()*, $parameter2 as item()*) as xs:boolean</signature>
  228.         <signature>fn:deep-equal( $parameter1 as item()*, $parameter2 as item()*, $collation as
  229.             string) as xs:boolean </signature>
  230.         <summary>Summary: The function assesses whether two sequences are deep-equal to each other.
  231.             To be deep-equal, they must contain items that are pairwise deep-equal; and for two
  232.             items to be deep-equal, they must either by atomic values that compare equal, or nodes
  233.             of the same kind, with the same name, whose children are deep-equal. This is defined in
  234.             more detail below. The $collation argument identifies a collation which is used at all
  235.             levels of recursion when strings are compared (but not when names are compared).</summary>
  236.     </function>
  237.     <function name="default-collation">
  238.         <signature>fn:default-collation() as xs:string</signature>
  239.         <summary>Summary: Returns the value of the default collation property from the static context.</summary>
  240.     </function>
  241.     <function name="distinct-values">
  242.         <signature>fn:distinct-values($arg as xdt:anyAtomicType*) as xdt:anyAtomicType*</signature>
  243.         <signature>fn:distinct-values( $arg as xdt:anyAtomicType*, $collation as xs:string) as
  244.             xdt:anyAtomicType* </signature>
  245.         <summary>Summary: Returns the sequence that results from removing from $arg all but one of a
  246.             set of values that are eq to one other. Values that cannot be compared, i.e. the eq
  247.             operator is not defined for their types, are considered to be distinct. Values of type
  248.             xdt:untypedAtomic are compared as if they were of type xs:string. The order in which the
  249.             sequence of values is returned is ¬∑implementation dependent¬∑.</summary>
  250.     </function>
  251.     <function name="divide-dayTimeDuration">
  252.         <signature>op:divide-dayTimeDuration( $arg1 as xdt:dayTimeDuration, $arg2 as xs:double) as
  253.             xdt:dayTimeDuration </signature>
  254.         <summary>Summary: Returns the result of dividing the value of $arg1 by $arg2.</summary>
  255.         <signature>op:divide-dayTimeDuration( $arg1 as xdt:dayTimeDuration, $arg2 as
  256.             xdt:dayTimeDuration) as xs:decimal </signature>
  257.         <summary>Summary: Returns the result of dividing the value of $arg1 by $arg2. Since the
  258.             values of both operands are decimals, the semantics of the division is identical to
  259.             op:numeric-divide with xs:decimal operands.</summary>
  260.     </function>
  261.     <function name="divide-yearMonthDuration">
  262.         <signature>op:divide-yearMonthDuration( $arg1 as xdt:yearMonthDuration, $arg2 as xs:double)
  263.             as xdt:yearMonthDuration </signature>
  264.         <summary>Summary: Returns the result of dividing the value of $arg1 by $arg2. The result is
  265.             rounded to the nearest month. For a value v, 0 <= v < 0.5 rounds to 0; 0.5
  266.             <= v < 1.0 rounds to 1.</summary>
  267.         <signature>op:divide-yearMonthDuration( $arg1 as xdt:yearMonthDuration, $arg2 as
  268.             xdt:yearMonthDuration) as xs:decimal </signature>
  269.         <summary>Summary: Returns the result of dividing the value of $arg1 by $arg2. Since the
  270.             values of both operands are integers, the semantics of the division is identical to
  271.             op:numeric-divide with xs:integer operands.</summary>
  272.     </function>
  273.     <function name="doc">
  274.         <signature>fn:doc($uri as xs:string?) as document-node()?</signature>
  275.         <summary>Summary: Retrieves a document using an xs:anyURI supplied as an xs:string. If $uri
  276.             is not a valid xs:anyURI, an error is raised [invalid argument to fn:doc]. If it is a
  277.             relative URI Reference, it is resolved relative to the value of the base URI property
  278.             from the static context. The resulting absolute URI Reference is cast to an xs:string.
  279.             If the Available documents provides a mapping from this string to a document node, the
  280.             function returns that document node. If the Available documents maps the string to an
  281.             empty sequence, then the function returns an empty sequence. If the Available documents
  282.             provides no mapping for the string, an error is raised [invalid argument to fn:doc].</summary>
  283.     </function>
  284.     <function name="document-uri">
  285.         <signature>fn:document-uri($arg as node()?) as xs:anyURI?</signature>
  286.         <summary>Summary: Returns the value of the document-uri property for $arg as defined by the
  287.             accessor function.</summary>
  288.     </function>
  289.     <function name="empty">
  290.         <signature>fn:empty($arg as item()*) as xs:boolean</signature>
  291.         <summary>Summary: If the value of $arg is the empty sequence, the function returns true;
  292.             otherwise, the function returns false.</summary>
  293.     </function>
  294.     <function name="ends-with">
  295.         <signature>fn:ends-with($arg1 as xs:string?, $arg2 as xs:string?) as xs:boolean</signature>
  296.         <signature>fn:ends-with( $arg1 as xs:string?, $arg2 as xs:string?, $collation as xs:string)
  297.             as xs:boolean </signature>
  298.         <summary>Summary: Returns an xs:boolean indicating whether or not the value of $arg1 ends
  299.             with a sequence of collation units that provides a minimal match to the collation units
  300.             of M$arg2 according to the collation that is used.</summary>
  301.     </function>
  302.     <function name="error">
  303.         <signature>fn:error() as none</signature>
  304.         <signature>fn:error($error as xs:QName) as none</signature>
  305.         <signature>fn:error($error as xs:QName, $description as xs:string) as none</signature>
  306.         <signature>fn:error( $error as xs:QName, $description as xs:string, $error-object as item()*)</signature>
  307.         <summary>Summary: The fn:error function causes the evaluation of the outermost XQuery or
  308.             transformation to stop. While this function never returns a value, it will cause a URI
  309.             that identifies the error to be returned to the external processing environment.</summary>
  310.     </function>
  311.     <function name="escape-uri">
  312.         <signature>fn:escape-uri( $uri-part as xs:string?, $escape-reserved as xs:boolean) as
  313.             xs:string </signature>
  314.         <summary>Summary: This function applies the URI escaping rules defined in section 2 of [RFC
  315.             2396] as amended by [RFC 2732], with one exception, to the string supplied as $uri-part,
  316.             which typically represents all or part of a URI. The effect of the function is to escape
  317.             a set of identified characters in the string. Each such character is replaced in the
  318.             string by an escape sequence, which is formed by encoding the character as a sequence of
  319.             octets in UTF-8, and then representing each of these octets in the form %HH, where HH is
  320.             the hexadecimal representation of the octet.</summary>
  321.     </function>
  322.     <function name="exactly-one">
  323.         <signature>fn:exactly-one($arg as item()*) as item()</signature>
  324.         <summary>Summary: Returns $arg if it contains exactly one item. Otherwise, raises an error
  325.             [fn:exactly-one called with a sequence containing zero or more than one item]. The type
  326.             of the result depends on the type of $arg.</summary>
  327.     </function>
  328.     <function name="except">
  329.         <signature>op:except($parameter1 as node()*, $parameter2 as node()*) as node()*</signature>
  330.         <summary>Summary: Constructs a sequence containing every node that occurs in the value of
  331.             $parameter1, but not in the value of $parameter2, eliminating duplicate nodes. Nodes are
  332.             returned in document order.</summary>
  333.     </function>
  334.     <function name="exists">
  335.         <signature>fn:exists($arg as item()*) as xs:boolean</signature>
  336.         <summary>Summary: If the value of $arg is not the empty sequence, the function returns true;
  337.             otherwise, the function returns false</summary>
  338.     </function>
  339.     <function name="expanded-QName">
  340.         <signature>fn:expanded-QName($paramURI as xs:string?, $paramLocal as xs:string) as xs:QName</signature>
  341.         <summary>Summary: Returns an xs:QName with the namespace URI given in $paramURI and the
  342.             local name in $paramLocal. If $paramURI is the empty string or the empty sequence, it
  343.             represents "no namespace". If $paramLocal does not have the correct
  344.             lexical form for xs:NCName an error is raised [invalid lexical value].</summary>
  345.     </function>
  346.     <function name="false">
  347.         <signature>fn:false() as xs:boolean</signature>
  348.         <summary>Summary: Returns the xs:boolean value false. Equivalent to xs:boolean("0").</summary>
  349.     </function>
  350.     <function name="floor">
  351.         <signature>fn:floor($arg as numeric?) as numeric?</signature>
  352.         <summary>Summary: Returns the largest (closest to positive infinity) number with no
  353.             fractional part that is not greater than the value of $arg. If type of $arg is one of
  354.             the four numeric types xs:float, xs:double, xs:decimal or xs:integer the type of the
  355.             return is the same as the type of $arg. If the type of $arg is a type derived from one
  356.             of the numeric types, the type of the return is the base numeric type</summary>
  357.     </function>
  358.     <function name="gDay-equal">
  359.         <signature>op:gDay-equal($arg1 as xs:gDay, $arg2 as xs:gDay) as xs:boolean</signature>
  360.         <summary>Summary: Returns true if and only if the normalized value of $arg1 is equal to the
  361.             normalized value of $arg2. Returns false otherwise.</summary>
  362.     </function>
  363.     <function name="gMonth-equal">
  364.         <signature>op:gMonth-equal($arg1 as xs:gMonth, $arg2 as xs:gMonth) as xs:boolean</signature>
  365.         <summary>Summary: Returns true if and only if the normalized value of $arg1 is equal to the
  366.             normalized value of $arg2. Returns false otherwise.</summary>
  367.     </function>
  368.     <function name="gMonthDay-equal">
  369.         <signature>op:gMonthDay-equal($arg1 as xs:gMonthDay, $arg2 as xs:gMonthDay) as xs:boolean</signature>
  370.         <summary>Summary: Returns true if and only if the normalized value of $arg1 is equal to the
  371.             normalized value of $arg2. Returns false otherwise.</summary>
  372.     </function>
  373.     <function name="gYear-equal">
  374.         <signature>op:gYear-equal($arg1 as xs:gYear, $arg2 as xs:gYear) as xs:boolean</signature>
  375.         <summary>Summary: Returns true if and only if the normalized value of $arg1 is equal to the
  376.             normalized value of $arg2. Returns false otherwise.</summary>
  377.     </function>
  378.     <function name="gYearMonth-equal">
  379.         <signature>op:gYearMonth-equal( $arg1 as xs:gYearMonth, $arg2 as xs:gYearMonth) as
  380.             xs:boolean </signature>
  381.         <summary>Summary: Returns true if and only if the normalized value of $arg1 is equal to the
  382.             normalized value of $arg2. Returns false otherwise.</summary>
  383.     </function>
  384.     <function name="hexBinary-equal">
  385.         <signature>op:hexBinary-equal( $value1 as xs:hexBinary, $value2 as xs:hexBinary) as
  386.             xs:boolean </signature>
  387.         <summary>Summary: Returns true if $value1 and $value2 are of the same length, measured in
  388.             binary octets, and contain the same octets in the same order. Otherwise, returns false.</summary>
  389.     </function>
  390.     <function name="hours-from-dateTime">
  391.         <signature>fn:hours-from-dateTime($arg as xs:dateTime?) as xs:integer?</signature>
  392.         <summary>Summary: Returns an xs:integer between 0 and 23, both inclusive, representing the
  393.             hours component in the localized value of $arg. If $arg is the empty sequence, returns
  394.             the empty sequence.</summary>
  395.     </function>
  396.     <function name="hours-from-duration">
  397.         <signature>fn:hours-from-duration($arg as xdt:dayTimeDuration?) as xs:integer?</signature>
  398.         <summary>Summary: Returns an xs:integer representing the hours component in the canonical
  399.             lexical representation of the value of $arg. The result may be negative. If $arg is the
  400.             empty sequence, returns the empty sequence</summary>
  401.     </function>
  402.     <function name="hours-from-time">
  403.         <signature>fn:hours-from-time($arg as xs:time?) as xs:integer?</signature>
  404.         <summary>Summary: Returns an xs:integer between 0 and 23, both inclusive, representing the
  405.             value of the hours component in the localized value of $arg. If $arg is the empty
  406.             sequence, returns the empty sequence.</summary>
  407.     </function>
  408.     <function name="id">
  409.         <signature>fn:id($arg as xs:string*) as element()*</signature>
  410.         <signature>fn:id($arg as xs:string*, $node as node()) as element()*</signature>
  411.         <summary>Summary: Returns the sequence of element nodes with xs:ID values matching the
  412.             values of one or more of the xs:IDREF values supplied in $arg</summary>
  413.     </function>
  414.     <function name="idref">
  415.         <signature>fn:idref($arg as xs:string*) as node()*</signature>
  416.         <signature>fn:idref($arg as xs:string*, $node as node()) as node()*</signature>
  417.         <summary>Summary: Returns the nodes that have xs:IDREF values that reference one or more of
  418.             the xs:ID values specified in $arg. This function allows reverse navigation from IDs to xs:IDREFs.</summary>
  419.     </function>
  420.     <function name="implicit-timezone">
  421.         <signature>fn:implicit-timezone() as xdt:dayTimeDuration?</signature>
  422.         <summary>Summary: Returns the value of the implicit timezone property from the evaluation
  423.             context. Returns the empty sequence if the implicit timezone is undefined.</summary>
  424.     </function>
  425.     <function name="in-scope-prefixes">
  426.         <signature>fn:in-scope-prefixes($element as element()) as xs:string*</signature>
  427.         <summary>Summary: Returns the prefixes of the in-scope namespaces for $element. For
  428.             namespaces that have a prefix, it returns the prefix as an xs:NCName. For the default
  429.             namespace, which has no prefix, it returns the zero-length string.</summary>
  430.     </function>
  431.     <function name="index-of">
  432.         <signature>fn:index-of( $seqParam as xdt:anyAtomicType*, $srchParam as xdt:anyAtomicType) as
  433.             xs:integer* </signature>
  434.         <signature>fn:index-of( $seqParam as xdt:anyAtomicType*, $srchParam as xdt:anyAtomicType,
  435.             $collation as xs:string) as xs:integer* </signature>
  436.         <summary>Summary: Returns a sequence of positive integers giving the positions within the
  437.             sequence $seqParam of items that are equal to $srchParam.</summary>
  438.     </function>
  439.     <function name="insert-before">
  440.         <signature>fn:insert-before( $target as item()*, $position as xs:integer, $inserts as
  441.             item()*) as item()* </signature>
  442.         <summary>Summary: Returns a new sequence constructed from the value of $target with the
  443.             value of $inserts inserted at the position specified by the value of $position. (The
  444.             value of $target is not affected by the sequence construction.) If $target is the empty
  445.             sequence, $inserts is returned. If $inserts is the empty sequence, $target is returned.
  446.             The value returned by the function consists of all items of $target whose index is less
  447.             than $position, followed by all items of $inserts, followed by the remaining elements of
  448.             $target, in that sequence. If $position is less than one (1), the first position, the
  449.             effective value of $position is one (1). If $position is greater than the number of
  450.             items in $target, then the effective value of $position is equal to the number of items
  451.             in $target plus 1.</summary>
  452.     </function>
  453.     <function name="intersect">
  454.         <signature>op:intersect($parameter1 as node()*, $parameter2 as node()*) as node()*</signature>
  455.         <summary>Summary: Constructs a sequence containing every node that occurs in the values of
  456.             both $parameter1 and $parameter2, eliminating duplicate nodes. Nodes are returned in
  457.             document order. If either operand is the empty sequence, the empty sequence is returned</summary>
  458.     </function>
  459.     <function name="is-same-node">
  460.         <signature>op:is-same-node($parameter1 as node(), $parameter2 as node()) as xs:boolean</signature>
  461.         <summary>Summary: If the node identified by the value of $parameter1 is the same node as the
  462.             node identified by the value of $parameter2 (that is, the two nodes have the same
  463.             identity), then the function returns true; otherwise, the function returns false. This
  464.             function backs up the "is" operator on nodes.</summary>
  465.     </function>
  466.     <function name="lang">
  467.         <signature>fn:lang($testlang as xs:string?) as xs:boolean</signature>
  468.         <signature>fn:lang($testlang as xs:string?, $node as node()) as xs:boolean</signature>
  469.         <summary>Summary: This function tests whether the language of $node, or the context node if
  470.             the second argument is omitted, as specified by xml:lang attributes is the same as, or
  471.             is a sublanguage of, the language specified by $testlang. The language of the argument
  472.             node, or the context node if the second argument is omitted, is determined by the value
  473.             of the xml:lang attribute on the node, or, if the node has no such attribute, by the
  474.             value of the xml:lang attribute on the nearest ancestor of the node that has an xml:lang
  475.             attribute. If there is no such ancestor, then the function returns false</summary>
  476.     </function>
  477.     <function name="last">
  478.         <signature>fn:last() as xs:integer</signature>
  479.         <summary>Summary: Returns an xs:integer indicating the number of items in the sequence of
  480.             items currently being processed. If the context item is undefined, an error is raised
  481.             [undefined context item].</summary>
  482.     </function>
  483.     <function name="local-name">
  484.         <signature>fn:local-name() as xs:string</signature>
  485.         <signature>fn:local-name($arg as node()?) as xs:string</signature>
  486.         <summary>Summary: Returns the local part of the name of $arg as an xs:string that will
  487.             either be the zero-length string or will have the lexical form of an xs:NCName.</summary>
  488.     </function>
  489.     <function name="local-name-from-QName">
  490.         <signature>fn:local-name-from-QName($arg as xs:QName?) as xs:NCNAME?</signature>
  491.         <summary>Summary: Returns an xs:NCNAME representing the local part of $arg. If $arg is the
  492.             empty sequence, returns the empty sequence.</summary>
  493.     </function>
  494.     <function name="lower-case">
  495.         <signature>fn:lower-case($arg as xs:string?) as xs:string</signature>
  496.         <summary>Summary, returns the value of $srcval after translating every character to its
  497.             lower-case correspondent. Every character that does not have an lower-case correspondent
  498.             is included in the returned value in its original form. If the value of
  499.             $arg is the empty sequence, the zero-length string is returned.</summary>
  500.     </function>
  501.     <function name="matches">
  502.         <signature>fn:matches($input as xs:string?, $pattern as xs:string) as xs:boolean</signature>
  503.         <signature>fn:matches( $input as xs:string?, $pattern as xs:string, $flags as xs:string) as
  504.             xs:boolean </signature>
  505.         <summary>Summary: The function returns true if $input matches the regular expression
  506.             supplied as $pattern as influenced by the value of $flags, if present; otherwise, it
  507.             returns false.</summary>
  508.     </function>
  509.     <function name="max">
  510.         <signature>fn:max($arg as xdt:anyAtomicType*) as xdt:anyAtomicType?</signature>
  511.         <signature>fn:max($arg as xdt:anyAtomicType*, $collation as string) as xdt:anyAtomicType?</signature>
  512.         <summary>Summary: Selects an item from the input sequence $arg whose value is greater than
  513.             or equal to the value of every other item in the input sequence. If there are two or
  514.             more such items, then the specific item whose value is returned is ¬∑implementation dependent¬∑.</summary>
  515.     </function>
  516.     <function name="min">
  517.         <signature>fn:min($arg as xdt:anyAtomicType*) as xdt:anyAtomicType?</signature>
  518.         <signature>fn:min($arg as xdt:anyAtomicType*, $collation as string) as xdt:anyAtomicType?</signature>
  519.         <summary>Summary: selects an item from the input sequence $arg whose value is less than or
  520.             equal to the value of every other item in the input sequence. If there are two or more
  521.             such items, then the specific item whose value is returned is ¬∑implementation dependent¬∑.</summary>
  522.     </function>
  523.     <function name="minutes-from-dateTime">
  524.         <signature>fn:minutes-from-dateTime($arg as xs:dateTime?) as xs:integer?</signature>
  525.         <summary>Summary: Returns an xs:integer value between 0 and 59, both inclusive, representing
  526.             the minute component in the localized value of $arg. If $arg is the empty sequence,
  527.             returns the empty sequence.</summary>
  528.     </function>
  529.     <function name="minutes-from-duration">
  530.         <signature>fn:minutes-from-duration($arg as xdt:dayTimeDuration?) as xs:integer?</signature>
  531.         <summary>Summary: Returns an xs:integer representing the minutes component in the canonical
  532.             lexical representation of the value of $arg. The result may be negative. If $arg is the
  533.             empty sequence, returns the empty sequence.</summary>
  534.     </function>
  535.     <function name="minutes-from-time">
  536.         <signature>fn:minutes-from-time($arg as xs:time?) as xs:integer?</signature>
  537.         <summary>Summary: Returns an xs:integer value between 0 to 59, both inclusive, representing
  538.             the value of the minutes component in the localized value of $arg. If $arg is the empty
  539.             sequence, returns the empty sequence.</summary>
  540.     </function>
  541.     <function name="month-from-date">
  542.         <signature>fn:month-from-date($arg as xs:date?) as xs:integer?</signature>
  543.         <summary>Summary: Returns an xs:integer between 1 and 12, both inclusive, representing the
  544.             month component in the localized value of $arg. If $arg is the empty sequence, returns
  545.             the empty sequence.</summary>
  546.     </function>
  547.     <function name="month-from-dateTime">
  548.         <signature>fn:month-from-dateTime($arg as xs:dateTime?) as xs:integer?</signature>
  549.         <summary>Summary: Returns an xs:integer between 1 and 12, both inclusive, representing the
  550.             month component in the localized value of $arg. If $arg is the empty sequence, returns
  551.             the empty sequence.</summary>
  552.     </function>
  553.     <function name="months-from-duration">
  554.         <signature>fn:months-from-duration($arg as xdt:yearMonthDuration?) as xs:integer?</signature>
  555.         <summary>Summary: Returns an xs:integer representing the months component in the canonical
  556.             lexical representation of the value of $arg. The result may be negative. If $arg is the
  557.             empty sequence, returns the empty sequence.</summary>
  558.     </function>
  559.     <function name="multiply-dayTimeDuration">
  560.         <signature>op:multiply-dayTimeDuration( $arg1 as xdt:dayTimeDuration, $arg2 as xs:double) as
  561.             xdt:dayTimeDuration </signature>
  562.         <summary>Summary: Returns the result of multiplying the value of $arg1 by $arg2.</summary>
  563.     </function>
  564.     <function name="multiply-yearMonthDuration">
  565.         <signature>op:multiply-yearMonthDuration( $arg1 as xdt:yearMonthDuration, $arg2 as
  566.             xs:double) as xdt:yearMonthDuration </signature>
  567.         <summary>Summary: Returns the result of multiplying the value of $arg1 by $arg2. The result
  568.             is rounded to the nearest month. For a value v, 0 <= v < 0.5 rounds to 0;
  569.             0.5 <= v < 1.0 rounds to 1.</summary>
  570.     </function>
  571.     <function name="name">
  572.         <signature>fn:name() as xs:string</signature>
  573.         <signature>fn:name($arg as node()?) as xs:string</signature>
  574.         <summary>Summary: Returns the name of a node, as an xs:string that is either the zero-length
  575.             string, or has the lexical form of an xs:QName.</summary>
  576.     </function>
  577.     <function name="namespace-uri">
  578.         <signature>fn:namespace-uri() as xs:anyURI</signature>
  579.         <signature>fn:namespace-uri($arg as node()?) as xs:anyURI</signature>
  580.         <summary>Summary: Returns the namespace URI of the QName of $arg as a xs:string.</summary>
  581.     </function>
  582.     <function name="namespace-uri-for-prefix">
  583.         <signature>fn:namespace-uri-for-prefix( $prefix as xs:string, $element as element()) as
  584.             xs:anyURI? </signature>
  585.         <summary>Summary: Returns the namespace URI of one of the in-scope namespaces for $element,
  586.             identified by its namespace prefix.</summary>
  587.     </function>
  588.     <function name="namespace-uri-from-QName">
  589.         <signature>fn:namespace-uri-from-QName($arg as xs:QName?) as xs:anyURI?</signature>
  590.         <summary>Summary: Returns the namespace URI for $arg as an xs:string. If $arg is the empty
  591.             sequence, the empty sequence is returned. If $arg is in no namespace, the zero-length
  592.             string is returned.</summary>
  593.     </function>
  594.     <function name="nilled">
  595.         <signature> fn:nilled($arg as node()) as xs:boolean? </signature>
  596.         <summary> Summary: Returns an xs:boolean indicating whether the argument node is
  597.             "nilled". If the argument is not an element node, returns the empty
  598.             sequence. </summary>
  599.     </function>
  600.     <function name="node-after">
  601.         <signature>op:node-after($parameter1 as node(), $parameter2 as node()) as xs:boolean</signature>
  602.         <summary>Summary: If the node identified by the value of $parameter1 occurs in document
  603.             order after the node identified by the value of $parameter2, this function returns true;
  604.             otherwise, it returns false.</summary>
  605.     </function>
  606.     <function name="node-before">
  607.         <signature>op:node-before($parameter1 as node(), $parameter2 as node()) as xs:boolean</signature>
  608.         <summary>Summary: If the node identified by the value of $parameter1 occurs in document
  609.             order before the node identified by the value of $parameter2, this function returns
  610.             true; otherwise, it returns false.</summary>
  611.     </function>
  612.     <function name="node-name">
  613.         <signature> fn:node-name($arg as node()?) as xs:QName? </signature>
  614.         <summary> Summary: Returns an expanded-QName for node kinds that can have names. For other
  615.             kinds of nodes it returns the empty sequence. If $arg is the empty sequence, the empty
  616.             sequence is returned. </summary>
  617.     </function>
  618.     <function name="normalize-space">
  619.         <signature>fn:normalize-space() as xs:string</signature>
  620.         <signature>fn:normalize-space($arg as xs:string?) as xs:string</signature>
  621.         <summary>Summary: Returns the value of $arg with whitespace normalized by stripping leading
  622.             and trailing whitespace and replacing sequences of one or more than one whitespace
  623.             character with a single space, #x20.</summary>
  624.     </function>
  625.     <function name="normalize-unicode">
  626.         <signature>fn:normalize-unicode($arg as xs:string?) as xs:string</signature>
  627.         <signature>fn:normalize-unicode( $arg as xs:string?, $normalizationForm as xs:string) as
  628.             xs:string </signature>
  629.         <summary>Summary: Returns the value of $arg normalized according to the normalization
  630.             criteria for a normalization form identified by the value of $normalizationForm. The
  631.             effective value of the $normalizationForm is computed by removing leading and trailing
  632.             blanks, if present, and converting to upper case.</summary>
  633.     </function>
  634.     <function name="not">
  635.         <signature>fn:not($arg as item()*) as xs:boolean</signature>
  636.         <summary>Summary: $arg is first reduced to an effective boolean value by applying the
  637.             fn:boolean() function. Returns true if the effective boolean value is false, and false
  638.             if the effective boolean value is true.</summary>
  639.     </function>
  640.     <function name="NOTATION-equal">
  641.         <signature>op:NOTATION-equal($arg1 as xs:NOTATION, $arg2 as xs:NOTATION) as xs:boolean</signature>
  642.         <summary>Summary: Returns true if $arg1 and $arg2 compare equal on a codepoint-by-codepoint
  643.             basis. Else returns false. This function backs up the "eq" and
  644.             "ne" operators on xs:NOTATION values.</summary>
  645.     </function>
  646.     <function name="number">
  647.         <signature>fn:number() as xs:double</signature>
  648.         <signature>fn:number($arg as xdt:anyAtomicType?) as xs:double</signature>
  649.         <summary>Summary: Returns the value indicated by $arg or, if $arg is not specified, the
  650.             context item after atomization, converted to an xs:double. If $arg or the context item
  651.             cannot be converted to an xs:double, the xs:double value NaN is returned. If the context
  652.             item is undefined an error is raised: [undefined context item].</summary>
  653.     </function>
  654.     <function name="numeric-add">
  655.         <signature>op:numeric-add($arg1 as numeric, $arg2 as numeric) as numeric</signature>
  656.         <summary>Summary: Backs up the "+" operator and returns the arithmetic sum
  657.             of its operands: ($arg1 + $arg2).</summary>
  658.     </function>
  659.     <function name="numeric-divide">
  660.         <signature>op:numeric-divide($arg1 as numeric, $arg2 as numeric) as numeric</signature>
  661.         <summary>Summary: Backs up the "div" operator and returns the arithmetic
  662.             quotient of its operands: ($arg1 div $arg2). As a special case, if the types of both
  663.             $arg1 and $arg2 are xs:integer, then the return type is xs:decimal.</summary>
  664.     </function>
  665.     <function name="numeric-equal">
  666.         <signature>op:numeric-equal($arg1 as numeric, $arg2 as numeric) as xs:boolean</signature>
  667.         <summary>Summary: Returns true if and only if the value of $arg1 is equal to the value of
  668.             $arg2. For xs:float and xs:double values, positive zero and negative zero compare equal.
  669.             NaN does not equal itself.</summary>
  670.     </function>
  671.     <function name="numeric-greater-than">
  672.         <signature>op:numeric-greater-than($arg1 as numeric, $arg2 as numeric) as xs:boolean</signature>
  673.         <summary>Summary: Returns true if and only if $arg1 is greater than $arg2. For xs:float and
  674.             xs:double values, positive infinity is greater than all other non-NaN values; negative
  675.             infinity is less than all other non-NaN values. If $arg1 or $arg2 is NaN, the function
  676.             returns false.</summary>
  677.     </function>
  678.     <function name="numeric-integer-divide">
  679.         <signature>op:numeric-integer-divide( $arg1 as xs:numeric, $arg2 as xs:numeric) as
  680.             xs:integer </signature>
  681.         <summary>Summary: This function backs up the "idiv" operator and performs
  682.             an integer division: that is, it divides the first argument by the second, and returns
  683.             the integer obtained by truncating the fractional part of the result. The division is
  684.             performed so that the sign of the fractional part is the same as the sign of the
  685.             dividend. If the dividend, $arg1, is not evenly divided by the divisor, $arg2, then the
  686.             quotient is the xs:integer value obtained, ignoring (truncating) any remainder that
  687.             results from the division (that is, no rounding is performed). Thus, the semantics
  688.             "$a idiv $b" are equivalent to "($a div $b) cast as
  689.             xs:integer" except for error situations. If the divisor is zero, then an error
  690.             is raised [division by zero].</summary>
  691.     </function>
  692.     <function name="numeric-less-than">
  693.         <signature>op:numeric-less-than($arg1 as numeric, $arg2 as numeric) as xs:boolean</signature>
  694.         <summary>Summary: Returns true if and only if $arg1 is less than $arg2. For xs:float and
  695.             xs:double values, positive infinity is greater than all other non-NaN values; negative
  696.             infinity is less than all other non-NaN values. If $arg1 or $arg2 is NaN, the function
  697.             returns false.</summary>
  698.     </function>
  699.     <function name="numeric-mod">
  700.         <signature>op:numeric-mod($arg1 as numeric, $arg2 as numeric) as numeric</signature>
  701.         <summary>Summary: Backs up the "mod" operator. Informally, this function
  702.             returns the remainder resulting from dividing $arg1, the dividend, by $arg2, the
  703.             divisor. The operation a mod b for operands that are xs:integer or xs:decimal, or types
  704.             derived from them, produces a result such that (a idiv b)*b+(a mod b) is equal to a and
  705.             the magnitude of the result is always less than the magnitude of b. This identity holds
  706.             even in the special case that the dividend is the negative integer of largest possible
  707.             magnitude for its type and the divisor is -1 (the remainder is 0). It follows from this
  708.             rule that the sign of the result is the sign of the dividend. For xs:integer and
  709.             xs:decimal operands, if $arg2 is zero, then an error is raised [division by zero].</summary>
  710.     </function>
  711.     <function name="numeric-multiply">
  712.         <signature>op:numeric-multiply($arg1 as numeric, $arg2 as numeric) as numeric</signature>
  713.         <summary>Summary: Backs up the "*" operator and returns the arithmetic
  714.             product of its operands: ($arg1 * $arg2).</summary>
  715.     </function>
  716.     <function name="numeric-subtract">
  717.         <signature>op:numeric-subtract($arg1 as numeric, $arg2 as numeric) as numeric</signature>
  718.         <summary>Summary: Backs up the "-" operator and returns the arithmetic
  719.             difference of its operands: ($arg1 - $arg2).</summary>
  720.     </function>
  721.     <function name="numeric-unary-minus">
  722.         <signature>op:numeric-unary-minus($arg as numeric) as numeric</signature>
  723.         <summary>Summary: Backs up the unary "-" operator and returns its operand
  724.             with the sign reversed: (- $arg). If $arg is positive, its negative is returned; if it
  725.             is negative, its positive is returned.</summary>
  726.     </function>
  727.     <function name="numeric-unary-plus">
  728.         <signature>op:numeric-unary-plus($arg as numeric) as numeric</signature>
  729.         <summary>Summary: Backs up the unary "+" operator and returns its operand
  730.             with the sign unchanged: (+ $arg). Semantically, this operation performs no operation.</summary>
  731.     </function>
  732.     <function name="one-or-more">
  733.         <signature>fn:one-or-more($arg as item()*) as item()+</signature>
  734.         <summary>Summary: Returns $arg if it contains one or more items. Otherwise, raises an error
  735.             [fn:one-or-more called with a sequence containing no items]. The type of the result
  736.             depends on the type of $arg.</summary>
  737.     </function>
  738.     <function name="position">
  739.         <signature>fn:position() as xs:integer</signature>
  740.         <summary>Summary: Returns an xs:integer indicating the position of the context item within
  741.             the sequence of items currently being processed. If the context item is undefined, an
  742.             error is raised [undefined context item].</summary>
  743.     </function>
  744.     <function name="QName-equal">
  745.         <signature>op:QName-equal($arg1 as xs:QName, $arg2 as xs:QName) as xs:boolean</signature>
  746.         <summary>Summary: Returns true if the namespace URIs of $arg1 and $arg2 are equal and the
  747.             local names of $arg1 and $arg2 are identical on a codepoint-by-codepoint basis.
  748.             Otherwise, returns false.</summary>
  749.     </function>
  750.     <function name="remove">
  751.         <signature>fn:remove($target as item()*, $position as xs:integer) as item()*</signature>
  752.         <summary>Summary: Returns a new sequence constructed from the value of $target with the item
  753.             at the position specified by the value of $position removed.</summary>
  754.     </function>
  755.     <function name="replace">
  756.         <signature>fn:replace( $input as xs:string?, $pattern as xs:string, $replacement as
  757.             xs:string) as xs:string </signature>
  758.         <signature>fn:replace( $input as xs:string?, $pattern as xs:string, $replacement as
  759.             xs:string, $flags as xs:string) as xs:string </signature>
  760.         <summary>Summary: The function returns the xs:string that is obtained by replacing each
  761.             non-overlapping substring of $input that matches the given $pattern with an occurrence
  762.             of the $replacement string.</summary>
  763.     </function>
  764.     <function name="resolve-QName">
  765.         <signature>fn:resolve-QName($qname as xs:string?, $element as element()) as xs:QName?</signature>
  766.         <summary>Summary: Returns an xs:QName value (that is, an expanded QName) by taking an
  767.             xs:string that has the lexical form of an xs:QName (a string in the form
  768.             "prefix:local-name" or "local-name") and resolving
  769.             it using the in-scope namespaces for a given element. If $qname does not have the
  770.             correct lexical form for xs:QName an error is raised [invalid lexical value]. If $qname
  771.             is the empty sequence, returns the empty sequence.</summary>
  772.     </function>
  773.     <function name="resolve-uri">
  774.         <signature>fn:resolve-uri($relative as xs:string?) as xs:anyURI?</signature>
  775.         <signature>fn:resolve-uri($relative as xs:string?, $base as xs:string) as xs:anyURI?</signature>
  776.         <summary>Summary: If $relative is a relative URI reference, the first form of this function
  777.             resolves it against the value of the base-uri property from the static context. If
  778.             $relative is an absolute URI reference , it is returned unchanged. If the base-uri
  779.             property is not initialized in the static context an error is raised [base uri not
  780.             defined in the static context]. The second form of this function expects $base to be an
  781.             absolute URI and $relative to be an absolute or a relative URI reference as defined in
  782.             [RFC 2396]. If $relative is a relative URI reference, it is resolved against the
  783.             base-uri, $base, and the resulting absolute URI reference is returned. If $relative is
  784.             an absolute URI reference, it is returned unchanged. If $base is not an absolute URI, an
  785.             error is raised [base uri argument to fn:resolve-uri is not an absolute uri]. If
  786.             $relative or $base is not a valid xs:anyURI an error is raised [invalid argument to
  787.             fn:resolve-uri()]. If $relative is the empty sequence, the empty sequence is returned.</summary>
  788.     </function>
  789.     <function name="reverse">
  790.         <signature>fn:reverse($arg as item()*) as item()*</signature>
  791.         <summary>Summary: Reverses the order of items in a sequence. If $arg is the empty sequence,
  792.             the empty sequence is returned.</summary>
  793.     </function>
  794.     <function name="root">
  795.         <signature>fn:root() as node()</signature>
  796.         <signature>fn:root($arg as node()?) as node()?</signature>
  797.         <summary>Summary: Returns the root of the tree to which $arg belongs. This will usually, but
  798.             not necessarily, be a document node. If $arg is the empty sequence, the empty sequence
  799.             is returned. If $arg is a document node, $arg is returned.</summary>
  800.     </function>
  801.     <function name="round">
  802.         <signature>fn:round($arg as numeric?) as numeric?</signature>
  803.         <summary>Summary: Returns the number with no fractional part that is closest to the
  804.             argument. If there are two such numbers, then the one that is closest to positive
  805.             infinity is returned. More formally, fn:round(x) produces the same result as
  806.             fn:floor(x+0.5). If type of $arg is one of the four numeric types xs:float, xs:double,
  807.             xs:decimal or xs:integer the type of the return is the same as the type of $arg. If the
  808.             type of $arg is a type derived from one of the numeric types, the type of the return is
  809.             the base numeric type. For xs:float and xs:double arguments, if the argument is positive
  810.             zero (+0), then positive zero (+0) is returned. If the argument is negative zero (-0),
  811.             then negative zero (-0) is returned. If the argument is less than zero (0), but greater
  812.             than or equal to -0.5, then negative zero (-0) is returned.</summary>
  813.     </function>
  814.     <function name="fn:round-half-to-even">
  815.         <signature>fn:round-half-to-even($arg as numeric?) as numeric?</signature>
  816.         <signature>fn:round-half-to-even($arg as numeric?, $precision as xs:integer) as numeric?</signature>
  817.         <summary>Summary: The value returned is the nearest (that is, numerically closest) numeric
  818.             to $arg that is a multiple of ten to the power of minus $precision. If two such values
  819.             are equally near (e.g. if the fractional part in $arg is exactly .500...), returns the
  820.             one whose least significant digit is even. If type of $arg is one of the four numeric
  821.             types xs:float, xs:double, xs:decimal or xs:integer the type of the return is the same
  822.             as the type of $arg. If the type of $arg is a type derived from one of the numeric
  823.             types, the type of the return is the base numeric type. The first signature of this
  824.             function produces the same result as the second signature with $precision=0. For
  825.             arguments of type xs:float and xs:double, if the argument is positive zero (+0), then
  826.             positive zero (+0) is returned. If the argument is negative zero (-0), then negative
  827.             zero (-0) is returned. If the argument is less than zero (0), but greater than or equal
  828.             to -0.5, then negative zero (-0) is returned. If $arg is of type xs:float or xs:double,
  829.             rounding occurs on the value of the mantissa computed with exponent = 0.</summary>
  830.     </function>
  831.     <function name="seconds-from-dateTime">
  832.         <signature>fn:seconds-from-dateTime($arg as xs:dateTime?) as xs:decimal?</signature>
  833.         <summary>Summary: Returns an xs:decimal value between 0 and 60.999..., both inclusive
  834.             representing the seconds and fractional seconds in the localized value of $arg. Note
  835.             that the value can be greater than 60 seconds to accommodate occasional leap seconds
  836.             used to keep human time synchronized with the rotation of the planet. If $arg is the
  837.             empty sequence, returns the empty sequence.</summary>
  838.     </function>
  839.     <function name="seconds-from-duration">
  840.         <signature>fn:seconds-from-duration($arg as xdt:dayTimeDuration?) as xs:decimal?</signature>
  841.         <summary>Summary: Returns an xs:decimal representing the seconds component in the canonical
  842.             lexical representation of the value of $arg. The result may be negative. If $arg is the
  843.             empty sequence, returns the empty sequence.</summary>
  844.     </function>
  845.     <function name="seconds-from-time">
  846.         <signature>fn:seconds-from-time($arg as xs:time?) as xs:decimal?</signature>
  847.         <summary>Summary: Returns an xs:decimal value between 0 and 60.999..., both inclusive,
  848.             representing the seconds and fractional seconds in the localized value of $arg. Note
  849.             that the value can be greater than 60 seconds to accommodate occasional leap seconds
  850.             used to keep human time synchronized with the rotation of the planet. If $arg is the
  851.             empty sequence, returns the empty sequence.</summary>
  852.     </function>
  853.     <function name="starts-with">
  854.         <signature>fn:starts-with($arg1 as xs:string?, $arg2 as xs:string?) as xs:boolean</signature>
  855.         <signature>fn:starts-with( $arg1 as xs:string?, $arg2 as xs:string?, $collation as
  856.             xs:string) as xs:boolean </signature>
  857.         <summary>Summary: Returns an xs:boolean indicating whether or not the value of $arg1 starts
  858.             with a sequence of collation units that provides a minimal match to the collation units
  859.             of $arg2 according to the collation that is used.If the value of $arg1 or $arg2 is the
  860.             empty sequence, it is interpreted as the zero-length string. If the value of $arg2 is
  861.             the zero-length string, then the function returns true. If the value of $arg1 is the
  862.             zero-length string and the value of $arg2 is not the zero-length string, then the
  863.             function returns false.</summary>
  864.     </function>
  865.     <function name="string">
  866.         <signature>fn:string() as xs:string</signature>
  867.         <signature>fn:string($arg as item()?) as xs:string</signature>
  868.         <summary>Summary: Returns the value of $arg represented as a xs:string. If no argument is
  869.             supplied, this function returns the string value of the context item (.).</summary>
  870.     </function>
  871.     <function name="string-join">
  872.         <signature>fn:string-join($arg1 as xs:string*, $arg2 as xs:string) as xs:string</signature>
  873.         <summary>Summary: Returns a xs:string created by concatenating the members of the $arg1
  874.             sequence using $arg2 as a separator. If the value of $arg2 is the zero-length string,
  875.             then the members of $arg1 are concatenated without a separator. If the value of $arg1 is
  876.             the empty sequence, the zero-length string is returned.</summary>
  877.     </function>
  878.     <function name="string-length">
  879.         <signature>fn:string-length() as xs:integer</signature>
  880.         <signature>fn:string-length($arg as xs:string?) as xs:integer</signature>
  881.         <summary>Summary: Returns an xs:integer equal to the length in characters of the value of
  882.             $arg. If the value of $arg is the empty sequence, the xs:integer 0 is returned. If no
  883.             argument is supplied, $arg defaults to the string value (calculated using fn:string())
  884.             of the context item (.). If no argument is supplied and the context item is undefined an
  885.             error is raised: [undefined context item].</summary>
  886.     </function>
  887.     <function name="string-to-codepoints">
  888.         <signature>fn:string-to-codepoints($arg as xs:string?) as xs:integer*</signature>
  889.         <summary>Returns the sequence of code points that constitute an xs:string. If $arg is a
  890.             zero-length string or the empty sequence, the empty sequence is returned.</summary>
  891.     </function>
  892.     <function name="subsequence">
  893.         <signature>fn:subsequence($sourceSeq as item()*, $startingLoc as xs:double) as item()*</signature>
  894.         <signature>fn:subsequence( $sourceSeq as item()*, $startingLoc as xs:double, $length as
  895.             xs:double) as item()* </signature>
  896.         <summary>Summary: Returns the contiguous sequence of items in the value of $sourceSeq
  897.             beginning at the position indicated by the value of $startingLoc and continuing for the
  898.             number of items indicated by the value of $length. If $sourceSeq is the empty sequence,
  899.             the empty sequence is returned. If $startingLoc is zero or negative, the subsequence
  900.             includes items from the beginning of the $sourceSeq. If $length is not specified, the
  901.             subsequence includes items to the end of $sourceSeq. If $length is greater than the
  902.             number of items in the value of $sourceSeq following $startingLoc, the subsequence
  903.             includes items to the end of $sourceSeq. The first item of a sequence is located at
  904.             position 1, not position 0.</summary>
  905.     </function>
  906.     <function name="substring">
  907.         <signature>fn:substring( $sourceString as xs:string?, $startingLoc as xs:double) as
  908.             xs:string </signature>
  909.         <signature>fn:substring( $sourceString as xs:string?, $startingLoc as xs:double, $length as
  910.             xs:double) as xs:string </signature>
  911.         <summary>Summary: Returns the portion of the value of $sourceString beginning at the
  912.             position indicated by the value of $startingLoc and continuing for the number of
  913.             characters indicated by the value of $length. The characters returned do not extend
  914.             beyond $sourceString. If $startingLoc is zero or negative, only those characters in
  915.             positions greater than zero are returned. If the value of $sourceString is the empty
  916.             sequence, the zero-length string is returned.</summary>
  917.     </function>
  918.     <function name="substring-after">
  919.         <signature>fn:substring-after($arg1 as xs:string?, $arg2 as xs:string?) as xs:string</signature>
  920.         <signature>fn:substring-after( $arg1 as xs:string?, $arg2 as xs:string?, $collation as
  921.             xs:string) as xs:string </signature>
  922.         <summary>Summary: Returns the substring of the value of $arg1 that follows in the value of
  923.             $arg1 the first occurrence of a sequence of collation units that provides a minimal
  924.             match to the collation units of $arg2 according to the collation that is used.If the
  925.             value of $arg1 or $arg2 is the empty sequence, it is interpreted as the zero-length
  926.             string. If the value of $arg2 is the zero-length string, then the function returns the
  927.             value of $arg1. If the value of $arg1 does not contain a string that is equal to the
  928.             value of $arg2, then the function returns the zero-length string.</summary>
  929.     </function>
  930.     <function name="substring-before">
  931.         <signature>fn:substring-before($arg1 as xs:string?, $arg2 as xs:string?) as xs:string</signature>
  932.         <signature>fn:substring-before( $arg1 as xs:string?, $arg2 as xs:string?, $collation as
  933.             xs:string) as xs:string </signature>
  934.         <summary>Summary: Returns the substring of the value of $arg1 that precedes in the value of
  935.             $arg1 the first occurrence of a sequence of collation units that provides a minimal
  936.             match to the collation units of $arg2 according to the collation that is used.If the
  937.             value of $arg1 or $arg2 is the empty sequence, it is interpreted as the zero-length
  938.             string. If the value of $arg2 is the zero-length string, then the function returns the
  939.             zero-length string. If the value of $arg1 does not contain a string that is equal to the
  940.             value of $arg2, then the function returns the zero-length string.</summary>
  941.     </function>
  942.     <function name="subtract-dates-yielding-dayTimeDuration">
  943.         <signature>fn:subtract-dates-yielding-dayTimeDuration( $arg1 as xs:date?, $arg2 as xs:date?)
  944.             as xdt:dayTimeDuration? </signature>
  945.         <summary>Summary: Returns the xdt:dayTimeDuration that corresponds to the difference between
  946.             the normalized value of $arg1 and the normalized value of $arg2. The semantics of this
  947.             function are identical to op:subtract-dateTimes-yielding-dayTimeDuration( $arg1 cast as
  948.             xs:dateTime, $arg2 cast as xs:dateTime). If either argument is the empty sequence, the
  949.             empty sequence is returned. If the normalized value of $arg1 precedes in time the
  950.             normalized value of $arg2, then the returned value is a negative duration.</summary>
  951.     </function>
  952.     <function name="subtract-dates-yielding-yearMonthDuration">
  953.         <signature>fn:subtract-dates-yielding-yearMonthDuration( $arg1 as xs:date?, $arg2 as
  954.             xs:date?) as xdt:yearMonthDuration? </signature>
  955.         <summary>Summary: Returns the xdt:yearMonthDuration that corresponds to the difference
  956.             between the normalized value of $arg1 and the normalized value of $arg2. The semantics
  957.             of this function are identical to op:subtract-dateTimes-yielding-yearMonthDuration(
  958.             $arg1 cast as xs:dateTime, $arg2 cast as xs:dateTime). If either argument is the empty
  959.             sequence, the empty sequence is returned. If the normalized value of $arg1 precedes in
  960.             time the normalized value of $arg2, then the returned value is a negative duration.</summary>
  961.     </function>
  962.     <function name="subtract-dateTimes-yielding-dayTimeDuration">
  963.         <signature>fn:subtract-dateTimes-yielding-dayTimeDuration( $arg1 as xs:dateTime?, $arg2 as
  964.             xs:dateTime?) as xdt:dayTimeDuration? </signature>
  965.         <summary>Summary: Returns the xdt:dayTimeDuration that corresponds to the difference between
  966.             the normalized value of $arg1 and the normalized value of $arg2. If either argument is
  967.             the empty sequence, the empty sequence is returned. If the normalized value of $arg1
  968.             precedes in time the normalized value of $arg2, then the returned value is a negative duration.</summary>
  969.     </function>
  970.     <function name="subtract-dateTimes-yielding-yearMonthDuration">
  971.         <signature>fn:subtract-dateTimes-yielding-yearMonthDuration( $arg1 as xs:dateTime?, $arg2 as
  972.             xs:dateTime?) as xdt:yearMonthDuration? </signature>
  973.         <summary>Summary: Returns the xdt:yearMonthDuration that corresponds to the difference
  974.             between the normalized value of $arg1 and the normalized value of $arg2. In general, the
  975.             difference between two xs:dateTime values will be a duration that contains years and
  976.             months as well as days, hours, etc. This function returns the result rounded to contain
  977.             only years and months. The calculation is as follows: first the duration is calculated
  978.             as the value of an xdt:dayTimeDuration in seconds. Then, starting from $arg2 and
  979.             counting towards $arg1, the maximum number of actual whole months in the duration is
  980.             calculated rounding towards zero. If there are a remaining number of days, they are
  981.             discarded. If either argument is the empty sequence, the empty sequence is returned. If
  982.             the normalized value of $arg1 precedes in time the normalized value of $arg2, the
  983.             returned value is a negative duration.</summary>
  984.     </function>
  985.     <function name="subtract-dayTimeDuration-from-date">
  986.         <signature>subtract-dayTimeDuration-from-date( $arg1 as xs:date, $arg2 as
  987.             xdt:dayTimeDuration) as xs:date </signature>
  988.         <summary>Summary: Returns the xs:date computed by negating $arg2 and adding the result to
  989.             the normalized value of $arg1. If $arg2 is negative, then the xs:date returned precedes
  990.             $arg1. The result has the same timezone as arg1. If arg1 has no timezone, the result has
  991.             no timezone.</summary>
  992.     </function>
  993.     <function name="subtract-dayTimeDuration-from-dateTime">
  994.         <signature>op:subtract-dayTimeDuration-from-dateTime( $arg1 as xs:dateTime, $arg2 as
  995.             xdt:dayTimeDuration) as xs:dateTime </signature>
  996.         <summary>Summary: Returns the xs:dateTime computed by negating $arg2 and adding the result
  997.             to the normalized value of $arg1. The result has the same timezone as arg1. If arg1 has
  998.             no timezone, the result has no timezone.</summary>
  999.     </function>
  1000.     <function name="subtract-dayTimeDuration-from-time">
  1001.         <signature>op:subtract-dayTimeDuration-from-time( $arg1 as xs:time, $arg2 as
  1002.             xdt:dayTimeDuration) as xs:time </signature>
  1003.         <summary>Summary: The result is calculated by first setting the day component in the
  1004.             canonical lexical representation of $arg2 to zero (0) and calculating the value of the
  1005.             resulting xdt:dayTimeDuration. Alternatively, the value of $arg2 modulus 86,400 is used.
  1006.             This value is subtracted from the normalized value of $arg1 and the result is returned.
  1007.             Note that the xs:time returned may occur in a preceding or following day and may be
  1008.             greater than $arg1. The result has the same timezone as arg1. If arg1 has no timezone,
  1009.             the result has no timezone.</summary>
  1010.     </function>
  1011.     <function name="subtract-dayTimeDurations">
  1012.         <signature>op:subtract-dayTimeDurations( $arg1 as xdt:dayTimeDuration, $arg2 as
  1013.             xdt:dayTimeDuration) as xdt:dayTimeDuration </signature>
  1014.         <summary>Summary: Returns the result of subtracting the value of $arg2 from the value of
  1015.             $arg2. Backs up the "-" operator on xdt:dayTimeDuration values.</summary>
  1016.     </function>
  1017.     <function name="subtract-times">
  1018.         <signature>fn:subtract-times($arg1 as xs:time, $arg2 as xs:time) as xdt:dayTimeDuration</signature>
  1019.         <summary>Summary: Returns the xdt:dayTimeDuration that corresponds to the difference between
  1020.             the normalized value of $arg1 and the normalized value of $arg2. If the normalized value
  1021.             of $arg1 precedes in time the normalized value of $arg2, then the returned value is a
  1022.             negative duration.</summary>
  1023.     </function>
  1024.     <function name="subtract-yearMonthDuration-from-date">
  1025.         <signature>op:subtract-yearMonthDuration-from-date( $arg1 as xs:date, $arg2 as
  1026.             xdt:yearMonthDuration) as xs:date </signature>
  1027.         <summary>Summary: Returns the xs:date computed by negating $arg2 and adding the result to
  1028.             the normalized value of $arg1. If $arg2 is negative, then the xs:date returned precedes
  1029.             $arg1. The result has the same timezone as arg1. If arg1 has no timezone, the result has
  1030.             no timezone.</summary>
  1031.     </function>
  1032.     <function name="subtract-yearMonthDuration-from-dateTime">
  1033.         <signature>op:subtract-yearMonthDuration-from-dateTime( $arg1 as xs:dateTime, $arg2 as
  1034.             xdt:yearMonthDuration) as xs:dateTime </signature>
  1035.         <summary>Summary: Returns the xs:dateTime computed by negating $arg2 and adding the result
  1036.             to the normalized value of $arg1. If $arg2 is negative, then the xs:dateTime returned
  1037.             follows $arg1. The result has the same timezone as arg1. If arg1 has no timezone, the
  1038.             result has no timezone.</summary>
  1039.     </function>
  1040.     <function name="subtract-yearMonthDurations">
  1041.         <signature>op:subtract-yearMonthDurations( $arg1 as xdt:yearMonthDuration, $arg2 as
  1042.             xdt:yearMonthDuration) as xdt:yearMonthDuration </signature>
  1043.         <summary>Summary: Returns the result of subtracting the value of $arg2 from the value of
  1044.             $arg2. Backs up the "-" operator on xdt:yearMonthDuration values.</summary>
  1045.     </function>
  1046.     <function name="sum">
  1047.         <signature>fn:sum($arg as xdt:anyAtomicType*) as xdt:anyAtomicType</signature>
  1048.         <signature>fn:sum( $arg as xdt:anyAtomicType*, $zero as xdt:anyAtomicType?) as
  1049.             xdt:anyAtomicType? </signature>
  1050.         <summary>Summary: Returns a value obtained by adding together the values in $arg. If the
  1051.             single-argument form of the function is used, then the value returned for an empty
  1052.             sequence is the xs:integer value 0. If the two-argument form is used, then the value
  1053.             returned for an empty sequence is the value of the $zero argument. Any values of type
  1054.             xdt:untypedAtomic in $arg are cast to xs:double. The resulting sequence is referred to
  1055.             below as the converted sequence. If the converted sequence is empty, then the
  1056.             single-argument form of the function returns the xs:integer value 0; the two-argument
  1057.             form returns the value of the argument $zero. If the converted sequence contains the
  1058.             value NaN, NaN is returned.</summary>
  1059.     </function>
  1060.     <function name="time-equal">
  1061.         <signature>op:time-equal($arg1 as xs:time, $arg2 as xs:time) as xs:boolean</signature>
  1062.         <summary>Summary: Returns true if and only if the normalized value of $arg1 is equal to the
  1063.             normalized value of $arg2. Returns false otherwise.</summary>
  1064.     </function>
  1065.     <function name="time-greater-than">
  1066.         <signature>op:time-greater-than($arg1 as xs:time, $arg2 as xs:time) as xs:boolean</signature>
  1067.         <summary>Summary: Returns true if and only if the normalized value of $arg1 is greater than
  1068.             the normalized value of $arg2. Returns false otherwise.</summary>
  1069.     </function>
  1070.     <function name="time-less-than">
  1071.         <signature>op:time-less-than($arg1 as xs:time, $arg2 as xs:time) as xs:boolean</signature>
  1072.         <summary>Summary: Returns true if and only if the normalized value of $arg1 is less than the
  1073.             normalized value of $arg2. Returns false otherwise.</summary>
  1074.     </function>
  1075.     <function name="timezone-from-date">
  1076.         <signature>fn:timezone-from-date($arg as xs:date?) as xdt:dayTimeDuration?</signature>
  1077.         <summary>Summary: Returns the timezone component of $arg if any. If $arg has a timezone
  1078.             component, then the result is an xdt:dayTimeDuration that indicates deviation from UTC;
  1079.             its value may range from +14:00 to -14:00 hours, both inclusive. Otherwise, the result
  1080.             is the empty sequence. If $arg is the empty sequence, returns the empty sequence.</summary>
  1081.     </function>
  1082.     <function name="timezone-from-dateTime">
  1083.         <signature>fn:timezone-from-dateTime($arg as xs:dateTime?) as xdt:dayTimeDuration?</signature>
  1084.         <summary>Summary: Returns the timezone component of $arg if any. If $arg has a timezone
  1085.             component, then the result is an xdt:dayTimeDuration that indicates deviation from UTC;
  1086.             its value may range from +14:00 to -14:00 hours, both inclusive. Otherwise, the result
  1087.             is the empty sequence. If $arg is the empty sequence, returns the empty sequence.</summary>
  1088.     </function>
  1089.     <function name="timezone-from-time">
  1090.         <signature>fn:timezone-from-time($arg as xs:time?) as xdt:dayTimeDuration?</signature>
  1091.         <summary>Summary: Returns the timezone component of $arg if any. If $arg has a timezone
  1092.             component, then the result is an xdt:dayTimeDuration that indicates deviation from UTC;
  1093.             its value may range from +14:00 to -14:00 hours, both inclusive. Otherwise, the result
  1094.             is the empty sequence. If $arg is the empty sequence, returns the empty sequence.</summary>
  1095.     </function>
  1096.     <function name="to">
  1097.         <signature>op:to($firstval as xs:integer, $lastval as xs:integer) as xs:integer*</signature>
  1098.         <summary>Summary: Returns the sequence containing every xs:integer whose value is between
  1099.             the value of $firstval (inclusive) and the value of $lastval (inclusive), in monotonic
  1100.             order. If the value of the first operand is greater than the value of the second, the
  1101.             empty sequence is returned. If the values of the two operands are equal, a sequence
  1102.             containing a single xs:integer equal to the value is returned.</summary>
  1103.     </function>
  1104.     <function name="tokenize">
  1105.         <signature>fn:tokenize($input as xs:string?, $pattern as xs:string) as xs:string+</signature>
  1106.         <signature>fn:tokenize( $input as xs:string?, $pattern as xs:string, $flags as xs:string) as
  1107.             xs:string+ </signature>
  1108.         <summary>Summary: This function breaks the $input string into a sequence of strings,
  1109.             treating any substring that matches $pattern as a separator. The separators themselves
  1110.             are not returned.</summary>
  1111.     </function>
  1112.     <function name="trace">
  1113.         <signature>fn:trace($value as item()*, $label as xs:string) as item()*</signature>
  1114.         <summary>This function is intended to be used in debugging queries by providing a trace of
  1115.             their execution.</summary>
  1116.     </function>
  1117.     <function name="translate">
  1118.         <signature>fn:translate( $arg as xs:string?, $mapString as xs:string, $transString as
  1119.             xs:string) as xs:string </signature>
  1120.         <summary>Summary: Returns the value of $arg modified so that every character in the value of
  1121.             $arg that occurs at some position N in the value of $mapString has been replaced by the
  1122.             character that occurs at position N in the value of $transString. If the value of $arg
  1123.             is the empty sequence, the zero-length string is returned</summary>
  1124.     </function>
  1125.     <function name="true">
  1126.         <signature>fn:true() as xs:boolean</signature>
  1127.         <summary>Summary: Returns the xs:boolean value true. Equivalent to xs:boolean("1").</summary>
  1128.     </function>
  1129.     <function name="union">
  1130.         <signature>op:union($parameter1 as node()*, $parameter2 as node()*) as node()*</signature>
  1131.         <summary>Summary: Constructs a sequence containing every node that occurs in the values of
  1132.             either $parameter1 or $parameter2, eliminating duplicate nodes. Nodes are returned in
  1133.             document order. Two nodes are equal if they are op:is-same-node().</summary>
  1134.     </function>
  1135.     <function name="unordered">
  1136.         <signature>fn:unordered($sourceSeq as item()*) as item()*</signature>
  1137.         <summary>Summary: This function takes a sequence, or more typically, an expression, that
  1138.             evaluates to a sequence, as input and returns an arbitrary ¬∑implementation dependent¬∑
  1139.             permutation of the input sequence. Query optimizers may be able to do a better job if
  1140.             the order of the output sequence is not specified. For example, if you want to retrieve
  1141.             all the prices from a purchase order, and if there is an index on prices, it may be
  1142.             possible to compute an unordered result more efficiently.</summary>
  1143.     </function>
  1144.     <function name="upper-case">
  1145.         <signature>fn:upper-case($arg as xs:string?) as xs:string</signature>
  1146.         <summary>Summary: Returns the value of $srcval after translating every character to its
  1147.             upper-case correspondent. Every character that does not have an upper-case correspondent
  1148.             is included in the returned value in its original form. If the value of $arg is the
  1149.             empty sequence, the zero-length string is returned.</summary>
  1150.     </function>
  1151.     <function name="year-from-date">
  1152.         <signature>fn:year-from-date($arg as xs:date?) as xs:integer?</signature>
  1153.         <summary>Summary: Returns an xs:integer representing the year in the localized value of
  1154.             $arg. The value may be negative. If $arg is the empty sequence, returns the empty sequence.</summary>
  1155.     </function>
  1156.     <function name="year-from-dateTime">
  1157.         <signature>fn:year-from-dateTime($arg as xs:dateTime?) as xs:integer?</signature>
  1158.         <summary>Summary: Returns an xs:integer representing the year component in the localized
  1159.             value of $arg. The result may be negative. If $arg is the empty sequence, returns the
  1160.             empty sequence.</summary>
  1161.     </function>
  1162.     <function name="yearMonthDuration-equal">
  1163.         <signature>op:yearMonthDuration-equal( $arg1 as xdt:yearMonthDuration, $arg2 as
  1164.             xdt:yearMonthDuration) as xs:boolean </signature>
  1165.         <summary>Summary: Returns true if and only if $arg1 is equal to $arg2. Returns false otherwise.</summary>
  1166.     </function>
  1167.     <function name="yearMonthDuration-greater-than">
  1168.         <signature>op:yearMonthDuration-greater-than( $arg1 as xdt:yearMonthDuration, $arg2 as
  1169.             xdt:yearMonthDuration) as xs:boolean </signature>
  1170.         <summary>Summary: Returns true if and only if $arg1 is greater than $arg2. Returns false otherwise.</summary>
  1171.     </function>
  1172.     <function name="yearMonthDuration-less-than">
  1173.         <signature>op:yearMonthDuration-less-than( $arg1 as xdt:yearMonthDuration, $arg2 as
  1174.             xdt:yearMonthDuration) as xs:boolean </signature>
  1175.         <summary>Summary: Returns true if and only if $arg1 is less than $arg2. Returns false otherwise.</summary>
  1176.     </function>
  1177.     <function name="years-from-duration">
  1178.         <signature>fn:years-from-duration($arg as xdt:yearMonthDuration?) as xs:integer?</signature>
  1179.         <summary>Summary: Returns an xs:integer representing the years component in the canonical
  1180.             lexical representation of the value of $arg. The result may be negative. If $arg is the
  1181.             empty sequence, returns the empty sequence.</summary>
  1182.     </function>
  1183.     <function name="zero-or-one">
  1184.         <signature>fn:zero-or-one($arg as item()*) as item()?</signature>
  1185.         <summary>Summary: Returns $arg if it contains zero or one items. Otherwise, raises an error
  1186.             [fn:zero-or-one called with a sequence containing more than one item]. The type of the
  1187.             result depends on the type of $arg.</summary>
  1188.     </function>
  1189. </xquery_functions>
  1190.