Выражения отношения
Выражения отношения используются для сравнения двух значений. Результатом выражения отношения является булевское значение true или false. В XPath определены три типа выражений сравнения:
· сравнение значений;
· общее сравнение;
· сравнение узлов.
Сравнение значений производится для двух одиночных значений и использует следующие операторы отношения:
· gt – больше;
· lt – меньше;
· ge – больше или равно;
· le – меньше или равно;
· eq – равно;
· ne – не равно.
Примеры сравнения значений:
1. 5 gt 3 – равно true.
2. 5 ne 5 – равно false.
3. 5 eq 5 – равно true.
4. 5 ge 5 – равно true.
При общем сравнении операнды сначала преобразуются в данные одного типа, а затем сравниваются как при сравнении значений. Если операнды содержат списки, сравнение значений выполняется для каждого элемента списка. Для общего сравнения определены следующие операторы отношения:
· > – больше;
· < – меньше;
· >= – больше или равно;
· <= – меньше или равно;
· = – равно;
· != – не равно.
Примеры общего сравнения:
1. 5 > 3 – равно true.
2. (1,2) = (2,3) – равно true.
3. (1,2) = (3,4) – равно false.
4. (1,2) != (2,3) – равно true.
Для сравнения узлов определены следующие операторы:
· is – проверка узлов-операндов на равенство;
· << – проверка на предшествование первого узла-операнда второму узлу-операнду;
· >> – проверка на предшествование второго узла-операнда первому узлу-операнду.
Примеры сравнения узлов:
1. /book-description/book/publisher [@genre="классика"] is
/book-description/book/publisher[@year="2005"] – равно true, если для элемента publisher значение атрибута genre равно "классика" и значение атрибута year равно "2005".
2. /book-description/book/publisher[@year="2005"] <<
/book-description/book/publisher[@year="2006"] – равно true, если для элемент publisher со значением атрибута year, равным "2005", предшествует элементу publisher со значением атрибута year, равным "2006".
Дата добавления: 2015-03-19; просмотров: 541;