xslt 相关问题

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

XML 错误:此 XML 文件似乎没有任何与之关联的样式信息。文档树如下所示

任何人都可以帮助我吗?我正在尝试为我的课程学习使用 xsl 设计 xml,并且正在观看 youtube 上的视频教程。我看到并复制了他正在输入的内容,我发现它有效,但是当我运行我的...

回答 1 投票 0

XML 电子表格参考 - 从变量分配工作表名称

我正在尝试从变量分配工作表名称,这可能吗 我有的代码 progid="Excel.Sheet" 我正在尝试从变量分配工作表名称,这可能吗 我有代码 <xsl:processing-instruction name="mso-application">progid="Excel.Sheet"</xsl:processing-instruction> <Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40"> <Styles> </Styles> <Worksheet ss:Name="Sheet1" > <Table> <Column ss:AutoFitWidth="0" ss:Width="60" AutoFitWidth="1"/> <Column ss:AutoFitWidth="0" ss:Width="300" AutoFitWidth="1"/> <Column ss:AutoFitWidth="0" ss:Width="80" AutoFitWidth="1"/> <xsl:call-template name="generateReportData"> <xsl:with-param name="currentElement" select="$currentElement"/> <xsl:with-param name="parentOccurrenceID" select="$parentOccurrenceID"/> </xsl:call-template> </Table> </Worksheet> </Workbook> 我已经尝试过了 <Worksheet ss:Name="Sheet1"> 到 <Worksheet ss:Name=<Data ss:Type="String">$rootProductID</Data> > ,但没有快乐 我正在使用这个参考这里 有人有什么建议吗? 谢谢 尝试: <Worksheet ss:Name="{$rootProductID<}">

回答 1 投票 0

XSLT:找到属性值“低于但最接近”我的输入值的节点

我有一个 XML,其中包含一系列具有版本属性的主题节点。版本控制是数字的。主题是链接的:我们有具有相同 ID 和不同版本的主题节点。 我想要...

回答 1 投票 0

XML/XSLT:以不同的方式设计类似的标记场景

我有两种情况,在 XML 中的 标签内使用 标签: 标签包含纯文本和偶尔的 标签(典型用途): 这是一句话... 我有两种情况,在 XML 中的 <b> 标签内使用 <p> 标签: <p>标签包含纯文本和偶尔的<b>标签(典型用途): <p>This is a sentence with a <b>bold</b> word.</p> <p>标签仅包含<b>标签: <p><b>This is a subsection title</b></p> 我可以仅在场景 2 中使用 XSLT 2.0 更改 <b> 标签的字体大小吗? 我知道我可以轻松地使用 CSS 的 outputclass 属性和样式,但长话短说,这不足以满足我的需求。 匹配 p[not(text())]/b 的模板将仅处理那些没有任何同级文本节点的 b 元素。 如果没有您尝试的更多内容,最简洁的挑战可能就是添加样式属性。因此,在这里我只会为您提供可能用于样式属性的片段以及不选择具有非空白同级节点的方法。 <xsl:attribute name="style"> <xsl:value-of select="'font-size:3em;'"/> </xsl:attribute> 至于如何选择,如果没有更多的 XML (HTML),您正尝试更新或修复未在 XSLT 中发布的内容,则不容易识别。 <xsl:template match="p/b"> <xsl:attribute name="style" select="concat('font-size: ', '3em', 'em;')"/> </xsl:template> preceding-sibling::node()[not(self::text()[normalize-space()='')][1][self::text()] 应该足以检查第一个不是空白文本节点的前同级节点是文本节点 诸如新行和缩进之类的空白是它们自己的文本节点,因此您可能需要将类似的内容添加到样式表中。 <xsl:strip-space elements="*"/>

回答 2 投票 0

XSLT-2 xsl:if 带有处理指令

嘿嘿! 我想查询处理指令中是否出现“:”,然后才执行某些操作。 在我只匹配 oxy_comment_start 之前,我想对其进行改进。 在这种情况下,它...

回答 1 投票 0

XSLT 2.0 转换:按值和元素对节点进行分组

尝试转换 xml 并按 xslt 2.0 中的值和元素对节点进行分组 我有一个输入 xml 如下: ...

回答 1 投票 0

如何将 XSL 文件包含到另一个文件中?

我使用 XSLT 版本 2.0,我想在另一个文件 home.xsl 中包含头模板 head.xsl。 主页.xsl: 我使用 XSLT 版本 2.0,我想在另一个文件中包含一个头模板 head.xsl home.xsl。 home.xsl: <xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format"> <xsl:output method="html" indent="yes"/> <xsl:template match="/"> <html> <head> <link rel="stylesheet" type="text/css" href="style.css"/> <title/> </head> <body> <div id="main"> <div id="content"> <xsl:call-template name="home-in"/> </div> </div> </body> </html> </xsl:template> </xsl:stylesheet> head.xsl: <xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format"> <xsl:output method="html" indent="yes"/> <xsl:template match="/"> <html> <head> <link rel="stylesheet" type="text/css" href="style.css"/> <title/> </head> <body> <div id="container"> <div id="header"> <div id="menu"> <ul> <li><a href="#" class="active">Home</a></li> <li><a href="#">about</a></li> </ul> </div> </div> </div> </body> </html> </xsl:template> </xsl:stylesheet> 如何将我的 head.xsl 文件包含到 home.xsl 中? 您可以使用 <xsl:include> 包含其他文件 您的home.xsl文件将如下所示 <xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format"> <xsl:output method="html" indent="yes"/> <xsl:include href="head.xsl"/> <xsl:template match="/"> <html> <head> <link rel="stylesheet" type="text/css" href="style.css"/> <title/> </head> <body> <div id="main"> <div id="content"> <xsl:call-template name="home-in"/> </div> </div> </body> </html> </xsl:template> </xsl:stylesheet> 更多详情 XSLT 处理器将简单地将指令替换为 href 属性中命名的样式表的内容。请注意,包含的样式表模板将具有与包含的样式表相同的默认优先级和导入优先级。 不要将 xsl:include 与 xsl:import 混淆,两者类似,只是导入样式表中的指令可以被导入样式表和任何包含的样式表中的指令覆盖。换句话说,导入样式表中元素的导入优先级始终低于导入样式表的导入优先级。 由于使用xsl:include与复制文件中的代码相同,因此在使用命名模板时请确保没有重复的模板名称。 这里是来自w3 documentation的粘贴 多次包含样式表可能会导致错误,因为 重复的定义。当以下情况时,这种多重包含不太明显: 它们是间接的。例如,如果样式表 B 包含样式表 A, 样式表 C 包含样式表 A,样式表 D 包含两者 样式表 B 和样式表 C,则 A 将被 D 间接包含 两次。如果 B、C 和 D 全部用作独立样式表,则 通过分离 B 中除 将 A 包含到单独的样式表 B' 中并将 B 更改为包含 只是包含 B' 和 A,与 C 类似,然后将 D 更改为 包括 A、B'、C'。 请注意,xsl:include和xsl:import元素都只允许作为顶级元素。

回答 1 投票 0

如何在 XSLT 之后保留空 XML 标签 - 防止将它们从 <B></B> 折叠到 <B/>

假设我有一个非常简单的 XML,其中包含一个空标签“B”: 富 酒吧 我目前正在使用 XSLT 删除一些标签,

回答 11 投票 0

XSL 将节点集存储在变量中

(XSLT 1.0。) 给定一个名为 Rows 的变量,其中包含以下内容(示例): 输入 可以通过过滤器1过滤 ...

回答 2 投票 0

XSLT 3.0 模板规则不可流化

我正在使用下面的 xsl 创建 csv 文件。我需要处理条件检查,如果 XML 不包含项目元素,那么我需要添加默认行,否则需要添加元素

回答 1 投票 0

根据通道编号顺序,应选择值

我需要根据输入 xml 中的通道编号顺序选择值 1 生活 <

回答 1 投票 0

需要从不同费率中获取金额

我需要使用相同的带值从多个费率中获取特定金额 输入 xml 我有: 2000

回答 1 投票 0

构建 XML feed 后对项目进行排序?

我在基于 XML 的 CMS(现代校园)工作。 XSLT 仍然是我试图即时学习的东西,所以我还不太熟悉这个领域。 我们的 CMS 正在构建一个博客提要(其中...

回答 1 投票 0

XSLT 在输出到 DOM 时将 <image> 节点转换为 <img> 标签

现在是 2024 年,我正在做一个融合 XSLT 技术的项目。 我想出了一种简单的方法来访问 XML 文件,该文件正在使用 javascript 进行简单转换,但将其输出到 hi...

回答 1 投票 0

XSLT 循环嵌套数据

我嵌套了 xml 数据。我正在循环项目元素,并希望使用递归获得所有项目的价格总和。 <

回答 1 投票 0

需要使用<xsl:each>

我需要使用 从多个 PlanDetail 中获取描述值 1 ...

回答 1 投票 0

Javascript Document.evaluate 在 XPath 中因“name()”而失败

我尝试将 Javascript 文档评估函数与使用 name() / local-name() 函数的有效 XPath 一起使用,但在 Jfiddle 中始终出现以下错误: 字符串 '/

回答 1 投票 0

使用 XSLT 显示两个不同日期之间的所有日期

我需要一个适用于 XSLT 2.0 的正确逻辑,用于显示给定两个不同日期之间的所有日期。例如如果 开始日期:2022年10月1日(年-月-日) 结束日期:2023-04-01 我需要显示结果...

回答 1 投票 0

XPath - 如何从子节点中排除文本

我想要这个输出(示例): 我要这个 我正在处理 XML/TEI 文档,我需要使用 XPath 表达式,并且我希望将 div/u 中的文本作为输出,但没有节点 e 内的文本...

回答 2 投票 0

XSLT 2.0 中的链接模板

我有一个非常简单的输入文件: ...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.