2

そのような2つのxmlファイルがあります

URL http://www.and.com/lookup/administrative_divisionからのルックアップ テーブル

<lookup table="administrative_division">
    <entry>
        <code>01</code>
    <name>ACT</name>
</entry>
<entry>
    <code>02</code>
    <name>NSW</name>
</entry>
<entry>
    <code>03</code>
    <name>NT</name>
</entry>

コードの名前を見つけるためにルックアップ テーブルにリンクするメイン xml

<features>
    <feature>
        <administrative_division>01</administrative_division>
    </feature>
    <feature>
        <administrative_division>02</administrative_division>
    </feature>
    <feature>
        <administrative_division>03</administrative_division>
    </feature>
</features>

これは私の努力です:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:variable name="administrative" 
select="document('http://www.and.com/lookup/administrative_division')/lookup/entry" />

<xsl:template match="/">
<table border="1">

            <tbody>
                <xsl:for-each select="features/feature">
                    <tr>
                        <td>
                            <xsl:value-of select="$administrative[code=current()]/name" />
                        </td>       
                    </tr>
                </xsl:for-each>
            </tbody>
        </table>
</xsl:template>

</xsl:stylesheet>

アイデアは、jsp を介してフィーチャー xml を解析し、それを xsl に渡すことです。xsl からルックアップ xml をロードして、コードと比較した後、コードの代わりに実際の名前を表示します。私の問題は、実行するとページが空白になることです。誰かが私に正しい方法を教えてくれますか?私はxlsの初心者です。ありがとう

4

1 に答える 1

0

値が少し欠けています:

<xsl:value-of select="$administrative[code=current()/administrative_division]/name" />

ただし、有効な HTML ページ (XSL がどのように適用されるかは不明) を生成するには、htmlbodyタグなどのコードをさらに追加する必要がある場合があります。

于 2012-05-27T07:14:53.457 に答える