[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: Can you apply a template match on a copy node?

Subject: Re: Can you apply a template match on a copy node?
From: Joerg Heinicke <joerg.heinicke@xxxxxx>
Date: Mon, 23 Sep 2002 00:44:55 +0200
xalan.exe download
Hi Mike,

another possibility is a strongly parameterized named template.

An example:

<xsl:template match="myNode">
  <html>
    <body>
      <table>
        <tr>
          <xsl:call-template name="td">
            <xsl:with-param name="attributes" select="@*"/>
            <xsl:with-param name="content" select="node()"/>
            <xsl:with-param name="width" select="500"/>
            <xsl:with-param name="bgcolor" select="red"/>
          </xsl:call-template>
        </tr>
      </table>
    </body>
  </html>
</xsl:template>

<xsl:template match="td" name="td">
  <xsl:param name="attributes" select="@*"/>
  <xsl:param name="content" select="node()"/>
  <xsl:param name="width" select="500"/>
  <xsl:param name="bgcolor" select="red"/>
  <td width="{$width}" bgcolor="{$bgcolor}">
    <xsl:apply-templates select="$attributes"/>
    <xsl:apply-templates select="$content"/>
  </td>
</xsl:template>

But this can be sometimes really difficult to handle.

Regards,

Joerg


Mike Carlisle wrote:
Hi Joerg,

I'm just experimenting with ways of using xml/xsl. Sure I could use css, but
I prefer keeping things clean and maintainable from one file. I'm a great
believer in a clear seperation between data and layout, and the simplier I
can find ways to control the styling the better, which is why I was hoping
to do away with css altogether and use xsl templates for everything.

I'm using a server-side asp transform for the processing, so any use of
xsl/xml needs to be very efficient to compete with a pure asp scripted
solution.

Mike

--- Original Message -----
From: "Joerg Heinicke" <joerg.heinicke@xxxxxx>
To: <xsl-list@xxxxxxxxxxxxxxxxxxxxxx>
Sent: Sunday, September 22, 2002 8:48 PM
Subject: Re:  Can you apply a template match on a copy node?



Hi Mike,

if you really want to style every <td> in the same way, why don't you
want to use CSS?

td {
    width: 500px;
    background-color: red;
}

If not, what's your processing framework? In Cocoon for example a 2 step
transformation would be really easy. More information on xalan:nodeset()
you can find at

http://xml.apache.org/xalan-j/extensionslib.html#ex-nodeset.


Regards,

Joerg

Mike Carlisle wrote:

Hi Joerg,

The reason for wanting to process <td> in a seperate match was that it

could

be used to define a style for <td> in one place, and one place only.

Whether

the <td> was in the xml or written by another match I wanted one place

where

it's attributes could be set generically, a bit like using xsl as a css.

I'm not that familar with extensions used in Michael Kay's approach. Am

I

right in thinking that to use node-set I need to install something like
Xalan.exe, and this will then pass a string back into a node set? How do
these extensions effect efficiency of the tranform? I've been told

xsl/xml

transforms are already fairly processor intensive compared to something

like

a pure asp solution, so am a bit reluctent to start complicating the

process

further with external calls. Dooes anyone know of or have any good bench
marks?

Cheers,

Mike


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



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




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


Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.