I'm not sure I understand your question. You say your input isn't XML, presumably because it lacks an outer wrapper element. The first thing you have to do is to make it into well-formed XML.
Your code for getting the content of the HEADERDATA looks fine provided you execute it in the right context.
You second question I don't understand at all. How does it relate to the first question. You have two entries for Journal1 and two for J1 here, I haven't a clue what it all means.
Author, XSLT Programmer's Reference and XPath 2.0 Programmer's Reference