Subject: RE: [xsl] xsl: Changing the order of presenation From: "Brent Kobayashi" <brent@xxxxxxxxxxxx> Date: Mon, 19 Mar 2001 09:52:24 -0500 |
> 1. I need to give hyperlinks from each page to the figures that > appear in it-- > I do not want to show the picture in line, but want to > give a hyperlink; > The filename of the figure is stored in a tag > that looks > like > <fig>figname</fig> > How do I do this? OK, how's this look: Given: ~~~~~~ <para>This is an image file: <fig>image1.jpg</fig> that we would like to like to link to </para> Then the xsl (excerpt): ~~~~~~~~~~~~~~~~~~~~~~~ <xsl:template match="para"> <p><xsl:apply-templates/></p> </xsl:template> <xsl:template match="fig"> <xsl:variable name="figure"><xsl:value-of select="."/></xsl:variable> <a href="{$figure}"><xsl:apply-templates/></a> </xsl:template> Gives: ~~~~~~ This is an image file: image1.jpg that we would like to like to link to With: ~~~~~ the text: 'image1.jpg' being a hypertext link to the file 'image1.jpg' Some thoughts: ~~~~~~~~~~~~~~ - I'm not sure if there's another way other then using variables, but it seemed the only way to get the value of "fig" into the href attribute. - You can probably: 1) get it so that you have <fig>image1</fig> which produces <a href="image1.jpg"... jpg being hardcoded. or 2) do: <fig type="jpg">image1</fig> But I'm too new to this to figure it out quickly. - Beware: I've only been doing XSL(T) for a week, and have probably messed up some stuff. But this was a good excercise, if only it helped myself! :) The full xsl: ~~~~~~~~~~~~~ <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format"> <xsl:template match="/"> <html> <head> <title>Image Link</title> </head> <body> <h1>Image Link</h1> <xsl:apply-templates/> </body> </html> </xsl:template> <xsl:template match="para"> <p><xsl:apply-templates/></p> </xsl:template> <xsl:template match="fig"> <xsl:variable name="figure"><xsl:value-of select="."/></xsl:variable> <a href="{$figure}"><xsl:apply-templates/></a> </xsl:template> </xsl:stylesheet> Cheers, Brent Kobayashi Technology - High quality computer training, development and support http://www.kobayashi.ca/ MEDUSA creative e-services http://www.medusacreative.com/ 2889A Danforth Ave Toronto, Ontario M4C 1M3 Phone: 416 410-3266 Fax: 416 694-5495 XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] xsl: Changing the order of pr, Madhavi Ganapathiraj | Thread | Re: [xsl] xsl: Changing the order o, David Carlisle |
Re: [xsl] variable declaration, Ines . Klimann | Date | RE: [xsl] variable declaration, Linda van den Brink |
Month |