Modules | Implementer Page: exsl.document.html Element Syntax<exsl:document href = { uri-reference } method = { "xml" | "html" | "text" | qname-but-not-ncname } version = { nmtoken } encoding = { string } omit-xml-declaration = { "yes" | "no" } standalone = { "yes" | "no" } doctype-public = { string } doctype-system = { string } cdata-section-elements = { qnames } indent = { "yes" | "no" } media-type = { string }> <-- Content: template --> </exsl:document>
The <xsl:template match="/"> <html> <head><title>Frame example</title></head> <frameset cols="20%, 80%"> <frame src="toc.html"/> <exsl:document href="toc.html"> <html> <head><title>Table of Contents</title></head> <body> <xsl:apply-templates mode="toc" select="*"/> </body> </html> </exsl:document> <frame src="body.html"/> <exsl:document href="body.html"> <html> <head><title>Body</title></head> <body> <xsl:apply-templates select="*"/> </body> </html> </exsl:document> </frameset> </html> </xsl:template>
The attributes on
Normally, Documents involved in XSLT processing can be divided into two categories.
One category contains the documents that the XSLT processor constructs by instantiating templates; these are the main result document, subsidiary documents created by
The other category contains the documents constructed by parsing or other processes external to the XSLT processor; these are the main source document and documents returned by the
With each document in the former category, an XSLT processor associates a possibly empty set of subsidiary documents. The relationship between a document and its associated subsidiary documents thus organizes documents in this category into one or more unordered trees, where the associated subsidiary documents of a document are considered the children of that document. The main result document is the root of one such tree; the documents created by variable-binding elements with content are the roots of the other trees. Each subsidiary document created by an
During the processing of a stylesheet, there is a current result document; initially this is the main result document; the current result document is changed by the
NOTE: The
Issue (message-document): What should happen if exsl:document occurs inside
When a root node is copied with Output conceptually follows the construction of the main result document and any subsidiary documents. The XSLT processor outputs the main result document and its associated subsidiary documents; when the XSLT processor outputs a subsidiary document it also recursively outputs its associated subsidiary documents. Apart from this, no other subsidiary documents are output. A subsidiary document associated with the document created by a variable-binding element with content is not output; only copies created by the copying of the root node of that document are ever output.
For each document that is output, there is an absolute URI that can, in the appropriate circumstances, be used to access that document. Call this the output URI of the document. The output URI of the main result document is system-dependent, typically specified when the XSLT processor is invoked. When the NOTE: The output URI of a document is not dependent on the base URI of the root node of the document. It is an error if the set of documents to be output as the result of a single XSLT transformation (that is, the main result document and its subsidiary documents recursively) contain two documents with the same output URI. Implementations
The following XSLT processors support
There are currently no third-party implementations of |
http://www.exslt.org/exsl/elements/document/index.html last modified 2001-08-15