- All Modules
- All Functions
-
www.w3.org
- 2005
- XDM
- store
- introspection
- reflection
- external
-
xqdoc
-
xqdoc
(E)
-
project_xqdoc
- xqdoc2xhtml
-
xqdoc
(E)
- data processing
- programming languages
- excel
- cryptography
- geo
- image
- OAuth
-
expath.org
- http-client
-
error
- ns
- www.functx.com
- debugger
- error
-
utils
- util jvm
- jsoniq.org
- www.zorba-xquery.com
- All Modules
- All Functions
-
www.w3.org
- 2005
- XDM
- store
- introspection
- reflection
- external
-
xqdoc
-
xqdoc
(E)
-
project_xqdoc
- xqdoc2xhtml
-
xqdoc
(E)
- data processing
- expath.org
- www.functx.com
- debugger
- error
- jsoniq.org
- www.zorba-xquery.com
http://www.functx.com/
import module namespace functx = "http://www.functx.com/";
-------------------------------- The FunctX XQuery Function Library -------------------------------- Copyright (C) 2007 Datypic This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA For more information on the FunctX XQuery library, contact contrib@functx.com.
1.0
- the XQuery module can be found here.
For more details please also see:
functx | http://www.functx.com/ |
add-attributes
(
$elements as element(*)*,
$attrNames as xs:QName*,
$attrValues as xs:anyAtomicType*
) as element(*)? Adds attributes to XML elements. |
|
add-months
(
$date as xs:anyAtomicType?,
$months as xs:integer
) as xs:date? Adds months to a date. |
|
add-or-update-attributes
(
$elements as element(*)*,
$attrNames as xs:QName*,
$attrValues as xs:anyAtomicType*
) as element(*)? Adds attributes to XML elements. |
|
all-whitespace
(
$arg as xs:string?
) as xs:boolean Whether a value is all whitespace or a zero-length string. |
|
are-distinct-values
(
$seq as xs:anyAtomicType*
) as xs:boolean Whether all the values in a sequence are distinct. |
|
atomic-type
(
$values as xs:anyAtomicType*
) as xs:string* The built-in type of an atomic value. |
|
avg-empty-is-zero
(
$values as xs:anyAtomicType*,
$allNodes as node()*
) as xs:double The average, counting "empty" values as zero. |
|
between-exclusive
(
$value as xs:anyAtomicType?,
$minValue as xs:anyAtomicType,
$maxValue as xs:anyAtomicType
) as xs:boolean Whether a value is between two provided values. |
|
between-inclusive
(
$value as xs:anyAtomicType?,
$minValue as xs:anyAtomicType,
$maxValue as xs:anyAtomicType
) as xs:boolean Whether a value is between two provided values, or equal to one of them. |
|
camel-case-to-words
(
$arg as xs:string?,
$delim as xs:string
) as xs:string Turns a camelCase string into space-separated words. |
|
capitalize-first
(
$arg as xs:string?
) as xs:string? Capitalizes the first character of a string. |
|
change-element-names-deep
(
$nodes as node()*,
$oldNames as xs:QName*,
$newNames as xs:QName*
) as node()* Changes the names of elements in an XML fragment. |
|
change-element-ns
(
$elements as element(*)*,
$newns as xs:string,
$prefix as xs:string
) as element(*)? Changes the namespace of XML elements. |
|
change-element-ns-deep
(
$nodes as node()*,
$newns as xs:string,
$prefix as xs:string
) as node()* Changes the namespace of XML elements and its descendants. |
|
chars
(
$arg as xs:string?
) as xs:string* Converts a string to a sequence of characters. |
|
contains-any-of
(
$arg as xs:string?,
$searchStrings as xs:string*
) as xs:boolean Whether a string contains any of a sequence of strings. |
|
contains-case-insensitive
(
$arg as xs:string?,
$substring as xs:string
) as xs:boolean? Whether one string contains another, without regard to case. |
|
contains-word
(
$arg as xs:string?,
$word as xs:string
) as xs:boolean Whether one string contains another, as a separate word. |
|
copy-attributes
(
$copyTo as element(*),
$copyFrom as element(*)
) as element(*) Copies attributes from one element to another. |
|
date
(
$year as xs:anyAtomicType,
$month as xs:anyAtomicType,
$day as xs:anyAtomicType
) as xs:date Construct a date from a year, month and day. |
|
dateTime
(
$year as xs:anyAtomicType,
$month as xs:anyAtomicType,
$day as xs:anyAtomicType,
$hour as xs:anyAtomicType,
$minute as xs:anyAtomicType,
$second as xs:anyAtomicType
) as xs:dateTime Construct a date/time from individual components. |
|
day-in-year
(
$date as xs:anyAtomicType?
) as xs:integer? The day of the year (a number between 1 and 366). |
|
day-of-week
(
$date as xs:anyAtomicType?
) as xs:integer? The day of the week, from a date. |
|
day-of-week-abbrev-en
(
$date as xs:anyAtomicType?
) as xs:string? The abbreviated day of the week, from a date, in English. |
|
day-of-week-name-en
(
$date as xs:anyAtomicType?
) as xs:string? The name of the day of the week, from a date, in English. |
|
dayTimeDuration
(
$days as xs:decimal?,
$hours as xs:decimal?,
$minutes as xs:decimal?,
$seconds as xs:decimal?
) as xs:dayTimeDuration Construct a dayTimeDuration from a number of days, hours, etc. |
|
days-in-month
(
$date as xs:anyAtomicType?
) as xs:integer? Number of days in the month. |
|
depth-of-node
(
$node as node()?
) as xs:integer The depth (level) of a node in an XML tree. |
|
distinct-attribute-names
(
$nodes as node()*
) as xs:string* The distinct names of all attributes in an XML fragment. |
|
distinct-deep
(
$nodes as node()*
) as node()* The XML nodes with distinct values, taking into account attributes and descendants. |
|
distinct-element-names
(
$nodes as node()*
) as xs:string* The distinct names of all elements in an XML fragment. |
|
distinct-element-paths
(
$nodes as node()*
) as xs:string* The distinct paths of all descendant elements in an XML fragment. |
|
distinct-nodes
(
$nodes as node()*
) as node()* The distinct XML nodes in a sequence (by node identity). |
|
duration-from-timezone
(
$timezone as xs:string
) as xs:dayTimeDuration Converts a timezone like "-05:00" or "Z" into xs:dayTimeDuration. |
|
dynamic-path
(
$parent as node(),
$path as xs:string
) as item()* Dynamically evaluates a simple XPath path. |
|
escape-for-regex
(
$arg as xs:string?
) as xs:string Escapes regex special characters. |
|
exclusive-or
(
$arg1 as xs:boolean?,
$arg2 as xs:boolean?
) as xs:boolean? Whether one (and only one) of two boolean values is true. |
|
first-day-of-month
(
$date as xs:anyAtomicType?
) as xs:date? The first day of the month of a date. |
|
first-day-of-year
(
$date as xs:anyAtomicType?
) as xs:date? The first day of the year of a date. |
|
first-node
(
$nodes as node()*
) as node()? The XML node in a sequence that appears first in document order. |
|
follows-not-descendant
(
$a as node()?,
$b as node()?
) as xs:boolean Whether an XML node follows another without being its descendant. |
|
format-as-title-en
(
$titles as xs:string*
) as xs:string* Moves title words like "the" and "a" to the end of strings. |
|
fragment-from-uri
(
$uri as xs:string?
) as xs:string? Returns the fragment from a URI. |
|
get-matches
(
$string as xs:string?,
$regex as xs:string
) as xs:string* Return the matching regions of a string. |
|
get-matches-and-non-matches
(
$string as xs:string?,
$regex as xs:string
) as element(*)* Splits a string into matching and non-matching regions. |
|
has-element-only-content
(
$element as element(*)
) as xs:boolean Whether an element has element-only content. |
|
has-empty-content
(
$element as element(*)
) as xs:boolean Whether an element has empty content. |
|
has-mixed-content
(
$element as element(*)
) as xs:boolean Whether an element has mixed content. |
|
has-simple-content
(
$element as element(*)
) as xs:boolean Whether an element has simple content. |
|
id-from-element
(
$element as element(*)?
) as xs:string? Gets the ID of an XML element. |
|
id-untyped
(
$node as node()*,
$id as xs:anyAtomicType
) as element(*)* Gets XML element(s) that have an attribute with a particular value. |
|
if-absent
(
$arg as item()*,
$value as item()*
) as item()* The first argument if it is not empty, otherwise the second argument. |
|
if-empty
(
$arg as item()?,
$value as item()*
) as item()* The first argument if it is not blank, otherwise the second argument. |
|
index-of-deep-equal-node
(
$nodes as node()*,
$nodeToFind as node()
) as xs:integer* The position of a node in a sequence, based on contents and attributes. |
|
index-of-match-first
(
$arg as xs:string?,
$pattern as xs:string
) as xs:integer? The first position of a matching substring. |
|
index-of-node
(
$nodes as node()*,
$nodeToFind as node()
) as xs:integer* The position of a node in a sequence, based on node identity. |
|
index-of-string
(
$arg as xs:string?,
$substring as xs:string
) as xs:integer* The position(s) of a substring. |
|
index-of-string-first
(
$arg as xs:string?,
$substring as xs:string
) as xs:integer? The first position of a substring. |
|
index-of-string-last
(
$arg as xs:string?,
$substring as xs:string
) as xs:integer? The last position of a substring. |
|
insert-string
(
$originalString as xs:string?,
$stringToInsert as xs:string?,
$pos as xs:integer
) as xs:string Inserts a string at a specified position. |
|
is-a-number
(
$value as xs:anyAtomicType?
) as xs:boolean Whether a value is numeric. |
|
is-absolute-uri
(
$uri as xs:string?
) as xs:boolean Whether a URI is absolute. |
|
is-ancestor
(
$node1 as node(),
$node2 as node()
) as xs:boolean Whether an XML node is an ancestor of another node. |
|
is-descendant
(
$node1 as node(),
$node2 as node()
) as xs:boolean Whether an XML node is a descendant of another node. |
|
is-leap-year
(
$date as xs:anyAtomicType?
) as xs:boolean Whether a date falls in a leap year. |
|
is-node-among-descendants
(
$node as node()?,
$seq as node()*
) as xs:boolean Whether an XML node is among the descendants of a sequence, based on node identity. |
|
is-node-among-descendants-deep-equal
(
$node as node()?,
$seq as node()*
) as xs:boolean Whether an XML node is among the descendants of a sequence, based on contents and attributes. |
|
is-node-in-sequence
(
$node as node()?,
$seq as node()*
) as xs:boolean Whether an XML node is in a sequence, based on node identity. |
|
is-node-in-sequence-deep-equal
(
$node as node()?,
$seq as node()*
) as xs:boolean Whether an XML node is in a sequence, based on contents and attributes. |
|
is-value-in-sequence
(
$value as xs:anyAtomicType?,
$seq as xs:anyAtomicType*
) as xs:boolean Whether an atomic value appears in a sequence. |
|
last-day-of-month
(
$date as xs:anyAtomicType?
) as xs:date? The last day of the month of a date. |
|
last-day-of-year
(
$date as xs:anyAtomicType?
) as xs:date? The last day of the month of a date. |
|
last-node
(
$nodes as node()*
) as node()? The XML node in a sequence that is last in document order. |
|
leaf-elements
(
$root as node()?
) as element(*)* All XML elements that don't have any child elements. |
|
left-trim
(
$arg as xs:string?
) as xs:string Trims leading whitespace. |
|
line-count
(
$arg as xs:string?
) as xs:integer The number of lines. |
|
lines
(
$arg as xs:string?
) as xs:string* Split a string into separate lines. |
|
max-depth
(
$root as node()?
) as xs:integer? The maximum depth of elements in an XML tree. |
|
max-determine-type
(
$seq as xs:anyAtomicType*
) as xs:anyAtomicType? The maximum value in a sequence, figuring out its type (numeric or string). |
|
max-line-length
(
$arg as xs:string?
) as xs:integer The maximum line length. |
|
max-node
(
$nodes as node()*
) as node()* The XML node whose typed value is the maximum. |
|
max-string
(
$strings as xs:anyAtomicType*
) as xs:string? The maximum of a sequence of values, treating them like strings. |
|
min-determine-type
(
$seq as xs:anyAtomicType*
) as xs:anyAtomicType? The minimum value in a sequence, figuring out its type (numeric or string). |
|
min-node
(
$nodes as node()*
) as node()* The XML node whose typed value is the minimum. |
|
min-non-empty-string
(
$strings as xs:string*
) as xs:string? The minimum of a sequence of strings, ignoring "empty" values. |
|
min-string
(
$strings as xs:anyAtomicType*
) as xs:string? The minimum of a sequence of values, treating them like strings. |
|
mmddyyyy-to-date
(
$dateString as xs:string?
) as xs:date? Converts a string with format MMDDYYYY (with any delimiters) to a date. |
|
month-abbrev-en
(
$date as xs:anyAtomicType?
) as xs:string? The month of a date as an abbreviated word (Jan, Feb, etc. |
|
month-name-en
(
$date as xs:anyAtomicType?
) as xs:string? The month of a date as a word (January, February, etc. |
|
name-test
(
$testname as xs:string?,
$names as xs:string*
) as xs:boolean Whether a name matches a list of names or name wildcards. |
|
namespaces-in-use
(
$root as node()?
) as xs:anyURI* A list of namespaces used in element/attribute names in an XML fragment. |
|
next-day
(
$date as xs:anyAtomicType?
) as xs:date? The next day. |
|
node-kind
(
$nodes as node()*
) as xs:string* The XML node kind (element, attribute, text, etc. |
|
non-distinct-values
(
$seq as xs:anyAtomicType*
) as xs:anyAtomicType* Returns any values that appear more than once in a sequence. |
|
number-of-matches
(
$arg as xs:string?,
$pattern as xs:string
) as xs:integer The number of regions that match a pattern. |
|
open-ref-document
(
$refNode as node()
) as document() Resolves a relative URI and references it, returning an XML document. |
|
ordinal-number-en
(
$num as xs:integer?
) as xs:string Reformats a number as an ordinal number, e. |
|
pad-integer-to-length
(
$integerToPad as xs:anyAtomicType?,
$length as xs:integer
) as xs:string Pads an integer to a desired length by adding leading zeros. |
|
pad-string-to-length
(
$stringToPad as xs:string?,
$padChar as xs:string,
$length as xs:integer
) as xs:string Pads a string to a desired length. |
|
path-to-node
(
$nodes as node()*
) as xs:string* A path to an XML node (or sequence of nodes). |
|
path-to-node-with-pos
(
$node as node()?
) as xs:string A unique path to an XML node (or sequence of nodes). |
|
precedes-not-ancestor
(
$a as node()?,
$b as node()?
) as xs:boolean Whether an XML node precedes another without being its ancestor. |
|
previous-day
(
$date as xs:anyAtomicType?
) as xs:date? The previous day. |
|
remove-attributes
(
$elements as element(*)*,
$names as xs:string*
) as element(*) Removes attributes from an XML element, based on name. |
|
remove-attributes-deep
(
$nodes as node()*,
$names as xs:string*
) as node()* Removes attributes from an XML fragment, based on name. |
|
remove-elements
(
$elements as element(*)*,
$names as xs:string*
) as element(*)* Removes child elements from an XML node, based on name. |
|
remove-elements-deep
(
$nodes as node()*,
$names as xs:string*
) as node()* Removes descendant elements from an XML node, based on name. |
|
remove-elements-not-contents
(
$nodes as node()*,
$names as xs:string*
) as node()* Removes descendant XML elements but keeps their content. |
|
repeat-string
(
$stringToRepeat as xs:string?,
$count as xs:integer
) as xs:string Repeats a string a given number of times. |
|
replace-beginning
(
$arg as xs:string?,
$pattern as xs:string,
$replacement as xs:string
) as xs:string Replaces the beginning of a string, up to a matched pattern. |
|
replace-element-values
(
$elements as element(*)*,
$values as xs:anyAtomicType*
) as element(*)* Updates the content of one or more elements. |
|
replace-first
(
$arg as xs:string?,
$pattern as xs:string,
$replacement as xs:string
) as xs:string Replaces the first match of a pattern. |
|
replace-multi
(
$arg as xs:string?,
$changeFrom as xs:string*,
$changeTo as xs:string*
) as xs:string? Performs multiple replacements, using pairs of replace parameters. |
|
reverse-string
(
$arg as xs:string?
) as xs:string Reverses the order of characters. |
|
right-trim
(
$arg as xs:string?
) as xs:string Trims trailing whitespace. |
|
scheme-from-uri
(
$uri as xs:string?
) as xs:string? Returns the scheme from a URI. |
|
sequence-deep-equal
(
$seq1 as item()*,
$seq2 as item()*
) as xs:boolean Whether two sequences have the same XML node content and/or values. |
|
sequence-node-equal
(
$seq1 as node()*,
$seq2 as node()*
) as xs:boolean Whether two sequences contain the same XML nodes, in the same order. |
|
sequence-node-equal-any-order
(
$seq1 as node()*,
$seq2 as node()*
) as xs:boolean Whether two sequences contain the same XML nodes, regardless of order. |
|
sequence-type
(
$items as item()*
) as xs:string The sequence type that represents a sequence of nodes or values. |
|
siblings
(
$node as node()?
) as node()* The siblings of an XML node. |
|
siblings-same-name
(
$element as element(*)?
) as element(*)* The siblings of an XML element that have the same name. |
|
sort
(
$seq as item()*
) as item()* Sorts a sequence of values or nodes. |
|
sort-as-numeric
(
$seq as item()*
) as item()* Sorts a sequence of numeric values or nodes. |
|
sort-case-insensitive
(
$seq as item()*
) as item()* Sorts a sequence of values or nodes regardless of capitalization. |
|
sort-document-order
(
$seq as node()*
) as node()* Sorts a sequence of nodes in document order. |
|
substring-after-if-contains
(
$arg as xs:string?,
$delim as xs:string
) as xs:string? Performs substring-after, returning the entire string if it does not contain the delimiter. |
|
substring-after-last
(
$arg as xs:string?,
$delim as xs:string
) as xs:string The substring after the last occurrence of a delimiter. |
|
substring-after-last-match
(
$arg as xs:string?,
$regex as xs:string
) as xs:string The substring after the last text that matches a regex. |
|
substring-after-match
(
$arg as xs:string?,
$regex as xs:string
) as xs:string? The substring after the first text that matches a regex. |
|
substring-before-if-contains
(
$arg as xs:string?,
$delim as xs:string
) as xs:string? Performs substring-before, returning the entire string if it does not contain the delimiter. |
|
substring-before-last
(
$arg as xs:string?,
$delim as xs:string
) as xs:string The substring before the last occurrence of a delimiter. |
|
substring-before-last-match
(
$arg as xs:string?,
$regex as xs:string
) as xs:string? The substring after the first text that matches a regex. |
|
substring-before-match
(
$arg as xs:string?,
$regex as xs:string
) as xs:string The substring before the last text that matches a regex. |
|
time
(
$hour as xs:anyAtomicType,
$minute as xs:anyAtomicType,
$second as xs:anyAtomicType
) as xs:time Construct a time from an hour, minute and second. |
|
timezone-from-duration
(
$duration as xs:dayTimeDuration
) as xs:string Converts an xs:dayTimeDuration into a timezone like "-05:00" or "Z". |
|
total-days-from-duration
(
$duration as xs:dayTimeDuration?
) as xs:decimal? The total number of days in a dayTimeDuration. |
|
total-hours-from-duration
(
$duration as xs:dayTimeDuration?
) as xs:decimal? The total number of hours in a dayTimeDuration. |
|
total-minutes-from-duration
(
$duration as xs:dayTimeDuration?
) as xs:decimal? The total number of minutes in a dayTimeDuration. |
|
total-months-from-duration
(
$duration as xs:yearMonthDuration?
) as xs:decimal? The total number of months in a yearMonthDuration. |
|
total-seconds-from-duration
(
$duration as xs:dayTimeDuration?
) as xs:decimal? The total number of seconds in a dayTimeDuration. |
|
total-years-from-duration
(
$duration as xs:yearMonthDuration?
) as xs:decimal? The total number of years in a yearMonthDuration. |
|
trim
(
$arg as xs:string?
) as xs:string Trims leading and trailing whitespace. |
|
update-attributes
(
$elements as element(*)*,
$attrNames as xs:QName*,
$attrValues as xs:anyAtomicType*
) as element(*)? Updates the attribute value of an XML element. |
|
value-except
(
$arg1 as xs:anyAtomicType*,
$arg2 as xs:anyAtomicType*
) as xs:anyAtomicType* The values in one sequence that aren't in another sequence. |
|
value-intersect
(
$arg1 as xs:anyAtomicType*,
$arg2 as xs:anyAtomicType*
) as xs:anyAtomicType* The intersection of two sequences of values. |
|
value-union
(
$arg1 as xs:anyAtomicType*,
$arg2 as xs:anyAtomicType*
) as xs:anyAtomicType* The union of two sequences of values. |
|
word-count
(
$arg as xs:string?
) as xs:integer The number of words. |
|
words-to-camel-case
(
$arg as xs:string?
) as xs:string Turns a string of words into camelCase. |
|
wrap-values-in-elements
(
$values as xs:anyAtomicType*,
$elementName as xs:QName
) as element(*)* Wraps a sequence of atomic values in XML elements. |
|
yearMonthDuration
(
$years as xs:decimal?,
$months as xs:integer?
) as xs:yearMonthDuration Construct a yearMonthDuration from a number of years and months. |
declare function functx:add-attributes ( $elements as element(*)*, $attrNames as xs:QName*, $attrValues as xs:anyAtomicType* ) as element(*)?
Adds attributes to XML elements
- $elements the element(s) to which you wish to add the attribute
- $attrNames the name(s) of the attribute(s) to add
- $attrValues the value(s) of the attribute(s) to add
1.0
Priscilla Walmsley, Datypic
declare function functx:add-months ( $date as xs:anyAtomicType?, $months as xs:integer ) as xs:date?
Adds months to a date
- $date the date
- $months the number of months to add
1.0
Priscilla Walmsley, Datypic
declare function functx:add-or-update-attributes ( $elements as element(*)*, $attrNames as xs:QName*, $attrValues as xs:anyAtomicType* ) as element(*)?
Adds attributes to XML elements
- $elements the element(s) to which you wish to add the attribute
- $attrNames the name(s) of the attribute(s) to add
- $attrValues the value(s) of the attribute(s) to add
1.0
Priscilla Walmsley, Datypic
declare function functx:all-whitespace ( $arg as xs:string? ) as xs:boolean
Whether a value is all whitespace or a zero-length string
- $arg the string (or node) to test
1.0
Priscilla Walmsley, Datypic
declare function functx:are-distinct-values ( $seq as xs:anyAtomicType* ) as xs:boolean
Whether all the values in a sequence are distinct
- $seq the sequence of values
1.0
Priscilla Walmsley, Datypic
declare function functx:atomic-type ( $values as xs:anyAtomicType* ) as xs:string*
The built-in type of an atomic value
- $values the value(s) whose type you want to determine
1.0
Priscilla Walmsley, Datypic
declare function functx:avg-empty-is-zero ( $values as xs:anyAtomicType*, $allNodes as node()* ) as xs:double
The average, counting "empty" values as zero
- $values the values to be averaged
- $allNodes the sequence of all nodes to find the average over
1.0
Priscilla Walmsley, Datypic
declare function functx:between-exclusive ( $value as xs:anyAtomicType?, $minValue as xs:anyAtomicType, $maxValue as xs:anyAtomicType ) as xs:boolean
Whether a value is between two provided values
- $value the value to be tested
- $minValue the minimum value
- $maxValue the maximum value
1.0
Priscilla Walmsley, Datypic
declare function functx:between-inclusive ( $value as xs:anyAtomicType?, $minValue as xs:anyAtomicType, $maxValue as xs:anyAtomicType ) as xs:boolean
Whether a value is between two provided values, or equal to one of them
- $value the value to be tested
- $minValue the minimum value
- $maxValue the maximum value
1.0
Priscilla Walmsley, Datypic
declare function functx:camel-case-to-words ( $arg as xs:string?, $delim as xs:string ) as xs:string
Turns a camelCase string into space-separated words
- $arg the string to modify
- $delim the delimiter for the words (e.g. a space)
1.0
Priscilla Walmsley, Datypic
declare function functx:capitalize-first ( $arg as xs:string? ) as xs:string?
Capitalizes the first character of a string
- $arg the word or phrase to capitalize
1.0
Priscilla Walmsley, Datypic
declare function functx:change-element-names-deep ( $nodes as node()*, $oldNames as xs:QName*, $newNames as xs:QName* ) as node()*
Changes the names of elements in an XML fragment
- $nodes the element(s) to change
- $oldNames the sequence of names to change from
- $newNames the sequence of names to change to
1.0
Priscilla Walmsley, Datypic
declare function functx:change-element-ns ( $elements as element(*)*, $newns as xs:string, $prefix as xs:string ) as element(*)?
Changes the namespace of XML elements
- $elements the elements to change
- $newns the new namespace
- $prefix the prefix to use for the new namespace
1.0
Priscilla Walmsley, Datypic
declare function functx:change-element-ns-deep ( $nodes as node()*, $newns as xs:string, $prefix as xs:string ) as node()*
Changes the namespace of XML elements and its descendants
- $nodes the nodes to change
- $newns the new namespace
- $prefix the prefix to use for the new namespace
1.0
Priscilla Walmsley, Datypic
declare function functx:chars ( $arg as xs:string? ) as xs:string*
Converts a string to a sequence of characters
- $arg the string to split
1.0
Priscilla Walmsley, Datypic
declare function functx:contains-any-of ( $arg as xs:string?, $searchStrings as xs:string* ) as xs:boolean
Whether a string contains any of a sequence of strings
- $arg the string to test
- $searchStrings the strings to look for
1.0
Priscilla Walmsley, Datypic
declare function functx:contains-case-insensitive ( $arg as xs:string?, $substring as xs:string ) as xs:boolean?
Whether one string contains another, without regard to case
- $arg the string to search
- $substring the substring to find
1.0
Priscilla Walmsley, Datypic
declare function functx:contains-word ( $arg as xs:string?, $word as xs:string ) as xs:boolean
Whether one string contains another, as a separate word
- $arg the string to search
- $word the word to find
1.0
Priscilla Walmsley, Datypic
declare function functx:copy-attributes ( $copyTo as element(*), $copyFrom as element(*) ) as element(*)
Copies attributes from one element to another
- $copyTo the element to copy attributes to
- $copyFrom the element to copy attributes from
1.0
Priscilla Walmsley, Datypic
declare function functx:date ( $year as xs:anyAtomicType, $month as xs:anyAtomicType, $day as xs:anyAtomicType ) as xs:date
Construct a date from a year, month and day
- $year the year
- $month the month
- $day the day
1.0
Priscilla Walmsley, Datypic
declare function functx:dateTime ( $year as xs:anyAtomicType, $month as xs:anyAtomicType, $day as xs:anyAtomicType, $hour as xs:anyAtomicType, $minute as xs:anyAtomicType, $second as xs:anyAtomicType ) as xs:dateTime
Construct a date/time from individual components
- $year the year
- $month the month
- $day the day
- $hour the hour
- $minute the minute
- $second the second
1.0
Priscilla Walmsley, Datypic
declare function functx:day-in-year ( $date as xs:anyAtomicType? ) as xs:integer?
The day of the year (a number between 1 and 366)
- $date the date
1.0
Priscilla Walmsley, Datypic
declare function functx:day-of-week ( $date as xs:anyAtomicType? ) as xs:integer?
The day of the week, from a date
- $date the date
1.0
Priscilla Walmsley, Datypic
declare function functx:day-of-week-abbrev-en ( $date as xs:anyAtomicType? ) as xs:string?
The abbreviated day of the week, from a date, in English
- $date the date
1.0
Priscilla Walmsley, Datypic
declare function functx:day-of-week-name-en ( $date as xs:anyAtomicType? ) as xs:string?
The name of the day of the week, from a date, in English
- $date the date
1.0
Priscilla Walmsley, Datypic
declare function functx:dayTimeDuration ( $days as xs:decimal?, $hours as xs:decimal?, $minutes as xs:decimal?, $seconds as xs:decimal? ) as xs:dayTimeDuration
Construct a dayTimeDuration from a number of days, hours, etc.
- $days the number of days
- $hours the number of hours
- $minutes the number of minutes
- $seconds the number of seconds
1.0
Priscilla Walmsley, Datypic
declare function functx:days-in-month ( $date as xs:anyAtomicType? ) as xs:integer?
Number of days in the month
- $date the date
1.0
Priscilla Walmsley, Datypic
declare function functx:depth-of-node ( $node as node()? ) as xs:integer
The depth (level) of a node in an XML tree
- $node the node to check
1.0
Priscilla Walmsley, Datypic
declare function functx:distinct-attribute-names ( $nodes as node()* ) as xs:string*
The distinct names of all attributes in an XML fragment
- $nodes the root to start from
1.0
Priscilla Walmsley, Datypic
declare function functx:distinct-deep ( $nodes as node()* ) as node()*
The XML nodes with distinct values, taking into account attributes and descendants
- $nodes the sequence of nodes to test
1.0
Priscilla Walmsley, Datypic
declare function functx:distinct-element-names ( $nodes as node()* ) as xs:string*
The distinct names of all elements in an XML fragment
- $nodes the root(s) to start from
1.0
Priscilla Walmsley, Datypic
declare function functx:distinct-element-paths ( $nodes as node()* ) as xs:string*
The distinct paths of all descendant elements in an XML fragment
- $nodes the root(s) to start from
1.0
Priscilla Walmsley, Datypic
declare function functx:distinct-nodes ( $nodes as node()* ) as node()*
The distinct XML nodes in a sequence (by node identity)
- $nodes the node sequence
1.0
Priscilla Walmsley, Datypic
declare function functx:duration-from-timezone ( $timezone as xs:string ) as xs:dayTimeDuration
Converts a timezone like "-05:00" or "Z" into xs:dayTimeDuration
- $timezone the time zone, in (+|-)HH:MM format
1.0
Priscilla Walmsley, Datypic
declare function functx:dynamic-path ( $parent as node(), $path as xs:string ) as item()*
Dynamically evaluates a simple XPath path
- $parent the root to start from
- $path the path expression
1.0
Priscilla Walmsley, Datypic
declare function functx:escape-for-regex ( $arg as xs:string? ) as xs:string
Escapes regex special characters
- $arg the string to escape
1.0
Priscilla Walmsley, Datypic
declare function functx:exclusive-or ( $arg1 as xs:boolean?, $arg2 as xs:boolean? ) as xs:boolean?
Whether one (and only one) of two boolean values is true
- $arg1 the first boolean value
- $arg2 the second boolean value
1.0
Priscilla Walmsley, Datypic
declare function functx:first-day-of-month ( $date as xs:anyAtomicType? ) as xs:date?
The first day of the month of a date
- $date the date
1.0
Priscilla Walmsley, Datypic
declare function functx:first-day-of-year ( $date as xs:anyAtomicType? ) as xs:date?
The first day of the year of a date
- $date the date
1.0
Priscilla Walmsley, Datypic
declare function functx:first-node ( $nodes as node()* ) as node()?
The XML node in a sequence that appears first in document order
- $nodes the sequence of nodes
1.0
Priscilla Walmsley, Datypic
declare function functx:follows-not-descendant ( $a as node()?, $b as node()? ) as xs:boolean
Whether an XML node follows another without being its descendant
- $a the first node
- $b the second node
1.0
W3C XML Query Working Group
declare function functx:format-as-title-en ( $titles as xs:string* ) as xs:string*
Moves title words like "the" and "a" to the end of strings
- $titles the titles to format
1.0
Priscilla Walmsley, Datypic
declare function functx:fragment-from-uri ( $uri as xs:string? ) as xs:string?
Returns the fragment from a URI
- $uri the URI
1.0
Priscilla Walmsley, Datypic
declare function functx:get-matches ( $string as xs:string?, $regex as xs:string ) as xs:string*
Return the matching regions of a string
- $string the string to split
- $regex the pattern
1.0
Priscilla Walmsley, Datypic
declare function functx:get-matches-and-non-matches ( $string as xs:string?, $regex as xs:string ) as element(*)*
Splits a string into matching and non-matching regions
- $string the string to split
- $regex the pattern
1.0
Priscilla Walmsley, Datypic
declare function functx:has-element-only-content ( $element as element(*) ) as xs:boolean
Whether an element has element-only content
- $element the XML element to test
1.0
Priscilla Walmsley, Datypic
declare function functx:has-empty-content ( $element as element(*) ) as xs:boolean
Whether an element has empty content
- $element the XML element to test
1.0
Priscilla Walmsley, Datypic
declare function functx:has-mixed-content ( $element as element(*) ) as xs:boolean
Whether an element has mixed content
- $element the XML element to test
1.0
Priscilla Walmsley, Datypic
declare function functx:has-simple-content ( $element as element(*) ) as xs:boolean
Whether an element has simple content
- $element the XML element to test
1.0
Priscilla Walmsley, Datypic
declare function functx:id-from-element ( $element as element(*)? ) as xs:string?
Gets the ID of an XML element
- $element the element
1.0
Priscilla Walmsley, Datypic
declare function functx:id-untyped ( $node as node()*, $id as xs:anyAtomicType ) as element(*)*
Gets XML element(s) that have an attribute with a particular value
- $node the root node(s) to start from
- $id the "id" to find
1.0
Priscilla Walmsley, Datypic
declare function functx:if-absent ( $arg as item()*, $value as item()* ) as item()*
The first argument if it is not empty, otherwise the second argument
- $arg the item(s) that may be absent
- $value the item(s) to use if the item is absent
1.0
W3C XML Query WG
declare function functx:if-empty ( $arg as item()?, $value as item()* ) as item()*
The first argument if it is not blank, otherwise the second argument
- $arg the node that may be empty
- $value the item(s) to use if the node is empty
1.0
Priscilla Walmsley, Datypic
declare function functx:index-of-deep-equal-node ( $nodes as node()*, $nodeToFind as node() ) as xs:integer*
The position of a node in a sequence, based on contents and attributes
- $nodes the node sequence
- $nodeToFind the node to find in the sequence
1.0
Priscilla Walmsley, Datypic
declare function functx:index-of-match-first ( $arg as xs:string?, $pattern as xs:string ) as xs:integer?
The first position of a matching substring
- $arg the string
- $pattern the pattern to match
1.0
Priscilla Walmsley, Datypic
declare function functx:index-of-node ( $nodes as node()*, $nodeToFind as node() ) as xs:integer*
The position of a node in a sequence, based on node identity
- $nodes the node sequence
- $nodeToFind the node to find in the sequence
1.0
W3C XML Query Working Group
declare function functx:index-of-string ( $arg as xs:string?, $substring as xs:string ) as xs:integer*
The position(s) of a substring
- $arg the string
- $substring the substring to find
1.0
Priscilla Walmsley, Datypic
declare function functx:index-of-string-first ( $arg as xs:string?, $substring as xs:string ) as xs:integer?
The first position of a substring
- $arg the string
- $substring the substring to find
1.0
Priscilla Walmsley, Datypic
declare function functx:index-of-string-last ( $arg as xs:string?, $substring as xs:string ) as xs:integer?
The last position of a substring
- $arg the string
- $substring the substring to find
1.0
Priscilla Walmsley, Datypic
declare function functx:insert-string ( $originalString as xs:string?, $stringToInsert as xs:string?, $pos as xs:integer ) as xs:string
Inserts a string at a specified position
- $originalString the original string to insert into
- $stringToInsert the string to insert
- $pos the position
1.0
Priscilla Walmsley, Datypic
declare function functx:is-a-number ( $value as xs:anyAtomicType? ) as xs:boolean
Whether a value is numeric
- $value the value to test
1.0
Priscilla Walmsley, Datypic
declare function functx:is-absolute-uri ( $uri as xs:string? ) as xs:boolean
Whether a URI is absolute
- $uri the URI to test
1.0
Priscilla Walmsley, Datypic
declare function functx:is-ancestor ( $node1 as node(), $node2 as node() ) as xs:boolean
Whether an XML node is an ancestor of another node
- $node1 the first node
- $node2 the second node
1.0
Priscilla Walmsley, Datypic
declare function functx:is-descendant ( $node1 as node(), $node2 as node() ) as xs:boolean
Whether an XML node is a descendant of another node
- $node1 the first node
- $node2 the second node
1.0
Priscilla Walmsley, Datypic
declare function functx:is-leap-year ( $date as xs:anyAtomicType? ) as xs:boolean
Whether a date falls in a leap year
- $date the date or year
1.0
Priscilla Walmsley, Datypic
declare function functx:is-node-among-descendants ( $node as node()?, $seq as node()* ) as xs:boolean
Whether an XML node is among the descendants of a sequence, based on node identity
- $node the node to test
- $seq the sequence of nodes to search
1.0
Priscilla Walmsley, Datypic
declare function functx:is-node-among-descendants-deep-equal ( $node as node()?, $seq as node()* ) as xs:boolean
Whether an XML node is among the descendants of a sequence, based on contents and attributes
- $node the node to test
- $seq the sequence of nodes to search
1.0
Priscilla Walmsley, Datypic
declare function functx:is-node-in-sequence ( $node as node()?, $seq as node()* ) as xs:boolean
Whether an XML node is in a sequence, based on node identity
- $node the node to test
- $seq the sequence of nodes to search
1.0
Priscilla Walmsley, Datypic
declare function functx:is-node-in-sequence-deep-equal ( $node as node()?, $seq as node()* ) as xs:boolean
Whether an XML node is in a sequence, based on contents and attributes
- $node the node to test
- $seq the sequence of nodes to search
1.0
Priscilla Walmsley, Datypic
declare function functx:is-value-in-sequence ( $value as xs:anyAtomicType?, $seq as xs:anyAtomicType* ) as xs:boolean
Whether an atomic value appears in a sequence
- $value the atomic value to test
- $seq the sequence of values to search
1.0
Priscilla Walmsley, Datypic
declare function functx:last-day-of-month ( $date as xs:anyAtomicType? ) as xs:date?
The last day of the month of a date
- $date the date
1.0
Priscilla Walmsley, Datypic
declare function functx:last-day-of-year ( $date as xs:anyAtomicType? ) as xs:date?
The last day of the month of a date
- $date the date
1.0
Priscilla Walmsley, Datypic
declare function functx:last-node ( $nodes as node()* ) as node()?
The XML node in a sequence that is last in document order
- $nodes the sequence of nodes
1.0
Priscilla Walmsley, Datypic
declare function functx:leaf-elements ( $root as node()? ) as element(*)*
All XML elements that don't have any child elements
- $root the root
1.0
Priscilla Walmsley, Datypic
declare function functx:left-trim ( $arg as xs:string? ) as xs:string
Trims leading whitespace
- $arg the string to trim
1.0
Priscilla Walmsley, Datypic
declare function functx:line-count ( $arg as xs:string? ) as xs:integer
The number of lines
- $arg the string to test
1.0
Priscilla Walmsley, Datypic
declare function functx:lines ( $arg as xs:string? ) as xs:string*
Split a string into separate lines
- $arg the string to split
1.0
Priscilla Walmsley, Datypic
declare function functx:max-depth ( $root as node()? ) as xs:integer?
The maximum depth of elements in an XML tree
- $root the root to start from
1.0
Priscilla Walmsley, Datypic
declare function functx:max-determine-type ( $seq as xs:anyAtomicType* ) as xs:anyAtomicType?
The maximum value in a sequence, figuring out its type (numeric or string)
- $seq the sequence of values to test
1.0
Priscilla Walmsley, Datypic
declare function functx:max-line-length ( $arg as xs:string? ) as xs:integer
The maximum line length
- $arg the string to test
1.0
Priscilla Walmsley, Datypic
declare function functx:max-node ( $nodes as node()* ) as node()*
The XML node whose typed value is the maximum
- $nodes the sequence of nodes to test
1.0
Priscilla Walmsley, Datypic
declare function functx:max-string ( $strings as xs:anyAtomicType* ) as xs:string?
The maximum of a sequence of values, treating them like strings
- $strings the sequence of values
1.0
Priscilla Walmsley, Datypic
declare function functx:min-determine-type ( $seq as xs:anyAtomicType* ) as xs:anyAtomicType?
The minimum value in a sequence, figuring out its type (numeric or string)
- $seq the sequence of values to test
1.0
Priscilla Walmsley, Datypic
declare function functx:min-node ( $nodes as node()* ) as node()*
The XML node whose typed value is the minimum
- $nodes the sequence of nodes to test
1.0
Priscilla Walmsley, Datypic
declare function functx:min-non-empty-string ( $strings as xs:string* ) as xs:string?
The minimum of a sequence of strings, ignoring "empty" values
- $strings the sequence of strings to search
1.0
Priscilla Walmsley, Datypic
declare function functx:min-string ( $strings as xs:anyAtomicType* ) as xs:string?
The minimum of a sequence of values, treating them like strings
- $strings the sequence of strings
1.0
Priscilla Walmsley, Datypic
declare function functx:mmddyyyy-to-date ( $dateString as xs:string? ) as xs:date?
Converts a string with format MMDDYYYY (with any delimiters) to a date
- $dateString the MMDDYYYY string
1.0
Priscilla Walmsley, Datypic
declare function functx:month-abbrev-en ( $date as xs:anyAtomicType? ) as xs:string?
The month of a date as an abbreviated word (Jan, Feb, etc.)
- $date the date
1.0
Priscilla Walmsley, Datypic
declare function functx:month-name-en ( $date as xs:anyAtomicType? ) as xs:string?
The month of a date as a word (January, February, etc.)
- $date the date
1.0
Priscilla Walmsley, Datypic
declare function functx:name-test ( $testname as xs:string?, $names as xs:string* ) as xs:boolean
Whether a name matches a list of names or name wildcards
- $testname the name to test
- $names the list of names or name wildcards
1.0
Priscilla Walmsley, Datypic
declare function functx:namespaces-in-use ( $root as node()? ) as xs:anyURI*
A list of namespaces used in element/attribute names in an XML fragment
- $root the root node to start from
1.0
Priscilla Walmsley, Datypic
declare function functx:next-day ( $date as xs:anyAtomicType? ) as xs:date?
The next day
- $date the date
1.0
Priscilla Walmsley, Datypic
declare function functx:node-kind ( $nodes as node()* ) as xs:string*
The XML node kind (element, attribute, text, etc.)
- $nodes the node(s) whose kind you want to determine
1.0
Priscilla Walmsley, Datypic
declare function functx:non-distinct-values ( $seq as xs:anyAtomicType* ) as xs:anyAtomicType*
Returns any values that appear more than once in a sequence
- $seq the sequence of values
1.0
Priscilla Walmsley, Datypic
declare function functx:number-of-matches ( $arg as xs:string?, $pattern as xs:string ) as xs:integer
The number of regions that match a pattern
- $arg the string to test
- $pattern the regular expression
1.0
Priscilla Walmsley, Datypic
declare function functx:open-ref-document ( $refNode as node() ) as document()
Resolves a relative URI and references it, returning an XML document
- $refNode a node whose value is a relative URI reference
1.0
Priscilla Walmsley, Datypic
declare function functx:ordinal-number-en ( $num as xs:integer? ) as xs:string
Reformats a number as an ordinal number, e.g. 1st, 2nd, 3rd.
- $num the number
1.0
Priscilla Walmsley, Datypic
declare function functx:pad-integer-to-length ( $integerToPad as xs:anyAtomicType?, $length as xs:integer ) as xs:string
Pads an integer to a desired length by adding leading zeros
- $integerToPad the integer to pad
- $length the desired length
1.0
Priscilla Walmsley, Datypic
declare function functx:pad-string-to-length ( $stringToPad as xs:string?, $padChar as xs:string, $length as xs:integer ) as xs:string
Pads a string to a desired length
- $stringToPad the string to pad
- $padChar the character(s) to use as padding
- $length the desired length
1.0
Priscilla Walmsley, Datypic
declare function functx:path-to-node ( $nodes as node()* ) as xs:string*
A path to an XML node (or sequence of nodes)
- $nodes the node sequence
1.0
Priscilla Walmsley, Datypic
declare function functx:path-to-node-with-pos ( $node as node()? ) as xs:string
A unique path to an XML node (or sequence of nodes)
- $node the node sequence
1.0
Priscilla Walmsley, Datypic
declare function functx:precedes-not-ancestor ( $a as node()?, $b as node()? ) as xs:boolean
Whether an XML node precedes another without being its ancestor
- $a the first node
- $b the second node
1.0
W3C XML Query Working Group
declare function functx:previous-day ( $date as xs:anyAtomicType? ) as xs:date?
The previous day
- $date the date
1.0
Priscilla Walmsley, Datypic
declare function functx:remove-attributes ( $elements as element(*)*, $names as xs:string* ) as element(*)
Removes attributes from an XML element, based on name
- $elements the element(s) from which to remove the attributes
- $names the names of the attributes to remove, or * for all attributes
1.0
Priscilla Walmsley, Datypic
declare function functx:remove-attributes-deep ( $nodes as node()*, $names as xs:string* ) as node()*
Removes attributes from an XML fragment, based on name
- $nodes the root(s) to start from
- $names the names of the attributes to remove, or * for all attributes
1.0
Priscilla Walmsley, Datypic
declare function functx:remove-elements ( $elements as element(*)*, $names as xs:string* ) as element(*)*
Removes child elements from an XML node, based on name
- $elements the element(s) from which you wish to remove the children
- $names the names of the child elements to remove
1.0
Priscilla Walmsley, Datypic
declare function functx:remove-elements-deep ( $nodes as node()*, $names as xs:string* ) as node()*
Removes descendant elements from an XML node, based on name
- $nodes root(s) to start from
- $names the names of the elements to remove
1.0
Priscilla Walmsley, Datypic
declare function functx:remove-elements-not-contents ( $nodes as node()*, $names as xs:string* ) as node()*
Removes descendant XML elements but keeps their content
- $nodes the root(s) to start from
- $names the names of the elements to remove
1.0
Priscilla Walmsley, Datypic
declare function functx:repeat-string ( $stringToRepeat as xs:string?, $count as xs:integer ) as xs:string
Repeats a string a given number of times
- $stringToRepeat the string to repeat
- $count the desired number of copies
1.0
Priscilla Walmsley, Datypic
declare function functx:replace-beginning ( $arg as xs:string?, $pattern as xs:string, $replacement as xs:string ) as xs:string
Replaces the beginning of a string, up to a matched pattern
- $arg the entire string to change
- $pattern the pattern of characters to replace up to
- $replacement the replacement string
1.0
Priscilla Walmsley, Datypic
declare function functx:replace-element-values ( $elements as element(*)*, $values as xs:anyAtomicType* ) as element(*)*
Updates the content of one or more elements
- $elements the elements whose content you wish to replace
- $values the replacement values
1.0
Priscilla Walmsley, Datypic
declare function functx:replace-first ( $arg as xs:string?, $pattern as xs:string, $replacement as xs:string ) as xs:string
Replaces the first match of a pattern
- $arg the entire string to change
- $pattern the pattern of characters to replace
- $replacement the replacement string
1.0
Priscilla Walmsley, Datypic
declare function functx:replace-multi ( $arg as xs:string?, $changeFrom as xs:string*, $changeTo as xs:string* ) as xs:string?
Performs multiple replacements, using pairs of replace parameters
- $arg the string to manipulate
- $changeFrom the sequence of strings or patterns to change from
- $changeTo the sequence of strings to change to
1.0
Priscilla Walmsley, Datypic
declare function functx:reverse-string ( $arg as xs:string? ) as xs:string
Reverses the order of characters
- $arg the string to reverse
1.0
Priscilla Walmsley, Datypic
declare function functx:right-trim ( $arg as xs:string? ) as xs:string
Trims trailing whitespace
- $arg the string to trim
1.0
Priscilla Walmsley, Datypic
declare function functx:scheme-from-uri ( $uri as xs:string? ) as xs:string?
Returns the scheme from a URI
- $uri the URI
1.0
Priscilla Walmsley, Datypic
declare function functx:sequence-deep-equal ( $seq1 as item()*, $seq2 as item()* ) as xs:boolean
Whether two sequences have the same XML node content and/or values
- $seq1 the first sequence
- $seq2 the second sequence
1.0
Priscilla Walmsley, Datypic
declare function functx:sequence-node-equal ( $seq1 as node()*, $seq2 as node()* ) as xs:boolean
Whether two sequences contain the same XML nodes, in the same order
- $seq1 the first sequence of nodes
- $seq2 the second sequence of nodes
1.0
Priscilla Walmsley, Datypic
declare function functx:sequence-node-equal-any-order ( $seq1 as node()*, $seq2 as node()* ) as xs:boolean
Whether two sequences contain the same XML nodes, regardless of order
- $seq1 the first sequence of nodes
- $seq2 the second sequence of nodes
1.0
Priscilla Walmsley, Datypic
declare function functx:sequence-type ( $items as item()* ) as xs:string
The sequence type that represents a sequence of nodes or values
- $items the items whose sequence type you want to determine
1.0
Priscilla Walmsley, Datypic
declare function functx:siblings ( $node as node()? ) as node()*
The siblings of an XML node
- $node the node
1.0
Priscilla Walmsley, Datypic
declare function functx:siblings-same-name ( $element as element(*)? ) as element(*)*
The siblings of an XML element that have the same name
- $element the node
1.0
Priscilla Walmsley, Datypic
declare function functx:sort ( $seq as item()* ) as item()*
Sorts a sequence of values or nodes
- $seq the sequence to sort
1.0
Priscilla Walmsley, Datypic
declare function functx:sort-as-numeric ( $seq as item()* ) as item()*
Sorts a sequence of numeric values or nodes
- $seq the sequence to sort
1.0
Priscilla Walmsley, Datypic
declare function functx:sort-case-insensitive ( $seq as item()* ) as item()*
Sorts a sequence of values or nodes regardless of capitalization
- $seq the sequence to sort
1.0
Priscilla Walmsley, Datypic
declare function functx:sort-document-order ( $seq as node()* ) as node()*
Sorts a sequence of nodes in document order
- $seq the sequence to sort
1.0
Priscilla Walmsley, Datypic
declare function functx:substring-after-if-contains ( $arg as xs:string?, $delim as xs:string ) as xs:string?
Performs substring-after, returning the entire string if it does not contain the delimiter
- $arg the string to substring
- $delim the delimiter
1.0
Priscilla Walmsley, Datypic
declare function functx:substring-after-last ( $arg as xs:string?, $delim as xs:string ) as xs:string
The substring after the last occurrence of a delimiter
- $arg the string to substring
- $delim the delimiter
1.0
Priscilla Walmsley, Datypic
declare function functx:substring-after-last-match ( $arg as xs:string?, $regex as xs:string ) as xs:string
The substring after the last text that matches a regex
- $arg the string to substring
- $regex the regular expression
1.0
Priscilla Walmsley, Datypic
declare function functx:substring-after-match ( $arg as xs:string?, $regex as xs:string ) as xs:string?
The substring after the first text that matches a regex
- $arg the string to substring
- $regex the regular expression
1.0
Priscilla Walmsley, Datypic
declare function functx:substring-before-if-contains ( $arg as xs:string?, $delim as xs:string ) as xs:string?
Performs substring-before, returning the entire string if it does not contain the delimiter
- $arg the string to substring
- $delim the delimiter
1.0
Priscilla Walmsley, Datypic
declare function functx:substring-before-last ( $arg as xs:string?, $delim as xs:string ) as xs:string
The substring before the last occurrence of a delimiter
- $arg the string to substring
- $delim the delimiter
1.0
Priscilla Walmsley, Datypic
declare function functx:substring-before-last-match ( $arg as xs:string?, $regex as xs:string ) as xs:string?
The substring after the first text that matches a regex
- $arg the string to substring
- $regex the regular expression
1.0
Priscilla Walmsley, Datypic
declare function functx:substring-before-match ( $arg as xs:string?, $regex as xs:string ) as xs:string
The substring before the last text that matches a regex
- $arg the string to substring
- $regex the regular expression
1.0
Priscilla Walmsley, Datypic
declare function functx:time ( $hour as xs:anyAtomicType, $minute as xs:anyAtomicType, $second as xs:anyAtomicType ) as xs:time
Construct a time from an hour, minute and second
- $hour the hour
- $minute the minute
- $second the second
1.0
Priscilla Walmsley, Datypic
declare function functx:timezone-from-duration ( $duration as xs:dayTimeDuration ) as xs:string
Converts an xs:dayTimeDuration into a timezone like "-05:00" or "Z"
- $duration the duration
1.0
Priscilla Walmsley, Datypic
declare function functx:total-days-from-duration ( $duration as xs:dayTimeDuration? ) as xs:decimal?
The total number of days in a dayTimeDuration
- $duration the duration
1.0
Priscilla Walmsley, Datypic
declare function functx:total-hours-from-duration ( $duration as xs:dayTimeDuration? ) as xs:decimal?
The total number of hours in a dayTimeDuration
- $duration the duration
1.0
Priscilla Walmsley, Datypic
declare function functx:total-minutes-from-duration ( $duration as xs:dayTimeDuration? ) as xs:decimal?
The total number of minutes in a dayTimeDuration
- $duration the duration
1.0
Priscilla Walmsley, Datypic
declare function functx:total-months-from-duration ( $duration as xs:yearMonthDuration? ) as xs:decimal?
The total number of months in a yearMonthDuration
- $duration the duration
1.0
Priscilla Walmsley, Datypic
declare function functx:total-seconds-from-duration ( $duration as xs:dayTimeDuration? ) as xs:decimal?
The total number of seconds in a dayTimeDuration
- $duration the duration
1.0
Priscilla Walmsley, Datypic
declare function functx:total-years-from-duration ( $duration as xs:yearMonthDuration? ) as xs:decimal?
The total number of years in a yearMonthDuration
- $duration the duration
1.0
Priscilla Walmsley, Datypic
declare function functx:trim ( $arg as xs:string? ) as xs:string
Trims leading and trailing whitespace
- $arg the string to trim
1.0
Priscilla Walmsley, Datypic
declare function functx:update-attributes ( $elements as element(*)*, $attrNames as xs:QName*, $attrValues as xs:anyAtomicType* ) as element(*)?
Updates the attribute value of an XML element
- $elements the element(s) for which you wish to update the attribute
- $attrNames the name(s) of the attribute(s) to add
- $attrValues the value(s) of the attribute(s) to add
1.0
Priscilla Walmsley, Datypic
declare function functx:value-except ( $arg1 as xs:anyAtomicType*, $arg2 as xs:anyAtomicType* ) as xs:anyAtomicType*
The values in one sequence that aren't in another sequence
- $arg1 the first sequence
- $arg2 the second sequence
1.0
W3C XML Query Working Group
declare function functx:value-intersect ( $arg1 as xs:anyAtomicType*, $arg2 as xs:anyAtomicType* ) as xs:anyAtomicType*
The intersection of two sequences of values
- $arg1 the first sequence
- $arg2 the second sequence
1.0
W3C XML Query Working Group
declare function functx:value-union ( $arg1 as xs:anyAtomicType*, $arg2 as xs:anyAtomicType* ) as xs:anyAtomicType*
The union of two sequences of values
- $arg1 the first sequence
- $arg2 the second sequence
1.0
W3C XML Query Working Group
declare function functx:word-count ( $arg as xs:string? ) as xs:integer
The number of words
- $arg the string to measure
1.0
Priscilla Walmsley, Datypic
declare function functx:words-to-camel-case ( $arg as xs:string? ) as xs:string
Turns a string of words into camelCase
- $arg the string to modify
1.0
Priscilla Walmsley, Datypic
declare function functx:wrap-values-in-elements ( $values as xs:anyAtomicType*, $elementName as xs:QName ) as element(*)*
Wraps a sequence of atomic values in XML elements
- $values the values to wrap in elements
- $elementName the name of the elements to construct
1.0
Priscilla Walmsley, Datypic
declare function functx:yearMonthDuration ( $years as xs:decimal?, $months as xs:integer? ) as xs:yearMonthDuration
Construct a yearMonthDuration from a number of years and months
- $years the number of years
- $months the number of months
1.0
Priscilla Walmsley, Datypic