Jimmy,
Thanks for responding! This is more of a discussion question as I am trying to better understand how InfoPath uses XPath. Take a look at this StackOverflow question about "current" vs. "context" node. When referring to the "current" node, I don't actually mean the "current()" function but actually the node that is being evaluated at that time... My lack of understanding could be creating a communication gap here as I may be misusing terminology.
It seems to me that XPath expressions are not actually contained in the XML itself... It seems that they are executed against the XML structure in much the same way that an SQL query is executed against a database. I run my SQL query and reference tables and columns to return a specifc value; I then must explicitly store that value somewhere. In InfoPath I use an XPath expression to reference a particular node and return a particular value. It seems that InfoPath provides the means of storing that value in a node, and typically XPath doesn't do that on its own...
My mental model may be out of whack though, as XPath and SQL are very different creatures...
Any insight into how InfoPath uses XPath at a fundamental level would be greatly appreciated!