xslt 相关问题

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

为什么 `<input pattern="^[^ ]{2,}.*[^ ]$">` 会触发“XPath 处理错误:需要二元运算符”?

我有一个带有 XSL 的 XML 文件来处理它。 使用像 这样的输入元素可以很好地工作。 然而当我把它改为 我有一个带有 XSL 的 XML 文件来处理它。 使用像 <input pattern="^[^ ].*[^ ]$"> 这样的输入元素效果很好。 然而,当我将其更改为 <input pattern="^[^ ]{2,}.*[^ ]$"> 时,Firefox ESR 115.3.1 抱怨: Fehler beim Laden des Stylesheets:XPath-Verarbeitungsfehler:Binärer Operator erwartet: (英语(最有可能):“加载样式表时出错:XPath 处理错误:预期二元运算符:”) 我完全不明白如何调试这个,什么触发了错误,以及如何修复它(当我在 { 和 } 之前添加反斜杠时,我收到了不同的错误消息,说“发现无效字符:” ). 让事情变得更难理解的是错误消息中没有任何细节(如行、标记),当我尝试显示源代码时,我只得到一个空窗口。 几乎最小的例子 <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="#default"?> <xsl:stylesheet id="default" version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:test="test" exclude-result-prefixes="xsl test"> <test:XML> <order> </order> </test:XML> <xsl:output method="html" encoding="UTF-8" indent="yes"/> <xsl:template match="/xsl:stylesheet"> <xsl:apply-templates /> </xsl:template> <xsl:template match="xsl:*" /><!-- ignore --> <xsl:template match="test:XML/order"> <html xmlns="http://www.w3.org/1999/xhtml"> <body> <form> <input id="customer-name" type="text" name="i.user.name" size="25" maxlength="40" placeholder="Name" pattern="^[^ ]{2,}.*[^ ]$" required="required" /> </form> </body> </html> </xsl:template> </xsl:stylesheet> XSLT 在属性值中使用大括号 { 和 } 作为所谓的属性值模板来分隔嵌入的 XPath 表达式。因此,在 XSLT 中,在此类属性中,如果您想要文字 { 或 },则需要将它们加倍,例如{{ 和 }},例如pattern="^[^ ]{{2,}}.*[^ ]$"。

回答 1 投票 0

XSLT 获取最后一个元素

我试图找到 xml 中的最后一个元素,如下所示: ...

回答 1 投票 0

在 xslt 处理过程中计算 <p> 元素中的特定字母组合

我需要在xsl中处理xhtml文件时计算xhtml文件中的特定字母组合。 一个例子是单词 & 和 " 计算下面中出现的次数 <... 我需要在 xsl 中处理 xhtml 文件时计算 xhtml 文件中的特定字母组合。 一个例子是单词 &amp; 和 &quot; 计算下面<p>中出现的次数 <p> enthroned in his gorgeous palace upon the <strike>c</strike>&amp;Capitoline <strike>h</strike>&quot;H&quot;ill that a babe slumbering in a manger in the obscure hamlet of Bethlehem a remote province of Asyria </p> 我预计 &amp; 的计数为 1,&quot; 的计数为 2 我可以使用xsl 2.0或3.0 斯科特 &amp;和&quot;都是字符,而不是单词。您可以使用以下方法计算当前节点中 &amp; 字符出现的次数: <xsl:value-of select="string-length(replace(., '[^&amp;]', ''))"/>

回答 1 投票 0

使用 XSLT 重构 JSON 负载

我有以下 JSON 有效负载,我正在尝试将其重组为第二种格式 { “数据”:{ “美元瑞郎:CUR”:{ “PX_LAST”:104.4872,“CHG_PCT_1D”:0.3148063,“

回答 1 投票 0

Oxygen XML 中的 Saxon HE Java 扩展函数出现初始化错误

我正在尝试学习如何使用 ExtensionFunctionDefinition 类使用 Java 和 Saxon-HE 创建 XSLT 扩展函数。到目前为止,我已经能够提取然后重新编译一个 .jar 我们...

回答 1 投票 0

XSLT 2.0:分组和求和问题

这是我的源 XML 12354 <

回答 1 投票 0

在循环中使用分隔符连接元素

我面临的问题看起来很简单。我想要做的是通过连接 foreach 元素循环的结果来构建一个字符串。 数据 XML: ...

回答 1 投票 0

xslt 或 xquery 在当前时间上添加分钟

我想创建一个安全标头,如下所示: 我想创建一个安全标头,如下所示: <soapenv:Header> <wsse:Security soapenv:mustUnderstand="1" xmlns:wsse=http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd xmlns:wsu=http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd> <wsu:Timestamp wsu:Id="TS-E157FC3B34ADB1C4DF16976549459948"> <wsu:Created>2023-10-18T18:49:05.994Z</wsu:Created> <wsu:Expires>2023-10-18T18:50:05.994Z</wsu:Expires> </wsu:Timestamp> </wsse:Security> 对于 <wsu:Created>2023-10-18T18:49:05.994Z</wsu:Created> 我想要当前日期时间并且 <wsu:Expires> </wsu:Expires> has to be 1 min more than current time xslt 1.0 中是否有任何函数可以用来获取当前日期时间并比它多 1 分钟或在 xquery 中 这在 XSLT 1.0 中实现起来很困难,但在 XSLT 2.0 或 XQuery 1.0(共享相同的函数库)中却很容易。简直就是 current-dateTime() + xs:dayTimeDuration('PT1M')

回答 1 投票 0

当两个 id 在 XSLT 中具有相同的定义时,如何关联它们?

我有这个概念问题: id=1 => id=2 id=2 => id=空 id=3 => id=2 id=4 => id=3 我如何在 XSLT 中关联这两个 id?

回答 1 投票 0

测试 XSLT 中的列值

如何测试 xsl 中的列值? 我试过了: ... 还有一个...

回答 1 投票 0

要提取的 XML 值

我需要提取和之间的值,并且始终属于它之前的值。例如 Fabrikat:本田,类型:Roadrunner 等。 我需要提取 <bl> 和 </bl> 之间的值,并且始终属于它之前的值。例如 Fabrikat:本田,类型:Roadrunner 等等。 <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <onlv xmlns="http://www.oenorm.at/schema/A2063/2021-03-01"> <metadaten></metadaten> <grafiktabelle></grafiktabelle> <leistungsteiltabelle></leistungsteiltabelle> <zztabelle></zztabelle> <akztabelle></akztabelle> <zugelassenenachlaesse></zugelassenenachlaesse> <ausschreibungs-lv> <gliederung-og> <og-liste> <og nr="01"> <og-eigenschaften></og-eigenschaften> <lb></lb> <svb></svb> <lg-liste> <lg nr="01"> <lg-eigenschaften></lg-eigenschaften> <ulg-liste> <ulg nr="01"> <ulg-eigenschaften></ulg-eigenschaften> <positionen> <grundtextnr nr="01"> <ungeteilteposition mfv=""> <pos-eigenschaften> <stichwort>Fleischwolf</stichwort> <langtext><p>Fabrikat: <bl>Honda</bl></p><p>Type: <bl>Roadrunner</bl></p><p>Preis: <bl>12580.00</bl> EUR</p> </langtext> <einheit>Stk</einheit> <pzzv> <normalposition></normalposition> </pzzv> <leistungsteil>1</leistungsteil> <lvmenge>1</lvmenge> <nichtangeboten></nichtangeboten> </pos-eigenschaften> </ungeteilteposition> </grundtextnr> <grundtextnr nr="02"> <ungeteilteposition mfv=""> <pos-eigenschaften> <stichwort>Induktionsherd</stichwort> <langtext><p>Fabrikat: <bl>BMW</bl></p><p>Type: <bl>GS1250</bl></p><p>Preis: <bl>22870.00</bl> EUR</p> </langtext> <einheit>Stk</einheit> <pzzv> <normalposition></normalposition> </pzzv> <leistungsteil>1</leistungsteil> <lvmenge>1</lvmenge> <nichtangeboten></nichtangeboten> </pos-eigenschaften> </ungeteilteposition> </grundtextnr> <grundtextnr nr="03"> <ungeteilteposition mfv=""> <pos-eigenschaften> <stichwort>Kühlwanne</stichwort> <langtext><p>Fabrikat: <bl>Harley Davidson</bl></p><p>Type: <bl>Bigfoot</bl></p><p>Preis: <bl>28756.00</bl> EUR</p> </langtext> <einheit>Stk</einheit> <pzzv> <normalposition></normalposition> </pzzv> <wesentlicheposition>W</wesentlicheposition> <leistungsteil>1</leistungsteil> <lvmenge>1</lvmenge> <nichtangeboten></nichtangeboten> </pos-eigenschaften> </ungeteilteposition> </grundtextnr> <grundtextnr nr="04"> <ungeteilteposition mfv=""> <pos-eigenschaften> <stichwort>Kaffeemaschine (Vollautomat)</stichwort> <langtext><p>Fabrikat: <bl>Franke</bl></p><p>Type: <bl>GrossUndGut</bl></p><p>Preis: <bl>18000.00</bl> EUR</p> </langtext> <einheit>Stk</einheit> <pzzv> <eventualposition></eventualposition> </pzzv> <leistungsteil>1</leistungsteil> <lvmenge>1</lvmenge> <nichtangeboten></nichtangeboten> </pos-eigenschaften> </ungeteilteposition> </grundtextnr> </positionen> </ulg> <ulg nr="02"> <ulg-eigenschaften></ulg-eigenschaften> <positionen> <grundtextnr nr="01"> <ungeteilteposition mfv=""> <pos-eigenschaften> <stichwort>Maschine 4</stichwort> <langtext><p>Fabrikat: <bl>DELL</bl></p><p>Type: <bl>XPS</bl></p><p>Preis: <bl>1280.00</bl> EUR</p> </langtext> <einheit>Stk</einheit> <pzzv> <normalposition></normalposition> </pzzv> <leistungsteil>1</leistungsteil> <lvmenge>1</lvmenge> <nichtangeboten></nichtangeboten> </pos-eigenschaften> </ungeteilteposition> </grundtextnr> <grundtextnr nr="02"> <ungeteilteposition mfv=""> <pos-eigenschaften> <stichwort>Maschine 5</stichwort> <langtext><p>Fabrikat: <bl>HP</bl></p><p>Type: <bl>12345</bl></p><p>Preis: <bl>1890.00</bl> EUR</p> </langtext> <einheit>Stk</einheit> <pzzv> <normalposition></normalposition> </pzzv> <leistungsteil>1</leistungsteil> <lvmenge>1</lvmenge> <nichtangeboten></nichtangeboten> </pos-eigenschaften> </ungeteilteposition> </grundtextnr> </positionen> </ulg> </ulg-liste> </lg> <lg nr="02"> <lg-eigenschaften></lg-eigenschaften> <ulg-liste> <ulg nr="01"> <ulg-eigenschaften></ulg-eigenschaften> <positionen> <grundtextnr nr="01"> <ungeteilteposition mfv=""> <pos-eigenschaften> <stichwort>Maschine 6</stichwort> <langtext><p>Fabrikat: <bl>Sony</bl></p><p>Type: <bl>Workstation</bl></p><p>Preis: <bl>2500.00</bl> EUR</p> </langtext> <einheit>Stk</einheit> <pzzv> <normalposition></normalposition> </pzzv> <leistungsteil>1</leistungsteil> <lvmenge>1</lvmenge> <nichtangeboten></nichtangeboten> </pos-eigenschaften> </ungeteilteposition> </grundtextnr> </positionen> </ulg> <ulg nr="02"> <ulg-eigenschaften></ulg-eigenschaften> <positionen> <grundtextnr nr="01"> <ungeteilteposition mfv=""> <pos-eigenschaften> <stichwort>Maschine 7</stichwort> <langtext><p>Fabrikat: <bl>ACER</bl></p><p>Type: <bl>123</bl></p><p>Preis: <bl>1280.00</bl> EUR</p> </langtext> <einheit>Stk</einheit> <pzzv> <normalposition> </normalposition> </pzzv> <leistungsteil>1</leistungsteil> <lvmenge>1</lvmenge> <nichtangeboten></nichtangeboten> </pos-eigenschaften> </ungeteilteposition> </grundtextnr> </positionen> </ulg> </ulg-liste> </lg> </lg-liste> </og> </og-liste> </gliederung-og> </ausschreibungs-lv> </onlv> 在前一篇文章中,我得到了当时有效的草案解决方案。但草案发生了变化。所以我尝试改变它: <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:oen="http://www.oenorm.at/schema/A2063/2021-03-01" exclude-result-prefixes="oen"> <xsl:output method="xml" indent="yes"/> <xsl:template match="/"> <dataroot> <xsl:variable select=".//oen:og-liste"> <xsl:for-each select=".//oen:og"> <xsl:variable select="following-sibling::oen:lg-liste[1]"> <xsl:variable select=".//oen:lg"> <xsl:variable select=".//oen:ulg-liste[1]"> <xsl:for-each select=".//oen:ulg"> <xsl:for-each select=".//oen:grundtextnr"> <xsl:for-each select=".//oen:langtext/oen:p"> <onlv> <p> <xsl:value-of select="substring-before(., ':')"/> </p> <bl> <xsl:value-of select="oen:bl"/> </bl> </onlv> </xsl:for-each> </xsl:for-each> </xsl:for-each> </xsl:variable> </xsl:variable> </xsl:variable> </xsl:for-each> </xsl:variable> </dataroot> </xsl:template> </xsl:stylesheet> 有很多代码来解释完整的层次结构。我需要的东西显示在这里: <?xml version="1.0" encoding="UTF-8"?> <dataroot xmlns:od="urn:schemas-microsoft-com:officedata" generated="2023-10-27T10:02:32"> <bl> <og>01</og> <lg>01</lg> <ulg>01</ulg> <grundtextnr>01</grundtextnr> <fabrikat>Honda</fabrikat> <type>Roadrunner</type> <preis>12580,00</preis> </bl> <bl> <og>01</og> <lg>01</lg> <ulg>01</ulg> <grundtextnr>02</grundtextnr> <fabrikat>BMW</fabrikat> <type>GS1250</type> <preis>22870,00</preis> </bl> <bl> <og>01</og> <lg>01</lg> <ulg>01</ulg> <grundtextnr>03</grundtextnr> <fabrikat>Harley Davidson</fabrikat> <type>Bigfoot</type> <preis>28756,00</preis> </bl> <bl> <og>01</og> <lg>01</lg> <ulg>01</ulg> <grundtextnr>04</grundtextnr> <fabrikat>Franke</fabrikat> <type>GrossUndGut</type> <preis>18000,00</preis> </bl> <bl> <og>01</og> <lg>01</lg> <ulg>02</ulg> <grundtextnr>01</grundtextnr> <fabrikat>Dell</fabrikat> <type>XPS</type> <preis>1280,00</preis> </bl> <bl> <og>01</og> <lg>01</lg> <ulg>02</ulg> <grundtextnr>02</grundtextnr> <fabrikat>HP</fabrikat> <type>12345</type> <preis>1890,00</preis> </bl> <bl> <og>01</og> <lg>02</lg> <ulg>01</ulg> <grundtextnr>01</grundtextnr> <fabrikat>Sony</fabrikat> <type>Workstation</type> <preis>2500,00</preis> </bl> <bl> <og>01</og> <lg>02</lg> <ulg>02</ulg> <grundtextnr>01</grundtextnr> <fabrikat>Acer</fabrikat> <type>123</type> <preis>1280,00</preis> </bl> </dataroot> 我再次主要是猜测这里,但在我看来你想做这样的事情(使用 XSLT 1.0): <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:oen="http://www.oenorm.at/schema/A2063/2021-03-01" exclude-result-prefixes="oen"> <xsl:output method="xml" indent="yes"/> <xsl:template match="/"> <dataroot> <xsl:for-each select="//oen:og"> <xsl:variable name="og" select="@nr"/> <xsl:for-each select=".//oen:lg"> <xsl:variable name="lg" select="@nr"/> <xsl:for-each select=".//oen:ulg"> <xsl:variable name="ulg" select="@nr"/> <xsl:for-each select=".//oen:grundtextnr"> <bl> <og> <xsl:value-of select="$og"/> </og> <lg> <xsl:value-of select="$lg"/> </lg> <ulg> <xsl:value-of select="$ulg"/> </ulg> <grundtextnr> <xsl:value-of select="@nr"/> </grundtextnr> <xsl:for-each select=".//oen:langtext/oen:p"> <xsl:element name="{substring-before(., ':')}"> <xsl:value-of select="oen:bl"/> </xsl:element> </xsl:for-each> </bl> </xsl:for-each> </xsl:for-each> </xsl:for-each> </xsl:for-each> </dataroot> </xsl:template> </xsl:stylesheet>

回答 1 投票 0

在 html 表格上显示 xml 数据

我正在尝试使用 xsl 和 JavaScript 文件将 xml 文件中的数据显示到 html 文件上。我正在使用 Apache NetBeans。我还希望为我的每个书籍元素添加图像,这将......

回答 1 投票 0

XSLT 匹配 xhtml 命名空间

美好的一天, 我正在尝试使用以下命令行将 html 文件生成的 xhtml 文件中的“head”元素与 HTML tidy 标记校正器进行匹配: tidy -asxml -输出 test_tidy.html --numeric-

回答 1 投票 0

仅将系列中的某些项目分组章节标题

我有一个 XML 文档,其中包含一系列段落: 章节标题 ... 我有一个包含一系列段落的 XML 文档: <section> <title>Section title</title> <p style="Body">...</p> <p style="Body">...</p> <p style="Note">...</p> <p style="Body">...</p> <p style="Body">...</p> <p style="Warning">...</p> <p style="Warning">...</p> <p style="Warning">...</p> <p style="Body">...</p> <p style="Note">...</p> <p style="Warning">...</p> <p style="Body">...</p> </section> 我想将 3 个相邻的警告段落分组(这样我就可以将格式应用于整个组,例如将它们放在 div 内,这样我就可以在它们周围放置边框)。必须保留元素的顺序。 <section> <title>Section title</title> <p style="Body">...</p> <p style="Body">...</p> <p style="Note">...</p> <p style="Body">...</p> <p style="Body">...</p> <div> <p style="Warning">...</p> <p style="Warning">...</p> <p style="Warning">...</p> </div> <p style="Body">...</p> <p style="Note">...</p> <p style="Warning">...</p> <p style="Body">...</p> </section> 我在使用 for-each-group 指令时遇到问题: <xsl:for-each-group select="*" group-adjacent="@stylename"> (wrap in div here) 这给了我一个错误,因为标题元素没有 @stylename 属性。 我不能这样做 for-each-group select="p" 因为这样标题元素根本就没有被处理。 如何处理该部分中的所有元素,但仅按段落的 @stylename 进行分组? 您遇到什么错误?如果您只想将 p 分组到 style="warning" 中,为什么不将其放在 group-adjacent 中? 示例: <xsl:stylesheet version="3.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" expand-text="yes"> <xsl:output indent="yes"/> <xsl:strip-space elements="*"/> <xsl:mode on-no-match="shallow-copy"/> <xsl:template match="section"> <xsl:copy> <xsl:apply-templates select="@*"/> <xsl:for-each-group select="*" group-adjacent="@style='Warning'"> <xsl:choose> <xsl:when test="@style='Warning' and count(current-group()) > 1"> <div> <xsl:apply-templates select="current-group()"/> </div> </xsl:when> <xsl:otherwise> <xsl:apply-templates select="current-group()"/> </xsl:otherwise> </xsl:choose> </xsl:for-each-group> </xsl:copy> </xsl:template> </xsl:stylesheet>

回答 1 投票 0

我的 xslt 2.0 中没有索引的段的分组问题

我尝试完成以下结构: 000010 ...

回答 1 投票 0

如何将xsl嵌入到xml文件中

我有一个文件test.xml 我有一个文件test.xml <?xml version="1.0 encoding="UTF-8"> <foo name="1" b="2"> <bar name="11" b="22"> <baz name="111" b="222"/> <baz name="112" b="223"/> ... </bar> </foo> 和 XSLT 文件 styles.xsl <?xml version="1.0" encoding="utf-8"> <xsl:stylesheet version=1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <html> <body> <!--xslt--> </body> </html> </xsl:template> </xsl:stylesheet> 我可以通过在 <?xml-stylesheet type="text/xsl" href="styles.xsl"?> 中添加这一行 test.xml 来使页面正确显示。现在我正在尝试将这两个文件合并为一个 .xml 文件,以便更方便地打开。我尝试合并两个 XML 文档的内容,但没有成功: newtest.xml <?xml version="1.0 encoding="UTF-8"> <xsl:stylesheet version=1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <html> ... </html> </xsl:template> </xsl:stylesheet> 在其他 SO 线程上执行以下步骤将返回空白或未格式化的页面 对 XML 文件使用内联 XSLT 如何将 XSL 嵌入 XML http://calebmadrigal.com/embedding-xslt-xml-document/ http://www.java2s.com/Code/XML/XSLT-stylesheet/Embeddedstylesheetintoxmldocument.htm 我错过了什么吗? XSLT 文档也是格式良好的 XML 文档。 XSLT 用于转换 XML 文档,因此理论上您可以将 XSLT 应用到自身。 假设您当前的 XSLT 如下所示 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" exclude-result-prefixes="xsl"> <xsl:output method="html" omit-xml-declaration="yes"/> <xsl:template match="foo"> <h1><xsl:value-of select="@name" /></h1> <xsl:apply-templates /> </xsl:template> <xsl:template match="bar"> <h2><xsl:value-of select="@name" /></h2> <xsl:apply-templates /> </xsl:template> <xsl:template match="baz"> <p><xsl:value-of select="@name" /></p> <xsl:apply-templates /> </xsl:template> <xsl:template match="/"> <html> <body> <xsl:apply-templates select="//foo" /> </body> </html> </xsl:template> </xsl:stylesheet> 您可以将 XML 嵌入 XSLT,然后将其另存为 XML 文件,而不是将 XSLT 嵌入到 test.xml 中。实现此目的的一种方法是创建一个虚拟名称空间,并将您的 XML 作为 XSLT 中的元素 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:my="my" exclude-result-prefixes="xsl my"> <my:embeddedXML> <foo name="1" b="2"> <bar name="11" b="22"> <baz name="111" b="222"/> <baz name="112" b="223"/> </bar> </foo> </my:embeddedXML> 然后不要做<xsl:apply-templates select="//foo" />,而是用这个代替 <xsl:apply-templates /> 但是您还需要一个模板来忽略“输入”XML 中的 xsl: 元素 <xsl:template match="xsl:stylesheet"> <xsl:apply-templates /> </xsl:template> <xsl:template match="xsl:*" /> 然后将此行添加到其顶部,并将此文件另存为 Test.xml: <?xml-stylesheet type="text/xsl" href="Test.xml"?> 因此,实际上 XML 正在引用自身来获取 XSLT。 尝试这个 XML/XSLT: 测试.xml <?xml-stylesheet type="text/xsl" href="Test.xml"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" exclude-result-prefixes="xsl my" xmlns:my="my"> <xsl:output method="html" omit-xml-declaration="yes"/> <xsl:strip-space elements="*" /> <my:embeddedXML> <foo name="1" b="2"> <bar name="11" b="22"> <baz name="111" b="222"/> <baz name="112" b="223"/> </bar> </foo> </my:embeddedXML> <xsl:template match="foo"> <h1><xsl:value-of select="@name" /></h1> <xsl:apply-templates /> </xsl:template> <xsl:template match="bar"> <h2><xsl:value-of select="@name" /></h2> <xsl:apply-templates /> </xsl:template> <xsl:template match="baz"> <p><xsl:value-of select="@name" /></p> <xsl:apply-templates /> </xsl:template> <xsl:template match="/"> <html> <body> <xsl:apply-templates /> </body> </html> </xsl:template> <xsl:template match="xsl:stylesheet"> <xsl:apply-templates /> </xsl:template> <xsl:template match="xsl:*" /> </xsl:stylesheet> 请注意,如果需要,此 XSLT 仍然可以应用于其他 XML 文件

回答 1 投票 0

XSLT 对重复元素进行排序的最佳方法

我是 XSLT 新手,正在尝试根据某些指令对任意大小的 XML 文档进行排序: 所有属性应按字母顺序排序 子元素应按

回答 2 投票 0

在流式传输时使用公共字段从循环外部的元素中提取数据

我之前提出过类似的问题,但我的 XML 结构已更改/我需要利用流式传输,但无法在我当前的解决方案中使用它。 我正在循环 XML,但是...

回答 1 投票 0

用于在父段下插入段的 XSLT 代码

我有一个输入XML文档,其中需要在父段下移动几个段,条件是当为“8R”时,应位于段下。对于其他...

回答 1 投票 0

XML,其中包含 JSON,其中包含数组:迭代该数组

我有这个XML: “国家列表”: [ { “国家名称”:“英国”, “国家ID”:“909”, “国家首都”:“伦敦” }, { ”

回答 1 投票 0

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