То, что вы хотите сделать, это взять фактическое время и вычесть два часа, таким образом создавая виртуальную дневную границу в 02:00, а затем сгруппировать по ней.Это не проверено, но вы можете попробовать:
$x - xs:dayTimeDuration("PT2H")
, где $ x - фактическое время.В результате получается фактическое время минус 2 часа, которое вы затем можете использовать для группировки по.
Вы можете посмотреть на этот сайт , который я нашел путем поиска в Google для "арифметики даты xslt"и где я нашел синтаксис для xs:dayTimeDuration()