2016-04-02 3 views
1
<results> 
    <bonuses> 
     <bonus BID="b1">3</bonus> 
     <bonus BID="b2">6</bonus> 
    </bonuses> 
    <question QID="q1">4</question> 
    <question QID="q2">7</question> 
    <question QID="q3">9</question> 
</results> 

Учитывая приведенный выше код, что было бы правильным способом найти сумму всех элементов. То есть (3 + 6 + 4 + 7 + 9)?Xpath получение суммы всех детей и внуков

Ближайший я мог получить только получать сумму бонусов:

sum(/results/*/*) 
+1

hr_117 и vtd_xml_authors имеют большие старты. Наиболее подходящий ответ будет зависеть от того, насколько однородным и последовательным является ваш исходный XML. – Paulb

ответ

2

Чтобы получить сумму нот без детей попробовать:

sum(/results//*[not(*)]) 
+0

этот эффективнее, чем мой! –

1

Как насчет sum(/results/*/*)+ sum(/results/question)?

Смежные вопросы