- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:■XSLT■複数のノードを違う属性でソートする方法は?(サンプルソース有り))
XSLT複数のノードを違う属性でソートする方法は?
このQ&Aのポイント
- XSLTで複数のノードを違う属性でソートする方法について教えてください。
- XMLファイルの内容を変更することができない場合、XSLTでNumもしくはNoを使ってソートする方法を探しています。
- 質問者は<xsl:for-each select="Data/Name|UserMain/UserMainData/User/NAMAE"> <xsl:sort select="@Num|No" /> ... </xsl:for-each>というコードを試してみましたがうまくいかないようです。どなたか解決策を教えていただけませんか?
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
×<xsl:sort select="@Num|No" /> <!-- これは NAMAE要素の子のNo要素、つまり <NAMAE>加藤<No>3</No></NAMAE> これなら多分ヒットする。 --> というわけで変えてみた。 ○<xsl:sort select="@Num|following-sibling::No" data-type="number" /> こっちの都合でdata-type属性まで付けてみた。他の属性をどうするかはお好みで。 #多分@Numもfollowing-sibling::Noもどちらもある要素の場合は@Numの方がノードリスト中で先に出てくるので,@Numの方が優先されると思う。多分。自信ないけど。 http://www.w3.org/TR/xslt#element-sort
お礼
ありがとうございました。 なんとか実現ができました。 今後ともよろしくお願いいたします。