Вопрос
Можно ли сделать в xslt эквивалент следующего:
.//TagA[./TagB/[@AttrA='AttrAValue'] = 'TagBValue']
Ошибка в Visual Studio 2008 со следующей ошибкой:
error: Unexpected token '[' in the expression.
.//TagA[./TagB/ -->[<-- @AttrA='AttrAValue'] = 'TagBValue']
Должно ли это работать? Это проблема в реализации MS XSLT, или есть способ, которым я могу получить все узлы TagA, у которых есть узел TagB, AttrA которого равен AttrAValue, и чей внутренний тег TagB равен TagBValue.
Решение
Я думаю, вам нужно что-то перед тем, как обидеть [, чтобы выбрать набор узлов, чтобы затем применить фильтр атрибутов.
Если подумать, тебе вообще нужен / перед обидчиком [?
Другие советы
Спасибо, Си, ты прав. Следующее сработало:
.//TagA[./TagB[@AttrA='AttrAValue'] = 'TagBValue']
Я буду винить это рано утром!
Не связан с StackOverflow