(57)【要約】【課題】構造化文書のフォーマット変換システムにおいて、構造化文書中の見映えを決定するための書式情報に対応したスタイルシートを作成できるようにすると共に、作成したスタイルシートを構造化文書から参照可能にする。【解決手段】変換部１２は、構造化文書の文書要素からその見映えを決定するための書式情報を抽出し、抽出した書式情報に応じたスタイル集合を作成する。セレクタ名生成部１３は、変換部１２で作成されたスタイル集合に対して一意なセレクタ名を生成し、このセレクタ名とスタイル集合とを結合したスタイルシートをスタイルシート記憶部２３に格納する。変換部１２は、構造化文書に設定されている書式情報を、上記スタイル集合を構成要素とするスタイルシートを指し示す属性情報に変換する。【選択図】図１
2010282327.tif 000002
【特許請求の範囲】
【請求項１】
構造化文書の文書要素からその見映えを決定するための書式情報を抽出して該抽出した書式情報に応じたスタイル集合を作成すると共に、前記構造化文書に設定されている前記書式情報を、前記スタイル集合を構成要素とするスタイルシートを指し示す属性情報に変換する変換部と、
該変換部で作成された前記スタイル集合に対して一意なセレクタ名を生成し、該生成したセレクタ名と前記スタイル集合とを結合したスタイルシートをスタイルシート記憶部に格納する生成処理を実行するセレクタ名生成部とを備えたことを特徴とするフォーマット変換システム。
【請求項２】
請求項１記載のフォーマット変換システムにおいて、
前記スタイルシートを指し示す属性情報は、値として前記スタイルシートのセレクタ名を含むことを特徴とするフォーマット変換システム。
【請求項３】
請求項２記載のフォーマット変換システムにおいて
前記セレクタ名生成部は、前記スタイルシート記憶部を検索し、前記変換部で作成された前記スタイル集合と同一のスタイル集合を含んだスタイルシートを検索できた場合は、前記生成処理を実行せず、
前記セレクタ名生成部によって前記スタイルシートが検索された場合、前記変換部は、前記書式情報を、前記検索されたスタイルシートのセレクタ名を値として含んだ属性情報に変換することを特徴とするフォーマット変換システム。
【請求項４】
請求項１乃至３の何れか１項に記載のフォーマット変換システムにおいて、
前記スタイルシート記憶部に格納されているスタイルシートをスタイルシートファイルとして出力すると共に、前記構造化文書に前記スタイルシートファイルへのリンク情報を埋め込む出力部を備えたことを特徴とするフォーマット変換システム。
【請求項５】
請求項１乃至４の何れか１項に記載のフォーマット変換システムにおいて、
書式情報に応じたスタイル集合を作成するためのルールが格納された変換ルール記憶部を備え、且つ、
前記変換部は、前記変換ルール記憶部に格納されているルールに従って書式情報に応じたスタイル集合を作成することを特徴とするフォーマット変換システム。
【請求項６】
請求項５記載のフォーマット変換システムにおいて、
前記変換ルール記憶部には、属性名に関連付けて、その属性名の書式情報に対するスタイル集合の作成方法が格納されていることを特徴とするフォーマット変換システム。
【請求項７】
請求項１乃至４の何れか１項に記載のフォーマット変換システムにおいて、
入力された書式情報に応じたスタイル集合を作成するロジックが組み込まれ、該ロジックに従って入力された書式情報に応じたスタイル集合を作成するスタイル抽出部を備え、且つ、
前記変換部は、前記抽出した書式情報を前記スタイル抽出部に対して出力することにより、前記書式情報に応じたスタイル集合を作成することを特徴とするフォーマット生成システム。
【請求項８】
コンピュータが、構造化文書の文書要素からその見映えを決定するための書式情報を抽出して該抽出した書式情報に応じたスタイル集合を作成する第１のステップと、
前記コンピュータが、前記第１のステップで作成された前記スタイル集合に対して一意なセレクタ名を生成し、該生成したセレクタ名と前記スタイル集合とを結合したスタイルシートをスタイルシート記憶部に格納する第２のステップと、
前記コンピュータが、前記構造化文書の前記書式情報を、前記スタイルシートを指し示す属性情報に変換する第３のステップとを含むことを特徴とするフォーマット変換方法。
【請求項９】
請求項８記載のフォーマット変換方法において、
前記スタイルシートを指し示す属性情報は、値として前記スタイルシートのセレクタ名を含むことを特徴とするフォーマット変換方法。
【請求項１０】
請求項９記載のフォーマット変換方法において、
前記コンピュータが、前記スタイルシート記憶部から前記第１のステップで作成された前記スタイル集合と同一のスタイル集合を含んだスタイルシートを検索する第４のステップを含み、且つ、
前記コンピュータは、前記第４のステップで前記スタイルシートを検索できた場合は、前記第２のステップを実行せず、前記第３のステップでは、前記書式情報を、前記検索されたスタイルシートのセレクタ名を値として含んだ属性情報に変換することを特徴とするフォーマット変換方法。
【請求項１１】
請求項８乃至１０の何れか１項に記載のフォーマット変換方法において、
前記コンピュータが、前記スタイルシート記憶部に格納されているスタイルシートをスタイルシートファイルとして出力する第５のステップと、
前記コンピュータが、前記構造化文書に前記スタイルシートファイルへのリンク情報を埋め込む第６のステップとを含むことを特徴とするフォーマット変換方法。
【請求項１２】
コンピュータをフォーマット変換システムとして機能させるためのプログラムであって、
前記コンピュータを、
構造化文書の文書要素からその見映えを決定するための書式情報を抽出して該抽出した書式情報に応じたスタイル集合を作成すると共に、前記構造化文書に設定されている前記書式情報を、前記スタイル集合を構成要素とするスタイルシートを指し示す属性情報に変換する変換部、
該変換部で作成された前記スタイル集合に対して一意なセレクタ名を生成し、該生成したセレクタ名と前記スタイル集合とを結合したスタイルシートをスタイルシート記憶部に格納する生成処理を実行するセレクタ名生成部として機能させるためのプログラム。
【請求項１３】
請求項１２記載のプログラムにおいて、
前記スタイルシートを指し示す属性情報は、値として前記スタイルシートのセレクタ名を含むことを特徴とするプログラム。
【請求項１４】
請求項１３記載のプログラムにおいて
前記セレクタ名生成部は、前記スタイルシート記憶部を検索し、前記変換部で作成された前記スタイル集合と同一のスタイル集合を含んだスタイルシートを検索できた場合は、前記生成処理を実行せず、
前記セレクタ名生成部によって前記スタイルシートが検索された場合、前記変換部は、前記書式情報を、前記検索されたスタイルシートのセレクタ名を値として含んだ属性情報に変換することを特徴とするプログラム。
【請求項１５】
請求項１２乃至１４の何れか１項に記載のプログラムにおいて、
前記コンピュータを、前記スタイルシート記憶部に格納されているスタイルシートをスタイルシートファイルとして出力すると共に、前記構造化文書に前記スタイルシートファイルへのリンク情報を埋め込む出力部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、構造化文書のフォーマット変換システムおよびフォーマット変換方法並びにプログラムに関し、特に構造化文書を構成する文書要素の色、フォント、レイアウトなどに関する書式情報を構造化文書から抽出し、構造化文書を文書構造と書式情報とに分離するフォーマット変換システムおよびフォーマット変換方法並びにプログラムに関する。
【背景技術】
【０００２】
情報通信技術の発展に伴い、個人、企業、自治体など、幅広い範囲での情報交換が可能となってきている。インターネット上には相互に連携する数多くのシステムが構築され、Ｗｅｂサービスが提供されたり、ＥＤＩ（Electronic Data Interchange）が行われたりしている。
【０００３】
このような状況において、構造化文書は、文書データを構造化するための柔軟な表現能力を持ち、またコンピュータによる処理に適しているため、コンピュータシステム間での情報流通や、コンピュータシステム内での情報処理および情報蓄積を行うための共通フォーマットとして注目されている。
【０００４】
代表的な構造化文書として、ＸＭＬ（Extended Markup Language）が知られている。ＸＭＬでは、文書中のデータに意味づけを行うためのタグを、利用者が自由に定義することができる。このタグを文書中に埋め込むことにより、文書中のデータの意味や構造を明確化することが可能となり、必要なデータの抽出や異なる構造へのフォーマット変換がコンピュータ処理により可能となる。
【０００５】
ＸＭＬでは、文書構造と見映えを決定するための書式情報が厳密に分けられている。この書式情報を示すフォーマットとして、ＣＳＳ（Cascading Style Sheet）や、ＸＳＬ（eXtensible
Stylesheet Language）が知られている。また、ＸＭＬによって記述された文書を他のＸＭＬ文書に変換するための言語としてＸＳＬＴ（XML Stylesheet Language Transformations）が知られている。これら、書式情報を記述するための言語はスタイルシート言語と呼ばれる。
【０００６】
ここで、構造化文書の書式について説明を行う。一対の"<"と">"で囲まれた文字列を「タグ」、"<文字列>"を「開始タグ」、"</文字列>"を「終了タグ」、開始タグから終了タグまでの文字列全体を「文書要素」、開始タグと終了タグで挟まれた文字列を「要素内容」、タグ内に記述される要素の名称を「タグ名」もしくは「要素名」、文書要素に対する付加情報を「属性」と呼ぶ。属性は、開始タグ内に記述され「属性名="値"」という書式で記述される。文書要素は、他の文書要素を内包する形で階層構造を持って良い。すなわち、要素内容は、複数の文字列もしくは複数の文書要素から構成される。
【０００７】
ＣＳＳにおけるスタイルシートは次の書式で記述される。「セレクタ{プロパティ：値}」。"プロパティ：値"のペアを「スタイル」と呼ぶ。スタイルは、";"で区切ることにより複数列挙することが出来る。１つのスタイルおよび、複数のスタイルが列挙されている場合をまとめて「スタイル集合」と表現する。「セレクタ」とは、スタイル集合を適用する対象となる文書要素を指定する部分である。「プロパティ」とはスタイルの種類を指定する部分であり、「値」は、プロパティに設定する値である。
【０００８】
ＸＭＬで作成された文書は、容易に必要な情報を抽出したり、他の目的で利用するためのフォーマットへ変換したりすることが可能となるため、コンピュータでのデータ処理に非常に有用である。そのため、一般の文書もしくは電子化文書をＸＭＬ形式にフォーマット変換したり、ＸＭＬ文書同士のフォーマット変換を行うためのＸＳＬＴを容易に構築するための技術等が考案されている。
【０００９】
一方、近年広く普及しているＷｅｂサービスにより提供される文書やシステムの多くは、ＨＴＭＬ（HyperText Markup Language）で記述されている。ＨＴＭＬ文書もまた一種の構造化文書であるが、Ｗｅｂページを効率よく、体裁よく表現することを目的として作成されるため、色やフォント、レイアウトのための書式情報をタグの中の属性として埋め込んだ形で記述されることが多い。
【００１０】
しかし、１９９７年ＨＴＭＬ4.0の仕様がＷ３Ｃ（World Wide Web Consortium）から発表され、スタイルシートを組み込むための仕様が導入されたことにより、ＨＴＭＬ文書から表示方法やレイアウトなどの表現に関する部分を分離し、スタイルシートで制御することが推奨されるようになった。
【００１１】
また、非特許文献１には、高齢者・障害者等へのアクセシビリティを向上させるために、ウェブコンテンツを構成する各文書記述要素の、フォント書体、フォントサイズ、文字色、背景色、マージンなどの装飾的なスタイルの記述は、文書構造とは分離し、スタイルシートを用いて記述することが推奨されることが記載されている。ここで、ウェブコンテンツとは、ウェブブラウザなどを用いてアクセスするあらゆる情報、サービスのことを指し、ＨＴＭＬ文書等の構造化文書もこれに含まれる。
【００１２】
このように、ＨＴＭＬ文書における、色やフォント、レイアウトに関わる書式情報は、文書構造とは分離し、スタイルシートで記述することが求められているが、過去の資産は膨大であり、多くのＷｅｂページが従来のまま、文書構造と書式情報とが混在したフォーマットで提供されている。
【００１３】
このようなことから、色やフォント、レイアウトに関する書式情報が埋め込まれたＨＴＭＬ文書を文書構造と書式情報とに分離した形式にフォーマット変換する技術が求められている。
【００１４】
従来のフォーマット変換システムの一例が特許文献１に記載されている。特許文献１では、インターネットを介して配信される、ＨＴＭＬおよびＣＳＳファイルを読み込み、色・文字・レイアウト情報を抽出し、予め記憶されている専門化が作成した色変更定義やレイアウト変更定義を適用して、新たなスタイル定義ファイルを作成し、色盲・色覚異常の人たちが容易に情報を読むことが出来るように表示を変更するシステムが記載されている。
【００１５】
また、別の従来のフォーマット変換システムの一例が特許文献２に記載されている。特許文献２では、ＸＭＬ文書の内容を書式プログラムの変換規則に従って変換することによりＨＴＭＬデータを作成し、そのＨＴＭＬデータをエディタ上で表示させ、編集操作を加えることにより、そのＸＭＬ文書および書式プログラムの内容を変更するフォーマット変換システムが記載されている。
【００１６】
また、さらに別の従来のフォーマット変換システムの一例が特許文献３に記載されている。特許文献３では、非構造化文書である電子化文書を読み込み、予め設定された基本解析ルールに基づいて、文書中の体裁スタイルから、文書構造上の階層レベルを判定し、構造化文書を構成している。
【先行技術文献】
【特許文献】
【００１７】
【特許文献１】特開２００５−０３１９８３号公報
【特許文献２】特開２００６−０５９２４３号公報
【特許文献３】特開２００７−１６４７０５号公報
【非特許文献】
【００１８】
【非特許文献１】「ＪＩＳ Ｘ ８３４１−３ 高齢者・障害者等配慮設計指針−情報通信における機器、ソフトウェア及びサービス−第３部：ウェブコンテンツ」、日本規格協会発行、平成１６年６月２０日、ｐ３
【発明の概要】
【発明が解決しようとする課題】
【００１９】
特許文献１〜３における第１の問題点は、構造化文書中の各文書要素に対して設定された色やフォント、レイアウトなどの書式情報を抽出し、スタイルシートの形式へ変換していない点である。その理由は、従来技術の目的が、色・文字・レイアウトなどの書式情報の値を変換することを目的としていたり、構造化文書の文書構造自体の変換を目的としているためである。
【００２０】
例えば、特許文献１においては、色・文字・レイアウト情報を抽出し、文書構造やレイアウト分類に従ってタグ情報の変更や、色情報・レイアウト情報の変更を行っているが、それらの情報を、専門化が予め定義した、色変換定義や、レイアウト変換定義に従って、その値を変更することを目的としており、ＨＴＭＬ文書中の書式情報のスタイルシート形式への変換は行われていない。
【００２１】
また、特許文献２、特許文献３においては、構造化文書の文書構造自体のフォーマット変換を目的としており、書式情報の抽出や変換に関しては言及されていない。
【００２２】
また、特許文献１〜３における第２の問題点は、構造化文書のフォーマット変換システムの多くは、フォーマット変換作業自体、もしくはフォーマット変換の方法をシステムへ伝える手段として、利用者による編集作業が必要な点である。
【００２３】
その理由は、例えば、特許文献１においては、変更後のスタイル定義ファイルおよび変更後の構造化文書ファイルを作成するに当たり、編集エディタによる編集作業を必要とするためである。また、特許文献２においては、ＸＭＬデータからＨＴＭＬデータを作成するに当たり、その変換規則を指示するために、利用者による編集作業を必要としているためである。
【００２４】
［発明の目的］
そこで、本発明の目的は、構造化文書中の見映えを決定するための書式情報に対応したスタイルシートを作成できるようにすると共に、作成したスタイルシートを構造化文書から参照可能にするフォーマット変換システムを提供することである。
【課題を解決するための手段】
【００２５】
本発明にかかる第１のフォーマット変換システムは、
構造化文書の文書要素からその見映えを決定するための書式情報を抽出して該抽出した書式情報に応じたスタイル集合を作成すると共に、前記構造化文書に設定されている前記書式情報を、前記スタイル集合を構成要素とするスタイルシートを指し示す属性情報に変換する変換部と、
該変換部で作成された前記スタイル集合に対して一意なセレクタ名を生成し、該生成したセレクタ名と前記スタイル集合とを結合したスタイルシートをスタイルシート記憶部に格納する生成処理を実行するセレクタ名生成部とを備える。
【００２６】
本発明にかかる第１のフォーマット変換方法は、
コンピュータが、構造化文書の文書要素からその見映えを決定するための書式情報を抽出して該抽出した書式情報に応じたスタイル集合を作成する第１のステップと、
前記コンピュータが、前記第１のステップで作成された前記スタイル集合に対して一意なセレクタ名を生成し、該生成したセレクタ名と前記スタイル集合とを結合したスタイルシートをスタイルシート記憶部に格納する第２のステップと、
前記コンピュータが、前記構造化文書の前記書式情報を、前記スタイルシートを指し示す属性情報に変換する第３のステップとを含む。
【００２７】
本発明にかかる第１のプログラムは、
コンピュータをフォーマット変換システムとして機能させるためのプログラムであって、
前記コンピュータを、
構造化文書の文書要素からその見映えを決定するための書式情報を抽出して該抽出した書式情報に応じたスタイル集合を作成すると共に、前記構造化文書に設定されている前記書式情報を、前記スタイル集合を構成要素とするスタイルシートを指し示す属性情報に変換する変換部、
該変換部で作成された前記スタイル集合に対して一意なセレクタ名を生成し、該生成したセレクタ名と前記スタイル集合とを結合したスタイルシートをスタイルシート記憶部に格納する生成処理を実行するセレクタ名生成部として機能させる。
【発明の効果】
【００２８】
本発明の第１の効果は、構造化文書中に含まれる、色・フォント・レイアウトなどの見映えを決定するための書式情報に対応したスタイルシートを作成できる点である。本発明の第２の効果は、構造化文書中の書式情報に基づいて作成したスタイルシートを、構造化文書から参照できる点である。
【図面の簡単な説明】
【００２９】
【図１】本発明の第１の実施の形態の構成例を示すブロック図である。
【図２】第１の実施の形態の処理例を示すフローチャートである。
【図３】本発明の第２の実施の形態の構成例を示すブロック図である。
【図４】本発明の第１の実施の形態の実施例を説明するための、入力とする構造化文書の１例である。
【図５】図４で示されるＨＴＭＬ文書の構文解析結果の１例である。
【図６】変換ルール記憶部２２が格納している、変換ルールテーブルの一例である。
【図７】フォントサイズを設定するためのマッピングテーブルの１例である。
【図８】書式情報を削除した構造化文書の一例である。
【図９】構造化文書から抽出した書式情報に対応したスタイルシートの１例である。
【図１０】出力部１４から出力される、リンク情報の付加された構造化文書の一例である。
【発明を実施するための形態】
【００３０】
次に、本発明を実施するための最良の形態について図面を参照して詳細に説明する。図１を参照すると、本発明の第１の実施の形態は、プログラム制御により動作するデータ処理装置１と、情報を記憶する記憶装置２とを含む。
【００３１】
データ処理装置１は、入力部１１と、変換部１２と、セレクタ名生成部１３と、出力部１４とを備える。なお、上記各部１１〜１４は、ディスクなどの記憶媒体に記録されている、上記各部を実現するためのプログラムをデータ処理装置１が読み込み、実行することにより、データ処理装置１上に実現される。記憶装置２は、文書要素記憶部２１と、変換ルール記憶部２２と、スタイルシート記憶部２３とを備える。
【００３２】
入力部１１は、外部から構造化文書を取得し、当該構造化文書を構文解析して文書要素を抽出し、抽出した文書要素を文書要素記憶部２１へ格納する。
【００３３】
変換ルール記憶部２２は、文書要素に設定されている色・フォント・レイアウトに関する属性情報（書式情報）に対応したスタイル集合を作成するためのルールや、文書要素の形式（例えば、タグ名）を変換するためのルールを保持する。
【００３４】
変換部１２は、文書要素記憶部２１に保持されている文書要素を取り出し、変換ルール記憶部２２に格納された変換ルールに基づいて、当該文書要素中の書式情報に対応したスタイル集合を作成してセレクタ名生成部１３に渡すと共に、必要に応じて文書要素の形式を変換する。
【００３５】
セレクタ名生成部１３は、変換部１２から渡されたスタイル集合と同じスタイル集合を保持するスタイルシートがスタイルシート記憶部２３内に存在するかどうかを検索する。存在しない場合は、一意なセレクタ名を生成するとともに、当該セレクタ名と変換部１２から渡されたスタイル集合とを結合し、スタイルシートの形式で、スタイルシート記憶部に格納するとともに、当該セレクタ名を変換部１２へ通知する。存在する場合は、変換部１２から渡されたスタイル集合と同じスタイル集合を保持するスタイルシートのセレクタ名をスタイルシート記憶部２３から獲得し、当該セレクタ名を変換部１２へ通知する。
【００３６】
変換部１２は、セレクタ名生成部１３から渡されたセレクタ名に従って、現在処理中の文書要素の属性情報を変更する。すなわち、文書要素の属性情報を、その文書要素に対するスタイルシートを指し示すものに変更する。
【００３７】
出力部１４は、スタイルシート記憶部２３に格納されたスタイルシート群をスタイルシートファイルとして出力するとともに、文書要素記憶部２１に格納されている文書要素群を構造化文書として出力する。このとき、出力部１４は、当該構造化文書内に、当該スタイルシートファイルを参照可能にするための情報（リンク情報）を設定する。
【００３８】
次に、図１および図２のフローチャートを参照して本実施の形態の全体の動作について詳細に説明する。
【００３９】
入力部１１は、外部から構造化文書を取得し、当該構造化文書の構文解析を行い、文書要素群を抽出し、文書要素記憶部２１へ格納する（ステップＳ１０１）。変換部１２は、文書要素記憶部２１を参照し（Ｓ１０２）、ある１つの解析対象の文書要素ｘを順番に決定し、ステップＳ１０３からステップＳ１０８の処理を繰り返す。文書要素がｎ個存在した場合、１〜ｎの文書要素に対して処理を行う。全ての文書要素に対して処理が完了した場合はステップＳ１０９へ進み、処理対象の文書要素が存在する場合はステップＳ１０４へ進む（ステップ１０３）。
【００４０】
変換部１２は、変換ルール記憶部２２を参照し、変換ルールに従って文書要素ｘからその色・フォント・レイアウトに関する属性情報（書式情報）を抽出し、抽出した属性情報に対応したスタイル集合を作成し、当該スタイル集合をセレクタ名生成部１３に渡す（Ｓ１０４）。更に、ステップＳ１０４では、変換ルールに従って、必要に応じて文書要素ｘの形式を変更する。
【００４１】
セレクタ名生成部１３は、スタイルシート記憶部２３を参照し、変換部１２から渡されたスタイル集合と同一のスタイル集合を持つスタイルシートが存在するか検索する（Ｓ１０５）。そして、同一のスタイル集合を持つスタイルシートが存在しない場合、一意なセレクタ名を生成し、セレクタ名と、変換部１２から渡されたスタイル集合とを、スタイルシートの形式で、スタイルシート記憶部２３へ格納する（Ｓ１０６）。これに対して、同一のスタイル集合を持つスタイルシートが存在した場合、当該スタイルシートのセレクタ名を獲得する（Ｓ１０７）。セレクタ名生成部１３は、生成したもしくは獲得したセレクタ名を変換部１２へ渡す。
【００４２】
変換部１２は、セレクタ名生成部１３から渡されたセレクタ名に従って文書要素記憶部２１に格納されている文書要素ｘの属性を、上記スタイルシートを指し示すものに変換する（Ｓ１０８）。ステップＳ１０８の処理が終了した場合、ステップＳ１０２へ戻り、次の文書要素に対して処理を継続する。
【００４３】
出力部１４は、全ての文書要素に対して処理が終了した後（Ｓ１０３）、スタイルシート記憶部２３を参照してスタイルシートファイルを出力するとともに、文書要素記憶部２１を参照し、文書要素記憶部２１に格納されている文書要素と、上記スタイルシートファイルを参照するためのリンク情報とを含んだ構造化文書を作成して出力する（Ｓ１０９）。
【００４４】
[第１の実施の形態の効果]
次に、本実施の形態の効果について説明する。
【００４５】
本実施の形態では、変換部１２が、文書要素記憶部２１中の文書要素から見映えを決定するための書式情報を抽出してその書式情報に対応したスタイル集合を作成し、セレクタ名生成部１３が、変換部１２で作成されたスタイル集合に対して一意なセレクタ名を生成し、このセレクタ名と変換部１２から出力されたスタイル集合とを結合してスタイルシートを作成するようにしているので、構造化文書中に含まれる、見映えを決定するための書式情報に対応したスタイルシートを作成することができる。
【００４６】
また、本実施の形態では、変換部１２が、文書要素中の書式情報を、その書式情報に対応したスタイルシートを指し示す属性情報（値がセレクタ名）に変換するので、構造化文書中の書式情報に基づいて作成したスタイルシートを構造化文書から参照することができる。
【００４７】
また、本実施の形態では、セレクタ名生成部１３が、変換部１２から渡されたスタイル集合と同じスタイル集合を持つスタイルシートをスタイルシート記憶部２３から検索し、存在する場合はそのセレクタ名を獲得できるように構成されているため、構造化文書中の複数の文書要素において、同一の装飾が行われていた場合に、１つのスタイルシートを修正するだけで、複数の文書要素の見映えの変更が行える形式へフォーマット変換することができる。
【００４８】
また、本実施の形態では、書式情報の代わりにその書式情報に対応するスタイルシートを指し示す属性情報を含んだ文書要素を記憶する文書要素記憶部２１と、スタイルシートの集合を記憶するスタイルシート記憶部２３とを持ち、出力部１４がそれぞれの記憶部を参照できるように構成されているため、色・フォント・レイアウトなどの書式情報を含む構造化文書を、文書構造だけを残した構造化文書と、各文書要素の装飾的な書式情報を保持するスタイルシートファイルに分離して出力できる。
【００４９】
[本発明の第２の実施の形態]
次に、本発明の第２の実施の形態について図面を参照して説明する。
【００５０】
第３図を参照すると、本発明の第２の実施の形態は、プログラム制御により動作するデータ処理装置１ａと、情報を記憶する記憶装置２ｂとを含む。データ処理装置１ａは、変換部１２の代わりに変換部１２ａを備えている点、および、スタイル抽出部１５が追加されている点が、図１に示したデータ処理装置１と相違している。記憶装置２は、変換ルール記憶部２２を備えていない点が、図１に示した記憶装置２と相違している。
【００５１】
スタイル抽出部１５は、第１の実施の形態では、変換部１２が変換ルール記憶部２２に登録されている変換ルールを参照して行っていたスタイル集合の作成処理や、文書要素のタグ名などの変換処理を、変換ルールを参照せずに、プログラムに組み込まれたロジックに従って行う。このプログラムは、処理対象にしている文書要素のタグ名が予め定められているタグ名であるか否かを判断し、予め定められているタグ名であった場合にはそのタグ名に応じたスタイル集合の作成処理やタグ名の変更処理を行ったり、処理対象にしている文書要素の属性名が予め定められている属性名であるか否かを判定し、予め定め定められている属性名であった場合には、その属性名に対応したスタイル集合の作成処理を行うものである。
【００５２】
変換部１２ａは、スタイル集合の作成処理や、文書要素の変換処理をスタイル抽出部１５に行わせる点が、第１の実施の形態の変換部１２と相違している。
【００５３】
次に、本実施の形態の動作について説明する。本実施の形態の動作は、図２のフローチャートに示した動作とほぼ同じであるので、相違部分であるステップＳ１０４の動作についてのみ説明する。
【００５４】
ステップＳ１０４では、先ず、変換部１２ａが、現在処理対象にしている文書要素ｘをスタイル抽出部１５に渡す。これにより、スタイル抽出部１５は、文書要素ｘ中の書式情報に応じたスタイル集合を作成し、作成したスタイル集合を変換部１２ａに返す。また、必要に応じて文書要素ｘを変換し、変換後の文書要素ｘを変換部１２ａに返す。変換部１２ａは、スタイル抽出部１５から返されたスタイル集合をセレクタ名生成部１３に渡す。また、変換部１２ａは、スタイル抽出部１５から文書要素ｘが返された場合は、文書要素記憶部２１に格納されている文書要素ｘを、スタイル抽出部１５から返却された変換後の文書要素ｘで置き換える。以上がステップＳ１０４で行われる処理である。他のステップでは、第１の実施の形態と同様の処理が行われる。
【００５５】
[第２の実施の形態の効果]
本実施の形態によれば、第１の実施の形態と同様の効果を得ることができる。
【実施例】
【００５６】
次に、本発明の第１の実施の形態の実施例について説明する。
【００５７】
本実施例では、色・フォント・レイアウトなどの書式情報を含む構造化文書の１例として、図４に示すＨＴＭＬ文書を対象にフォーマット変換システムの動作について説明する。
【００５８】
入力装置１１は外部より図４に示すＨＴＭＬ文書を読み込み、ＨＴＭＬ文書の文書構造を解析し、図５に示されるような階層構造を明確にしたうえで、結果を文書要素記憶部２１へ格納する。なお、図５では、図を見やすくするために、文書要素中の属性情報は図示を省略しているが、実際には、＜ｂｏｄｙ  ｂｇｃｏｌｏｒ＝"＃ｅ０ｅ０ｅ０"  ｔｅｘｔ＝"＃００００００"＞などのように、属性を含んでいる。
【００５９】
変換部１２は、文書要素記憶部２１から、順番に文書要素を獲得し、変換処理を行う。ここで文書要素とは、図５で示される、＜ｈｔｍｌ要素＞、＜ｂｏｄｙ要素＞、＜ｈ１要素＞などのことである。
【００６０】
図６は、変換ルール記憶部２２が格納している、変換ルールテーブルの一例である。本実施例の変換ルールテーブルは、変換対象となるタグ名を示すタグ名６１、変換対象の属性名を示す属性名６２、変換後のタグ名を示す変換後タグ名６３、変換後のスタイルのフォーマットを示す変換後スタイル６４の列から構成される。タグ名６１の列において、"＊"が記述されている行は、全てのタグ名に対して適用可能であることを示している。属性名６２の列において、"−"が記述されている行は、属性の変換を行わないことを示している。変換後タグ名６３の列において、"＊"が記述されている行は、タグ名の変換は行わないことを示している。変換後スタイル６４の列において、"＆１"の記述は、属性名で示される属性の属性値を表現している。また、変換後スタイル６４の列において、"＆ＦＯＮＴ−ＳＩＺＥ"の記述は、スタイルシートに設定するフォントサイズを決定するための演算処理を行うことを示している。
【００６１】
図７は、フォントサイズのレベルと、スタイルで指定するフォントサイズとのマッピングテーブルである。
【００６２】
フォントサイズを決定するための演算処理について以下に説明する。フォントサイズのレベルには「標準フォントサイズのレベル」と「現在のフォントサイズのレベル」の２種類があり、初期値は共に「３」である。ｆｏｎｔ要素およびｂｉｇ要素、ｓｍａｌｌ要素では、要素内でのフォントサイズのレベルを変更することができ、そのレベルに対応するサイズのフォントを使用する。
【００６３】
ｆｏｎｔ要素のｓｉｚｅ属性において、数値が直接記載された場合は、その指定された数値のレベルを現在のフォントサイズのレベルとし、図７において該当のフォントサイズのレベルに対応するサイズ指定の値をスタイルシートに設定するフォントサイズとする。例えば、"１"と指定された場合は、図７におけるフォントサイズのレベル「１」に対応する"０．５ｅｍ"をスタイルシートに設定するフォントサイズとする。
【００６４】
ｆｏｎｔ要素のｓｉｚｅ属性において、符号付の数値が記載された場合は、標準フォントサイズのレベルと上記符号付の数値との加算結果を現在のフォントサイズのレベルとするとともに、そのレベルに対応するサイズ指定の値をスタイルシートに設定するフォントサイズとする。例えば、"＋２"と指定された場合、標準のフォントサイズ「３」に「２」を加えた「５」を現在のフォントサイズのレベルとし、それに対応するサイズ指定である"１．５ｅｍ"をスタイルシートに設定するフォントサイズとする。また、”−１”と指定された場合、標準のフォントサイズ「３」から「１」を引いた、「２」を現在のフォントサイズのレベルとし、それに対応するサイズ指定である"０．８ｅｍ"をスタイルシートに設定するフォントサイズとする。ｆｏｎｔ要素のｓｉｚｅ属性において、それ以外の表現が行われた場合は、その表現をそのままフォントサイズとして使用する。
【００６５】
ｂｉｇ要素に対しては、現在のフォントサイズのレベルを＋１し、その値に対応したサイズ指定の値をスタイルシートに設定するフォントサイズとする。ｓｍａｌｌ要素に対しては、現在のフォントサイズのレベルを−1し、その値に対応したサイズ指定の値をスタイルシートに設定するフォントサイズとする。
【００６６】
次に、変換部１２のフォーマット変換処理について図４で示したＨＴＭＬ文書を用いて具体的に説明を行う。変換部１２は、ＨＴＭＬ文書に対する構文解析結果(図５参照)が格納されている文書要素記憶部２１から順番に文書要素を取り出す。まず、ｈｔｍｌ要素を取り出し処理を行う。変換部１２は、図６で示される変換ルールテーブルを参照し、ｈｔｍｌ要素のタグ名および属性名においてマッチするものが無いため、特に何も行わず、ｈｔｍｌ要素の処理を終了する。
【００６７】
変換部１２は、次にｂｏｄｙ要素を取り出し、処理を行う。ここでｂｏｄｙ要素は、ｂｇｃｏｌｏｒ属性を含んでいる。図６で示される変換ルールテーブルの３行目のルールにマッチするため、変換後のスタイル"ｂａｃｋｇｒｏｕｎｄ−ｃｏｌｏｒ：＃ｅ０ｅ０ｅ０"のスタイルを獲得し、ｂｏｄｙ要素のｂｇｃｏｌｏｒ属性を削除する。ここで、変換後スタイルの"＆１"の部分に、ｂｇｃｏｌｏｒ属性の属性値である"＃ｅ０ｅ０ｅ０"を設定している。また、ｂｏｄｙ要素はｔｅｘｔ属性を含んでいる。変換ルールテーブルの２行目のルールにより、"ｃｏｌｏｒ：＃００００００"のスタイルを獲得し、ｂｏｄｙ要素のｔｅｘｔ属性を削除する。
【００６８】
変換部１２は、上記２つのスタイルからなるスタイル集合をセレクタ名生成部１３に渡す。セレクタ名生成部１３は、スタイルシート記憶部２３を参照し、同じスタイル集合が存在するか確認する。今回は、まだスタイルシートが登録されていないため、同じスタイル集合は存在していない。そのため、セレクタ名生成部１３は、一意なセレクタ名を生成する。本実施例において、一意なセレクタ名を、固定文字列"ｓｅｌ"に３桁の通番を付けた名前とすると、一意なセレクタ名は、"ｓｅｌ００１"となる。セレクタ名生成部１３は、生成したセレクタ名を使用して、以下のようなスタイルシートを作成し、スタイルシート記憶部２３へ格納すると共に、セレクタ名を変換部１２へ返す。
ｓｅｌ００１｛
ｂａｃｋｇｒｏｕｎｄ−ｃｏｌｏｒ：＃ｅ０ｅ０ｅ０；
ｃｏｌｏｒ：＃００００００；
｝
【００６９】
変換部１２は、セレクタ名生成部１３から獲得したセレクタ名をｂｏｄｙ要素のｃｌａｓｓ属性として追記し、ｂｏｄｙ要素の処理を終了する。結果として、ｂｏｄｙ要素の開始タグは、＜ｂｏｄｙ  ｃｌａｓｓ＝”ｓｅｌ００１”＞となる。
【００７０】
次に、変換部１２は、文書要素記憶部２１からｈ１要素を取り出し変換処理を行う。ｈ１要素は、ａｌｉｇｎ属性を含んでいるため、変換ルールテーブルの５行目に従い、"ｔｅｘｔ−ａｌｉｇｎ：ｃｅｎｔｅｒ"のスタイルを獲得し、ａｌｉｇｎ属性を削除する。また、ｈ１要素は、ｓｔｙｌｅ属性を含んでいるため、変換ルールテーブルの１行目に従い、"ｃｏｌｏｒ：＃００００ｆｆ；ｆｏｎｔ−ｓｉｚｅ：１５０％"のスタイルを獲得し、ｓｔｙｌｅ属性を削除する。ここで、変換ルールテーブルの１行目の、変換後スタイルに"＆１"と記載されているが、これは、ｓｔｙｌｅ属性の属性値をそのままスタイルとして適用すると言うことである。変換部１２は、上記３つからなるスタイル集合を、セレクタ名生成部１３へ渡す。
【００７１】
セレクタ名生成部１３は、スタイルシート記憶部２３を参照し、同じスタイル集合が存在しないことを確認し、一意なセレクタ名"ｓｅｌ００２"を生成する。セレクタ名生成部１３は、生成したセレクタ名を使用して、以下のようなスタイルシートを作成し、スタイルシート記憶部２３へ格納すると共に、セレクタ名を変換部１２へ返す。
ｓｅｌ００２｛
ｔｅｘｔ−ａｌｉｇｎ：ｃｅｎｔｅｒ；
ｃｏｌｏｒ：＃００００ｆｆ；
ｆｏｎｔ−ｓｉｚｅ：１５０％；
｝
【００７２】
変換部１２は、セレクタ名生成部１３から獲得したセレクタ名をｈ１要素のｃｌａｓｓ属性として追記し、ｈ１要素の処理を終了する。結果として、ｈ１要素の開始タグは、＜ｈ１  ｃｌａｓｓ＝”ｓｅｌ００２”＞となる。
【００７３】
次に、図４のＨＴＭＬの５行目のｆｏｎｔ要素およびｂｉｇ要素に対する処理について説明する。ｆｏｎｔ要素では、ｓｉｚｅ属性が設定されており、その属性値として"＋２"が設定されている。前述のフォントサイズを決定するための演算処理に従い、現在のフォントサイズのレベルを「５」と設定し、図７のマッピングテーブルから"１．５ｅｍ"のサイズを獲得する。また、次のｂｉｇ要素は、ｆｏｎｔ要素に含まれているため、現在のフォントサイズのレベルの「５」を維持したまま、前述のフォントサイズを決定するための演算処理に従い、現在のフォントサイズのレベルを一つ繰り上げて「６」と設定し、図７のマッピングテーブルから"２．０ｅｍ"のサイズを獲得する。結果として、スタイルシートとしては、
.ｓｅｌ００４｛
ｆｏｎｔ−ｓｉｚｅ：１．５ｅｍ；
｝
.ｓｅｌ００５｛
ｆｏｎｔ−ｓｉｚｅ：２．０ｅｍ；
｝
の２つが作成される。
【００７４】
また、図４のＨＴＭＬの５行目のｆｏｎｔ要素およびｂｉｇ要素は、それぞれ図６に示した変換ルールテーブルの１６行目、１４行目のルールにマッチするので、両要素のタグ名はｓｐａｎに変換される。また、ｆｏｎｔ要素およびｂｉｇ要素に対応するスタイルシートのセレクタ名は、それぞれｓｅｌ００４，ｓｅｌ００５であるので、
＜ｓｐａｎ  ｃｌａｓｓ＝”ｓｅｌ００４”＞文字列２
＜ｓｐａｎ  ｃｌａｓｓ＝”ｓｅｌ００５”＞文字列３
＜／ｓｐａｎ＞
＜／ｓｐａｎ＞
のようにフォーマット変換される。
【００７５】
次に、図４のＨＴＭＬの６行目のｈ１要素に対する処理について説明する。このｈ１要素の処理から獲得されるスタイル集合は、２行目のｈ１要素で獲得されるスタイル集合と同じになるため、セレクタ名生成部１３は、スタイルシート記憶部２３を検索した場合に、セレクタ名"ｓｅｌ００２"を獲得することが出来る。そのため、セレクタ名生成部１３は、新たなスタイルシートを登録することなく、獲得したセレクタ名を変換部１２に返す。変換部１２は、渡されたセレクタ名"ｓｅｌ００２"を利用してｃｌａｓｓ属性を追加する。このようにして、最終的に文書要素記憶部２１に格納される構造化文書および、スタイルシート記憶部２３に格納されるスタイルシートは、図８、図９のようになる。
【００７６】
出力部１４は、スタイルシート群にファイル名を与えテキストファイルとして出力すると共に、文書要素記憶部２１に格納されている構造化文書データに、前記出力したスタイルシートファイル名をリンク情報として追記し、構造化文書として出力する。図１０に出力部１４から出力される、リンク情報<link rel="stylesheet"
href="mysheet.css" content="text/css">の追記された構造化文書を示す。なお、この例は、スタイルシートファイル名を"mysheet.css"とした場合についてのものである。
【符号の説明】
【００７７】
１、１ａ…データ処理装置
２、２ａ…記憶装置
１１…入力部
１２…変換部
１３…セレクタ名生成部
１４…出力部
１５…スタイル抽出部
２１…文書要素記憶部
２２…変換ルール記憶部
２３…スタイルシート記憶部
６１…タグ名
６２…属性名
６３…変換後タグ名
６４…変換後スタイル
【図１】
2010282327.tif 000003
【図２】
2010282327.tif 000004
【図３】
2010282327.tif 000005
【図４】
2010282327.tif 000006
【図５】
2010282327.tif 000007
【図６】
2010282327.tif 000008
【図７】
2010282327.tif 000009
【図８】
2010282327.tif 000010
【図９】
2010282327.tif 000011
【図１０】
2010282327.tif 000012