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(_at_)email(_dot_)com</email>
</contact>
and I want to generate a mailto URI like this:
<a href="xxx(_at_)email(_dot_)com>xxx(_at_)email(_dot_)com</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(_at_)email(_dot_)com</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(_at_)email(_dot_)com">xxx(_at_)email(_dot_)com</a></td>
T:\ftemp>
--
G. Ken Holman mailto:gkholman(_at_)CraneSoftwrights(_dot_)com
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