以编程方式创建xslt文件

我知道我可以通过在java中使用DOM api以编程方式创建xml文件,如下所示:

 DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder(); Document document = documentBuilder.newDocument(); Element rootElement = document.createElement("map"); document.appendChild(rootElement); Element em = document.createElement("string"); em.setAttribute("name", "FirstName"); .... 

但是有没有API构建一个xslt树? (例如像Dom这样的api)

我需要像这样的东西:

               Good Morning, !       

和:

               

提前致谢。

既然XSLT也是XML,你可以简单地使用相同的策略:

 ... Document document = documentBuilder.newDocument(); Element rootElement = document.createElement("xsl:stylesheet"); // adding attributes like namespaces etc... document.appendChild(rootElement); Element em = document.createElement("xsl:template"); em.setAttribute("match", "/"); 

等等…

但它不是很优雅。 你应该使用库或框架,你应该很容易找到一个谷歌搜索。

您可以像创建XML文件一样创建XSLT,因为XSLT是XML文件。

但是,如果你必须经常处理XML / XSLT转换,Apache Cocoon 3有一个非常轻量级的XML / XSLT管道系统用作库,而不是手动处理所有XML dom和XSLT转换。

DOM是一种非常麻烦的创建XML的方法。

有一个更好的方法 – 使用XSLT。

XML越复杂,使用XSLT而不是DOM来创建它的胜利就越大。

没有理由不能使用XSLT来创建XSLT(甚至还有一个特殊的声明xsl:namespace-alias使它更容易一些 – 搜索xsl:namespace-alias将显示其使用的示例。