Questions tagged «xslt»

XSLT是XML的一种转换语言,旨在将结构化文档转换为其他格式(例如XML,HTML和纯文本,或者在XSLT 3中为JSON)。问题应酌情使用xslt-1.0,xslt-2.0或xslt-3.0标记之一。

6
XSLT字符串替换
我不太了解XSL,但是我需要修复此代码,为了简化起见,我对其进行了缩小。 我收到此错误 无效的XSLT / XPath函数 在这条线上 <xsl:variable name="text" select="replace($text,'a','b')"/> 这是XSL <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:inm="http://www.inmagic.com/webpublisher/query" version="1.0"> <xsl:output method="text" encoding="UTF-8" /> <xsl:preserve-space elements="*" /> <xsl:template match="text()" /> <xsl:template match="mos"> <xsl:apply-templates /> <xsl:for-each select="mosObj"> 'Notes or subject' <xsl:call-template name="rem-html"> <xsl:with-param name="text" select="SBS_ABSTRACT" /> </xsl:call-template> </xsl:for-each> </xsl:template> <xsl:template name="rem-html"> <xsl:param name="text" /> <xsl:variable name="text" select="replace($text, …

11
是否有针对xPath选择器的在线测试仪?[关闭]
从目前的情况来看,这个问题不适合我们的问答形式。我们希望答案能得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 9年前关闭。 已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。 我知道有一些在线正则表达式评估器..非常有用,可以实时匹配。它们就像RegexBuddy的Web应用程序。 我想知道xPath选择器是否有类似的东西?我只是在学习它们,这对我来说很有价值。 是否有在线测试程序可以让您输入XML,然后输入xPath选择器并进行匹配(使用实时测试会更好,但我怀疑有人编写了JavaScript解释器)? 谢谢
84 xml  xslt  xpath 

4
使用Java进行XSLT处理?[关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow的主题。 上个月关闭。 改善这个问题 如何使用JDK在Java中使用XSLT处理器转换XML?
76 java  xslt 

4
使用XSLT将XML转换为CSV
我有以下XML文档: <projects> <project> <name>Shockwave</name> <language>Ruby</language> <owner>Brian May</owner> <state>New</state> <startDate>31/10/2008 0:00:00</startDate> </project> <project> <name>Other</name> <language>Erlang</language> <owner>Takashi Miike</owner> <state> Canceled </state> <startDate>07/11/2008 0:00:00</startDate> </project> ... 我想从转换(XSLT)结果中获得以下信息: Shockwave,Ruby,Brian May,New,31/10/2008 0:00:00 Other,Erlang,Takashi Miike,Cancelled,07/11/2008 0:00:00 有人知道XSLT可以实现吗?我正在使用.net以防万一。
75 xml  xslt  csv 

4
XSLT文档中的模板以什么顺序执行,它们在源XML或缓冲的输出上是否匹配?
这总是让我对XSLT感到困惑: 模板以什么顺序执行,以及 当它们执行时,它们在(a)原始源XML或(b)到该点的XSLT当前输出上是否匹配? 例: <person> <firstName>Deane</firstName> <lastName>Barker</lastName> </person> 这是XSLT的片段: <!-- Template #1 --> <xsl:template match="/"> <xsl:value-of select="firstName"/> <xsl:value-of select="lastName"/> </xsl:template> <!-- Template #2 --> <xsl:template match="/person/firstName"> First Name: <xsl:value-of select="firstName"/> </xsl:template> 关于此的两个问题: 我假设模板#1将首先执行。我不知道为什么要这么做-仅仅是因为它首先出现在文档中吗? 模板2将执行吗?它与源XML中的一个节点匹配,但是当我们到达此模板时(假设它第二次运行),“ firstName”节点将不在输出树中。 那么,“较新的”模板是否会像“较早的”模板中发生的一样,还是它们在源文档上操作,而忽略了已转换为“更早”的模板呢?(所有这些词都用引号引起来,因为当我真的不知道如何首先确定模板顺序时,我很难讨论基于时间的问题。) 在上面的示例中,我们有一个模板在根节点(“ /”)上匹配,该模板在完成执行后实际上已从输出中删除了所有节点。在这种情况下,由于第一个模板完成后没有匹配的内容,这会阻止其他所有模板执行吗? 至此,我一直在担心以后的模板不执行,因为它们所操作的节点未出现在输出中,但是相反呢?“较早的”模板可以创建一个节点,“较晚的”模板可以执行此操作吗? 在与上述相同的XML上,考虑以下XSL: <!-- Template #1 --> <xsl:template match="/"> <fullName> <xsl:value-of select="firstName"/> <xsl:value-of …
73 xslt 

2
为什么默认情况下XSLT输出所有文本?
嗨,我执行了一个转换,如果该标记为null,则会删除该标记。 我想检查我的转换是否工作正常,所以我不再编写代码,而是手动编写了一个XSLT代码,该代码仅检查OUTPUT XML中特定标记的存在,如果为空,则第二个XSLT应该输出一个文字“找到”。(我实际上不需要某种XML输出,但我只是使用XSLT进行搜索。) 当我尝试使用此XSL代码:: <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/SiebelMessage//SuppressCalendar[.!='']"> FOUND </xsl:template> </xsl:stylesheet> 它输出XML文件中存在的所有TEXT DATA, 为了避免这种情况,我必须编写以下代码:: <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/SiebelMessage//SuppressCalendar[.!='']"> FOUND </xsl:template> <xsl:template match="text()"/> </xsl:stylesheet> 为什么以前的代码输出TEXT,为什么我要坚持XSL忽略所有其他文本?是所有XML解析器的行为还是我自己的行为(我正在使用msxml解析器)。


2
如何使用带有样式表和xsltproc的xslt从xml中删除元素?
我有很多具有以下形式的XML文件: <Element fruit="apple" animal="cat" /> 我要从文件中删除。 使用XSLT样式表和Linux命令行实用程序xsltproc,我该怎么做? 至此,脚本中已经有了包含要删除的元素的文件列表,因此可以将单个文件用作参数。 编辑:问题最初是没有意图。 我试图实现的是删除整个元素“ Element”,其中(fruit ==“ apple” && animal ==“ cat”)。在同一文档中,有许多名为“元素”的元素,我希望这些元素保留下来。所以 <Element fruit="orange" animal="dog" /> <Element fruit="apple" animal="cat" /> <Element fruit="pear" animal="wild three eyed mongoose of kentucky" /> 会成为: <Element fruit="orange" animal="dog" /> <Element fruit="pear" animal="wild three eyed mongoose of kentucky" />
68 xml  xslt  xslt-1.0  xslt-2.0 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.