Вы должны иметь хотя бы некоторые базовые знания / понимание XPath .
Я видел использование .
в начале оператора внутри [] в некоторых
пример кода. для чего они используются?
[]
называется предикатом . Он должен содержать логическое выражение. Это должно немедленно следовать за тестом узла. Это определяет дополнительное условие для узла, который удовлетворяет выбранному тесту узла.
Например :
/*/num
выбирает все элементы с именем num
, которые являются дочерними элементами верхнего элемента XML-документа.
Однако, если мы хотим выбрать только такие num
элементы, значение которых является нечетным целым числом, мы добавляем это дополнительное условие в предикат:
/*/num[. mod 2 = 1]
Теперь это последнее выражение выбирает все элементы с именем num
, которые являются дочерними элементами верхнего элемента XML-документа и , строковое значение которого представляет нечетное целое число.
.
обозначает узел контекста - это узел, который был выбран до сих пор (или начальный узел, с которого оценивается полное выражение XPath).
В моем конкретном случае мне нужно объединить следующие части вместе ...
Вы забыли сказать, каким образом / как должны сочетаться три выражения. В XPath некоторые из часто используемых «комбинаторов» - это операторы and
, or
и функция not()
.
.
Например, если вы хотите выбрать элементы, которые выбираются с помощью всех трех предоставленных выражений XPath, вы можете использовать оператор and
:
//PrimaryExpression
[not(PrimarySuffix/Arguments)
and
PrimaryPrefix/@Label='this'
]