Remember that it all depends on the structure of your XML
//nodeName will return all the nodes with that name in your document and sometime it could be misleading.
I usually prefer a more difensive solution using the path starting from the documentNode
For example in your case, say theXML is the XMLDocument:
Var theNodes as XMLNodeList=theXML.documentElement("data/METAR/temp_c")
using this strategy you can use as starting node any internal node you can identify.
More over you can select between siblings nodes: theXML.documentElement("data[@num_result=""2""]/METAR/temp_c")
In any case the value could be not existent a better XQL could be (valid for both strategy):
now if you get a list of noted (XQL result length >0) you are sure that is the desired text node and now you can get the value.