Interstage Portalworks 管理者ガイド
目次 索引 前ページ次ページ

第12章 コンテンツのカスタマイズ> 12.2 コンテンツ切り出しツール

12.2.5 XMLテンプレートの定義

XMLテンプレートを定義することで、オリジナルコンテンツ内のHTMLのテーブルやリストをXML形式に変換して切り出すことができます。

XMLテンプレートファイル(templates.xml)は、以下のフォルダに格納されます。
[Portalworksインストールフォルダ]/xsl/conf/templates.xml

XMLテンプレートに記述する内容を、以下に示します。

<xslauthor-templates>
    <テンプレート名1>
        変換するXMLの雛形を記述
    </テンプレート名1>
    <テンプレート名2>
        変換するXMLの雛形を記述
    <テンプレート名2>
</xslauthor-templates>

XMLテンプレートファイルには、<xslauthor-templates>をルートノード、その子ノードをテンプレート名とし、その配下に元のHTML中のノード構成と同じ部分を置き換えるXMLを記述します。

テンプレート名は、このファイル内に複数記述することができます。

以下にHTMLテーブルをXMLに変換する例を示します。

ID

名前

電話番号

年齢

1

鈴木

03-1111-2222

30

2

田中

045-111-2222

35

[HTMLソース]

<html>
    <body>
        <table>
            <tr>
                <th>ID</th>
                <th>名前</th>
                <th>電話番号</th>
                <th>年齢</th>
            </tr>
            <tr>
                <td>1</td>
                <td>鈴木</td>
                <td>03-1111-2222</td>
                <td>30</td>
            </tr>
            <tr>
                <td>2</td>
                <td>田中</td>
                <td>045-111-2222</td>
                <td>35</td>
            </tr>
        </table>
    </body>
</html>

[定義すべきXMLテンプレートの例]

<xslauthor-templates>
    <sample>
        <user-list>
                <user>
                    <ID/>
                    <名前/>
                    <電話番号/>
                    <年齢/>
                </user>
        </user-list>
    </sample>
</xslauthor-templates>

[実行結果]

<sample>
    <user-list>
        <user>
            <ID>1</ID>
            <名前>鈴木</名前>
            <電話番号>03-1111-2222</電話番号>
            <年齢>30</年齢>
        </user>
        <user>
            <ID>2</ID>
            <名前>田中</名前>
            <電話番号>045-111-2222</電話番号>
            <年齢>35</年齢>
        </user>
    </user-list >
</sample>

この定義では、HTMLにおけるテーブルの4つの<td>タグが、上から順にXMLの<ID>タグ、<名前>タグ、<電話番号>タグ、<年齢>タグにマッピングされ、各<tr>タグがXMLの<user>タグ、<table>タグがXMLの<user-list>タグにマッピングされます。また出力されるXMLのルートノードは、XMLテンプレートの名前になります。

  • [XMLテンプレート]プルダウンメニューでは、HTMLコンテンツ内の階層構造と一致するノード階層をもつXMLテンプレートだけが、選択対象となります。
  • 元のHTML内の属性値は、XML変換後もすべて引き継がれます。
  • コンテンツ切り出しツールの起動後に編集したXMLテンプレートは、コンテンツ切り出しツールの再起動により、新しくセッションを開設したときに反映されます。

目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2007