We can run the above XML file with an XSL processor (such as xt or LotusXSL) to generate FOs, and then use FOP (see James Tauber's presentation) or PassiveTeX to generate PDF.