XSLT Component

Name: [p:]xslt

Description:

The xslt component applies an XSLT transformation supplied by the input to
the
'transform' port to the document(s) provided on the 'source' port. It
produces a
sequence of documents on its 'result' port that are the result of applying
the
transformation to the source.

This component allows both XSLT 1.0 and 2.0 transformations but
implementations
are only required to support XSLT 1.0.  An implementations are allowed to
use and
XSLT 2.0 processor to run an XSLT 1.0 transformation but a warning must be
issued.
Such behavior may produce non-interoperable results due to the XSLT 2.0backwards
compatibility rules.

When the version is 1.0, only a single source document may be specified.  It
is an
dynamic error to provide a sequence to an XSLT 1.0 transformation.

XSLT 2.0 allows a collection of documents to be specified.  If the
invocation specifies
an initial template, the context item will not be set and the collection()
function will
return the source documents as a sequence of document items.  Otherwise, the
first
document in the sequence will initiate the transformation and the rest of
the documents
will be available via the document() function.

When an XSLT 1.0 processor is used, the [p:]mode and [p:]template parameters
have
no effect on an XSLT 1.0 processor.

If the serialization method is 'text', 'html', or some other non-XML media
type, the
result is encoded via this specifications data encoding rules.

All of the specified parameters are made available to the XSLT processor.
This includes
any parameters used by this component (e.g. [p:]mode).

If the XSLT processor signals a error, the component fails.

[ed note: we could say a dynamic error.  I'd rather have a way to embed such
results.
             See next e-mail]

Inputs:

   source:  A sequence of documents.
      The document(s) to transform.  If the transformation is an XSLT
version 1.0,
      only one document is allowed.  For XSLT 2.0, a sequence of document is
      converted into a collection.
   transform:  A single document
      The input to copy to the output.

Outputs:

   result:  A sequence of documents.
      A copy of the input to the 'source' input port.

Parameters:
   [p:]mode: optional
      The name of the initial mode.
   [p:]template: optional
      The name of the initial template
   (any)
      A stylesheet parameter.


Note that this parameter names are qualified so that they do not conflict
with
stylesheet parameters.


-- 
--Alex Milowski
"The excellence of grammar as a guide is proportional to the paucity of the
inflexions, i.e. to the degree of analysis effected by the language
considered."

Bertrand Russell in a footnote of Principles of Mathematics

Received on Wednesday, 31 January 2007 17:16:13 UTC