Трудно сказать наверняка, основываясь на примере XML и небольшом фрагменте XSL, но похоже, что контекст, в котором вы используете xsl:value-of
, равен DependentInfo
.Используя //LastName
в функции translate()
, вы указываете процессору выбрать любой LastName
в XML.(В этом случае, кажется, выбирается первое вхождение LastName
в PersonalInfo
.)
Попробуйте удалить //
из вашего xsl:value-of
:
<xsl:value-of select="translate(LastName, $smallcase, $uppercase)" />
Еслиэто не работает, попробуйте опубликовать больше вашего XSL для нас, чтобы посмотреть.