Подтвердить что ты не робот

Какова цель $в XSLT

Я беру класс XML в Интернете, и я не совсем уверен, для чего используется "$".

В частности, вот блок из учебника.

<xsl:value-of select="key('agentID', $aID)" />

Знак доллара перед aID - это то место, где я смущен. Почему он должен быть там?

4b9b3361

Ответ 1

Это фактически правило XPath, поэтому оно может использоваться в любом выражении XPath внутри кода XSLT.

Символ $ используется как первый символ в ссылке на переменную (или параметр) в выражении XPath.

Таким образом:

$person

означает: переменная xsl или параметр с именем person.

Если мы используем просто:

person

это означает что-то совершенно другое: все дочерние элементы контекста node, которые называются person

Забывание $ до того, как имя переменной в ссылке на переменную является одной из самых частых ошибок, допущенных программистами XSLT.

Хорошо использовать такие имена для переменных или параметров, которые визуально указывают, что именованный объект является переменной/параметром.

Например, я всегда префикс имени переменной v и имя параметра p:

$vPerson

$pTable