Bonjour,
Pourriez vous m'expliquer la difference entre les expressions suivantes :
1.
//A[position() = 1]
/descendant::A[position() = 1]

pour moi: elles retournent toujours le méme résultat

2.

/A/B[@att1=''a1'' and position()=last]
/A/B[@att1=''a1''] [position()=last]
/A/B[position()=last] [@att1=''a1'']

Merci d'avance