2 つの結合されたリストから一意の求人リストを抽出しようとして問題が発生しています。2 つのリストは同じドキュメントにありますが、構造が異なります。
私の計画は、2 つのリストを組み合わせたノード セットを構築することでした。次に、すべての要素が同じ構造を持つ単一のリストを作成します。次に、2 番目のノード セットに対して一意のメンバーを選択できます。
ここで説明されているように、一意のメンバーを抽出する Muenchian メソッドを使用しました。
これが機能しない理由はありますか?
<!--create a key to use Muenchian grouping on jobs-->
<xsl:key name="keyJobID" match="Job" use="JobID"/>
<!--select unique job nodes from a node-set-->
<xsl:template name="UniqueJobNodes">
<xsl:param name="List"/>
<xsl:for-each select="$List/Job[not(generate-id() = generate-id(key('keyJobID', JobID)[1]))]">
<xsl:text>does-this-work?</xsl:text>
</xsl:for-each>
</xsl:template>
テンプレートに渡すノード セットは正しいようです。条件なしで「$List/Job」を使用すると、結果が得られます。
入力ノードセットは次のようになります。
<Job Primary="1">
<JobProficiency>100</JobProficiency>
<JobID>300.Supervisor</JobID>
<JobPayRate>15.4</JobPayRate>
</Job>
<Job>
<JobProficiency>50</JobProficiency>
<JobID>SUPERVISOR</JobID>
<JobPayRate>15.4</JobPayRate>
</Job>