# LIBEXSLT - extension library for XSLT - man(3) - [phpMan]

[_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)
