У меня есть XML как
<emps>
<emp id='3432'>
<fname>Jack</fname>
<lname>Dawson</lname>
<emp>
<emp id='1122'>
<fname>Jack</fname>
<lname>Thompson</lname>
<emp>
<emps>
Я занимаюсь разработкой веб-приложения, которое выполняет поиск в этом XML-файле на основе введенного имени и выводит результирующую страницу. Чтобы добиться этого, я написал xslt для преобразования XML в HTML на основе входной строки поиска, которая передается как переменная с именем srchStr.
<xsl:template match="employees">
<xsl:for-each select="emp[fname=$srchStr]">
<tr>
<xsl:variable name="id">
<xsl:value-of select="@id" />
</xsl:variable>
<td>
<a href='detailSearch.do?id={$id}'>
<xsl:value-of select="fname" />
,
<xsl:value-of select="lname" />
</a>
</td>
</tr>
</xsl:for-each
</xsl:template>
Но пользователь может ввести имя в верхнем или нижнем регистре. Итак, как преобразовать имя внутри тега xml fname в нижний регистр и выполнить сравнение?
Может кто-нибудь поместить фрагмент кода для использования fn:lower-case
внутри моего xsl.