Why a new parser can be created the second time in an application to parse another file?
You can create new parser only if you have enough memory. After you do the xmlinit() and parse the data you will got all the memory allocated for xml processing and the parsed data. So if you don’t need to use the data later or will use new parser, you need to do xmlclean() or xmlterm() after that which xmlterm will especially return all the memory back to the system.