JP2004126838A - 文書作成支援方法 - Google Patents
文書作成支援方法 Download PDFInfo
- Publication number
- JP2004126838A JP2004126838A JP2002288200A JP2002288200A JP2004126838A JP 2004126838 A JP2004126838 A JP 2004126838A JP 2002288200 A JP2002288200 A JP 2002288200A JP 2002288200 A JP2002288200 A JP 2002288200A JP 2004126838 A JP2004126838 A JP 2004126838A
- Authority
- JP
- Japan
- Prior art keywords
- item
- link
- indirect link
- column
- indirect
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
- Document Processing Apparatus (AREA)
Abstract
【課題】一つの仕様書中の項目の変更内容を、複数の仕様書中の関連付けられた項目の内容に反映させる場合、全ての項目間の関連付けを直接行う必要をなくす。
【解決手段】記憶装置に記憶された、仕様書間の関連付けの情報を参照することにより、項目間の関連を求める。表形式の文書編集時に、ある文書中の項目の内容が変更されると、内容が変更された項目を含む行と同じ行に含まれ、かつ、内容を変更された項目と関係をもつ項目に対して、前期項目と関連付けられた項目の位置と、内容を変更された項目を含む列と関連付けられた列の位置にもとづいて、内容を変更された項目と関連する項目の位置を求めて、内容を変更された項目と関連する項目の内容を更新する。
【選択図】 図1
【解決手段】記憶装置に記憶された、仕様書間の関連付けの情報を参照することにより、項目間の関連を求める。表形式の文書編集時に、ある文書中の項目の内容が変更されると、内容が変更された項目を含む行と同じ行に含まれ、かつ、内容を変更された項目と関係をもつ項目に対して、前期項目と関連付けられた項目の位置と、内容を変更された項目を含む列と関連付けられた列の位置にもとづいて、内容を変更された項目と関連する項目の位置を求めて、内容を変更された項目と関連する項目の内容を更新する。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、ソフトウェア設計・開発時に記述する仕様書中で、データ項目に関する情報が表形式で表されており、さらに仕様書が複数個関連しあっている文書体系において、その関連を計算機に記憶し、記憶した関連にもとづいて、仕様書中の項目間の関連を求めることを特徴とする文書作成支援方法に関する。
【0002】
【従来の技術】
ソフトウェアの開発では、プログラムで利用されるデータを構成するデータ項目の内容が仕様書に記述される。例えば、データ項目は、データの名称や、データの型などの属性をもつ。特に、データベースに格納されるデータを構成するデータ項目の内容は、表形式の仕様書中に記述される。
【0003】
さらに、ある一つのデータ項目の内容が、複数の異なる仕様書間で関連し、記述されることがある。この場合、仕様書間の情報の同一性を保つために、データを構成するデータ項目の内容を変更した結果は、関連をもつ全ての仕様書に反映されなければならない。また、一つの仕様書中のデータ項目の内容の変更結果を、関連をもつ全ての仕様書に、手作業で反映させる場合、関連をもつ全ての仕様書を把握する作業の手間と、仕様書中のデータ項目の内容を変更する作業の手間が必要であった。なお、以下、仕様書中の区分けされた箇所を項目とする。一つの項目は、一つのデータ項目の内容をもつものとする。
【0004】
ある一つの文書中の項目の内容の変更結果を、複数の文書中の項目の内容に反映する方法としては、例えば、下記する特許文献1に示されるように、定型文書間の項目を関連付けることにより、定型文書中の項目の内容の変更結果を、複数の定型文書中の関連付けられた項目に自動的に反映させる方法がある。
【0005】
【特許文献1】
特開平4−211865号公報
【0006】
【発明が解決しようとする課題】
従来の方法では、文書間の項目の関連付けを、関連がある全ての項目に対して人間が行う必要がある。特に、仕様書中にデータを追加するたびにデータを構成するデータ項目の内容をもつ項目一つ一つに対して、仕様書間の関連付けを行う手間が必要である。
【0007】
本発明は、表形式の文書の項目の関連付けを行う場合に、ユーザの項目を軽減することである。
【0008】
つまり、本発明の目的は、表形式の文書において、他の文書中の項目と関連する項目が存在し、その項目に対して、人間が関連付けを行っていない場合に対しても、全ての項目に関連付けを行った場合と同様に、関連する項目を求め、項目の内容の変更結果を、関連する項目に反映し、手作業で項目の関連付けを行う必要がある項目の数を、削減する文書作成支援方法を提供することにある。
【0009】
【課題を解決するための手段】
以下、関連付けをリンクといい、関連付けをすることをリンクすることというとする。
【0010】
本発明は、文書中のある項目と、他の文書中のある項目との間のリンクの情報と、文書中のある列と、他の文書中のある列との間のリンクの情報を管理する管理表を設けておき、仕様書中の項目の内容が変更された場合、前記管理表の情報から、内容が変更された項目とリンクする項目を求め、その項目の内容を変更することを特徴とする。全ての項目の関連付けを手作業で行わなくても、項目間のリンクの情報と、列間のリンクの情報から、該当項目とリンクする項目を求めることができるため、項目のリンクを登録する作業が容易化される。
【0011】
本発明が対象とする文書は表形式であるのが好ましい。表は行と列から構成され、行および列は複数の項目から構成される。
【0012】
データは複数のデータ項目から構成され、一つのデータ中のデータ項目は、お互いに関係をもっているとする。関係とは、あるデータを構成する各データ項目は、互いに異なる属性をもつことと、あるデータを構成するデータ項目に対して、特定の属性をもつデータ項目は一つのみとなることとする。
【0013】
一つの行は、一つのデータを表し、仕様書中の項目は、データ項目の値をもつ。
【0014】
列は、データ項目の値の特性を表す属性をもつとする。例えば、データ名称やデータ型が属性になる。また、一つの列に含まれる全ての項目の値の属性は同一であるとする。例えば、データ型を属性にもつ列中の全ての項目の値は、データ型を表す値である。また、一つの仕様書中に同じ属性をもつ列は複数存在しないとする。例えば、列がもつ属性がデータ型である列が、一つの仕様書中に複数存在することはない。
【0015】
行番号は、文書中の行を一意に表すものであり、列番号は、文書中の列を一意に表すとする。文書中の項目の位置は行番号と列番号の組で一意に表せるとする。
【0016】
2種類の関連付けを定義する。
・文書間の複数の項目をリンクする(直接リンク)。
・文書間の複数の列をリンクする(間接リンク)。
【0017】
直接リンクの情報から、ある項目とリンクされた項目について、前記項目を含む文書と、前記項目の文書中の位置を求めることができる。なお、以下、他の項目とのリンクを指定された項目を、直接リンク項目とする。直接リンクは、同じ内容をもつべき項目間で指定されるとする。例えば、あるデータのデータ項目が複数の文書に記述されている場合、値の属性が”識別番号”であり、値が”0001”であるデータ項目の値をもつ項目と直接リンクする項目は、値の属性が”識別番号”であり、値が”0001”であるデータ項目の値をもつ項目となる。
【0018】
間接リンクの情報から、ある列とリンクされた列について、前記列を含む仕様書と、前記列の文書中の列番号を一意に求めることができる。なお、以下、他の列とのリンクを指定された列を、間接リンク列とし、間接リンク列中に含まれる項目を、間接リンク項目とする。間接リンクは、属性が同じであるべき列間で指定されるとする。
【0019】
以下、ある間接リンク項目(以下、項目A0とする)の内容と同じ内容を常にもつべき項目(以下、項目A1とする)を求める方法を述べる。文書体系中の全ての文書中で、直接リンクの対象となる全ての項目に対して、直接リンクが指定済みであることを前提とする。また、文書体系中の全ての文書中で、間接リンクの対象となる全ての列に対して、間接リンクが指定済みであることを前提とする。
【0020】
項目A0を含む行中に、ある項目B0があり、項目B0は、他の文書中の行中のある項目B1と直接リンクを指定されているとする。直接リンクは、同じ内容をもつべき項目間で指定されるという前提から、項目B0の値と、項目B1の値は常に同一であるべきため、項目B0が示すデータ項目と、項目B1が示すデータ項目は同一になる。
【0021】
また、一つの行に含まれる項目はお互いに関係しあうという前提から、項目B0を含む行中に、項目B0と間係する項目があり、同様に、項目B1を含む行中に項目B1と関係する項目がある。前記より、項目B0が示すデータ項目と、項目B1が示すデータ項目は同一になるため、項目B0と関係する項目と同じ内容をもつべき項目が、項目B1と関係する項目として存在する可能性がある。そのため、項目B0を含む行中の項目A0に対して、同じ内容をもつべき項目である項目A1が、項目B1を含む行中に存在する可能性がある。また、直接リンクの情報から、直接リンク項目を含む文書と、直接リンク項目の文書中の位置が求まる。上記により、項目A1を含む可能性がある行を含む文書と、前記行の行番号が求まる。
【0022】
互いにリンクする各間接リンク列の属性は同一であるという前提と、文書体系中の同じ属性をもつ全ての列に対して、間接リンクが指定されているという前提のため、文書体系中の仕様書中で、項目A0の属性と同じ属性をもつ項目は、項目A0を含む間接リンク列とリンクする列中にのみ含まれる。また、項目A0と項目A1の内容は同一であるべきであるため、項目A0の値の属性と、項目A1の値の属性は同じになる。これにより、項目A1は、項目A0を含む間接リンク列とリンクする列中にのみ存在することになる。また、間接リンクの情報から、間接リンク列を含む文書と、間接リンク列の文書中の位置が求まる。上記により、項目A1を含む可能性のある列を含む文書と、項目A1を含む可能性のある列の列番号が求まる。
【0023】
ここで、一つの行は一つのデータを表すという前提と、一つの文書中に同じ属性を持つ列は複数存在しないという前提より、一つの行中に同一の属性の値をもつ項目は複数存在しない。そのため、項目A1を含む可能性がある行中に、項目A0の値の属性と同じ属性の値をもつ項目がある場合、項目A0の値の属性と同じ属性の値をもつ項目は、一つの行中に複数存在しないことと、一つのデータ中で、あるデータ項目に対応する特定の属性をもつデータ項目は一つのみであるという前提のため、項目A0と同じ属性をもち、項目B0と関係をもつ項目の位置が、行の中で一意に定まる。そのため、項目A0と同じ内容をもつべき項目の位置は項目A1を含む可能性がある行と、項目A0の値の属性と同じ属性をもつ列の交点の項目のみになる。
【0024】
以上により、間接リンク項目とリンクする項目を含む文書と、間接リンク項目とリンクする項目の位置を表す行番号と列番号を求めることが出来るため、前記間接リンク項目とリンクする項目を一意に求めることができる。その結果、全ての項目が直接リンクをもつ場合と同様に、間接リンク項目とリンクする項目が一意に求まる。また、間接リンク項目の内容の変更結果を、リンクする項目の内容に反映することができる。
【0025】
【発明の実施の形態】
以下、本発明の実施の形態を説明する。
【0026】
図1は、仕様書中の間接リンク項目の内容が変更された場合、その項目の変更内容が、複数の仕様書中の項目の内容に反映されることを表す概要図である。
【0027】
以下、内容が変更された項目を内容変更項目とする。図1において、変更元仕様書1中に内容変更項目2が間接リンク列5に含まれており、内容変更項目2を含む行3中に直接リンク項目4が含まれている。間接リンク列5がリンクする列15と、直接リンク項目4がリンクする項目14がともに、変更先仕様書11中にあれば、直接リンク項目4がリンクする項目14が含まれる行13中の、間接リンク列5がリンクする列15中の項目12を、内容変更項目2がリンクする項目とし、項目12の内容を内容変更項目2の変更内容と同一にする。同様に、変更先仕様書16中の、項目17を、内容変更項目2がリンクする項目とし、項目17の内容を内容変更項目2の変更内容と同一にする。
【0028】
図2はハードウェア構成図である。図2において、20は入力装置である。21はCPUである。22は外部記憶装置である。23はメモリである。24は出力装置であり、例えばCRTディスプレイや液晶表示器である。
【0029】
図3は、本発明で対象とする表形式の仕様書の書式である。一つのデータを構成するデータ項目の内容は、一つの行31中の各項目に分けて記述される。例えば、仕様書A30中の行31中の各項目に、一つのデータを構成する各データ項目の内容が記述される。また、仕様書間の項目のリンクを直接リンク35とする。例えば、項目32と項目41とのリンクは直接リンク35となる。また、複数の異なる仕様書上に、値の属性が同じ項目が記述されることがある。例えば、仕様書A30中の列33に含まれる項目の値の属性はデータ型であり、仕様書B40中の列42に含まれる項目の値の属性はデータ型である。この場合、列33に含まれる項目の値の属性と、列42に含まれる項目の値の属性は同一である。また、仕様書間の列のリンクを間接リンク36とする。列33と列42とのリンクは、間接リンク36となる。
【0030】
本発明の実施例では、直接リンクの情報および間接リンクの情報を、図4に示すように、間接リンク管理表55、間接リンクID管理表60、直接リンク管理表65、リンクID管理表70、文書ID管理表50を用いて管理する。
【0031】
文書ID管理表50は、仕様書体系に含まれるある仕様書と、前記仕様書に対応する間接リンク管理表55と、前記仕様書に対応する直接リンク管理表65の組を一意に識別する名称(文書ID)を管理するものであり、文書ID51から構成される。
【0032】
また、間接リンク管理表55は、間接リンク列の仕様書中での位置(間接リンク列位置)を、仕様書体系に含まれる間接リンクを一意に識別するための名称(間接リンクID)と対応付けて管理するものであり、間接リンクID61と、間接リンク列位置57から構成され、文書IDにより仕様書と対応付けられる。なお、間接リンク列に対応する間接リンクIDにより、複数の間接リンク列が互いにリンクするかどうかを判別する。同じ間接リンクIDをもつ間接リンク列は互いにリンクするとする。また、同じ間接リンクIDをもたない間接リンク列は互いにリンクしないとする。例えば、間接リンク列Aに対応する間接リンクIDが001であり、間接リンク列Bに対応する間接リンクIDが001であり、間接リンク列Cに対応する間接リンクIDが002である場合、間接リンク列Aに対応する間接リンクIDと、間接リンク列Bに対応する間接リンクIDが同一であるため、間接リンク列Aと間接リンク列Bはリンクする。しかし、間接リンク列Cに対応する間接リンクIDは、間接リンク列Aに対応する間接リンクIDと間接リンク列Bに対応する間接リンクIDと異なるため、間接リンク列Cは間接リンク列Aおよび間接リンク列Bとリンクしない。
【0033】
また、間接リンクID管理表60は、仕様書体系に含まれる間接リンクを一意に識別するための名称(間接リンクID)を、管理するものであり、間接リンクID61から構成される。
【0034】
また、直接リンク管理表65は、一つの仕様書に含まれる直接リンク項目を一意に識別するための名称(直接リンク項目ID)と、直接リンク項目の仕様書中の位置(直接リンク項目位置)を、仕様書体系中で直接リンク項目と他の項目とのリンクを一意に識別するための名称(リンクID)と対応付けて管理するものであり、直接リンク項目ID66と、直接リンク項目位置67と、リンクID68から構成され、文書IDにより仕様書に対応づけられる。直接リンク項目位置67中で項目の位置は、項目が含まれる行の行番号と、列の列番号が組になった情報として表される。
【0035】
また、リンクID管理表70は、仕様書体系中のリンクIDと、リンクIDに対応する直接リンク項目を表す端点の組と、リンクの状態(リンクのステータス)を管理するものであり、リンクID71、リンクの端点72、リンクのステータス73から構成される。端点は、直接リンク項目が含まれる仕様書の文書IDと、直接リンク項目の直接リンク項目IDが組になった情報として表され、リンクの端点72は端点の組の集合で表される。
【0036】
リンクの具体例を図3、図4に示す。例えば、仕様書A30中の項目32と、仕様書B中の項目41のリンク35は直接リンクであり、リンクID管理表70中の行74では、リンク35に対応するリンクIDは、link001として、リンクID71中に表される。リンクの端点は、項目32を含む仕様書A30に対応する文書IDであるAと、項目32に対応する直接リンク項目IDである01が組になった情報と、項目41に対応する仕様書B40に対応する文書IDであるBと、項目41に対応する直接リンク項目IDである01が組になった情報で、リンクの端点72中に表される。直接リンク管理表65中の行69では、項目32がもつ直接リンク項目IDは01として直接リンク項目ID66中に表され、項目32の位置は、項目32を含む行の行番号である1と、項目32を含む列の列番号である1の組として直接リンク項目位置67中に表され、項目32が対応するリンクはlink001としてリンクID68中に表される。また、仕様書A30中の列33と、仕様書B40中の列42のリンク36は間接リンクであり、間接リンクID管理表60中の項目57では、リンク36に対応する間接リンクIDは、001として表される。間接リンク管理表55中の行58では、列33に対応する間接リンクIDは001であり、列33の位置は、列33の列番号である3として表される。
【0037】
次に、仕様書中で、間接リンク項目の内容の変更手順を図5、図6、図7、図8、図9、図10を用いて説明する。図5は、仕様書中の内容変更項目の変更内容を、内容変更項目とリンクする項目に反映する処理の手順を示すフローチャート、図6は、ステップ200の処理手順を示すフローチャート、図7は、ステップ450の処理手順を示すフローチャート、図8と図9は、ステップ500の処理手順を示すフローチャート、図10は、ステップ545の処理手順を示すフローチャートである。
【0038】
図5で示されたフローチャートの処理手順を説明する。仕様書体系に含まれる各仕様書中において、直接リンクの対象となる項目と、間接リンクの対象となる列に対して、リンクの定義が終了していることを前提とする。また、仕様書中の内容変更項目を検出するために、仕様書の編集作業が行われている間、仕様書中の項目の変更履歴が管理されていることを前提とする。例えば、編集作業開始時に、仕様書中の項目の値を記録し、編集開始時に記録した値と現在の値を比較することで、内容変更項目を求めるとする。また、リンクID管理表70中のリンクのステータス73中の全ての項目の値が、”処理待”であることを前提とする。
【0039】
ステップ150では、仕様書中から、内容変更項目を一つ検索し、その項目の位置を求める。具体的には、内容変更項目の位置は、仕様書中に内容変更項目が存在する行の行番号と、列の列番号である。ステップ200では、内容変更項目が関係するリンクの種類を判定する。ステップ200の処理手順は図6で説明する。ステップ250では、ステップ200において判定されたリンクの種類が、直接リンクの場合はステップ300に遷移し、直接リンクでない場合はステップ350に遷移する。
【0040】
ステップ300では、内容変更項目が直接リンク項目である場合、内容変更項目とリンクする項目を検索し、内容変更項目にリンクする項目の内容を、内容変更項目の変更内容と同じにする。具体的には、まず、内容変更項目を含む仕様書が対応する文書IDに、対応する直接リンク管理表65中の直接リンク項目位置67から、ステップ150で取得した内容変更項目の位置の値と、一致する値を含む行を求め、求めた行の直接リンク項目ID66から直接リンク項目IDを取得し、求めた行のリンクID68からリンクIDを取得する。
【0041】
取得したリンクIDと一致するリンクIDを、リンクID管理表70中のリンクID71から求め、一致するリンクIDを含む行のリンクの端点72から、取得したリンクIDに対応する端点の一覧を取得する。取得した端点の一覧のうち、一つの端点から、文書IDと直接リンク項目IDを取得する。
【0042】
取得した文書IDに対応する直接リンク管理表65中の直接リンク項目ID66から、取得した直接リンク項目IDと一致する直接リンク項目IDを含む行を求め、求めた行の直接リンク項目位置67から、取得した直接リンク項目IDに対応する項目の仕様書中の位置を取得する。取得した位置に存在する項目の内容を、内容変更項目の変更された内容と同じ内容に変更する。先に取得した端点の一覧中の全ての端点に対して、以上の処理を行うことにより、内容変更項目とリンクする全ての項目の内容を、内容変更項目の変更された内容と同じにし、ステップ350に遷移する。
【0043】
ステップ350では、ステップ200において判定されたリンクの種類が間接リンクの場合は、ステップ400に遷移し、間接リンクでない場合は、ステップ700に遷移する。
【0044】
ステップ400からステップ500では、内容変更項目が間接リンク列項目である場合、内容変更項目にリンクする項目を検索し、内容変更項目にリンクする項目の内容を、内容変更項目の変更内容と同じにする。ステップ400では、内容変更項目を含む列に対応する間接リンクIDを取得する。具体的には、まず、ステップ150にて取得した内容変更項目の位置から、内容変更項目を含む列の列番号を取得する。次に、取得した列番号と一致する列番号を、内容変更項目を含む仕様書が対応する文書IDに、対応する間接リンク管理表55中の間接リンク列位置57中から求め、一致する列番号を含む行の間接リンクID61から間接リンクIDを取得する。
【0045】
ステップ450では、内容変更項目を含む仕様書が対応する文書IDに、対応する直接リンク管理表65から、内容変更項目を含む行中の、内容変更項目以外の全ての直接リンク項目に対応する直接リンク項目IDの一覧を取得する。ステップ450の処理手順は図7で説明する。なお以下、内容変更項目を含む行中の、内容変更項目以外の直接リンク項目を、変更元直接リンク項目とする。
【0046】
ステップ500では、仕様書体系中の仕様書中で、内容変更項目とリンクする項目を求め、内容変更項目とリンクする項目の内容を、内容変更項目の変更された内容と同じにする。ステップ500を再帰的に呼び出すことで、処理を行う。ステップ500の処理手順は図8と図9で説明する。
【0047】
ステップ700では、仕様書中の全ての内容変更項目に対して、ステップ150からステップ500までの処理が終了した場合、処理を終了する。ステップ150からステップ500までの処理が行われていない内容変更項目が存在する場合、ステップ150へ遷移する。
【0048】
図6では、ステップ200の処理手順を示す。ステップ205では、内容変更項目が直接リンク項目として指定されているかどうか検索する。具体的には、内容変更項目を含む仕様書が対応する文書IDに、対応する直接リンク管理表65中の直接リンク項目位置67から、ステップ150で取得した内容変更項目の位置の値と一致する値を検索する。ステップ210では、一致する位置の値がある場合は、ステップ215へ遷移し、一致する位置の値がない場合は、ステップ220へ遷移する。
【0049】
ステップ215では、内容変更項目が直接リンク項目として指定されているとして、ステップ220へ遷移する。
【0050】
ステップ220では、内容変更項目が間接リンク列項目として指定されているかどうか検索する。具体的には、ステップ150で取得した内容変更項目の位置から列番号を取得し、取得した列番号と一致する列番号を、内容変更項目を含む仕様書が対応する文書IDに、対応する間接リンク管理表55中の間接リンク列位置57から検索する。ステップ225では、一致する列番号がある場合は、ステップ230へ遷移し、一致する列番号がない場合は、ステップ235へ遷移する。ステップ230では、ステップ210で、内容変更項目が直接リンク項目であると判定されている場合、ステップ240へ遷移する。直接リンク項目ではないと判定されている場合は、ステップ245へ遷移する。
【0051】
ステップ240では、内容変更項目は直接リンク項目であり、かつ間接リンク項目であるとして、フローを終了する。ステップ245では、内容変更項目は間接リンク項目であるとして、フローを終了する。
【0052】
ステップ235では、ステップ210で、内容変更項目が直接リンク項目であると判定されている場合、ステップ246へ遷移する。直接リンク項目ではないと判定されている場合、ステップ247へ遷移する。ステップ246では、内容変更項目が直接リンク項目であるとして、フローを終了する。ステップ247では、内容変更項目は直接リンク項目、間接リンク列項目のどちらでもないとして、フローを終了する。
【0053】
図7では、ステップ450の処理手順を示す。ステップ455では、ステップ150で取得した内容変更項目の位置から、内容変更項目が含まれる行の行番号を取得する。ステップ460では、内容変更項目を含む仕様書が対応する文書IDに、対応する直接リンク管理表65中の直接リンク項目位置67から、ステップ455で取得した内容変更項目を含む行の行番号と一致する行番号を検索する。ステップ465では、一致する行番号がある場合は、ステップ470へ遷移し、一致する行番号がない場合は、内容変更項目を含む行中に直接リンク項目がないとして、ステップ700へ遷移する。
【0054】
ステップ470では、内容変更項目を含む行中の直接リンク項目の一覧を求める。具体的には、内容変更項目を含む仕様書が対応する文書IDに、対応する直接リンク管理表65中の直接リンク項目位置67から、ステップ455で取得した内容変更項目を含む行の行番号と一致する行番号を含む行を求め、求めた行の直接リンク項目ID66から、直接リンク項目IDを取得する。ステップ475では、内容変更項目を含む行中の、内容変更項目以外の全ての直接リンク項目に対応する直接リンク項目IDの一覧を取得した場合、内容変更項目を含む仕様書の文書IDを、取得した直接リンク項目IDの一覧中の全ての直接リンク項目IDが対応する文書IDとして取得し、フローを終了する。全ての直接リンク項目IDの一覧を取得していない場合は、ステップ470へ遷移する。
【0055】
図8と図9では、ステップ500の処理手順を示す。ステップ505からステップ525までの処理では、ステップ450で取得した変更元直接リンク項目の情報の一覧、または、ステップ610で取得した直接リンク項目の情報の一覧から、一つの項目の情報を取得し、取得した項目に対応するリンクの端点の一覧を求める。
【0056】
ステップ505では、ステップ450からステップ500へ遷移した場合は、ステップ450で取得した変更元直接リンク項目IDの一覧から、一つの直接リンク項目IDを取得し、ステップ450で取得した文書IDを、取得した直接リンク項目IDに対応する直接リンク項目を含む仕様書が対応する文書IDとする。また、ステップ610からステップ500へ再帰的に遷移した場合は、ステップ610で取得した直接リンク項目IDの一覧から、一つの直接リンク項目IDを取得し、ステップ610で取得した文書IDを、取得した直接リンク項目IDが対応する直接リンク項目を含む仕様書が対応する文書IDとする。
【0057】
ステップ510では、まず、ステップ505で取得した文書IDに対応する直接リンク管理表65中の直接リンク項目ID66から、ステップ505で取得した直接リンク項目IDと一致する直接リンク項目IDを含む行を求め、求めた行のリンクID68から、リンクIDを取得する。次に、取得したリンクIDと一致するリンクIDを含む行を、リンクID管理表70中のリンクID71から求め、求めた行のリンクのステータス73から、リンクのステータスを取得する。
【0058】
ステップ515では、ステップ510で取得したリンクのステータスが”処理待”の値の場合、ステップ520へ遷移する。リンクのステータスが”処理待”以外の値の場合、ステップ625へ遷移する。
【0059】
ステップ520では、ステップ505で取得した直接リンク項目に対応するリンクに含まれる端点の一覧を取得する。具体的には、まず、リンクID管理表70中のリンクID71の、ステップ510で取得したリンクIDと一致するリンクIDを含む行のリンクの端点72から、端点の一覧を取得する。次に、ステップ505で取得した直接リンク項目に対応する端点以外の端点の一覧から、直接リンク項目を含む仕様書に対応する文書IDと、直接リンク項目に対応する直接リンク項目IDが組になった一覧を取得する。
【0060】
ステップ525では、リンクID管理表70中のリンクID71中で、ステップ510で取得したリンクIDを含む行の、リンクのステータス73の値を、”処理中”に変更する。
【0061】
ステップ530から、ステップ615までの処理では、まず、ステップ520で取得したリンクの端点の一覧中の各端点の情報と、内容変更項目を含む列とリンクする列の情報から、内容変更項目とリンクする項目が、仕様書中の端点を含む行中に存在するかどうかを判定し、内容変更項目とリンクする項目が存在する場合は、内容変更項目とリンクする項目の内容を、内容変更項目の変更された内容と同じにする。次に、仕様書中の端点を含む行中に、端点以外の直接リンク項目が存在するかどうか検索し、直接リンク項目が存在する場合は、ステップ500を再帰的に呼び出すことにより、各直接リンク項目のリンク先の仕様書中に、内容変更項目とリンクする項目がないかどうか求める。
【0062】
ステップ530では、ステップ520で取得した、端点を含む仕様書が対応する文書IDと、端点が対応する直接リンク項目IDが組になった情報の一覧から、一つの端点が対応する文書IDと直接リンク項目IDの組を取得する。
【0063】
ステップ535では、ステップ530で取得した端点の情報と、ステップ400で取得した間接リンクIDから、内容変更項目とリンクする項目が存在するかどうかを判定し、該当項目が存在する場合は、該当項目の内容を内容変更項目の変更された内容と同じにする。ステップ535の処理手順は図10で説明する。
【0064】
ステップ600では、ステップ530で取得した端点を含む仕様書中の行中に、端点以外の直接リンク項目が存在するかどうか検索する。具体的には、まず、ステップ530で取得した文書IDに対応する直接リンク管理表65中の直接リンク項目ID66から、ステップ530で取得した直接リンク項目IDと同じ直接リンク項目IDを含む行を求め、求めた行の直接リンク項目位置67から、直接リンク項目位置を取得する。次に、取得した直接リンク項目位置から行番号を取得し、取得した行番号と同じ行番号を含む直接リンク項目位置を、直接リンク項目位置67から検索する。ステップ605では、取得した行番号と同じ行番号を含む直接リンク項目位置が存在する場合は、ステップ610へ遷移する。取得した行番号と同じ行番号を含む直接リンク項目位置が存在しない場合は、ステップ620へ遷移する。
【0065】
ステップ610では、仕様書中のステップ530で取得した端点を含む行中に存在する、端点以外の全ての直接リンク項目を求め、直接リンク項目に対応する直接リンク項目IDの一覧を取得する。具体的には、まず、ステップ530で取得した文書IDに対応する直接リンク管理表65中の直接リンク項目ID66から、ステップ530で取得した直接リンク項目IDと同じ直接リンク項目IDを含む行を求め、求めた行の直接リンク項目位置67から、直接リンク項目位置を取得する。次に、取得した直接リンク項目位置から行番号を取得し、取得した行番号と同じ行番号を含む直接リンク項目位置を、直接リンク項目位置67から全て求める。求めた各直接リンク項目位置を含む行の直接リンク項目ID66から、直接リンク項目IDを取得し、直接リンク項目IDの一覧を取得する。また、端点を含む仕様書の文書IDを、取得した直接リンク項目IDの一覧中の全ての直接リンク項目IDが対応する文書IDとして取得する。
【0066】
ステップ615では、ステップ610で求めた直接リンク項目IDに対応する全ての直接リンク項目に対して、直接リンク項目とリンクする項目を含む行中に、内容変更項目とリンクする項目が存在するかどうか判定し、内容変更項目とリンクする項目が存在する場合は、内容変更項目とリンクする項目の内容を、内容変更項目の変更された内容と同じにするために、ステップ500を再帰的に呼び出す。
【0067】
ステップ620では、ステップ520で取得した全ての端点に対して、ステップ530からステップ615までの処理が終了した場合、ステップ625へ遷移する。ステップ530からステップ615までの処理が行われていない端点が存在する場合、ステップ530へ遷移する。
【0068】
ステップ625では、ステップ500がステップ450の終了後に呼び出されていた場合、ステップ450で取得した全ての変更元直接リンク項目に対して、ステップ505からステップ620までの処理が終了した場合は、ステップ630へ遷移し、ステップ505からステップ620までの処理が終了していない直接リンク項目が存在する場合は、ステップ505へ遷移する。または、ステップ500が、ステップ615の終了後に再帰的に呼び出されていた場合、ステップ615で取得した全ての直接リンク項目に対して、ステップ505からステップ620までの処理が終了した場合は、ステップ630へ遷移し、ステップ505からステップ620までの処理が行われていない直接リンク項目が存在する場合は、ステップ505へ遷移する。
【0069】
ステップ630では、ステップ500がステップ450の終了後に呼び出されていた場合、ステップ700へ遷移する。ステップ500が、ステップ615の終了後に再帰的に呼び出されていた場合、ステップ500を呼び出したステップ500中の、ステップ620へ遷移する。
【0070】
図10では、ステップ535の処理手順を示す。ステップ540からステップ560までの処理では、ステップ530で取得した直接リンク項目を含む仕様書中から、内容変更項目を含む列に対応する間接リンクIDと同じ間接リンクIDをもつ列を検索し、内容変更項目とリンクする項目を求め、内容変更項目とリンクする項目の内容を、内容変更項目の内容と同じにする。
【0071】
ステップ540では、内容変更項目を含む列に対応する間接リンクIDと、同じ間接リンクIDをもつ列が、ステップ530で取得した直接リンク項目IDに対応する直接リンク項目を含む仕様書中に存在するかどうか検索する。具体的には、ステップ530で取得した文書IDに対応する間接リンク管理表55中の間接リンクID61から、ステップ400で取得した間接リンクIDと一致する間接リンクIDを検索する。一致する間接リンクIDが存在する場合は、該当間接リンクIDを含む行の、間接リンク列位置57から、間接リンク列位置を取得する。ステップ545では、一致する間接リンクIDが存在する場合、内容変更項目とリンクする項目が、ステップ530で取得した文書IDに対応する仕様書中に含まれるとして、ステップ550に遷移する。一致する間接リンクIDがない場合は、内容変更項目とリンクする項目が、ステップ530で取得した文書IDに対応する仕様書中に含まれないとして、フローを終了する。
【0072】
ステップ550では、ステップ530で取得した直接リンク項目IDに対応する直接リンク項目の仕様書中の位置を取得する。具体的には、ステップ530で取得した文書IDに対応する直接リンク管理表65中の直接リンク項目ID66から、ステップ530で取得した直接リンク項目IDと同じ直接リンク項目IDを含む行を求め、求めた行の直接リンク項目62から、直接リンク項目位置を取得する。
【0073】
ステップ555では、まず、ステップ550で取得した直接リンク項目位置から、行番号を取得する。取得した行番号と、ステップ540で取得した間接リンクIDに対応する列の列番号から、内容変更項目とリンクする項目の仕様書中の位置が一意に求まる。
【0074】
ステップ560では、ステップ555で取得した、内容変更項目とリンクする項目の内容を、内容変更項目の変更された内容に変更する。
【0075】
以下、仕様書中のある列を間接リンク列として、間接リンク管理表55と間接リンクID管理表60に登録する手順を図11、図12、図13を用いて説明する。
【0076】
図11と図12は、仕様書中のある列を間接リンク列として、間接リンクIDと対応付けて間接リンク管理表55に登録し、さらに、間接リンクIDを間接リンクID管理表60に登録する処理手順を示すフローチャートである。
【0077】
ステップ1000では、間接リンクID新規登録画面1001を表示する。間接リンクID新規登録画面1001では、間接リンク列として登録する列を含む仕様書の文書IDと、前記列の位置が組になった複数の情報と、間接リンク列として登録する全ての列に対応する一つの間接リンクIDを人間が入力する。具体的には、列の位置は、列の列番号である。間接リンクID新規登録画面の例を図11で示す。
【0078】
ステップ1050では、文書IDと間接リンク列位置と間接リンクIDが入力された場合、ステップ1060へ遷移する。
【0079】
ステップ1060では、間接リンクID管理表60中の間接リンクID61から、ステップ1050で入力された間接リンクIDと一致する間接リンクIDを検索する。ステップ1070では、一致する間接リンクIDがある場合、ステップ1080に遷移する。一致する間接リンクIDがない場合は、ステップ1090に遷移する。ステップ1080では、ステップ1050で入力された間接リンクIDがすでに間接リンクID管理表に登録済みであることを画面に表示し、処理を終了する。
【0080】
ステップ1090では、ステップ1050で入力された、文書IDと間接リンク列位置の組の一覧から、文書IDと間接リンク列位置の組を一つ取得する。
【0081】
ステップ1100では、ステップ1090で取得した文書IDと間接リンク列位置で指定される列が、間接リンク列として登録済みかどうか調べる。具体的には、ステップ1090で取得した文書IDに対応する間接リンク管理表55中の間接リンク列位置57から、ステップ1090で取得した間接リンク列位置と一致する位置の値を検索する。ステップ1110では、一致する位置の値がある場合、ステップ1120へ遷移する。一致する位置の値がない場合、ステップ1130に遷移する。ステップ1120では、ステップ1090で取得した文書IDと間接リンク列位置で指定される列が、間接リンク列として登録済みであることを画面に表示し、処理を終了する。
【0082】
ステップ1130では、ステップ1050で入力された、全ての文書IDと間接リンク列位置の組に対して、ステップ1090からステップ1110までの処理が終了した場合,ステップ1140へ遷移する。ステップ1090からステップ1110までの処理が行われていない文書IDと間接リンク列位置の組が存在する場合、ステップ1090へ遷移する。
【0083】
ステップ1140では、まず、ステップ1050で入力された間接リンクIDを、間接リンクID管理表60に登録する。次に、ステップ1050で入力された文書IDと間接リンク列位置に対応する列を、ステップ1050で入力された間接リンクIDに対応する間接リンク列として、間接リンク管理表55に登録する。具体的には、まず、間接リンクID管理表60中の間接リンクID61に、ステップ1050で入力された間接リンクIDを追加する。次に、間接リンク管理表55中の間接リンクID61に、ステップ1050で入力された間接リンクIDを追加し、間接リンクIDを追加した行の間接リンク列位置57中に、ステップ1050で入力された間接リンク列位置を追加する。ステップ1050で入力された全ての文書IDと間接リンク位置に対して、間接リンク管理表55中への間接リンクIDと間接リンク列位置の追加が終了した場合、処理を終了する。
【0084】
図11は、複数の仕様書中のある列を間接リンク列として、間接リンク管理表55と間接リンクID管理表60に登録する画面の例である。
【0085】
間接リンクID新規登録画面1001は、見出しである、間接リンク列を含む仕様書の文書ID1002と、間接リンク列として登録する列を含む仕様書が対応する文書IDを記述する記述欄1005と、見出しである、間接リンク列の位置1003と、間接リンク列として登録する列の位置を、前記文書IDと対応づけて記述する記述欄1006と、見出しである間接リンクID1004と、間接リンク列として登録する列と対応させる間接リンクIDを一つ記述する記述欄1007から構成される。
【0086】
例えば、仕様書A1015中に、属性がデータ型の列1016があるとし、まず、間接リンクID新規登録画面1001中の間接リンク列を含む仕様書の文書ID1002の記述欄1005中の項目1008に、仕様書Aに対応する文書IDとしてAを入力する。次に、間接リンク列の位置1003の記述欄1006中の項目1009に、仕様書A1015中の列1016の位置として3を入力する。同様に、仕様書B1020中に、属性がデータ型の列1021があるとし、まず、間接リンクID新規登録画面1001中の間接リンク列を含む仕様書の文書ID1002の記述欄1005中の項目1010に、仕様書Bに対応する文書IDとしてBを入力する。次に、間接リンク列の位置1003の記述欄1006の項目1011に、仕様書B1020中の列1021の位置として2を入力する。また、間接リンクID新規登録画面1001中の間接リンクID1004の記述欄1007に、列1016と列1021が対応する間接リンクIDとして001を入力する。
【0087】
以下、仕様書中のある列を間接リンクとして、間接リンクID管理表60に登録済みの間接リンクIDと対応づけて登録する手順を図14、図15、図16を用いて説明する。
【0088】
図14と図15は、仕様書中のある列を間接リンク列として、間接リンクID管理表60中に登録済みの間接リンクIDと対応付けて、間接リンク管理表55に登録する処理手順を示すフローチャートである。
【0089】
ステップ1200では、間接リンクID管理表60中の間接リンクID61から、間接リンクIDの一覧を取得する。ステップ1210では、間接リンク列追加画面1211を表示する。間接リンク列追加画面1211では、間接リンク列として登録する列を含む仕様書の文書IDと、前記列の位置が組になった複数の情報を人間が入力し、ステップ1200で取得した間接リンクIDの一覧から、間接リンク列として登録する全ての列に対応する間接リンクIDを人間が選択する。間接リンク列追加画面1211の例を図16で示す。
【0090】
ステップ1250では、文書IDと間接リンク列位置と間接リンクIDが入力された場合、ステップ1260へ遷移する。
【0091】
ステップ1260では、ステップ1250で入力された、文書IDと間接リンク列位置の組の一覧から、文書IDと間接リンク列位置の組を一つ取得する。以下、ステップ1270からステップ1320までの処理では、ステップ1260で取得した文書IDに対応する間接リンク管理表55を使用する。
【0092】
ステップ1270では、ステップ1260で取得した文書IDと間接リンク列位置により指定される列が、間接リンク列として登録済みかどうか調べる。具体的には、間接リンク管理表55中の間接リンク列位置57から、ステップ1260で取得した間接リンク列位置と一致する位置の値を検索する。ステップ1280では、一致する位置の値がある場合、ステップ1290へ遷移する。一致する位置の値がない場合、ステップ1300に遷移する。ステップ1290では、ステップ1260で取得した文書IDと間接リンク列位置で指定される列が、間接リンク列として登録済みであることを画面に表示し、処理を終了する。
【0093】
ステップ1300では、一つの仕様書中に同じ属性をもつ列は複数存在しないという前提を維持するために、ステップ1260で取得した文書IDに対応する仕様書中に、ステップ1250で取得した間接リンクIDと同じ間接リンクIDに対応する間接リンク列が存在するかどうかを調べる。具体的には、間接リンク管理表55中の間接リンクID61から、ステップ1250で取得した間接リンクIDと一致する間接リンクIDを検索する。ステップ1310では、一致する間接リンクIDがある場合、ステップ1320へ遷移する。一致する位置の値がない場合、ステップ1330に遷移する。ステップ1320では、ステップ1250で入力された間接リンクIDに対応する間接リンク列が、ステップ1260で取得した文書IDに対応する仕様書中に登録済みであることを画面に表示し、処理を終了する。
【0094】
ステップ1330では、ステップ1250で入力された、全ての文書IDと間接リンク列位置の組に対して、ステップ1260からステップ1320までの処理が終了した場合、ステップ1340へ遷移する。ステップ1260からステップ1320までの処理が行われていない文書IDと間接リンク列位置の組が存在する場合、ステップ1260へ遷移する。
【0095】
ステップ1340では、ステップ1250で入力された文書IDと間接リンク列位置に対応する全ての列を、ステップ1250で選択された間接リンクIDに対応する間接リンク列として、間接リンク管理表55に登録する。具体的には、まず、ステップ1250で入力された文書IDと間接リンク列位置の組の一覧から、文書IDと間接リンク列位置の組を一つ取得する。次に、取得した文書IDに対応する間接リンク管理表55中の間接リンクID61に、ステップ1250で選択された間接リンクIDを追加し、取得した間接リンク列位置を、間接リンクIDを追加した行の間接リンク列位置57に追加する。ステップ1250で入力された全ての文書IDと間接リンク列位置の組に対して、上記の処理を繰り返し行うことにより、間接リンク管理表55中への間接リンクIDと間接リンク列位置の追加が終了した場合、処理を終了する。
【0096】
図16は、仕様書中のある列を、間接リンクID管理表60に登録済みのある間接リンクIDに対応する間接リンク列として、間接リンク管理表55に登録する画面の例である。間接リンク列追加画面1211は、見出しである、間接リンク列を含む仕様書の文書ID1212と、間接リンク列として登録する列を含む仕様書が対応する文書IDを記述する記述欄1215と、見出しである、間接リンク列の位置1213と、間接リンク列として登録する列の位置を、前記文書IDと対応づけて記述する記述欄1216と、見出しである、登録済み間接リンクID1214と、間接リンクID管理表60に登録済みの間接リンクIDの一覧が表示される選択欄1217から構成される。選択欄1217から、間接リンク列として登録する列と対応させる間接リンクIDを一つ、人間が選択する。
【0097】
例えば、仕様書C1225中に、属性がデータ型の列1226があるとし、まず、間接リンク列追加画面1211中の、間接リンク列を含む仕様書の文書ID1212の記述欄1215中の項目1218に、仕様書Cに対応する文書IDとしてCを入力する。次に、間接リンク列の位置1213の記述欄1216中の項目1219に、仕様書C1225中の列1226の位置として2を入力する。具体的には、列の位置とは列の列番号のことである。
【0098】
同様に、仕様書D1230中に、属性がデータ型の列1231があるとし、まず、間接リンク列追加画面1211中の、間接リンク列を含む仕様書の文書ID1212の記述欄1215中の項目1220に、仕様書Dに対応する文書IDとしてDを入力する。次に、間接リンク列の位置1213の記述欄1216中の項目1221に、仕様書D1230中の列1231の位置として3を入力する。間接リンク列追加画面1211中の、登録済み間接リンクID1214の選択欄から、列1226と列1231が対応する間接リンクIDとして001を選択する。
【0099】
以下、仕様書中のある間接リンク列への間接リンク列としての指定を解除するために、間接リンク管理表55と、間接リンクID管理表60から、前記間接リンク列に関する情報を削除する手順を図17、図18を用いて説明する。
【0100】
図17は、間接リンク管理表55から、ある間接リンク列に対応する間接リンクIDと、前記間接リンク列の仕様書中の位置を削除し、必要があれば、間接リンクID管理表60から、前記間接リンク列に対応する間接リンクIDを削除する手順を示すフローチャートである。
【0101】
ステップ1500では、仕様書体系に含まれる、全ての間接リンク列の情報の一覧を求める。具体的には、まず、間接リンクID管理表60中の間接リンクID61から、間接リンクIDの一覧を取得する。次に、取得した間接リンクIDの一覧中の各間接リンクIDに対応する間接リンク位置を、仕様書体系中の全ての間接リンク管理表から取得し、間接リンク列を含む仕様書に対応する文書IDと、間接リンク列の仕様書中の位置と、間接リンク列が対応する間接リンクIDの組の一覧を求める。
【0102】
ステップ1510では、間接リンク列削除画面1511を表示する。間接リンク列削除画面1511では、仕様書体系に含まれる間接リンク列の一覧から、間接リンク列としてのリンクの指定を解除する列を一つ、人間が選択する。具体的には、ステップ1500で求めた間接リンク列に対応する情報の一覧から、間接リンク列としてのリンクの指定を解除する列に対応する情報を一つ、人間が選択する。間接リンク列削除画面1511の例を図18で示す。
【0103】
ステップ1550では、間接リンク列に対応する情報が選択された場合、選択された情報に対応する間接リンク列に対して、間接リンク列に対応する文書IDと、間接リンク列位置と、間接リンク列に対応する間接リンク列IDを取得し、ステップ1560へ遷移する。
【0104】
ステップ1560では、ステップ1550で取得した文書IDに対応する間接リンク管理表55中の間接リンクID61から、ステップ1550で取得した間接リンクIDと同じ間接リンクIDを求める。ステップ1570では、ステップ1560で求めた間接リンクIDを含む行から、行中の間接リンクID61中の間接リンクIDと,行中の間接リンク列52中の間接リンク列位置を削除する。
【0105】
ステップ1580では、仕様書体系中の全ての間接リンク管理表中に、ステップ1550で取得した間接リンクIDに対応する間接リンク列の情報が存在しない場合、間接リンクID管理表60に前記間接リンクIDが登録されたままになることを防ぐために、ステップ1550で取得した間接リンクIDに対応する間接リンク列の情報が全ての間接リンク管理表中に存在しないかどうか検索する。具体的には、ある間接リンク管理表55中の間接リンクID61から、ステップ1550で取得した間接リンクIDと一致する間接リンクIDを検索し、上記の検索を、仕様書体系中の全ての間接リンク管理表に対して行う。ステップ1590では、一致する間接リンクIDがない場合は、ステップ1600へ遷移する。一致する間接リンクIDが一つ以上ある場合は、処理を終了する。
【0106】
ステップ1600では、間接リンクID管理表60中の間接リンクID61中から、ステップ1550で取得した間接リンクIDと一致する間接リンクIDを求め、求めた間接リンクIDを含む行中の間接リンクID61の間接リンクIDを削除し、処理を終了する。
【0107】
図18は、間接リンク列としてのリンクの指定を解除する間接リンク列を選択する画面の例である。間接リンク列削除画面1511は、見出しである、間接リンク列を含む仕様書の文書ID1512と、文書IDが表示される選択欄1515と、見出しである、間接リンク列の位置1513と、間接リンク列の位置が表示される選択欄1516と、見出しである、間接リンクID1514と、間接リンクIDが表示される選択欄1517から構成される。選択欄1515と、選択欄1516と選択欄1517は組になっており、ある間接リンク列を含む仕様書中の文書IDと、前記間接リンク列の仕様書中の位置と、前記間接リンク列に対応する間接リンクIDが組になった情報の一覧が表示される。前記情報の一覧から、間接リンク列としての指定を解除する間接リンク列に対応する情報を一つ、人間が選択する。
【0108】
例えば、間接リンク列削除画面1511中の行1518を選択した場合、間接リンク列を含む仕様書に対応する文書IDがAであり、かつ、間接リンク列の仕様書中の位置が3であり、かつ、間接リンク列が対応する間接リンクIDが001である間接リンク列に関する情報が、対応する文書IDの値がAである間接リンク管理表55から削除される。
【0109】
以下、間接リンク管理表55と、間接リンクID管理表60から、ある間接リンクに関する情報を削除する手順を図19、図20を用いて説明する。
【0110】
図19は、間接リンクID管理表60から、ある間接リンクに対応する間接リンクIDを削除し、仕様書体系中の全ての間接リンク管理表55から、前記間接リンクIDに対応する全ての間接リンク列への間接リンク列としての指定を解除する手順を示すフローチャートである。
【0111】
ステップ1700では、間接リンクID管理表60中の間接リンクID61から、間接リンクIDの一覧を取得する。ステップ1710では、間接リンクID削除画面1711を表示する。間接リンクID削除画面1711では、間接リンク列としての指定を解除する間接リンク列に対応する間接リンクIDを、ステップ1700で取得した間接リンクIDの一覧から、人間が一つ選択する。間接リンクID削除画面1711の例を図20で示す。
【0112】
ステップ1750では、間接リンクIDが入力された場合、ステップ1760へ遷移する。
【0113】
ステップ1760からステップ1780で使用する間接リンク管理表は、同じ文書IDに対応しているとする。ステップ1760では、一つの仕様書中に、ステップ1750で入力された間接リンクIDに対応する間接リンク列が存在するかどうか検索する。具体的には、間接リンク管理表55中の間接リンクID61から、ステップ1750で入力された間接リンクIDと一致する間接リンクIDを検索する。ステップ1770では、一致する間接リンクIDがある場合は、ステップ1780へ遷移する。一致する間接リンクIDがない場合は、ステップ1790へ遷移する。
【0114】
ステップ1780では、間接リンク管理表55中の間接リンクID61から、ステップ1770で求めた間接リンクIDを含む行において、行中の間接リンクID61中の間接リンクIDと,行中の間接リンク列52中の間接リンク列の位置を削除する。
【0115】
ステップ1790では、仕様書体系中の全ての間接リンク管理表に対して、ステップ1760からステップ1780までの処理が終了した場合、ステップ1800へ遷移する。ステップ1760からステップ1780までの処理が行われていない間接リンク管理表が存在する場合、ステップ1760へ遷移する。
【0116】
ステップ1800では、間接リンクID管理表60中の間接リンクID61から、ステップ1750で入力された間接リンクIDと同じ間接リンクIDを求め、該当間接リンクIDを含む行中の間接リンクID61の間接リンクIDを削除し、処理を終了する。
【0117】
図20は、間接リンク列としての指定を解除する間接リンクに対応する間接リンクIDを選択する画面の例である。間接リンクID削除画面1711は、見出しである、登録済み間接リンクID1712と、間接リンクIDの一覧が表示される選択欄1713から構成される。間接リンク列としての指定を解除する間接リンクに対応する間接リンクIDを、選択欄1713中の間接リンクIDの一覧から、人間が一つ選択する。
【0118】
例えば、間接リンクID削除画面1711中の選択欄1713から、削除する間接リンクに対応する間接リンクIDとして001を選択した場合、仕様書体系に含まれる全ての間接リンク管理表55中の間接リンクID61において、間接リンクIDが001である行から、間接リンクIDと間接リンク列位置が削除され、間接リンクID管理表60中の間接リンクID61中の間接リンクIDが001である行から、間接リンクIDが削除される。
【0119】
【発明の効果】
本発明によれば、一つの仕様書中の項目の変更内容を、複数の仕様書中の関連付けられた項目の内容に反映させる場合、全ての項目間の関連付けを直接、行う必要がなくなる。
【図面の簡単な説明】
【図1】仕様書中の間接リンク項目の内容が変更された場合、その項目の変更内容が、複数の仕様書中の項目の内容に反映されることを表す概要図である。
【図2】ハードウェア構成図である。
【図3】本発明で対象とする表形式の仕様書の書式である。
【図4】仕様書体系中の仕様書、仕様書中の項目間の関連、仕様書中の列間の関連を管理する管理表である。
【図5】仕様書中の内容変更項目の変更内容を、内容変更項目とリンクする項目に反映する処理の手順を示すフローチャートである。
【図6】仕様書中の内容変更項目の変更内容を、内容変更項目とリンクする項目に反映する処理の手順の一部であるステップ200の処理手順を示すフローチャートである。
【図7】仕様書中の内容変更項目の変更内容を、内容変更項目とリンクする項目に反映する処理の手順の一部であるステップ450の処理手順を示すフローチャートである。
【図8】仕様書中の内容変更項目の変更内容を、内容変更項目とリンクする項目に反映する処理の手順の一部であるステップ500の処理手順を示すフローチャートの一部である。
【図9】仕様書中の内容変更項目の変更内容を、内容変更項目とリンクする項目に反映する処理の手順の一部であるステップ500の処理手順を示すフローチャートの一部である。
【図10】仕様書中の内容変更項目の変更内容を、内容変更項目とリンクする項目に反映する処理の手順の一部であるステップ545の処理手順を示すフローチャートである。
【図11】仕様書中のある列を間接リンク列として、間接リンクIDと対応付けて間接リンク管理表に登録し、さらに、間接リンクIDを間接リンクID管理表に登録する処理手順を示すフローチャートの一部である。
【図12】仕様書中のある列を間接リンク列として、間接リンクIDと対応付けて間接リンク管理表に登録し、さらに、間接リンクIDを間接リンクID管理表に登録する処理手順を示すフローチャートの一部である。
【図13】複数の仕様書中のある列を間接リンク列として、間接リンク管理表と間接リンクID管理表に登録する画面の例である。
【図14】仕様書中のある列を間接リンク列として、間接リンクID管理表中に登録済みの間接リンクIDと対応付けて、間接リンク管理表に登録する処理手順を示すフローチャートの一部である。
【図15】仕様書中のある列を間接リンク列として、間接リンクID管理表中に登録済みの間接リンクIDと対応付けて、間接リンク管理表に登録する処理手順を示すフローチャートの一部である。
【図16】仕様書中のある列を、間接リンクID管理表に登録済みのある間接リンクIDに対応する間接リンク列として、間接リンク管理表に登録する画面の例である。
【図17】間接リンク管理表から、ある間接リンク列に対応する間接リンクIDと、前記間接リンク列の仕様書中の位置を削除し、必要があれば、間接リンクID管理表から、前記間接リンク列に対応する間接リンクIDを削除する手順を示すフローチャートである。
【図18】間接リンク列としてのリンクの指定を解除する間接リンク列を選択する画面の例である。
【図19】間接リンクID管理表から、ある間接リンクに対応する間接リンクIDを削除し、仕様書体系中の全ての間接リンク管理表から、前記間接リンクIDに対応する全ての間接リンク列への間接リンク列としての指定を解除する手順を示すフローチャートである。
【図20】間接リンク列としての指定を解除する間接リンクに対応する間接リンクIDを選択する画面の例である。
【符号の説明】
20…入力装置、21…CPU、22…外部記憶装置、23…メモリ、24…出力装置、50…間接リンク管理表、55…間接リンクID管理表、60…直接リンク管理表、65…リンクID管理表、70…文書ID管理表、1001…間接リンクID新規登録画面、1211…間接リンク列追加画面、1511…間接リンク列削除画面、1711…間接リンクID削除画面。
【発明の属する技術分野】
本発明は、ソフトウェア設計・開発時に記述する仕様書中で、データ項目に関する情報が表形式で表されており、さらに仕様書が複数個関連しあっている文書体系において、その関連を計算機に記憶し、記憶した関連にもとづいて、仕様書中の項目間の関連を求めることを特徴とする文書作成支援方法に関する。
【0002】
【従来の技術】
ソフトウェアの開発では、プログラムで利用されるデータを構成するデータ項目の内容が仕様書に記述される。例えば、データ項目は、データの名称や、データの型などの属性をもつ。特に、データベースに格納されるデータを構成するデータ項目の内容は、表形式の仕様書中に記述される。
【0003】
さらに、ある一つのデータ項目の内容が、複数の異なる仕様書間で関連し、記述されることがある。この場合、仕様書間の情報の同一性を保つために、データを構成するデータ項目の内容を変更した結果は、関連をもつ全ての仕様書に反映されなければならない。また、一つの仕様書中のデータ項目の内容の変更結果を、関連をもつ全ての仕様書に、手作業で反映させる場合、関連をもつ全ての仕様書を把握する作業の手間と、仕様書中のデータ項目の内容を変更する作業の手間が必要であった。なお、以下、仕様書中の区分けされた箇所を項目とする。一つの項目は、一つのデータ項目の内容をもつものとする。
【0004】
ある一つの文書中の項目の内容の変更結果を、複数の文書中の項目の内容に反映する方法としては、例えば、下記する特許文献1に示されるように、定型文書間の項目を関連付けることにより、定型文書中の項目の内容の変更結果を、複数の定型文書中の関連付けられた項目に自動的に反映させる方法がある。
【0005】
【特許文献1】
特開平4−211865号公報
【0006】
【発明が解決しようとする課題】
従来の方法では、文書間の項目の関連付けを、関連がある全ての項目に対して人間が行う必要がある。特に、仕様書中にデータを追加するたびにデータを構成するデータ項目の内容をもつ項目一つ一つに対して、仕様書間の関連付けを行う手間が必要である。
【0007】
本発明は、表形式の文書の項目の関連付けを行う場合に、ユーザの項目を軽減することである。
【0008】
つまり、本発明の目的は、表形式の文書において、他の文書中の項目と関連する項目が存在し、その項目に対して、人間が関連付けを行っていない場合に対しても、全ての項目に関連付けを行った場合と同様に、関連する項目を求め、項目の内容の変更結果を、関連する項目に反映し、手作業で項目の関連付けを行う必要がある項目の数を、削減する文書作成支援方法を提供することにある。
【0009】
【課題を解決するための手段】
以下、関連付けをリンクといい、関連付けをすることをリンクすることというとする。
【0010】
本発明は、文書中のある項目と、他の文書中のある項目との間のリンクの情報と、文書中のある列と、他の文書中のある列との間のリンクの情報を管理する管理表を設けておき、仕様書中の項目の内容が変更された場合、前記管理表の情報から、内容が変更された項目とリンクする項目を求め、その項目の内容を変更することを特徴とする。全ての項目の関連付けを手作業で行わなくても、項目間のリンクの情報と、列間のリンクの情報から、該当項目とリンクする項目を求めることができるため、項目のリンクを登録する作業が容易化される。
【0011】
本発明が対象とする文書は表形式であるのが好ましい。表は行と列から構成され、行および列は複数の項目から構成される。
【0012】
データは複数のデータ項目から構成され、一つのデータ中のデータ項目は、お互いに関係をもっているとする。関係とは、あるデータを構成する各データ項目は、互いに異なる属性をもつことと、あるデータを構成するデータ項目に対して、特定の属性をもつデータ項目は一つのみとなることとする。
【0013】
一つの行は、一つのデータを表し、仕様書中の項目は、データ項目の値をもつ。
【0014】
列は、データ項目の値の特性を表す属性をもつとする。例えば、データ名称やデータ型が属性になる。また、一つの列に含まれる全ての項目の値の属性は同一であるとする。例えば、データ型を属性にもつ列中の全ての項目の値は、データ型を表す値である。また、一つの仕様書中に同じ属性をもつ列は複数存在しないとする。例えば、列がもつ属性がデータ型である列が、一つの仕様書中に複数存在することはない。
【0015】
行番号は、文書中の行を一意に表すものであり、列番号は、文書中の列を一意に表すとする。文書中の項目の位置は行番号と列番号の組で一意に表せるとする。
【0016】
2種類の関連付けを定義する。
・文書間の複数の項目をリンクする(直接リンク)。
・文書間の複数の列をリンクする(間接リンク)。
【0017】
直接リンクの情報から、ある項目とリンクされた項目について、前記項目を含む文書と、前記項目の文書中の位置を求めることができる。なお、以下、他の項目とのリンクを指定された項目を、直接リンク項目とする。直接リンクは、同じ内容をもつべき項目間で指定されるとする。例えば、あるデータのデータ項目が複数の文書に記述されている場合、値の属性が”識別番号”であり、値が”0001”であるデータ項目の値をもつ項目と直接リンクする項目は、値の属性が”識別番号”であり、値が”0001”であるデータ項目の値をもつ項目となる。
【0018】
間接リンクの情報から、ある列とリンクされた列について、前記列を含む仕様書と、前記列の文書中の列番号を一意に求めることができる。なお、以下、他の列とのリンクを指定された列を、間接リンク列とし、間接リンク列中に含まれる項目を、間接リンク項目とする。間接リンクは、属性が同じであるべき列間で指定されるとする。
【0019】
以下、ある間接リンク項目(以下、項目A0とする)の内容と同じ内容を常にもつべき項目(以下、項目A1とする)を求める方法を述べる。文書体系中の全ての文書中で、直接リンクの対象となる全ての項目に対して、直接リンクが指定済みであることを前提とする。また、文書体系中の全ての文書中で、間接リンクの対象となる全ての列に対して、間接リンクが指定済みであることを前提とする。
【0020】
項目A0を含む行中に、ある項目B0があり、項目B0は、他の文書中の行中のある項目B1と直接リンクを指定されているとする。直接リンクは、同じ内容をもつべき項目間で指定されるという前提から、項目B0の値と、項目B1の値は常に同一であるべきため、項目B0が示すデータ項目と、項目B1が示すデータ項目は同一になる。
【0021】
また、一つの行に含まれる項目はお互いに関係しあうという前提から、項目B0を含む行中に、項目B0と間係する項目があり、同様に、項目B1を含む行中に項目B1と関係する項目がある。前記より、項目B0が示すデータ項目と、項目B1が示すデータ項目は同一になるため、項目B0と関係する項目と同じ内容をもつべき項目が、項目B1と関係する項目として存在する可能性がある。そのため、項目B0を含む行中の項目A0に対して、同じ内容をもつべき項目である項目A1が、項目B1を含む行中に存在する可能性がある。また、直接リンクの情報から、直接リンク項目を含む文書と、直接リンク項目の文書中の位置が求まる。上記により、項目A1を含む可能性がある行を含む文書と、前記行の行番号が求まる。
【0022】
互いにリンクする各間接リンク列の属性は同一であるという前提と、文書体系中の同じ属性をもつ全ての列に対して、間接リンクが指定されているという前提のため、文書体系中の仕様書中で、項目A0の属性と同じ属性をもつ項目は、項目A0を含む間接リンク列とリンクする列中にのみ含まれる。また、項目A0と項目A1の内容は同一であるべきであるため、項目A0の値の属性と、項目A1の値の属性は同じになる。これにより、項目A1は、項目A0を含む間接リンク列とリンクする列中にのみ存在することになる。また、間接リンクの情報から、間接リンク列を含む文書と、間接リンク列の文書中の位置が求まる。上記により、項目A1を含む可能性のある列を含む文書と、項目A1を含む可能性のある列の列番号が求まる。
【0023】
ここで、一つの行は一つのデータを表すという前提と、一つの文書中に同じ属性を持つ列は複数存在しないという前提より、一つの行中に同一の属性の値をもつ項目は複数存在しない。そのため、項目A1を含む可能性がある行中に、項目A0の値の属性と同じ属性の値をもつ項目がある場合、項目A0の値の属性と同じ属性の値をもつ項目は、一つの行中に複数存在しないことと、一つのデータ中で、あるデータ項目に対応する特定の属性をもつデータ項目は一つのみであるという前提のため、項目A0と同じ属性をもち、項目B0と関係をもつ項目の位置が、行の中で一意に定まる。そのため、項目A0と同じ内容をもつべき項目の位置は項目A1を含む可能性がある行と、項目A0の値の属性と同じ属性をもつ列の交点の項目のみになる。
【0024】
以上により、間接リンク項目とリンクする項目を含む文書と、間接リンク項目とリンクする項目の位置を表す行番号と列番号を求めることが出来るため、前記間接リンク項目とリンクする項目を一意に求めることができる。その結果、全ての項目が直接リンクをもつ場合と同様に、間接リンク項目とリンクする項目が一意に求まる。また、間接リンク項目の内容の変更結果を、リンクする項目の内容に反映することができる。
【0025】
【発明の実施の形態】
以下、本発明の実施の形態を説明する。
【0026】
図1は、仕様書中の間接リンク項目の内容が変更された場合、その項目の変更内容が、複数の仕様書中の項目の内容に反映されることを表す概要図である。
【0027】
以下、内容が変更された項目を内容変更項目とする。図1において、変更元仕様書1中に内容変更項目2が間接リンク列5に含まれており、内容変更項目2を含む行3中に直接リンク項目4が含まれている。間接リンク列5がリンクする列15と、直接リンク項目4がリンクする項目14がともに、変更先仕様書11中にあれば、直接リンク項目4がリンクする項目14が含まれる行13中の、間接リンク列5がリンクする列15中の項目12を、内容変更項目2がリンクする項目とし、項目12の内容を内容変更項目2の変更内容と同一にする。同様に、変更先仕様書16中の、項目17を、内容変更項目2がリンクする項目とし、項目17の内容を内容変更項目2の変更内容と同一にする。
【0028】
図2はハードウェア構成図である。図2において、20は入力装置である。21はCPUである。22は外部記憶装置である。23はメモリである。24は出力装置であり、例えばCRTディスプレイや液晶表示器である。
【0029】
図3は、本発明で対象とする表形式の仕様書の書式である。一つのデータを構成するデータ項目の内容は、一つの行31中の各項目に分けて記述される。例えば、仕様書A30中の行31中の各項目に、一つのデータを構成する各データ項目の内容が記述される。また、仕様書間の項目のリンクを直接リンク35とする。例えば、項目32と項目41とのリンクは直接リンク35となる。また、複数の異なる仕様書上に、値の属性が同じ項目が記述されることがある。例えば、仕様書A30中の列33に含まれる項目の値の属性はデータ型であり、仕様書B40中の列42に含まれる項目の値の属性はデータ型である。この場合、列33に含まれる項目の値の属性と、列42に含まれる項目の値の属性は同一である。また、仕様書間の列のリンクを間接リンク36とする。列33と列42とのリンクは、間接リンク36となる。
【0030】
本発明の実施例では、直接リンクの情報および間接リンクの情報を、図4に示すように、間接リンク管理表55、間接リンクID管理表60、直接リンク管理表65、リンクID管理表70、文書ID管理表50を用いて管理する。
【0031】
文書ID管理表50は、仕様書体系に含まれるある仕様書と、前記仕様書に対応する間接リンク管理表55と、前記仕様書に対応する直接リンク管理表65の組を一意に識別する名称(文書ID)を管理するものであり、文書ID51から構成される。
【0032】
また、間接リンク管理表55は、間接リンク列の仕様書中での位置(間接リンク列位置)を、仕様書体系に含まれる間接リンクを一意に識別するための名称(間接リンクID)と対応付けて管理するものであり、間接リンクID61と、間接リンク列位置57から構成され、文書IDにより仕様書と対応付けられる。なお、間接リンク列に対応する間接リンクIDにより、複数の間接リンク列が互いにリンクするかどうかを判別する。同じ間接リンクIDをもつ間接リンク列は互いにリンクするとする。また、同じ間接リンクIDをもたない間接リンク列は互いにリンクしないとする。例えば、間接リンク列Aに対応する間接リンクIDが001であり、間接リンク列Bに対応する間接リンクIDが001であり、間接リンク列Cに対応する間接リンクIDが002である場合、間接リンク列Aに対応する間接リンクIDと、間接リンク列Bに対応する間接リンクIDが同一であるため、間接リンク列Aと間接リンク列Bはリンクする。しかし、間接リンク列Cに対応する間接リンクIDは、間接リンク列Aに対応する間接リンクIDと間接リンク列Bに対応する間接リンクIDと異なるため、間接リンク列Cは間接リンク列Aおよび間接リンク列Bとリンクしない。
【0033】
また、間接リンクID管理表60は、仕様書体系に含まれる間接リンクを一意に識別するための名称(間接リンクID)を、管理するものであり、間接リンクID61から構成される。
【0034】
また、直接リンク管理表65は、一つの仕様書に含まれる直接リンク項目を一意に識別するための名称(直接リンク項目ID)と、直接リンク項目の仕様書中の位置(直接リンク項目位置)を、仕様書体系中で直接リンク項目と他の項目とのリンクを一意に識別するための名称(リンクID)と対応付けて管理するものであり、直接リンク項目ID66と、直接リンク項目位置67と、リンクID68から構成され、文書IDにより仕様書に対応づけられる。直接リンク項目位置67中で項目の位置は、項目が含まれる行の行番号と、列の列番号が組になった情報として表される。
【0035】
また、リンクID管理表70は、仕様書体系中のリンクIDと、リンクIDに対応する直接リンク項目を表す端点の組と、リンクの状態(リンクのステータス)を管理するものであり、リンクID71、リンクの端点72、リンクのステータス73から構成される。端点は、直接リンク項目が含まれる仕様書の文書IDと、直接リンク項目の直接リンク項目IDが組になった情報として表され、リンクの端点72は端点の組の集合で表される。
【0036】
リンクの具体例を図3、図4に示す。例えば、仕様書A30中の項目32と、仕様書B中の項目41のリンク35は直接リンクであり、リンクID管理表70中の行74では、リンク35に対応するリンクIDは、link001として、リンクID71中に表される。リンクの端点は、項目32を含む仕様書A30に対応する文書IDであるAと、項目32に対応する直接リンク項目IDである01が組になった情報と、項目41に対応する仕様書B40に対応する文書IDであるBと、項目41に対応する直接リンク項目IDである01が組になった情報で、リンクの端点72中に表される。直接リンク管理表65中の行69では、項目32がもつ直接リンク項目IDは01として直接リンク項目ID66中に表され、項目32の位置は、項目32を含む行の行番号である1と、項目32を含む列の列番号である1の組として直接リンク項目位置67中に表され、項目32が対応するリンクはlink001としてリンクID68中に表される。また、仕様書A30中の列33と、仕様書B40中の列42のリンク36は間接リンクであり、間接リンクID管理表60中の項目57では、リンク36に対応する間接リンクIDは、001として表される。間接リンク管理表55中の行58では、列33に対応する間接リンクIDは001であり、列33の位置は、列33の列番号である3として表される。
【0037】
次に、仕様書中で、間接リンク項目の内容の変更手順を図5、図6、図7、図8、図9、図10を用いて説明する。図5は、仕様書中の内容変更項目の変更内容を、内容変更項目とリンクする項目に反映する処理の手順を示すフローチャート、図6は、ステップ200の処理手順を示すフローチャート、図7は、ステップ450の処理手順を示すフローチャート、図8と図9は、ステップ500の処理手順を示すフローチャート、図10は、ステップ545の処理手順を示すフローチャートである。
【0038】
図5で示されたフローチャートの処理手順を説明する。仕様書体系に含まれる各仕様書中において、直接リンクの対象となる項目と、間接リンクの対象となる列に対して、リンクの定義が終了していることを前提とする。また、仕様書中の内容変更項目を検出するために、仕様書の編集作業が行われている間、仕様書中の項目の変更履歴が管理されていることを前提とする。例えば、編集作業開始時に、仕様書中の項目の値を記録し、編集開始時に記録した値と現在の値を比較することで、内容変更項目を求めるとする。また、リンクID管理表70中のリンクのステータス73中の全ての項目の値が、”処理待”であることを前提とする。
【0039】
ステップ150では、仕様書中から、内容変更項目を一つ検索し、その項目の位置を求める。具体的には、内容変更項目の位置は、仕様書中に内容変更項目が存在する行の行番号と、列の列番号である。ステップ200では、内容変更項目が関係するリンクの種類を判定する。ステップ200の処理手順は図6で説明する。ステップ250では、ステップ200において判定されたリンクの種類が、直接リンクの場合はステップ300に遷移し、直接リンクでない場合はステップ350に遷移する。
【0040】
ステップ300では、内容変更項目が直接リンク項目である場合、内容変更項目とリンクする項目を検索し、内容変更項目にリンクする項目の内容を、内容変更項目の変更内容と同じにする。具体的には、まず、内容変更項目を含む仕様書が対応する文書IDに、対応する直接リンク管理表65中の直接リンク項目位置67から、ステップ150で取得した内容変更項目の位置の値と、一致する値を含む行を求め、求めた行の直接リンク項目ID66から直接リンク項目IDを取得し、求めた行のリンクID68からリンクIDを取得する。
【0041】
取得したリンクIDと一致するリンクIDを、リンクID管理表70中のリンクID71から求め、一致するリンクIDを含む行のリンクの端点72から、取得したリンクIDに対応する端点の一覧を取得する。取得した端点の一覧のうち、一つの端点から、文書IDと直接リンク項目IDを取得する。
【0042】
取得した文書IDに対応する直接リンク管理表65中の直接リンク項目ID66から、取得した直接リンク項目IDと一致する直接リンク項目IDを含む行を求め、求めた行の直接リンク項目位置67から、取得した直接リンク項目IDに対応する項目の仕様書中の位置を取得する。取得した位置に存在する項目の内容を、内容変更項目の変更された内容と同じ内容に変更する。先に取得した端点の一覧中の全ての端点に対して、以上の処理を行うことにより、内容変更項目とリンクする全ての項目の内容を、内容変更項目の変更された内容と同じにし、ステップ350に遷移する。
【0043】
ステップ350では、ステップ200において判定されたリンクの種類が間接リンクの場合は、ステップ400に遷移し、間接リンクでない場合は、ステップ700に遷移する。
【0044】
ステップ400からステップ500では、内容変更項目が間接リンク列項目である場合、内容変更項目にリンクする項目を検索し、内容変更項目にリンクする項目の内容を、内容変更項目の変更内容と同じにする。ステップ400では、内容変更項目を含む列に対応する間接リンクIDを取得する。具体的には、まず、ステップ150にて取得した内容変更項目の位置から、内容変更項目を含む列の列番号を取得する。次に、取得した列番号と一致する列番号を、内容変更項目を含む仕様書が対応する文書IDに、対応する間接リンク管理表55中の間接リンク列位置57中から求め、一致する列番号を含む行の間接リンクID61から間接リンクIDを取得する。
【0045】
ステップ450では、内容変更項目を含む仕様書が対応する文書IDに、対応する直接リンク管理表65から、内容変更項目を含む行中の、内容変更項目以外の全ての直接リンク項目に対応する直接リンク項目IDの一覧を取得する。ステップ450の処理手順は図7で説明する。なお以下、内容変更項目を含む行中の、内容変更項目以外の直接リンク項目を、変更元直接リンク項目とする。
【0046】
ステップ500では、仕様書体系中の仕様書中で、内容変更項目とリンクする項目を求め、内容変更項目とリンクする項目の内容を、内容変更項目の変更された内容と同じにする。ステップ500を再帰的に呼び出すことで、処理を行う。ステップ500の処理手順は図8と図9で説明する。
【0047】
ステップ700では、仕様書中の全ての内容変更項目に対して、ステップ150からステップ500までの処理が終了した場合、処理を終了する。ステップ150からステップ500までの処理が行われていない内容変更項目が存在する場合、ステップ150へ遷移する。
【0048】
図6では、ステップ200の処理手順を示す。ステップ205では、内容変更項目が直接リンク項目として指定されているかどうか検索する。具体的には、内容変更項目を含む仕様書が対応する文書IDに、対応する直接リンク管理表65中の直接リンク項目位置67から、ステップ150で取得した内容変更項目の位置の値と一致する値を検索する。ステップ210では、一致する位置の値がある場合は、ステップ215へ遷移し、一致する位置の値がない場合は、ステップ220へ遷移する。
【0049】
ステップ215では、内容変更項目が直接リンク項目として指定されているとして、ステップ220へ遷移する。
【0050】
ステップ220では、内容変更項目が間接リンク列項目として指定されているかどうか検索する。具体的には、ステップ150で取得した内容変更項目の位置から列番号を取得し、取得した列番号と一致する列番号を、内容変更項目を含む仕様書が対応する文書IDに、対応する間接リンク管理表55中の間接リンク列位置57から検索する。ステップ225では、一致する列番号がある場合は、ステップ230へ遷移し、一致する列番号がない場合は、ステップ235へ遷移する。ステップ230では、ステップ210で、内容変更項目が直接リンク項目であると判定されている場合、ステップ240へ遷移する。直接リンク項目ではないと判定されている場合は、ステップ245へ遷移する。
【0051】
ステップ240では、内容変更項目は直接リンク項目であり、かつ間接リンク項目であるとして、フローを終了する。ステップ245では、内容変更項目は間接リンク項目であるとして、フローを終了する。
【0052】
ステップ235では、ステップ210で、内容変更項目が直接リンク項目であると判定されている場合、ステップ246へ遷移する。直接リンク項目ではないと判定されている場合、ステップ247へ遷移する。ステップ246では、内容変更項目が直接リンク項目であるとして、フローを終了する。ステップ247では、内容変更項目は直接リンク項目、間接リンク列項目のどちらでもないとして、フローを終了する。
【0053】
図7では、ステップ450の処理手順を示す。ステップ455では、ステップ150で取得した内容変更項目の位置から、内容変更項目が含まれる行の行番号を取得する。ステップ460では、内容変更項目を含む仕様書が対応する文書IDに、対応する直接リンク管理表65中の直接リンク項目位置67から、ステップ455で取得した内容変更項目を含む行の行番号と一致する行番号を検索する。ステップ465では、一致する行番号がある場合は、ステップ470へ遷移し、一致する行番号がない場合は、内容変更項目を含む行中に直接リンク項目がないとして、ステップ700へ遷移する。
【0054】
ステップ470では、内容変更項目を含む行中の直接リンク項目の一覧を求める。具体的には、内容変更項目を含む仕様書が対応する文書IDに、対応する直接リンク管理表65中の直接リンク項目位置67から、ステップ455で取得した内容変更項目を含む行の行番号と一致する行番号を含む行を求め、求めた行の直接リンク項目ID66から、直接リンク項目IDを取得する。ステップ475では、内容変更項目を含む行中の、内容変更項目以外の全ての直接リンク項目に対応する直接リンク項目IDの一覧を取得した場合、内容変更項目を含む仕様書の文書IDを、取得した直接リンク項目IDの一覧中の全ての直接リンク項目IDが対応する文書IDとして取得し、フローを終了する。全ての直接リンク項目IDの一覧を取得していない場合は、ステップ470へ遷移する。
【0055】
図8と図9では、ステップ500の処理手順を示す。ステップ505からステップ525までの処理では、ステップ450で取得した変更元直接リンク項目の情報の一覧、または、ステップ610で取得した直接リンク項目の情報の一覧から、一つの項目の情報を取得し、取得した項目に対応するリンクの端点の一覧を求める。
【0056】
ステップ505では、ステップ450からステップ500へ遷移した場合は、ステップ450で取得した変更元直接リンク項目IDの一覧から、一つの直接リンク項目IDを取得し、ステップ450で取得した文書IDを、取得した直接リンク項目IDに対応する直接リンク項目を含む仕様書が対応する文書IDとする。また、ステップ610からステップ500へ再帰的に遷移した場合は、ステップ610で取得した直接リンク項目IDの一覧から、一つの直接リンク項目IDを取得し、ステップ610で取得した文書IDを、取得した直接リンク項目IDが対応する直接リンク項目を含む仕様書が対応する文書IDとする。
【0057】
ステップ510では、まず、ステップ505で取得した文書IDに対応する直接リンク管理表65中の直接リンク項目ID66から、ステップ505で取得した直接リンク項目IDと一致する直接リンク項目IDを含む行を求め、求めた行のリンクID68から、リンクIDを取得する。次に、取得したリンクIDと一致するリンクIDを含む行を、リンクID管理表70中のリンクID71から求め、求めた行のリンクのステータス73から、リンクのステータスを取得する。
【0058】
ステップ515では、ステップ510で取得したリンクのステータスが”処理待”の値の場合、ステップ520へ遷移する。リンクのステータスが”処理待”以外の値の場合、ステップ625へ遷移する。
【0059】
ステップ520では、ステップ505で取得した直接リンク項目に対応するリンクに含まれる端点の一覧を取得する。具体的には、まず、リンクID管理表70中のリンクID71の、ステップ510で取得したリンクIDと一致するリンクIDを含む行のリンクの端点72から、端点の一覧を取得する。次に、ステップ505で取得した直接リンク項目に対応する端点以外の端点の一覧から、直接リンク項目を含む仕様書に対応する文書IDと、直接リンク項目に対応する直接リンク項目IDが組になった一覧を取得する。
【0060】
ステップ525では、リンクID管理表70中のリンクID71中で、ステップ510で取得したリンクIDを含む行の、リンクのステータス73の値を、”処理中”に変更する。
【0061】
ステップ530から、ステップ615までの処理では、まず、ステップ520で取得したリンクの端点の一覧中の各端点の情報と、内容変更項目を含む列とリンクする列の情報から、内容変更項目とリンクする項目が、仕様書中の端点を含む行中に存在するかどうかを判定し、内容変更項目とリンクする項目が存在する場合は、内容変更項目とリンクする項目の内容を、内容変更項目の変更された内容と同じにする。次に、仕様書中の端点を含む行中に、端点以外の直接リンク項目が存在するかどうか検索し、直接リンク項目が存在する場合は、ステップ500を再帰的に呼び出すことにより、各直接リンク項目のリンク先の仕様書中に、内容変更項目とリンクする項目がないかどうか求める。
【0062】
ステップ530では、ステップ520で取得した、端点を含む仕様書が対応する文書IDと、端点が対応する直接リンク項目IDが組になった情報の一覧から、一つの端点が対応する文書IDと直接リンク項目IDの組を取得する。
【0063】
ステップ535では、ステップ530で取得した端点の情報と、ステップ400で取得した間接リンクIDから、内容変更項目とリンクする項目が存在するかどうかを判定し、該当項目が存在する場合は、該当項目の内容を内容変更項目の変更された内容と同じにする。ステップ535の処理手順は図10で説明する。
【0064】
ステップ600では、ステップ530で取得した端点を含む仕様書中の行中に、端点以外の直接リンク項目が存在するかどうか検索する。具体的には、まず、ステップ530で取得した文書IDに対応する直接リンク管理表65中の直接リンク項目ID66から、ステップ530で取得した直接リンク項目IDと同じ直接リンク項目IDを含む行を求め、求めた行の直接リンク項目位置67から、直接リンク項目位置を取得する。次に、取得した直接リンク項目位置から行番号を取得し、取得した行番号と同じ行番号を含む直接リンク項目位置を、直接リンク項目位置67から検索する。ステップ605では、取得した行番号と同じ行番号を含む直接リンク項目位置が存在する場合は、ステップ610へ遷移する。取得した行番号と同じ行番号を含む直接リンク項目位置が存在しない場合は、ステップ620へ遷移する。
【0065】
ステップ610では、仕様書中のステップ530で取得した端点を含む行中に存在する、端点以外の全ての直接リンク項目を求め、直接リンク項目に対応する直接リンク項目IDの一覧を取得する。具体的には、まず、ステップ530で取得した文書IDに対応する直接リンク管理表65中の直接リンク項目ID66から、ステップ530で取得した直接リンク項目IDと同じ直接リンク項目IDを含む行を求め、求めた行の直接リンク項目位置67から、直接リンク項目位置を取得する。次に、取得した直接リンク項目位置から行番号を取得し、取得した行番号と同じ行番号を含む直接リンク項目位置を、直接リンク項目位置67から全て求める。求めた各直接リンク項目位置を含む行の直接リンク項目ID66から、直接リンク項目IDを取得し、直接リンク項目IDの一覧を取得する。また、端点を含む仕様書の文書IDを、取得した直接リンク項目IDの一覧中の全ての直接リンク項目IDが対応する文書IDとして取得する。
【0066】
ステップ615では、ステップ610で求めた直接リンク項目IDに対応する全ての直接リンク項目に対して、直接リンク項目とリンクする項目を含む行中に、内容変更項目とリンクする項目が存在するかどうか判定し、内容変更項目とリンクする項目が存在する場合は、内容変更項目とリンクする項目の内容を、内容変更項目の変更された内容と同じにするために、ステップ500を再帰的に呼び出す。
【0067】
ステップ620では、ステップ520で取得した全ての端点に対して、ステップ530からステップ615までの処理が終了した場合、ステップ625へ遷移する。ステップ530からステップ615までの処理が行われていない端点が存在する場合、ステップ530へ遷移する。
【0068】
ステップ625では、ステップ500がステップ450の終了後に呼び出されていた場合、ステップ450で取得した全ての変更元直接リンク項目に対して、ステップ505からステップ620までの処理が終了した場合は、ステップ630へ遷移し、ステップ505からステップ620までの処理が終了していない直接リンク項目が存在する場合は、ステップ505へ遷移する。または、ステップ500が、ステップ615の終了後に再帰的に呼び出されていた場合、ステップ615で取得した全ての直接リンク項目に対して、ステップ505からステップ620までの処理が終了した場合は、ステップ630へ遷移し、ステップ505からステップ620までの処理が行われていない直接リンク項目が存在する場合は、ステップ505へ遷移する。
【0069】
ステップ630では、ステップ500がステップ450の終了後に呼び出されていた場合、ステップ700へ遷移する。ステップ500が、ステップ615の終了後に再帰的に呼び出されていた場合、ステップ500を呼び出したステップ500中の、ステップ620へ遷移する。
【0070】
図10では、ステップ535の処理手順を示す。ステップ540からステップ560までの処理では、ステップ530で取得した直接リンク項目を含む仕様書中から、内容変更項目を含む列に対応する間接リンクIDと同じ間接リンクIDをもつ列を検索し、内容変更項目とリンクする項目を求め、内容変更項目とリンクする項目の内容を、内容変更項目の内容と同じにする。
【0071】
ステップ540では、内容変更項目を含む列に対応する間接リンクIDと、同じ間接リンクIDをもつ列が、ステップ530で取得した直接リンク項目IDに対応する直接リンク項目を含む仕様書中に存在するかどうか検索する。具体的には、ステップ530で取得した文書IDに対応する間接リンク管理表55中の間接リンクID61から、ステップ400で取得した間接リンクIDと一致する間接リンクIDを検索する。一致する間接リンクIDが存在する場合は、該当間接リンクIDを含む行の、間接リンク列位置57から、間接リンク列位置を取得する。ステップ545では、一致する間接リンクIDが存在する場合、内容変更項目とリンクする項目が、ステップ530で取得した文書IDに対応する仕様書中に含まれるとして、ステップ550に遷移する。一致する間接リンクIDがない場合は、内容変更項目とリンクする項目が、ステップ530で取得した文書IDに対応する仕様書中に含まれないとして、フローを終了する。
【0072】
ステップ550では、ステップ530で取得した直接リンク項目IDに対応する直接リンク項目の仕様書中の位置を取得する。具体的には、ステップ530で取得した文書IDに対応する直接リンク管理表65中の直接リンク項目ID66から、ステップ530で取得した直接リンク項目IDと同じ直接リンク項目IDを含む行を求め、求めた行の直接リンク項目62から、直接リンク項目位置を取得する。
【0073】
ステップ555では、まず、ステップ550で取得した直接リンク項目位置から、行番号を取得する。取得した行番号と、ステップ540で取得した間接リンクIDに対応する列の列番号から、内容変更項目とリンクする項目の仕様書中の位置が一意に求まる。
【0074】
ステップ560では、ステップ555で取得した、内容変更項目とリンクする項目の内容を、内容変更項目の変更された内容に変更する。
【0075】
以下、仕様書中のある列を間接リンク列として、間接リンク管理表55と間接リンクID管理表60に登録する手順を図11、図12、図13を用いて説明する。
【0076】
図11と図12は、仕様書中のある列を間接リンク列として、間接リンクIDと対応付けて間接リンク管理表55に登録し、さらに、間接リンクIDを間接リンクID管理表60に登録する処理手順を示すフローチャートである。
【0077】
ステップ1000では、間接リンクID新規登録画面1001を表示する。間接リンクID新規登録画面1001では、間接リンク列として登録する列を含む仕様書の文書IDと、前記列の位置が組になった複数の情報と、間接リンク列として登録する全ての列に対応する一つの間接リンクIDを人間が入力する。具体的には、列の位置は、列の列番号である。間接リンクID新規登録画面の例を図11で示す。
【0078】
ステップ1050では、文書IDと間接リンク列位置と間接リンクIDが入力された場合、ステップ1060へ遷移する。
【0079】
ステップ1060では、間接リンクID管理表60中の間接リンクID61から、ステップ1050で入力された間接リンクIDと一致する間接リンクIDを検索する。ステップ1070では、一致する間接リンクIDがある場合、ステップ1080に遷移する。一致する間接リンクIDがない場合は、ステップ1090に遷移する。ステップ1080では、ステップ1050で入力された間接リンクIDがすでに間接リンクID管理表に登録済みであることを画面に表示し、処理を終了する。
【0080】
ステップ1090では、ステップ1050で入力された、文書IDと間接リンク列位置の組の一覧から、文書IDと間接リンク列位置の組を一つ取得する。
【0081】
ステップ1100では、ステップ1090で取得した文書IDと間接リンク列位置で指定される列が、間接リンク列として登録済みかどうか調べる。具体的には、ステップ1090で取得した文書IDに対応する間接リンク管理表55中の間接リンク列位置57から、ステップ1090で取得した間接リンク列位置と一致する位置の値を検索する。ステップ1110では、一致する位置の値がある場合、ステップ1120へ遷移する。一致する位置の値がない場合、ステップ1130に遷移する。ステップ1120では、ステップ1090で取得した文書IDと間接リンク列位置で指定される列が、間接リンク列として登録済みであることを画面に表示し、処理を終了する。
【0082】
ステップ1130では、ステップ1050で入力された、全ての文書IDと間接リンク列位置の組に対して、ステップ1090からステップ1110までの処理が終了した場合,ステップ1140へ遷移する。ステップ1090からステップ1110までの処理が行われていない文書IDと間接リンク列位置の組が存在する場合、ステップ1090へ遷移する。
【0083】
ステップ1140では、まず、ステップ1050で入力された間接リンクIDを、間接リンクID管理表60に登録する。次に、ステップ1050で入力された文書IDと間接リンク列位置に対応する列を、ステップ1050で入力された間接リンクIDに対応する間接リンク列として、間接リンク管理表55に登録する。具体的には、まず、間接リンクID管理表60中の間接リンクID61に、ステップ1050で入力された間接リンクIDを追加する。次に、間接リンク管理表55中の間接リンクID61に、ステップ1050で入力された間接リンクIDを追加し、間接リンクIDを追加した行の間接リンク列位置57中に、ステップ1050で入力された間接リンク列位置を追加する。ステップ1050で入力された全ての文書IDと間接リンク位置に対して、間接リンク管理表55中への間接リンクIDと間接リンク列位置の追加が終了した場合、処理を終了する。
【0084】
図11は、複数の仕様書中のある列を間接リンク列として、間接リンク管理表55と間接リンクID管理表60に登録する画面の例である。
【0085】
間接リンクID新規登録画面1001は、見出しである、間接リンク列を含む仕様書の文書ID1002と、間接リンク列として登録する列を含む仕様書が対応する文書IDを記述する記述欄1005と、見出しである、間接リンク列の位置1003と、間接リンク列として登録する列の位置を、前記文書IDと対応づけて記述する記述欄1006と、見出しである間接リンクID1004と、間接リンク列として登録する列と対応させる間接リンクIDを一つ記述する記述欄1007から構成される。
【0086】
例えば、仕様書A1015中に、属性がデータ型の列1016があるとし、まず、間接リンクID新規登録画面1001中の間接リンク列を含む仕様書の文書ID1002の記述欄1005中の項目1008に、仕様書Aに対応する文書IDとしてAを入力する。次に、間接リンク列の位置1003の記述欄1006中の項目1009に、仕様書A1015中の列1016の位置として3を入力する。同様に、仕様書B1020中に、属性がデータ型の列1021があるとし、まず、間接リンクID新規登録画面1001中の間接リンク列を含む仕様書の文書ID1002の記述欄1005中の項目1010に、仕様書Bに対応する文書IDとしてBを入力する。次に、間接リンク列の位置1003の記述欄1006の項目1011に、仕様書B1020中の列1021の位置として2を入力する。また、間接リンクID新規登録画面1001中の間接リンクID1004の記述欄1007に、列1016と列1021が対応する間接リンクIDとして001を入力する。
【0087】
以下、仕様書中のある列を間接リンクとして、間接リンクID管理表60に登録済みの間接リンクIDと対応づけて登録する手順を図14、図15、図16を用いて説明する。
【0088】
図14と図15は、仕様書中のある列を間接リンク列として、間接リンクID管理表60中に登録済みの間接リンクIDと対応付けて、間接リンク管理表55に登録する処理手順を示すフローチャートである。
【0089】
ステップ1200では、間接リンクID管理表60中の間接リンクID61から、間接リンクIDの一覧を取得する。ステップ1210では、間接リンク列追加画面1211を表示する。間接リンク列追加画面1211では、間接リンク列として登録する列を含む仕様書の文書IDと、前記列の位置が組になった複数の情報を人間が入力し、ステップ1200で取得した間接リンクIDの一覧から、間接リンク列として登録する全ての列に対応する間接リンクIDを人間が選択する。間接リンク列追加画面1211の例を図16で示す。
【0090】
ステップ1250では、文書IDと間接リンク列位置と間接リンクIDが入力された場合、ステップ1260へ遷移する。
【0091】
ステップ1260では、ステップ1250で入力された、文書IDと間接リンク列位置の組の一覧から、文書IDと間接リンク列位置の組を一つ取得する。以下、ステップ1270からステップ1320までの処理では、ステップ1260で取得した文書IDに対応する間接リンク管理表55を使用する。
【0092】
ステップ1270では、ステップ1260で取得した文書IDと間接リンク列位置により指定される列が、間接リンク列として登録済みかどうか調べる。具体的には、間接リンク管理表55中の間接リンク列位置57から、ステップ1260で取得した間接リンク列位置と一致する位置の値を検索する。ステップ1280では、一致する位置の値がある場合、ステップ1290へ遷移する。一致する位置の値がない場合、ステップ1300に遷移する。ステップ1290では、ステップ1260で取得した文書IDと間接リンク列位置で指定される列が、間接リンク列として登録済みであることを画面に表示し、処理を終了する。
【0093】
ステップ1300では、一つの仕様書中に同じ属性をもつ列は複数存在しないという前提を維持するために、ステップ1260で取得した文書IDに対応する仕様書中に、ステップ1250で取得した間接リンクIDと同じ間接リンクIDに対応する間接リンク列が存在するかどうかを調べる。具体的には、間接リンク管理表55中の間接リンクID61から、ステップ1250で取得した間接リンクIDと一致する間接リンクIDを検索する。ステップ1310では、一致する間接リンクIDがある場合、ステップ1320へ遷移する。一致する位置の値がない場合、ステップ1330に遷移する。ステップ1320では、ステップ1250で入力された間接リンクIDに対応する間接リンク列が、ステップ1260で取得した文書IDに対応する仕様書中に登録済みであることを画面に表示し、処理を終了する。
【0094】
ステップ1330では、ステップ1250で入力された、全ての文書IDと間接リンク列位置の組に対して、ステップ1260からステップ1320までの処理が終了した場合、ステップ1340へ遷移する。ステップ1260からステップ1320までの処理が行われていない文書IDと間接リンク列位置の組が存在する場合、ステップ1260へ遷移する。
【0095】
ステップ1340では、ステップ1250で入力された文書IDと間接リンク列位置に対応する全ての列を、ステップ1250で選択された間接リンクIDに対応する間接リンク列として、間接リンク管理表55に登録する。具体的には、まず、ステップ1250で入力された文書IDと間接リンク列位置の組の一覧から、文書IDと間接リンク列位置の組を一つ取得する。次に、取得した文書IDに対応する間接リンク管理表55中の間接リンクID61に、ステップ1250で選択された間接リンクIDを追加し、取得した間接リンク列位置を、間接リンクIDを追加した行の間接リンク列位置57に追加する。ステップ1250で入力された全ての文書IDと間接リンク列位置の組に対して、上記の処理を繰り返し行うことにより、間接リンク管理表55中への間接リンクIDと間接リンク列位置の追加が終了した場合、処理を終了する。
【0096】
図16は、仕様書中のある列を、間接リンクID管理表60に登録済みのある間接リンクIDに対応する間接リンク列として、間接リンク管理表55に登録する画面の例である。間接リンク列追加画面1211は、見出しである、間接リンク列を含む仕様書の文書ID1212と、間接リンク列として登録する列を含む仕様書が対応する文書IDを記述する記述欄1215と、見出しである、間接リンク列の位置1213と、間接リンク列として登録する列の位置を、前記文書IDと対応づけて記述する記述欄1216と、見出しである、登録済み間接リンクID1214と、間接リンクID管理表60に登録済みの間接リンクIDの一覧が表示される選択欄1217から構成される。選択欄1217から、間接リンク列として登録する列と対応させる間接リンクIDを一つ、人間が選択する。
【0097】
例えば、仕様書C1225中に、属性がデータ型の列1226があるとし、まず、間接リンク列追加画面1211中の、間接リンク列を含む仕様書の文書ID1212の記述欄1215中の項目1218に、仕様書Cに対応する文書IDとしてCを入力する。次に、間接リンク列の位置1213の記述欄1216中の項目1219に、仕様書C1225中の列1226の位置として2を入力する。具体的には、列の位置とは列の列番号のことである。
【0098】
同様に、仕様書D1230中に、属性がデータ型の列1231があるとし、まず、間接リンク列追加画面1211中の、間接リンク列を含む仕様書の文書ID1212の記述欄1215中の項目1220に、仕様書Dに対応する文書IDとしてDを入力する。次に、間接リンク列の位置1213の記述欄1216中の項目1221に、仕様書D1230中の列1231の位置として3を入力する。間接リンク列追加画面1211中の、登録済み間接リンクID1214の選択欄から、列1226と列1231が対応する間接リンクIDとして001を選択する。
【0099】
以下、仕様書中のある間接リンク列への間接リンク列としての指定を解除するために、間接リンク管理表55と、間接リンクID管理表60から、前記間接リンク列に関する情報を削除する手順を図17、図18を用いて説明する。
【0100】
図17は、間接リンク管理表55から、ある間接リンク列に対応する間接リンクIDと、前記間接リンク列の仕様書中の位置を削除し、必要があれば、間接リンクID管理表60から、前記間接リンク列に対応する間接リンクIDを削除する手順を示すフローチャートである。
【0101】
ステップ1500では、仕様書体系に含まれる、全ての間接リンク列の情報の一覧を求める。具体的には、まず、間接リンクID管理表60中の間接リンクID61から、間接リンクIDの一覧を取得する。次に、取得した間接リンクIDの一覧中の各間接リンクIDに対応する間接リンク位置を、仕様書体系中の全ての間接リンク管理表から取得し、間接リンク列を含む仕様書に対応する文書IDと、間接リンク列の仕様書中の位置と、間接リンク列が対応する間接リンクIDの組の一覧を求める。
【0102】
ステップ1510では、間接リンク列削除画面1511を表示する。間接リンク列削除画面1511では、仕様書体系に含まれる間接リンク列の一覧から、間接リンク列としてのリンクの指定を解除する列を一つ、人間が選択する。具体的には、ステップ1500で求めた間接リンク列に対応する情報の一覧から、間接リンク列としてのリンクの指定を解除する列に対応する情報を一つ、人間が選択する。間接リンク列削除画面1511の例を図18で示す。
【0103】
ステップ1550では、間接リンク列に対応する情報が選択された場合、選択された情報に対応する間接リンク列に対して、間接リンク列に対応する文書IDと、間接リンク列位置と、間接リンク列に対応する間接リンク列IDを取得し、ステップ1560へ遷移する。
【0104】
ステップ1560では、ステップ1550で取得した文書IDに対応する間接リンク管理表55中の間接リンクID61から、ステップ1550で取得した間接リンクIDと同じ間接リンクIDを求める。ステップ1570では、ステップ1560で求めた間接リンクIDを含む行から、行中の間接リンクID61中の間接リンクIDと,行中の間接リンク列52中の間接リンク列位置を削除する。
【0105】
ステップ1580では、仕様書体系中の全ての間接リンク管理表中に、ステップ1550で取得した間接リンクIDに対応する間接リンク列の情報が存在しない場合、間接リンクID管理表60に前記間接リンクIDが登録されたままになることを防ぐために、ステップ1550で取得した間接リンクIDに対応する間接リンク列の情報が全ての間接リンク管理表中に存在しないかどうか検索する。具体的には、ある間接リンク管理表55中の間接リンクID61から、ステップ1550で取得した間接リンクIDと一致する間接リンクIDを検索し、上記の検索を、仕様書体系中の全ての間接リンク管理表に対して行う。ステップ1590では、一致する間接リンクIDがない場合は、ステップ1600へ遷移する。一致する間接リンクIDが一つ以上ある場合は、処理を終了する。
【0106】
ステップ1600では、間接リンクID管理表60中の間接リンクID61中から、ステップ1550で取得した間接リンクIDと一致する間接リンクIDを求め、求めた間接リンクIDを含む行中の間接リンクID61の間接リンクIDを削除し、処理を終了する。
【0107】
図18は、間接リンク列としてのリンクの指定を解除する間接リンク列を選択する画面の例である。間接リンク列削除画面1511は、見出しである、間接リンク列を含む仕様書の文書ID1512と、文書IDが表示される選択欄1515と、見出しである、間接リンク列の位置1513と、間接リンク列の位置が表示される選択欄1516と、見出しである、間接リンクID1514と、間接リンクIDが表示される選択欄1517から構成される。選択欄1515と、選択欄1516と選択欄1517は組になっており、ある間接リンク列を含む仕様書中の文書IDと、前記間接リンク列の仕様書中の位置と、前記間接リンク列に対応する間接リンクIDが組になった情報の一覧が表示される。前記情報の一覧から、間接リンク列としての指定を解除する間接リンク列に対応する情報を一つ、人間が選択する。
【0108】
例えば、間接リンク列削除画面1511中の行1518を選択した場合、間接リンク列を含む仕様書に対応する文書IDがAであり、かつ、間接リンク列の仕様書中の位置が3であり、かつ、間接リンク列が対応する間接リンクIDが001である間接リンク列に関する情報が、対応する文書IDの値がAである間接リンク管理表55から削除される。
【0109】
以下、間接リンク管理表55と、間接リンクID管理表60から、ある間接リンクに関する情報を削除する手順を図19、図20を用いて説明する。
【0110】
図19は、間接リンクID管理表60から、ある間接リンクに対応する間接リンクIDを削除し、仕様書体系中の全ての間接リンク管理表55から、前記間接リンクIDに対応する全ての間接リンク列への間接リンク列としての指定を解除する手順を示すフローチャートである。
【0111】
ステップ1700では、間接リンクID管理表60中の間接リンクID61から、間接リンクIDの一覧を取得する。ステップ1710では、間接リンクID削除画面1711を表示する。間接リンクID削除画面1711では、間接リンク列としての指定を解除する間接リンク列に対応する間接リンクIDを、ステップ1700で取得した間接リンクIDの一覧から、人間が一つ選択する。間接リンクID削除画面1711の例を図20で示す。
【0112】
ステップ1750では、間接リンクIDが入力された場合、ステップ1760へ遷移する。
【0113】
ステップ1760からステップ1780で使用する間接リンク管理表は、同じ文書IDに対応しているとする。ステップ1760では、一つの仕様書中に、ステップ1750で入力された間接リンクIDに対応する間接リンク列が存在するかどうか検索する。具体的には、間接リンク管理表55中の間接リンクID61から、ステップ1750で入力された間接リンクIDと一致する間接リンクIDを検索する。ステップ1770では、一致する間接リンクIDがある場合は、ステップ1780へ遷移する。一致する間接リンクIDがない場合は、ステップ1790へ遷移する。
【0114】
ステップ1780では、間接リンク管理表55中の間接リンクID61から、ステップ1770で求めた間接リンクIDを含む行において、行中の間接リンクID61中の間接リンクIDと,行中の間接リンク列52中の間接リンク列の位置を削除する。
【0115】
ステップ1790では、仕様書体系中の全ての間接リンク管理表に対して、ステップ1760からステップ1780までの処理が終了した場合、ステップ1800へ遷移する。ステップ1760からステップ1780までの処理が行われていない間接リンク管理表が存在する場合、ステップ1760へ遷移する。
【0116】
ステップ1800では、間接リンクID管理表60中の間接リンクID61から、ステップ1750で入力された間接リンクIDと同じ間接リンクIDを求め、該当間接リンクIDを含む行中の間接リンクID61の間接リンクIDを削除し、処理を終了する。
【0117】
図20は、間接リンク列としての指定を解除する間接リンクに対応する間接リンクIDを選択する画面の例である。間接リンクID削除画面1711は、見出しである、登録済み間接リンクID1712と、間接リンクIDの一覧が表示される選択欄1713から構成される。間接リンク列としての指定を解除する間接リンクに対応する間接リンクIDを、選択欄1713中の間接リンクIDの一覧から、人間が一つ選択する。
【0118】
例えば、間接リンクID削除画面1711中の選択欄1713から、削除する間接リンクに対応する間接リンクIDとして001を選択した場合、仕様書体系に含まれる全ての間接リンク管理表55中の間接リンクID61において、間接リンクIDが001である行から、間接リンクIDと間接リンク列位置が削除され、間接リンクID管理表60中の間接リンクID61中の間接リンクIDが001である行から、間接リンクIDが削除される。
【0119】
【発明の効果】
本発明によれば、一つの仕様書中の項目の変更内容を、複数の仕様書中の関連付けられた項目の内容に反映させる場合、全ての項目間の関連付けを直接、行う必要がなくなる。
【図面の簡単な説明】
【図1】仕様書中の間接リンク項目の内容が変更された場合、その項目の変更内容が、複数の仕様書中の項目の内容に反映されることを表す概要図である。
【図2】ハードウェア構成図である。
【図3】本発明で対象とする表形式の仕様書の書式である。
【図4】仕様書体系中の仕様書、仕様書中の項目間の関連、仕様書中の列間の関連を管理する管理表である。
【図5】仕様書中の内容変更項目の変更内容を、内容変更項目とリンクする項目に反映する処理の手順を示すフローチャートである。
【図6】仕様書中の内容変更項目の変更内容を、内容変更項目とリンクする項目に反映する処理の手順の一部であるステップ200の処理手順を示すフローチャートである。
【図7】仕様書中の内容変更項目の変更内容を、内容変更項目とリンクする項目に反映する処理の手順の一部であるステップ450の処理手順を示すフローチャートである。
【図8】仕様書中の内容変更項目の変更内容を、内容変更項目とリンクする項目に反映する処理の手順の一部であるステップ500の処理手順を示すフローチャートの一部である。
【図9】仕様書中の内容変更項目の変更内容を、内容変更項目とリンクする項目に反映する処理の手順の一部であるステップ500の処理手順を示すフローチャートの一部である。
【図10】仕様書中の内容変更項目の変更内容を、内容変更項目とリンクする項目に反映する処理の手順の一部であるステップ545の処理手順を示すフローチャートである。
【図11】仕様書中のある列を間接リンク列として、間接リンクIDと対応付けて間接リンク管理表に登録し、さらに、間接リンクIDを間接リンクID管理表に登録する処理手順を示すフローチャートの一部である。
【図12】仕様書中のある列を間接リンク列として、間接リンクIDと対応付けて間接リンク管理表に登録し、さらに、間接リンクIDを間接リンクID管理表に登録する処理手順を示すフローチャートの一部である。
【図13】複数の仕様書中のある列を間接リンク列として、間接リンク管理表と間接リンクID管理表に登録する画面の例である。
【図14】仕様書中のある列を間接リンク列として、間接リンクID管理表中に登録済みの間接リンクIDと対応付けて、間接リンク管理表に登録する処理手順を示すフローチャートの一部である。
【図15】仕様書中のある列を間接リンク列として、間接リンクID管理表中に登録済みの間接リンクIDと対応付けて、間接リンク管理表に登録する処理手順を示すフローチャートの一部である。
【図16】仕様書中のある列を、間接リンクID管理表に登録済みのある間接リンクIDに対応する間接リンク列として、間接リンク管理表に登録する画面の例である。
【図17】間接リンク管理表から、ある間接リンク列に対応する間接リンクIDと、前記間接リンク列の仕様書中の位置を削除し、必要があれば、間接リンクID管理表から、前記間接リンク列に対応する間接リンクIDを削除する手順を示すフローチャートである。
【図18】間接リンク列としてのリンクの指定を解除する間接リンク列を選択する画面の例である。
【図19】間接リンクID管理表から、ある間接リンクに対応する間接リンクIDを削除し、仕様書体系中の全ての間接リンク管理表から、前記間接リンクIDに対応する全ての間接リンク列への間接リンク列としての指定を解除する手順を示すフローチャートである。
【図20】間接リンク列としての指定を解除する間接リンクに対応する間接リンクIDを選択する画面の例である。
【符号の説明】
20…入力装置、21…CPU、22…外部記憶装置、23…メモリ、24…出力装置、50…間接リンク管理表、55…間接リンクID管理表、60…直接リンク管理表、65…リンクID管理表、70…文書ID管理表、1001…間接リンクID新規登録画面、1211…間接リンク列追加画面、1511…間接リンク列削除画面、1711…間接リンクID削除画面。
Claims (4)
- 相互に関係を有する複数種類の表形式の文書を作成・編集する文書作成支援方法において、表形式の文書編集時に、文章中の対象となる項目を含む行と同じ行に含まれ、かつ、対象となる項目と関係をもつ項目に対して、前記対象となる項目に関連付けられた項目の位置と、前記対象となる項目を含む列と前記関連付けられた列の位置にもとづいて、前記対象となる項目と前記関連する項目の位置を求めることを特徴とする文書作成支援方法。
- 表形式の文書編集時に、文書中の前記対象となる項目の内容が変更された場合、変更された前記対象となる項目に関連する項目の内容を更新することを特徴とする請求項1記載の文書作成支援方法。
- 記憶手段に記憶済みである項目間の関連を、ユーザによって変更可能な手段を備え、項目間の関連の一覧情報を表示することにより、ユーザの変更操作に従い、項目間の関連を変更することを特徴とする請求項1記載の文書作成支援方法。
- 記憶手段に記憶済みである項目間の関連と、入力された項目間の関連が矛盾する場合、入力された項目間の関連を記憶手段に記憶させないことを特徴とする請求項1記載の文書作成支援方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002288200A JP2004126838A (ja) | 2002-10-01 | 2002-10-01 | 文書作成支援方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002288200A JP2004126838A (ja) | 2002-10-01 | 2002-10-01 | 文書作成支援方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004126838A true JP2004126838A (ja) | 2004-04-22 |
Family
ID=32280770
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002288200A Pending JP2004126838A (ja) | 2002-10-01 | 2002-10-01 | 文書作成支援方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004126838A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011253345A (ja) * | 2010-06-02 | 2011-12-15 | Mitsubishi Electric Corp | 成果物管理装置、成果物管理方法及び成果物管理プログラム |
WO2012023192A1 (ja) * | 2010-08-18 | 2012-02-23 | 前田建設工業株式会社 | 情報処理装置、情報処理方法、プログラム、および媒体 |
JP2014222414A (ja) * | 2013-05-13 | 2014-11-27 | 富士通株式会社 | 設計書データ作成支援プログラム、設計書データ作成支援方法および情報処理装置 |
-
2002
- 2002-10-01 JP JP2002288200A patent/JP2004126838A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011253345A (ja) * | 2010-06-02 | 2011-12-15 | Mitsubishi Electric Corp | 成果物管理装置、成果物管理方法及び成果物管理プログラム |
WO2012023192A1 (ja) * | 2010-08-18 | 2012-02-23 | 前田建設工業株式会社 | 情報処理装置、情報処理方法、プログラム、および媒体 |
JP5512817B2 (ja) * | 2010-08-18 | 2014-06-04 | 前田建設工業株式会社 | 情報処理装置、情報処理方法、プログラム、および媒体 |
JP2014222414A (ja) * | 2013-05-13 | 2014-11-27 | 富士通株式会社 | 設計書データ作成支援プログラム、設計書データ作成支援方法および情報処理装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7219104B2 (en) | Data cleansing | |
US8060519B2 (en) | Ontology-integration-position specifying apparatus, ontology-integration supporting method, and computer program product | |
US9501474B2 (en) | Enhanced use of tags when storing relationship information of enterprise objects | |
JPWO2002046921A1 (ja) | シーケンス解析方法およびシーケンス解析装置 | |
US20050273721A1 (en) | Data transformation system | |
JP2007334412A (ja) | 検索プログラムおよび検索装置 | |
JP2004126838A (ja) | 文書作成支援方法 | |
JP2007249572A (ja) | プロジェクト管理支援装置、プロジェクト管理支援方法、およびプロジェクト管理支援プログラム | |
JP5884925B2 (ja) | 管理支援装置、管理支援方法及び管理支援プログラム | |
JPH09245052A (ja) | 構造化文書処理装置 | |
JPH11288412A (ja) | 文書作成方法及びシステム及び文書作成プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
JP2004133742A (ja) | 作業支援方法、作業支援プログラムおよび作業支援システム | |
JP2001056809A (ja) | 文書管理システム | |
JP2002342137A (ja) | 文書管理装置及び文書管理方法並びに記録媒体 | |
JP2002245065A (ja) | 文書処理装置、文書処理方法、プログラムおよび記録媒体 | |
JPH0227475A (ja) | データ管理装置 | |
JP4180099B2 (ja) | シーケンス解析プログラムを記録した記録媒体、シーケンス解析装置およびシーケンス解析方法 | |
JP3824468B2 (ja) | データ管理システム | |
JP2002082965A (ja) | 文書検索方法 | |
JP3337717B2 (ja) | データベース処理装置およびデータベース処理方法 | |
JP2007025831A (ja) | コンテンツ検索装置及びその方法 | |
JPH05197533A (ja) | データ項目の管理方法 | |
JP2006004026A (ja) | データベース登録管理方法 | |
JP2006276988A (ja) | 構造化文書作成装置、構造化文書作成プログラム及び構造化文書作成方法 | |
JP2019032796A (ja) | ファイル管理装置、ファイル管理システム、ファイル管理方法、及びプログラム |