Subject: Re: [xsl] Getting the first p inside a div From: Wendell Piez <wapiez@xxxxxxxxxxxxxxxx> Date: Tue, 19 Aug 2008 12:02:11 -0400 |
Cheers, Wendell
I have some footnotes in text coded like this:
<note> <label/> <cit> <p/> </cit> <p/> <p/> </note>
While others are coded like this:
<note> <label/> <p/> <p/> </note>
I have a template which grabs the label and nests it inside the first P in the note.
<xsl:template match="label[parent::note]">
<xsl:element name="a">
<xsl:for-each select="parent::note">
<xsl:attribute name="href">#c_<xsl:value-of select="@id"/></ xsl:attribute>
<xsl:attribute name="name"><xsl:value-of select="@id"/></ xsl:attribute>
<xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute>
</xsl:for-each>
<xsl:text>[</xsl:text>
<xsl:apply-templates/>
<xsl:text>]</xsl:text>
</xsl:element>
<xsl:text> </xsl:text>
</xsl:template>
<xsl:template match="p[ancestor::note][1]" priority="2"> <xsl:element name="p"> <xsl:attribute name="class">note_p</xsl:attribute> <xsl:apply-templates select="ancestor::note/label"/> <xsl:apply-templates/> </xsl:element> </xsl:template>
This works just fine, until I encounter a note coded like this:
<note> <label/> <p/> <cit> <p/> </cit> </note>
Then, I end up with two copies of the same anchor, like this:
<div class="footnote"> <p> <a id="foo" ... >*</a> Footnote here. </p> <div class="cit"> <p> <a id="foo" ... >*</a> Citation here. </p> </div> </div>
I am stuck using XSL 1.0 for this -- is there a way I can choke off my function after it fires the first time inside the note? Is there another way I could be looking at this problem?
Thanks,
Walter
====================================================================== Wendell Piez mailto:wapiez@xxxxxxxxxxxxxxxx Mulberry Technologies, Inc. http://www.mulberrytech.com 17 West Jefferson Street Direct Phone: 301/315-9635 Suite 207 Phone: 301/315-9631 Rockville, MD 20850 Fax: 301/315-8285 ---------------------------------------------------------------------- Mulberry Technologies: A Consultancy Specializing in SGML and XML ======================================================================
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Getting the first p inside a , Walter Lee Davis | Thread | Re: [xsl] Getting the first p insid, Walter Lee Davis |
Re: [xsl] Re: [FO] Margin when a bl, G. Ken Holman | Date | Re: [xsl] Getting the first p insid, Walter Lee Davis |
Month |