Операторы сравнения
В XPath и XQuery для продолжительности, дат и времени определены следующие операторы сравнения:
· op:yearMonthDuration-less-than($arg1 as xs:yearMonthDuration, $arg2 as xs:yearMonthDuration) as xs:Boolean – возвращает true только в том случае, если $arg1 меньше $arg2, в противном случае возвращает false;
· op:yearMonthDuration-greater-than($arg1 as xs:yearMonthDuration, $arg2 as xs:yearMonthDuration) as xs:boolean – возвращает true только в том случае, если $arg1 больше $arg2, в противном случае возвращает false;
· op:dayTimeDuration-less-than($arg1 as xs:dayTimeDuration, $arg2 as xs:dayTimeDuration) as xs:boolean – возвращает true только в том случае, если $arg1 меньше $arg2, в противном случае возвращает false;
· op:dayTimeDuration-greater-than($arg1 as xs:dayTimeDuration, $arg2 as xs:dayTimeDuration) as xs:boolean – возвращает true только в том случае, если $arg1 больше $arg2, в противном случае возвращает false;
· op:duration-equal($arg1 as xs:duration, $arg2 as xs:duration) as xs:boolean – возвращает true только в том случае, если компоненты xs:yearMonthDuration и xs:dayTimeDuration в $arg1 и $arg2 равны друг другу, в противном случае возвращает false;
· op:dateTime-equal($arg1 as xs:dateTime, $arg2 as xs:dateTime) as xs:boolean – возвращает true только в том случае, если $arg1 и $arg2 равны друг другу, в противном случае возвращает false;
· op:dateTime-less-than($arg1 as xs:dateTime, $arg2 as xs:dateTime) as xs:boolean – возвращает true только в том случае, если $arg1 меньше $arg2, в противном случае возвращает false;
· op:dateTime-greater-than( $arg1 as xs:dateTime, $arg2 as xs:dateTime) as s:boolean – возвращает true только в том случае, если $arg1 больше $arg2, в противном случае возвращает false;
· op:date-equal($arg1 as xs:date, $arg2 as xs:date) as xs:boolean – возвращает true только в том случае, если $arg1 равен $arg2, в противном случае возвращает false;
· op:date-less-than($arg1 as xs:date, $arg2 as xs:date) as xs:boolean – возвращает true только в том случае, если $arg1 меньше $arg2, в противном случае возвращает false;
· op:date-greater-than($arg1 as xs:date, $arg2 as xs:date) as xs:boolean – возвращает true только в том случае, если $arg1 больше $arg2, в противном случае возвращает false;
· op:time-equal($arg1 as xs:time, $arg2 as xs:time) as xs:boolean – возвращает true только в том случае, если $arg1 и $arg2, преобразованные к типу xs:dateTime, равны друг другу, в противном случае возвращает false;
· op:time-less-than($arg1 as xs:time, $arg2 as xs:time) as xs:boolean – возвращает true только в том случае, если для $arg1 и $arg2, преобразованных к типу xs:dateTime, выполняется отношение $arg1 меньше $arg2, в противном случае возвращает false;
· op:time-greater-than($arg1 as xs:time, $arg2 as xs:time) as xs:boolean – возвращает true только в том случае, если для $arg1 и $arg2, преобразованных к типу xs:dateTime, выполняется отношение $arg1 больше $arg2, в противном случае возвращает false;
· op:gYearMonth-equal($arg1 as xs:gYearMonth, $arg2 as xs:gYearMonth) as xs:boolean – возвращает true только в том случае, если $arg1 и $arg2, преобразованные к типу xs:dateTime, равны друг другу, в противном случае возвращает false;
· op:gYear-equal($arg1 as xs:gYear, $arg2 as xs:gYear) as xs:boolean – возвращает true только в том случае, если $arg1 и $arg2, преобразованные к типу xs:dateTime, равны друг другу, в противном случае возвращает false;
· op:gMonth-equal($arg1 as xs:gMonth, $arg2 as xs:gMonth) as xs:boolean – возвращает true только в том случае, если $arg1 и $arg2, преобразованные к типу xs:dateTime, равны друг другу, в противном случае возвращает false;
· op:gDay-equal($arg1 as xs:gDay, $arg2 as xs:gDay) as xs:boolean – возвращает true только в том случае, если $arg1 и $arg2, преобразованные к типу xs:dateTime, равны друг другу, в противном случае возвращает false.
Примеры использования операторов сравнения для продолжительности, дат и времени:
1. op:yearMonthDuration-less-than (xs:yearMonthDuration("P2Y"), xs:yearMonthDuration("P1Y11M")) – возвращает true.
2. op:dayTimeDuration-greater-than(xs:dayTimeDuration ("PT10D"), xs:dayTimeDuration ("PT10D11H")) – возвращает false.
3. op:duration-equal(xs:duration("PT10D"), xs:duration("PT9D24H")) – возвращает true.
4. op:dateTime-less-than(xs:dateTime("2002-05-12T00:00:00"),
xs:dateTime("2002-05-12T12:00:00")) – возвращает true.
5. op:date-equal(xs:date("2007-12-30"),
xs:date("2007-12-29")) – возвращает false.
6. op:time-less-than(xs:time("10:15:00"),
xs:time("12:00:40")) – возвращает true.
7. op:gYearMonth-equal(xs:gYearMonth("2005-09"),
xs:gYearMonth("2005-09")) – возвращает true.
8. op:gYear-equal(gYear("2005"),
gYear("2004")) – возвращает false.
9. op:gMonth-equal(xs:gMonth("-12-"),
Xs:gMonth("-09-")) – возвращает false.
10. op:gDay-equal(xs:gDay("-15"),
xs:gDay("-15")) – возвращает true.
Дата добавления: 2015-03-19; просмотров: 725;