は、ここでいくつかのポインタですが、Dimitrieが指摘したように、本当に、私は強くあなたのXMLが整形されていない、あなたがそのようhttp://www.w3schools.com/xsl/まず
としてまともなチュートリアルを労働時間を過ごすことをお勧めします。あなたのXSLTパーサーがこれについて動揺しなかったのは少し驚きです。あなたは決して閉じられていないオープニングTestタグとあなたの終わりのIdタグに余分な<を持っています。また、あなたの価値表現が適切に閉じられていない
次に、「この例では、すべてのノード値を読み取ることができます...」と言います。この種のことは、あなたはXSLTを書くことができるようにしようとしている場合、テンプレート一致ビットは意味:それは何のxsl理解することが重要です
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:template match="/root">
<xsl:value-of select="ID"/>
</xsl:template>
</xsl:stylesheet>
:あなたのコードと私はそれは次のようになりますことを推測しています。 XSLTは、入力文書を出力文書に変換する規則を適用して、文書全体を処理します。
各段階で、ドキュメント内のどこを見ているかを知る必要があります。これは「コンテキスト」として知られています。上記のコードでは、/ rootに到達するとルールが適用されます。これは、山括弧の中に囲み物を持たないrootという山括弧内のものを意味します。
このコンテキストが与えられると、XSLT式はそれに関連しています。 DOSのディレクトリパスのようなものです。あなたが現在のディレクトリを知っていない限り、相対ファイルパスはあまり意味がありません。
あなたの例では、select = "ID"は現在のコンテキストの子であるIDタグの値、つまり/ root/IDを意味します。
あなたの質問はどのように言語要素でしたか。まあ、エンジンの文脈が/ rootの場合は、本を読んでから、言語に戻ってID /書籍/言語になるようにする必要があります。
XSLTを学ぶことをお勧めします。それは本当に難しいことではなく、XMLを処理するための非常に強力な言語です。
xsl foreach、またはxslテンプレートが必要です。あなたが投稿したデータに基づいて、それぞれが仕事をするでしょう。 –
あなたのxsltコードを投稿してください。あなたのためにそれを修正します:) –