jjzjj

php - xslt 1 和求和函数

我使用xml和PHP创建了一个发票管理系统,但最新的PHP版本不支持XSLT2.0-因此我必须寻找sum()替代方案。如何将有效的xslt2函数“sum(unitprice*quantity)”转换为xslt1.0?XML内容基于John'sExamples我用节点集试过,但不支持“xmlXPathCompOpEval:找不到函数节点集” 最佳答案 实际上,sum(price*quantity)不是有效的XSLT2.0语法。我猜你的意思是像`sum(for$xin*return$x/price*$x/quantity).在XSLT1

xml - 如何在 XSLT 中获取节点值的 sum()

我正在尝试计算数字节点的总和。以下代码不返回除HTML之外的任何内容。我知道sum()需要一个节点集。我想我已经正确地创建了变量。我做错了什么。谢谢。XML示例:2015-03-14507200RetailerCashIncentive16507201Acme#210250.000507202Acme#210360.000507203Acme#10080.000507207Acme#2228200.003598419AcmeNO1071NONQUALNONQUAL598421AcmeNO1072NONQUALNONQUALXSLT: 最佳答案

xml - 在 XSLT 中用逗号作为小数点分隔符求和数字?

我有一个XML文件,其中数字以逗号分隔我想对XSLT中的/foo/bar/@val值求和,但我有点卡在格式上。有谁知道正确的语法是什么? 最佳答案 我猜测,“val”属性中指定的值是一个用逗号代替小数点的数字。有几种可能的解决方案:我。XSLT1.0这个转换:应用于最初提供的XML文档时:产生想要的结果:13.68二。XSLT2.0这个转换:应用于同一个XML文档时,产生相同的正确结果:13.68III.FXSL2.x这个转换:应用于同一XML文档时产生相同的正确结果:13.68最后一种解决方案更灵活,当需要在求和之前对值进行更复杂

xml - 是 XPath sum 还是 fn :sum function implemented in PostgreSQL XPath?

我正在使用PostgreSQL8.4XPath(XML函数)功能。这是在文档中找到的改编示例:SELECTxpath('/my:a/value[.>15]','201030',ARRAY[ARRAY['my','http://example.com']]);这很好用,它返回一个用"value>15"条件正确过滤的节点列表:xpathxml[]---------------------------------------"{20,30}"但是当我尝试使用“sum”时,它返回一个空列表而不是一个标量值:SELECTxpath('sum(/my:a/value[.>15])',...结果:x

xml - 返回舍入结果的 XPath SUM 函数

我正在使用的API需要一个散列,它由所有特定元素的值的总和组成。例如,假设它是示例XML中的元素。当我使用XPathSUM函数计算这个值时,我得到的值与我简单地迭代和添加节点时得到的值不同。这是为什么?stringxml=@"1056782317559615910567823175596159";XDocumentdoc=XDocument.Parse(xml);Console.WriteLine(long.Parse(doc.XPathEvaluate("sum(//longs/long/text())").ToString(),System.Globalization.Number

XML/XSL : Sum in foreach loop with conditional (special case)

我有以下XML:102030如何使用XSL对id=1的所有成员的属性求和?谢谢 最佳答案 使用:sum(/*/*/*/number[../children/members/member[@id=1]])这个转换:应用于此XML文档时(更正了提供的严重格式错误的文本!):102030产生想要的、正确的结果:40 关于XML/XSL:Suminforeachloopwithconditional(specialcase),我们在StackOverflow上找到一个类似的问题:

xml - XSL - 元素的求和乘法

我有一些这样的元素:1724207我想打印这个项目的成本总和。那么数学上是什么:sum(quantity*unit-price)我如何使用xsl做到这一点?我试过在for-each循环和正常的valye-of中使用变量。但我仍然得到一些奇怪的结果(我不会添加这段代码,因为它很糟糕)。 最佳答案 XSLT:sum:输入XML:127102071002007输出:sum:20202 关于xml-XSL-元素的求和乘法,我们在StackOverflow上找到一个类似的问题:

xml - xPath - sum(//*) 解释

假设我们有以下XML结构:243为什么sum(//*)返回274? 最佳答案 因为它是243+24+3+4=274//*表示所有元素,即a、b、c、d。然后,我们总结了它们的文本值,其中包括除标签之外的所有内容。我认为,您要查找的是sum(//*/text()),在本例中为9 关于xml-xPath-sum(//*)解释,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/224616

sql - SUM 和 COUNT xPath 表达式在 Oracle 11.2 中不起作用

我在Oracle(11gR2)中运行一些-相当简单-xPath查询时遇到问题,其中包含SUM和COUNT函数。例如:selectextractvalue(xmltype.createxml('1XXX2YYY'),'sum(/a/b/c)')fromdual;count相同:selectextractvalue(xmltype.createxml('1XXX2YYY'),'count(/a/b/c)')fromdual;我收到ORA-31012作为响应。知道如何让它工作吗?或者有什么可能的解决方法? 最佳答案 我不记得上次使用ext

xml - Sum String-Length of two different nodes with Xpath - 将两个节点的字符串长度相加

以下xpath似乎不起作用://FullName[sum(string-length(FirstName)|string-length(LastName))>=30]错误:表达式必须求值为节点集。XML片段somereallylongfirstnameguysomereallylonglasttnameguyabcdefghijklmnopqrstuv我知道sum函数将数字相加,字符串长度返回数字。下面的表达式工作正常://FullName[string-length(FirstName)>=1]如有任何帮助,我们将不胜感激。 最佳答案