In the for-each, did you try printing out the value of "."?
Not sure about this, but I think the string value of
"admissions/state/text()" will include the value of the child
<statelink> element as well.
Try removing the text() node test. So:
<xsl:for-each select="admissions/state">
Kevin
<?xml version="1.0" encoding="UTF-8"?>
<admissions>
<state>Alabama
<statelink
href="http://www.alabar.org/page.cfm?view=3&subgroup=main">
Bar Admissions Information</statelink>
</state>
<xsl:for-each select="admissions/state/text()">
<xsl:if test=".=$state">
<xsl:value-of select="."/>
</xsl:if>
</xsl:for-each>
The if never evalutes to true even if it is testing
Alabama=Alabama. I can print the value of the parameter using
<xsl:value-of select="$state"/> just fine
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list