• ベストアンサー
※ 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>というコードを試してみましたがうまくいかないようです。どなたか解決策を教えていただけませんか?

質問者が選んだベストアンサー

  • ベストアンサー
回答No.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

yuka_102
質問者

お礼

ありがとうございました。 なんとか実現ができました。 今後ともよろしくお願いいたします。

関連するQ&A