XMLでは、データの文書構造をテキスト形式で記述します。テキスト形式を使う理由は、プラットフォームの違いを気にせず、データ交換を行えるようにするためです。ただし、このままのデータをブラウザに表示したり、紙に印刷しても面白くありません。
XMLデータを表にしたり、必要な値だけ見せたい、といったレイアウト変換が必要になってきます。そこで役に立つ技術が「XSLT」です。(eXtensible Stylesheet Language Transformationsの略)
Transformationsというくらいですから、変換用の言語なのです。XSLTではXMLデータをどのようにレイアウトして表示変換をするかということを記述していきます。1つのXMLデータに対していくつもXSLTを用意すれば、ブラウザ用の変換、印刷用の変換、独自アプリケーション用の変換・・・といったようにデータの用途を広げていくことが可能です。
XML |
---|
<?xml version="1.0" encoding="Shift_JIS" standalone="yes"?> <?xml-stylesheet type="text/xsl" href="stylesheet1.xsl"?> <受注> <受注情報 ID="1"> <管理番号>500000</管理番号> <分類>003</分類> <受注分類>本店</受注分類> <品名>ソフト一式</品名> </受注情報> <受注情報 ID="2"> <管理番号>500001</管理番号> <分類>004</分類> <受注分類>大阪支店</受注分類> <品名>表計算ソフト</品名> </受注情報> <受注情報 ID="3"> <管理番号>500002</管理番号> <分類>004</分類> <受注分類>大阪支店</受注分類> <品名>人事管理ソフト</品名> </受注情報> </受注> |
XSLT |
---|
<?xml version="1.0" encoding="Shift_JIS"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:template match="/"> <HTML> <TITLE>XSLT SAMPLE</TITLE> <BODY> <TABLE border="1"> <tr> <th>管理番号</th> <th>分類</th> <th>受注分類</th> <th>品名</th> </tr> <xsl:for-each select="/受注/受注情報"> <tr> <td><xsl:value-of select="管理番号"/></td> <td><xsl:value-of select="分類"/></td> <td><xsl:value-of select="受注分類"/></td> <td><xsl:value-of select="品名"/></td> </tr> </xsl:for-each> </TABLE> </BODY> </HTML> </xsl:template> </xsl:stylesheet> |
上記の様に、XSLTを使用すると、XMLデータの構造を自由に変換できます。データを変換するためのロジックと、XMLデータとは完全に分離されているので、元データそのものには影響を与えることなく流用が可能になります。
XMLの理想とする使用形態の一つに「ワンソース・マルチユース」(※)があります。XSLTは、この理想を実現するために、大きな役割を果たしているのです。
※ワンソース(一つの原資)データをもとにマルチユース(複数の用途)に使う考え方
御相談、ご質問はこちら |
サービスご案内資料や、特別資料「マニュアル作成の効率化とコストダウンを実現するポイントとは? 」がダウンロードできます。 |
最新事例の公開情報や、イベント・セミナー情報をお届けします。 |