I would like to convert a SQL query (which could come from Oracle, SQL Server, Access, etc.) and save it as an XML. I have figured the basics out but I am having a problem with a certain situation.

My SQL query returns data like the following:
username,AC_YEAR,RANK,ADMINDEP_COLLEGE,ADMINDEP_DEP
johndoe,2011-2012,Instructor,Arts,Philosophy
johndoe,2010-2011,Instructor,Arts,Philosophy
janedoe,2011-2012,Professor,Arts,English

The XML that would be generated:
<Data>
<Record username="johndoe">
<ADMIN>
<AC_YEAR>2011-2012</AC_YEAR>
<RANK>Instructor</RANK>
<ADMINDEP>
<COLLEGE>Arts</COLLEGE>
<DEP>Philosophy</DEP>
</ADMINDEP>
</ADMIN>
<ADMIN>
<AC_YEAR>2010-2011</AC_YEAR>
<RANK>Instructor</RANK>
<ADMINDEP>
<COLLEGE>Arts</COLLEGE>
<DEP>Philosophy</DEP>
</ADMINDEP>
</ADMIN>
</Record>
<Record username="janedoe">
<ADMIN>
<AC_YEAR>2011-2012</AC_YEAR>
<RANK>Professor</RANK>
<ADMINDEP>
<COLLEGE>Arts</COLLEGE>
<DEP>English</DEP>
</ADMINDEP>
</ADMIN>
</Record>
</Data>

NOTE1: The record tag is not repeated for multiple rows for the same username.
NOTE2: The ADMINDEP fields in the SQL become embedded as subtags of <ADMINDEP>.

Right now, I have embedded some characters in the field names to trigger certain behaviors but was wondering if anyone had a better way to do this?

All help is appreciated!
David