RE: [xsl] XHTML templating (best method)

Subject: RE: [xsl] XHTML templating (best method)
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Fri, 26 Jan 2007 16:03:13 -0000
> That would be a better way around but I can't see a way to 
> wrap the page-specific stylesheets in the common one without 
> breaking the common stylesheet in two stylesheets, top and 
> bottom, or am I missing the point.

Something like this:

[specialCase.xsl]

<xsl:stylesheet>
 
<xsl:import href="generalCase.xsl"/>

<xsl:template match="/" mode="page-specific">
  ... generate page-specific content ...
</xsl:template>

</xsl:stylesheet>

[generalCase.xsl]

<xsl:stylesheet>
 
<xsl:import href="generalCase.xsl"/>

<xsl:template match="/">
  <boilerplate>
    <xsl:apply-templates select="." mode="page-specific"/>
  </boilerplate>
</xsl:template>

</xsl:stylesheet>

The detail can vary, depending on how much common structure there is between
the different XML source documents. As shown above, it works with no common
structure at all: the only thing the general-purpose stylesheet does it to
wrap a standard boilerplate around the page-specific output.

Michael Kay
http://www.saxonica.com/

Current Thread