I did not realize this fact until today...I really dislike XPath as I am not allowed to express hate due to it being technically against my religious beliefs. I was working with a form in InfoPath 2003, because Terracon is not getting 2007 until next year. I created this form that uses a repeating table and a drop down list. When certain values are selected on the drop down list it will pop up certain text in various columns in this row. Unfortunately I was getting only the last row using a count function, so only the last row was actually working properly. I was about ready to give up, then I decided to call my old LRS Buddy Ryan who rocks InfoPath hardcore. He sent me a function called current(). I used this function to get the current index. Then I realize that when I remove a column what I just added no longer works, because the field I have getting the index for that row is set to the wrong number. I quickly added in a while loop to the OnAfterChange function, so it changes my index fields to the right value. It was about 10 hours of struggle that I feel could have been solved in a custom list on SharePoint with a custom aspx form. I feel that InfoPath is great for simpler forms, but when you start getting more complex it just feels like you have chopped off your limbs with a machete. If anyone is incredibly interested in this convoluted solution I can post an in depth screen shot intensive entry in the next few weeks depending on my ability to write a book chapter or not.