外部ファイルをマッピングに含めて、マッピングにアクセスすることができます。私はファイル名として 'b1.xml'を使用しました。フルネームをショートネームに置き換えます。
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:variable name="StateMap" select="document('b1.xml')/StateMapping" />
<xsl:template match="states">
<states>
<xsl:apply-templates select="state" />
</states>
</xsl:template>
<xsl:template match="state">
<xsl:variable name="toMap" select="text()" />
<state><xsl:value-of select="$StateMap/Map[@name = $toMap]" /></state>
</xsl:template>
</xsl:stylesheet>
あなたがあなた自身に置き換えなければならない外部のマッピングファイルは、次のとおりです。
<?xml version="1.0"?>
<StateMapping>
<Map name="New York">NY</Map>
<Map name="California">CA</Map>
</StateMapping>
出力は次のとおりです。
<?xml version="1.0"?>
<states>
<state>NY</state>
<state>CA</state>
</states>
あなたがの抜粋であなたの質問を拡張することができます状態のリスト(マッピング)? – zx485
XSLT 2.0では、マッピングテーブルをスタイルシートのグローバル変数に入れることができます。純粋な1.0ではそうすることはできませんが、多くのプロセッサーが提供するexslt:node-set()関数が可能になります。 –