(57)【特許請求の範囲】
【請求項１】
オフィススイート・アプリケーションを用いて作成した、複数のフォルダとファイルとで構成され、前記複数のフォルダとファイルとが一つのファイルにアーカイブされた第１のフォーマットの元文書をウェブブラウザで利用可能な第２のフォーマットの文書に変換する装置で動作する文書変換プログラムであって、
前記装置を、
前記元文書の特定のフォルダ内のファイルを解析し、前記第１のフォーマットに従って所定の書式で記述されたオブジェクトを特定する解析部、
予め記憶した対応付け情報を参照して、前記所定の書式で記述されたオブジェクトを、前記ウェブブラウザを動作させる装置の操作部で操作可能な前記第２のフォーマットの機能オブジェクトに変換する変換部、として機能させ、
前記解析部は、前記元文書の前記特定のフォルダ内に前記オフィススイート・アプリケーションの機能に応じて記述される特定のｘｍｌ要素が存在するかを判定し、
前記変換部は、前記特定のｘｍｌ要素が存在する場合は、前記特定のｘｍｌ要素で特定される前記第１のフォーマットのオブジェクトを、前記特定のｘｍｌ要素に対応する前記オフィススイート・アプリケーションの機能に基づいて、前記第２フォーマットの機能オブジェクトに変換する、
ことを特徴とする文書変換プログラム。
【請求項２】
前記変換部は、前記対応付け情報を参照して、前記特定のｘｍｌ要素で特定される前記第１のフォーマットのオブジェクトを、前記特定のｘｍｌ要素に記述された文字列に対応付けられた前記機能オブジェクトに変換する、
ことを特徴とする請求項１に記載の文書変換プログラム。
【請求項３】
前記解析部は、前記元文書のファイル名に所定のキーワードが含まれているかを判定し、
前記変換部は、前記所定のキーワードの有無に基づいて、前記所定の書式で記述されたオブジェクトを前記第２のフォーマットの機能オブジェクトに変換する第１モードと、前記所定の書式で記述されたオブジェクトを同一又は類似の形態の前記第２のフォーマットのオブジェクトに変換する第２モードと、を切り替える、
ことを特徴とする請求項１又は２に記載の文書変換プログラム。
【請求項４】
前記第１のフォーマットは、OOXML又はODFであり、前記第２フォーマットはHTMLである、
ことを特徴とする請求項１乃至３のいずれか一に記載の文書変換プログラム。
【請求項５】
前記機能オブジェクトは、複数の選択肢を選択可能にする複数選択メニューオブジェクト、複数の選択肢の一つを選択可能にするプルダウンメニューオブジェクト、文章の展開／非展開を可能にする折りたたみメニューオブジェクトである、
ことを特徴とする請求項４に記載の文書変換プログラム。
【請求項６】
オフィススイート・アプリケーションを用いて作成した、複数のフォルダとファイルとで構成され、前記複数のフォルダとファイルとが一つのファイルにアーカイブされた第１のフォーマットの元文書をウェブブラウザで利用可能な第２のフォーマットの文書に変換する装置における文書変換方法であって、
前記元文書の特定のフォルダ内のファイルを解析し、前記第１のフォーマットに従って所定の書式で記述されたオブジェクトを特定する解析処理と、
予め記憶した対応付け情報を参照して、前記所定の書式で記述されたオブジェクトを、前記ウェブブラウザを動作させる装置の操作部で操作可能な前記第２のフォーマットの機能オブジェクトに変換する変換処理と、を実行し、
前記解析処理では、前記元文書の前記特定のフォルダ内に前記オフィススイート・アプリケーションの機能に応じて記述される特定のｘｍｌ要素が存在するかを判定し、
前記変換処理では、前記特定のｘｍｌ要素が存在する場合は、前記特定のｘｍｌ要素で特定される前記第１のフォーマットのオブジェクトを、前記特定のｘｍｌ要素に対応する前記オフィススイート・アプリケーションの機能に基づいて、前記第２フォーマットの機能オブジェクトに変換する、
ことを特徴とする文書変換方法。
【請求項７】
前記変換処理では、前記対応付け情報を参照して、前記特定のｘｍｌ要素で特定される前記第１のフォーマットのオブジェクトを、前記特定のｘｍｌ要素に記述された文字列に対応付けられた前記機能オブジェクトに変換する、
ことを特徴とする請求項６に記載の文書変換方法。
【請求項８】
前記解析処理では、前記元文書のファイル名に所定のキーワードが存在するかを判定し、
前記変換処理では、前記所定のキーワードの有無に基づいて、前記所定の書式で記述されたオブジェクトを前記第２のフォーマットの機能オブジェクトに変換する第１モードと、前記所定の書式で記述されたオブジェクトを同一又は類似の形態の前記第２のフォーマットのオブジェクトに変換する第２モードと、を切り替える、
ことを特徴とする請求項６又は７に記載の文書変換方法。
【請求項９】
前記第１のフォーマットは、OOXML又はODFであり、前記第２フォーマットはHTMLである、
ことを特徴とする請求項６乃至８のいずれか一に記載の文書変換方法。
【請求項１０】
前記機能オブジェクトは、複数の選択肢を選択可能にする複数選択メニューオブジェクト、複数の選択肢の一つを選択可能にするプルダウンメニューオブジェクト、文章の展開／非展開を可能にする折りたたみメニューオブジェクトである、
ことを特徴とする請求項９に記載の文書変換方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文書変換プログラム及び文書変換方法に関し、特に、OOXML（Office Open XML）形式又はODF（OpenDocument Format）の文書をHTML（Hyper Text Markup Language）形式の文書に変換する文書変換プログラム及び文書変換方法に関する。
【背景技術】
【０００２】
WebページはHTMLというマークアップ言語で構成されており、ホームページなどのWebページを作成する場合、このHTMLの記述ルールを習得する必要がある。しかしながら、HTMLの記述ルールの習得には専門知識が必要となり、初心者にはハードルが高く、Webページを簡単に作成できないという問題があった。
【０００３】
一方、文書作成や表計算などの処理が可能なオフィススイート・アプリケーションは、オフィスワーク、教育、家庭など、あらゆる場面で一般的に使用されている。代表的なオフィススイート・アプリケーションとして、Microsoft（登録商標、以下省略）のWord（登録商標、以下省略）、Excel（登録商標、以下省略）、PowerPoint（登録商標、以下省略）などのOfficeが挙げられる。また、Apache OpenOfficeなど、同様の機能を有するアプリケーションも複数流通している。上記MicrosoftのOfficeやオープンソースのApache OpenOfficeは標準化団体で標準化が行われており、それらのファイルフォーマット（OOXMLやODF）をサポートした多数の互換アプリケーションも提供されている。このような使い慣れたオフィススイート・アプリケーションを用いてWebページの下書きを作成し、HTML形式で保存することによって、Webページを簡単に作成することができる。
【０００４】
OOXMLやODFの文書をHTML形式の文書に変換する技術ではないが、データ変換に関連する技術として、例えば、下記特許文献１には、転記元の書類の項目毎のデータを転記先の書類の各項目に転記するための書類作成装置であって、前記転記元の書類の全部又は一部の項目に、当該項目の意味内容を示す意味データを付加する、データファイル作成部と、前記転記元の書類の項目と、前記転記先の書類の項目とを対比して、一致する項目を特定し、前記転記元の書類に付加されている前記意味データを用いて、前記転記元の書類の一致した項目のデータを、前記転記先の書類の項目に転記する、データ転記部と、を備える書類作成装置が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１２−２２０９６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
HTMLでは、要素に付加する属性を記述することによって、所望の選択肢を選択可能にする機能（いわゆるプルダウンメニュー）や、複数の選択肢を同時に選択可能にする機能（いわゆる複数選択メニュー）、文書を展開したり折りたたんだりする機能（いわゆる折りたたみメニュー）などのHTML固有の機能を実現することができる。しかしながら、オフィススイート・アプリケーションで作成したOOXMLやODFの文書をHTML形式で保存する場合、OOXMLやODFの文書がそのままの見た目でHTML化されるため、HTML固有の機能を実現するのが難しいという問題があった。
【０００７】
この問題に対して、特許文献１では、転記元の書類の特定の項目に、当該項目の意味内容を示す意味データを付加することによって転記先の書類の項目に転記しているが、この技術は、転記元の帳票の特有の機能を解釈可能にするための技術であり、転記先の帳票に特有の機能を指定するものではない。従って、この技術を利用しても、オフィススイート・アプリケーションで作成したOOXMLやODFの文書から、HTML固有の機能を実現するオブジェクトを生成することはできない。
【０００８】
本発明は、上記問題点に鑑みてなされたものであって、その主たる目的は、オフィススイート・アプリケーションで作成したOOXMLやODFの文書から、ユーザの希望するHTML固有のオブジェクトを生成することができる文書変換プログラム及び文書変換方法を提供することにある。
【課題を解決するための手段】
【０００９】
本発明の一側面は、オフィススイート・アプリケーションを用いて作成した、複数のフォルダとファイルとで構成され、前記複数のフォルダとファイルとが一つのファイルにアーカイブされた第１のフォーマットの元文書をウェブブラウザで利用可能な第２のフォーマットの文書に変換する装置で動作する文書変換プログラムであって、前記装置を、前記元文書の特定のフォルダ内のファイルを解析し、前記第１のフォーマットに従って所定の書式で記述されたオブジェクトを特定する解析部、予め記憶した対応付け情報を参照して、前記所定の書式で記述されたオブジェクトを、前記ウェブブラウザを動作させる装置の操作部で操作可能な前記第２のフォーマットの機能オブジェクトに変換する変換部、として機能させ、前記解析部は、前記元文書の前記特定のフォルダ内に前記オフィススイート・アプリケーションの機能に応じて記述される特定のｘｍｌ要素が存在するかを判定し、前記変換部は、前記特定のｘｍｌ要素が存在する場合は、前記特定のｘｍｌ要素で特定される前記第１のフォーマットのオブジェクトを、前記特定のｘｍｌ要素に対応する前記オフィススイート・アプリケーションの機能に基づいて、前記第２フォーマットの機能オブジェクトに変換することを特徴とする。
【００１０】
本発明の一側面は、オフィススイート・アプリケーションを用いて作成した、複数のフォルダとファイルとで構成され、前記複数のフォルダとファイルとが一つのファイルにアーカイブされた第１のフォーマットの元文書をウェブブラウザで利用可能な第２のフォーマットの文書に変換する装置における文書変換方法であって、前記元文書の特定のフォルダ内のファイルを解析し、前記第１のフォーマットに従って所定の書式で記述されたオブジェクトを特定する解析処理と、予め記憶した対応付け情報を参照して、前記所定の書式で記述されたオブジェクトを、前記ウェブブラウザを動作させる装置の操作部で操作可能な前記第２のフォーマットの機能オブジェクトに変換する変換処理と、を実行し、前記解析処理では、前記元文書の前記特定のフォルダ内に前記オフィススイート・アプリケーションの機能に応じて記述される特定のｘｍｌ要素が存在するかを判定し、前記変換処理では、前記特定のｘｍｌ要素が存在する場合は、前記特定のｘｍｌ要素で特定される前記第１のフォーマットのオブジェクトを、前記特定のｘｍｌ要素に対応する前記オフィススイート・アプリケーションの機能に基づいて、前記第２フォーマットの機能オブジェクトに変換することを特徴とする。
【発明の効果】
【００１１】
本発明の文書変換プログラム及び文書変換方法によれば、オフィススイート・アプリケーションで作成したOOXMLやODFの文書から、ユーザの希望するHTML固有のオブジェクトを生成することができる。
【００１２】
その理由は、コンピュータ装置で動作する文書変換プログラムは、オフィススイート・アプリケーションを用いて作成した第１のフォーマットの元文書を解析し、第１のフォーマットに従って所定の書式で記述されたオブジェクト（所定の識別子が付加されたオブジェクト、所定の機能を使用して作成されたオブジェクト、所定のルールで記述されたオブジェクト）を特定し、当該オブジェクトをウェブブラウザで利用可能な第２フォーマットの機能オブジェクトに変換する制御を行うからである。
【００１３】
このように、オフィススイート・アプリケーションの書式とHTMLの機能とを関連付けて変換することにより、普段使い慣れたオフィススイート・アプリケーションを用いて作成した文書から、HTML固有のオブジェクトを容易に作成することができ、効果的なWebページを容易に作成することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１の実施例に係るコンピュータ装置の構成を示すブロック図である。
【図２】本発明の第１の実施例に係るコンピュータ装置の全体処理を示すフローチャート図である。
【図３】本発明の第１の実施例に係るコンピュータ装置に表示される画面（モード選択画面）の一例である。
【図４】本発明の第１の実施例に係るコンピュータ装置の処理（HTML固有オブジェクト変換処理）を示すフローチャート図である。
【図５】本発明の第１の実施例に係るOOXMLオブジェクトと明示識別子との関係を示すテーブルである。
【図６】本発明の第１の実施例に係るコンピュータ装置の処理（明示識別子に基づくHTML固有オブジェクト変換処理）を示すフローチャート図である。
【図７】本発明の第１の実施例に係る複数選択メニューオブジェクトの変換例を示す図である。
【図８】本発明の第１の実施例に係るプルダウンメニューオブジェクトの変換例を示す図である。
【図９】本発明の第２の実施例に係るコンピュータ装置の処理（HTML固有オブジェクト変換処理）を示すフローチャート図である。
【図１０】本発明の第２の実施例に係るコンピュータ装置の処理（特定のxml要素に基づくHTML固有オブジェクト変換処理）を示すフローチャート図である。
【図１１】本発明の第２の実施例に係るコンピュータ装置の処理（特定の記述に基づくHTML固有オブジェクト変換処理）を示すフローチャート図である。
【図１２】本発明の第２の実施例に係る複数選択メニューオブジェクトの変換例を示す図である。
【図１３】本発明の第２の実施例に係るプルダウンメニューオブジェクトの変換例を示す図である。
【図１４】本発明の第２の実施例に係る章見出しオブジェクトの変換例を示す図である。
【図１５】OOXMLのフォルダ構造の一例を示す図である。
【図１６】本発明の第２の実施例に係る複数選択メニューオブジェクトの記述例（特定のxml要素に基づく場合）を示す図である。
【図１７】本発明の第２の実施例に係るプルダウンメニューオブジェクトの記述例（特定のxml要素に基づく場合）を示す図である。
【図１８】本発明の第２の実施例に係る章見出しオブジェクトの記述例（特定のxml要素に基づく場合）を示す図である。
【図１９】本発明の第２の実施例に係る複数選択メニューオブジェクトの記述例（特定の記述に基づく場合）を示す図である。
【図２０】本発明の第２の実施例に係るプルダウンメニューオブジェクトの記述例（特定の記述に基づく場合）を示す図である。
【図２１】本発明の第２の実施例に係る章見出しオブジェクトの記述例（特定の記述に基づく場合）を示す図である。
【発明を実施するための形態】
【００１５】
背景技術で示したように、使い慣れたオフィススイート・アプリケーションでWebページの下書きを作成してHTML形式で保存することで、Webページを簡単に作成することができるが、オフィススイート・アプリケーションで作成したOOXMLやODFの文書をHTML形式で保存する場合、そのままの見た目でHTML化されるため、HTML固有の機能を実現するのが難しいという問題があった。
【００１６】
すなわち、オフィススイート・アプリケーションにはこれらの機能はないため、オフィススイート・アプリケーションを用いて作成した文書をHTML形式で保存しても、上記機能を実現するHTML固有のオブジェクトを生成することができない。
【００１７】
そこで、本発明の一実施の形態では、オフィススイート・アプリケーションで作成したOOXMLやODF（第１のフォーマット）の文書をウェブブラウザで利用可能なHTML形式（第２のフォーマット）の文書に変換する場合に、同一描画表現へ変換するのではなく、オフィススイート・アプリケーションの書式とHTMLの機能とを関連付けておき、所定の書式で記述されたオブジェクトをHTML固有のオブジェクトに変換できるようにする。
【００１８】
具体的には、オフィススイート・アプリケーションを用いてOOXMLやODFの元文書を作成する際に、元文書のオブジェクトに所定の識別子が付加された場合は、その識別子に対応するHTML固有の機能を特定し、HTML形式に変換する際に、特定した機能を実現するHTML固有オブジェクトを生成する。また、オフィススイート・アプリケーションの所定の機能を用いてオブジェクトが作成された場合は、その機能に対応するHTML固有の機能を特定し、HTML形式に変換する際に、特定した機能を実現するHTML固有オブジェクトを生成する。また、元文書の中に所定のルールの記述がある場合は、その記述に対応するHTML固有の機能を特定し、HTML形式に変換する際に、特定した機能を実現するHTML固有オブジェクトを生成する。
【００１９】
このように、使い慣れたオフィススイート・アプリケーションを用いて文書を作成する際に、所定の識別子を付加したり、オフィススイート・アプリケーションの所定の機能を使用したり、所定のルールに従って記述したりするだけで、所望のHTML固有のオブジェクトを容易に生成することができ、効果的なWebページを作成することができる。
【実施例１】
【００２０】
上記した本発明の実施の形態についてさらに詳細に説明すべく、本発明の第１の実施例に係る文書変換プログラム及び文書変換方法について、図１乃至図８を参照して説明する。図１は、本実施例のコンピュータ装置の構成を示すブロック図であり、図２、図４、図６は、本実施例のコンピュータ装置の処理を示すフローチャート図である。また、図３は、本実施例のコンピュータ装置に表示される画面（モード選択画面）の一例であり、図５は、OOXMLオブジェクトと明示識別子との関係を示すテーブルである。また、図７、図８は、OOXMLからHTML形式への変換例を示す図である。
【００２１】
図１（ａ）に示すように、本実施例のコンピュータ装置１０は、パーソナルコンピュータ、スマートフォンやタブレットなどの携帯端末、ネットワーク上に配置されたサーバなどの情報処理装置である。このコンピュータ装置１０は、制御部１１、入力装置１６、表示装置１７などで構成される。
【００２２】
制御部１１は、CPU（Central Processing Unit）１２とROM（Read Only Memory）１３やRAM（Random Access Memory）１４などのメモリと、HDD（Hard Disk Drive）やSSD（Solid State Drive）などの記憶装置１５とで構成され、CPU１２は、ROM１３や記憶装置１５に記憶した制御プログラムをRAM１４に展開して実行することにより、コンピュータ装置１０全体の動作を制御する。
【００２３】
入力装置１６は、マウスやキーボード、タッチパネルなどで構成され、オフィススイート・アプリケーション１１ｂを用いた文書の作成、後述する変換モードの選択、Webブラウザの画面（Webページ）におけるメニュー操作などの操作を可能にする。
【００２４】
表示装置１７は、液晶表示装置（LCD：Liquid Crystal Display）や有機EL（electroluminescence）表示装置などで構成され、オフィススイート・アプリケーション１１ｂの文書作成画面、変換モードの選択画面、Webブラウザの画面などを表示する。
【００２５】
また、図１（ｂ）に示すように、上記制御部１１により、OS（Operating System）１１ａ、オフィススイート・アプリケーション１１ｂ、文書変換プログラム１１ｃなどのプログラムが実行される。
【００２６】
OS１１ａは、Windows（登録商標）やMacintosh（登録商標）などであり、コンピュータ装置１０でオフィススイート・アプリケーション１１ｂや文書変換プログラム１１ｃを動作可能にする。
【００２７】
オフィススイート・アプリケーション１１ｂは、文章作成や表計算、画像加工などを行うソフトウェアであり、Webページの元となるOOXMLやODFの文書（元文書と呼ぶ。）を作成する。なお、本実施例では、オフィススイート・アプリケーション１１ｂとして、MicrosoftのWordを例にして説明する。
【００２８】
文書変換プログラム１１ｃは、オフィススイート・アプリケーション１１ｂで作成したOOXMLやODF（第１のフォーマット）の元文書を、ウェブブラウザで利用可能なHTML形式（第２のフォーマット）の文書に変換する。この文書変換プログラム１１ｃは、解析部、変換部などとして機能する。
【００２９】
解析部は、OOXMLやODFの元文書を解析し、元文書のファイル名に予め定めた所定のキーワードが含まれているかを判定する。また、解析部は、元文書のオブジェクトにHTML固有の機能を指定する所定の識別子（明示識別子と呼ぶ。）が付加されているかを判定する。すなわち、解析部は、第１のフォーマットに従って所定の書式で記述されたオブジェクトを特定する。また、解析部は、元文書のオブジェクトがHTML固有オブジェクトへの変換対象となるオブジェクトであるかを判断したり、予め保持したテーブルを参照して、元文書のオブジェクトに対してHTML固有オブジェクトへの変換が指定可能であるかを判断したりする。
【００３０】
変換部は、元文書のファイル名に所定のキーワードが含まれているか否かに基づいて、元文書のオブジェクトをHTML固有オブジェクトに変換するモード（すなわち、上記所定の書式で記述されたオブジェクトを第２フォーマットの機能オブジェクトに変換する第１モード）と元文書のオブジェクトを通常のHTMLオブジェクトに変換するモード（すなわち、上記所定の書式で記述されたオブジェクトを同一又は類似の形態の第２のフォーマッのオブジェクトに変換する第２モード）とを切り替える。また、変換部は、元文書のオブジェクトに明示識別子が付加（複数の要素を並列に記述したオブジェクトの第１要素に明示識別子が記述）されている場合に、明示識別子に基づいて、第１要素を除く要素をHTML固有オブジェクトに変換する。すなわち、変換部は、予め記憶した対応付け情報を参照して、上記所定の書式で記述されたオブジェクトを、Webブラウザを動作させる装置の操作部（例えば、コンピュータ装置１０の入力装置１６）で操作可能な第２のフォーマットの機能オブジェクトに変換する。
【００３１】
なお、図１では、コンピュータ装置１０を情報処理装置として説明したが、例えば、MFP（Multi-Functional Peripherals）などの画像形成装置としてもよい。また、図１では、コンピュータ装置１０を単体で動作する構成としているが、通信ネットワークに接続された他のコンピュータ装置で作成したOOXMLやODFの元文書のデータを受信してHTML形式に変換する構成としてもよいし、更に、変換したHTML形式のデータを通信ネットワークに接続された他のコンピュータ装置やサーバに送信する構成としてもよい。すなわち、本実施例のコンピュータ装置１０は、少なくとも文書変換プログラムが動作する構成であればよい。
【００３２】
次に、上記構成のコンピュータ装置１０の処理について説明する。CPU１２は、ROM１３や記憶装置１５に記憶した文書変換プログラムをRAM１４に展開して実行することにより、図２、図４、図６のフローチャート図に示す各ステップの処理を行う。なお、以下の説明では、変換対象の元文書をOOXML形式の文書とするが、ODFの文書の場合も同様である。
【００３３】
文書変換プログラムは、コンピュータ装置１０内部のオフィススイート・アプリケーション１１ｂや外部のコンピュータ装置などからOOXML文書を受信すると（Ｓ１０１）、HTML変換モードを特定する（Ｓ１０２）。このHTML変換モードとして、特定のOOXMLオブジェクトをHTML固有オブジェクトに変換するモード（HTML固有オブジェクト変換モード）と、OOXML文書の表現に従ってOOXMLオブジェクトをHTMLオブジェクトに変換する（OOXMLオブジェクトと同一又は類似の書式のHTMLオブジェクトに変換する）モード（HTML通常オブジェクト変換モード）の２つのモードが存在する。
【００３４】
これらのモードの切り替えは、文書変換プログラムにGUI（Graphical User Interface）が搭載されている場合は、そのGUI経由で設定することができる。図３は、GUIでモードを設定する場合のダイアログ（モード選択画面２０）の一例であり、ユーザがモード選択画面２０でモードを選択すると、文書変換プログラム（変換部）は、動作モードを選択されたモードに切り替える。
【００３５】
また、受信したOOXML文書のファイル名にモードを明示する所定のキーワードが付加されている場合は、文書変換プログラム（解析部）が判定したキーワードの有無に従って、文書変換プログラム（変換部）がモードを切り替えてもよい。例えば、”Sample1[Koyuu].docx”のように、ファイル名に[Koyuu]というキーワードが含まれている場合には、HTML固有オブジェクト変換モードに切り替え、”Sample1[tujyo].docx”のように、ファイル名に[tujyo]というキーワードが含まれていた場合やキーワードが明示されてない場合は、HTML通常オブジェクト変換モードに切り替える。
【００３６】
そして、文書変換プログラムは、動作モードが固有HTMLオブジェクト変換モードの場合（Ｓ１０３のＹｅｓ）は、HTML固有オブジェクト変換処理を行い（Ｓ１０４）、動作モードが固有HTMLオブジェクト変換モードでない場合（Ｓ１０３のＮｏ）は、OOXML表現に従ったHTMLオブジェクト変換処理を行う（Ｓ１０５）。
【００３７】
図５は、上記Ｓ１０４のHTML固有オブジェクト変換処理の詳細を示している。まず、文書変換プログラム（解析部）は、受信したOOXML文書を解析し（Ｓ２０１）、OOXML文書のオブジェクト毎に、HTML固有オブジェクト変換対象かどうかを判断する（Ｓ２０２）。例えば、オフィススイート・アプリケーション１１ｂの特定の機能（MicrosoftのWordにおける箇条書き機能や段落番号機能）を用いて作成されたオブジェクトはHTML固有オブジェクト変換対象のオブジェクトであると判断する。HTML固有オブジェクト変換対象のOOXMLオブジェクトでない場合は、文書変換プログラム（変換部）は、通常のOOXML表現に従ってHTMLオブジェクトに変換する（Ｓ２０５）。
【００３８】
HTML固有オブジェクト変換対象のOOXMLオブジェクトの場合は、文書変換プログラム（解析部）は、文書変換ブログラム内部に予め保持したテーブルを参照して、そのOOXMLオブジェクトが、明示識別子が指定可能なオブジェクトであるかどうかを判断する（Ｓ２０３）。図５は、このテーブルの一例であり、例えば、箇条書きのOOXMLオブジェクトや段落番号が付与されたOOXMLオブジェクトは、明示識別子が指定可能なオブジェクトである。そして、文書変換プログラムは、明示識別子が指定可能なオブジェクトでないと判断した場合は、通常のOOXML表現に従ってHTMLオブジェクトに変換し（Ｓ２０５）、明示識別子が指定可能なオブジェクトと判断した場合は、その明示識別子に基づいてOOXMLオブジェクトをHTML固有オブジェクトに変換する（Ｓ２０４）。
【００３９】
図６は、Ｓ２０４の明示識別子に基づくHTML固有オブジェクト変換処理の詳細を示している。まず、文書変換プログラム（解析部）は、OOXMLオブジェクトの第１要素（例えば、箇条書きのオブジェクトや段落番号が付与されたオブジェクトの最初の行）を解析する（Ｓ３０１）。解析の結果、明示識別子による処理が可能な場合は（Ｓ３０２のＹｅｓ）、文書変換プログラム（変換部）は、OOXMLオブジェクトをその明示識別子で指定されたHTML固有オブジェクトに変換する（Ｓ３０３）。一方、明示識別子による処理が不可能な場合は（Ｓ３０２のＮｏ）、通常のOOXML表現に従ったHTMLオブジェクトに変換する（Ｓ３０４）。なお、明示識別子による処理が不可能な場合とは、例えば、明示識別子にスペルミスがあったり、OOXMLオブジェクトと対比できない明示識別子が指定されていたりする場合などである。
【００４０】
図７は、明示識別子が指定可能なOOXMLオブジェクトの第１要素に、明示識別子として”<multipleselect>”が付加されている場合のHTML固有オブジェクト変換の一例であり、（ａ）は変換前のOOXMLオブジェクト、（ｂ）は変換後のHTML固有オブジェクトを示している。”<multipleselect>”が付加されている場合、文書変換プログラム（変換部）は、OOXMLの箇条書き機能を用いて記述された、第２要素以降の箇条書きの要素をHTMLの複数選択メニューオブジェクトに変換する。
【００４１】
図８は、明示識別子が指定可能なOOXMLオブジェクトの第１要素に、明示識別子として”<pulldown>”が付加されている場合のHTML固有オブジェクト変換の一例であり、（ａ）は変換前のOOXMLオブジェクト、（ｂ）は変換後のHTML固有オブジェクトを示している。”<pulldown>”が付加されている場合、文書変換プログラム（変換部）は、OOXMLの箇条書き機能を用いて記述された、第２要素以降の箇条書きの要素をHTMLのプルダウンメニューオブジェクトに変換する。
【００４２】
なお、上記明示識別子は例示であり、文書変換プログラムが認識可能な任意の文字列とすることができる。また、上記では、OOXMLオブジェクトの第１要素に明示識別子を付加したが、明示識別子は文書変換プログラムが認識可能な位置であれば、OOXMLオブジェクトの任意の位置（例えば、最後の要素）に付加することができる。また、上記では、明示識別子が指定可能なOOXMLオブジェクトとして、要素の先頭にドットマークが付加される箇条書きを例示したが、マークの種類は任意であり、マークに代えて数字（段落番号）が付加されたオブジェクトとしてもよい。
【００４３】
このように、本実施例では、特定のOOXMLオブジェクトに予め定めた明示識別子が付加されている場合に、そのOOXMLオブジェクトがその明示識別子で指示されたHTML固有オブジェクトに変換されるため、オフィススイート・アプリケーション１１ｂで作成された文書を、ユーザの意図を反映したHTML形式の文書に変換することができる。
【実施例２】
【００４４】
次に、本発明の第２の実施例に係る文書変換プログラム及び文書変換方法について、図９乃至図２１を参照して説明する。図９乃至１１は、本実施例のコンピュータ装置の処理を示すフローチャート図であり、図１２乃至図１４は、OOXML形式からHTML形式への変換例である。また、図１５は、OOXMLのフォルダ構造を示す図であり、図１６乃至図２１は、特定のHTML固有オブジェクトを生成するための記述例である。
【００４５】
前記した第１の実施例では、オフィススイート・アプリケーション１１ｂを用いて文書を作成する際に、ユーザがOOXMLオブジェクトに対して明示識別子を付加する構成としたが、本実施例では、文書変換プログラムが特定のOOXMLオブジェクトを自動的に判別し、HTML固有オブジェクトに変換するように制御する。
【００４６】
その場合、コンピュータ装置１０の構成は第１の実施例の図１と同様であるが、文書変換プログラムの解析部は、OOXMLやODFの元文書を解析し、フォルダ構造内に特定のxml要素が存在するか、特定のルールに従って記述された文字や記号が含まれているかを判断する。また、変換部は、OOXMLやODFの元文書をHTML形式に変換する際に、フォルダ構造内に特定のxml要素が存在する場合や、特定のルールに従って記述された文字や数字、記号が含まれている場合は、OOXMLオブジェクトをHTML固有オブジェクトに変換する。
【００４７】
以下、上記構成のコンピュータ装置１０の処理について説明する。CPU１２は、ROM１３や記憶装置１５に記憶した文書変換プログラムをRAM１４に展開して実行することにより、図９乃至図１１のフローチャート図に示す各ステップの処理を行う。なお、以下の説明では、変換対象の元文書をOOXML形式の文書とするが、ODFの文書の場合も同様である。また、第１の実施例の図２のフローチャートに示す処理は同様であるため、説明を省略する。
【００４８】
図９は、図２のＳ１０４のHTML固有オブジェクト変換処理の詳細を示している。まず、文書変換プログラム（解析部）は、受信したOOXML文書を解析し（Ｓ４０１）、OOXML文書のフォルダ構造内に、特定のxml要素が存在するかどうかを判断する（Ｓ４０２）。OOXMLのフォルダ構造に特定のxml要素が含まれる場合は、文書変換プログラム（変換部）は、特定のxml要素で指定されるOOXMLオブジェクトをHTML固有オブジェクトに変換する（Ｓ４０３）。なお、OOXML文書のフォルダ構造及び特定のxml要素については後述する。
【００４９】
OOXML文書のフォルダ構造内に特定のxml要素が含まれていない場合は、文書変換プログラム（解析部）は、OOXML文書内に特定の記述（特定のルールに従って記述された文字や記号）があるかどうかを判断する（Ｓ４０４）。この特定の記述に関しても後述する。そして、文書変換プログラム（変換部）は、OOXML文書内に特定の記述がある場合は、特定の記述があるOOXMLオブジェクトをその記述に対応するHTML固有オブジェクトに変換し（Ｓ４０５）、OOXML文書内に特定の記述がない場合は、通常のOOXML表現に従ってHTMLオブジェクトに変換する（Ｓ４０６）。
【００５０】
図１０は、Ｓ４０３の特定のxml要素に基づくHTML固有オブジェクト変換処理の詳細を示している。まず、文書変換プログラム（解析部）は、xml要素で指定されるOOXMLオブジェクトの種別を確認する（Ｓ５０１）。そして、文書変換プログラム（変換部）は、オブジェクト種別に基づいてオブジェクト変換を行う。具体的には、オブジェクト種別が「箇条書きオブジェクト」の場合は（Ｓ５０２のＹｅｓ）、文書変換プログラム（変換部）は、図１２に示すように、OOXMLオブジェクトをHTMLの複数選択メニューオブジェクトに変換する（Ｓ５０３）。オブジェクト種別が「段落番号オブジェクト」の場合は（Ｓ５０２のＮｏ、Ｓ５０４のＹｅｓ）、文書変換プログラム（変換部）は、図１３に示すように、OOXMLオブジェクトをHTMLのプルダウンメニューオブジェクトに変換する（Ｓ５０５）。オブジェクト種別が「章見出しオブジェクト」の場合は（Ｓ５０４のＮｏ、Ｓ５０６のＹｅｓ）、文書変換プログラム（変換部）は、図１４に示すように、OOXMLオブジェクトをHTMLの折りたたみメニューオブジェクトに変換し（Ｓ５０７）、「章見出しオブジェクト」でない場合は（Ｓ５０６のＮｏ）、通常のOOXML表現に従ってHTMLオブジェクトに変換する（Ｓ５０８）。なお、これらのオブジェクト以外にも変換先HTMLオブジェクトが定義されていれば、その定義に従ってHTML固有オブジェクトへの変換を行う。
【００５１】
図１１は、Ｓ４０５の特定の記述に基づくHTML固有オブジェクト変換処理の詳細を示している。まず、文書変換プログラム（解析部）は、段落の先頭部に特定の記号（例えば、ドットマークなど）があるかを判断する（Ｓ６０１）。段落の先頭部に特定の記号がある場合は、図１２に示すように、文書変換プログラム（変換部）は、OOXMLオブジェクトをHTMLの複数選択メニューオブジェクトに変換する（Ｓ６０２）。段落の先頭部に特定の記号がない場合は、文書変換プログラム（解析部）は、段落の先頭部に連続する番号（例えば、１、２…やａ、ｂ…など）があるかを判断する（Ｓ６０３）。段落の先頭部に連続する番号がある場合は、図１３に示すように、文書変換プログラム（変換部）は、OOXMLオブジェクトをHTMLのプルダウンメニューオブジェクトに変換する（Ｓ５０５）。段落の先頭部に連続する番号がない場合は、文書変換プログラム（変換部）は、オブジェクトが章分けされているかを判断する（Ｓ６０５）。オブジェクトが章分けされている場合は、文書変換プログラム（変換部）は、図１４に示すように、OOXMLオブジェクトをHTMLの折りたたみメニューオブジェクトに変換し（Ｓ６０６）、オブジェクトが章分けされていない場合は、通常のOOXML表現に従ってHTMLオブジェクトに変換する（Ｓ６０７）。なお、これらのオブジェクト以外にも変換先HTMLオブジェクトが定義されていればその定義に従ってHTML固有オブジェクトへの変換を行う。
【００５２】
図１２は、OOXMLの箇条書きオブジェクトをHTMLの複数選択メニューオブジェクトに変換した場合の入力と出力の一例である。また、図１３は、OOXMLの段落番号オブジェクトをHTMLのプルダウンメニューオブジェクトに変換した場合の入力と出力の一例である。図１４は、OOXMLの章見出しオブジェクトをHTMLの折りたたみメニューオブジェクトに変換した場合の入力と出力の一例であり、図１４（ｂ）はすべての章を展開した場合、図１４（ｃ）は、第１章と第２章を非展開（折りたたみ）、第３章を展開した場合の例を示している。
【００５３】
図１５は、OOXMLのフォルダ構造を示しており、OOXMLファイルは、Content_Type.xml、_relsフォルダ、docPropフォルダ、wordフォルダなどで構成され、OOXML文書に箇条書きオブジェクトや段落番号オブジェクト、章見出しオブジェクトが含まれる場合、wordフォルダ内に「numbering.xml」が作成される。従って、OOXMLのフォルダ構造に「numbering.xml」が含まれる場合、HTML固有オブジェクト変換が可能であると判断することができる。
【００５４】
図１６乃至図２１は、オフィススイート・アプリケーション１１ｂとしてMicrosoftのWordを使用して文書を作成した場合の変換の具体例である。図１６乃至図２１の（ａ）は、オフィススイート・アプリケーション１１ｂの記述例であり、図１６乃至図２１の（ｂ）はOOXMLファイルのxml記述例、図１６乃至図１８の（ｃ）はHTML記述例である。
【００５５】
例えば、MicrosoftのWordの箇条書き機能を使用して、図１６（ａ）に示すような箇条書きオブジェクトを作成した場合、図１６（ｂ）に示すようにOOXMLファイルの「numbering.xml」内に”<w:numFmt w:val="bullet" />”の文字列が記述される。従って、「numbering.xml」内に”bullet”の文字列がある場合、そのOOXMLオブジェクトは箇条書きオブジェクトであると判断することができるため、文書変換プログラム（変換部）は、図１６（ｃ）に示すようにHTML記述を行うことにより、複数選択メニューオブジェクトを生成することができる。
【００５６】
また、Wordの段落番号機能を使用して、図１７（ａ）に示すような段落番号オブジェクトを作成した場合、図１７（ｂ）に示すようにOOXMLファイルの「numbering.xml」内に”<w:numFmt w:val="decimal" />”の文字列が記述される。従って、「numbering.xml」内に”decimal”の文字列がある場合、そのオブジェクトは段落番号オブジェクトであると判断することができるため、文書変換プログラム（変換部）は、図１７（ｃ）に示すようにHTML記述を行うことにより、プルダウンメニューオブジェクトを生成することができる。
【００５７】
また、Wordの章見出し機能を使用して、図１８（ａ）に示すような章見出しオブジェクトを作成した場合、図１８（ｂ）に示すようにOOXMLファイルの「numbering.xml」内に” <w:numFmt w:val="decimalFullWidth" />”の文字列が記述される。従って、「numbering.xml」内に”decimalFullWidth”の文字列がある場合、そのオブジェクトは章見出しオブジェクトであると判断することができるため、文書変換プログラム（変換部）は、図１８（ｃ）に示すようにHTML記述を行うことにより、折りたたみメニューオブジェクトを生成することができる。
【００５８】
また、Wordの箇条書き機能を使用せずに、図１９（ａ）に示すような箇条書きオブジェクトを作成した場合、図１９（ｂ）に示すようにOOXMLファイルの「document.xml」の”<w:body>”内に” <w:t>・</w:t>”の文字列が繰り返し記述される。従って、「document.xml」内に”・”の文字列が繰り返し配置される場合、そのオブジェクトは箇条書きオブジェクトであると判断することができるため、文書変換プログラム（変換部）は、図１６（ｃ）と同様に複数選択メニューオブジェクトを生成することができる。
【００５９】
また、Wordの段落番号機能を使用せずに、図２０（ａ）に示すような段落番号オブジェクトを作成した場合、図２０（ｂ）に示すようにOOXMLファイルの「document.xml」の”<w:body>”内に”<w:t>１．</w:t>”、”<w:t>２．</w:t>”…の文字列が繰り返し記述される。従って、「document.xml」内に”１”、”２”…の連続する文字列がある場合、そのオブジェクトは段落番号オブジェクトであると判断することができるため、文書変換プログラム（変換部）は、図１７（ｃ）と同様にプルダウンメニューオブジェクトを生成することができる。
【００６０】
また、Wordの段落番号機能を使用せずに、図２１（ａ）に示すような章見出しオブジェクトを作成した場合、図２１（ｂ）に示すようにOOXMLファイルの「document.xml」の”<w:body>”内に” <w:numFmt w:val="decimalFullWidth" />”や”<w:t>第１章  はじめに</w:t>”等の文字列が記述される。従って、「document.xml」内に”・”や”第１章”などの文字列がある場合、そのオブジェクトは章見出しオブジェクトであると判断することができるため、文書変換プログラム（変換部）は、図１８（ｃ）と同様に折りたたみメニューオブジェクトを生成することができる。
【００６１】
このように、本実施例では、OOXMLファイルに特定のxml要素が含まれる場合や特定の記述が含まれる場合に、OOXMLオブジェクトが特定のxml要素や特定の記述に対応するHTML固有オブジェクトに変換されるため、オフィススイート・アプリケーション１１ｂで作成された文書を、ユーザの意図を反映したHTML形式の文書に変換することができる。
【００６２】
なお、本発明は上記実施例に限定されるものではなく、本発明の趣旨を逸脱しない限りにおいて、その構成や制御は適宜変更可能である。
【００６３】
例えば、上記実施例では、オフィススイート・アプリケーション１１ｂで作成された文書としてOOXMLファイルを例示したが、ODFファイルに対しても本発明の文書変換方法を同様に適用することができる。
【産業上の利用可能性】
【００６４】
本発明は、OOXMLやODFの文書をHTML形式に変換する文書変換プログラム及び当該文書変換プログラムを記録した記録媒体並びに文書変換方法に利用可能である。
【符号の説明】
【００６５】
１０  コンピュータ装置
１１  制御部
１１ａ  ＯＳ
１１ｂ  オフィススイート・アプリケーション
１１ｃ  文書変換プログラム
１２  ＣＰＵ
１３  ＲＯＭ
１４  ＲＡＭ
１５  記憶装置
１６  入力装置
１７  表示装置
２０  モード選択画面
【図１】
0006308169.tif 000002
【図２】
0006308169.tif 000003
【図３】
0006308169.tif 000004
【図４】
0006308169.tif 000005
【図５】
0006308169.tif 000006
【図６】
0006308169.tif 000007
【図７】
0006308169.tif 000008
【図８】
0006308169.tif 000009
【図９】
0006308169.tif 000010
【図１０】
0006308169.tif 000011
【図１１】
0006308169.tif 000012
【図１２】
0006308169.tif 000013
【図１３】
0006308169.tif 000014
【図１４】
0006308169.tif 000015
【図１５】
0006308169.tif 000016
【図１６】
0006308169.tif 000017
【図１７】
0006308169.tif 000018
【図１８】
0006308169.tif 000019
【図１９】
0006308169.tif 000020
【図２０】
0006308169.tif 000021
【図２１】
0006308169.tif 000022