XPath expression wizard - Functions Reference options
To access the Functions Reference options, click the Reference tab in the XPath expression wizard.
When you are creating an XPath expression, you can use the Functions Reference options to specify the following types of functions:
- Node Set- functions applied to node sets
- Boolean - used for Boolean mathematics
- String - functions used for dealing with strings
- Number - used to manipulate numeric values
- XSLT - used in XPath expressions
- User defined - functions that are defined by the user
Functions are used to make the XPath even more powerful. Some functions need information to work. This information is passed in the form of parameters, which are inserted between round ( ) brackets.
Node Set functions
You can use the following functions for working with node sets.
Function Returns count( ) The number of nodes in a node set. last( ) The size (that is, the number of nodes in) the context node list. position A node's position in a node-set, in document order. For example, position( ) = 2 returns the second element in a node set. id(string) A node set containing all elements in the document with the specified string. local-name(node set ) The name of the first node in node set. Without an argument, it returns the local name of the context node. namespace uri( ) The namespace URI of the context node. name( ) The name of the context node, including the namespace prefix.
Boolean functions
You can use these functions for Boolean mathematics.
Function Returns boolean ( ) Evaluates an expression to be true or false. false ( ) Always returns false true ( ) Always returns true lang ( ) Returns true or false depending on whether the language of the context node as specified by xml:lang attributes is the same as, or is a sub-language of the language specified by the argument string. not ( ) Negates the value of the Boolean expression: true if the expression is false, otherwise false.
String functions
You can use the following functions to work with strings.
Functions Returns concat( ) The concatenation of its arguments. For example, concat ('This is', ' ', 'my string') returns "This is my string" contains( ) An indication if one string contains the contents of a second strong. For example, contains ("This is my string", "is my") returns true, because the string "This is my string" does contain the string "is my". normalize-space( ) The argument string with whitespace normalized by stripping leading and trailing whitespace and replacing sequences of whitespace characters by a single space. starts-with( ) An indication whether a string starts with the contents of a second string. For example, starts-with ("This is my string", "This") returns true , because the string "This is my string" does start with the string "This" . string( ) Converts any value to a string. string-length( ) The number of characters in the string, including spaces. substring( ) Takes a specified number of characters out of a string. For example, substring ('This is my string' ,9, 2 ) returns my because we told it to start at the ninth character and take two characters. substring-after( ) All the characters after a certain character. For example, substring-after ('This is my string','s' ) returns all the characters after the first occurrence of the letter "s", in other words "is my string". substring-before( ) All the characters before a certain character. For example, substring-before ('This is my string','s' ) returns all the characters before the first occurrence of the letter "s", in other words "Thi". translate (string, to-match, replace-with ) The string with all occurrences of the substring to-match replaced with the string replace-with .
Number functions
You can use these functions for dealing with numbers.
Function Returns ceiling ( ) The value of the expression rounded up to an integer value. floor ( ) The value of the expression rounded down to an integer value. round ( ) The value of the expression rounded to the nearest integer. number ( ) Converts PCDATA text to a numeric value. sum ( ) Adds together all of the numeric values in a node set.
XSLT functions
XSLT uses the XPath syntax heavily and supports all functions defined in XPath. In addition, it defines ten extra functions.
Function Returns current( ) A node set containing a single node, the current node. document( ) Allows access to XML documents other than the main source document. element-available( ) true if the argument identifies an XSLT element the processor recognizes, false otherwise. format-number (number x, string pattern ) Converts the number x to a string using the string pattern specified by the second argument. function-available( ) true if the argument identifies a function in the processor's function library, false otherwise. generate-id( ) A string that can be used as the value of an ID type attribute. key (string keyName, object value ) A node set containing all nodes in the source document that have a key with the name given by the first argument and the value given by the second argument. unparsed-entity-uri( ) The URI of the unparsed entity with the specified name declared in the source document's DTD. system-property( ) The value of the named property.
User defined
Any user defined functions that you can use in your XPath expression will be listed here.
Parent topic
Creating XPath expressions
Related concepts
XPath expression wizard
Related reference
XPath expression wizard - Syntax Reference options