declare namespace f="http://www.parsqube.de";
declare function f:prettyNode($n as node()) as node()? {
copy $n_ := $n
modify delete nodes $n_//text()[not(matches(., '\S'))][../*]
return $n_
};
let $doc := doc('doc.xml')
let $dnode1 := $doc
let $dnode2 := f:prettyNode($dnode1)
let $enode1 := $doc/*
let $enode2 := f:prettyNode($enode1)
return (
'Input document base URI: '||$dnode1/base-uri(.),
'Output document base URI: '||$dnode1/base-uri(.),
'',
'Input element base URI: '||$enode1/base-uri(.),
'Output element base URI: '||$enode2/base-uri(.)
)