2010-11-10 3 views
0

Я работаю с таблицами CALS, которые имеют несколько элементов colspec с элементом tgroup в качестве родителя. В XPath 2.0 следующие работы:Работа с наборами узлов в Xpath 1.0

colspec/substring-before(@colwidth , '*') 

В XPath 1.0 он жалуется: Неожиданное лексем - «подстрока-раньше (@colwid»

Там должен быть путь для достижения этой цели мне нужно подвести. значения числа перед знаком, так что я могу преобразовать относительную ширину столбцов в проценты на данный момент в день, я не могу даже думать о безвкусном решении

ответ

2

в XPath 1.0 он жалуется:.. Неожиданный маркера - "substring-before (@colwid"

Это потому, что правильный оператор / не может быть вызовом функции в XPath 1.0 (это функция XPath 2.0!).

Вам необходимо разработать рекурсивный шаблон.

+1

'substring-before (colspec/@ colwidth, '*')' будет работать в XSLT/XPATH 1.0, но, как указывает @Alehandro, для вычисления суммы этих значений потребуется рекурсивный шаблон. –

+0

@Mads Хансен: Спасибо за исправление. – 2010-11-10 13:17:36

Смежные вопросы