• 締切済み

XMLとかで出来ますか?

XMLもXSLもXSLTも何も知らないので出来るのかわかりませんが。 Aに1・2という情報?属性?を付けて Bに2・3を付けて Cに1を付けて 1が付いているのはA・C 2が付いているのはA・B 3が付いているのはB というように表示するにはどうすればいいでしょう?

みんなの回答

noname#85336
noname#85336
回答No.1

私もXMLは素人なんで勉強がてらwebを参考にしつつ作成してみました。 以下のxmlファイルとxslファイルを用意しました。 data.xml ---ここから--- <?xml-stylesheet type="text/xsl" href="result.xsl"?> <data> <d id="A"> <info>1</info> <info>2</info> </d> <d id="B"> <info>2</info> <info>3</info> </d> <d id="C"> <info>1</info> </d> </data> ---ここまで--- result.xsl ---ここから--- <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:template match="/data"> <html> <body> <table border="1"> <xsl:call-template name="set"> <xsl:with-param name="num" select="1"/> </xsl:call-template> <xsl:call-template name="set"> <xsl:with-param name="num" select="2"/> </xsl:call-template> <xsl:call-template name="set"> <xsl:with-param name="num" select="3"/> </xsl:call-template> </table> </body> </html> </xsl:template> <xsl:template name="set"> <xsl:param name="num"/> <tr> <td><xsl:value-of select="$num"/></td> <xsl:for-each select="d[info=$num]"> <td><xsl:value-of select="@id"/> </td> </xsl:for-each> </tr> </xsl:template> </xsl:stylesheet> ---ここまで--- 2ファイルを同じフォルダに保存し、IEなどでdata.xmlを開くとご期待通りの答えになっていると思います。 もっといい方法があると思いますが、 質問の内容のようなことは可能ということです。 私も勉強になりました。ありがとうございました(^^)

参考URL:
http://www.w3.org/TR/xslt

関連するQ&A