Можно ли избежать текущего предиката XPath, чтобы получить значение, содержащее предикат? - PullRequest
4 голосов
/ 01 февраля 2012

Это будет лучше всего проиллюстрировано на примере:

Я ищу имя основного префикса с предком, который содержит что-то с SEARCH_KEY в имени, это работает хорошо.

//PrimaryExpression/PrimaryPrefix/Name [
    ancestor::MethodDeclaration//Something/Something[contains(@Image,'SEARCH_KEY')]

]

Есть ли способ для SEARCH_KEY быть свойством Image элемента Name?

1 Ответ

2 голосов
/ 01 февраля 2012

В XPath 1.0 невозможно определить и ссылаться на переменные диапазона .

В XPath 2.0 можно использовать выражение for вот так :

//PrimaryExpression
  /PrimaryPrefix
     /Name 
       [for $key in @someNameAttrib 
         return
            ancestor::MethodDeclaration
                       //Something/Something
                         [contains(@Image, $key)]  
       ] 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...