xsl-list
[Top] [All Lists]

RE: Parent of context node

2003-05-23 02:13:59
../sg tests if the parent has a child called sg.

you want test="parent::sg"

Michael Kay

-----Original Message-----
From: owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com 
[mailto:owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com] On Behalf Of 
Chris Loschen
Sent: 22 May 2003 21:30
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] Parent of context node


Hi, all!

I'm sure I'm missing something obvious, but I'm staring at 
this and can't 
see why it isn't working.

I have XML like this:

<e eid="e19"><hg><hw>a</hw><hom>1</hom> <vg><var>an</var> 
before a vowel 
sound</vg><infg><inf>a</inf><inf>an</inf></infg></hg><sg><se1>
<pos>determiner</pos> 
<b>1.</b> used when mentioning someone or something for the 
first time; the 
indefinite article. <b>2.</b> one single: <i>a hundred.</i> <b>3.</b> 
someone like (the name specified). <b>4.</b> per: <i>typing 
60 words a 
minute.</i></se1> <etym>Old English.</etym></sg></e>

The template in question looks like this:

<xsl:template match="etym">
         <xsl:choose>
                 <xsl:when test="../sg">
                         <br /><span 
class="etym">ORIGIN:</span>&#xA0;<xsl:apply-templates />
                 </xsl:when>
                 <xsl:otherwise>
                         <tei-ms:etym>
                                 <xsl:text>[</xsl:text>
                                 <xsl:apply-templates />
                                 <xsl:text>] </xsl:text>
                         </tei-ms:etym>
                 </xsl:otherwise>
         </xsl:choose>
</xsl:template>

I want the "Old English" from the XML to trigger the first condition 
because its immediate parent is <sg> -- I
have other cases where <etym> is further down in the 
hierarchy, and for 
those, I want the square brackets
instead. But every time I'm getting the square brackets (the 
"otherwise" 
condition) instead. Am I wrong that
"../sg" should be true if the immediate parent of the context 
node is <sg>? 
What am I missing?

Thanks!


--Chris

--------------------------------------------------------------
--------------------------
Texterity ~ XML and PDF ePublishing Services
--------------------------------------------------------------
--------------------------
Chris Loschen, XML Developer
Texterity, Inc.
144 Turnpike Road
Southborough, MA 01772 USA
tel: +1.508.804.3033
fax: +1.508.804.3110
email: loschen(_at_)texterity(_dot_)com
http://www.texterity.com/ 


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



<Prev in Thread] Current Thread [Next in Thread>