[Bug 4979] [XSLT 2++] Enhancement: declare default identity template

http://www.w3.org/Bugs/Public/show_bug.cgi?id=4979

           Summary: [XSLT 2++] Enhancement: declare default identity
                    template
           Product: XPath / XQuery / XSLT
           Version: Recommendation
          Platform: PC
        OS/Version: Windows XP
            Status: NEW
          Severity: enhancement
          Priority: P2
         Component: XSLT 2.0
        AssignedTo: mike@saxonica.com
        ReportedBy: mike@saxonica.com
         QAContact: public-qt-comments@w3.org


During discussion of streaming use cases, the XSL WG identified that it would
help both users and implementors if the stereotypical use of the identity
template to override the standard built-in template(s) could be expressed more
declaratively.

For example, one might have an attribute at xsl:stylesheet level, or a per-mode
declaration such as

<xsl:mode name="mode-name"
  default-action="copy|copy-text|delete|continue|error"/>

where "copy-text" is the current default (copy text nodes only, drop everything
else), "copy" means copy all nodes (the so-called identity template), "delete"
means delete the entire subtree rooted at the node, "continue" means
apply-templates to the children, and "error" means throw a dynamic error; with
the default applying to the named mode or in the absence of a mode-name to the
default mode.

It was also noted that a common stereotype for the default template is to
rename elements, and perhaps we should also provide for this.

Received on Thursday, 23 August 2007 13:39:15 UTC