新しいxslt変換で、同じユーザー名を含むすべてのノードを再グループ化し、このユーザーに対応するスキルを再編成する必要があります。ここでは簡単な例です。 入力:属性値でXMLノードをグループ化する
<Rowsets>
<Rowset>
<Columns>
<Column Description="" MaxRange="1" MinRange="0" Name="login" SQLDataType="1" SourceColumn="User_login"/>
<Column Description="" MaxRange="1" MinRange="0" Name="longName" SQLDataType="1" SourceColumn="User_longName"/>
<Column Description="" MaxRange="1" MinRange="0" Name="Competency" SQLDataType="1" SourceColumn="Competency"/>
</Columns>
<Row>
<login>NG5E054</login>
<longName>---</longName>
<Competency>SKILL1</Competency>
</Row>
<Row>
<login>NG5E059</login>
<longName>---</longName>
<Competency>SKILL1</Competency>
</Row>
<Row>
<login>NG5E059</login>
<longName>---</longName>
<Competency>SKILL2</Competency>
</Row>
<Row>
<login>NG5E059</login>
<longName>---</longName>
<Competency>SKILL3</Competency>
</Row>
</Rowset>
</Rowsets>
そして、私の所望の出力です:
<Rowsets>
<Rowset>
<Columns>
<Column Description="" MaxRange="1" MinRange="0" Name="login" SQLDataType="1" SourceColumn="User_login"/>
<Column Description="" MaxRange="1" MinRange="0" Name="longName" SQLDataType="1" SourceColumn="User_longName"/>
<Column Description="" MaxRange="1" MinRange="0" Name="Competency" SQLDataType="1" SourceColumn="Competency"/>
</Columns>
<Row>
<login>NG5E054</login>
<longName>---</longName>
<Competency>SKILL1</Competency>
</Row>
<Row>
<login>NG5E059</login>
<longName>---</longName>
<Competency>SKILL1, SKILL2, SKILL3</Competency>
</Row>
</Rowset>
</Rowsets>
は
XSLTグループを検索します。ここで最もよく尋ねられるXSLTの質問です。 XSLT 1.0または2.0では答えが異なることに注意してください。 –