Χρησιμοποιώντας το XPath για να πάρουμε attributes

Μόνιμα έψαχνα τρόπο να πάρω την τιμή απο ένα attribute σε ένα xml αλλά κάθε φορά που το έβρισκα μετά ξέχναγα πως το είχα κάνει. Οπότε αποφάσισα επιτέλους να το γράψω κάπου 🙂

Έστω λοιπόν το XML παρακάτω

<messages>
 <note id="1821">
  <to>MpouMpoulina</to>
  <from>Kolokotronis</from>
  <heading>Reminder</heading>
  <body>Today we invade, ps bring food</body>
</note>
<note id="1940">
  <to>Metaxas</to>
  <from>People</from>
  <heading>Reminder</heading>
  <body>Today we say NO</body>
</note>
</messages>

Και θέλω να πάρω το id attribute στο πρώτο node, τότε γράφω το XPath query
[string( //note[1]/@id ) ] και παίρνω 1821