Как говорит Мартин.
В XPath 2.0 существуют крайние случаи, когда число (строка (.)) Не совпадает с числом (.), Например, если элемент контекста является экземпляром xs: gYear, тогда число (.) не будет выполнено, но число (строка (.)) будет успешным;наоборот, если элемент контекста является логическим, число (.) преобразует true в 1 и false в 0, а число (string (.)) преобразует оба в NaN.Но маловероятно, что эти крайние случаи важны для вашего приложения.