XSLT

XSLT
ParadigmDeclarative
DeveloperWorld Wide Web Consortium (W3C)
First appeared1998
Stable release
3.0 / June 8, 2017; 7 years ago (2017-06-08)
Filename extensions.xslt
Websitewww.w3.org/TR/xslt-30/
Major implementations
libxslt, Saxon, Xalan
Influenced by
DSSSL
XSLT
Filename extension
.xslt
Internet media type
application/xslt+xml
Uniform Type Identifier (UTI)org.w3.xsl

XSLT (Extensible Stylesheet Language Transformations) is a language originally designed for transforming XML documents into other XML documents,[1] or other formats such as HTML for web pages, plain text or XSL Formatting Objects, which may subsequently be converted to other formats, such as PDF, PostScript and PNG.[2] Support for JSON and plain-text transformation was added in later updates to the XSLT 1.0 specification.

As of August 2022, the most recent stable version of the language is XSLT 3.0, which achieved Recommendation status in June 2017.

XSLT 3.0 implementations support Java, .NET, C/C++, Python, PHP and NodeJS. An XSLT 3.0 JavaScript library can also be hosted within the web browser. Modern web browsers also include native support for XSLT 1.0.[3]

For an XSLT document transformation, the original document is not changed; rather, a new document is created based on the content of an existing one.[4] Typically, input documents are XML files, but anything from which the processor can build an XQuery and XPath Data Model can be used, such as relational database tables or geographical information systems.[1]

While XSLT was originally designed as a special-purpose language for XML transformation, the language is Turing-complete, making it theoretically capable of arbitrary computations.[5]

  1. ^ a b "Transformation". 2012-09-19.
  2. ^ "XML Output Method". 2012-09-19.
  3. ^ "What is XSLT Used For?". 2018-02-07.
  4. ^ "Introduction". XSL Transformations (XSLT) Version 1.0 W3C Recommendation. W3C. 16 November 1999. Retrieved November 7, 2012.
  5. ^ XSLT Version 2.0 Is Turing-Complete: A Purely Transformation Based Proof