[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

RE: XSLT design good practice


Subject: RE: XSLT design good practice
From: Matthew Bentley <Matthew.bentley@xxxxxxxxxxxxxx>
Date: Fri, 25 Aug 2000 10:59:13 +1200

> I'm thinking of issues such as use of named templates, parameters and
> variables, importing/including and so on, and how would these 
> map against
> programming objectives such as maintainability, maximum 
> re-use, simplicity,
> economy of code and so on.

When manipulating subelements within a particular element, make a separate
template for the subelement rather than completing the manipulation from
within the element template, except when the occasion demands it. E.g:

For <list>
	<item>
	<item>
	<item>

Where the third item is to have some specific behaviour:

<xsl:template match="list">
	<xsl:apply-templates select="@*" />
	<xsl:apply-templates />
</xsl:template>

<xsl:template match="item[position() = 3]">
	.... etc>

Rather than:

<xsl:template match="list">
	<xsl:apply-templates select="@*" />
	<xsl:for-each select="item">
		<xsl:if test="position() = 3>
	... etc
	</xsl:for-each>
</xsl:template>

This approach makes complex restructuring and script updating simpler, in my
experience -
Matt
******************************************************************
Warning: This email, including any attachments, 
is for the use of the intended recipient(s) only.
Republication and redissemination, 
including posting to news groups or web pages, 
is strictly prohibited without the express prior consent of Brooker's Limited.
******************************************************************


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



Current Thread