What do you have in mind for the display?
Since you are already parsing the XML, you could print the HTML from inside your *_element_handler fuctions.
Or you might want to store the data into arrays that are designed around the intended output rather than around the input.
Or you could use an XSLT transformation to parse the XML file and output HTML (although that would be very similar to what you would get by using your element handler functions).