p: variable :: Что означает затенение и можно ли переназначить новое значение ранее объявленной p: variable - PullRequest
0 голосов
/ 27 ноября 2011

Я еще не пробовал.

Можем ли мы обновить значение переменной p: где-нибудь еще в конвейере, т.е. после ее действительного объявления в начале какого-то шага?Если нет, то почему?Кроме того, каков наилучший способ сделать это, если мне действительно нужно это сделать или хотя бы имитировать.

1 Ответ

0 голосов
/ 30 ноября 2011

Я переправил ваш вопрос в список рассылки xproc-dev.Видимо, рекомендация, похоже, противоречит сама себе.Раздел 5.7 (http://www.w3.org/TR/xproc/#variables-options-parameters) прямо говорит, что в определенных условиях следует разрешать теневое копирование.Но в разделе 3.2 (http://www.w3.org/TR/xproc/#scoping) говорится, что повторное использование одного и того же имени переменной в области видимости является ошибкой.Было достигнуто согласие, что в принципе это должно сработать:

<p:variable name="myvar" select="1"/>
<p:group>
    <p:variable name="myvar" select="2"/>

Однако XMLCalabash (0.9.40) задыхается от этого.Вы можете попробовать Calumet или другие процессоры, хотя ..

...