Subject: [xsl] Prior Instance of term in main text, before first glossary markup From: David Riggs <dariggs@xxxxxxxxxxxxxx> Date: Thu, 28 Oct 2004 15:20:20 +0900 |
I am marking up foreign words so that I can display the Japanese/Chinese characters in my text, but only for only the first usage of a term, and also to have the stylesheet generate a glossary at the end. Cutting and pasting and rewriting, it is easy to forget if I have already "glossed" a term or not, and I cannot figure out a correct xsl test to see if the term is properly marked up the first time it is used. That is to say, I need to test to see if the word has been used before (in document order) in the source tree, before the first glossary markup.
It seems like it should be easy to check with a simple <xsl:if test---> but I do not seem to be able to get it to work, and I do not see anything relevant in the archives.
<p>The Buddhist way is zazen. When first practicing sitting meditation <mygloss><gr>zazen</gr><gk>==Japanese Characters==</gk></mygloss> select a quiet place. </p>
<xsl:template match="mygloss"> <xsl:if test="contains(ancestor::text(), gr) or contains(preceding::text(), gr)"> XXX ERROR-- NOT FIRST USAGE XXX </xsl:if> <!----- rest of template to put in italic, proper font, check for first gloss markup of this word etc --> </xsl:template>
This following test works if the word is not further marked up in the paragraph, but of course it fails to look in end notes and such:
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] How to verify equivalence, Dimtre Novatchev | Thread | RE: [xsl] Prior Instance of term in, Michael Kay |
[xsl] How to verify equivalence of , Matt Adams | Date | RE: [xsl] How to verify equivalence, Michael Kay |
Month |