XML transformation language

From Wikipedia, the free encyclopedia

An XML to XML transformation
An XML to XML transformation

An XML transformation language is a computer language designed specifically to transform an input XML document into an output XML document which satisfies some specific goal.

There are two special cases of transformation:

  • XML to XML : the output document is an XML document.
  • XML to Data : the output document is a byte stream.

Contents

An XML to XML transformation outputs XML document, it is current to chain XML to XML transformation to form XML pipelines.

The XML to Data transformation contains some important cases. The most notable one is XML to HTML, as an HTML document is not an XML document.

XSLT 
XSLT is the best known XML transformation language. The XSLT 1.0 W3C recommendation was published in 1999 together with XPath 1.0, and it has been widely implemented since then. XSLT 2.0 is expected to be released soon as a W3C recommendation and early implementations of the specification like SAXON 8 are already available.
XQuery 
XQuery is also bound to become a W3C standard. XQuery is not an XML application, like XSLT. Consequently its syntax is much lighter. The language is based on XPath 2.0. XQuery programs cannot have side-effects, just like XSLT and provides almost the same capabilities (for instance: declaring variables and functions, iterating over sequences, using W3C schema types), even though the program syntax are quite different. In addition to the syntax, the main difference between XSLT and XQuery is the XSLT push processing model, where certain conditions of the input document trigger the execution of templates, which is not shared with XQuery.
STX 
STX (Streaming Transformations for XML) is inspired by XSLT but has been designed to allow a one-pass transformation process that never prevents streaming. Implementations are available in Java (Joost) and Perl (XML::STX).
XML Script 
An imperative scripting language inspired by Perl that uses the XML syntax. XML Script supports XPath as well as its proprietary DSLPath for selecting nodes from the input tree.
FXT 
A Functional XML Transformation Tool, implemented in Standard ML.
XDuce 
A typed language with a lightweight syntax (compared to XSLT). The implementation is written in ML.
CDuce 
Extends XDuce to a general-purpose functional programming language, see CDuce homepage.
Xtatic 
Applies techniques from XDuce to C#, see Xtatic homepage.
HaXml 
A library and collection of tools to write XML transformations in Haskell. Its approach is very consistent and powerful. Also see this paper about HaXml published in 1999 and this IBM developerWorks article. See also the more recent HXML and Haskell XML Toolbox (HXT), which is based on the ideas of HaXml and HXML but takes a more general approach to XML processing.
XMLambda 
XMLambda (XMλ) is described in a 1999 paper by Erik Meijer and Mark Shields. No implementation is available. See XMLambda home page.
FleXML 
FleXML is an XML processing language first implemented by Kristofer Rose. Its approach is to add actions to an XML DTD specifying processing instructions for any subset of the DTD's rules.
XML Sapiens 
A paradigm of the managed sites building, a way for the independent aspects’ effective integration: data, design, and functionality.
Scala 
A general-purpose functional and object-oriented language with specific support for XML transformation in the form of XML pattern matching, literals, and expressions, along with standard XML libraries.

Advanced Search
Included Web Search Engines


Safe Search

close

Top Matching Results

Occasionally Search.com will highlight specialized results that are based on the context of your query. Examples of specialized results include specific links to news, images, or video.

Top Matching Results may highlight information from other Search.com pages, content from the CNET Network of sites, or third party content. The listings are based purely on relevance. Search.com does not receive payment for listings in this section but our partners that provide this data may get paid for listing these products.

Sponsored Links

This section contains paid listings which have been purchased by companies that want to have their sites appear for specific search terms and related content. These listings are administered, sorted and maintained by a third party and are not endorsed by Search.com.

Search Results

Search.com sends your search query to several search engines at one time and integrates the results into one list which has been sorted by relevance using Search.com's proprietary algorithm. You can customize the list of search engines included in your metasearch from the preferences.

The search engines that are used in your metasearch may allow companies to pay to have their Web sites included within the results. To view the Paid Inclusion policy for a specific search engine, please visit their Web site. Search.com does not accept payment or share revenue with any search engine partner for listings in this section.