XPath : Faire un uppercase sur une chaine de caractères

C’est un peu grossier, mais pratique, notamment dans les formulaires Infopath :
translate("ma_chaine", "abcdefghijklmnopqrstuvwxyz", "ABCDEFGHIJKLMNOPQRSTUVWXYZ")
Pour mettre en majuscule seulement la première lettre :
concat(translate(substring("ma_chaine", 1, 1), "abcdefghijklmnopqrstuvwxyz", "ABCDEFGHIJKLMNOPQRSTUVWXYZ"), substring("ma_chaine", 2))