如何使用xslt样式表将XML转换为其他内容?

时间:2010-01-29 15:42:09

标签: xml xslt wiki translation wikitext

如何使用xslt样式表将XML转换为其他内容?

在C ++ C#PHP或ActionScript中?

例如我有这个html2wiki xslt stylesheet我想向我的程序发送我的XML(在这种情况下是HTML文件)并获取一个文件(在本例中为Wiki标记文本)

那么如何使用任何语言的XSLT样式表将一个文本文件翻译成另一个文本文件?

7 个答案:

答案 0 :(得分:4)

在Python中,libxmllibxslt是我个人对此类功能的选择。


(编辑)以下是使用libxml和libxslt执行转换的简单示例:

#!/usr/bin/python

import sys
import libxml2
import libxslt


def getXSLT(xsl_filename):
    # parse the stylesheet xml file into doc object
    styledoc = libxml2.parseFile(xsl_filename)

    # process the doc object as xslt
    style = libxslt.parseStylesheetDoc(styledoc)

    return style


if __name__ == '__main__':
    style = getXSLT("stylesheet.xsl")
    doc = libxml2.parseFile("data.xml")
    result = style.applyStylesheet(doc, None)

    print result

答案 1 :(得分:2)

伪代码:

Load SOURCE file as XML
Load STYLESHEET file as XML
Apply STYLESHEET to SOURCE, generating RESULT
Write RESULT out to file as XML

答案 2 :(得分:2)

以下是使用 C libxslt 的示例:http://xmlsoft.org/XSLT/tutorial/libxslttutorial.html

答案 3 :(得分:1)

在.NET中,您可能需要查看this article。在C ++中,您可以使用Xalan-C++。 Xalan-C ++甚至有一些handy examples如何使用它。

答案 4 :(得分:1)

PHP中的

看看这个

DomXsltStylesheet->process
并阅读底部的最后一个注释,其中有一个工作示例...

答案 5 :(得分:1)

W3Schools有我最喜欢的XSLT教程..

http://www.w3schools.com/xsl/

祝你好运!

答案 6 :(得分:0)

Python中正确的库现在是lxml。请参阅StackOverflow上的this answer。 这是类似的语法,你不会在安装它时遇到问题。