element bib { fs:item-sequence-to-node-sequence( for $b in fs:distinct-docorder-or-atomic-sequence( let $fs:sequence := fs:node-sequence( fs:distinct-docorder-or-atomic-sequence( let $fs:sequence := fs:node-sequence( let $fs:v1 := fs:promote-to-anystring( fs:convert-simple-operand(fn:data("bib.xml"), "") ) return doc($fs:v1) ), $fs:last := fn:count($fs:sequence) for $fs:dot at $fs:position in $fs:sequence return child::bib ) ), $fs:last := fn:count($fs:sequence) for $fs:dot at $fs:position in $fs:sequence return child::book ) order by fn:data( fs:distinct-docorder-or-atomic-sequence( let $fs:sequence := fs:node-sequence($b), $fs:last := fn:count($fs:sequence) for $fs:dot at $fs:position in $fs:sequence return attribute::year ) ) descending empty greatest return element book { fs:item-sequence-to-node-sequence( attribute newyear { fn:data(text {""}), fn:data( fs:item-sequence-to-untypedAtomic( fs:distinct-docorder-or-atomic-sequence( let $fs:sequence := fs:node-sequence($b), $fs:last := fn:count($fs:sequence) for $fs:dot at $fs:position in $fs:sequence return attribute::year ) ) ) }, fs:distinct-docorder-or-atomic-sequence( let $fs:sequence := fs:node-sequence($b), $fs:last := fn:count($fs:sequence) for $fs:dot at $fs:position in $fs:sequence return child::title ) ) } ) }