草庐IT

xml - 在 XSLT 中,如何从不同的范围递增全局变量?

我正在处理一个XML文件,我想在其中记录节点数,以便在编写新节点时可以将其用作ID。目前我有一个名为“counter”的全局变量。我可以在模板中访问它,但我还没有找到在模板中操作它的方法。这是我的XSLT文件的压缩版本:从这里开始有什么建议吗? 最佳答案 其他人已经解释了变量是如何不可变的——XSLT中没有赋值语句(与一般的纯函数式编程语言一样)。对于目前提出的解决方案,我有一个替代方案。它避免了参数传递(这在XSLT中是冗长和丑陋的——即使我承认这一点)。在XPath中,您可以简单地计算的个数。当前元素之前的元素:(注意:空白代码

xml - 使用xsl输出纯文本

我需要使用XSL从XML生成简单的纯文本输出。由于我没有在网上找到任何好的、简洁的示例,所以我决定在这里发布我的解决方案。任何引用更好示例的链接当然会受到赞赏:at-f:一些重要的事情对我有帮助:使用xsl:output省略输出文档开头的标准声明使用xml:space="preserve"属性来保留我在xsl:for-each标记中写入的任何空格。这也要求我将for-each标签内的所有代码(包括该标签)写在一行中(换行符除外)。使用插入换行符-我不得不在这里省略标准的xml缩进。此xslt的结果和期望输出是:at-falluser23:5817.4.2010在-fggroup677:

xml - 如何使用 XSLT/XPath 生成以逗号分隔的列表?

鉴于此XML数据:appleorangebanana我可以使用这个XSLT标记:...,...得到这个结果:apple,orange,banana,但是如何生成最后一个逗号不存在的列表?我认为可以按照以下方式做一些事情:...,...但是测试表达式应该是什么?我需要一些方法来确定列表的长度以及我当前在列表中的位置,或者,如果我当前正在处理列表中的最后一个元素(这意味着我不关心它有多长是或当前位置是什么)。 最佳答案 这是一个很常见的模式:, 关于xml-如何使用XSLT/XPath生成以

css - 使用XSL-FO,CSS3而不是CSS2创建分页文档(如PDF)?

有很多旧文本,例如this2002book,指出我们必须使用“CSSforWeb”和“XSL-FOforprint”。我认为,在当今(2012年),我们最终可以将CSS与能够理解pagedmediaofCSS2和CSS3的渲染引擎一起使用...但是,“新文本”,程序员的共识以及软硬件的投资又在哪里?XSL-FO或“XSL格式设置对象”(W3C标准)是生成PDF文档的最常用技术,来自XML或XHTML内容。版本1.1ofXSL-FO出版于2006年,1.0in2001。CSS2.1来自2011年,但是CSS2.0是1998年的标准,于2008年修订...我认为标准年龄不是问题。带有HTM

xml - xsl : how to split strings?

我想将分号(;)上的地址拆分为由分隔的行:例如如果address=123ElmStreet,我想输出123ElmStreet,但是如果address=123ElmStreet;POBox222,我要输出123ElmStreetPOBox222如果address=123ElmStreet;POBox222;c/oJamesJones,我要输出123ElmStreetPOBox222c/oJamesJones有没有办法做到这一点?(可能很简单,但我对XSLT不太熟悉)普通的XSL选择器是我想修改此XSLT片段以按分号拆分。更新:显然答案涉及使用和函数substring-before()和s

xml - 设置 xsl :value-of into an href attribute and the text field of a link in an XSLT

如何通过XSLT转换设置既是指向链接又具有链接文本的href?到目前为止,这是我所拥有的,这给了我错误“xsl:value-of不能是xsl:text元素的子元素”: 最佳答案 定义XSL文档中的文本部分。只有真实的纯文本可以放在此处,而XML节点不能。你只需要,无论如何都会打印文本。 关于xml-设置xsl:value-ofintoanhrefattributeandthetextfieldofalinkinanXSLT,我们在StackOverflow上找到一个类似的问题:

xml - XSL if else 条件

我有一个要求,我希望有ifelse语句来检查节点是否具有属性或它只有字符串。例如:1个节点有0File(s)found另一个具有等属性下面是两个节点的示例0File(s)found0File(s)found我如何确定一个节点是否只有字符串或属性,并基于此我可以获得值String或attribvalues分别。 最佳答案 我们可以通过下面的代码实现ifelse这就是我所做的SystemFileNameFileSizeDateTimeAM/PM我的输出 关于xml-XSLifelse条件,我

xml - 亚马逊产品广告 API : How to get a JSON response for ItemLookup/Search

我正在尝试从其ASIN获取亚马逊产品的详细信息。产品API允许使用ASIN执行Itemlookup,但返回值在XML中。我想从客户端调用Itemlookup,所以想调用JSONP,但我找不到。我在网上找到了一些使用XSLT样式表将XML转换为JSON格式的文章:(一)https://bitbucket.org/basti/python-amazon-product-api/src/tip/examples/json-results.py我尝试使用此python-amazon-product-api和此示例,但我无法获得JSON返回值。(b)http://www.kokogiak.com

xml - XSLT 和 XSL-FO 之间有什么区别?

XSLT和XSL-FO有什么区别?我读过的所有资源都将它们视为1个,或者至少非常紧密地联系在一起...... 最佳答案 我想知道这个问题的基础,因为我认为它很容易回答,但是一旦你来到这里:http://www.w3.org/TR/xsl/很明显,这实际上是一个好问题-因为页面上的第一件事几乎就是这个声明:ThisspecificationdefinesthefeaturesandsyntaxfortheExtensibleStylesheetLanguage(XSL),alanguageforexpressingstylesheet

xml - XSL : Avoid exporting namespace definitions to resulting XML documents

我想从一些XML文件中获取数据并将它们转换成一个新的XML文档。但是,我不希望XSLT中的namespace定义出现在结果文档中。换句话说:来源:样式表:结果:我正在使用msxsl进行转换。 最佳答案 您可以使用xsl:stylesheet元素的exclude-result-prefixes属性来避免在输出文档中发出命名空间前缀:要从输出文档中抑制多个namespace,请指定它们以空格分隔:exclude-result-prefixes="prefix1prefix2prefix3"来自XSLTspecification:When