Общие функции и операторы

В XPath и XQuery для последовательностей определены следующие общие функции и операторы:

· op:concatenate($seq1 as item()*, $seq2 as item()*) as item()* – сцепляет последовательности, заданные в аргументах в одну последовательность;

· fn:index-of($seqParam as xs:anyAtomicType*, $srchParam as xs:anyAtomicType) as xs:integer* – возвращает последовательность индексов тех элементов последовательности $seqParam, которые равны $srchParam;

· fn:empty($arg as item()*) as xs:boolean – возвращает true, если – пустая последовательность или false – в противном случае;

· fn:exists($arg as item()*) as xs:boolean – возвращает true, если – не пустая последовательность или false – в противном случае;

· fn:distinct-values($arg as xs:anyAtomicType*) as xs:anyAtomicType* – возвращает последовательность, в которых все повторяющиеся элементы, за исключением одного, удалены;

· fn:insert-before($target as item()*, $position as xs:integer, $inserts as item()*) as item()* – возвращает последовательность, в которой в исходную последовательность $target вставлена, начиная с индекса $position, последовательность, заданная в $inserts;

· fn:remove($target as item()*, $position as xs:integer) as item()* – возвращает последовательность, в которой из исходной последовательности $target удален элемент с индексом $position;

· fn:reverse($arg as item()*) as item()* – возвращает последовательность, в которой элементы последовательности $arg переставлены в обратном порядке;

· fn:subsequence($sourceSeq as item()*, $startingLoc as xs:double, $length as xs:double) as item()* – возвращает последовательность, которая является подстрокой последовательности $sourceSeq, начиная с индекса $startingLoc длиной $length (если аргумент $length не задан, подстрока выделяется до конца строки);

· fn:unordered($sourceSeq as item()*) as item()* – возвращает последовательность, в которой элементы последовательности $sourceSeq переставлены в случайном порядке.

 

Примеры использования общих функций и операторов последовательностей:

1. op:concatenate((1,4,8), (3,4,7)) – возвращает последовательность (1,4,8,3,4,7).

2. fn:index-of((1,4,8,3,4,7)) – возвращает последовательность индексов (2,5).

3. fn:empty((2,5)) – возвращает false.

4. fn:exists(()) – возвращает false.

5. fn:distinct-values((1,4,8,3,4,7)) – возвращает (1,4,8,3,7).

6. fn:insert-before((1,4,8,3,7),1,0) – возвращает (0,1,4,8,3,7).

7. fn:remove((0,1,4,8,3,7),2) – возвращает (0,4,8,3,7).

8. fn:reverse((0,4,8,3,7)) – возвращает (7,3,8,4,0).

9. fn:subsequence((0,4,8,3,7),2,3) – возвращает (4,8,3).

10. fn:subsequence((0,4,8,3,7),2) – возвращает (4,8,3,7).

11. fn:unordered ((0,4,8,3,7)) – возвращает (3,0,7,8,4).








Дата добавления: 2015-03-19; просмотров: 618;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.007 сек.