XSLT Elements
XSL Transformations (XSLT) can be used to manipulate, sort, and filter XML data. Many transformations will target well-formed HTML. Well-formed means that any HTML tag can be used, subject to the stricter syntax rules of XML—all start tags are paired with end tags and are nested correctly. Well-formed HTML can be displayed by the browser, or further manipulated by XML tools. The World Wide Web Consortium (W3C) currently has a recommendation for making the next generation of HTML an XML application. W3C XHTML™ 1.0: The Extensible HyperText Markup Language, described in the World Wide Web Consortium Web site describes the benefits of defining well-formed HTML. XSLT is a valuable tool for generating well-formed HTML or other XML files.
XSLT enables you to define templates for your output, into which data from the XML source is delivered. Each template defines a pattern that identifies elements in the source tree and defines the resulting output subtree to be generated. The XSLT transformation processor merges data from the XML source document with the template. By combining a set of template fragments into a style sheet, XSLT can be used to perform data-driven transforms useful for highly irregular XML data and XML documents.
XSLT templates are defined using the following set of XML elements:
XSLT Elements
Element | Description |
---|---|
xsl:apply-imports | Invokes an overridden template rule. |
xsl:apply-templates | Directs the XSLT processor to find the appropriate template to apply, based on the type and context of each selected node. |
xsl:attribute | Creates an attribute node and attaches it to an output element. |
xsl:attribute-set | Defines a named set of attributes. |
xsl:call-template | Invokes a template by name. |
xsl:choose | Provides multiple conditional testing in conjunction with the <xsl:otherwise element> and <xsl:when element>. |
xsl:comment | Generates a comment in the output. |
xsl:copy | Copies the current node from the source to the output. |
xsl:copy-of | Inserts subtrees and result-tree fragments into the result tree. |
xsl:decimal-format | Declares a decimal-format, which controls the interpretation of a format pattern used by the format-number function. |
xsl:element | Creates an element with the specified name in the output. |
xsl:fallback | Calls template content that can provide a reasonable substitute to the behavior of the new element when encountered. |
xsl:for-each | Applies a template repeatedly, applying it in turn to each node in a set. |
xsl:if | Allows simple conditional template fragments. |
xsl:import | Specifies an XSLT style sheet to include. |
xsl:include | Specifies another XSLT style sheet to include. |
xsl:key | Declares a named key for use with the key function in XML Path Language (XPath) expressions. |
xsl:message | Sends a text message to either the message buffer or a message dialog box. |
xsl:namespace-alias | Replaces the prefix associated with a given name space with another prefix. |
xsl:number | Inserts a formatted number into the result tree. |
xsl:otherwise | Provides multiple conditional testing in conjunction with the <xsl:choose element> and <xsl:when element>. |
xsl:output | Specifies options for use in serializing the result tree. |
xsl:param | Declares a named parameter for use within an xsl:stylesheet or xsl:template. Allows specification of a default value. |
xsl:preserve-space | Preserves white space in a document. |
xsl:processing-instruction | Generates a processing instruction in the output. |
msxsl:script * | Defines global variables and functions for script extensions. |
xsl:sort | Specifies sort criteria for node lists selected by xsl:for-each or xsl:apply-templates. |
xsl:strip-space | Strips white space from a document. |
xsl:stylesheet | The document element of a style sheet, containing all other style sheet elements. |
xsl:template | Defines a reusable template for generating the desired output for nodes of a particular type and context. |
xsl:text | Generates text in the output. |
xsl:transform | Synonym for xsl:stylesheet. |
xsl:value-of | Inserts the value of the selected node as text. |
xsl:variable | Specifies a value bound in an expression. |
xsl:when | Provides multiple conditional testing in conjunction with the <xsl:choose element> and <xsl:otherwise element>. |
xsl:with-param | Passes a parameter to a template. |
* Microsoft proprietary extensions to support scripting
See Also
XSLT Reference | XML Stylesheet Language Transformations (XSLT)
Last updated on Saturday, April 10, 2004
© 1992-2003 Microsoft Corporation. All rights reserved.