# man > LIBEXSLT(3)

[LIBEXSLT(3)](https://www.chedong.com/phpMan.php/man/LIBEXSLT/3/markdown)                           Library Functions Manual                           [LIBEXSLT(3)](https://www.chedong.com/phpMan.php/man/LIBEXSLT/3/markdown)



## NAME
       libexslt - extension library for XSLT

## SYNOPSIS
### #include <libexslt/exslt.h>

### void exsltCommonRegister(void);
### void exsltDateRegister(void);
### void exsltDynRegister(void);
### void exsltFuncRegister(void);
### void exsltMathRegister(void);
### void exsltSetsRegister(void);
### void exsltStrRegister(void);
### void exsltRegisterAll(void);
### void exsltSaxonRegister(void);

## DESCRIPTION
       The  **libexslt**  library is used to provide extensions to XSLT functions. These extensions come
       from the EXSLT project <<http://www.exslt.org/>>

## USAGE
       To make use of these functions in XSLT the appropriate  namespace  must  be  defined  on  the
       **xsl:stylesheet** element.  To enable support for them in [**libxslt**(3)](https://www.chedong.com/phpMan.php/man/libxslt/3/markdown) you must call the appropri‐
       ate functions (listed in the **SYNOPSIS** section) to register the extensions.   The  _xslt-config_
       shell script can be used to obtain the necessary flags for the pre-processor and linker.  The
       supported extensions are:

   **COMMON**
       Namespace: <http://exslt.org/common>

       See <http://www.exslt.org/exsl/index.html> for a description.

       **node-set()**            convert the given RTF into a node-set.

       **object-type()**         returns the type of the given argument.

       **document**              Create multiple output  documents.  See  <http://www.exslt.org/exsl/ele>‐
                             ments/document/index.html


   **MATH**
       Namespace: <http://exslt.org/math>

       See <http://www.exslt.org/math/index.html> for a description.

       **min()**                 returns the minimum value of the given node-set

       **max()**                 returns the maximum value of the given node-set

       **highest()**             returns  the nodes in the node-set whose value is the maximum value for
                             the node-set.

       **lowest()**              returns the nodes in the node-set whose value is the minimum value  for
                             the node-set.

       **constant()**            returns  a number value of the given constant with the given precision.
                             The constants are PI, E, SQRRT2, LN2, LN10, LOG2E, and SQRT1_2.

       **random()**              returns a random number between 0 and 1 inclusive.

       **abs()**                 returns the absolute value of the argument.

       **sqrt()**                returns the square root of the argument.

       **power()**               returns the power base and power arguments.

       **log()**                 returns the natural log of the argument.

       **sin()**                 returns the sine of the argument.

       **cos()**                 returns the cosine of the argument.

       **tan()**                 returns the tangent of the argument.

       **asin()**                returns the arc sine of the argument.

       **acos()**                returns the arc cosine of the argument.

       **atan()**                returns the arc tangent of the argument.

       **atan2()**               returns the arc tangent function of the y/x arguments.

       **exp()**                 returns the exponential function of the argument.


   **SETS**
       Namespace: <http://exslt.org/sets>

       See <http://www.exslt.org/set/index.html> for a description.

       **difference()**          returns the difference between the two given node-sets.

       **intersection()**        returns a node-set of the nodes within both given node-sets.

       **distinct()**            returns a node-set of all nodes in the first argument that are  not  in
                             the seconds argument.

       **has-same-node()**       returns  TRUE  if  there is an intersection between the two given node-
                             sets.

       **leading()**             returns a node-set of all nodes in the first argument that precede  the
                             first node in the second argument.

       **trailing()**            returns  a  node-set of all nodes in the first argument that follow the
                             first node in the second argument.


### DATES and TIMES
       Namespace: <http://exslt.org/dates-and-times>

       See <http://www.exslt.org/date/date.html> for a description.

       **date-time()**           returns the current date and time as a date/time string.

       **date()**                returns the date specified in the given date/time string.

       **time()**                returns the time specified in the date/time string given as  the  argu‐
                             ment.

       **year()**                returns the year of a date as a number.

       **leap-year()**           returns true if the year given in a date is a leap year.

       **month-in-year()**       returns the month of a date as a number.

       **month-name()**          returns the full name of the month of a date.

       **month-abbreviation()**  returns the abbreviation of the month of a date.

       **week-in-year()**        returns the week of the year as a number.

       **week-in-month()**       returns the week in a month of a date as a number.

       **day-in-year()**         returns the month of a date as a number.

       **day-in-month()**        returns the day of a date as a number.

### day-of-week-in-month()
                             returns the day-of-the-week in a month of a date as a number.

       **day-in-week()**         returns the day of the week given in a date as a number.

       **day-name()**            returns the full name of the day of the week of a date.

       **day-abbreviation()**    returns the abbreviation of the day of the week of a date.

       **hour-in-day()**         returns the hour of the day as a number.

       **minute-in-hour()**      returns the minute of the hour as a number.

       **second-in-minute()**    returns the second of the minute as a number.

       **seconds()**             returns the number of seconds specified by the argument string.

       **add()**                 returns the date/time resulting from adding a duration to a date/time.

       **add-duration()**        returns  the  duration  resulting  from  adding two given durations to‐
                             gether.

       **difference()**          returns the duration between the first date and the second date.

       **duration()**            returns a duration string that represents the given number  of  seconds
                             since 1970-01-01T00:00:00.


   **STRINGS**
       Namespace: <http://exslt.org/strings>

       See <http://www.exslt.org/str/index.html> for a description.

       **tokenize()**            returns  a  node  set of token elements, each containing one token from
                             the string.

       **padding()**             returns a string padded to a certain length.

       **align()**               returns a string aligned within another string.

       **concat()**              returns the concatenation of the string values of  the  nodes  in  that
                             node set.


   **FUNCTIONS**
       Namespace: <http://exslt.org/functions>

       See <http://www.exslt.org/func/index.html> for a description.

       **function**              declares an extension function.

       **result**                returns the result of an extension function declared in function().

## FILES
       _/usr/bin/xslt-config_
              shell script giving pre-processor and linker flags.

       _/usr/lib/libexslt.a_
              static library

       _/usr/lib/libexslt.so_
              sharable library

## AUTHORS
       Manual page by Heiko W. Rupp (<hwr@pilhuhn.de>)

## SEE ALSO
       [**libxml**(3)](https://www.chedong.com/phpMan.php/man/libxml/3/markdown), [**libxslt**(3)](https://www.chedong.com/phpMan.php/man/libxslt/3/markdown), [**xmllint**(1)](https://www.chedong.com/phpMan.php/man/xmllint/1/markdown) [**xsltproc**(1)](https://www.chedong.com/phpMan.php/man/xsltproc/1/markdown),



libxslt                                   04 November 2003                               [LIBEXSLT(3)](https://www.chedong.com/phpMan.php/man/LIBEXSLT/3/markdown)
