How to apply XSL to XML
You need two classes: XMLDocument and XSLDocument which implement XML and XSL interfaces respectfully. They work with your default DOM implementation. For example:
import com.jcabi.xml.XML;
import com.jcabi.xml.XMLDocument;
import com.jcabi.xml.XSL;
import com.jcabi.xml.XSLDocument;
public class Main {
public void main(String[] args) {
XML first = new XMLDocument(
"<orders><order id="4">Coffee to go</order></orders>"
);
String xsl = "<xsl:stylesheet xmlns:xsl='http://www.w3.org/1999/XSL/Transform' version='2.0'>",
+ "<xsl:template match='/'>"
+ " <name><xsl:value-of select='/orders/order[@id=4]'/></name>",
+ "</xsl:template>"
+ "</xsl:stylesheet>";
XML second = new XSLDocument(xsl).transform(first);
System.out.println(second.toString());
}
}Prints:
<name>Coffee to go</name>