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

发布于 2024-08-19 23:28:57 字数 294 浏览 10 评论 0原文

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

在 C++、C#、PHP 或 ActionScript 中?

例如,我有这个 html2wiki xslt 样式表 我想发送到我的程序XML(在本例中为 HTML 文件)并获取文件(在本例中为 Wiki 标记文本)

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

How to convert XML to something else using xslt stylesheet?

In C++ C# PHP or ActionScript?

For example I have this html2wiki xslt stylesheet I want to send to my programm my XML (in this case HTML file ) and get back a file (in this case Wiki mark up text )

So How to translate one text file into another text file using XSLT stylesheet in any language?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

缪败 2024-08-26 23:28:58

在 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

In Python, libxml and libxslt are my personal choices for this kind of functionality.


(Edit) Here is a simple example of performing a transformation using libxml and 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
玉环 2024-08-26 23:28:58

伪代码:

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

Pseudocode:

Load SOURCE file as XML
Load STYLESHEET file as XML
Apply STYLESHEET to SOURCE, generating RESULT
Write RESULT out to file as XML
夜访吸血鬼 2024-08-26 23:28:58

下面是一个使用 Clibxslt 的示例: http://xmlsoft.org/XSLT/tutorial/libxslttutorial.html

here is an example using C and libxslt: http://xmlsoft.org/XSLT/tutorial/libxslttutorial.html

妳是的陽光 2024-08-26 23:28:58

在 .NET 中,您可能需要查看本文。在 C++ 中,您可以使用 Xalan-C++。 Xalan-C++ 甚至还有一些关于如何使用它的方便的示例

In .NET, you may want to look at this article. In C++, you can use Xalan-C++. Xalan-C++ even has some handy examples of how to use it.

在 PHP 中看看这个

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

in PHP take a look at this

DomXsltStylesheet->process
and also read the last note at the bottom which has a working example ...

稚然 2024-08-26 23:28:58

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

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

好运气!

W3Schools has my favorite XSLT tutorial ..

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

Good luck!

悟红尘 2024-08-26 23:28:58

现在,Python 中正确的库是 lxml。请参阅 StackOverflow 上的此答案
它的语法相似,安装时不会出现问题。

The correct library in Python now is lxml. Please see this answer on StackOverflow.
It is similar syntax, and you wont have issues in installing it.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文