I may be doing something wrong but <output:indent value='no'/> does not appear to work with fn:serialize Adam let $ve_collectlocations := <collections><collection>{$page:collection_main_private}</collection></col lections> let $parameters := <output:serialization-parameters> <output:method value='xml'/> <output:indent value='no'/> <output:omit-xml-declaration value='yes'/> <output:encoding value='utf-8'/> </output:serialization-parameters> let $vs_result:= <Items>{for $collectlocation in $ve_collectlocations//collection/text() for $collect in collection($collectlocation)/* for $deadline in $collect//Deadline/Open let $irn := ($collect//FIN)[1] let $xs_string:= string(fn:serialize($collect,$parameters)) let $md5 := <md5>{xs:hexBinary(hash:md5($xs_string))}</md5> let $vs_result := <Hit>{md5}</Hit> return $vs_result }</Items> return $vs_result };