(57)【要約】【課題】適切な文章を容易に作成可能な文章作成装置を提供する。【解決手段】文字列が入力される入力フィールドに関する情報であって、入力フィールドの入力内容を示す属性と対応付けられた情報である複数のフィールド情報が格納されるフィールド情報格納部１１と、入力フィールドに入力される文字列である入力文字列に関連する文字列であって、入力文字列に連結される文字列である１以上の連結文字列が格納される連結文字列格納部１２と、複数のフィールド情報に対応する複数の入力フィールドを表示する表示部１３と、表示部１３が表示する複数の入力フィールドに対して入力文字列を受け付ける受付部１４と、複数の入力フィールドのそれぞれについて受け付けた入力文字列を、１以上の連結文字列と連結して配列して文章を作成する文章作成部１７と、文章作成部１７が作成した文章を出力する文章出力部１８とを備えた。【選択図】図１
2014215767.tif 000002
【特許請求の範囲】
【請求項１】
文字列が入力される入力フィールドに関する情報であって、当該入力フィールドの入力内容を示す属性と対応付けられた情報である複数のフィールド情報が格納されるフィールド情報格納部と、
前記入力フィールドに入力される文字列である入力文字列に関連する文字列であって、当該入力文字列に連結される文字列である１以上の連結文字列が格納される連結文字列格納部と、
前記複数のフィールド情報に対応する複数の入力フィールドを表示する表示部と、
前記表示部が表示する複数の入力フィールドに対して入力文字列を受け付ける受付部と、
前記複数の入力フィールドのそれぞれについて受け付けた入力文字列を、前記１以上の連結文字列と連結して配列して文章を作成する文章作成部と、
前記文章作成部が作成した文章を出力する文章出力部とを備えた文章作成装置。
【請求項２】
前記複数のフィールド情報は、各フィールド情報に対応する入力フィールドに入力される入力文字列の配列順と対応付けられており、
前記フィールド情報に対応する入力フィールドに入力される入力文字列の配列順を変更する指示である配列変更指示を受け付ける変更指示受付部と、
前記複数のフィールド情報に対応付けられている入力文字列の配列順を、前記配列変更指示に応じて変更する配列変更部と、を更に備え、
前記文章作成部は、前記複数のフィールド情報に対応付けられた入力文字列の配列順に従って、前記入力文字列を配列して文章を作成する請求項１記載の文章作成装置。
【請求項３】
前記文章作成部は、前記入力文字列に連結される１以上の連結文字列を、当該入力文字列の配列順に応じて変更する請求項２記載の文章作成装置。
【請求項４】
前記文章作成部が作成する文章は、新聞記事である請求項１から請求項３いずれか一項記載の文章作成装置。
【請求項５】
文字列が入力される入力フィールドに関する情報であって、当該入力フィールドの入力内容を示す属性と対応付けられた情報である複数のフィールド情報が格納されるフィールド情報格納部と、前記入力フィールドに入力される文字列である入力文字列に関連する文字列であって、当該入力文字列に連結される文字列である１以上の連結文字列が格納される連結文字列格納部と、表示部と、受付部と、文章作成部と、文章出力部とを用いて行われる文章作成方法であって、
前記表示部が、前記複数のフィールド情報に対応する複数の入力フィールドを表示する表示ステップと、
前記受付部が、前記表示ステップで表示する複数の入力フィールドに対して入力文字列を受け付ける受付ステップと、
前記文章作成部が、前記複数の入力フィールドのそれぞれについて受け付けた入力文字列を、前記１以上の連結文字列と連結して配列して文章を作成する文章作成ステップと、
前記文章出力部が、前記文章作成ステップで作成した文章を出力する文章出力ステップとを備えた文章作成方法。
【請求項６】
文字列が入力される入力フィールドに関する情報であって、当該入力フィールドの入力内容を示す属性と対応付けられた情報である複数のフィールド情報が格納されるフィールド情報格納部と、前記入力フィールドに入力される文字列である入力文字列に関連する文字列であって、当該入力文字列に連結される文字列である１以上の連結文字列が格納される連結文字列格納部と、にアクセス可能なコンピュータを、
前記複数のフィールド情報に対応する複数の入力フィールドを表示する表示部と、
前記表示部が表示する複数の入力フィールドに対して入力文字列を受け付ける受付部と、
前記複数の入力フィールドのそれぞれについて受け付けた入力文字列を、前記１以上の連結文字列と連結して配列して文章を作成する文章作成部と、
前記文章作成部が作成した文章を出力する文章出力部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文章を作成する装置等に関するものである。
【背景技術】
【０００２】
従来の技術として、文書上にコンテンツを配置するためのデータ配置領域が少なくとも設定されているレイアウト情報を利用して、文書の編集処理を行う文書編集装置において、コンテンツに関連付けられた配置先情報に基づいてコンテンツをデータ配置領域へ配置する配置手段を備えたものが知られていた（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−１４８５８８号公報（第１頁、第１図等）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の技術においては、適切な文章を容易に作成することができない、という課題があった。例えば、従来においては、適切な文章を作成するためには、文章作成のための知識や技術、経験が必要とされていた。特に、新聞記事のように用途が特定されている文章を作成するためには、文章作成のための十分な知識や経験が必要とされていた。このため、このような知識や技術等を有さない一般的なユーザが、適切な文章を作成することは非常に困難であった。
【課題を解決するための手段】
【０００５】
本発明の文章作成装置は、文字列が入力される入力フィールドに関する情報であって、入力フィールドの入力内容を示す属性と対応付けられた情報である複数のフィールド情報が格納されるフィールド情報格納部と、入力フィールドに入力される文字列である入力文字列に関連する文字列であって、入力文字列に連結される文字列である１以上の連結文字列が格納される連結文字列格納部と、複数のフィールド情報に対応する複数の入力フィールドを表示する表示部と、表示部が表示する複数の入力フィールドに対して入力文字列を受け付ける受付部と、複数の入力フィールドのそれぞれについて受け付けた入力文字列を、１以上の連結文字列と連結して配列して文章を作成する文章作成部と、文章作成部が作成した文章を出力する文章出力部とを備えた文章作成装置である。
【０００６】
かかる構成により、複数の入力フィールドに文字列を入力することで、適切な文章を容易に作成することができる。
【０００７】
また、本発明の文章作成装置は、前記文章作成装置において、複数のフィールド情報は、各フィールド情報に対応する入力フィールドに入力される入力文字列の配列順と対応付けられており、フィールド情報に対応する入力フィールドに入力される入力文字列の配列順を変更する指示である配列変更指示を受け付ける変更指示受付部と、複数のフィールド情報に対応付けられている入力文字列の配列順を、配列変更指示に応じて変更する配列変更部と、を更に備え、文章作成部は、複数のフィールド情報に対応付けられた入力文字列の配列順に従って、入力文字列を配列して文章を作成する文章作成装置である。
【０００８】
かかる構成により、入力文字列の配列順を変更した文章を容易に作成することができる。
【０００９】
また、本発明の文章作成装置は、前記文章作成装置において、文章作成部は、入力文字列に連結される１以上の連結文字列を、入力文字列の配列順に応じて変更する文章作成装置である。
【００１０】
かかる構成により、入力文字列の配列に応じた適切な文章を作成することができる。
【００１１】
また、本発明の文章作成装置は、前記文章作成装置において、文章作成部が作成する文章は、新聞記事である文章作成装置である。
【００１２】
かかる構成により、適切な新聞記事を容易に作成することができる。
【発明の効果】
【００１３】
本発明による文章作成装置等によれば、適切な文章を容易に作成することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施の形態における文章作成装置のブロック図
【図２】同文章作成装置の動作について説明するフローチャート
【図３】同文章作成装置のフィールド情報管理情報を示す図
【図４】同文章作成装置の配列管理情報を示す図
【図５】同文章作成装置の連結情報管理情報を示す図
【図６】同文章作成装置の入力フィールドの表示例を示す図
【図７】同文章作成装置の入力フィールドの表示例を示す図
【図８】同文章作成装置の入力文字列管理情報を示す図
【図９】同文章作成装置が作成した文章の表示例を示す図
【図１０】同文章作成装置の配列順の変更を説明するための図
【図１１】同文章作成装置の配列順管理情報を示す図
【図１２】同文章作成装置が作成した文章の表示例を示す図
【図１３】本発明の実施の形態におけるコンピュータの外観の一例を示す模式図
【図１４】同コンピュータの内部構成を示す図
【発明を実施するための形態】
【００１５】
以下、文章作成装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
【００１６】
（実施の形態）
図１は、本実施の形態における文章作成装置１のブロック図である。
【００１７】
文章作成装置１は、フィールド情報格納部１１、連結文字列格納部１２、表示部１３、受付部１４、変更指示受付部１５、配列変更部１６、文章作成部１７、文章出力部１８を備える。
【００１８】
フィールド情報格納部１１には、複数のフィールド情報が格納される。フィールド情報は、文字列が入力される入力フィールドに関する情報である。入力フィールドとは、例えば、文字列の入力欄や、文字列が入力される領域である。入力フィールドは、文字列が入力される入力フォームや、ボックス、フレーム等と考えても良い。フィールド情報とは、例えば、入力フィールドを表示するために用いられる情報である。フィールド情報は、例えば、表示する入力フィールドのサイズを指定する情報や、入力フィールドの中心や、１以上の頂点の位置を指定する情報を有する。位置を指定する情報としては、例えば座標が用いられる。また、フィールド情報は、例えば、入力フィールドの表示を指示するタグ等の情報であっても良い。この表示を指示する情報は、更に、表示する入力フィールドのサイズや、位置等の情報を有していても良い。フィールド情報は、入力フィールドを表示するためのプログラムであってもよい。
【００１９】
フィールド情報は、例えば、フィールド情報の識別情報（以下、フィールド識別情報と称す）と対応付けられている。フィールド識別情報とは、例えば、フィールド名や、フィールドに割り当てられたコード等である。なお、各フィールド情報が、個別に識別可能な情報である場合、フィールド識別情報として、フィールド情報自身を用いるようにしても良い。
【００２０】
また、フィールド情報は、例えば、入力可能なデータタイプを文字列に指定する情報を有していても良い。また、フィールド情報は、入力フィールドに入力される文字列を受け付けるためのプログラム等を有していても良い。
【００２１】
フィールド情報は、入力フィールドの入力内容を示す属性（以下、入力内容属性と称す）と対応付けられた情報である。入力内容属性とは、例えば、入力フィールドに入力される文字列が、どのような内容の文字列であるかを示す属性である。入力内容属性とは、例えば、入力フィールドに入力される文字列の内容を指定する属性と考えても良い。入力フィールドに入力される文字列を、ここでは、入力文字列と称す。入力内容属性とは、例えば、入力文字列が表す意味や種類等を示す属性と考えても良い。ここでの内容や意味や種類とは、例えば、入力文字列を用いた文章において、各文字列が示す内容や意味や種類である。入力内容属性とは、例えば、「日時」、「場所」、「主体」、「対象」、「行動」、「方法」、「理由」、「感想」、「伝達事項」等の属性である。また、入力内容属性は、いわゆる５Ｗ１Ｈ等で表される「いつ」、「どこで」、「誰が」、「何を」、「どのように」、「どうした」等の属性であっても良い。なお、入力文字列は、例えば１文字以上の文字で構成される。ここでの文字は、例えば絵文字等を含んでも良い。
【００２２】
フィールド情報が入力内容属性と対応付けられているということは、例えば、各フィールド情報に対応する入力フィールドと、入力内容属性との対応関係が、結果的に、ユーザが認識できる状態となっていることを意味する。例えば、フィールド識別情報と、この識別情報が示すフィールド情報の入力内容属性との対応関係を、ユーザに予め認知させておくことや、各フィールド情報を用いて表示される各入力フィールドと、各入力フィールドの入力内容属性との対応関係を、ユーザに通知すること等により、ユーザに予め認知させておくことであっても良い。例えば、１番上に表示される入力フィールドは、日付を入力するための入力フィールドであり、２番目に表示される入力フィールドは、場所を入力するための入力フィールドであることを、ユーザに予め通知しておくようにしても良い。また、各フィールド情報を用いて表示される入力フィールドと対応付けられた位置（例えば、近接する位置）に、各入力フィールドの入力内容属性を示す文字列や画像等を表示することであっても良い。また、フィールド情報が入力内容属性と対応付けられているということは、フィールド情報が、入力内容属性を示す情報を有することであっても良いし、フィールド情報と、入力内容属性を示す情報とを有する１または２以上の情報が、フィールド情報格納部１１に格納されていることであっても良い。
【００２３】
なお、入力内容属性を示す情報を、上述したフィールド識別情報としても用いても良い。また、一のフィールド情報が複数のフィールド識別情報と対応付けられていても良い。
【００２４】
フィールド情報格納部１１に格納されている複数のフィールド情報は、各フィールド情報に対応する入力フィールドに入力される入力文字列の配列順と対応付けられている。フィールド情報に対応する入力フィールドとは、例えば、フィールド情報を用いて表示される文字列の入力フィールドである。入力文字列の配列順とは、後述する文章作成部１７が、複数の入力文字列を配列する際の順番である。入力文字列の配列順とは、例えば、後述する文章作成部１７が、出力用の文章を作成するために複数の入力文字列を配列する順番である。入力文字列の配列順は、入力文字列の連結される順番や、出力される順番であっても良い。ただし、ここでの配列順は、入力文字列間における配列順であって、他の情報の配列順は考慮しなくてもよい。なお、配列順は、先頭となる位置からの配列順であっても、最後尾となる位置からの配列順であっても良い。あるいは、特定の位置を基準として、その前後に文字列を配列する際の配列順であっても良い。なお、フィールド情報に対応する入力フィールドに入力される入力文字列を、以下、フィールド情報に対応する入力文字列と呼ぶ場合がある。
【００２５】
複数のフィールド情報が、各フィールド情報に対応する入力文字列の配列順と対応付けられているということは、例えば、複数のフィールド情報が、それぞれに対応する入力フィールドに入力される入力文字列の配列順を示す情報と対応付けられていることである。配列順を示す情報とは、例えば、配列される順番を示す番号や記号等である。配列順を示す情報は、例えば、降順または昇順の連番である。配列順を示す情報は、各フィールド情報が有していても良い。例えば、各フィールド情報が、配列順を示す情報を有していても良いし、各フィールド情報またはフィールド識別情報と、配列順を示す情報とを有する情報が、フィールド情報格納部１１に格納されていても良い。
【００２６】
また、複数のフィールド情報に対応する入力文字列の配列順が結果的に決定できる状態であることを、複数のフィールド情報が、各フィールド情報に対応する入力文字列の配列順と対応付けられていることとと考えても良い。例えば、各フィールド情報のフィールド識別情報が、各フィールド情報に対応する入力文字列の配列順に配列されてフィールド情報格納部１１に格納されていることであっても良い。また、例えば、フィールド情報格納部１１に格納されている状態での各フィールド情報の配列順を、各フィールド情報に対応する入力文字列の配列順として用いられる場合も、複数のフィールド情報が、各フィールド情報に対応する入力文字列の配列順と対応付けられていると考えても良い。また、各フィールド情報に対応する入力フィールドを表示する際の配列順が指定されている場合において、この配列順と同じ順番が、各フィールド情報に対応する入力文字列の配列順として用いられる場合、複数のフィールド情報が、各フィールド情報に対応する入力文字列の配列順と対応付けられていると考えても良い。
【００２７】
また、各フィールド情報は、各フィールド情報に対応する入力フィールドの表示順と対応付けられていても良い。入力フィールドの表示順とは、例えば、入力フィールドを画面等に配列して表示する際の配列の順番である。なお、入力フィールドを表示する際の配列順を、以下、入力フィールドの表示順と呼ぶ。
【００２８】
各フィールド情報が、各フィールド情報に対応する入力フィールドの表示順と対応付けられているということは、例えば、各フィールド情報が、対応する入力フィールドの表示順を示す情報と対応付けられていることである。配列順を示す情報については、上述した配列順を示す情報と同様の、順番を示す番号等である。例えば、各フィールド情報が、対応する入力フィールドの表示順を示す情報を有していても良い。また、各フィールド情報またはその識別情報と、対応する入力フィールドの表示順を示す情報とを有する情報がフィールド情報格納部１１に格納されていても良い。
【００２９】
また、複数のフィールド情報に対応する入力フィールドの表示順が、結果的に決定できる状態であることを、複数のフィールド情報が、各フィールド情報に対応する入力フィールドの表示順と対応付けられていることと考えても良い。例えば、フィールド情報格納部１１に格納されている状態での各フィールド情報の配列順が、各フィールド情報に対応する入力フィールドの表示順として用いられる場合も、複数のフィールド情報が、各フィールド情報に対応する入力フィールドの表示順と対応付けられていると考えても良い。
【００３０】
なお、上述した各入力フィールドに入力される入力文字列の配列順と、各フィールド情報に対応する入力フィールドの表示順とは、同じものとしても良いし、異なるものとしても良い。各フィールド情報に対応する入力フィールドの表示順を、上述した各入力フィールドに入力される入力文字列の配列順としても用いることが、ユーザに、表示されている入力フィールドの配列順と、入力フィールドに入力された入力文字列が配列される順番とを視覚的に伝達できることから好ましい。
【００３１】
なお、フィールド情報格納部１１には、入力フィールドが配置されるページや台紙等の情報を有していてもよい。
【００３２】
フィールド情報格納部１１は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。かかることは、以下の格納部においても同様である。
【００３３】
連結文字列格納部１２には、１以上の連結文字列が格納される。連結文字列は、入力文字列に連結される文字列である。連結文字列は、入力文字列の前、または後の少なくとも一方に連結される。連結文字列は、連続して配置される２つの入力文字列を連結する文字列であっても良い。ここでの連結とは、例えば、連結文字列と入力文字列と繋げることや、並べること、接続すること等である。また、入力文字列に隣接して配置されることであってもよい。なお、連結文字列は、予め指定された文字列等を介して、入力文字列と連結されても良い。また、複数の連結文字列が、入力文字列に連結されても良い。
【００３４】
連結文字列は、入力文字列に関連する文字列である。具体的には、連結文字列は、連結される入力文字列に関連する文字列である。連結文字列とは、例えば、入力文字列と連結された場合に、１または２以上の文節を構成する文字列である。このような連結文字列としては、例えば、助詞や助動詞、接尾語、接頭語等がある。また、連結文字列は入力文字列と連結された場合に、自然言語文の一部として成立する文字列である。また、連結文字列は、例えば、接続語であっても良い。また、連結文字列は、句読点や括弧等やコロン等の特殊文字や記号を含んでいても良い。また、連結文字列は、改行コードやスペース等の非表示のコード等を有していても良い。
【００３５】
連結文字列は、例えば、フィールド情報と対応付けられている。連結文字列は、通常、連結される入力文字列が入力される入力フィールドに関するフィールド情報と対応付けられている。例えば、連結文字列と、フィールド情報またはそのフィールド識別情報とを有する情報が、連結文字列格納部１２に格納されている。例えば、フィールド識別情報「ｆｉｅｌｄＡ」と、連結文字列「は、」とを有する情報等が、連結文字列格納部１２に格納されていてもよい。更に、これらの情報は、連結文字列がフィールド情報の前または後ろのいずれに連結されるかを示す連結位置の情報を有していても良い。また、このような連結位置の情報を有さない場合は、例えば、予め指定されている位置を連結位置としてもよい。なお、フィールド情報またはそのフィールド識別情報と、連結文字列とが、連結されて連結文字列格納部１２に格納されていても良い。
【００３６】
また、複数の入力フィールドと、各入力フィールドに入力される入力文字列の配列順を示す情報と、各入力文字列に連結される連結文字列とを対応付けた情報を、フィールド情報格納部１１に蓄積しておくようにしても良い。また、複数の入力フィールドに入力される入力文字列をその配列順に配列した場合の各入力文字列に連結される連結文字列を配列した情報を、異なる配列毎にフィールド情報格納部１１に蓄積しておくようにしても良い。
【００３７】
一のフィールド情報と連結文字列との対応関係は、一対一であっても一対多であってもよい。フィールド情報と連結文字列との対応関係が一対多であるということは、一のフィールド情報に対して対応付けられる１以上の連結文字列を、複数の連結文字列の中から選択可能であることと考えても良いし、一のフィールド情報に入力される文字列の前後にそぞれ連結される複数の連結文字列が格納されていることと考えても良い。あるいは、一のフィールド情報に入力される文字列に前及び後ろのいずれか一方に連続して連結される複数の連結文字列が格納されていることと考えても良い。
【００３８】
一のフィールド情報には、例えば、このフィールド情報に対応する入力文字列の配列順にそれぞれ応じた複数の連結文字列が対応付けられている。入力文字列の配列順と、この配列順に応じた複数の連結文字列とは、どのように対応付けられていてもよい。
【００３９】
例えば、一のフィールド情報に対応する入力フィールドに入力される入力文字列の配列順に関する複数の条件と、複数の連結文字列とがそれぞれ対応付けられていても良い。例えば、連結文字列格納部１２には、フィールド情報またはフィールド識別情報と、１または２以上の連結文字列と、配列順に関する条件とを有する複数の情報を、格納するようにしても良い。この場合、例えば、一のフィールド情報に対応する入力文字列には、この入力文字列の配列順が条件を満たす配列順に関する条件と対応付けられた１または２以上の連結文字列が連結されるようにすればよい。なお、この条件については後述する。
【００４０】
なお、連結文字列は、全てのフィールド情報に対応付けられていなくても良い。例えば、少なくとも、表示部１３が一の画面等に一度に表示する複数のフィールド情報のうちの、少なくとも１以上が連結文字列と対応付けられていても良い。例えば、特定のフィールド情報は、連結文字列と対応付けられていないようにしても良い。
【００４１】
表示部１３は、フィールド情報格納部１１に格納されている複数のフィールド情報に対応する複数の入力フィールドを表示する。表示部１３は、複数のフィールド情報に対応する入力フィールドを、各フィールド情報に対応付けられた入力フィールドの表示順にしたがって配列して出力する。表示部１３は、例えば、複数のフィールド情報が有するサイズや位置等の情報を用いて、複数の入力フィールドを表示する。表示部１３は、フィールド情報格納部１１に入力フィールドが配置されるページ等の情報が含まれる場合、このページ等の情報を用いて生成したページの画像であって、フィールド情報に対応する入力フィールドを配置したページの画像を生成し、表示するようにしてもよい。なお、表示部１３は、各フィールドに対応付けられた連結文字列を表示しないようにしても良い。連結文字列を表示しないことで、ユーザに、入力フィールドに文字列を入力させる際に、入力フィールドに入力される文字列間のつながり等を細かく気にしないようにさせることができ、自由な文字列の入力を促すことができる。なお、ここでの表示とは、表示用のデータ等を、モニタ等の表示デバイスや、他の表示が可能なデバイス等に送信することも含む概念である。
【００４２】
表示部１３は、モニタ等の表示デバイスを含むと考えても含まないと考えても良い。表示部１３は、表時デバイスのドライバーソフトまたは、表示デバイスのドライバーソフトと表時デバイス等で実現され得る。
【００４３】
受付部１４は、表示部１３が表示する複数の入力フィールドに対してそれぞれ入力文字列を受け付ける。受付部１４は、例えば、表示部１３が表示する入力フィールドを介して入力文字列を受け付ける。受付部１４は、例えば、複数の入力フィールドに対して、各入力フィールドに関するフィールド情報と対応付けられた入力内容属性が示す属性の入力文字列の入力を受け付ける。一の入力フィールドに対して入力文字列を受け付けるということは、一の入力フィールドに対応するフィールド情報に対して入力文字列を受け付けることと考えても良い。
【００４４】
入力文字列の受け付けとは、キーボードやマウス、タッチパネルなどの入力デバイスから入力された情報の受け付け、有線もしくは無線の通信回線を介して送信された情報の受信、光ディスクや磁気ディスク、半導体メモリなどの記録媒体から読み出された情報の受け付けなどを含む概念である。入力文字列の入力手段は、テンキーやタッチパネルやキーボードやマウスやメニュー画面によるもの等、何でも良い。受付部１４は、テンキーやタッチパネルやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
【００４５】
変更指示受付部１５は、１または２以上のフィールド情報に対応付けられている入力フィールドに入力される入力文字列の配列順を変更する指示である配列変更指示を受け付ける。ここでの変更指示は、１または２以上のフィールド情報に対して、このフィールド情報に入力される入力文字列の配列順を所望の順番に変更する指示であっても良いし、配列順を前または後ろに所望の数だけ移動させる指示であっても良い。また、１または２以上のフィールド情報に対して、このフィールド情報に入力される入力文字列の配列順を示す情報の値を、所望の順番を示す値に書き換える指示であっても良い。
【００４６】
また、フィールド情報に対応する入力フィールドの表示順を、入力文字列の配列順として用いる場合、フィールド情報に対応する入力フィールドの表示順を変更する指示を、配列変更指示と考えても良い。この場合の配列変更指示は、１または２以上のフィールド情報に対して、このフィールド情報に対応する入力フィールドの表示順を所望の順番に変更する指示であっても良いし、配列順を前または後ろに所望の数だけ移動させる指示であっても良い。また、１または２以上のフィールド情報に対して、このフィールド情報に対応する入力フィールドの表示順を示す情報の値を、所望の順番を示す値に書き換える指示であっても良い。
【００４７】
なお、フィールド情報に対応する入力フィールドの表示順を、入力文字列の配列順として用いる場合等においては、配列変更指示の受け付けは、例えば、配列順を変更させたい入力フィールドを表示部１３が表示する画面上でドラッグすることで行うようにしても良い。この場合、変更後の入力フィールドが配列されている順番を変更後の配列順の値等として取得するようにしてもよい。
【００４８】
ここでの受け付けとは、キーボードやマウス、タッチパネルなどの入力デバイスから入力された情報の受け付け、有線もしくは無線の通信回線を介して送信された情報の受信、などを含む概念である。配列変更指示の入力手段は、テンキーやキーボードやタッチパネルやマウスやメニュー画面によるもの等、何でも良い。変更指示受付部１５は、テンキーやタッチパネルやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
【００４９】
配列変更部１６は、複数のフィールド情報に対応付けられている入力文字列の配列順を、変更指示受付部１５が受け付けた配列変更指示に応じて変更する。ここでの変更は、複数のフィールド情報に対応付けられている入力文字列の配列順を、配列変更指示に従って並べ替えることと考えても良い。
【００５０】
配列順を変更するということは、例えば、１または２以上のフィールド情報に対応付けられている入力文字列の配列順を示す情報の値を、配列変更指示により変更された値に変更することである。
【００５１】
例えば、配列変更部１６は、配列変更指示の対象となるフィールド情報に対応付けられた入力文字列の配列順が、配列変更指示が示す配列順となるように、配列変更指示の対象となるフィールド情報と、他のフィールド情報のうちの少なくとも１以上のフィールド情報に対応付けられた入力文字列の配列順を示す情報を変更する。例えば、対応する入力文字列の配列順が３番目であるフィールド情報に対して、配列順を１番目に変更する配列変更指示を変更指示受付部１５が受け付けた場合、配列変更部１６は、配列順が３番目であったフィールド情報の配列順を示す値を「３」から「１」に変更する。また、この変更に伴って、他のフィールド情報の配列順を示す情報の値も適宜変更する。例えば、配列順が１番目であったフィールド情報の配列順を示す値を「１」から「２」に変更し、配列順が２番目であったフィールド情報の配列順を示す値を「２」から「３」に変更する。
【００５２】
また、配列順を変更するということは、例えば、フィールド情報格納部１１等に格納されている状態での各フィールド識別情報の配列順が、入力文字列の配列順を示す場合、この各フィールド識別情報の配列順を、配列変更指示が示す配列順に並べ替えることである。
【００５３】
また、フィールド情報に対応する入力フィールドの表示順を、入力文字列の配列順として用いる場合において、複数のフィールド情報に対応する入力フィールドの表示順を変更する指示を、配列変更指示として受け付けた場合、配列変更部１６は、例えば、入力フィールドの表示順を配列変更指示が示す配列順に変更する。例えば、配列変更部１６は、１または２以上のフィールド情報に対応付けられている、対応する入力フィールドの表示順を示す情報の値を変更する。また、例えば、入力フィールドの表示順を示すフィールド情報格納部１１等に格納されている状態での各フィールド識別情報の配列を、配列変更指示が示す配列順に並べ替えてもよい。
【００５４】
配列変更部１６は、通常、ＭＰＵやメモリ等から実現され得る。配列変更部１６の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００５５】
文章作成部１７は、複数の入力フィールドのそれぞれについて受付部１４が受け付けた入力文字列を、１または２以上の連結文字列と連結して配列して文章を作成する。連結文字列を介して配列するということは、例えば、入力文字列間に１以上の連結文字列が配置されるよう入力文字列を配列することと考えても良い。なお、連結文字列は最終的に入力文字列と連結されていれば良く、連結文字列と入力文字列とを連結するタイミングは問わない。例えば、連結文字列と入力文字列とを連結した後、この連結した文字列を入力文字列の配列順に配列しても良いし、入力文字列の配列後に、各入力文字列に連結文字列を連結してもよい。また、入力文字列を１つずつ配列順に従って配置するとともに、各入力文字列を配置する際に、各入力文字列に連結させる連結文字列を配置するようにしても良い。また、連結文字列と入力文字列とは、必ずしも直接連結しなくても良く、例えば、予め指定された文字列等を挟んで連結しても良い。また、対応する連結文字列がない入力文字列については、連結文字列を接続しなくても良い。文章作成部１７が作成する文章は、一の文章であっても良いし、複数の文章であってもよい。また、ここで作成される文章とは、自然言語文である。また、文章作成部１７が作成する一の文章は、通常、句点等で終了するが、必ずしも句点で終了しなくても良い。
【００５６】
文章作成部１７が作成する文章は、例えば、新聞記事である。ここでの新聞記事とは、例えば、日刊誌や、週刊誌、社内報、広報誌、機関誌、学生新聞、回覧板、ＰＲ紙等に用いられる記事も含む概念である。
【００５７】
文章作成部１７は、例えば、複数のフィールド情報に対応付けられた入力文字列の配列順に従って、入力文字列を配列して文章を作成する。例えば、複数のフィールド情報に対応付けられた入力文字列の配列順を示す情報が示す配列順に、各フィールド情報に対応する入力フィールドに入力された入力文字列を配列して文章を作成する。また、例えば、文章作成部１７は、フィールド情報格納部１１に格納されている状態での複数のフィールド情報またはフィールド識別情報の配列順に、各フィールド情報に対応する入力フィールドに入力された入力文字列を配列して文章を作成する。また、上述した配列変更指示に応じて、入力文字列の配列順が変更されている場合、文章作成部１７は、この変更された配列順に従って入力文字列を配列して文章を作成する。なお、ここでの入力文字列の配列とは、連結文字列を連結した入力文字列の配列である。また、ここでの入力文字列の配列順は、入力文字列間に配置される連結文字列等の文字列の違いを考慮しない配列順と考えて良い。ここでの配列は、メモリ等の記憶媒体に蓄積する際の蓄積順等と考えても良い。
【００５８】
文章作成部１７が、どのように、各入力文字列に連結する連結文字列を決定するかは問わない。例えば、文章作成部１７は、ランダムに各入力文字列に連結する連結文字列を決定しても良い。また、予め、複数の入力フィールドと、各入力フィールドに入力される入力文字列の配列順と、各入力文字列に連結される連結文字列とを対応付けて連結文字列格納部１２に格納しておくようにして、受付部１４が各入力フィールドについて受け付けた各入力文字列に連結する連結文字列として、各入力フィールドと、各入力フィールドに入力された入力文字列の配列順とに対応した連結文字列を選択的に連結文字列格納部１２から取得するようにしても良い。
【００５９】
文章作成部１７は、例えば、受付部１４が受け付けた各入力文字列に対し、入力文字列を受け付けた入力フィールドに対応するフィールド情報に対応付けられた連結文字列を連結し、連結した入力文字列を配列して文章を作成する。
【００６０】
例えば、一のフィールド情報に対応付けられた連結文字列が一つである場合や、一のフィールド情報に対して、このフィールド情報に対応する入力文字列に連結される連結文字列が予め指定されている場合には、文章作成部１７は、一の連結文字列や、予め指定された連結文字列を、一のフィールド情報に対応する入力フィールドに入力された入力文字列に連結する連結文字列として決定する。
【００６１】
また、例えば、一のフィールド情報に対応付けられた連結文字列が複数である場合、文章作成部１７は、この複数の連結文字列の中から選択した１以上の連結文字列を、一のフィールド情報に対応する入力フィールドに入力された入力文字列に連結する連結文字列として決定する。
【００６２】
一のフィールド情報に対応付けられた連結文字列が複数である場合において、文章作成部１７が、複数の連結文字列の中から一以上の連結文字列をどのように選択するかは問わない。
【００６３】
例えば、一のフィールド情報に対応付けられた複数の連結文字列のそれぞれに、上述したように、配列順に関する条件が対応付けられている場合、文章作成部１７は、この一のフィールド情報に対応する入力文字列の配列順が条件を満たす配列順に関する条件と対応付けられた連結文字列を、この一のフィールド情報に対応付けられた複数の連結文字列の中から選択しても良い。例えば、一のフィールド情報に対応する入力文字列の配列順を示す情報を取得し、取得した配列順が条件を満たす配列順に関する条件と対応付けられた連結文字列を、この一のフィールド情報に対応付けられた複数の連結文字列の中から選択しても良い。
【００６４】
配列順に関する条件は、例えば、特定の配列順を指定する条件や、特定の配列順を除外する条件である。具体例を挙げると、特定の配列順を指定する条件は、例えば、１番目の配列順や、５番目の配列順を指定する条件である。また、特定の配列順を除外する条件は、例えば、４番目の配列順や、５番目の配列順を除外対象として指定する条件である。
【００６５】
例えば、一のフィールド情報に対応付けられた複数の連結文字列のそれぞれに、配列順に関する条件として、特定の配列順を示す情報が対応付けられている場合、文章作成部１７は、この一のフィールド情報に対応する入力文字列の配列順を示す情報を取得し、取得した配列順を示す情報と一致する配列順を示す情報と対応付けられた連結文字列を、この一のフィールド情報に対応付けられた複数の連結文字列の中から選択しても良い。
【００６６】
具体例を挙げると、一のフィールド情報に、配列順に関する条件である配列順を示す情報「１」と対応付けられた連結文字列「に」と、同条件である配列順を示す情報「２」と対応付けられた連結文字列「は」と、同条件である配列順を示す情報「３」と対応付けられた連結文字列「へ」とが対応付けられており、一のフィールド情報に対応付けられた入力文字列の配列順を示す情報が「２」であったとする。この一のフィールド情報に対応する入力フィールドに、例えば、「東京」という入力文字列が入力されると、文章作成部１７は、配列順を示す情報が「２」であって、配列順に関する条件である「２」を満たすため、この配列順に関する条件である「２」に対応付けられた連結文字列「は」を、上記の複数の連結文字列から取得する。
【００６７】
また、配列順に関する条件は、例えば、配列順の範囲を指定する条件や、配列順の範囲を除外する条件である。配列順の範囲を指定する条件の具体例は、３番目以降の配列順を指定する条件や、３から６番目までの配列順を指定する条件である。配列順の範囲を除外する条件は、例えば、２から３番目までの除く条件や、４番目以降を除外する条件である。
【００６８】
例えば、配列順に関する条件が配列順の範囲を指定する条件である場合、文章作成部１７は、入力文字列を受け付けた入力フィールドを示すフィールド情報に対応付けられた入力文字列の配列順の情報を取得し、取得した情報が示す配列順を含む配列順の範囲を示す条件と対応付けられた連結文字列を取得する。
【００６９】
また、配列順に関する条件は、他のフィールド情報に対応する入力フィールドに入力された入力文字列との位置関係を指定する条件であっても良い。例えば、特定のフィールド識別情報のフィールド情報に対応する入力文字列よりも、配列順が前であるという条件や、特定のフィールド識別情報のフィールド情報に対応する入力文字列の次の配列順であるという条件である。
【００７０】
例えば、配列順に関する条件が特定のフィールド情報に対応する入力フィールドに入力された入力文字列との位置関係を指定する条件である場合、文章作成部１７は、入力文字列を受け付けた入力フィールドを示すフィールド情報に対応付けられた入力文字列の配列順の情報を取得し、取得した情報が示す配列順が、配列順に関する一の条件が指定する特定のフィールド情報に対応する入力フィールドに入力された入力文字列の配列順に対して、この条件が指定する位置関係である場合に、この一の条件に対応付けられた連結文字列を取得する。
【００７１】
また、配列順に関する条件は、他のいずれの条件も満たさない配列順を指定する条件であっても良い。
【００７２】
なお、一の入力文字列の配列順を示す情報は、例えば、フィールド情報に対応付けられた配列順を示す情報を取得しても良いし、入力文字列の配列順や、フィールド情報格納部１１に格納されている状態のフィールド情報またはフィールド識別情報の配列順をカウントすること等により取得しても良い。
【００７３】
また、通常、文章作成部１７は、連結文字列を、受付部１４が受け付けた各入力文字列に対して、デフォルトで指定された位置（例えば、入力文字列の前または後等）に連結するが、連結文字列あるいはフィールド情報が、連結文字列の連結位置を指定する情報を有する場合、この情報が示す位置に連結文字列を連結することが好ましい。
【００７４】
なお、文章作成部１７は、入力文字列に連結される１以上の連結文字列を、入力文字列の配列順に応じて変更するようにしてもよい。例えば、上記のように、配列順に関する条件を用いて文章を作成する場合、配列変更部１６が入力文字列の配列順を変更した以降に、文章作成部１７が、変更された配列順を利用して上記と同様に文章を作成する処理を行うことで、入力文字列に連結される１以上の連結文字列は、入力文字列の配列順に応じて変更される。なお、配列順に応じて変更するということは、配列順に応じて変更されないことも含む概念であると考えてもよい。
【００７５】
文章出力部１８は、文章作成部１７が作成した文章を出力する。ここでの出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタへの印字、音出力、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。
【００７６】
文章出力部１８は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。文章出力部１８は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
【００７７】
次に、文章作成装置１の動作の一例について図２のフローチャートを用いて説明する。なお、ここでは、連結文字列格納部１２には、一のフィールド情報に対して、複数の連結文字列が対応付けられて格納されており、更に、各連結文字列には、それぞれ配列順に関する条件が対応付けられているものとする。
【００７８】
（ステップＳ１０１）表示部１３は、フィールド情報格納部１１に格納されている複数のフィールド情報を読み出し、各フィールド情報に対応する入力フィールドを、各フィールド情報に対応付けられた表示順にしたがって配列して表示する。
【００７９】
（ステップＳ１０２）受付部１４は、ステップＳ１０１で表示した各入力フィールドのうちの１または２以上に対して入力文字列を受け付けたか否かを判断する。例えば、受付部１４は、ステップＳ１０１で表示した全ての入力フィールドに対して入力文字列を受け付けたか否かを判断する。あるいは、予め指定されたｋ（ただし、ｋは２以上の整数）以上の入力フィールドに対して入力文字列を受け付けたか否かを判断してもよい。受け付けた場合、ステップＳ１０３に進み、受け付けていない場合、ステップＳ１１６に進む。ここでの入力文字列の受付は、既に入力されている入力文字列の変更であっても良い。
【００８０】
（ステップＳ１０３）文章作成部１７は、カウンターｍの値に１を代入する。
【００８１】
（ステップＳ１０４）文章作成部１７は、ステップＳ１０２で受け付けた入力文字列から、文章を作成する際の入力文字列の配列順がｍ番目である入力文字列を取得する。
【００８２】
（ステップＳ１０５）文章作成部１７は、カウンターｎの値に１を代入する。
【００８３】
（ステップＳ１０６）文章作成部１７は、対応付けられている入力文字列の配列順がｍ番目であるフィールド情報に対応付けられた連結文字列のうちの、ｎ番目の連結文字列と対応付けられた配列順に関する条件を読み出す。
【００８４】
（ステップＳ１０７）文章作成部１７は、配列順の値ｍが、ステップＳ１０６で読み出した配列順に関する条件を満たすか否かを判断する。満たす場合、ステップＳ１０８に進み、満たさない場合、ステップＳ１１０に進む。
【００８５】
（ステップＳ１０８）文章作成部１７は、ｎ番目の連結文字列を取得する。
【００８６】
（ステップＳ１０９）文章作成部１７は、ｍ番目の入力文字列にｎ番目の連結文字列を連結して、ｍ番目の配列順番となるように配列する。文章作成部１７は、例えば、ｍ番目の入力文字列にｎ番目の連結文字列を連結した文字列を、ｍ番目の配列順番となるように図示しない記憶媒体等に追記する。そしてステップＳ１１３に進む。
【００８７】
（ステップＳ１１０）文章作成部１７は、カウンターｎの値を１インクリメントする。
【００８８】
（ステップＳ１１１）文章作成部１７は、ｎ番目の連結文字列と対応付けられた配列順に関する条件が連結文字列格納部１２に格納されているか否かを判断する。格納されている場合、ステップＳ１０６に戻り、格納されていない場合、ステップＳ１１２に進む。
【００８９】
（ステップＳ１１２）文章作成部１７は、ｍ番目の入力文字列を、ｍ番目の配列順番となるように配列する。文章作成部１７は、例えば、ｍ番目の入力文字列を、ｍ番目の配列順番となるように図示しない記憶媒体等に追記する。そしてステップＳ１１３に進む。
【００９０】
（ステップＳ１１３）文章作成部１７は、カウンターｍの値を１インクリメントする。
【００９１】
（ステップＳ１１４）文章作成部１７は、配列順がｍ番目の入力文字列があるか否かを判断する。ある場合、ステップＳ１０４に戻り、ない場合、ステップＳ１１５に進む。
【００９２】
（ステップＳ１１５）文章出力部１８は、ステップＳ１０９及びステップＳ１１２において連結文字列を連結した入力文字列を配列して作成した文章を出力する。そして、ステップＳ１０２に戻る。
【００９３】
（ステップＳ１１６）変更指示受付部１５は、配列変更指示を受け付けたか否かを判断する。受け付けた場合、ステップＳ１１７に進み、受け付けていない場合、ステップＳ１０２に戻る。
【００９４】
（ステップＳ１１７）配列変更部１６は、ステップＳ１１６において受け付けた配列変更指示に応じて、フィールド情報に対応付けられた入力文字列の配列順を変更する。なお、例えば、フィールド情報に対応する入力フィールドが表示される際の配列順を、この入力フィールドに入力される入力文字列の配列順としても用いる場合において、入力フィールドが表示される際の配列順を変更した場合には、表示部１３が表示する入力フィールドの表示される配列順も変更する。
【００９５】
（ステップＳ１１８）文章作成部１７は、表示部１３が表示した入力フィールドについて、入力文字列を受け付け済であるか否かを判断する。受け付け済であれば、ステップＳ１０３に進み、受け付けていない場合、ステップＳ１０２に戻る。
【００９６】
なお、図２のフローチャートにおいて、ステップＳ１０４において、ｍ番目の入力文字列がない場合や、ｍ番目の入力文字列がＮｕｌｌ値である場合等においては、ステップＳ１１３に進むようにしても良い。
【００９７】
なお、図２のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
【００９８】
（具体例）
以下、本実施の形態における文章作成装置１の具体的な動作について説明する。
【００９９】
ここでは、文章作成装置１で作成する文章が、町内会の広報誌である場合を例に挙げて説明する。広報誌は、新聞の一種である。
【０１００】
なお、この具体例においては、フィールド情報に対応する入力フィールドが表示される際の配列順を、この入力フィールドに入力される入力文字列の配列順としても用いる場合について説明する。
【０１０１】
図３は、フィールド情報格納部１１に格納されているフィールド情報を管理するフィールド情報管理情報である。フィールド情報管理情報は、「フィールドＩＤ」、「高さ」、「幅」、「入力属性」という属性を有している。「ＩＤ」はフィールド識別情報、「高さ」は、表示される入力フィールドの高さ、「幅」は、表示される入力フィールドの幅である。なお、ｘ１，ｙ１等はここでは任意の数値であるとする。「入力属性」は、入力内容属性を示す情報であり、ここでは、テキスト情報である。
【０１０２】
図４は、フィールド情報に対応する入力フィールドの表示順を管理する配列管理情報である。「フィールドＩＤ」は、フィールド識別情報である。「配列順」は、対応するフィールド識別情報が示すフィールド情報に対応する入力フィールドの表示順を示す情報である。なお、ここでは、この配列順を示す情報を、この入力フィールドに入力される入力文字列の配列順を示す情報としても利用するものとする。表示の際は対応付けられた配列順の値の昇順に従って、上から下に入力フィールドが表示されるものとする。また、入力文字列を配列する際には、対応付けられた配列順の値の昇順に従って、文章の先頭側から後尾側に向かって入力文字列が配列されるものとする。
【０１０３】
図５は、連結文字列格納部１２に格納されている連結情報を管理する連結情報管理情報である。連結情報管理情報は、「連結ＩＤ」と、「フィールドＩＤ」と、「連結語」と、「配列順条件」という属性を有している。「連結ＩＤ」は連結語の識別情報、「フィールドＩＤ」は連結語の連結先となる入力文字列に対応するフィールド情報のフィールド識別情報であり、図３の「フィールドＩＤ」に対応する。「連結語」は連結語、「配列順条件」は、配列順に関する条件である。なお、ここでは、「配列順条件」を、自然言語で表しているが、「配列順条件」は、例えば、これらの自然言語に相当する一以上の関数や、メソッド名や、「ｉｆ」、「ｔｈｅｎ」等で示される制御構文等で構成されていてもよい。また、「配列順条件」は、これらの自然言語に対応する判断処理等を行うためのアルゴリズムであっても良い。
【０１０４】
まず、ユーザが文章を作成するために、文章作成装置１の受付部１４等に入力フィールドを表示させる指示を与えたとする。
【０１０５】
表示部１３は、図４に示した配列順管理情報において、「配列順」の値が小さいレコード（行）から順に「フィールドＩＤ」の値を読み出し、図３に示したフィールド情報管理情報の、読み出した「フィールドＩＤ」の値と一致する「フィールドＩＤ」の値を有するレコード（行）から順に、「高さ」、「幅」、および「入力内容」の属性値を読み出す。そして、読み出した「高さ」の値が示す高さと、「幅」の値が示す幅の入力フィールドの画像を作成する。そして、作成した入力フィールドに近接した上部に、「入力内容」の属性値である文字列を配置する。そして、作成した入力フィールドを、「配列順」の値が小さいものから順に上から下へ向かって配列する。そして、表示部１３は、図４に示した配列順管理情報で管理されている全てのレコードに対応する入力フィールドを配置した画面をモニタに表示する。なお、各入力フィールド間の間隔や一番上に表示される入力フィールドの位置等は、デフォルトの値等で予め指定されているものとする。
【０１０６】
図６は、入力フィールドの表示例を示す図である。モニタ５０に表示されている入力フィールド５１〜５６は、「フィールドＩＤ」が「Ｆ００１」〜「Ｆ００６」であるフィールド情報にそれぞれ対応している。各入力フィールド５１〜５６の上部に入力内容属性を示す文字列を表示することで、ユーザが、各入力フィールド５１〜５６にどのような内容の文字列を入力するかを把握することができる。
【０１０７】
次に、ユーザがマウスやキーボード等を用いて、各入力フィールド５１〜５６に、それぞれの入力内容属性が示す属性の文字列を入力したとすると、受付部１４は、入力された文字列を入力文字列として受け付ける。
【０１０８】
図７は、ユーザが文字列を入力した状態の入力フィールド５１〜５６を示す図である。ここでは、フィールドＩＤ「Ｆ００１」に対応する入力フィールドに「４月５日」、フィールドＩＤ「Ｆ００２」に対応する入力フィールドに「上野公園」、フィールドＩＤ「Ｆ００３」に対応する入力フィールドに「町内会のメンバー」、フィールドＩＤ「Ｆ００４」に対応する入力フィールドに「親睦を深める」、フィールドＩＤ「Ｆ００５」に対応する入力フィールドに「盛大」、フィールドＩＤ「Ｆ００６」に対応する入力フィールドに「花見を行った」という入力文字列をそれぞれ入力したとする。
【０１０９】
そして、作成ボタン６１を押すと、受付部１４は、各入力フィールド５１〜５６に入力された入力文字列と、対応するフィールドＩＤとを対応付けて有する入力文字列管理情報が、図示しない記憶媒体等に一時記憶される。
【０１１０】
図８は、一時記憶された入力文字列管理情報を示す図である。
【０１１１】
次に、文章作成部１７は、配列順が１番目である入力文字列の連結文字列を取得する処理を行う。
【０１１２】
まず、図４に示した配列順管理情報の「配列順」の値が「１」であるレコード（行）の「フィールドＩＤ」の値を読み出す。ここでは、「Ｆ００１」を読み出す。
【０１１３】
次に、図８に示した入力文字列管理情報の「フィールドＩＤ」の値が「Ｆ００１」であるレコードから、「入力文字列」の値である「４月５日」を読み出す。
【０１１４】
また、文章作成部１７は、図５に示した連結情報管理情報において、「フィールドＩＤ」の値が「Ｆ００１」であるレコードを検索し、検出したレコードのうちの１番目のレコードの「配列順条件」を読み出す。読み出した「配列順条件」は、「配列順がＦ００６より前」という条件である。そして、連結文字列を取得しようとしている入力文字列の配列順が、読み出した条件を満たすか否かを判断する。ここでは、まだ「Ｆ００６」という「フィールドＩＤ」に対応している入力文字列は配列していないため、文章作成部１７は、上記で読み出した入力文字列「４月５日」については、「配列順がＦ００６より前」という配列順に関する条件を満たすと判断する。
【０１１５】
このため、文章作成部１７は、「フィールドＩＤ」の値が「Ｆ００１」であるレコードのうちの１番目のレコードの「連結文字列」の値「に、」を連結情報管理情報から読み出す。そして、入力文字列「４月５日」に、読み出した連結文字列「に、」を連結する。ここでは、連結文字列は全て対応する入力文字列の直後に連結されるよう予め指定されているとする。このため、文章作成部１７は、「４月５日」の直後に「に、」を連結した文字列「４月５日に、」を１番目に配列される文字列として取得し、この文字列を図示しない記憶媒体等に一時記憶する。
【０１１６】
次に、文章作成部１７は、配列順が２番目である入力文字列の連結文字列を取得する処理を行う。
【０１１７】
まず、図４に示した配列順管理情報から、「配列順」の値「２」に対応するフィールドＩＤ「Ｆ００２」を読み出す。
【０１１８】
次に、図８に示した入力文字列管理情報の「フィールドＩＤ」の値が「Ｆ００２」であるレコードから、「入力文字列」の値である「上野公園」を読み出す。
【０１１９】
また、文章作成部１７は、図５に示した連結情報管理情報の「フィールドＩＤ」の値が「Ｆ００２」であるレコードのうちの１番目のレコードから配列順に関する条件「配列順が６以外」を読み出し、連結文字列を取得しようとしている入力文字列の配列順が、読み出した条件を満たすか否かを判断する。ここでは、連結文字列を取得しようとしている入力文字列の配列順の値が「２」であるため、「配列順が６以外」という条件を満たすと判断する。このため、「フィールドＩＤ」の値が「Ｆ００２」であるレコードのうちの１番目のレコードの「連結文字列」の値「に、」を読み出す。そして、読み出した入力文字列「上野公園」に、読み出した連結文字列「に、」を連結した文字列「上野公園で、」を２番目に配列される文字列として取得し、この文字列を、上記で蓄積した１番目の文字列「４月５日に、」の直後に繋げて、図示しない記憶媒体等に一時記憶する。
【０１２０】
以下、同様の処理を図４に示した配列順管理情報の全てのレコードについて行う。これにより、最終的に図示しない記憶媒体に「４月５日に、上野公園で、町内会のメンバーが、親睦を深めるため、盛大に、花見を行った。」という文章が蓄積されたとする。
【０１２１】
文章出力部１８は、一時記憶された上記の文章を、図７に示した画面の、作成した文章を表示するためのプレビュー領域６２に出力、即ちここでは表示する。
【０１２２】
図９は、作成した文章の表示例を示す図である。
【０１２３】
なお、更に、文章出力部１８は、例えば、ユーザが保存ボタン６３等を押した場合に、作成した文章を、図示しない記憶媒体等に蓄積するようにしても良い。
【０１２４】
次に、ユーザが、入力フィールドの表示順を変更するために、図９に示した画面において、一番下に表示されている入力フィールド５６を、図１０に示すように、一番上に表示されている入力フィールド５１の上にマウス等でドラッグしたとする。
【０１２５】
この操作により、変更指示受付部１５は、入力フィールド５６が表示されている配列順を示す情報の値を入力フィールド５１の前の配列順に変更する配列変更指示を受け付けたとする。例えば、移動した入力フィールド５６の位置を示す座標（例えば、左上の座標）と、他の入力フィールド５１〜５５の位置を示す座標から、入力フィールド５６についての変更後の配列順を示す情報の値を取得して、入力フィールド５６の配列順を、この取得した配列順に変更する配列変更指示を受け付ける。なお、入力フィールド５６の変更後の配列順を示す値を、数値等で受け付けるようにしても良い。
【０１２６】
配列変更部１６は、変更指示受付部１５が受け付けた配列変更指示に従って、入力フィールド５６の配列順が入力フィールド５１の前の配列順になるよう、配列順管理情報の「配列順」の値を変更する。具体的には、入力フィールド５６は、フィールドＩＤ「Ｆ００６」に対応する入力フィールドであるため、配列変更部１６は、図４に示した配列順管理情報において、このフィールドＩＤ「Ｆ００６」のレコードの位置を、入力フィールド５１に対応するフィールドＩＤ「Ｆ００１」の一つ上の位置（ここでは、最も上の行）に移動させる。そして、配列順管理情報の「配列順」の値を、上から下に向かって「１」から始まる連番に変更する。つまり、リナンバリングする。これにより、入力フィールド５６の「配列順」が「１」となるように、配列順管理情報が更新される。
【０１２７】
図１１は、配列順が変更された配列順管理情報を示す図である。
【０１２８】
そして、表示部１３は、配列順が変更された図１１に示す配列順管理情報を用いて入力フィールド５１〜５６の表示を変更する。具体的には、入力フィールド５６が、一番上に位置し、その後、入力フィールド５１〜５５が順番に配列されるように、入力フィールドの配列順を変更する。
【０１２９】
また、ここでは、フィールド情報が示す入力フィールド５１〜５６に対して、既に入力文字列を受け付けているため、この入力文字列を、対応する入力フィールド内に表示する。
【０１３０】
なお、仮に、入力フィールド５６の配列順を、入力フィールド５１と入力フィールド５２との間に変更する指示を受け付けた場合、図４に示した配列順管理情報において、フィールドＩＤ「Ｆ００６」のレコードの位置を、入力フィールド５１に対応するフィールドＩＤ「Ｆ００１」と、入力フィールド５２に対応する入力フィールドＩＤ「Ｆ００２」とのレコードの間の位置（ここでは、上から２番目の行）に移動させ、配列順管理情報の「配列順」の値を、上から下に向かって「１」から始まる連番に変更する。これにより、入力フィールド５６の「配列順」が「２」となるように、配列順管理情報が更新される。
【０１３１】
また、ここでは、上述したように、フィールド情報が示す入力フィールド５１〜５６に対して、既に入力文字列を受け付けているため、この入力文字列と、図１１に示すように更新された配列順管理情報とを用いて、文章出力部１８が文章の作成を行う。
【０１３２】
まず、文章作成部１７は、配列順が１番目である入力文字列の連結文字列を取得する処理を行う。図１１に示した変更された配列順管理情報の「配列順」の値が「１」であるレコード（行）の「フィールドＩＤ」の値を読み出す。ここでは、「Ｆ００６」を読み出す。
【０１３３】
次に、図７に示した入力文字列管理情報の「フィールドＩＤ」の値が「Ｆ００６」であるレコードから、「入力文字列」の値である「花見を行った」を読み出す。
【０１３４】
また、文章作成部１７は、図５に示した連結情報管理情報において、「フィールドＩＤ」の値が「Ｆ００６」であるレコードを検索し、検出したレコードのうちの１番目のレコードの「配列順条件」を読み出す。読み出した「配列順条件」は、「配列順が４以降」という条件である。そして、連結文字列を取得しようとしている入力文字列の配列順が、読み出した条件を満たすか否かを判断する。ここでは、「Ｆ００６」の「配列順」の値が「１」であるため、文章作成部１７は、この条件は満たさないと判断する。
【０１３５】
このため、文章作成部１７は、図５に示した連結情報管理情報において、「フィールドＩＤ」の値が「Ｆ００６」であるレコードのうちの２番目のレコードの「配列順条件」である「配列順が４より前」を読み出す。そして、連結文字列を取得しようとしている入力文字列の配列順が、読み出した条件を満たすか否かを判断する。ここでは、「Ｆ００６」の「配列順」の値が「１」であり、「４」よりも小さい値であるため、文章作成部１７は、この条件は満たすと判断する。
【０１３６】
条件を満たすため、文章作成部１７は、「フィールドＩＤ」の値が「Ｆ００６」であるレコードのうちの２番目のレコードの「連結文字列」の値「ことを報告します。」を読み出す。そして、入力文字列「花見を行った」の直後に、読み出した連結文字列「ことを報告します。」を連結して、文字列「花見を行ったことを報告します。」を１番目に配列される文字列として取得し、この文字列を図示しない記憶媒体等に一時記憶する。
【０１３７】
次に、文章作成部１７は、図１１に示した配列順管理情報から、「配列順」の値「２」に対応するフィールドＩＤ「Ｆ００１」を読み出す。
【０１３８】
次に、図８に示した入力文字列管理情報の「フィールドＩＤ」の値が「Ｆ００１」であるレコードから、「入力文字列」の値である「４月５日」を読み出す。
【０１３９】
また、文章作成部１７は、図５に示した連結情報管理情報の「フィールドＩＤ」の値が「Ｆ００１」であるレコードのうちの１番目のレコードから配列順に関する条件「配列順がＦ００６より前」を読み出し、連結文字列を取得しようとしている入力文字列の配列順が、読み出した条件を満たすか否かを判断する。ここでは、既に、「Ｆ００６」という「フィールドＩＤ」に対応している入力文字列を配列しているため、文章作成部１７は、上記で読み出した入力文字列「４月５日」については、「配列順がＦ００６より前」という配列順に関する条件を満たさないと判断する。
【０１４０】
このため、文章作成部１７は、図５に示した連結情報管理情報において、「フィールドＩＤ」の値が「Ｆ００１」であるレコードのうちの２番目のレコードの「配列順条件」である「配列順がＦ００６以降」を読み出す。そして、連結文字列を取得しようとしている入力文字列の配列順が、読み出した条件を満たすか否かを判断する。ここでは、既に、「Ｆ００６」という「フィールドＩＤ」に対応している入力文字列を配列しているため、文章作成部１７は、この条件は満たすと判断する。
【０１４１】
条件を満たすため、文章作成部１７は、「フィールドＩＤ」の値が「Ｆ００１」であるレコードのうちの２番目のレコードの「連結文字列」の値「の出来事でした。」を読み出す。そして、入力文字列「４月５日」の直後に、読み出した連結文字列「の出来事でした。」を連結して、文字列「４月５日の出来事でした。」を２番目に配列される文字列として取得し、この文字列を、上記で蓄積した１番目の文字列「花見を行ったことを報告します。」の直後に繋げて、図示しない記憶媒体等に一時記憶する。
【０１４２】
以下、同様の処理を図１０に示した配列順管理情報の全てのレコードについて行う。これにより、最終的に図示しない記憶媒体に「花見を行ったことを報告します。４月５日の出来事でした。上野公園で、町内会のメンバーが、親睦を深めるためでした。盛大でした。」という文章が蓄積されたとする。
【０１４３】
文章出力部１８は、一時記憶された上記の文章で、図９に示した画面の、プレビュー領域６２に表示されている文章を書き換える。
【０１４４】
図１２は、作成した文章の表示例を示す図である。このように、入力文字列に連結される文字列が、入力文字列の配列順に応じて変更されて、文章が作成される。
【０１４５】
なお、更に、文章出力部１８は、例えば、ユーザが保存ボタン６３等を押した場合に、作成した文章を、図示しない記憶媒体等に蓄積するようにしても良い。
【０１４６】
以上、本実施の形態によれば、入力フィールドに文字列を入力することにより、適切な文章を容易に作成することができる。
【０１４７】
また、入力フィールドに入力される文字列の配列順を変更すると、文字列に連結される連結文字列が適宜変更されるため、文字列の配列順に応じた適切な文章を容易に作成することができる。
【０１４８】
特に、本実施の形態の文章作成装置は、好ましい文章のフォーマットが、例えば、５Ｗ１Ｈのように予め決まっているような用途の文章を作成する場合に適しているものであり、特に事実等を伝達することが主目的の新聞記事等を作成する用途に好適である。
【０１４９】
なお、上記実施の形態においては、入力フィールドと対応付けられた配列順に関する条件を用いて、各入力フィールドに入力される入力文字列に連結される連結文字列を、各入力フィールドの配列順に応じて決定することにより、入力文字列に連結される１以上の連結文字列を、入力文字列の配列順に応じて変更するようにした。しかしながら、本発明においては、例えば、予め、複数の入力フィールドに入力される入力文字列と、各入力文字列に連結される１以上の連結文字列とを対応付けた情報である１以上の連結決定情報を、複数の入力フィールドに入力される入力文字列の２以上の配列パターン毎に図示しない記憶媒体等に予め用意しておくようにし、文章作成部１７が、フィールド情報格納部１１に格納されている複数のフィールド情報に対応付けられた入力文字列の配列パターンと一致する配列パターンと対応付けられた連結決定情報を検出し、検出した連結決定情報に格納されている各入力文字列に連結される１以上の連結文字列から、各入力フィールドに入力される入力文字列に連結される１以上の連結文字列を取得するようにしても良い。ここでの２以上の配列パターンは、複数の入力フィールドに入力される複数の入力文字列の全ての配列パターンに対応した配列パターンであることが好ましい。また、異なる配列パターンに対応する連結決定情報においては、少なくとも１以上の入力文字列に対応付けられる連結文字列は、異なるものであることが好ましい。なお、ここでの配列パターンは、複数の入力文字列が配列されるパターンであり、複数の入力文字列の順列や並び順と考えても良い。配列パターンは、例えば、各入力文字列の配列順により決定される。
【０１５０】
なお、上記各実施の形態において、各処理（各機能）は、単一の装置（システム）によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
【０１５１】
また、上記実施の形態では、文章作成装置がスタンドアロンである場合について説明したが、文章作成装置は、スタンドアロンの装置であってもよく、サーバ・クライアントシステムにおけるサーバ装置であってもよい。後者の場合には、出力部や受付部は、通信回線を介して入力を受け付けたり、画面を出力したりすることになる。
【０１５２】
また、上記実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをＣＰＵ等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。その実行時に、プログラム実行部は、格納部（例えば、ハードディスクやメモリ等の記録媒体）にアクセスしながらプログラムを実行してもよい。
【０１５３】
なお、上記実施の形態における文章作成装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、文字列が入力される入力フィールドに関する情報であって、入力フィールドの入力内容を示す属性と対応付けられた情報である複数のフィールド情報が格納されるフィールド情報格納部と、入力フィールドに入力される文字列である入力文字列に関連する文字列であって、入力文字列に連結される文字列である１以上の連結文字列が格納される連結文字列格納部と、にアクセス可能なコンピュータを、複数のフィールド情報に対応する複数の入力フィールドを表示する表示部と、表示部が表示する複数の入力フィールドに対して入力文字列を受け付ける受付部と、複数の入力フィールドのそれぞれについて受け付けた入力文字列を、１以上の連結文字列と連結して配列して文章を作成する文章作成部と、文章作成部が作成した文章を出力する文章出力部として機能させるためのプログラムである。
【０１５４】
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を取得する取得部や、情報を出力する出力部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には含まれない。
【０１５５】
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
【０１５６】
図１３は、上記プログラムを実行して、上記実施の形態による文章作成装置等を実現するコンピュータの外観の一例を示す模式図である。上記実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。
【０１５７】
図１３において、コンピュータシステム９００は、ＣＤ−ＲＷ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｒｅｗｒｉｔａｂｌｅ）ドライブ等の光ディスクドライブ９０５、ＦＤ（Ｆｌｏｐｐｙ（登録商標）  Ｄｉｓｋ）ドライブ９０６を含むコンピュータ９０１と、キーボード９０２と、マウス９０３と、モニタ９０４とを備える。
【０１５８】
図１４は、コンピュータシステム９００の内部構成を示す図である。図１４において、コンピュータ９０１は、光ディスクドライブ９０５、ＦＤドライブ９０６に加えて、ＭＰＵ（Ｍｉｃｒｏ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）９１１と、ブートアッププログラム等のプログラムを記憶するためのＲＯＭ９１２と、ＭＰＵ９１１に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９１３と、アプリケーションプログラム、システムプログラム、及びデータを記憶するハードディスク９１４と、ＭＰＵ９１１、ＲＯＭ９１２等を相互に接続するバス９１５とを備える。なお、コンピュータ９０１は、ＬＡＮへの接続を提供する図示しないネットワークカードを含んでいてもよい。
【０１５９】
コンピュータシステム９００に、上記実施の形態による文章作成装置等の機能を実行させるプログラムは、ＣＤ−ＲＯＭや、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＷ等の光ディスク９２１、またはＦＤ９２２に記憶されて、光ディスクドライブ９０５、またはＦＤドライブ９０６に挿入され、ハードディスク９１４に転送されてもよい。これに代えて、そのプログラムは、図示しないネットワークを介してコンピュータ９０１に送信され、ハードディスク９１４に記憶されてもよい。プログラムは実行の際にＲＡＭ９１３にロードされる。なお、プログラムは、光ディスク９２１やＦＤ９２２、またはネットワークから直接、ロードされてもよい。
【０１６０】
プログラムは、コンピュータ９０１に、上記実施の形態による文章作成装置等の機能を実行させるオペレーティングシステム（ＯＳ）、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能（モジュール）を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム９００がどのように動作するのかについては周知であり、詳細な説明は省略する。
【０１６１】
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【産業上の利用可能性】
【０１６２】
以上のように、本発明にかかる文章作成装置等は、文章を作成する装置として適しており、特に、新聞記事等の文章を作成する装置等として有用である。
【符号の説明】
【０１６３】
１  文章作成装置
１１  フィールド情報格納部
１２  連結文字列格納部
１３  表示部
１４  受付部
１５  変更指示受付部
１６  配列変更部
１７  文章作成部
１８  文章出力部
５０  モニタ
【図１】
2014215767.tif 000003
【図２】
2014215767.tif 000004
【図３】
2014215767.tif 000005
【図４】
2014215767.tif 000006
【図５】
2014215767.tif 000007
【図６】
2014215767.tif 000008
【図７】
2014215767.tif 000009
【図８】
2014215767.tif 000010
【図９】
2014215767.tif 000011
【図１０】
2014215767.tif 000012
【図１１】
2014215767.tif 000013
【図１２】
2014215767.tif 000014
【図１３】
2014215767.tif 000015
【図１４】
2014215767.tif 000016