Re: [xsl] generating mailto

Subject: Re: [xsl] generating mailto
From: "G. Ken Holman" <gkholman@xxxxxxxxxxxxxxxxxxxx>
Date: Fri, 11 Oct 2002 14:01:02 -0400
At 2002-10-11 01:42 -0400, Steve Salkin wrote:
I'm just getting my feet wet in XSL and it's pretty interesting. I think
I am missing something though,

Yes, you are treating XSLT as an "angle-bracket processor" when, in fact, it is a "node tree processor".


You need to represent the node tree structure of your result in the node tree structure of your stylesheet ... see http://www.biglist.com/lists/xsl-list/archives/200210/msg00411.html for a recent post where I try to emphasize this point.

Don't try to construct the resulting syntax, because your objective as a stylesheet writer isn't to build syntax, but to build structure.

...
For example, if I have XML
<contact>
  <email>xxx@xxxxxxxxx</email>
</contact>

and I want to generate a mailto URI like this:
<a href="xxx@xxxxxxxxx>xxx@xxxxxxxxx</a>

In the example below I am using an attribute value template in the href attribute to evaluate the value of the <email> child of the <contact> element, and the <xsl:value-of> instruction to get at the same content for the canvas.


I hope this helps.

............... Ken

T:\ftemp>type salkin.xml
<contact>
  <email>xxx@xxxxxxxxx</email>
</contact>

T:\ftemp>type salkin.xsl
<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
                version="1.0">

<xsl:template match="contact">
  <td class="contact">
    <a href="mailto:{email}";>
       <xsl:value-of select="email"/>
    </a>
  </td>
</xsl:template>

</xsl:stylesheet>

T:\ftemp>xt salkin.xml salkin.xsl
<?xml version="1.0" encoding="utf-8"?>
<td class="contact"><a href="mailto:xxx@xxxxxxxxx";>xxx@xxxxxxxxx</a></td>
T:\ftemp>


-- G. Ken Holman mailto:gkholman@xxxxxxxxxxxxxxxxxxxx Crane Softwrights Ltd. http://www.CraneSoftwrights.com/s/ Box 266, Kars, Ontario CANADA K0A-2E0 +1(613)489-0999 (F:-0995) ISBN 0-13-065196-6 Definitive XSLT and XPath ISBN 0-13-140374-5 Definitive XSL-FO ISBN 1-894049-08-X Practical Transformation Using XSLT and XPath ISBN 1-894049-10-1 Practical Formatting Using XSL-FO Next public training: 2002-12-08,2003-02-03,06,03-03,06


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



Current Thread