<record>
<node_1>
<value_1_0>5</value_1_0>
<value_1_1>0</value_1_1>
<value_1_2>10</value_1_2>
<value_1_3>8</value_1_3>
</node_1>
.................................
.................................
<node_63>
<value_63_0>1</value_63_0>
<value_63_1>99</value_63_1>
<value_63_2>53</value_63_2>
<value_63_3>5</value_63_3>
</node_63>
</record>
问题陈述:如何为这两种情况编写高效的 XPath 表达式?
如果任何节点的值非零,我需要检查前一个和下一个节点的特定子节点的值是否非零。即如果 node_50/value_50_0 不为零,则 node49/value_49_0 和 node51/value_51_0 也应该不为零。同样,对于其他情况。
接下来,它应该将备用节点的值相加。即 node_1/value_1_0 + node_3/value_1_0 + ... + node_63/value_1_0。同样,对于 value_1_1,...,value_63_1 等等。
我想知道是否有为每个索引提供计数器变量的任何“for 循环”,以便 XPath 表达式对于这两种情况都很简单?
伪代码:
for(i=1; i<64; i++)
for(j=0;j<4;j++)
if (node_i/value_i_j !=0)&& (node_i-1/value_i-1_j !=00)&&(node_i-1/value_i-1_j!=0)
True
else
False
end
end