[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Reusing XML content as I publish
Tempore 17:37:18, die 01/28/2005 AD, hinc in
xsl-list@xxxxxxxxxxxxxxxxxxxxxx scripsit Nicola Harlow
<Nicola.Harlow@xxxxxxxxxxxx>:
What I want to do is pick up the text from one of the terms and reuse it elsewhere in the document by referencing just the glossary item "name", and getting the term and definition as part of a 'tooltip.' So you want to create: <html><body> You can then <a href="#" class="tooltip Allocate">Allocate Stuff<span>Stuff about allocations</span></a> resources </body></html> from input xml: <root> <glossary> <alphagroup> <alphahead>A</alphahead> <glossaryitem name="Allocate"> <term>Allocate Stuff</term> <definition> <para>Stuff about allocations</para> </definition> </glossaryitem> </alphagroup> </glossary> <body> You can then <glossarytt name="Allocate" width="200">Allocate</glossarytt> resources </body> </root> That can easily be done with a 'key': e.g. <xsl:stylesheet xmlns:xsl = "http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:output method = "html" indent = "yes"/> <xsl:key name="glossary" match="glossaryitem" use="@name"/> <xsl:template match="/"> <html> <body> <xsl:apply-templates select="root/body"/> </body> </html> </xsl:template> <xsl:template match="glossarytt "> <xsl:apply-templates select="key('glossary',@name)"/> </xsl:template> <xsl:template match="glossaryitem"> <a href="#" class="tooltip {@name}"> <xsl:value-of select="term"/> <span> <xsl:apply-templates select="definition"/> </span> </a> </xsl:template> </xsl:stylesheet> I hope I got it right now...
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|