Depends on the structure of your file. If all meeting_pattern elements are siblings it does not matter, if they are not it might. Example:
Code:
<meetings>
<meeting>
<meeting_pattern><topic>A</topic></meeting_pattern>
</meeting>
<meeting>
<meeting_pattern></meeting_pattern>
</meeting>
<meeting>
<meeting_pattern><topic>B</topic></meeting_pattern>
<meeting_pattern><topic>C</topic></meeting_pattern>
</meeting>
<meeting>
<meeting_pattern><topic>D</topic></meeting_pattern>
</meeting>
<meeting>
<meeting_pattern></meeting_pattern>
</meeting>
</meetings>
When you ask for "/meetings/meeting/meeting_pattern[topic][1]" you are asking for all meeting_pattern elements that have a topic child and are the first meeting_pattern in their block so you get Topics A, B and D. If you just want the first one with a topic over the whole document then use parentheses, "(/meetings/meeting/meeting_pattern[topic])[1]".
If your structure was simpler, like this:
Code:
<meetings> <meeting_pattern><topic>A</topic></meeting_pattern>
<meeting_pattern></meeting_pattern> <meeting_pattern><topic>B</topic></meeting_pattern>
<meeting_pattern><topic>C</topic></meeting_pattern> <meeting_pattern><topic>D</topic></meeting_pattern>
<meeting_pattern></meeting_pattern>
</meetings>
then "/meetings/meeting_pattern[topic][1]" and "(/meetings/meeting_pattern[topic])[1]" would both give Topic A.
I have used the short form of "[1]" which equals "[position() = 1]" in all these examples.
Joe (MVP - xml)