<p>I need to apply some xml templates to various streams of xml data (and files, on occasion) and there seem to be a large number of xml libraries for java out there -- enough that it's difficult to quickly determine which libraries are still active, how they differ from the other options that are also active, and what criteria should be considered when choosing one.</p>

<p>What libraries do you use for manipulating xml in java, and why is it better than the alternatives?</p>

You should decide if you want/are able to load the whole document into memory.  If it is a large document, you may want to look at the sax
parser
.  This works well for large documents.  Otherwise you may want to look into a dom parser.