Что означает выражение xpath "@ *"? - PullRequest
4 голосов
/ 31 января 2012

Шаблон Microsoft XSLT в Visual Studio имеет что-то вроде:

<xsl:template match="@* | node()">

Что такое @ *?

Ответы [ 3 ]

7 голосов
/ 31 января 2012

@* является сокращением от attribute::* и выбирает все атрибуты узла контекста (или, в шаблоне совпадения XSLT, более уместно сказать, что он соответствует всем атрибутам).Начиная с спецификация XPath :

Существует также сокращение для атрибутов: attribute:: может быть сокращено до @.Например, путь местоположения para[@type="warning"] является коротким для child::para[attribute::type="warning"] и поэтому выбирает para потомков с атрибутом type со значением, равным warning.

2 голосов
/ 31 января 2012

Это означает соответствие любому атрибуту.

http://www.w3.org/TR/1999/REC-xpath-19991116/#path-abbrev

1 голос
/ 31 января 2012

Из MSDN - Примеры XPath :

@ * |Все атрибуты текущего элемента контекста.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...