Perso, pour faire ça, j'utiliserais xslt, mais c'est parce que je connais déjà xslt L'apprendre juste pour ça ne vaut sans doute pas le coup.
Si j'ai bien compris, ce que tu cherches à faire, c'est...