草庐IT

xml - xsl :copy and xsl:copy-of? 和有什么区别

我看不出xsl:copy和xsl:copy-of之间的区别。我应该在什么情况下使用哪一个? 最佳答案 简而言之,xsl:copy是一个浅拷贝;xsl:copy-of是深拷贝。何时使用xsl:copy与xsl:copy-of使用xsl:copy当您想复制只是上下文项并且对上下文项的子项有其他计划。使用xsl:copy-of当您想复制XPath选择的节点和他们的child,递归地。xsl:copy注释xsl:copy指令复制上下文项但没有它的子节点。这是一个浅拷贝。xsl:copy指令不能有@selectXPath。可以在identit

xml - 使用 XSLT 对简单 XML 应用 Muenchian 分组

如何Muenchiangrouping工作细节?我有一个从数据库生成的简单XML文档:John14247635627612012-10-035000John5436675437322012-10-0210000...我想按名称节点分组。我怎样才能得到以下所需的输出?John14247635627612012-10-0350005436675437322012-10-0310000.... 最佳答案 阅读www.jenitennison.com/xslt/grouping/muenchian.xml,帮助代码定义一个键然后使用模板作为

xml - 链接 iTunes 的 ITC2 文件和 "iTunesLibrary.XML"

我正在尝试从iTunes的.ITC2文件中转储专辑插图。我能做的女巫。但在我尝试转储图像之前,我需要记下它对应的专辑/轨道/艺术家(三者中的任何一个)。有没有人发现他们是否改变了缓存文件的命名方式?因为,文件名为“2100F8A77FA24601-F2E26C349A9AB861.itc2”的“2100F8A77FA24601”实际上是我的图书馆ID,但在我图书馆的XML文件中找不到“F2E26C349A9AB861”。有人可以向我解释如何将itc2文件与位于XML文件中的轨道相关联。reference我确实从上面的链接中获得了一些关于如何设置iTunes的信息。但是这篇文章已经过时,

xml - XSLT 函数返回不同的结果 [Saxon-EE vs Saxon-HE/PE]

我目前正在使用各种版本的Saxon-Processor进行纯XSL转换。下面是我的简短样式表,根据我的问题的需要进行了简化:Calloffunc_1: Calloffunc_1: Calloffunc_1: Calloffunc_2:描述foo:func_1是一个包装函数,用于返回第二个函数的值+做其他事情,可以忽略。这个函数调用其他函数的概念是强制性的!foo:func_2为元素生成一个唯一的ID。此元素在名为“节点”的局部范围变量中创建。基于撒克逊版本的不同结果预期结果:Calloffunc_1:d2Calloffunc_1:d3Calloffunc_1:d

xml - XSLT 从子目录转换多个文件

我创建了一个可以转换单个XML文件的XSLT文件。但是,我有数百个包含多个xml文件的目录。XSLT中有没有一种方法可以转换所有这些文件。我正在使用收集功能来获取所有文件的列表。但是,现在不确定如何应用转换。这是我的示例XSLT文件。基本上,我想遍历所有xml文件并将模板表应用于单个文件。所有这些转换的输出需要在一个单一的平面文本文件中。2">|||| 最佳答案 这可能是最简单的示例,说明如何处理文件系统子树中的所有xml文件(使用Saxon中实现的collection()函数):当应用于任何XML文档(未使用,忽略)时,

xml - 如果 XML 是本地的而 XSL 在远程服务器上,IE9 和 Chrome 不会使用 XSL 呈现 XML

我有以下XML:和XSL:Test这在IE8中工作正常,但在IE9或Chrome中无效。我读到如果XML源文件在本地机器上,IE9似乎禁止从远程服务器加载XSL。有什么方法可以让IE9和Chrome将远程XSL文件应用于本地XML文件,而不会破坏浏览器的安全设置?我们有一个桌面应用程序,它生成XML报告并在浏览器中显示它们,并使用托管在远程服务器上的样式表进行转换。 最佳答案 这在本地有效吗?我不这么认为,因为XML和XSLT都存在一些错误。Chrome阻止本地XML和XSLT处理!这是一个问题,或者他们出于安全原因禁用了它。看这个

xml - 使用 XSLT 创建带有嵌套粗体/斜体标签的 XSL-FO

我正在创建xslt文件,它将我的xml转换为xsl-fo。XML是这样的:sometext当然,文档中有很多段落和要点。我想增加格式化“一些文本”的可能性,例如boldedtextanditalic应该给boldedtextanditalic现在我有了非常简单的xslt文档,就像这样:Pageof我应该添加另一个模板(粗体、斜体)吗?我应该如何在“文本”节点中调用它?我找到了一些解决方案:但它对我不起作用。输出xsl-fo不包含任何fo:inline。 最佳答案 看看这个例子。它清楚地展示了如何处理内联节点。[XSLT1.0]给出:

xml - XSL if 测试在有值时显示内容

我有一个if测试,当属性有值时,我想在其中用逗号显示“year”属性的内容。这行不通,所以我会感谢您的建议。, 最佳答案 您可以简单地使用此表达式检查year元素是否存在:如果你想检查year元素是否为空: 关于xml-XSLif测试在有值时显示内容,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/8007992/

xml - 匹配 XSL 中的子元素

我以为我在对thisquestion的回答中看到了一个错误,并指出。有人告诉我我错了,后来我的答案被删除了。我仍然不明白我错在哪里。因此,我在这里发帖,希望有人能向我解释我的误解。我回复的回答说明了apply-templates的使用。它包含以下XML和XSL,描述了模板将如何匹配:fooelementencounteredotherelementcountered我的意见是最后一个模板应该是:otherelementcountered因为当前节点已经是有人告诉我:No,xml/*isapatternthatmatcheschildelementsofanelementwiththen

xml - XSLT:将节点向上移动一级

我想知道在满足某些条件的情况下如何使用XSLT将节点向上移动一级。举个例子,看看下面的XML源代码:这是我作为起始情况的XML。需要说明的是,节点名称“Settings”、“String”、“Boolean”是我们定义的特殊节点。问题是“字符串”节点内不允许“bool”节点。这就是为什么我必须将那些“bool”节点向上移动。所需的XML如下所示:XSLT还必须处理每个具有兄弟bool节点的字符串节点,而不管其在XML树中的位置。到目前为止,我了解到您必须首先使用“身份规则”复制所有XML,然后为所需的转换应用一些特殊规则:我正在努力解决的问题是将所有“字符串”节点的sibling“bo