What does the xpath expression "@ *" mean?
@* abbreviated for attribute::* and selects all the attributes of the node context (or in the XSLT matching pattern it is more appropriate to say that it matches all the attributes). From the XPath specification :
There is also an abbreviation for attributes:
attribute::may be abbreviated@. For example, the location pathpara[@type="warning"]not suitable forchild::para[attribute::type="warning"]and therefore selectsparachildren with thetypeattribute with a value equal towarning.
From MSDN - XPath Examples :
@ * | All attributes of the current context of the element.