I converted the motricity example to the symbolic form, just to think about it. Below, the original, then the converted.
rules
$arm_score:Integer ::= /data[id2]/events[id3]/data[id4]/items[id5]/items[id7]/value/value + /data[id2]/events[id3]/data[id4]/items[id5]/items[id9]/value/value + /data[id2]/events[id3]/data[id4]/items[id5]/items[id11]/value/value
arm: $arm_score < 99 implies /data[id2]/events[id3]/data[id4]/items[id5]/items[id13]/value/magnitude = $arm_score
arm_round_up: $arm_score = 99 implies /data[id2]/events[id3]/data[id4]/items[id5]/items[id13]/value/magnitude = 100
$leg_score:Integer ::= /data[id2]/events[id3]/data[id4]/items[id6]/items[id14]/value/value + /data[id2]/events[id3]/data[id4]/items[id6]/items[id16]/value/value + /data[id2]/events[id3]/data[id4]/items[id6]/items[id18]/value/value
leg: $leg_score < 99 implies /data[id2]/events[id3]/data[id4]/items[id6]/items[id20]/value/magnitude = $leg_score
leg_round_up: $leg_score = 99 implies /data[id2]/events[id3]/data[id4]/items[id6]/items[id20]/value/magnitude = 100
sum_score: /data[id2]/events[id3]/data[id4]/items[id24]/value/magnitude = /data[id2]/events[id3]/data[id4]/items[id5]/items[id13]/value/magnitude + /data[id2]/events[id3]/data[id4]/items[id6]/items[id20]/value/magnitude
total_score: exists /data[id2]/events[id3]/data[id4]/items[id24]/value/magnitude implies (/data[id2]/events[id3]/data[id4]/items[id22]/value/magnitude = /data[id2]/events[id3]/data[id4]/items[id24]/value/magnitude / 2)
Reworked in binding form:
rules
arm_score_computed:Integer ::= pinch_grip + elbow_extension + shoulder_abduction
arm: arm_score_computed < 99 implies arm_score = arm_score_computed
arm_round_up: arm_score_computed = 99 implies arm_score = 100
leg_score_computed:Integer ::= ankle_dorsiflexion + knee_extension + hip_flexion
leg: leg_score_computed < 99 implies leg_score = leg_score_computed
leg_round_up: leg_score_computed = 99 implies leg_score = 100
sum_score: summed_score = arm_score + leg_score
total_score: exists summed_score implies (total_score = summed_score / 2)
symbols
bindings = <
["pinch_grip"] = <"/data[id2]/events[id3]/data[id4]/items[id5]/items[id7]/value/value">
["elbow_extension"] = <"/data[id2]/events[id3]/data[id4]/items[id5]/items[id9]/value/value">
["shoulder_abduction"] = <"/data[id2]/events[id3]/data[id4]/items[id5]/items[id11]/value/value">
["arm_score"] = <"/data[id2]/events[id3]/data[id4]/items[id5]/items[id13]/value/magnitude">
["ankle_dorsiflexion"] = <"/data[id2]/events[id3]/data[id4]/items[id6]/items[id14]/value/value">
["knee_extension"] = <"/data[id2]/events[id3]/data[id4]/items[id6]/items[id16]/value/value">
["hip_flexion"] = <"/data[id2]/events[id3]/data[id4]/items[id6]/items[id18]/value/value">
["leg_score"] = <"/data[id2]/events[id3]/data[id4]/items[id6]/items[id20]/value/magnitude">
["summed_score"] = <"/data[id2]/events[id3]/data[id4]/items[id24]/value/magnitude">
["total_score"] = <"/data[id2]/events[id3]/data[id4]/items[id22]/value/magnitude">
>