(57)【特許請求の範囲】
【請求項１】
文書構造を示すタグを定義した文書型定義部と該文書型定義部に定義されている該タグを用いて記述された文書実現部とを有するタグ文書を符号化して圧縮するタグ文書の圧縮装置であって、
入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査して該タグを抽出するタグ抽出部と、
該タグ抽出部により該文書型定義部から抽出された該タグに基づいて、当該文書型定義部内の該タグに所定の符号を割り当ててタグ符号表を作成するタグ符号表作成部と、
該タグ符号表作成部により作成された該タグ符号表に基づいて、前記文書型定義部及び前記文書実現部のうちの前記文書実現部内の該タグを符号化するタグ符号化部とをそなえたことを特徴とする、タグ文書の圧縮装置。
【請求項２】
該タグ符号化部が、
同一の文書型定義部を有する複数のタグ文書については、該タグ抽出部および該タグ符号表作成部において最初のタグ文書について作成されたタグ符号表に基づいて、全てのタグ文書の文書実現部内のタグに対する符号化を行なうように構成されていることを特徴とする、請求項１記載のタグ文書の圧縮装置。
【請求項３】
文書構造を示すタグを定義した文書型定義部と該文書型定義部に定義されている該タグを用いて記述された文書実現部とを有するタグ文書を符号化して圧縮するタグ文書の圧縮装置であって、
入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査して該タグを抽出するタグ抽出部と、
該タグ抽出部により該文書型定義部から抽出された該タグに基づいて、当該文書型定義部内の該タグに所定の符号を割り当ててタグ符号表を作成するタグ符号表作成部と、
入力された前記文書型定義部及び前記文書実現部のうちの前記文書実現部のデータが該タグ抽出部により抽出された該タグであるか否かを判別するタグ判別部と、
該タグ判別部において上記の入力データが該タグであると判別されると、該タグ符号表に基づいて該入力データを符号化する一方、該タグ判別部において該入力データが該タグでないと判別されると、該入力データを所定の符号化方式で符号化する符号化処理部と、
該タグ判別部において上記の入力データが該タグであると判別されると、該入力データの符号化前に、タグの符号化を示す特殊コードを該タグの復号側へ出力する特殊コード出力部とをそなえたことを特徴とする、タグ文書の圧縮装置。
【請求項４】
該符号化処理部が、
入力データを該タグ符号表に基づいて符号化する第１符号化部と、
入力データを所定の符号化方式で符号化する第２符号化部と、
該タグ判別部において該入力データが該タグであると判別されると該入力データを該第１符号化部へ出力する一方、該タグ判別部において該入力データが該タグでないと判別されると該入力データを該第２符号化部へ出力する切り替え制御部とをそなえていることを特徴とする、請求項３記載のタグ文書の圧縮装置。
【請求項５】
該タグ符号表作成部が、
該タグ抽出部により抽出された該タグを記憶するタグ記憶部を有し、該タグの該タグ記憶部における該記憶箇所についての情報を該タグの符号として割り当てることにより該タグ符号表を作成するように構成されていることを特徴とする、請求項３記載のタグ文書の圧縮装置。
【請求項６】
上記の記憶箇所についての情報が、該タグ記憶部のアドレス情報を含む情報であることを特徴とする、請求項５記載のタグ文書の圧縮装置。
【請求項７】
上記の記憶箇所についての情報が、該アドレス情報と該タグの長さ情報とであることを特徴とする、請求項６記載のタグ文書の圧縮装置。
【請求項８】
該タグ符号表作成部が、
該タグ抽出部により抽出された該タグに所定の初期符号を割り当てることにより該タグの第１符号化用辞書を該タグ符号表として作成する第１符号化用辞書作成部と、
該符号化処理部により該タグが符号化されると、該タグの出現頻度に応じて、該第１符号化用辞書作成部により作成された該第１符号化用辞書内の該符号の更新を行なう符号化用辞書更新部とをそなえていることを特徴とする、請求項３記載のタグ文書の圧縮装置。
【請求項９】
該タグ符号表作成部が、
該タグ抽出部により抽出された該タグに基づいて該文書実現部内の該タグの出現頻度を計数し、その計数結果に応じた符号を該タグに割り当てることにより該タグの第２符号化用辞書を該タグ符号表として作成する第２符号化用辞書作成部をそなえていることを特徴とする、請求項３記載のタグ文書の圧縮装置。
【請求項１０】
該タグの出現頻度に関する情報を該タグの復号側へ出力する出現頻度情報出力部をそなえていることを特徴とする、請求項９記載のタグ文書の圧縮装置。
【請求項１１】
該第２符号化用辞書作成部が、
該タグ抽出部により抽出された該タグと該文書実現部内の該タグとが一致するか否かを判定することにより該文書実現部内の該タグの出現頻度を計数するタグ計数部と、
該タグ計数部での計数結果に応じた符号を生成する符号生成部と、
該符号生成部により生成された該符号を保持することにより該第２符号化用辞書を作成する符号保持部とをそなえていることを特徴とする、請求項９記載のタグ文書の圧縮装置。
【請求項１２】
文書構造を示すタグを定義した文書型定義部と該文書型定義部に定義されている該タグを用いて記述された文書実現部とを有するタグ文書を符号化して圧縮するタグ文書の圧縮装置であって、
入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査して該タグを抽出するタグ抽出部と、
該タグ抽出部により該文書型定義部から抽出された該タグに基づいて、当該文書型定義部内の該タグに所定の符号を割り当ててタグ符号表を作成するタグ符号表作成部と、
入力された前記文書型定義部及び前記文書実現部のうちの前記文書実現部のデータが該タグ抽出部により抽出された該タグであるか否かを判別するタグ判別部と、
該タグ判別部において上記の入力データが該タグであると判別されると、該タグ符号表に基づいて該入力データを符号化する一方、該タグ判別部において該入力データが該タグでないと判別されると、該入力データを所定の符号化方式で符号化する符号化処理部とをそなえたことを特徴とする、タグ文書の圧縮装置。
【請求項１３】
該タグ判別部が、
該タグ抽出部で抽出された該タグに基づいてタグの始まりを示す開始タグを検出することにより該入力データが該タグであると判別するように構成されていることを特徴とする、請求項１２記載のタグ文書の圧縮装置。
【請求項１４】
文書構造を示すタグを定義した文書型定義部と該文書型定義部に定義されている該タグを用いて記述された文書実現部とを有する符号化後のタグ文書を復号して復元するタグ文書の復元装置であって、
入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査して該タグを抽出するタグ抽出部と、
該タグ抽出部により該文書型定義部から抽出された該タグに基づいて、当該文書型定義部内の該タグに所定の符号を割り当ててタグ復号表を作成するタグ復号表作成部と、
該タグ復号表作成部により作成された該タグ復号表に基づいて、符号化された前記文書型定義部及び前記文書実現部のうちの前記文書実現部内の該タグを復号するタグ復号部とをそなえたことを特徴とする、タグ文書の復元装置。
【請求項１５】
該タグ復号部が、
同一の文書型定義部を有する複数のタグ文書については、該タグ抽出部および該タグ復号表作成部を通じて最初のタグ文書について作成されたタグ復号表に基づいて、全てのタグ文書の文書実現部に対するタグの復号を行なうように構成されていることを特徴とする、請求項１４記載のタグ文書の復元装置。
【請求項１６】
文書構造を示すタグを定義した文書型定義部と該文書型定義部に定義されている該タグを用いて記述された文書実現部とを有する符号化後のタグ文書を復号して復元するタグ文書の復元装置であって、
入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査して該タグを抽出するタグ抽出部と、
該タグ抽出部により該文書型定義部から抽出された該タグに基づいて、当該文書型定義部内の該タグに所定の符号を割り当ててタグ復号表を作成するタグ復号表作成部と、
入力された符号化データが、タグの符号化データが入力されることを示す特殊コードであるか否かを判別する特殊コード判別部と、
該特殊コード判別部において該符号化データが該特殊コードであると判別されると、該特殊コードの後に入力される符号化データを該タグ復号表に基づいて復号する一方、該特殊コード判別部において該符号化データが該特殊コードでないと判別されると、該符号化データを所定の復号方式で復号する復号処理部とをそなえたことを特徴とする、タグ文書の復元装置。
【請求項１７】
該復号処理部が、
入力された符号化データを該タグ復号表に基づいて復号する第１復号部と、
入力された符号化データを所定の復号方式で復号する第２復号部と、
該特殊コード判別部において該符号化データが該特殊コードであると判別されると該特殊コードの後に入力される符号化データを該第１復号部へ出力する一方、該特殊コード判別部において該符号化データが該特殊コードでないと判別されると該符号化データを該第２復号部へ出力する切り替え制御部とをそなえていることを特徴とする、請求項１６記載のタグ文書の復元装置。
【請求項１８】
該タグ復号表作成部が、
該タグ抽出部により抽出された該タグを記憶するタグ記憶部を有し、該タグの該タグ記憶部における該記憶箇所についての情報を該タグの符号として割り当てることにより該タグ復号表を作成するように構成されていることを特徴とする、請求項１６記載のタグ文書の復元装置。
【請求項１９】
上記の記憶箇所についての情報が、該タグ記憶部のアドレス情報を含む情報であることを特徴とする、請求項１８記載のタグ文書の復元装置。
【請求項２０】
上記の記憶箇所についての情報が、該アドレス情報と該タグの長さ情報とであることを特徴とする、請求項１９記載のタグ文書の復元装置。
【請求項２１】
該タグ復号表作成部が、
該タグ抽出部により抽出された該タグに所定の初期符号を割り当てることにより該タグの第１復号用辞書を該タグ復号表として作成する第１復号用辞書作成部と、
該復号処理部により該タグが復号されると、該タグの出現頻度に応じて、該第１復号用辞書作成部により作成された該第１復号用辞書内の該符号の更新を行なう復号用辞書更新部とをそなえていることを特徴とする、請求項１６記載のタグ文書の復元装置。
【請求項２２】
該タグ復号表作成部が、
該タグ抽出部により抽出された該タグと該タグの出現頻度に関する情報とに基づいて、該タグの第２復号用辞書を作成する第２復号用辞書作成部をそなえていることを特徴とする、請求項１６記載のタグ文書の復元装置。
【請求項２３】
文書構造を示すタグを定義した文書型定義部と該文書型定義部に定義されている該タグを用いて記述された文書実現部とを有する符号化後のタグ文書を復号して復元するタグ文書の復元装置であって、
入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査して該タグを抽出するタグ抽出部と、
該タグ抽出部により該文書型定義部から抽出された該タグに基づいて、当該文書型定義部内の該タグに所定の符号を割り当ててタグ復号表を作成するタグ復号表作成部と、
入力された符号化データがタグの符号化データであるか否かを判別するタグ符号判別部と、
該タグ符号判別部において該符号化データがタグであると判別されると、該タグ復号表に基づいて該符号化データを復号する一方、該タグ符号判別部において該符号化データがタグでないと判別されると、該符号化データを所定の復号方式で復号する復号処理部とをそなえたことを特徴とする、タグ文書の復元装置。
【請求項２４】
該タグ符号判別部が、
該タグ抽出部で抽出された該タグに基づいてタグの始まりを示す開始タグを検出することにより該符号化データが該タグであると判別するように構成されていることを特徴とする、請求項２３記載のタグ文書の復元装置。
【請求項２５】
文書構造を示すタグを定義した文書型定義部と該文書型定義部に定義されている該タグを用いて記述された文書実現部とを有するタグ文書を符号化して圧縮する一方、符号化された該タグ文書を復号して復元するタグ文書の圧縮／復元装置であって、
入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査して該タグを抽出するタグ抽出部と、
該タグ抽出部により該文書型定義部から抽出された該タグに基づいて、当該文書型定義部内の該タグに所定の符号を割り当ててタグ符号／復号表を作成するタグ符号／復号表作成部と、
該タグ符号／復号表作成部により作成された該タグ符号／復号表に基づいて、前記文書型定義部及び前記文書実現部のうちの前記文書実現部内の該タグを符号化するタグ符号化部と、
該タグ符号／復号表作成部により作成された該タグ符号／復号表に基づいて、該タグ符号化部によって符号化された該文書実現部内の該タグを復号するタグ復号部とをそなえたことを特徴とする、タグ文書の圧縮／復元装置。
【請求項２６】
文書構造を示すタグを定義した文書型定義部と該文書型定義部に定義されている該タグを用いて記述された文書実現部とを有するタグ文書を符号化して圧縮する一方、符号化された該タグ文書を復号して復元するタグ文書の圧縮／復元装置であって、
入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査して該タグを抽出するタグ抽出部と、
該タグ抽出部により該文書型定義部から抽出された該タグに基づいて、当該文書型定義部内の該タグに所定の符号を割り当ててタグ符号／復号表を作成するタグ符号／復号表作成部と、
入力された前記文書型定義部及び前記文書実現部のうちの前記文書実現部のデータが該タグ抽出部により抽出された該タグであるか否かを判別するタグ判別部と、
該タグ判別部において上記の入力データが該タグであると判別されると、該タグ符号／復号表に基づいて該入力データを符号化する一方、該タグ判別部において該入力データが該タグでないと判別されると、該入力データを所定の符号化方式で符号化する符号化処理部と、
該タグ判別部において上記の入力データが該タグであると判別されると、該入力データの符号化前に、タグの符号化を示す特殊コードを出力する特殊コード出力部と、
該符号化処理部から出力される符号化データが該特殊コードであるか否かを判別する特殊コード判別部と、
該特殊コード判別部において該符号化データが該特殊コードであると判別されると、該特殊コードの後に該符号化処理部から出力される符号化データを該タグ符号／復号表に基づいて復号する一方、該特殊コード判別部において該符号化データが該特殊コードでないと判別されると、該符号化処理部から出力される符号化データを所定の復号方式で復号する復号処理部とをそなえたことを特徴とする、タグ文書の圧縮／復元装置。
【請求項２７】
文書構造を示すタグを定義した文書型定義部と該文書型定義部に定義されている該タグを用いて記述された文書実現部とを有するタグ文書についてのタグ符号表作成部と、タグ符号化部とをそなえ、該タグ文書を符号化して圧縮するタグ文書の圧縮装置における圧縮方法であって、
該タグ符号表作成部によって、前記文書型定義部及び前記文書実現部のうちの前記文書型定義部内の該タグに所定の符号を割り当ててタグ符号表を作成し、該タグ符号化部によって、該タグ符号表に基づいて、前記文書型定義部及び前記文書実現部のうちの前記文書実現部内の該タグを符号化することを特徴とする、タグ文書の圧縮方法。
【請求項２８】
該タグ符号化部によって、同一の文書型定義部を有する複数のタグ文書については、最初のタグ文書について作成されたタグ符号表に基づいて、全てのタグ文書の該文書実現部内のタグに対する符号化を行なうことを特徴とする、請求項２７記載のタグ文書の圧縮方法。
【請求項２９】
文書構造を示すタグを定義した文書型定義部と該文書型定義部に定義されている該タグを用いて記述された文書実現部とを有するタグ文書についてのタグ符号表作成部と、タグ判別部と、符号化処理部と、特殊コード出力部とをそなえ、該タグ文書を符号化して圧縮するタグ文書の圧縮装置における圧縮方法であって、
該タグ符号表作成部によって、前記文書型定義部及び前記文書実現部のうちの前記文書型定義部内の該タグに所定の符号を割り当ててタグ符号表を作成し、
該タグ判別部によって、入力された前記文書型定義部及び前記文書実現部のうちの前記文書実現部のデータがタグであると判定した場合は、該特殊コード出力部によって、タグの符号化を示す特殊コードを該タグの復号側へ出力した後、該符号化処理部によって、該タグ符号表に基づいて該入力データを符号化する一方、該タグ判別部によって、該入力データが該タグでないと判定した場合は、該符号化処理部によって、該入力データを所定の符号化方式で符号化することを特徴とする、タグ文書の圧縮方法。
【請求項３０】
文書構造を示すタグを定義した文書型定義部と該文書型定義部に定義されている該タグを用いて記述された文書実現部とを有するタグ文書についてのタグ符号表作成部と、タグ判別部と、符号化処理部とをそなえ、該タグ文書を符号化して圧縮するタグ文書の圧縮装置における圧縮方法であって、
該タグ符号表作成部によって、前記文書型定義部及び前記文書実現部のうちの前記文書型定義部内の該タグに所定の符号を割り当ててタグ符号表を作成し、
該タグ判別部によって、入力された該文書実現部のデータがタグであると判定した場合は、該符号化処理部によって、該タグ符号表に基づいて該入力データを符号化する一方、該タグ判別部によって、該入力データがタグでないと判定した場合は、該符号化処理部によって、該入力データを所定の符号化方式で符号化することを特徴とする、タグ文書の圧縮方法。
【請求項３１】
文書構造を示すタグを定義した文書型定義部と該文書型定義部に定義されている該タグを用いて記述された文書実現部とを有する符号化後のタグ文書についてのタグ復号表作成部と、タグ復号部とをそなえ、該タグ文書を復号して復元するタグ文書の復元装置における復元方法であって、
該タグ復号表作成部によって、前記文書型定義部及び前記文書実現部のうちの前記文書型定義部内の該タグに所定の符号を割り当ててタグ復号表を作成し、
該タグ復号部によって、該タグ復号表に基づいて、符号化された前記文書型定義部及び前記文書実現部のうちの前記文書実現部内の該タグを復号することを特徴とする、タグ文書の復元方法。
【請求項３２】
該タグ復号部によって、同一の文書型定義部を有する複数のタグ文書については、最初のタグ文書について作成されたタグ復号表に基づいて、全てのタグ文書の文書実現部に対するタグの復号を行なうことを特徴とする、請求項３１記載のタグ文書の復元方法。
【請求項３３】
文書構造を示すタグを定義した文書型定義部と該文書型定義部に定義されている該タグを用いて記述された文書実現部とを有する符号化後のタグ文書についてのタグ復号表作成部と、特殊コード判別部と、復号処理部とをそなえ、該タグ文書を復号して復元するタグ文書の復元装置における復元方法であって、
該タグ復号表作成部によって、前記文書型定義部及び前記文書実現部のうちの前記文書型定義部内の該タグに所定の符号を割り当ててタグ復号表を作成し、
該特殊コード判別部によって、入力された符号化データが、タグの符号化データが入力されることを示す特殊コードであると判定した場合は、該復号処理部によって、その特殊コードの後に入力される符号化データを該タグ復号表に基づいて復号する一方、該特殊コード判別部によって、入力された符号化データが該特殊コードでないと判定した場合は、該復号処理部によって、その符号化データを所定の復号方式で復号することを特徴とする、タグ文書の復元方法。
【請求項３４】
文書構造を示すタグを定義した文書型定義部と該文書型定義部に定義されている該タグを用いて記述された文書実現部とを有する符号化後のタグ文書についてのタグ復号表作成部と、タグ符号判別部と、復号処理部とをそなえ、該タグ文書を復号して復元するタグ文書の復元装置における復元方法であって、
該タグ復号表作成部によって、前記文書型定義部及び前記文書実現部のうちの前記文書型定義部内の該タグに所定の符号を割り当ててタグ復号表を作成し、
該タグ符号判別部によって、入力された符号化データがタグの符号化データであると判定した場合は、該復号処理部によって、該タグ復号表に基づいて該符号化データを復号する一方、該タグ符号判別部によって、入力された符号化データがタグの符号化データでないと判定した場合は、該復号処理部によって、該符号化データを所定の復号方式で復号することを特徴とする、タグ文書の復元方法。
【請求項３５】
文書構造を示すタグを定義した文書型定義部と該文書型定義部に定義されている該タグを用いて記述された文書実現部とを有するタグ文書についてのタグ符号／復号表作成部と、タグ符号化部と、タグ復号部とをそなえ、該タグ文書を符号化して圧縮する一方、符号化された該タグ文書を復号して復元するタグ文書の圧縮／復元装置における圧縮／復元方法であって、
該タグ符号／復号表作成部によって、前記文書型定義部及び前記文書実現部のうちの前記文書型定義部内の該タグに所定の符号を割り当ててタグ符号／復号表を作成し、
該タグ符号化部によって、該タグ符号／復号表に基づいて前記文書型定義部及び前記文書実現部のうちの前記文書実現部内の該タグを符号化する一方、該タグ復号部によって、符号化された該タグを該タグ符号／復号表に基づいて復号することを特徴とする、タグ文書の圧縮／復元方法。
【請求項３６】
文書構造を示すタグを定義した文書型定義部と該文書型定義部に定義されている該タグを用いて記述された文書実現部とを有するタグ文書についてのタグ符号／復号表作成部と、タグ判別部と、符号化処理部と、特殊コード出力部と、特殊コード判別部と、復号処理部とをそなえ、該タグ文書を符号化して圧縮する一方、符号化された該タグ文書を復号して復元するタグ文書の圧縮／復元装置における圧縮／復元方法であって、
該タグ符号／復号表作成部によって、前記文書型定義部及び前記文書実現部のうちの前記文書型定義部内の該タグに所定の符号を割り当ててタグ符号／復号表を作成し、
該タグ判別部によって、入力された前記文書型定義部及び前記文書実現部のうちの前記文書実現部のデータがタグであると判定した場合は、該特殊コード出力部によって、タグの符号化を示す特殊コードを出力した後、該符号化処理部によって、該タグ符号／復号表に基づいて該入力データを符号化する一方、該タグ判別部によって、該入力データがタグでないと判定した場合は、該符号化処理部によって、該入力データを所定の符号化方式で符号化するとともに、
符号化データの復号に際しては、該特殊コード判別部によって、該符号化データが該特殊コードであると判定すれば、該復号処理部によって、該特殊コードの後の符号化データを該タグ符号／復号表に基づいて復号する一方、該特殊コード判別部によって、該符号化データが特殊コードでないと判定すれば、該復号処理部によって、該符号化データを所定の復号方式で復号することを特徴とする、タグ文書の圧縮／復元方法。
【請求項３７】
文書構造を示すタグを定義した文書型定義部と該文書型定義部に定義されている該タグを用いて記述された文書実現部とを有するタグ文書を符号化して圧縮するタグ文書の圧縮プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
該コンピュータを、
入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査して該タグを抽出するタグ抽出部と、該タグ抽出部により該文書型定義部から抽出された該タグに基づいて、当該文書型定義部内の該タグに所定の符号を割り当ててタグ符号表を作成するタグ符号表作成部と、該タグ符号表作成部により作成された該タグ符号表に基づいて、前記文書型定義部及び前記文書実現部のうちの前記文書実現部内の該タグを符号化するタグ符号化部として機能させるためのタグ文書の圧縮プログラムが記録されていることを特徴とする、タグ文書の圧縮プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項３８】
文書構造を示すタグを定義した文書型定義部と該文書型定義部に定義されている該タグを用いて記述された文書実現部とを有するタグ文書を符号化して圧縮するタグ文書の圧縮プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
該コンピュータを、
入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査して該タグを抽出するタグ抽出部と、該タグ抽出部により該文書型定義部から抽出された該タグに基づいて、当該文書型定義部内の該タグに所定の符号を割り当ててタグ符号表を作成するタグ符号表作成部と、入力された前記文書型定義部及び前記文書実現部のうちの前記文書実現部のデータが該タグ抽出部により抽出された該タグであるか否かを判別するタグ判別部と、該タグ判別部において上記の入力データが該タグであると判別されると、該タグ符号表に基づいて該入力データを符号化する一方、該タグ判別部において該入力データが該タグでないと判別されると、該入力データを所定の符号化方式で符号化する符号化処理部と、該タグ判別部において上記の入力データが該タグであると判別されると、該入力データの符号化前に、タグの符号化を示す特殊コードを該タグの復号側へ出力する特殊コード出力部として機能させるためのタグ文書の圧縮プログラムが記録されていることを特徴とする、タグ文書の圧縮プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項３９】
文書構造を示すタグを定義した文書型定義部と該文書型定義部に定義されている該タグを用いて記述された文書実現部とを有する符号化後のタグ文書を復号して復元するタグ文書の復元プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
該コンピュータを、
入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査して該タグを抽出するタグ抽出部と、該タグ抽出部により該文書型定義部から抽出された該タグに基づいて、当該文書型定義部内の該タグに所定の符号を割り当ててタグ復号表を作成するタグ復号表作成部と、該タグ復号表作成部により作成された該タグ復号表に基づいて、符号化された前記文書型定義部及び前記文書実現部のうちの前記文書実現部内の該タグを復号するタグ復号部として機能させるためのタグ文書の復元プログラムが記録されていることを特徴とする、タグ文書の復元プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項４０】
文書構造を示すタグを定義した文書型定義部と該文書型定義部に定義されている該タグを用いて記述された文書実現部とを有する符号化後のタグ文書を復号して復元するタグ文書の復元プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
該コンピュータを、
入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査して該タグを抽出するタグ抽出部と、該タグ抽出部により該文書型定義部から抽出された該タグに基づいて、当該文書型定義部内の該タグに所定の符号を割り当ててタグ復号表を作成するタグ復号表作成部と、入力された符号化データが、タグの符号化データが入力されることを示す特殊コードであるか否かを判別する特殊コード判別部と、該特殊コード判別部において該符号化データが該特殊コードであると判別されると、該特殊コードの後に入力される符号化データを該タグ復号表に基づいて復号する一方、該特殊コード判別部において該符号化データが該特殊コードでないと判別されると、該符号化データを所定の復号方式で復号する復号処理部として機能させるためのタグ文書の復元プログラムが記録されていることを特徴とする、タグ文書の復元プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項４１】
文書構造を示すタグを定義した文書型定義部と該文書型定義部に定義されている該タグを用いて記述された文書実現部とを有するタグ文書を符号化して圧縮する一方、符号化された該タグ文書を復号して復元するタグ文書の圧縮／復元プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
該コンピュータを、
入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査して該タグを抽出するタグ抽出部と、該タグ抽出部により該文書型定義部から抽出された該タグに基づいて当該文書型定義部内の該タグに所定の符号を割り当ててタグ符号／復号表を作成するタグ符号／復号表作成部と、該タグ符号／復号表作成部により作成された該タグ符号／復号表に基づいて前記文書型定義部及び前記文書実現部のうちの前記文書実現部内の該タグを符号化するタグ符号化部と、該タグ符号／復号表作成部により作成された該タグ符号／復号表に基づいて該タグ符号化部によって符号化された該文書実現部内の該タグを復号するタグ復号部として機能させるためのタグ文書の圧縮／復元プログラムが記録されていることを特徴とする、タグ文書の圧縮／復元プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項４２】
文書構造を示すタグを定義した文書型定義部と該文書型定義部に定義されている該タグを用いて記述された文書実現部とを有するタグ文書を符号化して圧縮する一方、符号化された該タグ文書を復号して復元するタグ文書の圧縮／復元プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
該コンピュータを、
入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査して該タグを抽出するタグ抽出部と、該タグ抽出部により該文書型定義部から抽出された該タグに基づいて当該文書型定義部内の該タグに所定の符号を割り当ててタグ符号／復号表を作成するタグ符号／復号表作成部と、入力された前記文書型定義部及び前記文書実現部のうちの前記文書実現部のデータが該タグ抽出部により抽出された該タグであるか否かを判別するタグ判別部と、該タグ判別部において上記の入力データが該タグであると判別されると該タグ符号／復号表に基づいて該入力データを符号化する一方、該タグ判別部において該入力データが該タグでないと判別されると該入力データを所定の符号化方式で符号化する符号化処理部と、該タグ判別部において上記の入力データが該タグであると判別されると該入力データの符号化前にタグの符号化を示す特殊コードを出力する特殊コード出力部と、該符号化処理部から出力される符号化データが該特殊コードであるか否かを判別する特殊コード判別部と、該特殊コード判別部において該符号化データが該特殊コードであると判別されると該特殊コードの後に該符号化処理部から出力される符号化データを該タグ符号／復号表に基づいて復号する一方、該特殊コード判別部において該符号化データが該特殊コードでないと判別されると該符号化データを所定の復号方式で復号する復号処理部として機能させるためのタグ文書の圧縮／復元プログラムが記録されていることを特徴とする、タグ文書の圧縮／復元プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
（目次）
発明の属する技術分野
従来の技術（図３１〜図３３）
発明が解決しようとする課題
課題を解決するための手段
発明の実施の形態
（ａ）第１実施形態の説明（図１〜図５）
（ｂ）第２実施形態の説明（図６〜図９）
（ｃ）第３実施形態の説明（図１０〜図１６）
（ｄ）第４実施形態の説明（図１７〜図２０）
（ｅ）第５実施形態の説明（図２１〜図２５）
（ｆ）第６実施形態の説明（図２６〜図２９）
（ｇ）その他（図３０）
発明の効果
【０００２】
【発明の属する技術分野】
本発明は、データの圧縮および復元技術に関し、特に、タグと呼ばれる文書構造を定義した制御文字（列）に従い構造化されて記述された文書（タグ文書）の圧縮および復元に用いて好適な、装置，方法および記録媒体に関する。
【０００３】
【従来の技術】
近年、コンピュータ（計算機）で扱う文書の形式を統一する動きがある。これまで、計算機あるいはアプリケーションによってばらばらであった文書の形式を異なる計算機環境でも使用できるようにするものである。
この代表的なものに、ＳＧＭＬ（Standard Generalized Markup Language）と呼ばれる１９８６年にＩＳＯが制定した文書形式の国際規格（ＩＳＯ８８７９）がある。ＳＧＭＬ文書は図３１に模式的に示すように、ＳＧＭＬ宣言部３０１，文書型定義部（ＤＴＤ：Document Type Definision）３０２および文書実現値３０３の３つの部分からなっている。
【０００４】
ここで、ＳＧＭＬ宣言部３０１は、ＳＧＭＬ文書を他のシステムで処理するのに必要な文字体系などを宣言する部分であり、ＤＴＤ３０２は、文書の章や節，タイトルなどの文書中の構造を定義する部分で、例えば図３２に示すような形式で記述されている。なお、この図３２に示すＤＴＤ３０２は、インターネットのＷＷＷ（World Wide Web）の記述形式として普及しているＳＧＭＬの一種であるＨＴＭＬ（HyperText Markup Language)のＤＴＤの一部である。
【０００５】
また、文書実現値３０３は、ＳＧＭＬ文書の本文で、筆者（ユーザ）がＤＴＤ３０２を参考にしながらコンピュータのエディタなどを用いて作成する部分である。具体的に、この文書実現値３０３は、通常、タグと呼ばれる要素を示す制御用文字（列）を使用して記述される。このタグは上述のＤＴＤ３０２で定義されており、本文３０３中の各要素が何であるか（例えば、タイトルであるのか章であるのかなど）を表している。
【０００６】
図３３はこの文書実現値３０３の記述例を示す図であるが、この図３３では、“＜”と“＞”あるいは“＜／”と“＞”とによって囲まれた文字列（＜ＴＩＴＬＥ＞，＜／ＴＩＴＬＥ＞，＜ＳＥＣＴＩＯＮ＞，＜／ＳＥＣＩＯＮ＞など）がタグである。そして、例えば、この図３３に示すように、
＜ＴＩＴＬＥ＞発明（考案）明細書＜／ＴＩＴＬＥ＞
と記述された部分は、開始タグである＜ＴＩＴＬＥ＞と終了タグである＜／ＴＩＴＬＥ＞で囲まれた文字（列）が要素（タイトル名）であることを表している。
【０００７】
なお、現在、公的機関を中心にこのＳＧＭＬを採用する動きが活発化していきている。特に、アメリカ国防総省では文書をＳＧＭＬで記述して納入することを義務付けており、日本でも特許庁のＣＤ−ＲＯＭ公報としてＳＧＭＬを採用することを決めている。
ところで、近年、文字コードやベクトル情報，画像情報など様々な種類のデータが計算機で扱われるようになってきており、扱われるデータ量も急速に増加してきている。これに伴い、通常、計算機では、大量のデータを扱うときには、そのデータの中の冗長な部分を省いてデータ量を圧縮することで、データの記憶容量を削減したり、データの伝送を高速に行なえるようにしている。
【０００８】
ここで、データ圧縮技術にはいくつかの手法があるが、ここでは、計算機上で使われているデータ圧縮の適用例として、アーカイバと圧縮ドライブとについて説明する。
まず、アーカイバは、１つあるいは複数のデータファイルを圧縮すると同時に１つのファイルにまとめるという手法であり、使用頻度の低いファイルや、古いファイルなどに対してこのアーカイバを用いることでファイル容量を削減することができる。また、パソコン通信やインターネットなどでサーバがファイル（データやアプリケーション等）を供給するとき、このアーカイバを用いて全てのファイルを圧縮して１つにまとめることで、通信コストと転送の手間を削減することもできる。
【０００９】
一方、圧縮ドライブは、計算機のハードディスク（ＨＤ）やフロッピーディスク（ＦＤ）などディスクシステム単位にデータの圧縮を行なう手法で、任意のディスクドライブを指定することで、指定したドライブ内の全てのファイルが圧縮されて保持される。通常、この圧縮ドライブでは圧縮・復元処理は計算機のバックグラウンドで処理され、ユーザの通常のオペレーション（読み書き）で自動的に圧縮／復元（読み込みの時は復元、書き込みの時は圧縮）が行なわれる。従って、ユーザはデータの圧縮／復元を全く意識しないため、見かけ上指定したディスクシステムのサイズが増えたように見える。
【００１０】
そして、具体的に、これらの適用例で用いられる符号化方式としては、計算機上では文字や機械語，画像，音声など様々なデータが扱われることから、圧縮効率がデータの性質にあまり依存しないユニバーサル符号化方式がよく用いられている。
このユニバーサル符号化方式には、さらに、文字の再現性を利用した辞書型符号化方式と文字の出現確率を符号化する確率統計型符号化方式とがあり、辞書型符号化方式は、過去に出現した文字（列）をバッファ内に保存し、同じ文字（列）が出現したとき、バッファ内の開始位置と一致長を符号化データとして出力する。一方、確率統計型符号化方式は、過去に出現した文字の出現確率（頻度）を計算し、出現確率に応じた符号を出力する。辞書型符号化方式は高速処理、確率統計型方式は高圧縮率が期待できる。
【００１１】
このように、データ圧縮技術は、計算機上のデータ容量の削減や通信コストの削減などに日常的に使われており、文書ファイルにおいても、文書全体を圧縮して保持することで大量の文書を管理することができる。
【００１２】
【発明が解決しようとする課題】
ところで、ＳＧＭＬ文書の本文３０３では、文書に加えて文書内の各要素を定義するタグが加わるため、文書のデータ量は増加する。或るＳＧＭＬ文書について調査したところ、文書全体のタグが占める割合は４割を超えていた。官公庁への提出書類だけでなく、現在では製品に添付されるマニュアル類もＳＧＭＬ文書化されてきている。このようなマニュアルは数十からときには数百ページにもわたることがあり、また頻繁に改版されるため、改版履歴も含めると、そのデータ量は膨大なものとなる。
【００１３】
そこで、このようなＳＧＭＬ文書も通常の文書や他の形式の文書の圧縮と同様に上述のユニバーサル符号化方式や他の符号化方式を用いて圧縮すれば、ある程度、データ量を削減することができるが、いずれの場合も、従来から使われている符号化方式をＳＧＭＬ文書に適用しただけであり、文書全体の多くを占めているタグを考慮した圧縮は行なっていないので、非常に、非効率的である。
【００１４】
本発明は、このような課題に鑑み創案されたもので、タグ文書内のタグを考慮してその文書の圧縮および復元を行なうことにより、タグ文書の圧縮率を向上してそのデータ量を削減できるようにすることを目的とする。
【００１５】
【課題を解決するための手段】
このため、本発明のタグ文書の圧縮装置は、文書構造を示すタグを定義した文書型定義部と文書型定義部に定義されているタグを用いて記述された文書実現部とを有するタグ文書を符号化して圧縮するためのものであって、入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査してタグを抽出するタグ抽出部と、このタグ抽出部により該文書型定義部から抽出されたタグに基づいて、当該文書型定義部内のタグに所定の符号を割り当ててタグ符号表を作成するタグ符号表作成部と、このタグ符号表作成部により作成されたタグ符号表に基づいて、前記文書型定義部及び前記文書実現部のうちの前記文書実現部内のタグを符号化するタグ符号化部とをそなえたことを特徴としている。
【００１６】
なお、上記のタグ符号化部は、同一の文書型定義部を有する複数のタグ文書については、タグ抽出部およびタグ符号表作成部において最初のタグ文書について作成されたタグ符号表に基づいて、全てのタグ文書の文書実現部内のタグに対する符号化を行なうように構成してもよい。
また、本発明のタグ文書の圧縮装置は、文書構造を示すタグを定義した文書型定義部と文書型定義部に定義されているタグを用いて記述された文書実現部とを有するタグ文書を符号化して圧縮するためのものであって、入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査してタグを抽出するタグ抽出部と、このタグ抽出部により該文書型定義部から抽出されたタグに基づいて、当該文書型定義部内のタグに所定の符号を割り当ててタグ符号表を作成するタグ符号表作成部と、入力された前記文書型定義部及び前記文書実現部のうちの前記文書実現部のデータが上記のタグ抽出部により抽出されたタグであるか否かを判別するタグ判別部と、このタグ判別部において上記の入力データがタグであると判別されると、上記のタグ符号表に基づいて入力データを符号化する一方、上記のタグ判別部において入力データがタグでないと判別されると、入力データを所定の符号化方式で符号化する符号化処理部と、上記のタグ判別部において上記の入力データがタグであると判別されると、入力データの符号化前に、タグの符号化を示す特殊コードをタグの復号側へ出力する特殊コード出力部とをそなえたことを特徴としている。
【００１７】
ここで、上記の符号化処理部は、入力データを上記のタグ符号表に基づいて符号化する第１符号化部と、入力データを所定の符号化方式で符号化する第２符号化部と、上記のタグ判別部において入力データがタグであると判別されると入力データを第１符号化部へ出力する一方、上記のタグ判別部において入力データがタグでないと判別されると入力データを第２符号化部へ出力する切り替え制御部とをそなえてもよい。
【００１８】
また、上記のタグ符号表作成部は、上記のタグ抽出部により抽出されたタグを記憶するタグ記憶部を有し、上記タグのタグ記憶部における記憶箇所についての情報をタグの符号として割り当てることにより上記のタグ符号表を作成するように構成してもよい。
なお、上記の記憶箇所についての情報は、例えば、上記タグ記憶部のアドレス情報を含む情報で、具体的には、上記タグ記憶部のアドレス情報とタグの長さ情報とであってもよい。
【００１９】
さらに、上記のタグ符号表作成部は、上記のタグ抽出部により抽出されたタグに所定の初期符号を割り当てることによりタグの第１符号化用辞書をタグ符号表として作成する第１符号化用辞書作成部と、上記の符号化処理部によりタグが符号化されると、そのタグの出現頻度に応じて、第１符号化用辞書作成部により作成された第１符号化用辞書内の符号の更新を行なう符号化用辞書更新部とをそなえてもよい。
【００２０】
また、上記のタグ符号表作成部は、上記のタグ抽出部により抽出されたタグに基づいて文書実現部内のタグの出現頻度を計数し、その計数結果に応じた符号をタグに割り当てることによりタグの第２符号化用辞書をタグ符号表として作成する第２符号化用辞書作成部をそなえてもよい。なお、この場合、本圧縮装置は、上記のタグの出現頻度に関する情報をタグの復号側へ出力する出現頻度情報出力部をそなえてもよい。
【００２１】
さらに、上記の第２符号化用辞書作成部は、具体的に、上記のタグ抽出部により抽出されたタグと文書実現部内のタグとが一致するか否かを判定することにより文書実現部内のタグの出現頻度を計数するタグ計数部と、このタグ計数部での計数結果に応じた符号を生成する符号生成部と、この符号生成部により生成された符号を保持することにより第２符号化用辞書を作成する符号保持部とをそなえてもよい。
【００２２】
また、本発明のタグ文書の圧縮装置は、文書構造を示すタグを定義した文書型定義部と文書型定義部に定義されているタグを用いて記述された文書実現部とを有するタグ文書を符号化して圧縮するためのものであって、入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査してタグを抽出するタグ抽出部と、このタグ抽出部により該文書型定義部から抽出されたタグに基づいて、当該文書型定義部内のタグに所定の符号を割り当ててタグ符号表を作成するタグ符号表作成部と、入力された前記文書型定義部及び前記文書実現部のうちの前記文書実現部のデータがタグ抽出部により抽出されたタグであるか否かを判別するタグ判別部と、このタグ判別部において上記の入力データがタグであると判別されると、上記のタグ符号表に基づいて入力データを符号化する一方、上記のタグ判別部において入力データがタグでないと判別されると、入力データを所定の符号化方式で符号化する符号化処理部とをそなえたことを特徴としている。
【００２３】
なお、上記のタグ判別部は、タグ抽出部で抽出されたタグに基づいてタグの始まりを示す開始タグを検出することにより入力データがタグであると判別するように構成してもよい。
一方、本発明のタグ文書の復元装置は、文書構造を示すタグを定義した文書型定義部と文書型定義部に定義されているタグを用いて記述された文書実現部とを有する符号化後のタグ文書を復号して復元するためのものであって、入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査してタグを抽出するタグ抽出部と、このタグ抽出部により該文書型定義部から抽出されたタグに基づいて、当該文書型定義部内のタグに所定の符号を割り当ててタグ復号表を作成するタグ復号表作成部と、このタグ復号表作成部により作成されたタグ復号表に基づいて、符号化された前記文書型定義部及び前記文書実現部のうちの前記文書実現部内のタグを復号するタグ復号部とをそなえたことを特徴としている。
【００２４】
なお、上記のタグ復号部は、同一の文書型定義部を有する複数のタグ文書については、上記のタグ抽出部およびタグ復号表作成部を通じて最初のタグ文書について作成されたタグ復号表に基づいて、全てのタグ文書の文書実現部に対するタグの復号を行なうように構成してもよい。
また、本発明のタグ文書の復元装置は、文書構造を示すタグを定義した文書型定義部と文書型定義部に定義されているタグを用いて記述された文書実現部とを有する符号化後のタグ文書を復号して復元するためのものであって、入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査してタグを抽出するタグ抽出部と、このタグ抽出部により該文書型定義部から抽出されたタグに基づいて、当該文書型定義部内のタグに所定の符号を割り当ててタグ復号表を作成するタグ復号表作成部と、入力された符号化データが、タグの符号化データが入力されることを示す特殊コードであるか否かを判別する特殊コード判別部と、この特殊コード判別部において符号化データが特殊コードであると判別されると、その特殊コードの後に入力される符号化データをタグ復号表に基づいて復号する一方、上記の特殊コード判別部において符号化データが特殊コードでないと判別されると、その符号化データを所定の復号方式で復号する復号処理部とをそなえたことを特徴としている。
【００２５】
ここで、上記の復号処理部は、具体的に、入力された符号化データを上記のタグ復号表に基づいて復号する第１復号部と、入力された符号化データを所定の復号方式で復号する第２復号部と、上記の特殊コード判別部において符号化データが特殊コードであると判別されるとその特殊コードの後に入力される符号化データを第１復号部へ出力する一方、上記の特殊コード判別部において符号化データが特殊コードでないと判別されるとその符号化データを第２復号部へ出力する切り替え制御部とをそなえてもよい。
【００２６】
また、上記のタグ復号表作成部は、上記のタグ抽出部により抽出されたタグを記憶するタグ記憶部を有し、上記タグのタグ記憶部における記憶箇所についての情報をタグの符号として割り当てることによりタグ復号表を作成するように構成してもよい。
なお、上記の記憶箇所についての情報は、例えば、上記タグ記憶部のアドレス情報を含む情報で、具体的には、上記のアドレス情報とタグの長さ情報とであってもよい。
【００２７】
さらに、上記のタグ復号表作成部は、上記のタグ抽出部により抽出されたタグに所定の初期符号を割り当てることによりタグの第１復号用辞書をタグ復号表を作成する第１復号用辞書作成部と、上記の復号処理部によりタグが復号されると、そのタグの出現頻度に応じて、上記の第１復号用辞書作成部により作成された第１復号用辞書内の符号の更新を行なう復号用辞書更新部とをそなえてもよい。
【００２８】
また、上記のタグ復号表作成部は、上記のタグ抽出部により抽出されたタグとタグの出現頻度に関する情報とに基づいて、タグの第２復号用辞書を作成する第２復号用辞書作成部をそなえてもよい。
さらに、本発明のタグ文書の復元装置は、文書構造を示すタグを定義した文書型定義部と文書型定義部に定義されているタグを用いて記述された文書実現部とを有する符号化後のタグ文書を復号して復元するためのものであって、入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査してタグを抽出するタグ抽出部と、このタグ抽出部により該文書型定義部から抽出されたタグに基づいて、当該文書型定義部内のタグに所定の符号を割り当ててタグ復号表を作成するタグ復号表作成部と、入力された符号化データがタグの符号化データであるか否かを判別するタグ符号判別部と、このタグ符号判別部において符号化データがタグであると判別されると、上記のタグ復号表に基づいて符号化データを復号する一方、上記のタグ符号判別部において符号化データがタグでないと判別されると、その符号化データを所定の復号方式で復号する復号処理部とをそなえたことを特徴としている。
【００２９】
なお、上記のタグ符号判別部は、タグ抽出部で抽出されたタグに基づいてタグの始まりを示す開始タグを検出することにより符号化データがタグであると判別するように構成してもよい。
また、本発明のタグ文書の圧縮／復元装置は、文書構造を示すタグを定義した文書型定義部と文書型定義部に定義されているタグを用いて記述された文書実現部とを有するタグ文書を符号化して圧縮する一方、符号化されたタグ文書を復号して復元するためのものであって、入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査してタグを抽出するタグ抽出部と、このタグ抽出部により該文書型定義部から抽出されたタグに基づいて、当該文書型定義部内のタグに所定の符号を割り当ててタグ符号／復号表を作成するタグ符号／復号表作成部と、このタグ符号／復号表作成部により作成されたタグ符号／復号表に基づいて、前記文書型定義部及び前記文書実現部のうちの前記文書実現部内のタグを符号化するタグ符号化部と、上記のタグ符号／復号表作成部により作成されたタグ符号／復号表に基づいて、上記のタグ符号化部によって符号化された文書実現部内のタグを復号するタグ復号部とをそなえたことを特徴としている。
【００３０】
さらに、本発明のタグ文書の圧縮／復元装置は、文書構造を示すタグを定義した文書型定義部と文書型定義部に定義されているタグを用いて記述された文書実現部とを有するタグ文書を符号化して圧縮する一方、符号化されたタグ文書を復号して復元するためのものであって、入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査してタグを抽出するタグ抽出部と、このタグ抽出部により該文書型定義部から抽出されたタグに基づいて、当該文書型定義部内のタグに所定の符号を割り当ててタグ符号／復号表を作成するタグ符号／復号表作成部と、入力された前記文書型定義部及び前記文書実現部のうちの前記文書実現部のデータが上記のタグ抽出部により抽出されたタグであるか否かを判別するタグ判別部と、このタグ判別部において上記の入力データがタグであると判別されると、上記のタグ符号／復号表に基づいて入力データを符号化する一方、上記のタグ判別部において入力データがタグでないと判別されると、入力データを所定の符号化方式で符号化する符号化処理部と、上記のタグ判別部において上記の入力データがタグであると判別されると、入力データの符号化前に、タグの符号化を示す特殊コードを出力する特殊コード出力部と、上記の符号化処理部から出力される符号化データが特殊コードであるか否かを判別する特殊コード判別部と、この特殊コード判別部において符号化データが特殊コードであると判別されると、その特殊コードの後に符号化処理部から出力される符号化データをタグ符号／復号表に基づいて復号する一方、上記の特殊コード判別部において符号化データが特殊コードでないと判別されると、符号化処理部から出力される符号化データを所定の復号方式で復号する復号処理部とをそなえたことを特徴としている。
【００３１】
また、本発明のタグ文書の圧縮方法は、文書構造を示すタグを定義した文書型定義部と文書型定義部に定義されているタグを用いて記述された文書実現部とを有するタグ文書についてのタグ符号表作成部と、タグ符号化部とをそなえ、前記タグ文書を符号化して圧縮するタグ文書の圧縮装置における圧縮方法であって、タグ符号表作成部によって、前記文書型定義部及び前記文書実現部のうちの前記文書型定義部内のタグに所定の符号を割り当ててタグ符号表を作成し、タグ符号化部によって、そのタグ符号表に基づいて、前記文書型定義部及び前記文書実現部のうちの前記文書実現部内のタグを符号化することを特徴としている。
【００３２】
なお、このとき、前記タグ符号化部によって、同一の文書型定義部を有する複数のタグ文書については、最初のタグ文書について作成された上記のタグ符号表に基づいて、全てのタグ文書の文書実現部内のタグに対する符号化を行なってもよい。
また、本発明のタグ文書の圧縮方法は、文書構造を示すタグを定義した文書型定義部と文書型定義部に定義されているタグを用いて記述された文書実現部とを有するタグ文書についてのタグ符号表作成部と、タグ判別部と、符号化処理部と、特殊コード出力部とをそなえ、前記タグ文書を符号化して圧縮するタグ文書の圧縮装置における圧縮方法であって、タグ符号表作成部によって、前記文書型定義部及び前記文書実現部のうちの前記文書型定義部内のタグに所定の符号を割り当ててタグ符号表を作成し、タグ判別部によって、入力された前記文書型定義部及び前記文書実現部のうちの前記文書実現部のデータがタグであると判定した場合は、特殊コード出力部によって、タグの符号化を示す特殊コードをタグの復号側へ出力した後、符号化処理部によって、上記のタグ符号表に基づいて入力データを符号化する一方、タグ判別部によって、入力データがタグでないと判定した場合は、符号化処理部によって、入力データを所定の符号化方式で符号化することを特徴としている。
【００３３】
さらに、本発明のタグ文書の圧縮方法は、文書構造を示すタグを定義した文書型定義部と文書型定義部に定義されているタグを用いて記述された文書実現部とを有するタグ文書についてのタグ符号表作成部と、タグ判別部と、符号化処理部とをそなえ、前記タグ文書を符号化して圧縮するタグ文書の圧縮装置における圧縮方法であって、タグ符号表作成部によって、前記文書型定義部及び前記文書実現部のうちの前記文書型定義部内のタグに所定の符号を割り当ててタグ符号表を作成し、タグ判別部によって、入力された前記文書型定義部及び前記文書実現部のうちの前記文書実現部のデータがタグであると判定した場合は、符号化処理部によって、上記のタグ符号表に基づいて入力データを符号化する一方、タグ判別部によって、入力データがタグでないと判定した場合は、符号化処理部によって、入力データを所定の符号化方式で符号化することを特徴としている。
【００３４】
また、本発明のタグ文書の復元方法は、文書構造を示すタグを定義した文書型定義部と文書型定義部に定義されているタグを用いて記述された文書実現部とを有する符号化後のタグ文書についてのタグ復号表作成部と、タグ復号部とをそなえ、前記タグ文書を復号して復元するタグ文書の復元装置における復元方法であって、タグ復号表作成部によって、前記文書型定義部及び前記文書実現部のうちの前記文書型定義部内のタグに所定の符号を割り当ててタグ復号表を作成し、タグ復号部によって、そのタグ復号表に基づいて符号化された前記文書型定義部及び前記文書実現部のうちの前記文書実現部内のタグを復号することを特徴としている。
【００３５】
なお、このとき、前記タグ復号部によって、同一の文書型定義部を有する複数のタグ文書については、最初のタグ文書について作成されたタグ復号表に基づいて、全てのタグ文書の文書実現部に対するタグの復号を行なってもよい。
さらに、本発明のタグ文書の復元方法は、文書構造を示すタグを定義した文書型定義部と文書型定義部に定義されているタグを用いて記述された文書実現部とを有する符号化後のタグ文書についてのタグ復号表作成部と、特殊コード判別部と、復号処理部とをそなえ、前記タグ文書を復号して復元するタグ文書の復元装置における復元方法であって、タグ復号表作成部によって、前記文書型定義部及び前記文書実現部のうちの前記文書型定義部内のタグに所定の符号を割り当ててタグ復号表を作成し、特殊コード判別部によって、入力された符号化データが、タグの符号化データが入力されることを示す特殊コードであると判定した場合は、復号処理部によって、その特殊コードの後に入力される符号化データをタグ復号表に基づいて復号する一方、特殊コード判別部によって、入力された符号化データが特殊コードでないと判定した場合は、復号処理部によって、その符号化データを所定の復号方式で復号することを特徴としている。
【００３６】
また、本発明のタグ文書の復元方法は、文書構造を示すタグを定義した文書型定義部と文書型定義部に定義されているタグを用いて記述された文書実現部とを有する符号化後のタグ文書についてのタグ復号表作成部と、タグ符号判別部と、復号処理部とをそなえ、前記タグ文書を復号して復元するタグ文書の復元装置における復元方法であって、タグ復号表作成部によって、前記文書型定義部及び前記文書実現部のうちの前記文書型定義部内のタグに所定の符号を割り当ててタグ復号表を作成し、タグ符号判別部によって、入力された符号化データがタグの符号化データであると判定した場合は、復号処理部によって、上記のタグ復号表に基づいて符号化データを復号する一方、タグ符号判別部によって、入力された符号化データがタグの符号化データでないと判定した場合は、復号処理部によって、その符号化データを所定の復号方式で復号することを特徴としている。
【００３７】
さらに、本発明のタグ文書の圧縮／復元方法は、文書構造を示すタグを定義した文書型定義部と文書型定義部に定義されているタグを用いて記述された文書実現部とを有するタグ文書についてのタグ符号／復号表作成部と、タグ符号化部と、タグ復号部とをそなえ、前記タグ文書を符号化して圧縮する一方、符号化されたタグ文書を復号して復元するタグ文書の圧縮／復元装置における圧縮／復元方法であって、タグ符号／復号表作成部によって、前記文書型定義部及び前記文書実現部のうちの前記文書型定義部内のタグに所定の符号を割り当ててタグ符号／復号表を作成し、タグ符号化部によって、そのタグ符号／復号表に基づいて前記文書型定義部及び前記文書実現部のうちの前記文書実現部内のタグを符号化する一方、タグ復号部によって、符号化されたタグを上記のタグ符号／復号表に基づいて復号することを特徴としている。
【００３８】
また、本発明のタグ文書の圧縮／復元方法は、文書構造を示すタグを定義した文書型定義部と文書型定義部に定義されているタグを用いて記述された文書実現部とを有するタグ文書についてのタグ符号／復号表作成部と、タグ判別部と、符号化処理部と、特殊コード出力部と、特殊コード判別部と、復号処理部とをそなえ、前記タグ文書を符号化して圧縮する一方、符号化されたタグ文書を復号して復元するタグ文書の圧縮／復元装置における圧縮／復元方法であって、タグ符号／復号表作成部によって、前記文書型定義部及び前記文書実現部のうちの前記文書型定義部内のタグに所定の符号を割り当ててタグ符号／復号表を作成し、タグ判別部によって、入力された前記文書型定義部及び前記文書実現部のうちの前記文書実現部のデータがタグであると判定した場合は、特殊コード出力部によって、タグの符号化を示す特殊コードを出力した後、符号化処理部によって、上記のタグ符号／復号表に基づいて入力データを符号化する一方、タグ判別部によって、入力データがタグでないと判定した場合は、符号化処理部によって、その入力データを所定の符号化方式で符号化するとともに、符号化データの復号に際しては、特殊コード判別部によって、符号化データが特殊コードであると判定すれば、復号処理部によって、特殊コードの後の符号化データを上記のタグ符号／復号表に基づいて復号する一方、特殊コード判別部によって、符号化データが特殊コードでないと判定すれば、復号処理部によって、その符号化データを所定の復号方式で復号することを特徴としている。
【００３９】
さらに、本発明のタグ文書の圧縮プログラムを記録したコンピュータ読み取り可能な記録媒体は、文書構造を示すタグを定義した文書型定義部と文書型定義部に定義されているタグを用いて記述された文書実現部とを有するタグ文書を符号化して圧縮するためのものであって、上記のコンピュータを、入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査してタグを抽出するタグ抽出部と、このタグ抽出部により該文書型定義部から抽出されたタグに基づいて、当該文書型定義部内のタグに所定の符号を割り当ててタグ符号表を作成するタグ符号表作成部と、このタグ符号表作成部により作成されたタグ符号表に基づいて、前記文書型定義部及び前記文書実現部のうちの前記文書実現部内のタグを符号化するタグ符号化部として機能させるためのタグ文書の圧縮プログラムが記録されていることを特徴としている。
【００４０】
また、本発明のタグ文書の圧縮プログラムを記録したコンピュータ読み取り可能な記録媒体は、文書構造を示すタグを定義した文書型定義部と文書型定義部に定義されているタグを用いて記述された文書実現部とを有するタグ文書を符号化して圧縮するためのものであって、上記のコンピュータを、入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査してタグを抽出するタグ抽出部と、このタグ抽出部により該文書型定義部から抽出されたタグに基づいて、当該文書型定義部内のタグに所定の符号を割り当ててタグ符号表を作成するタグ符号表作成部と、入力された前記文書型定義部及び前記文書実現部のうちの前記文書実現部のデータがタグ抽出部により抽出されたタグであるか否かを判別するタグ判別部と、このタグ判別部において上記の入力データがタグであると判別されると、上記のタグ符号表に基づいて入力データを符号化する一方、上記のタグ判別部において入力データがタグでないと判別されると、その入力データを所定の符号化方式で符号化する符号化処理部と、上記のタグ判別部において上記の入力データがタグであると判別されると、入力データの符号化前に、タグの符号化を示す特殊コードをタグの復号側へ出力する特殊コード出力部として機能させるためのタグ文書の圧縮プログラムが記録されていることを特徴としている。
【００４１】
さらに、本発明のタグ文書の復元プログラムを記録したコンピュータ読み取り可能な記録媒体は、文書構造を示すタグを定義した文書型定義部と文書型定義部に定義されているタグを用いて記述された文書実現部とを有する符号化後のタグ文書を復号して復元するためのものであって、上記のコンピュータを、入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査してタグを抽出するタグ抽出部と、このタグ抽出部により該文書型定義部から抽出されたタグに基づいて、当該文書型定義部内のタグに所定の符号を割り当ててタグ復号表を作成するタグ復号表作成部と、このタグ復号表作成部により作成されたタグ復号表に基づいて、符号化された前記文書型定義部及び前記文書実現部のうちの前記文書実現部内のタグを復号するタグ復号部として機能させるためのタグ文書の復元プログラムが記録されていることを特徴としている。
【００４２】
また、本発明のタグ文書の復元プログラムを記録したコンピュータ読み取り可能な記録媒体は、文書構造を示すタグを定義した文書型定義部と文書型定義部に定義されているタグを用いて記述された文書実現部とを有する符号化後のタグ文書を復号して復元するためのものであって、上記のコンピュータを、入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査してタグを抽出するタグ抽出部と、このタグ抽出部により該文書型定義部から抽出されたタグに基づいて、当該文書型定義部内のタグに所定の符号を割り当ててタグ復号表を作成するタグ復号表作成部と、入力された符号化データが、タグの符号化データが入力されることを示す特殊コードであるか否かを判別する特殊コード判別部と、この特殊コード判別部において符号化データが特殊コードであると判別されると、その特殊コードの後に入力される符号化データをタグ復号表に基づいて復号する一方、上記の特殊コード判別部において符号化データが特殊コードでないと判別されると、その符号化データを所定の復号方式で復号する復号処理部として機能させるためのタグ文書の復元プログラムが記録されていることを特徴としている。
【００４３】
さらに、本発明のタグ文書の圧縮／復元プログラムを記録したコンピュータ読み取り可能な記録媒体は、文書構造を示すタグを定義した文書型定義部と文書型定義部に定義されているタグを用いて記述された文書実現部とを有するタグ文書を符号化して圧縮する一方、符号化されたタグ文書を復号して復元するためのものであって、上記のコンピュータを、入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査してタグを抽出するタグ抽出部と、このタグ抽出部により該文書型定義部から抽出されたタグに基づいて当該文書型定義部内のタグに所定の符号を割り当ててタグ符号／復号表を作成するタグ符号／復号表作成部と、このタグ符号／復号表作成部により作成されたタグ符号／復号表に基づいて前記文書型定義部及び前記文書実現部のうちの前記文書実現部内のタグを符号化するタグ符号化部と、上記のタグ符号／復号表作成部により作成されたタグ符号／復号表に基づいて上記のタグ符号化部によって符号化された文書実現部内のタグを復号するタグ復号部として機能させるためのタグ文書の圧縮／復元プログラムが記録されていることを特徴としている。
【００４４】
また、本発明のタグ文書の圧縮／復元プログラムを記録したコンピュータ読み取り可能な記録媒体は、文書構造を示すタグを定義した文書型定義部と文書型定義部に定義されているタグを用いて記述された文書実現部とを有するタグ文書を符号化して圧縮する一方、符号化されたタグ文書を復号して復元するためのものであって、上記のコンピュータを、入力されたタグ文書の前記文書型定義部及び前記文書実現部のうちの前記文書型定義部を走査してタグを抽出するタグ抽出部と、このタグ抽出部により該文書型定義部から抽出されたタグに基づいて当該文書型定義部内のタグに所定の符号を割り当ててタグ符号／復号表を作成するタグ符号／復号表作成部と、入力された前記文書型定義部及び前記文書実現部のうちの前記文書実現部のデータがタグ抽出部により抽出されたタグであるか否かを判別するタグ判別部と、このタグ判別部において上記の入力データがタグであると判別されると上記のタグ符号／復号表に基づいて入力データを符号化する一方、上記のタグ判別部において入力データがタグでないと判別されると入力データを所定の符号化方式で符号化する符号化処理部と、上記のタグ判別部において上記の入力データがタグであると判別されると入力データの符号化前にタグの符号化を示す特殊コードを出力する特殊コード出力部と、上記の符号化処理部から出力される符号化データが特殊コードであるか否かを判別する特殊コード判別部と、この特殊コード判別部において符号化データが特殊コードであると判別されるとその特殊コードの後に符号化処理部から出力される符号化データをタグ符号／復号表に基づいて復号する一方、上記の特殊コード判別部において上記符号化データが特殊コードでないと判別されるとその符号化データを所定の復号方式で復号する復号処理部として機能させるためのタグ文書の圧縮／復元プログラムが記録されていることを特徴としている。
【００４５】
【発明の実施の形態】
（ａ）本発明の第１実施形態の説明
図１は本発明の第１実施形態としてのＳＧＭＬ文書（タグ文書）の圧縮装置および復元装置が適用されるコンピュータシステムを示すブロック図であるが、この図１に示すように、本実施形態におけるシステムは、パーソナルコンピュータ（以下、単に「パソコン」という）２，３がモデムやＴＡ(Terminal Adapter)などのネットワーク接続装置４を介してインターネットなどの所要のネットワーク６に接続された構成となっている。
【００４６】
そして、パソコン２，３は、この図１に示すように、それぞれ、パソコン本体２１，ディスプレイ（表示画面）２２，キーボード２３およびマウス（ポインティングデバイス）２４などから構成されており、例えば、ユーザは、パソコン２，３のエディタ上でキーボード２３を通じて前述のＳＧＭＬ文書（タグ文書）を作成したり、作成した文書をＣＰＵ（Central Processing Unit)２６の処理によって本体２１内のハードディスク（記憶装置）２７に文書ファイルとして保存したりネットワーク６を介して他のパソコン３，２に提供（ファイル転送）したりすることができるようになっている。
【００４７】
ここで、上記のＳＧＭＬ文書を上述のごとくハードディスク２７に保存したりネットワーク６を介して転送する場合、前述したようにそのままでは非常にデータ量が多いので、メモリ容量の節約，データ伝送量，データ伝送時間の削減のためにも、符号化して圧縮してから保存／伝送を行ない、その文書をディスプレイ２２に表示したりプリントアウトしたりする場合に圧縮された文書を復元（復号）することが望ましい。
【００４８】
特に、複数種類のＳＧＭＬ文書が流通するようなシステム（例えば、ＣＡＬＳシステムなど）の場合、ＳＧＭＬ文書の本文３０３以外の部分も毎回送らなければならないので、そのまま文書を送るよりも、符号化して圧縮してから送ることで、伝送時間の削減、文書の送信側（サーバ側）／受信側（クライアント側）の記憶装置の容量の削減などが期待できる。
【００４９】
このため、本実施形態では、ＳＧＭＬ文書の圧縮プログラムや復元プログラムがハードディスク２７内に記憶されており、ＣＰＵ２６がこれらのプログラムに従って動作することにより、パソコン２，３（具体的にはＣＰＵ２６）がＳＧＭＬ文書を符号化して圧縮する圧縮装置あるいは符号化されて圧縮されたＳＧＭＬ文書を復号して復元する復元装置として使用されるようになっている。
【００５０】
ただし、以下では、便宜上、パソコン２がＳＧＭＬ文書の圧縮装置，パソコン３がＳＧＭＬ文書の復元装置として使用されるものとして説明を行なう。
また、上記の各プログラムは、ユーザがパソコン２，３を使って作成することによりハードディスク２７に予め保存しておくことも可能であるし、フロッピーディスク（ＦＤ）１１やＣＤ−ＲＯＭ１２，ＭＯ（光磁気ディスク）１３などの各種の記録媒体１５に予め記録されているものをディスクドライブ２５を通じて読み取ることによりハードディスク２７に保存することも可能である。
【００５１】
（ａ１）ＳＧＭＬ文書の圧縮装置（符号化側）の説明
図２は上述のＳＧＭＬ文書の圧縮装置としてのパソコン２の要部の構成を示すブロック図で、この図２に示すように、本実施形態のパソコン（以下、圧縮装置という）２は、ＳＧＭＬタグ抽出部３０，タグ符号表作成部４０，タグ判別部５０及びタグ符号化部６０を有して構成されている。
【００５２】
ここで、ＳＧＭＬタグ抽出部３０は、例えば、ＣＰＵ２６がハードディスク２７内に文書ファイルとして記憶されているＳＧＭＬ文書を読み出すことにより入力されたＳＧＭＬ文書のＤＴＤ（文書型定義部）３０２（図３１参照）を走査してＤＴＤ３０２内に定義されているタグを抽出するものであり、タグ符号表作成部４０は、このタグ抽出部により抽出されたタグに基づいて、ＤＴＤ３０２内のタグに所定の符号を割り当ててタグ符号表を作成するものである。
【００５３】
また、タグ判別部５０は、ＤＴＤ３０２とともに入力されたＳＧＭＬ文書の文書実現値（本文）３０３のデータ（文字もしくは文字列）がタグであるか否かを判別するもので、入力データがタグであればそのデータをタグ符号化部６０へ出力する一方、入力データがタグでなければそのデータをそのまま外部（例えば、ハードディスク２７やネットワーク６）へ出力するようになっている。
【００５４】
さらに、タグ符号化部６０は、タグ符号表作成部４０により作成されたタグ符号表に基づいて、ＳＧＭＬ文書の本文３０３内のタグを符号化するもので、ここでは、タグ判別部５０から入力されたデータ（タグ）に対応する上記符号表における符号をタグの符号として出力するようになっている。
上述のごとく構成された本第１実施形態の圧縮装置２では、図３に示すように、まず、ＳＧＭＬタグ抽出部３０がＳＧＭＬ文書のＤＴＤ３０２を走査してタグを抽出し（ステップＡ１）、タグ符号表作成部４０が抽出されたタグに所定の符号を割り当てることによりタグの符号表を作成する（ステップＡ２）。そして、入力されたＳＧＭＬ文書の本文３０３のデータがタグであるとタグ判別部５０において判別されると、そのデータは、タグ符号化部６０において上記タグ符号表に基づいて符号化されて出力される（ステップＡ３）。
【００５５】
例えば、ＳＧＭＬタグ抽出部３０が＜ＴＩＴＬＥ＞及び＜／ＴＩＴＬＥ＞というタグを抽出し、タグ符号表作成部４０において各タグにそれぞれ＜ＴＩＴＬＥ＞＝“００”，＜／ＴＩＴＬＥ＞＝“１０”という符号が割り当てられてタグ符号表が作成されたとする。このとき、例えば、本文３０３として、
＜ＴＩＴＬＥ＞発明（考案）明細書＜／ＴＩＴＬＥ＞
が入力されたとすると、タグ判別部５０では、まず、＜ＴＩＴＬＥ＞がタグであると判別するので、このタグはタグ符号化部６０へ出力される。タグ符号化部６０では、入力されたタグ（＜ＴＩＴＬＥ＞）を基に上記のタグ符号表を参照することにより＜ＴＩＴＬＥ＞に対応する符号“００”を得て、この“００”を＜ＴＩＴＬＥ＞の符号として出力する。
【００５６】
次に、タグ判別部５０では、上記のタグ（＜ＴＩＴＬＥ＞）に続いて入力されたデータがタグであるか否かを判別するが、今、上記の＜ＴＩＴＬＥ＞に続いて入力されるのは「発明（考案）明細書」であるので、タグ判別部５０は、入力データがタグ以外であると判別し、その入力データを符号化せずにそのまま外部へ出力する。
【００５７】
その後、タグ判別部５０では、さらに、入力されたデータがタグであるか否かを判別するが、今、上記の「発明（考案）明細書」の後に入力されるのは＜／ＴＩＴＬＥ＞（終了タグ）であるので、タグ判別部５０は、そのタグをタグ符号化部６０へ出力し、タグ符号化部６０では、入力されたタグ（＜／ＴＩＴＬＥ＞）を基に上記のタグ符号表を参照することにより＜／ＴＩＴＬＥ＞に対応する符号“１０”を得て、この“１０”を＜／ＴＩＴＬＥ＞の符号として出力する。
【００５８】
この結果、最終的に、上記の本文３０３は、“００発明（考案）明細書１０”というようにタグのみが符号化され圧縮されて出力される。ただし、本実施形態ではＤＴＤ３０２自体は符号化されずに出力される。
このように、本実施形態のＳＧＭＬ文書の圧縮装置２によれば、ＤＴＤ３０２内のタグに所定の符号を割り当ててタグ符号表を作成し、そのタグ符号表に基づいて、本文３０３内のタグを符号化するので、通常、ＳＧＭＬ文書内に多数使用されているタグを極めて効率良く圧縮することができ、ＳＧＭＬ文書のデータ量を大幅に削減することができる。
【００５９】
従って、ＳＧＭＬ文書を保存するためのメモリ容量が節約されるとともに、ＳＧＭＬ文書をネットワーク６を通じて伝送する際のデータ伝送量やデータ伝送時間も大幅に削減される。
（ａ２）ＳＧＭＬ文書の復元装置（復号側）の説明
次に、図４は上述のＳＧＭＬ文書の復元装置としてのパソコン３の要部の構成を示すブロック図であるが、この図４に示すパソコン（以下、復元装置という）３は、図２により上述した圧縮装置２で符号化（圧縮）されたＳＧＭＬ文書を復号（復元）するためのもので、本実施形態では、ＳＧＭＬタグ抽出部３０′，タグ復号表作成部４０′，タグ判別部５０′及びタグ復号部６０′を有して構成されている。
【００６０】
ここで、ＳＧＭＬタグ抽出部３０′は、例えば、ネットワーク６を介して圧縮装置２から入力されたＤＴＤ３０２（ただし、符号化されていないもの）を走査してそのＤＴＤ３０２内に定義されているタグを抽出するものであり、タグ復号表作成部４０′は、このタグ抽出部３０′により抽出されたタグに基づいて、ＤＴＤ３０２内のタグに所定の符号を割り当ててタグ復号表を作成するものである。
【００６１】
また、タグ判別部５０′は、ＤＴＤ３０２とともに入力された符号化側でタグのみ符号化されたＳＧＭＬ文書の本文３０３のデータがタグであるか否かを判別するもので、入力データがタグの符号であればその符号化データをタグ復号部６０′へ出力する一方、入力データがタグの符号以外であればその入力データをそのまま外部（例えば、ハードディスク２７）へ出力するようになっている。
【００６２】
さらに、タグ復号部６０′は、タグ復号表作成部４０′により作成されたタグ復号表に基づいて、符号化された本文３０３内のタグを復号するもので、ここでは、タグ判別部５０から入力されたデータ（タグの符号）に対応する上記復号表におけるタグを復号結果として出力するようになっている。
上述のごとく構成された本第１実施形態の復元装置３では、図５に示すように、まず、ＳＧＭＬタグ抽出部３０′がＳＧＭＬ文書のＤＴＤ３０２を走査してタグを抽出し（ステップＢ１）、タグ復号表作成部４０′が抽出されたタグに符号化側と同じ符号を割り当てることによりタグの復号表を作成する（ステップＢ２）。そして、入力されたＳＧＭＬ文書の本文３０３のデータがタグの符号であるとタグ判別部５０′において判別されると、そのデータは、タグ符号化部６０′において上記タグ復号表に基づいてタグが復号されて出力される（ステップＢ３）。
【００６３】
例えば、符号化側と同様に、タグ抽出部３０′及びタグ復号表作成部４０′によって、＜ＴＩＴＬＥ＞＝“００”，＜／ＴＩＴＬＥ＞＝“１０”というように各タグに符号が割り当てられたタグ復号表が作成されたとする。このとき、例えば、入力データとして、符号化側で符号化された“００発明（考案）明細書１０”が入力されたとすると、タグ判別部５０′では、まず、“００”がタグの符号であるであると判別するので、この符号化データはタグ符号化部６０′へ出力される。
【００６４】
タグ符号化部６０′では、入力されたタグの符号“００”を基に上記のタグ復号表を参照することにより“００”に対応するタグ＜ＴＩＴＬＥ＞を得て、この＜ＴＩＴＬＥ＞を符号“００”の復号結果として出力する。
次に、タグ判別部５０では、上記の“００”に続いて入力されたデータがタグの符号であるか否かを判別するが、今、上記の“００”に続いて入力されるのは「発明（考案）明細書」であるので、タグ判別部５０′は、入力データがタグの符号以外であると判別し、その符号化データは復号せずにそのまま外部へ出力する。
【００６５】
その後、タグ判別部５０′では、さらに、続いて入力されたデータがタグの符号であるか否かを判別するが、今、上記の「発明（考案）明細書」の後に入力されるのは“１０”というタグの符号であるので、タグ判別部５０′は、そのタグの符号をタグ復号部６０′へ出力し、タグ復号部６０′では、入力されたタグの符号“１０”を基に上記のタグ復号表を参照することにより符号“１０”に対応するタグ（＜／ＴＩＴＬＥ＞）を得て、この＜／ＴＩＴＬＥ＞を符号“１０”の復号結果として出力する。
【００６６】
この結果、最終的に、タグのみ符号化されて入力されたＳＧＭＬ文書の本文３０３は、“＜ＴＩＴＬＥ＞発明（考案）明細書＜／ＴＩＴＬＥ＞”というように元の状態に復元されて出力される。
このように、本実施形態のＳＧＭＬ文書の復元装置３によれば、ＤＴＤ３０２内のタグに符号化側と同じ符号を割り当ててタグ復号表を作成し、そのタグ復号表に基づいて符号化されたＳＧＭＬ文書の本文３０３内のタグを復号するので、ＳＧＭＬ文書内の符号化されたタグを極めて効率良く、且つ、正確に復号（復元）することができる。
【００６７】
（ｂ）第２実施形態の説明
（ｂ１）ＳＧＭＬ文書の圧縮装置（符号化側）の説明
図６は本発明の第２実施形態としてのタグ文書の圧縮装置の要部の構成を示すブロック図であるが、この図６に示す圧縮装置２は、図２に示すものに比して、ＤＴＤ比較部７０及びコントローラ８０を有して構成されている点が異なる。
【００６８】
ここで、上記のＤＴＤ比較部７０は、新規に入力されたＳＧＭＬ文書のＤＴＤ３０２とそのＤＴＤ３０２の直前に入力された過去のＳＧＭＬ文書のＤＴＤ３０２とを比較して、各ＤＴＤ３０２の一致／不一致信号をコントローラ８０へ出力するもので、本実施形態では、入力されたＤＴＤ３０２を順次保持しながら新規入力されたＤＴＤ３０２との比較を行なうようになっている。
【００６９】
また、コントローラ８０は、このＤＴＤ比較部７０からの一致／不一致信号に応じてタグ符号表作成部４０での符号表作成処理を制御するもので、ここでは、ＤＴＤ比較部７０から各ＤＴＤ３０２の一致信号を受けるとタグ符号表作成部４０に対し過去に作成したタグ符号表を維持するよう指示する一方、各ＤＴＤ３０２の不一致信号を受けるとタグ符号表作成部４０に対しタグ符号表の更新を指示するものである。
【００７０】
つまり、本実施形態のタグ符号表作成部４０は、同一のＤＴＤ３０２を有するＳＧＭＬ文書が入力される間はそれら複数の文書のうち最初の文書について作成したタグ符号表をそのまま維持し、異なるＤＴＤ３０２を有するＳＧＭＬ文書が入力された時点で、第１実施形態と同様に、ＳＧＭＬタグ抽出部３０によってそのＤＴＤ３０２から抽出されたタグに所定の符号を割り当てることにより、タグ符号表を再作成するようになっているのである。
【００７１】
上述のごとく構成された本実施形態における圧縮装置２の動作を図７に示すフローチャート（ステップＣ１〜Ｃ４）を参照しながら説明すると、まず、圧縮装置２は、ＤＴＤ３０２が新規に入力されると、そのＤＴＤ３０２と過去に入力されたＤＴＤ３０２とをＤＴＤ比較部７０にて比較する（ステップＣ１）。この比較の結果、各ＤＴＤ３０２が一致していなければ（ステップＣ１でＮＯと判定されれば）、ＤＴＤ比較部７０は、不一致信号をコントローラ８０に出力するとともに、新規に入力された上記のＤＴＤ３０２をＳＧＭＬタグ抽出部３０へ出力する。
【００７２】
ＳＧＭＬタグ抽出部３０は、受け取ったＤＴＤ３０２を走査してそのＤＴＤ３０２内に定義されているタグを抽出し（ステップＣ２）、タグ符号表作成部４０へ出力する。このとき、タグ符号表作成部４０は、上述のごとくＤＴＤ比較部７０からコントローラ８０へ不一致信号が出力されていることから、コントローラ８０からタグ符号表の更新指示を受けるので、ＳＧＭＬタグ抽出部３０で抽出されたタグに所定の符号を割り当てることにより、タグ符号表を再作成する（ステップＣ３）。
【００７３】
そして、このとき、ＤＴＤ３０２とともに入力されたＳＧＭＬ文書の文書実現値３０３は、タグ判別部５０へ入力され、タグ判別部５０は、入力された文書実現値３０３がタグであればそのタグをタグ符号化部６０へ出力する。タグ符号化部６０は、受け取ったタグに対応する符号をタグ符号表作成部４０で作成されたタグ符号表から取得し、その符号をタグの符号として出力する（ステップＣ４）。
【００７４】
一方、上記のＤＴＤ比較部７０での比較の結果、各ＤＴＤが一致していた場合（ステップＣ１でＹＥＳと判定された場合）、ＤＴＤ比較部７０は、コントローラ８０へ一致信号を出力し、コントローラ８０は、タグ符号表作成部４０にタグ符号表の維持（非更新）を指示する。これにより、タグ符号化部６０は、過去に作成されたタグ符号表に基づいて、上記と同様に文書実現値３０３内のタグの符号化を行なう（ステップＣ４）。
【００７５】
このように、本実施形態におけるＳＧＭＬ文書の圧縮装置２によれば、同一のＤＴＤ３０２を有する複数のＳＧＭＬ文書については、それらのうちの最初の文書について作成されたタグ符号表に基づいて、全てのＳＧＭＬ文書の本文３０３内のタグに対する符号化を行なうので、各ＳＧＭＬ文書毎にタグ符号表を作成する必要がなく、タグの符号化処理を極めて高速に行なうことができる。
【００７６】
なお、ＳＧＭＬを利用する環境によっては、文書の提供先（サーバ）と受け手（クライアント）との間で、どのようなＤＴＤ３０２に基づくＳＧＭＬ文書が送られてくるかが既に確立されている場合がある。このような場合は本文３０３以外を毎回相手に渡す必要はない。
例えば、インターネットのＷＷＷで使用されているＨＴＭＬ形式の文書のように予め使用するＤＴＤ３０２の形式が統一されており全ての文書のＤＴＤ３０２が同じであるような場合は、コントローラ８０の制御により、最初にタグ符号表作成部４０で作成されたタグ符号表を固定的に使用することで、さらに高速にタグの符号化処理を行なうことができる。
【００７７】
また、上述した実施形態では、タグ符号表の維持／更新をコントローラ８０がタグ符号表作成部４０でのタグ符号表の作成処理を直接的に制御することで行なっているが、ＳＧＭＬタグ抽出部３０でのタグの抽出処理を制御する（各ＤＴＤ３０２の比較結果に応じてタグの抽出を許可／禁止する）ことで行なってもよい。
【００７８】
（ｂ２）ＳＧＭＬ文書の復元装置（復号側）の説明
図８は本発明の第２実施形態としてのＳＧＭＬ文書の復元装置の要部の構成を示すブロック図であるが、この図８に示す復元装置３は、図６及び図７により上述した圧縮装置２の復号側に相当するもので、図４に示す構成に、図６により上述したものとそれぞれ同様のＤＴＤ比較部７０′及びコントローラ８０′が設けられた構成となっている。
【００７９】
これにより、本実施形態におけるＳＧＭＬ文書の復元装置３では、符号化されたタグの復号については符号化側と同様に、同一のＤＴＤ３０２を有するＳＧＭＬ文書が入力される間はそれら複数の文書のうち最初の文書についてタグ復号表作成部４０′にて作成されたタグ復号表に基づいてタグ復号部６０′がタグの復号を行ない、異なるＤＴＤ３０２を有するＳＧＭＬ文書が入力されると、タグ復号表作成部４０′によってタグ復号表を再作成し、そのタグ復号表に基づいてタグ復号部６０′がタグの復号を行なう。
【００８０】
以下、上述の動作を図９に示すフローチャート（ステップＤ１〜Ｄ４）参照しがら詳述すると、まず、復元装置３は、ＤＴＤ３０２が新規に入力されると、そのＤＴＤ３０２と過去に入力されたＤＴＤ３０２とをＤＴＤ比較部７０′にて比較する（ステップＤ１）。この比較の結果、各ＤＴＤ３０２が一致していなければ（ステップＤ１でＮＯと判定されれば）、ＤＴＤ比較部７０′は、不一致信号をコントローラ８０′に出力するとともに、新規に入力された上記のＤＴＤ３０２をＳＧＭＬタグ抽出部３０′へ出力する。
【００８１】
ＳＧＭＬタグ抽出部３０′は、受け取ったＤＴＤ３０２を走査してそのＤＴＤ３０２内に定義されているタグを抽出し（ステップＤ２）、タグ復号表作成部４０′へ出力する。このとき、タグ復号表作成部４０′は、上述のごとくＤＴＤ比較部７０′からコントローラ８０′へ不一致信号が出力されていることから、コントローラ８０′からタグ符号表の更新指示を受けるので、ＳＧＭＬタグ抽出部３０′で抽出されたタグに所定の符号を割り当てることにより、タグ復号表を再作成する（ステップＤ３）。
【００８２】
そして、このとき、ＤＴＤ３０２とともに入力された符号化後のＳＧＭＬ文書の文書実現値３０３は、タグ判別部５０′へ入力され、タグ判別部５０′は、入力された文書実現値３０３の符号がタグであればその符号をタグ復号部６０′へ出力する。タグ復号部６０′は、受け取った符号に対応するシンボル（タグ）をタグ復号表作成部４０′で作成されたタグ復号表から取得し、そのタグを復号結果として出力する（ステップＤ４）。
【００８３】
一方、上記のＤＴＤ比較部７０′での比較の結果、各ＤＴＤが一致していた場合（ステップＤ１でＹＥＳと判定された場合）、ＤＴＤ比較部７０′は、コントローラ８０′へ一致信号を出力し、コントローラ８０′は、タグ復号表作成部４０′にタグ復号表の維持（非更新）を指示する。これにより、タグ復号部６０′は、過去に作成されたタグ復号表に基づいて、上記と同様に文書実現値３０３内の符号化されたタグの復号を行なう（ステップＤ４）。
【００８４】
このように、本実施形態におけるＳＧＭＬ文書の復元装置３によれば、同一のＤＴＤ３０２を有する複数のＳＧＭＬ文書については、それらのうちの最初のＳＧＭＬ文書について作成されたタグ復号表に基づいて、全てのＳＧＭＬ文書の本文３０３に対するタグの復号を行なうので、各ＳＧＭＬ文書毎にタグ復号表を作成する必要がなく、タグの復号処理を極めて高速に行なうことができる。
【００８５】
なお、上記の復元装置３についても、ＨＴＭＬ形式の文書のように予め使用するＤＴＤ３０２の形式が統一されており全ての文書のＤＴＤ３０２が同じであるような場合は、コントローラ８０′の制御により、最初にタグ復号表作成部４０′で作成されたタグ復号表を固定的に使用することで、さらに高速にタグの復号処理を行なうことができる。
【００８６】
また、上述した実施形態では、タグ復号表の維持／更新をコントローラ８０′がタグ復号表作成部４０′でのタグ復号表の作成処理を直接的に制御することで行なっているが、ＳＧＭＬタグ抽出部３０′でのタグの抽出処理を制御する（各ＤＴＤ３０２の比較結果に応じてタグの抽出を許可／禁止する）ことで行なってもよい。
【００８７】
（ｃ）第３実施形態の説明
（ｃ１）ＳＧＭＬ文書の圧縮装置（符号化側）の説明
図１０は本発明の第３実施形態としてのＳＧＭＬ文書の圧縮装置の要部の構成を示すブロック図であるが、この図１０に示すように、本第３実施形態におけるＳＧＭＬ文書の圧縮装置２は、ＳＧＭＬタグ抽出部１００，メモリ１０１，ＳＧＭＬタグ検出部１０２，符号化処理部１０３ａ及びＣＯＣ出力部１０６を有して構成されている。
【００８８】
ここで、ＳＧＭＬタグ抽出部１００は、入力されたＳＧＭＬ文書のＤＴＤ３０２（図３１参照）を走査してそのＤＴＤ３０２内に定義されているタグを抽出するものであり、メモリ（タグ記憶部）１０１は、タグ符号表作成部としての機能を果たすもので、ＳＧＭＬタグ抽出部１００により抽出されたタグを順次記憶し、そのメモリ１０１におけるタグのアドレス情報と長さ情報とをタグの符号として割り当てることによりタグ符号表を作成するようになっている。
【００８９】
例えば、文書実現値（本文）３０３として、図１１に示すような文書が入力されたとする（ただし、文書中の１文字は１バイトとする）と、ＳＧＭＬタグ抽出部１００により抽出された“ＴＩＴＬＥ”，“／ＴＩＴＬＥ”，“ＳＥＣＴＩＯＮ”，“／ＳＥＣＴＩＯＮ”，“ＳＵＢＳＥＣＴＩＯＮ”，“／ＳＵＢＳＥＣＴＩＯＮ”などの各タグが、メモリ１０１のアドレス“００”番地から順次記憶され、＜ＴＩＴＬＥ＞には“００”番地とそのタグの長さ（５バイト）を示す“０５”とを組み合わせた“０００５”が符号として割り当てられ、＜ＳＥＣＴＩＯＮ＞には“０ｃ（ＨＥＸ）”番地とそのタグの長さ（７バイト）を示す“０７”とを組み合わせた“０ｃ０７”が符号として割り当てられることになる。
【００９０】
また、ＳＧＭＬタグ検出部（タグ判別部）１０２は、入力されたＳＧＭＬ文書の本文３０３のデータがＳＧＭＬタグ抽出部１００により抽出されたタグであるか否かを判別することにより本文３０３内で使用されているタグを検出するもので、本実施形態では、入力された本文３０３のデータ（以下、本文データということがある）がメモリ１０１に記憶されているタグと一致するか否かをみることでタグの検出を行なうようになっている。
【００９１】
さらに、符号化処理部１０３ａは、上記のＳＧＭＬタグ検出部１０２において上記の入力データがタグであると判別されると、タグ符号表として作成されたメモリ１０１の記憶内容に基づいてその入力データを符号化する一方、ＳＧＭＬタグ検出部１０２において入力データがタグでないと判別されると、その入力データを所定の符号化方式（ユニバーサル符号化方式など）で符号化するものである。
【００９２】
このため、上記の符号化処理部１０３ａは、この図１０に示すように、さらに、タグ符号化部１０３，第２符号化部１０４及び切り替え制御部１０５を有して構成されている。
ここで、タグ符号化部（第１符号化部）１０３は、入力データを上記のタグ符号表（メモリ１０１の記憶内容）に基づいて符号化するものであり、第２符号化部１０４は、入力データをユニバーサル符号化方式などの所定の符号化方式で符号化するものであり、切り替え制御部１０５は、ＳＧＭＬタグ検出部１０２において入力データがタグであると判別されるとその入力データをタグ符号化部１０３へ出力する一方、ＳＧＭＬタグ検出部１０２において入力データがタグでないと判別されるとその入力データを第２符号化部１０４へ出力するものである。
【００９３】
なお、上記のタグ符号化部１０３は、タグの符号化が終了すると、ＳＧＭＬタグ検出部１０２にその旨を通知するようになっており、ＳＧＭＬタグ検出部１０２はこの通知を受けると、再度、次の本文データに対するタグの検出処理を行なうようになっている。
また、ＣＯＣ出力部（特殊コード出力部）１０６は、ＳＧＭＬタグ検出部１０２において上記の入力データがタグであると判別されると、その入力データのタグ符号化部１０３での符号化前に、タグの符号化（符号化方式の切り替え）を示す特殊コード（ＣＯＣ：Change Of Coding) を後述するタグの復号側へ出力するものである。
【００９４】
以下、上述のごとく構成された本第３実施形態におけるＳＧＭＬ文書の圧縮装置２の動作について、図１２に示すフローチャート（ステップＥ１〜Ｅ６）を参照しながら詳述する。
まず、圧縮装置２は、ＳＧＭＬタグ抽出部１００により、入力されたＤＴＤ３０２を走査してそのＤＴＤ３０２内に定義されているタグを抽出し、抽出したタグを、順次、メモリ１０１に記憶することにより、そのタグにメモリ１０１のアドレス情報とタグの長さ情報とをタグの符号として割り当ててタグ符号表を作成する（ステップＥ１）。
【００９５】
そして、圧縮装置２は、ＳＧＭＬタグ検出部１０２により、入力された本文データがタグであるか否かを判別し（ステップＥ２）、タグであれば、ＣＯＣ出力部１０６にＣＯＣの出力を指示するとともに、符号化処理部１０３ａの切り替え制御部１０５に本文データのタグ符号化部１０３側への出力切り替えを指示する。これにより、ＣＯＣ出力部１０６は後述する復号側へＣＯＣを出力し（ステップＥ２のＹＥＳルートからステップＥ３）、タグ符号化部１０３は、入力データ（タグ）を基にメモリ１０１を参照し、そのタグに対応する符号（アドレスと長さ）をタグの符号として出力する（ステップＥ４）。
【００９６】
一方、上記のステップＥ２において、符号化対象の本文データがタグでなければ、圧縮装置２は、切り替え制御部１０５に本文データの第２符号化部１０３側への出力切り替えを指示し、第２符号化部１０４によって、その本文データ（文字または文字列）を所定の符号化方式で符号化する（ステップＥ２のＮＯルートからステップＥ５）。
【００９７】
そして、圧縮装置２は、符号化が終了したか否かを判定し（ステップＥ５）、終了していなければ（本文データが未だ残っていれば）、符号化が終了するまで上記ステップＥ２からの処理を繰り返す（ステップＥ６のＮＯルート）一方、符号化が終了していれば圧縮処理を終える（ステップＥ６のＹＥＳルート）。
ここで、例えば図１３に示すように、本文データとして“今日は＜Ｂ＞晴れ＜／Ｂ＞です。”が入力されたと仮定し（ステップＦ１）、タグ＜Ｂ＞，＜／Ｂ＞にそれぞれ符号“０”，“１”が割り当てられてタグ符号表１０１ａが作成され、これらのタグ以外の各文字にそれぞれ図１３中に示すような符号が割り当てられている（第２符号化部１０４用の符号表１０４ａが作成されている）ものとする。
【００９８】
すると、上記の本文データは、各タグ＜Ｂ＞，＜／Ｂ＞の前にＣＯＣ（“１０”）が挿入されたのち、これらの各タグがタグ符号化部１０３によってタグ符号表１０１ａに基づいて符号化されるとともに（ステップＦ２）、タグ以外の文字がそれぞれ第２符号化部１０４によって符号表１０４ａに基づいて符号化される。
【００９９】
この結果、上記の本文データは、最終的に、この図１３中に示すように、１６進（ＨＥＸ）表示で“ｆｆ９ｅ７ｂ２ｅ２ｂ”、２進表示で“11111/11110/0111/10/0/11110/1100/10/1/1101/0110/010 ”という符号に符号化される（ステップＦ３）。
以上のように、本第３実施形態におけるＳＧＭＬ文書の圧縮装置２によれば、入力された本文データがタグである場合は、ＣＯＣをタグの復号側へ出力した後、タグ符号化部１０３がタグ符号表に基づいて入力データを符号化する一方、本文データがタグでない場合はその本文データを第２符号化部１０４が所定の符号化方式で符号化するので、ＳＧＭＬ文書内のタグのみならずタグ以外の文書さえも極めて効率良く圧縮することができ、より大幅にＳＧＭＬ文書のデータ量を削減することができる。
【０１００】
また、ＣＯＣ出力部１０６がＣＯＣを復号側へ出力することにより、後述するように、タグの復号側ではタグの判別を容易に行なうことができるので、タグの復号処理の高速化にも大いに寄与している。なお、このＣＯＣ出力部１０６は、復号側での処理を考慮しなければ省略することも可能である。
また、本実施形態の符号化処理部１０３ａは、タグ符号化部１０３，第２符号化部１０４及び切り替え制御部１０５をそなえることにより、その機能が簡素な構成で容易に実現されている。
【０１０１】
さらに、本実施形態のタグ符号表作成部としてのメモリ１０１は、タグのメモリ１０１内でのアドレスと長さについての情報タグの符号として割り当てることによりタグ符号表を作成するので、タグをメモリ１０１に順次記憶してゆくだけで各タグに符号が割り当てられることになり、メモリ１０１を１つ設けるという極めて簡素な構成で、且つ、高速に、タグ符号表を作成することができる。
【０１０２】
また、後述するように、タグの復号側では、これらのアドレスと長さとを基に、容易に、復号すべきタグを特定することができ、タグの復号処理の高速化にも大いに寄与している。
ただし、タグに割り当てる符号は、必ずしも、上記のアドレスと長さについての情報でなくてもよく、少なくともアドレス情報を含む情報であればよい。
【０１０３】
（ｃ２）ＳＧＭＬ文書の復元装置（復号側）の説明
図１４は本発明の第３実施形態としてのＳＧＭＬ文書の復元装置の要部の構成を示すブロック図であるが、この図１４に示す復元装置２は、図１０〜図１３により上述した圧縮装置２の復号側に相当するもので、ＳＧＭＬタグ抽出部２００，メモリ２０１，ＣＯＣ判別部２０２及び復号処理部２０３ａを有して構成されている。
【０１０４】
ここで、ＳＧＭＬタグ抽出部２００は、入力されたＳＧＭＬ文書のＤＴＤ３０２（図３１参照）を走査してそのＤＴＤ３０２内に定義されているタグを抽出するものであり、メモリ２０１は、タグ復号表作成部としての機能を果たすもので、符号化側と同様に、ＳＧＭＬタグ抽出部２００により抽出されたタグを順次記憶し、そのメモリ２０１におけるタグのアドレス情報と長さ情報とをタグの符号として割り当てることによりタグ復号表を作成するようになっている。
【０１０５】
また、ＣＯＣ判別部（特殊コード判別部）２０２は、入力された符号化データが、タグの符号化データが入力されることを示すＣＯＣであるか否かを判別するものであり、復号処理部２０３ａは、このＣＯＣ判別部２０２において入力された符号化データがＣＯＣであると判別されると、そのＣＯＣの後に入力される符号化データ（つまり、タグの符号）をタグ復号表に基づいて復号する一方、ＣＯＣ判別部２０２において入力された符号化データがＣＯＣでないと判別されると、その符号化データを所定の復号方式で復号するものである。
【０１０６】
このため、上記の復号処理部２０３ａは、この図１４に示すように、タグ復号部２０３，第２復号部２０４及び切り替え制御部２０５を有して構成されている。
ここで、タグ復号部（第１復号部）２０３は、入力された符号化データを上記のタグ復号表として作成されたメモリ２０１の記憶内容に基づいて復号するものであり、第２復号部２０４は、入力された符号化データを所定の復号方式で復号するものであるが、この場合は、符号化側に対応する復号方式で復号処理を行なうようになっている。
【０１０７】
また、切り替え制御部２０５は、ＣＯＣ判別部２０２において入力された符号化データがＣＯＣであると判別されるとそのＣＯＣの後に入力される符号化データをタグ復号部２０３へ出力する一方、ＣＯＣ判別部２０２において入力された符号化データがＣＯＣでないと判別されるとその符号化データを第２復号部２０４へ出力するものである。
【０１０８】
以下、上述のごとく構成された本第３実施形態におけるＳＧＭＬ文書の復元装置３の動作について、図１５に示すフローチャート（ステップＧ１〜Ｇ５）を参照しながら詳述する。
まず、復元装置３は、ＳＧＭＬタグ抽出部２００により、入力されたＤＴＤ３０２を走査してそのＤＴＤ３０２内に定義されているタグを抽出し、抽出したタグを、順次、メモリ２０１に記憶することにより、そのタグにメモリ１０１のアドレス情報とタグの長さ情報とをタグの符号として割り当てることにより符号化側と同じ記憶内容のタグ復号表を作成する（ステップＧ１）。
【０１０９】
そして、復元装置３は、ＣＯＣ判別部２０２により、入力された符号化データがＣＯＣであるか否かを判別し（ステップＧ２）、ＣＯＣであれば、復号処理部２０３ａの切り替え制御部２０５に符号化データのタグ復号部２０３側への出力切り替えを指示する。これにより、タグ復号部２０３は、ＣＯＣの後に続く符号化データ（タグの符号：アドレスと長さ）を基にメモリ２０１を参照し、その符号化データに対応するシンボル（タグ）を復号結果として出力する（ステップＧ３）。
【０１１０】
一方、上記のステップＧ２において、復号対象の符号化データがＣＯＣでなければ、復元装置３は、切り替え制御部２０５に符号化データの第２復号部２０３側への出力切り替えを指示し、第２復号部２０４によって、その符号化データ（文字または文字列）を符号化側に対応する復号方式で復号する（ステップＧ２のＮＯルートからステップＧ４）。
【０１１１】
そして、復元装置３は、復号が終了したか否かを判定し（ステップＧ５）、終了していなければ（符号化データが未だ残っていれば）、復号が終了するまで上記ステップＧ２からの処理を繰り返す（ステップＧ５のＮＯルート）一方、復号化が終了していれば復元処理を終える（ステップＧ５のＹＥＳルート）。
以上のように、本第３実施形態におけるＳＧＭＬ文書の復元装置３によれば、入力された符号化データがＣＯＣである場合は、そのＣＯＣの後に入力される符号化データをタグ復号部２０３がタグ復号表に基づいて復号する一方、入力された符号化データがＣＯＣでない場合は、その符号化データを第２復号部２０４が符号化側に対応する復号方式で復号するので、タグだけでなく符号化されたタグ以外の文書をも極めて効率良く、且つ、正確に復元することができる。
【０１１２】
また、ＣＯＣを検出するだけで、復号対象の符号化データがタグであるか否かを判別することができるので、タグの復号処理を大幅に高速化することが可能になっている。
さらに、本実施形態の復号処理部２０３ａは、タグ復号部２０３，第２復号部２０４及び切り替え制御部２０５をそなえることにより、その機能が簡素な構成で容易に実現されている。
【０１１３】
また、上記のタグ復号表作成部としてのメモリ２０１は、タグのメモリ２０１におけるアドレス情報とそのタグの長さ情報とをタグの符号として割り当てることによりタグ復号表を作成するので、タグをメモリ２０１に順次記憶してゆくだけで自動的に各タグに符号が割り当てられて符号化側と同一の記憶内容を有するタグ復号表を作成することができ、極めて簡素な構成で、高速且つ正確にタグの復号処理を行なうことができる。
【０１１４】
そして、本実施形態では、上述のように、メモリ２０１のアドレス情報とタグの長さ情報とがそのままタグの符号として使用されているので、符号化側においてタグがアドレス情報とタグの長さ情報からなる符号として符号化されていればその符号化データに対応するタグをメモリ２０１から容易に取り出すことができ、タグの復号処理の大幅高速化に大いに寄与している。
【０１１５】
なお、タグに割り当てる符号は、必ずしも、上記のアドレスと長さについての情報でなくてもよく、符号化側と対応していれば、少なくともアドレス情報を含む情報であればよい。
ところで、上述の復元装置３は、ＣＯＣ検出タイミングでタグの復号とタグ以外の文字（列）の復号とを切り替えるようにしているが、タグ以外の文字（列）群の符号とタグの符号とが一致しないように符号の割り当てを行なえば、例えば図１６に示すように、上記のＣＯＣ判別部２０２の代わりに、入力された符号化データがタグであるか否かを判別するＳＧＭＬタグ判別部２０２′をそなえることにより、タグ自体の検出タイミングでタグの復号とタグ以外の文字（列）の復号とを切り替えることができる。
【０１１６】
（ｄ）第４実施形態の説明
（ｄ１）ＳＧＭＬ文書の圧縮装置（符号化側）の説明
図１７は本発明の第４実施形態としてのＳＧＭＬ文書の圧縮装置の要部の構成を示すブロック図であるが、この図１７に示すように、本第４実施形態におけるＳＧＭＬ文書の圧縮装置２は、図１０に示すメモリ１０１に代えて、タグ符号表作成部１０１′として、辞書作成部１０７及び辞書更新部１０８をそなえた構成となっている。
【０１１７】
ここで、辞書作成部（第１符号化用辞書作成部）１０７は、ＳＧＭＬタグ抽出部１００により抽出されたタグに所定の初期符号を割り当てることによりタグの辞書（統計型動的辞書：第１符号化用辞書）をタグ符号表として作成するものであり、辞書更新部（符号化用辞書更新部）１０８は、符号化処理部１０３ａ（タグ符号化部１０３）によりタグが符号化されると、そのタグの出現頻度に応じて、辞書作成部１０７により作成された辞書内の符号の更新を行なうもので、本実施形態では、出現頻度の高いタグほど短いそのタグには短い符号（出現頻度に反比例した長さの符号）が割り当てられるようになっている。
【０１１８】
つまり、本第４実施形態のＳＧＭＬ文書の圧縮装置２は、タグの符号化の際に使用する辞書（符号表）をタグの符号化毎にそのタグの出現頻度を考慮しながら更新して、タグの符号化を行なうようになっているのである。
以下、上述のごとく構成された本第４実施形態におけるＳＧＭＬ文書の圧縮装置２の動作について、図１８に示すフローチャート（ステップＨ１〜Ｈ８）を参照しながら詳述する。
【０１１９】
まず、圧縮装置２は、ＳＧＭＬタグ抽出部１００によって、入力されたＤＴＤ３０２を走査してそのＤＴＤ３０２内に定義されているタグを抽出し（ステップＨ１）、タグ符号表作成部１０１′の辞書作成部１０７へ出力する。辞書作成部１０７は、入力されたタグに、順次、所定の初期符号を割り当てることにより、タグ符号表を作成する（ステップＨ２）。
【０１２０】
そして、圧縮装置２は、ＳＧＭＬタグ検出部１０２により、上記のＤＴＤ３０２とともに入力された本文３０３のデータがタグであるか否かを判別し（ステップＨ３）、タグであれば、ＣＯＣ出力部１０６にＣＯＣの出力を指示するとともに、符号化処理部１０３ａの切り替え制御部１０５に本文データのタグ符号化部１０３側への出力切り替えを指示する。
【０１２１】
これにより、ＣＯＣ出力部１０６は後述する復号側へＣＯＣを出力し（ステップＨ３のＹＥＳルートからステップＨ４）、タグ符号化部１０３は、入力データ（タグ）を基に辞書作成部１０７により作成された辞書（タグ符号表）を参照し、そのタグに対応する符号をタグの符号として出力する（ステップＨ５）。
すると、圧縮装置２は、辞書更新部１０８により、タグ符号化部１０３で符号化されたタグの出現頻度を計算し、その計算結果に応じた符号（初期符号よりも短い符号）を符号化したタグに再割り当てして辞書の更新を行なう（ステップＨ６）。
【０１２２】
一方、上記のステップＨ３において、符号化対象の本文データがタグでなければ、圧縮装置２は、切り替え制御部１０５に本文データの第２符号化部１０３側への出力切り替えを指示し、第２符号化部１０４によって、その本文データ（文字または文字列）を所定の符号化方式で符号化する（ステップＨ３のＮＯルートからステップＨ７）。
【０１２３】
そして、圧縮装置２は、符号化が終了したか否かを判定し（ステップＨ８）、終了していなければ（本文データが未だ残っていれば）、符号化が終了するまで上記ステップＨ３からの処理を繰り返す（ステップＨ８のＮＯルート）一方、符号化が終了していれば圧縮処理を終える（ステップＨ８のＹＥＳルート）。
このように、本第４実施形態におけるＳＧＭＬ文書の圧縮装置２は、ＳＧＭＬタグ抽出部１００により抽出されたタグに所定の初期符号を割り当てることによりタグの辞書を作成し、出現頻度の高いタグの符号が短くなくなるよう、タグが符号化されると、そのタグの出現頻度に応じて、辞書内の符号の更新を行なうこので、タグの符号化が進むにつれて、出現頻度の高いタグほど短い符号が再割り当てされることになり、タグの圧縮率を大幅に向上することができる。
【０１２４】
（ｄ２）ＳＧＭＬ文書の復元装置（復号側）の説明
図１９は本発明の第４実施形態としてのＳＧＭＬ文書の復元装置の要部の構成を示すブロック図であるが、この図１９に示す復元装置３は、図１７及び図１８により上述した圧縮装置２の復号側に相当するもので、本実施形態では、図１４に示す構成に、辞書作成部２０７及び辞書更新部２０８をタグ復号表作成部２０１′としてそなえた構成となっている。
【０１２５】
ここで、辞書作成部（第１復号用辞書作成部）２０８は、ＳＧＭＬタグ抽出部２００により抽出されたタグに所定の初期符号を割り当てることによりタグの辞書（第１復号用辞書）をタグ復号表として作成するものであるが、ここでは、上述の符号化側と同じルールに従って初期符号を各タグに割り当てるようになっている。
【０１２６】
また、辞書更新部（復号用辞書更新部）２０７は、復号処理部２０３ａ（タグ復号部２０３）によりタグが復号されると、出現頻度の高いタグの符号ほどその符号が短くなるように、タグの出現頻度に応じて、辞書作成部２０７により作成された辞書内の符号の更新（再割り当て）を行なうものである。
以下、上述のごとく構成された本第４実施形態におけるＳＧＭＬ文書の復元装置３の動作について、図２０に示すフローチャート（ステップＪ１〜Ｊ７）を参照しながら詳述する。
【０１２７】
まず、復元装置３は、ＳＧＭＬタグ抽出部２００によって、入力されたＤＴＤ３０２を走査してそのＤＴＤ３０２内に定義されているタグを抽出し（ステップＪ１）、タグ復号表作成部２０１′の辞書作成部２０７へ出力する。辞書作成部２０７は、受け取ったタグに、符号化側での初期符号の割り当てと同じルールに従って、順次、初期符号を割り当てることにより辞書（タグ復号表）を作成する（ステップＪ２）。
【０１２８】
そして、復元装置３は、ＣＯＣ判別部２０２により、入力された符号化データがＣＯＣであるか否かを判別し（ステップＪ３）、ＣＯＣであれば、復号処理部２０３ａの切り替え制御部２０５に符号化データのタグ復号部２０３側への出力切り替えを指示する。これにより、タグ復号部２０３は、ＣＯＣの後に続く符号化データを基に辞書作成部２０７により作成された辞書を参照し、その符号化データに対応するシンボル（タグ）を復号結果として出力する（ステップＪ４）。
【０１２９】
すると、復元装置３は、辞書更新部２０８により、タグ復号部２０３で復号されたタグの出現頻度を計算し、その計算結果に応じた符号（初期符号よりも短い符号）を復号したタグに再割り当てして辞書の更新を行なう（ステップＪ５）。一方、上記のステップＪ３において、復号対象の符号化データがＣＯＣでなければ、復元装置３は、切り替え制御部２０５に符号化データの第２復号部２０３側への出力切り替えを指示し、第２復号部２０４によって、その符号化データ（文字または文字列）を符号化側に対応する復号化方式で復号する（ステップＪ３のＮＯルートからステップＪ６）。
【０１３０】
そして、復元装置３は、復号が終了したか否かを判定し（ステップＪ７）、終了していなければ（符号化データが未だ残っていれば）、復号が終了するまで上記ステップＪ３からの処理を繰り返す（ステップＪ７のＮＯルート）一方、復号化が終了していれば復元処理を終える（ステップＪ７のＹＥＳルート）。
このように、本第４実施形態におけるＳＧＭＬ文書の復元装置３によれば、ＳＧＭＬタグ抽出部２００により抽出されたタグに符号化側と同じルールに従って所定の初期符号を割り当てることによりタグの辞書を作成し、タグが復号されると、そのタグの出現頻度に応じて、第１復号用辞書内の符号の更新を行なうので、タグの復号が進むにつれて、出現頻度の高いタグほど短い符号が再割り当てされることになり、タグの復号効率を大幅に向上することができるとともに、正確に符号化されたタグを復号することがでできる。
【０１３１】
（ｅ）第５実施形態の説明
（ｅ１）ＳＧＭＬ文書の圧縮装置（符号化側）の説明
図２１は本発明の第５実施形態としてのＳＧＭＬ文書の圧縮装置の要部の構成を示すブロック図であるが、この図２１に示すように、本第５実施形態におけるＳＧＭＬ文書の圧縮装置２は、図１７に示す構成に比して、タグ符号表作成部１０１′として符号作成部１０９をそなえるほか、符号情報出力部１１２及びバッファ１１３をそなえて構成されている点が異なる。
【０１３２】
ここで、上記の符号作成部（第２符号化用辞書作成部）１０９は、ＳＧＭＬタグ抽出部１００により抽出されたタグに基づいて本文３０３内のタグの出現頻度を計数し、その計数結果に応じた符号をタグに割り当てることによりタグの辞書（統計型準動的辞書：第２符号化用辞書）をタグ符号表として作成するものであり、符号情報出力部（出現頻度情報出力部）１１２は、上記のタグの出現頻度に関する情報を後述するタグの復号側へ出力するものである。
【０１３３】
なお、バッファ１１３は、符号作成部１０９にてタグ符号表（辞書）が作成されるまで、本文データを保持するものである。
そして、上述の符号作成部１０９は、本実施形態では、例えば図２２に示すように、タグ計数部１５１，タグ保持部１５２，タグ判定部１５３，符号生成部１５４及び符号保持部１５５をそなえることにより、容易に上記の統計型準動的辞書を作成できるようになっている。
【０１３４】
ここで、タグ計数部１５１は、ＳＧＭＬタグ抽出部１００により抽出されたタグと本文３０３内のタグとが一致するか否かを判定することにより本文３０３内のタグの出現頻度を計数するもので、本実施形態では、ＳＧＭＬタグ抽出部１００により抽出されたタグと、タグ判定部１５３でタグであると判定された本文３０３内のタグとがそれぞれタグ保持部１５２に保持され、保持された各タグの一致数を計数することにより各タグの出現頻度を求めるようになっている。
【０１３５】
また、符号生成部１５４は、タグ計数部１５１での計数結果に応じた符号をタグに割り当てる符号として生成するものであり、符号保持部１５５は、この符号生成部１５４により生成された符号をタグ判定部１５３を通じてタグ保持部１５２に保持されているタグと対応付けて保持することによりタグの辞書を作成するものである。
【０１３６】
つまり、本第５実施形態のＳＧＭＬ文書の圧縮装置２は、最初に本文３０３内のタグの出現頻度を考慮したタグの辞書（符号表）を作成しておき、以降の符号化処理では、その辞書に基づいて（辞書の更新は行なわずに）タグの符号化を行なうようになっているのである。
以下、上述のごとく構成された本第５実施形態におけるＳＧＭＬ文書の圧縮装置２の動作について、図２３に示すフローチャート（ステップＫ１〜Ｋ８）を参照しながら詳述する。
【０１３７】
まず、圧縮装置２は、ＳＧＭＬタグ抽出部１００によって、入力されたＤＴＤ３０２を走査してそのＤＴＤ３０２内に定義されているタグを抽出し（ステップＫ１）、符号作成部１０９へ出力する。
符号作成部１０９では、受け取ったタグをタグ保持部１５２に保持するとともに、入力された本文３０３のデータがタグであるか否かを判定することにより、本文データ内のタグのみをタグ保持部１５２に保持し、タグ計数部１５１がタグ保持部１５２内に保持されているタグの一致数を計数することにより、各タグの出現頻度を算出する（ステップＫ２）。
【０１３８】
さらに、符号作成部１０９は、符号生成部１５４によって、上述のごとく得られた各タグの出現頻度に応じた符号を生成し、各符号をそれぞれ対応するタグに割り当てて符号保持部１５５に保持する（タグの辞書を作成する）（ステップＫ３）。なお、このとき、タグ計数部１５１によって計数されたタグの出現頻度情報は、復号側で本符号化側と同じ辞書を作成するための情報として符号情報出力部１１２を通じて復号側へ出力されている。
【０１３９】
そして、圧縮装置２は、ＳＧＭＬタグ検出部１０２により、入力された本文データがタグであるか否かを判別し（ステップＫ４）、タグであれば、ＣＯＣ出力部１０６にＣＯＣの出力を指示するとともに、符号化処理部１０３ａの切り替え制御部１０５に本文データのタグ符号化部１０３側への出力切り替えを指示する。これにより、ＣＯＣ出力部１０６は後述する復号側へＣＯＣを出力し（ステップＫ４のＹＥＳルートからステップＫ５）、タグ符号化部１０３は、入力データ（タグ）を基に符号作成部１０９により作成された辞書を参照し、そのタグに対応する符号をタグの符号として出力する（ステップＫ６）。
【０１４０】
一方、上記のステップＫ４において、符号化対象の本文データがタグでなければ、圧縮装置２は、切り替え制御部１０５に本文データの第２符号化部１０３側への出力切り替えを指示し、第２符号化部１０４によって、その本文データ（文字または文字列）を所定の符号化方式で符号化する（ステップＫ４のＮＯルートからステップＫ７）。
【０１４１】
そして、圧縮装置２は、符号化が終了したか否かを判定し（ステップＫ８）、終了していなければ（本文データが未だ残っていれば）、符号化が終了するまで上記ステップＫ４からの処理を繰り返す（ステップＫ８のＮＯルート）一方、符号化が終了していれば圧縮処理を終える（ステップＫ８のＹＥＳルート）。
このように、本第５実施形態におけるＳＧＭＬ文書の圧縮装置２によれば、本文３０３内のタグの出現頻度を計数し、その計数結果に応じた符号（出現頻度の高いタグほど短い符号）をタグに割り当ててタグの辞書（統計型準動的辞書）を作成するので、タグの符号化前に予め出現頻度の高いタグに短い符号を割り当てておくことができる。
【０１４２】
従って、前記の統計型動的辞書のようにタグの符号化毎に辞書を更新する必要がないので、タグの圧縮率を向上させながら圧縮処理を高速化することができる。
また、上述の圧縮装置２では、符号情報出力部１１２により、タグの出現頻度に関する情報をタグの復号側へ出力するので、復号側では容易に符号化側で作成された辞書と同一の辞書を作成することができるようになり、復号側におけるタグの復号処理の正確性の向上にも大いに寄与している。なお、復号側へはタグの出現頻度に関する情報ではなく、符号化側で作成された符号表そのものの情報を送るようにしてもよい。
【０１４３】
（ｅ２）ＳＧＭＬ文書の復元装置（復号側）の説明
図２４は本発明の第５実施形態としてのＳＧＭＬ文書の復元装置の要部の構成を示すブロック図であるが、この図２４に示す復元装置３は、図２１〜図２３により上述した圧縮装置２の復号側に相当するもので、本実施形態では、図１４に示すメモリ２０１の代わりにタグ復号表作成部２０１′として符号作成部２０９をそなえるほか、バッファ２１３をそなえて構成されている。
【０１４４】
ここで、上記の符号作成部（第２復号用辞書作成部）２０９は、ＳＧＭＬタグ抽出部２００により抽出されたタグと、符号化側の符号情報出力部１１２を通じて送られてくるそのタグの出現頻度に関する情報とに基づいて、符号化側と同一の符号内容を有するタグの辞書（統計型準動的辞書：第２復号用辞書）をタグ復号表として作成するものである。
【０１４５】
なお、バッファ２１３は、この符号作成部２０９にてタグ復号表（辞書）が作成されるまで、入力された符号化データを保持するものである。
以下、上述のごとく構成された本第５実施形態におけるＳＧＭＬ文書の復元装置３の動作について、図２５に示すフローチャート（ステップＬ１〜Ｌ６）を参照しながら詳述する。
【０１４６】
まず、復元装置３は、ＳＧＭＬタグ抽出部２００によって、入力されたＤＴＤ３０２を走査してそのＤＴＤ３０２内に定義されているタグを抽出し（ステップＬ１）、タグ復号表作成部２０１′の辞書作成部２０９へ出力する。辞書作成部２０９は、受け取ったタグと符号化側から送られてくるタグの出現頻度情報とに基づいて、符号化側で作成された符号表と同一の符号内容を有するタグの復号表を（辞書）作成する（ステップＬ２）。
【０１４７】
そして、復元装置３は、ＣＯＣ判別部２０２により、入力された符号化データがＣＯＣであるか否かを判別し（ステップＬ３）、ＣＯＣであれば、復号処理部２０３ａの切り替え制御部２０５に符号化データのタグ復号部２０３側への出力切り替えを指示する。これにより、タグ復号部２０３は、ＣＯＣの後に続く符号化データを基に辞書作成部２０７により作成された辞書を参照し、その符号化データに対応するシンボル（タグ）を復号結果として出力する（ステップＬ３のＹＥＳルートからステップＬ４）。
【０１４８】
一方、復号対象の符号化データがＣＯＣでなければ、復元装置３は、切り替え制御部２０５に符号化データの第２復号部２０３側への出力切り替えを指示し、第２復号部２０４によって、その符号化データ（文字または文字列）を符号化側に対応する復号化方式で復号する（ステップＬ３のＮＯルートからステップＬ５）。
【０１４９】
そして、復元装置３は、復号が終了したか否かを判定し（ステップＬ６）、終了していなければ（符号化データが未だ残っていれば）、復号が終了するまで上記ステップＬ３からの処理を繰り返す（ステップＬ６のＮＯルート）一方、復号化が終了していれば復元処理を終える（ステップＬ６のＹＥＳルート）。
このように、本第５実施形態におけるＳＧＭＬ文書の復元装置３によれば、ＳＧＭＬタグ抽出部２００により抽出されたＤＴＤ３０２内のタグと、符号化側から送られてくるＳＧＭＬ文書の本文３０３内のタグの出現頻度に関する情報とに基づいて、符号化側と同一の符号内容を有するタグの復号表を作成するので、符号化側で符号化されたタグを正確に復号することができる。また、符号化側と同様に、タグの復号前に予め出現頻度の高いタグには短い符号が割り当てられるので、タグの復号効率を向上させながら復号処理を高速化することができる。
【０１５０】
（ｆ）第６実施形態の説明
（ｆ１）ＳＧＭＬ文書の圧縮装置（符号化側）の説明
図２６は本発明の第６実施形態としてのＳＧＭＬ文書の圧縮装置の要部の構成を示すブロック図であるが、この図２６に示す圧縮装置２は、図１０に示すＳＧＭＬタグ検出部１０２に代えて、開始タグ保持部１１０及び開始タグ検出部１１１を有するＳＧＭＬタグ検出部１０２′をそなえた構成となっている。
【０１５１】
ここで、上記の開始タグ保持１１０は、ＳＧＭＬタグ抽出部１００により抽出されたＤＴＤ３０２内のタグの始まりを示すタグ開始文字（列）（例えば、“＜”や“＜／”など）のみを保持するものであり、開始タグ検出部１１１は、この開始タグ保持部１１０に保持されたタグ開始文字（列）（以下、開始タグという）に基づいて、入力された本文３０３のデータがタグ開始タグである否かを検出するものである。
【０１５２】
つまり、本実施形態のＳＧＭＬタグ検出部（タグ判別部）１０２′は、ＳＧＭＬタグ抽出部１００で抽出されたタグに基づいてタグの始まりを示す開始タグを検出することにより入力データがタグであると判別するようになっているのである。
ただし、上記の開始タグ検出部１１１は、本実施形態では、上記の開始タグが検出されると、開始タグそのもの（“＜”や“＜／”）は第２符号化部１０４にてタグ以外のデータとして符号化されるよう切り替え制御部２０５に指示を与えたのち、上記の開始タグに続くデータがタグ本体としてタグ符号化部１０３で符号化されるよう切り替え制御部２０５に指示を与えるようになっている。
【０１５３】
以下、上述のごとく構成された本第６実施形態におけるＳＧＭＬ文書の圧縮装置２の動作について、図２７に示すフローチャート（ステップＭ１〜Ｍ６）を参照しながら詳述する。
まず、圧縮装置２は、ＳＧＭＬタグ抽出部１００によって、入力されたＤＴＤ３０２を走査してそのＤＴＤ３０２内に定義されているタグを抽出し、抽出したタグを順次メモリ１０１に記憶することにより、そのタグにメモリ１０１のアドレス情報とタグの長さ情報とをタグの符号として割り当ててタグ符号表を作成する（ステップＭ１）。
【０１５４】
一方、このとき、開始タグ保持部１１０へはＳＧＭＬタグ抽出部１００によって抽出されたタグのうち開始タグのみが出力され、開始タグ保持部１１０は、入力された開始タグを順次保持することにより、開始タグを決定しておく（ステップＭ２）。
そして、圧縮装置２は、開始タグ検出部１１１により、入力された本文データが開始タグであるか否かを判別し（ステップＭ３）、開始タグであれば、符号化処理部１０３ａの切り替え制御部１０５に本文データの第２符号化部１０４側への出力切り替えを指示する。これにより、第２符号化部１０３は、入力データ（開始タグ）を所定の符号化方式で符号化する。
【０１５５】
その後、開始タグ検出部１１１は、切り替え制御部１０５に本文データのタグ符号化部１０３側への出力切り替えを指示し、これにより、上記の開始タグに続くタグ本体がタグ符号化部１０３へ入力され、タグ符号化部１０３では、その入力データ（タグ本体）を基にメモリ１０１を参照し、そのタグのアドレスと長さとをタグの符号として出力する（ステップＭ３のＹＥＳルートからステップＭ４）。
【０１５６】
一方、入力された本文データが開始タグでなければ、開始タグ検出部１１１は、切り替え制御部１０５に本文データの第２符号化部１０４側への出力切り替えを指示し、第２符号化部１０４によって、その本文データ（文字または文字列）を所定の符号化方式で符号化する（ステップＭ３のＮＯルートからステップＭ５）。
【０１５７】
そして、圧縮装置２は、符号化が終了したか否かを判定し（ステップＭ６）、終了していなければ（本文データが未だ残っていれば）、符号化が終了するまで上記ステップＭ３からの処理を繰り返す（ステップＭ６のＮＯルート）一方、符号化が終了していれば圧縮処理を終える（ステップＭ６のＹＥＳルート）。
このように、本第６実施形態におけるＳＧＭＬ文書の圧縮装置２によれば、入力された本文データがタグである否かを開始タグを検出することにより判別するので、上記のＣＯＣを復号側へ出力しなくても復号側でも同様に開始タグからタグの判別を行なうことができ、ＣＯＣを出力しない分、よりＳＧＭＬ文書の圧縮率を高めることができる。
【０１５８】
また、タグの判別を開始タグのみを検出することにより行なっているので、より簡素な構成で、且つ、高速に、タグの判別を行なうことができ、タグの圧縮処理の高速化にも大いに寄与している。
（ｆ２）ＳＧＭＬ文書の復元装置（復号側）の説明
図２８は本発明の第６実施形態としてのＳＧＭＬ文書の復元装置の要部の構成を示すブロック図であるが、この図２８に示す復元装置３は、図２６及び図２７により上述した圧縮装置２の復号側に相当するもので、本実施形態では、図１４に示すＳＧＭＬタグ検出部２０２に代えて、開始タグ保持部２１０及び開始タグ検出部２１１を有するＳＧＭＬタグ検出部２０２′をそなえた構成となっている。
【０１５９】
ここで、上記の開始タグ保持部２１０及び開始タグ検出部２１１は、それぞれ、符号化側の開始タグ保持部１１０及び開始タグ検出部１１１と同様のもので、開始タグ保持部２１０は、ＳＧＭＬタグ抽出部２００により抽出されたＤＴＤ３０２内の開始タグ（“＜”や“＜／”など）のみを保持するものであり、開始タグ検出部２１１は、この開始タグ保持部２１０に保持された開始タグに基づいて、第２復号部２０４で復号されたシンボルが開始タグであるか否かを検出するもので、開始タグが検出されると、その後の復号対象の符号化データがタグの符号であるので、切り替え制御部２０５の出力をタグ復号部２０３側へ切り替えるよう指示するようになっている。
【０１６０】
以下、上述のごとく構成された本第６実施形態における復元装置３の動作について、図２９に示すフローチャート（ステップＮ１〜Ｎ６）を参照しながら詳述する。
まず、復元装置３は、ＳＧＭＬタグ抽出部２００によって、入力されたＤＴＤ３０２を走査してそのＤＴＤ３０２内に定義されているタグを抽出し、抽出したタグを順次メモリ１０１に記憶することにより、そのタグにメモリ１０１のアドレス情報とタグの長さ情報とをタグの符号として割り当ててタグ復号表を作成する（ステップＮ１）。
【０１６１】
一方、このとき、開始タグ保持部２１０へはＳＧＭＬタグ抽出部２００によって抽出されたタグのうち開始タグのみが出力され、開始タグ保持部２１０は、入力された開始タグを順次保持することにより、開始タグを決定しておく（ステップＮ２）。
そして、復元装置２は、開始タグ検出部２１１により、第２復号部２０４で復号されたシンボルが開始タグであるか否かを判別し（ステップＮ３）、開始タグであれば、続いて入力される符号化データ（タグ本体の符号＝アドレスと長さ）がタグ復号部２０４へ出力されるよう、切り替え制御部２０５に符号化データのタグ復号部２０３側への出力切り替えを指示する。
【０１６２】
これにより、タグ復号部２０３は、入力データ（アドレスと長さ）を基にメモリ２０１を参照して該当するタグを復号結果として出力する（ステップＮ３のＹＥＳルートからステップＮ４）。
一方、第２復号部２０４で復号されたシンボルが開始タグでなかった場合、開始タグ検出部２１１は、切り替え制御部１０５に符号化データの第２復号部２０４側への出力切り替えを指示し、第２復号部２０４によって、その符号化データを符号化側の符号化方式と対応する復号方式で復号する（ステップＮ３のＮＯルートからステップＮ５）。
【０１６３】
そして、復元装置２は、復号が終了したか否かを判定し（ステップＮ６）、終了していなければ（符号化データが未だ残っていれば）、復号が終了するまで上記ステップＮ３からの処理を繰り返す（ステップＮ６のＮＯルート）一方、復号が終了していれば復元処理を終える（ステップＮ６のＹＥＳルート）。
このように、本第６実施形態におけるＳＧＭＬ文書の復元装置３によれば、復号された符号化データが開始タグである否かを検出することによりタグの開始位置を判別するので、上記のＣＯＣを受信しなくてもタグの復号とタグ以外の文字（列）の復号とを切り替えることができる。従って、ＣＯＣを受信しない分、符号化側での圧縮率を高めながら正確にタグの復元処理を行なうことができる。
【０１６４】
また、タグの判別を開始タグのみを検出することにより行なっているので、より簡素な構成で、且つ、高速に、タグの判別を行なうことができ、タグの復元処理の高速化にも大いに寄与している。
以上のように、上述した各実施形態におけるＳＧＭＬ文書の圧縮装置２によれば、本文３０３内のタグを符号化して圧縮することができるので、ＳＧＭＬ文書のデータ量を大幅に削減することができる。また、タグだけでなく、タグ以外の文字（列）についても所定の符号化方式で符号化して圧縮することができるので、ＳＧＭＬ文書のデータ量をより大幅に削減することができる。
【０１６５】
さらに、上述した各実施形態におけるＳＧＭＬ文書の復元装置３によれば、符号化されたタグもしくはタグとタグ以外の文字（列）とを効率良く、且つ、確実に復号することができるので、常に正確にタグもしくはタグとタグ以外の文字（列）を復元することができる。
また、上述した各圧縮装置２，復元装置３は、それぞれ、上述のような機能を有する圧縮プログラム，復元プログラムを記録したフロッピーディスク１１やＣＤ−ＲＯＭ１２，ＭＯ１３などの記録媒体１５をコンピュータ２，３に提供することで、容易に実現されるので、本発明の汎用性を大幅に向上させることができ、本発明の普及が大いに期待できる。
（ｇ）その他
なお、上述した実施形態では、いずれも、圧縮装置２，復元装置３がそれぞれ単体で異なるパソコン上で実現されている場合について説明したが、圧縮装置２と復元装置３の両方を圧縮／復元装置として１つのパソコン上で実現することも可能である。
【０１６６】
例えば、第３実施形態にて前述した圧縮装置２（図１０参照）と復元装置（図１４参照）とを１つのパソコン上で実現することを考えた場合、その構成は図３０に示すようになる。
ただし、この場合、復元側では、符号化側で作成されたタグ符号表を使用してタグの復号を行なえばよいので、図３０に示すように、メモリ１０１が符号化側と復元側とで共用化されている（タグ符号／復号表作成部として機能している）。なお、この図３０に示すＳＧＭＬ文書の圧縮／復元装置の各部の動作は、第３実施形態にて前述したものと同様であるので、ここでは、その説明は省略する。
【０１６７】
このように、上述のＳＧＭＬ文書の圧縮／復元装置によれば、タグの復号に際しては、タグの符号化時に作成・使用したメモリ１０１の記憶内容（タグ符号／復号表）に基づいて、タグの復号処理を行なうので、少なくとも、前述の各実施形態で述べたようにタグ復号用の復号表をタグ符号化用の符号表と個別に作成する必要がなく、タグ復号（復元）処理の高速化，装置規模の削減に大いに寄与している。
【０１６８】
なお、上記の第３実施形態以外の各実施形態における圧縮装置２，復元装置３についても、同様に、１つの装置（パソコン）上で圧縮／復元装置として実現することが可能である。
また、上述した各実施形態では、ＳＧＭＬ文書のＤＴＤ３０２内に定義されているタグを抽出して符号を割り当てているが、ＳＧＭＬ宣言部３０１にもＤＴＤ３０２と同様にタグが定義されていれば、そのＳＧＭＬ宣言部３０１内のタグも抽出して符号を割り当てるようにしてもよい。
【０１６９】
さらに、上述した各実施形態では、ＳＧＭＬ文書の本文３０３についてのみ圧縮／復元を行なっているが、本文３０３以外（ＳＧＭＬ宣言部３０１，ＤＴＤ３０２）についても同様に圧縮／復元を行なっても良い。
【０１７０】
【発明の効果】
以上詳述したように、本発明のタグ文書の圧縮装置および圧縮方法によれば、文書型定義部及び文書実現部のうちの前記文書型定義部内のタグに所定の符号を割り当ててタグ符号表を作成し、そのタグ符号表に基づいて、前記文書型定義部及び前記文書実現部のうちの前記文書実現部内のタグを符号化するので、タグ文書のタグを極めて効率良く圧縮することができ、タグ文書のデータ量を大幅に削減することができる。
【０１７１】
なお、このとき、同一の文書型定義部を有する複数のタグ文書については、最初のタグ文書について作成されたタグ符号表に基づいて、全てのタグ文書の文書実現部内のタグに対する符号化を行なうので、各タグ文書毎にタグ符号表を作成する必要がなく、タグの符号化処理を極めて高速に行なうことができる。
【０１７２】
また、本発明のタグ文書の圧縮装置および圧縮方法によれば、上記と同様のタグ符号表を作成し、入力されたデータがタグである場合は、タグの符号化を示す特殊コードをタグの復号側へ出力した後、タグ符号表に基づいて入力データを符号化する一方、入力データがタグでない場合は入力データを所定の符号化方式で符号化するので、タグ文書内のタグのみならずタグ以外の文書さえも極めて効率良く圧縮することができ、より大幅にタグ文書のデータ量を削減することができる。また、タグの復号側では上記の特殊コードによりタグの判別を容易に行なうことができるので、タグの復号処理の高速化にも大いに寄与する。
【０１７３】
ここで、上記の符号化処理は、入力データを上記のタグ符号表に基づいて符号化する第１符号化部と、入力データを所定の符号化方式で符号化する第２符号化部と、入力データがタグであると判別されるとその入力データを第１符号化部へ出力する一方、入力データがタグでないと判別されるとその入力データを第２符号化部へ出力する切り替え制御部とをそなえることにより、簡素な構成で容易に実現される。
【０１７４】
また、上記のタグ符号表は、タグをタグ記憶部に記憶させ、そのタグ記憶部における記憶箇所についての情報をタグの符号として割り当てることにより作成すれば、タグをタグ記憶部に順次記憶してゆくだけで各タグに符号が割り当てられることになるので、極めて簡素な構成で、且つ、高速に、上記のタグ符号表を作成することができる。
【０１７５】
なお、上記の記憶箇所についての情報を、例えば、上記タグ記憶部のアドレス情報を含む情報とすれば、タグ記憶部のアドレス情報がそのままタグの符号として使用されるので、より高速に、タグの符号化を行なうことができる。具体的に、上記の記憶箇所についての情報を、例えば、上記アドレス情報とタグの長さ情報とすれば、タグの長さもそのタグの符号として割り当てられるので、タグの復号側では、容易に、復号すべきタグを特定することができ、タグの復号処理の高速化に大いに寄与する。
【０１７６】
さらに、上記のタグ符号表は、上記のタグ抽出部により抽出されたタグに所定の初期符号を割り当てることによりタグの第１符号化用辞書を作成し、タグが符号化されると、そのタグの出現頻度に応じて、第１符号化用辞書内の符号の更新を行なうことにより作成すれば、タグの符号化が進むにつれて、例えば出現頻度の高いタグほど短い符号が再割り当てされるので、タグの圧縮効率を大幅に向上することができる。
【０１７７】
また、上記のタグ符号表は、文書実現部内のタグの出現頻度を計数し、その計数結果に応じた符号をタグに割り当ててタグの第２符号化用辞書として作成すれば、タグの符号化前に予め出現頻度の高いタグには短い符号を割り当てておくことができるので、タグの圧縮効率を向上させながら圧縮処理を高速化することができる。
【０１７８】
なお、この場合、上記のタグの出現頻度に関する情報をタグの復号側へ出力するようにすれば、復号側では容易に上記の第２符号化用辞書と同一の辞書を作成することができるので、復号側におけるタグの復号処理の正確性の向上に大いに寄与する。
なお、上記の第２符号化用辞書は、文書実現部内のタグの出現頻度を計数するタグ計数部と、このタグ計数部での計数結果に応じた符号を生成する符号生成部と、この符号生成部により生成された符号を保持する符号保持部とをそなえることにより、容易に作成することができる。
【０１７９】
また、本発明のタグ文書の圧縮装置および圧縮方法によれば、文書型定義部及び文書実現部のうちの前記文書型定義部内のタグに所定の符号を割り当ててタグ符号表を作成し、入力された前記文書型定義部及び前記文書実現部のうちの前記文書実現部のデータがタグである場合は上記のタグ符号表に基づいて入力データを符号化する一方、入力データがタグでない場合は入力データを所定の符号化方式で符号化するので、上記の特殊コードを出力しない分、より圧縮効率を高めることができる。
【０１８０】
なお、このとき、タグの始まりを示す開始タグを検出することにより入力データがタグであると判別するようにすれば、より簡素な構成で、且つ、高速に、タグの判別を行なうことができ、これにより、タグの圧縮処理を高速化することができる。
一方、本発明のタグ文書の復元装置および復元方法によれば、文書型定義部及び文書実現部のうちの文書型定義部内のタグに所定の符号を割り当ててタグ復号表を作成し、そのタグ復号表に基づいて符号化された前記文書型定義部及び前記文書実現部のうちの前記文書実現部内のタグを復号するので、タグ文書内の符号化されたタグを極めて効率良く、且つ、正確に復号（復元）することができる。
【０１８１】
なお、このとき、同一の文書型定義部を有する複数のタグ文書については、最初のタグ文書について作成されたタグ復号表に基づいて、全てのタグ文書の文書実現部に対するタグの復号を行なうので、各タグ文書毎にタグ復号表を作成する必要がなく、タグの復号処理を極めて高速に行なうことができる。
【０１８２】
また、本発明のタグ文書の復元装置および復元方法によれば、上記と同様のタグ復号表を作成し、入力された符号化データが特殊コードである場合は、その特殊コードの後に入力される符号化データをタグ復号表に基づいて復号する一方、入力された符号化データが特殊コードでない場合は、その符号化データを所定の復号方式で復号するので、タグだけでなく符号化されたタグ以外の文書をも極めて効率良く、且つ、正確に復元することができる。また、特殊コードを検出するだけで、復号対象の符号化データがタグであるか否かを判別することができるので、タグの復号処理を大幅に高速化することができる。
【０１８３】
ここで、上記の復号処理は、入力された符号化データを上記のタグ復号表に基づいて復号する第１復号部と、入力された符号化データを所定の復号方式で復号する第２復号部と、符号化データが特殊コードであると判別されるとその特殊コードの後に入力される符号化データを第１復号部へ出力する一方、符号化データが特殊コードでないと判別されるとその符号化データを第２復号部へ出力する切り替え制御部とをそなえることにより、簡素な構成で容易に実現される。
【０１８４】
また、上記のタグ復号表は、タグをタグ記憶部をさせ、そのタグ記憶部における記憶箇所についての情報をタグの符号として割り当てることにより作成すれば、タグをタグ記憶部に順次記憶してゆくだけで各タグに符号が割り当てられることになるので、極めて簡素な構成で、且つ、高速に、上記のタグ復号表を作成することができる。
【０１８５】
なお、上記の記憶箇所についての情報を、例えば、上記タグ記憶部のアドレス情報を含む情報とすれば、タグ記憶部のアドレス情報がそのままタグの符号として使用されるので、符号化側においてタグがアドレス情報を含む情報として符号化されていればその符号化データに対応するタグをタグ記憶部から容易に取り出すことができ、タグの復号処理が大幅に高速化される。
【０１８６】
具体的に、上記の記憶箇所についての情報を、例えば、上記アドレス情報とタグの長さ情報とすれば、タグの長さもそのタグの符号として割り当てられるので、符号化側においてタグが上記のアドレス情報とその長さ情報として符号化されていれば、より正確に、その符号化データに対応するタグをタグ記憶部から取り出すことができ、タグ復号処理の高速化，正確性の向上に大いに寄与する。
【０１８７】
さらに、上記のタグ復号表は、文書型定義部内のタグに所定の初期符号を割り当てることによりタグの第１復号用辞書を作成し、タグが復号されると、そのタグの出現頻度に応じて、第１復号用辞書内の符号の更新を行なうことにより作成すれば、タグの復号が進むにつれて、例えば出現頻度の高いタグほど短い符号が再割り当てされるので、タグの復号効率を大幅に向上することができる。
【０１８８】
また、上記のタグ復号表は、文書型定義部内のタグと文書実現部内のタグの出現頻度に関する情報とに基づいて、文書型定義部内のタグにその出現頻度に応じた符号を割り当ててタグの第２復号用辞書として作成すれば、タグの復号前に予め出現頻度の高いタグには短い符号を割り当てておくことができるので、タグの復号効率を向上させながら復号処理を高速化することができる。
【０１８９】
さらに、本発明のタグ文書の復元装置および復元方法によれば、文書型定義部及び文書実現部のうちの文書型定義部内のタグに所定の符号を割り当ててタグ復号表を作成し、入力された符号化データがタグの符号化データである場合は、上記のタグ復号表に基づいて符号化データを復号する一方、入力された符号化データがタグの符号化データでない場合は、その符号化データを所定の復号方式で復号するので、上記の特殊コードを受信しない分、符号化側での圧縮効率を高めながら正確にタグの復元処理を行なうことができる。
【０１９０】
なお、このとき、タグの始まりを示す開始タグを検出することにより入力データがタグであると判別するようにすれば、より簡素な構成で、且つ、高速に、タグの判別を行なうことができ、これにより、タグの復元処理を高速化することができる。
また、本発明のタグ文書の圧縮／復元装置および圧縮／復元方法によれば、文書型定義部及び文書実現部のうちの文書実現部内のタグに所定の符号を割り当ててタグ符号／復号表を作成し、タグの復号に際しては、タグの符号化時に使用した上記のタグ符号／復号表に基づいて、タグの復号処理を行なうので、少なくとも、タグ復号用の復号表をタグ符号化用の符号表と個別に作成する必要がなく、タグ復号（復元）処理の高速化，装置規模の削減に大いに寄与する。
【０１９１】
さらに、本発明のタグ文書の圧縮／復元装置および圧縮／復元方法によれば、文書型定義部及び文書実現部のうちの文書実現部内のタグに所定の符号を割り当ててタグ符号／復号表を作成し、タグの復号に際して、前記と同様の特殊コードを検出すると、タグの符号化時に使用した上記のタグ符号／復号表に基づいて、タグの復号処理を行なうので、上記と同様に、タグ復号（復元）処理の高速化，装置規模の削減に大いに寄与するほか、上記特殊コードにより、高速且つ正確に、復号対象のタグを特定してタグの復号を行なうことができる。
【０１９２】
なお、上記のタグ文書の圧縮装置，復元装置および圧縮／復元装置は、それぞれコンピュータを上述のごとく機能させるための圧縮プログラム，復元プログラムおよび圧縮／復元プログラムをコンピュータ読み取り可能な記録媒体に記録して、その記録媒体を所望のコンピュータに提供することにより容易に実現されるので、本発明の汎用性を大幅に向上させることができ、本発明の普及が大いに期待できる。
【図面の簡単な説明】
【図１】本発明の第１実施形態としてのＳＧＭＬ文書（タグ文書）の圧縮装置および復元装置が適用されるコンピュータシステムを示すブロック図である。
【図２】第１実施形態におけるＳＧＭＬ文書の圧縮装置としてのパソコンの要部の構成を示すブロック図である。
【図３】第１実施形態におけるＳＧＭＬ文書の圧縮装置の動作を説明するためのフローチャートである。
【図４】本発明の第１実施形態におけるＳＧＭＬ文書の復元装置としてのパソコンの要部の構成を示すブロック図である。
【図５】第１実施形態におけるＳＧＭＬ文書の復元装置の動作を説明するためのフローチャートである。
【図６】本発明の第２実施形態としてのＳＧＭＬ文書の圧縮装置の要部の構成を示すブロック図である。
【図７】第２実施形態におけるＳＧＭＬ文書の圧縮装置の動作を説明するためのフローチャートである。
【図８】本発明の第２実施形態としてのＳＧＭＬ文書の復元装置の要部の構成を示すブロック図である。
【図９】第２実施形態におけるＳＧＭＬ文書の復元装置の動作を説明するためのフローチャートである。
【図１０】本発明の第３実施形態としてのＳＧＭＬ文書の圧縮装置の要部の構成を示すブロック図である。
【図１１】第３実施形態におけるＳＧＭＬ文書の圧縮装置の動作を説明するための図である。
【図１２】第３実施形態におけるＳＧＭＬ文書の圧縮装置の動作を説明するためのフローチャートである。
【図１３】第３実施形態におけるＳＧＭＬ文書の圧縮装置の動作を説明するための図である。
【図１４】本発明の第３実施形態としてのＳＧＭＬ文書の復元装置の要部の構成を示すブロック図である。
【図１５】第３実施形態におけるＳＧＭＬ文書の復元装置の動作を説明するためのフローチャートである。
【図１６】第３実施形態におけるＳＧＭＬ文書の復元装置の変形例を示すブロック図である。
【図１７】本発明の第４実施形態としてのＳＧＭＬ文書の圧縮装置の要部の構成を示すブロック図である。
【図１８】第４実施形態におけるＳＧＭＬ文書の圧縮装置の動作を説明するためのフローチャートである。
【図１９】本発明の第４実施形態としてのＳＧＭＬ文書の復元装置の要部の構成を示すブロック図である。
【図２０】第４実施形態におけるＳＧＭＬ文書の復元装置の動作を説明するためのフローチャートである。
【図２１】本発明の第５実施形態としてのＳＧＭＬ文書の圧縮装置の要部の構成を示すブロック図である。
【図２２】第５実施形態におけるＳＧＭＬ文書の圧縮装置の符号作成部の構成を示すブロック図である。
【図２３】第５実施形態におけるＳＧＭＬ文書の圧縮装置の動作を説明するためのフローチャートである。
【図２４】本発明の第５実施形態としてのＳＧＭＬ文書の復元装置の要部の構成を示すブロック図である。
【図２５】第５実施形態におけるＳＧＭＬ文書の復元装置の動作を説明するためのフローチャートである。
【図２６】本発明の第６実施形態としてのＳＧＭＬ文書の圧縮装置の要部の構成を示すブロック図である。
【図２７】第６実施形態におけるＳＧＭＬ文書の圧縮装置の動作を説明するためのフローチャートである。
【図２８】本発明の第６実施形態としてのＳＧＭＬ文書の復元装置の要部の構成を示すブロック図である。
【図２９】第６実施形態におけるＳＧＭＬ文書の復元装置の動作を説明するためのフローチャートである。
【図３０】本発明の一実施形態としてのＳＧＭＬ文書の圧縮／復元装置の要部の構成を示すブロック図である。
【図３１】ＳＧＭＬ文書のフォーマットを模式的に示す図である。
【図３２】ＳＧＭＬ文書の文書型定義部（ＤＴＤ）の記述例を示す図である。
【図３３】ＳＧＭＬ文書の文書実現値（本文）の記述例を示す図である。
【符号の説明】
２  パーソナルコンピュータ（圧縮装置）
３  パーソナルコンピュータ（復元装置）
４  ネットワーク接続装置
１１  フロッピーディスク（ＦＤ）
１２  ＣＤ−ＲＯＭ
１３  ＭＯ（光磁気ディスク）
１５  記録媒体
２１  本体
２２  ディスプレイ
２３  キーボード
２４  マウス（ポインティングデバイス）
２５  ディスクドライブ
２６  ＣＰＵ（Central Processing Unit)
２７  ハードディスク（記憶装置）
３０，３０′，１００，２００  ＳＧＭＬタグ抽出部
４０，１０１′  タグ符号表作成部
４０′，２０１′  タグ復号表作成部
５０，５０′  タグ判別部
６０  タグ符号化部
６０′  タグ復号部
７０，７０′  ＤＴＤ比較部
８０，８０′  コントローラ
１０１，２０１  メモリ（タグ記憶部）
１０１ａ  タグ符号表
１０２，１０２′  ＳＧＭＬタグ検出部（タグ判別部）
１０３  タグ符号化部（第１符号化部）
１０３ａ  符号化処理部
１０４  第２符号化部
１０４ａ  符号表
１０５，２０５  切り替え制御部
１０６  ＣＯＣ出力部（特殊コード出力部）
１０７  辞書作成部（第１符号化用辞書作成部）
１０８  辞書更新部（符号化用辞書更新部）
１０９  符号作成部（第２符号化用辞書作成部）
１１０，２１０  開始タグ保持部
１１１，２１１  開始タグ検出部
１１２  符号情報出力部（出現頻度情報出力部）
１１３，２１３  バッファ
１５１  タグ計数部
１５２  タグ保持部
１５３  タグ判定部
１５４  符号生成部
１５５  符号保持部
２０２  ＣＯＣ判別部（特殊コード判別部）
２０２′  ＳＧＭＬタグ判別部
２０３  タグ復号部（第１復号部）
２０３ａ  復号処理部
２０４  第２復号部
２０７  辞書作成部（第１復号用辞書作成部）
２０８  辞書更新部（復号用辞書更新部）
２０９  符号作成部（第２復号用辞書作成部）
３０１  ＳＧＭＬ宣言部
３０２  文書型定義部（ＤＴＤ）
３０３  文書実現値（本文）
【図１】
0003859313.tif 000002
【図２】
0003859313.tif 000003
【図３】
0003859313.tif 000004
【図４】
0003859313.tif 000005
【図５】
0003859313.tif 000006
【図６】
0003859313.tif 000007
【図７】
0003859313.tif 000008
【図８】
0003859313.tif 000009
【図９】
0003859313.tif 000010
【図１０】
0003859313.tif 000011
【図１１】
0003859313.tif 000012
【図１２】
0003859313.tif 000013
【図１３】
0003859313.tif 000014
【図１４】
0003859313.tif 000015
【図１５】
0003859313.tif 000016
【図１６】
0003859313.tif 000017
【図１７】
0003859313.tif 000018
【図１８】
0003859313.tif 000019
【図１９】
0003859313.tif 000020
【図２０】
0003859313.tif 000021
【図２１】
0003859313.tif 000022
【図２２】
0003859313.tif 000023
【図２３】
0003859313.tif 000024
【図２４】
0003859313.tif 000025
【図２５】
0003859313.tif 000026
【図２６】
0003859313.tif 000027
【図２７】
0003859313.tif 000028
【図２８】
0003859313.tif 000029
【図２９】
0003859313.tif 000030
【図３０】
0003859313.tif 000031
【図３１】
0003859313.tif 000032
【図３２】
0003859313.tif 000033
【図３３】
0003859313.tif 000034