Вот возможное решение с использованием рекурсивной функции:
declare function local:split($str,$start,$len){
let $res := substring($str,$start,$len)
return if ($res) then ($res,local:split($str,$start + $len, $len)) else $res
};
let $x := "sdlfksldfkjsldfkfjsldkjflskfd"
return local:split($x,1,10)