2politen
он шнягой страдает... 

точнее перегоняет заданный MySQL рекордсет... в well-formed XML строку... 
а судя по тому что используется DataBase Absctraction Layer a la PEAR это не обязательно должен быть MySQL подойдет и PostgeSQL
код откровенно слабый...
мало того, что GetXML и EchoXML фактически идентичные методы ... 
и можно вместо EchoXML смело написать
function EchoXML(...) {
 echo $this->GetXML ...
}
дык еще и генерация SQL запроса к базе зачем то сделана внутри класса и делается она принудительно ... 
2dimases
поясни для начала, что ты имеешь ввиду под термином XML-DB ? тебе надо хранить, выбирать и изменять XML данные через базу ? 
данные поддаются SQL нормализации ?? если да, то сделай ее... разложи все данные в реляционное представление и дальше уже пользуйся кодом который тебе тут предложили... 
если нет, то смотри в сторону 
http://xmldb.sourceforge.net XQuery (
http://www.w3.org/TR/xquery/) и Oracel XQL SDK