Well, the short answer is you can really parse an XML file however you want, you can read every element and determine it's name, attributes, values, child nodes, etc etc...

Thing is, if you are going to process it, it really needs to have some sort of "rules" as to what it contains and how it is organized, and the users sending the file will have to adhere to those rules if your application is going to produce anything reliably.

Perhaps if you post a small example of the sort of XML you might expect a user to send, we can give you some hints on how to gather what you want from it?