element flatval { fs:item-sequence-to-node-sequence( let $s := let $fs:v1 := fs:promote-to-anystring( fs:convert-simple-operand(fn:data("seq.xml"), "") ) return doc($fs:v1) return fs:distinct-docorder-or-atomic-sequence( let $fs:sequence := fs:node-sequence( fs:distinct-docorder-or-atomic-sequence( let $fs:sequence := fs:node-sequence( fs:distinct-docorder-or-atomic-sequence( let $fs:sequence := fs:node-sequence($s), $fs:last := fn:count($fs:sequence) for $fs:dot at $fs:position in $fs:sequence return child::seqval ) ), $fs:last := fn:count($fs:sequence) for $fs:dot at $fs:position in $fs:sequence return child::book ) ), $fs:last := fn:count($fs:sequence) for $fs:dot at $fs:position in $fs:sequence return child::author ) ) }