This code sample is adapted from Clifford B. Anderson and Joseph C. Wicentowski, XQuery for Humanists (College Station: Texas A&M University Press, 2020), 118. Download this code sample in its raw form. View the source on GitHub.

let $title := "Citizens at Last"
let $subtitle := "The Woman Suffrage Movement in Texas"
let $join-titles :=
    function($title as xs:string, $subtitle as xs:string)
        as xs:string {
        fn:concat($title, ": ", $subtitle)
    $join-titles($title, $subtitle)