2017-11-06 14 views
0

皆さん、私はxml/xslを初めて使っています。代わりに(参照私は、カテゴリ名とそれを交換したいcategoryIdXSLT Idを置き換えて、他のノードの値を取得

<xsl:stylesheet version="1.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
xmlns:l="urn:VocabularyExport"> 

<xsl:key name="category" match="category" use="@id" /> 
<xsl:template match="/"> 
<html> 
    <body> 

    <h1>My Vocable Colletion</h1> 
    <table border="1"> 
     <tr bgcolor="#9acd32"> 
     <th>Id</th> 
     <th>Deutsches Wort</th> 
     <th>Spanishes Wort</th> 
     <th>CategoryId</th> 
     </tr> 
     <xsl:for-each select="l:export/l:vocables/l:vocable"> 
     <tr> 
      <td> 
      <xsl:value-of select="@id"/> 
      </td> 
      <td> 
      <xsl:value-of select="@germanWord"/> 
      </td> 
      <td> 
      <xsl:value-of select="@spanishWord"/> 
      </td> 
      <td> 
      <xsl:value-of select="@categoryId"/> 
      </td> 
     </tr> 
     </xsl:for-each> 
     </table> 
    </body> 
    </html> 
    </xsl:template> 
</xsl:stylesheet> 

:私はテーブルにそれを表示するために

<?xml version="1.0" encoding="utf-8"?> 
<?xml-stylesheet type="text/xsl" href="Miau.xsl"?> 
<export xmlns="urn:VocabularyExport"> 

<categories> 
    <category name="A" id="123" /> 
    <category name="B" id="456" /> 
</categories> 

<vocables> 
    <vocable categoryId="123" spanishWord="uno" engWord="one" id="45d0a344-785b- 
4463-9877-5474c99fdc74" /> 
    <vocable categoryId="456" spanishWord="dos" engWord="two" id="03efffbb-1cbf- 
44f9-a377-74da252daac0" /> 
</vocables> 
</export> 

をXMLコードを以下している、私は(作業)XSLコードを次していますノードcategories)。何か提案はありますか?

答えて

0

XSLTの名前空間の処理に追加したように、XML/XSLTを初めてお使いの方には適しています。しかし、あなたはあなたの鍵でこれを逃してしまった。 D:

<xsl:value-of select="key('category', @categoryId)/@name"/> 
+0

ああ、いまいましい私はすでにほぼ同じ試みたが、私の「一致」は偽だった:それはこの

<xsl:key name="category" match="l:category" use="@id" /> 

はその後、カテゴリ名を取得するには、あなたがしたい式がこれですでなければなりませんどうもありがとうございました;) – Trace

関連する問題