if you want write your own application, use xml toolkit :

http://www-1.ibm.com/servers/eserver.../software/xml/

with java as your preferred language, you don't need xml toolkit :

- the xml parser/xsl transformer are completely free. (ASF xerces/xalan)
- to put your data into a physical file (sql table) you can also use JDBC.