В XQuery дата представлена в формате ISO: гггг-мм-дд.Чтобы ваш запрос был скомпилирован, вы хотите преобразовать его в:
{xs:dateTime(xs:date('2004-12-12'))}
, но затем получите результат
2004-12-12T00:00:00
, который, я не думаю, вы ищете.
Разве вы не можете просто сделать это?
concat(substring($date, 7, 2), substring($date, 5, 2), substring($date, 1, 4))