#?SuikaWiki/0.9 * key (XSLT) ** xslt:key 要素 (XSLT) [2] [CODE(XSLTe)[[VAR[xslt:]]key]] 要素 () は、[[鍵]]を設定するのに使います。 属性: ,[CODE(XSLTa)[[[match]]]],[[パターン]],(必須),鍵対象節 ,[CODE(XSLTa)[[[name]]]],[[QName]],(必須),鍵名 ,[CODE(XSLTa)[[[use]]]],[[式]],(必須),鍵値取得元 この要素は[[強制空要素]]で、[[最上位要素]]です。 他の最上位要素とは異なり、この要素型では[[輸入優先度]]による取捨選択がありません。 輸入優先度とは全く無関係に、全ての要素が使われます。 [3] [CODE(XSLTa)[match]] 属性及び [CODE(XSLTa)[use]] 属性で[[変数参照]]を使うのは[[誤り]]です。 [CODE(XSLTa)[use]] 属性は [CODE(XSLTa)[match]] の式に一致した節それぞれについて、 その節を[[現在節]], その節だけを[[現在節並び]]として評価します。 その結果が鍵名になりますが、節集合ならその構成要素それぞれの[[文字列値]] (複数になることもある!), それ以外なら [CODE(XPathf)[[[string]]]] 関数に通した結果が採用されます。 [[#comment]] ** key 関数 (XSLT) [4] [CODE[[VAR[節集合]] [CODE(XPathf)[key]] ([VAR[[[QName]]]], [VAR[物体]])]] は、条件に合致する鍵の節を返します。 第1引数は鍵の名前、第2引数は鍵の値です。 第2引数が節集合以外であれば、 [CODE(XPathf)[[[string]]]] 関数を通した値と鍵の値の一致をみます。 節集合であれば、構成するそれぞれの節の[[文字列値]]についての結果の[[和集合]]となります。 [[#comment]] ** メモ - [1] ''を使おう(1)'' - [5] ''はてなダイアリー - Hatena::agenda'' : 仕様書に挙げられている例なんて簡単に XPath 式で代替できる、もっとまともな例を出せよ!という話。 - [6] ''key関数の考察(XSLT1.0) - agenda 2003-10(上旬) - Personnel'' : >>5 ということで key についての考察キター(AA略) [[#comment]] * @key{[VAR[key-name]]} (GNU texinfo) [7] [CODE[@key]] は、鍵盤の鍵を示すために使用します。 [CODE[@key]] は、利用者に入力させる打鍵列を示す時に [CODE[@[[kbd]]]] の中に入れることができます。 たとえば、 [SAMP[@kbd{C-x @key{ESC}}]] のように書きます。 Texinfo のマニュアルには、 [CODE[KBD]] など代表的な鍵の名前が「推奨」として挙げられています。 先の例の [SAMP[C-x]] のように、鍵単独ではなく修飾子として使用するときには [CODE[@key]] ではマークしないようにと書いてあります。 [[#comment]] * メモ