(57)【要約】構造化データ処理装置（１００）は、構造化データ処理装置（１００）の全体を統括的に制御するＣＰＵ等の制御部（１０２）、通信回線等に接続されるルータ等の通信装置（図示せず）に接続される通信制御インターフェース部（１０４）、入力装置（１１２）や出力装置（１１４）に接続される入出力制御インターフェース部（１０８）、および、各種のデータベースやテーブルなどを格納する記憶部（１０６）を備えて構成されており、これら各部は任意の通信路を介して通信可能に接続されている。
2003001409.tif 000002
【特許請求の範囲】
【請求項１】
構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得する構造化データ取得手段と、
上記構造化データ取得手段にて取得した上記構造化データおよび上記スキーマデータを、スキーマ形式変換指示情報に基づいて変換する形式変換手段と、
上記形式変換手段にて変換された変換後の構造化データおよびスキーマデータをデータベースに登録する構造化データ登録手段と、
上記構造化データ登録手段にて登録された上記データベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される上記構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録する分析ツール登録手段と、
上記ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応する上記スキーマリソース定義情報に従って、上記データベースに登録された構造化データおよびスキーマデータを変換して当該ツールプログラムに入力する分析ツール起動手段と、
を備えたことを特徴とする構造化データ処理装置。
【請求項２】
上記構造化記述言語は、ＸＭＬ、ＳＧＭＬ、ＢｉｏＭＬ、ＢＳＭＬ、ＡＳＮ．１、ＧＡＭＥ、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であること、
を特徴とする請求の範囲第１項に記載の構造化データ処理装置。
【請求項３】
上記スキーマデータは、ＤＴＤ、ＸＭＬスキーマ、ＲＥＬＡＸ、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであること、
を特徴とする請求の範囲第１項または第２項に記載の構造化データ処理装置。
【請求項４】
上記スキーマ形式変換指示情報および上記スキーマリソース定義情報は、ＸＳＬ、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであること、
を特徴とする請求の範囲第１項から第３項のいずれか一つに記載の構造化データ処理装置。
【請求項５】
上記構造化データは、塩基配列および／またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むこと、
を特徴とする請求の範囲第１項から第４項のいずれか一つに記載の構造化データ処理装置。
【請求項６】
構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得する構造化データ取得ステップと、
上記構造化データ取得ステップにて取得した上記構造化データおよび上記スキーマデータを、スキーマ形式変換指示情報に基づいて変換する形式変換ステップと、
上記形式変換ステップにて変換された変換後の構造化データおよびスキーマデータをデータベースに登録する構造化データ登録ステップと、
上記構造化データ登録ステップにて登録された上記データベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される上記構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録する分析ツール登録ステップと、
上記ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応する上記スキーマリソース定義情報に従って、上記データベースに登録された構造化データおよびスキーマデータを変換して当該ツールプログラムに入力する分析ツール起動ステップと、
を含むことを特徴とする構造化データ処理方法。
【請求項７】
上記構造化記述言語は、ＸＭＬ、ＳＧＭＬ、ＢｉｏＭＬ、ＢＳＭＬ、ＡＳＮ．１、ＧＡＭＥ、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であること、
を特徴とする請求の範囲第６項に記載の構造化データ処理方法。
【請求項８】
上記スキーマデータは、ＤＴＤ、ＸＭＬスキーマ、ＲＥＬＡＸ、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであること、
を特徴とする請求の範囲第６項または第７項に記載の構造化データ処理方法。
【請求項９】
上記スキーマ形式変換指示情報および上記スキーマリソース定義情報は、ＸＳＬ、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであること、
を特徴とする請求の範囲第６項から第８項のいずれか一つに記載の構造化データ処理方法。
【請求項１０】
上記構造化データは、塩基配列および／またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むこと、
を特徴とする請求の範囲第６項から第９項のいずれか一つに記載の構造化データ処理方法。
【請求項１１】
構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得する構造化データ取得ステップと、
上記構造化データ取得ステップにて取得した上記構造化データおよび上記スキーマデータを、スキーマ形式変換指示情報に基づいて変換する形式変換ステップと、
上記形式変換ステップにて変換された変換後の構造化データおよびスキーマデータをデータベースに登録する構造化データ登録ステップと、
上記構造化データ登録ステップにて登録された上記データベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される上記構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録する分析ツール登録ステップと、
上記ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応する上記スキーマリソース定義情報に従って、上記データベースに登録された構造化データおよびスキーマデータを変換して当該ツールプログラムに入力する分析ツール起動ステップと、
を含む構造化データ処理方法をコンピュータに実行させることを特徴とするプログラム。
【請求項１２】
上記構造化記述言語は、ＸＭＬ、ＳＧＭＬ、ＢｉｏＭＬ、ＢＳＭＬ、ＡＳＮ．１、ＧＡＭＥ、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であること、
を特徴とする請求の範囲第１１項に記載のプログラム。
【請求項１３】
上記スキーマデータは、ＤＴＤ、ＸＭＬスキーマ、ＲＥＬＡＸ、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであること、
を特徴とする請求の範囲第１１項または第１２項に記載のプログラム。
【請求項１４】
上記スキーマ形式変換指示情報および上記スキーマリソース定義情報は、ＸＳＬ、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであること、
を特徴とする請求の範囲第１１項から第１３項のいずれか一つに記載のプログラム。
【請求項１５】
上記構造化データは、塩基配列および／またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むこと、
を特徴とする請求の範囲第１１項から第１４項のいずれか一つに記載のプログラム。
【請求項１６】
上記請求の範囲第１１項から第１５項のいずれか一つに記載されたプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
技術分野
本発明は、構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体に関し、特に、様々な形式のスキーマ言語により定義された様々な形式の構造化データを効率的に処理することができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体に関する。
背景技術
従来、バイオインフォマティクス分野において扱われる基本的なデータベースとして、大規模な塩基またはアミノ酸などの配列情報データベースや、文献情報データベースがある。例えば、既存の配列情報データベースの例として、「ＧｅｎＢａｎｋ」などがあり、文献情報データベースの例として「ＰｕｂＭｅｄ」などがある（ｈｔｔｐ：／／ｗｗｗ．ｎｃｂｉ．ｎｌｍ．ｎｉｈ．ｇｏｖ／Ｇｅｎｂａｎｋ／参照）。
第１図は、遺伝子の塩基配列または蛋白質のアミノ酸配列の配列情報データベースの基本的なデータ構造の例を示す図である。
ここで、第１図に示すように、配列情報データベースに格納される各配列情報のデータ構造は、一般的に（１）配列本体を格納するフィールド、（２）配列の一部分についてのアノテーション情報を格納する部分修飾記述フィールド、（３）配列の全体についてのアノテーション情報を格納する全体記述フィールド、の３つのフィールド群からなっている。
上記（１）の配列本体を格納するフィールドは、塩基配列またはアミノ酸配列からなっている。塩基配列は、生物細胞の染色体を構成する４種類の塩基（ＡＣＧＴ）を一次元の列に並べたものである。塩基配列が遺伝子として働くときにその特定の配列情報から特定の蛋白質が生成される。アミノ酸配列は、その蛋白質を構成する二十数種のアミノ酸を一次元の列に並べたものである。
上記（２）の部分修飾記述フィールドは、配列本体の一部分について、実験や解析を通して得た知見（物性や構造情報など）等のアノテーション情報を記したものである。この情報は配列によっては全くない場合もあるし、同一の配列部分に複数の部分修飾記述フィールドが記述されることもある。
また、上記（３）の全体記述フィールドは、その配列全体に関する情報であり、例えば、分類ＩＤ、通称、自然言語による説明、生物種、染色体上の位置、（発現データの場合）臓器、関連する学術文献の参照先、キーワードなどに関するデータからなる。
これらのデータベースに格納される配列情報は、レコード毎に埋まるフィールドや繰り返し回数が異なるという性質を持つ。そのため、ある程度書式付けされたテキスト形式またはＸＭＬなどの構造化された記述形式で流通することが多い。
バイオインフォマティクス分野で用いられている既存の構造化記述言語には、例えば、「ＡＳＮ．１（Ａｂｓｔｒａｃｔ  Ｓｙｎｔａｘ  Ｎｏｔａｔｉｏｎ  １）」（ｈｔｔｐ：／／ｗｗｗ．ｎｃｂｉ．ｎｌｍ．ｎｉｈ．ｇｏｖ／Ｓｉｔｅｍａｐ／Ｓｕｍｍａｒｙ／ａｓｎ１．ｈｔｍｌ、Ｊａｍｅｓ  Ｍ．  Ｏｓｔｅｌｌ，  ”Ｉｎｔｅｇｒａｔｅｄ  Ａｃｃｅｓｓ  ｔｏ  Ｈｅｔｅｒｏｇｅｎｅｏｕｓ  Ｄａｔａ  ｆｒｏｍ  ＮＣＢＩ”，ｐｐ．７３０−７３６，ＩＥＥＥ  Ｅｎｇｉｎｅｅｒｉｎｇ  ｉｎ  Ｍｅｄｉｃｉｎｅ  ａｎｄ  Ｂｉｏｌｏｇｙ，Ｎｏｖ／Ｄｅｃ，１９９５）や、ＸＭＬベースの「ＢＳＭＬ（Ｂｉｏ  Ｓｅｑｕｅｎｃｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）」（ｈｔｔｐ：／／ｗｗｗ．ｌａｂｂｏｏｋ．ｃｏｍ／ｆａｑ／ｂｓｍｌ．ａｓｐ）、「ＢｉｏＭＬ（Ｔｈｅ  ＢＩＯｐｏｌｙｍｅｒ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）」（ｈｔｔｐ：／／ｗｗｗ．ｂｉｏｍｌ．ｃｏｍ／ＢＩＯＭＬ／ｉｎｄｅｘ．ｈｔｍｌ）、および、「ＧＡＭＥ（Ｇｅｎｏｍｅ  Ａｎｎｏｔａｔｉｏｎ  Ｍａｒｋｕｐ  Ｅｌｅｍｅｎｔｓ）」（ｈｔｔｐ：／／ｗｗｗ．ｂｉｏｘｍｌ．ｏｒｇ／Ｐｒｏｊｅｃｔｓ／ｇａｍｅ／）などが存在している。
これらの配列データは大規模（例えば、ＧｅｎＢａｎｋのレコード数は１０００万件規模）であり、効率的な検索処理を行なうために上述の例のデータでは、リレーショナルデータベース（ＲＤＢ）を用いたデータベースシステムに変換／格納されている。
しかしながら、従来のシステムには、
（１）多種の構造化記述形式に対応する高い拡張性を持つ形式でデータを格納することができない。
（２）データを効率よく格納・利用することができない。
という２つの問題点があった。以下、これらの問題点について具体的に説明する。
まず問題点（１）で述べている、データ記述形式に関する高い拡張性は、バイオインフォマティクス（ＢＩ）分野では特に重要である。ここでＢＩ分野において格納すべき情報は、ＸＭＬやＢＳＭＬやＢｉｏＭＬなどの既存の構造化記述言語で表記されるものだけではない。すなわち、ＢＩ分野全体の研究が進むにつれて格納すべき情報の定義情報の集合（スキーマ）などは変化する。例えば、新たに実験手段が開発された場合、その結果を格納するフィールドや定義するためのスキーマが追加されることになる。
また、同じ事実を複数の表現で格納するために繰り返し構造が導入されることも多い。このような場合、既存形式のデータを新規形式のデータに変換する必要があり、変換プログラムの開発と変換処理のコストが発生する。
さらに他の例として、相互作用する複数の蛋白質の部位の情報を、枠組みを変えずに蛋白質のレコードに含めようとする場合には、同じ情報を異なる２つのレコードに同期して格納する必要がある。この場合、格納領域が多く使用される、格納・修正等の機能の実装が複雑になる、などの管理上の問題が発生する。
また、第１６図は、ＢＩ分野で一般的に用いられるＢＳＭＬにより記述された構造化データと、同様に一般的に用いられるＢｉｏＭＬにより記述された構造化データとの構造的な相違を説明するための図である。
上述したように、現在でも複数種類の構造化記述言語で記述された構造化記述形式があり、既存のソフトウェア資産を再利用するためにはそれらへ容易に変換できる必要がある。特に、第１６図に示すように、ＢＳＭＬとＢｉｏＭＬの間には、部分修飾記述フィールドの形式に構造的な相違がある。ＢｉｏＭＬは、蛋白質の構造に関する一部の部分修飾記述をＸＭＬ文書の木構造に埋め込むのに対して、ＢＳＭＬは、全ての部分修飾記述を配列位置情報との組で別記している。このような違いのある複数の形式へ変換を効率的に行なうためには、格納構造の表現能力が十分に柔軟である必要がある。
問題点（２）は、問題点（１）を解決するような柔軟なデータを対象にしたときの効率について述べている。
ＲＤＢ技術は、古くから実用化されており、既存の計算機アプリケーションにおいては、信頼性が高く、大規模データの処理効率に優れた運用が可能である。しかし、ＲＤＢでは、対象ドメインで扱うデータのスキーマが静的であることを前提にデータモデルが設計される。特に、データ構造が複雑になるに従って固定化の度合が高まる。そのため、問題点（１）に対して求められるような高い拡張性を持つシステムの構築は、本来想定されておれず、上述したような効率上の課題が生じる。
ＲＤＢが利用できない場合は、最も柔軟な格納方式であるプレーンテキストファイルでの格納になるが、これは大規模データにおける検索や取り出し性能が実用的ではない。特に、ＢＩ分野ではこれらのデータを対象に大規模な解析処理を連続して行なうため、各レコード操作に求められる効率は、事務帳票処理やエンドユーザが起因となるトランザクション処理に比べて高くなってしまう。
従って、本発明は、遺伝子の塩基配列や蛋白質のアミノ酸配列などの配列情報のような大規模なデータを、高い拡張性を持つ形式でデータを格納し、しかもデータを効率よく格納・利用することが可能となる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することを目的としている。
発明の開示
本発明にかかる構造化データ処理装置は、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得する構造化データ取得手段と、上記構造化データ取得手段にて取得した上記構造化データおよび上記スキーマデータを、スキーマ形式変換指示情報に基づいて変換する形式変換手段と、上記形式変換手段にて変換された変換後の構造化データおよびスキーマデータをデータベースに登録する構造化データ登録手段と、上記構造化データ登録手段にて登録された上記データベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される上記構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録する分析ツール登録手段と、上記ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応する上記スキーマリソース定義情報に従って、上記データベースに登録された構造化データおよびスキーマデータを変換して当該ツールプログラムに入力する分析ツール起動手段とを備えたことを特徴とする。
この装置によれば、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得し、取得した構造化データおよびスキーマデータを、スキーマ形式変換指示情報に基づいて変換し、変換された変換後の構造化データおよびスキーマデータをデータベースに登録し、登録されたデータベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録し、ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応するスキーマリソース定義情報に従って、データベースに登録された構造化データおよびスキーマデータを動的に変換して当該ツールプログラムに入力するので、異なる構造化言語やスキーマ言語で記述された取得データを予めまたは必要に応じて定めた形式に変換することができるようになる。
また、各種の外部データベースから取得したデータ間の整合を容易にとることができるようになり、データ記述形式に関する高い拡張性を担保することができるようになる。その結果、各種のデータ記述形式に対応する外部データベースへのアクセスを容易に行うことができるようになる。すなわち、統一した特定の構造化記述言語の形式（例えば、ＢＳＭＬやＢｉｏＭＬ等）で内部のデータベースを管理することが可能になるため、データベースの利用効率などを著しく向上させることができるようになる。
また、スキーマに新たなリソース（例えば、ＸＭＬの要素など）が追加された場合であっても、容易に追加された形式に変換することができるようになる。
また、各分析ツールにより随時項目追加が発生し、その追加項目を後段の分析ツールの処理で使用するような場合であっても、分析ツールの仕様に手を加えることなく、使用する各データの拡張性を容易に担保することができるようになる。また、共有部分のデータベースの一括形式変換を行うことができるようになる。
つぎの発明にかかる構造化データ処理装置は、上記の構造化データ処理装置において、上記構造化記述言語は、ＸＭＬ、ＳＧＭＬ、ＢｉｏＭＬ、ＢＳＭＬ、ＡＳＮ．１、ＧＡＭＥ、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であることを特徴とする。
これは構造化記述言語の一例を一層具体的に示すものである。この装置によれば、構造化記述言語は、ＸＭＬ、ＳＧＭＬ、ＢｉｏＭＬ、ＢＳＭＬ、ＡＳＮ．１、ＧＡＭＥ、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であるので、これらのバイオインフォマティクス分野において一般的に用いられる構造化記述言語により記述された構造化データを効率的に変換することができるようになる。
つぎの発明にかかる構造化データ処理装置は、上記の構造化データ処理装置において、上記スキーマデータは、ＤＴＤ、ＸＭＬスキーマ、ＲＥＬＡＸ、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであることを特徴とする。
これはスキーマデータの一例を一層具体的に示すものである。この装置によれば、スキーマデータは、ＤＴＤ、ＸＭＬスキーマ、ＲＥＬＡＸ、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであるので、これらのバイオインフォマティクス分野において一般的に用いられるスキーマ言語により記述されたスキーマデータを効率的に変換することができるようになる。
つぎの発明にかかる構造化データ処理装置は、上記の構造化データ処理装置において、上記スキーマ形式変換指示情報および上記スキーマリソース定義情報は、ＸＳＬ、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであることを特徴とする。
これはスキーマ形式変換指示情報およびスキーマリソース定義情報の一例を一層具体的に示すものである。この装置によれば、スキーマ形式変換指示情報およびスキーマリソース定義情報は、ＸＳＬ、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであるので、これらのバイオインフォマティクス分野において一般的に用いられるスキーマ変換記述言語により記述されたスキーマ形式変換指示情報およびスキーマリソース定義情報に基づいて、構造化データおよびスキーマデータを効率的に変換することができるようになる。
つぎの発明にかかる構造化データ処理装置は、上記の構造化データ処理装置において、上記構造化データは、塩基配列および／またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むことを特徴とする。
これはスキーマ形式変換指示情報およびスキーマリソース定義情報の一例を一層具体的に示すものである。この装置によれば、構造化データは、塩基配列および／またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むので、ＧｅｎＢａｎｋなどに登録された配列情報や、ＰｕｂＭｅｄなどに登録された文献情報を取得して形式変換することができるようになる。
つぎの発明にかかる構造化データ処理方法は、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得する構造化データ取得ステップと、上記構造化データ取得ステップにて取得した上記構造化データおよび上記スキーマデータを、スキーマ形式変換指示情報に基づいて変換する形式変換ステップと、上記形式変換ステップにて変換された変換後の構造化データおよびスキーマデータをデータベースに登録する構造化データ登録ステップと、上記構造化データ登録ステップにて登録された上記データベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される上記構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録する分析ツール登録ステップと、上記ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応する上記スキーマリソース定義情報に従って、上記データベースに登録された構造化データおよびスキーマデータを動的に変換して当該ツールプログラムに入力する分析ツール起動ステップとを含むことを特徴とする。
この方法によれば、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得し、取得した構造化データおよびスキーマデータを、スキーマ形式変換指示情報に基づいて変換し、変換された変換後の構造化データおよびスキーマデータをデータベースに登録し、登録されたデータベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録し、ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応するスキーマリソース定義情報に従って、データベースに登録された構造化データおよびスキーマデータを動的に変換して当該ツールプログラムに入力するので、異なる構造化言語やスキーマ言語で記述された取得データを予めまたは必要に応じて定めた形式に変換することができるようになる。
また、各種の外部データベースから取得したデータ間の整合を容易にとることができるようになり、データ記述形式に関する高い拡張性を担保することができるようになる。その結果、各種のデータ記述形式に対応する外部データベースへのアクセスを容易に行うことができるようになる。すなわち、統一した特定の構造化記述言語の形式（例えば、ＢＳＭＬやＢｉｏＭＬ等）で内部のデータベースを管理することが可能になるため、データベースの利用効率などを著しく向上させることができるようになる。
また、スキーマに新たなリソース（例えば、ＸＭＬの要素など）が追加された場合であっても、容易に追加された形式に変換することができるようになる。
また、各分析ツールにより随時項目追加が発生し、その追加項目を後段の分析ツールの処理で使用するような場合であっても、分析ツールの仕様に手を加えることなく、使用する各データの拡張性を容易に担保することができるようになる。また、共有部分のデータベースの一括形式変換を行うことができるようになる。
つぎの発明にかかる構造化データ処理方法は、上記の構造化データ処理方法において、上記構造化記述言語は、ＸＭＬ、ＳＧＭＬ、ＢｉｏＭＬ、ＢＳＭＬ、ＡＳＮ．１、ＧＡＭＥ、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であることを特徴とする。
これは構造化記述言語の一例を一層具体的に示すものである。この方法によれば、構造化記述言語は、ＸＭＬ、ＳＧＭＬ、ＢｉｏＭＬ、ＢＳＭＬ、ＡＳＮ．１、ＧＡＭＥ、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であるので、これらのバイオインフォマティクス分野において一般的に用いられる構造化記述言語により記述された構造化データを効率的に変換することができるようになる。
つぎの発明にかかる構造化データ処理方法は、上記の構造化データ処理方法において、上記スキーマデータは、ＤＴＤ、ＸＭＬスキーマ、ＲＥＬＡＸ、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであることを特徴とする。
これはスキーマデータの一例を一層具体的に示すものである。この方法によれば、スキーマデータは、ＤＴＤ、ＸＭＬスキーマ、ＲＥＬＡＸ、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであるので、これらのバイオインフォマティクス分野において一般的に用いられるスキーマ言語により記述されたスキーマデータを効率的に変換することができるようになる。
つぎの発明にかかる構造化データ処理方法は、上記の構造化データ処理方法において、上記スキーマ形式変換指示情報および上記スキーマリソース定義情報は、ＸＳＬ、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであることを特徴とする。
これはスキーマ形式変換指示情報およびスキーマリソース定義情報の一例を一層具体的に示すものである。この方法によれば、スキーマ形式変換指示情報およびスキーマリソース定義情報は、ＸＳＬ、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであるので、これらのバイオインフォマティクス分野において一般的に用いられるスキーマ変換記述言語により記述されたスキーマ形式変換指示情報およびスキーマリソース定義情報に基づいて、構造化データおよびスキーマデータを効率的に変換することができるようになる。
つぎの発明にかかる構造化データ処理方法は、上記の構造化データ処理方法において、上記構造化データは、塩基配列および／またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むことを特徴とする。
これはスキーマ形式変換指示情報およびスキーマリソース定義情報の一例を一層具体的に示すものである。この方法によれば、構造化データは、塩基配列および／またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むので、ＧｅｎＢａｎｋなどに登録された配列情報や、ＰｕｂＭｅｄなどに登録された文献情報を取得して形式変換することができるようになる。
つぎの発明にかかるプログラムは、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得する構造化データ取得ステップと、上記構造化データ取得ステップにて取得した上記構造化データおよび上記スキーマデータを、スキーマ形式変換指示情報に基づいて変換する形式変換ステップと、上記形式変換ステップにて変換された変換後の構造化データおよびスキーマデータをデータベースに登録する構造化データ登録ステップと、上記構造化データ登録ステップにて登録された上記データベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される上記構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録する分析ツール登録ステップと、上記ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応する上記スキーマリソース定義情報に従って、上記データベースに登録された構造化データおよびスキーマデータを動的に変換して当該ツールプログラムに入力する分析ツール起動ステップとを含む構造化データ処理方法をコンピュータに実行させることを特徴とする。
このプログラムによれば、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得し、取得した構造化データおよびスキーマデータを、スキーマ形式変換指示情報に基づいて変換し、変換された変換後の構造化データおよびスキーマデータをデータベースに登録し、登録されたデータベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録し、ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応するスキーマリソース定義情報に従って、データベースに登録された構造化データおよびスキーマデータを動的に変換して当該ツールプログラムに入力するので、異なる構造化言語やスキーマ言語で記述された取得データを予めまたは必要に応じて定めた形式に変換することができるようになる。
また、各種の外部データベースから取得したデータ間の整合を容易にとることができるようになり、データ記述形式に関する高い拡張性を担保することができるようになる。その結果、各種のデータ記述形式に対応する外部データベースへのアクセスを容易に行うことができるようになる。すなわち、統一した特定の構造化記述言語の形式（例えば、ＢＳＭＬやＢｉｏＭＬ等）で内部のデータベースを管理することが可能になるため、データベースの利用効率などを著しく向上させることができるようになる。
また、スキーマに新たなリソース（例えば、ＸＭＬの要素など）が追加された場合であっても、容易に追加された形式に変換することができるようになる。
また、各分析ツールにより随時項目追加が発生し、その追加項目を後段の分析ツールの処理で使用するような場合であっても、分析ツールの仕様に手を加えることなく、使用する各データの拡張性を容易に担保することができるようになる。また、共有部分のデータベースの一括形式変換を行うことができるようになる。
つぎの発明にかかるプログラムは、上記のプログラムにおいて、上記構造化記述言語は、ＸＭＬ、ＳＧＭＬ、ＢｉｏＭＬ、ＢＳＭＬ、ＡＳＮ．１、ＧＡＭＥ、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であることを特徴とする。
これは構造化記述言語の一例を一層具体的に示すものである。このプログラムによれば、構造化記述言語は、ＸＭＬ、ＳＧＭＬ、ＢｉｏＭＬ、ＢＳＭＬ、ＡＳＮ．１、ＧＡＭＥ、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であるので、これらのバイオインフォマティクス分野において一般的に用いられる構造化記述言語により記述された構造化データを効率的に変換することができるようになる。
つぎの発明にかかるプログラムは、上記のプログラムにおいて、上記スキーマデータは、ＤＴＤ、ＸＭＬスキーマ、ＲＥＬＡＸ、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであることを特徴とする。
これはスキーマデータの一例を一層具体的に示すものである。このプログラムによれば、スキーマデータは、ＤＴＤ、ＸＭＬスキーマ、ＲＥＬＡＸ、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであるので、これらのバイオインフォマティクス分野において一般的に用いられるスキーマ言語により記述されたスキーマデータを効率的に変換することができるようになる。
つぎの発明にかかるプログラムは、上記のプログラムにおいて、上記スキーマ形式変換指示情報および上記スキーマリソース定義情報は、ＸＳＬ、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであることを特徴とする。
これはスキーマ形式変換指示情報およびスキーマリソース定義情報の一例を一層具体的に示すものである。このプログラムによれば、スキーマ形式変換指示情報およびスキーマリソース定義情報は、ＸＳＬ、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであるので、これらのバイオインフォマティクス分野において一般的に用いられるスキーマ変換記述言語により記述されたスキーマ形式変換指示情報およびスキーマリソース定義情報に基づいて、構造化データおよびスキーマデータを効率的に変換することができるようになる。
つぎの発明にかかるプログラムは、上記のプログラムにおいて、上記構造化データは、塩基配列および／またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むことを特徴とする。
これはスキーマ形式変換指示情報およびスキーマリソース定義情報の一例を一層具体的に示すものである。このプログラムによれば、構造化データは、塩基配列および／またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むので、ＧｅｎＢａｎｋなどに登録された配列情報や、ＰｕｂＭｅｄなどに登録された文献情報を取得して形式変換することができるようになる。
つぎの発明にかかる記録媒体は、上記のプログラムを記録したことを特徴とする。
この記録媒体によれば、当該記録媒体に記録されたプログラムをコンピュータに読み取らせて実行することによって、上記のプログラムをコンピュータを利用して実現することができ、これら各方法と同様の効果を得ることができる。
発明を実施するための最良の形態
以下に、本発明にかかる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
特に、以下の実施の形態においては、本発明を、ＸＭＬベースの構造化記述言語およびスキーマ言語に適用した例について説明するが、この場合に限られず、他のいずれの構造化記述言語およびスキーマ言語に適用可能なシステム等について、同様に適用することができる。
［本発明の概要］
以下、本発明の概要について説明し、その後、本発明の構成および処理等について詳細に説明する。第３図は本発明の基本原理を示す原理構成図である。
本発明は、概略的に、以下の基本的特徴を有する。すなわち、本発明は、まず、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを、インターネット等を介して外部のデータベース等から取得する（ステップＳＡ−１）。
ここで、外部のデータベースは、例えば、ＧｅｎＢａｎｋ、ＥＭＢＬ（Ｅｕｒｏｐｅａｎ  Ｍｏｌｅｃｕｌａｒ  Ｂｉｏｌｏｇｙ  Ｌａｂｏｒａｔｏｒｙ）、ＤＤＢＪ（ＤＮＡ  Ｄａｔａ  Ｂａｎｋ  ｏｆ  Ｊａｐａｎ）等の配列データベースや、ＧＤＢ（Ｇｅｎｏｍｅ  Ｄａｔａ  Ｂａｓｅ）、ＯＭＩＭ（ｏｎｌｉｎｅ  ｍｅｎｄｅｌｉａｎ  ｉｎｈｅｒｉｔａｎｃｅ  ｉｎ  ｍａｎ）等のヒトゲノム地図データに関するデータベースや、ＰＩＲ（Ｐｒｏｔｅｉｎ  Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ  Ｒｅｓｏｕｒｃｅ）、ＳＷＩＳＳ−ＰＲＯＴ、ＰＲＦ等のアミノ酸配列データベースや、ＰＲＯＳＩＴＥ、ＢＬＯＣＫＳ等の蛋白質機能データベースや、ＰＤＢ（Ｐｒｏｔｅｉｎ  Ｄａｔａ  Ｂａｎｋ）等の蛋白質立体構造データベースや、Ｅｎｔｒｅｚ等の統合型データベースや、ＰｕｂＭｅｄ等の文献データベース等が公知である。これらの各データベースは、それぞれ予め定めた構造化記述言語により構造化データを記述し、また、同様に予め定めたスキーマ言語により記述された、構造化データに対応するスキーマデータを収集している。
ここで、外部のデータベースなどから取得する構造化データを記述する構造化記述言語は、ＸＭＬ、ＳＧＭＬ、ＢｉｏＭＬ、ＢＳＭＬ、ＡＳＮ．１、ＧＡＭＥ、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であってもよく、また、スキーマデータは、ＤＴＤ、ＸＭＬスキーマ、ＲＥＬＡＸ、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであってもよい。
次に、本発明は、取得した構造化データおよびスキーマデータを、スキーマ形式変換指示情報に基づいて変換する（ステップＳＡ−２）。ここで、第４図は、本発明による取得データの形式変換の一例を説明する概念図である。
第４図に示すように、構造化記述言語で記述された構造化データと、スキーマ言語で記述されたスキーマデータとをそれぞれ外部のデータベースなどから取得すると、予め定めたスキーマ形式変換指示情報に従って、取得データを変換する。
ここで、スキーマ形式変換指示情報は、ＸＳＬ、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであってもよく、この場合、変換処理は、Ｘａｌａｎ（ＡＰＡＣＨＥ  ＸＭＬ  ＰＲＯＪＥＣＴ）やＸＴ（Ｊａｍｅｓ  Ｃｌａｒｋ）等の既知のＸＳＬＴプロセッサを用いて実行してもよい。
ここで、第６図は、ＸＳＬにより記述された配列情報のスキーマ形式変換指示情報の一例を示す図であり、第７図は、第６図に示すスキーマ形式変換指示情報により形式変換された後の構造化データ（ＸＭＬ文書）の一例を示す図であり、また、第８図は、第６図に示すスキーマ形式変換指示情報により形式変換された後のスキーマデータ（ＤＴＤ）の一例を示す図である。第６図に示すＸＳＬ文書により、取得データのスキーマデータは第８図に示すＤＴＤの形式に変換され、構造化データは第７図に示すＸＭＬ文書に変換される。
第８図に示す変換後のＤＴＤの例では、構造化データ内で用いられる要素（ＥＬＥＭＥＮＴ）は、Ｓｅｑｕｅｎｃｅ、Ｔｉｔｌｅ、Ｎｕｃｌｅｏｔｉｄｅ、Ｐｅｐｔｉｄｅ、Ｒｅｆｅｒｅｎｃｅ、ＲｅｆＴｉｔｌｅ、Ｉｄであり、それぞれの要素の型を定義している。各要素のうち「Ｓｅｑｕｅｎｃｅ」は、塩基配列データを意味し、配列に関する自然言語による説明を意味する「Ｔｉｔｌｅ」と、塩基配列を意味する「Ｎｕｃｌｅｏｔｉｄｅ」と、塩基配列を変換したアミノ酸配列を意味する「Ｐｅｐｔｉｄｅ」と、参考文献の題名を意味する「ＲｅｆＴｉｔｌｅ」および参考文献の参照番号を意味する「Ｉｄ」を子の要素として備え、参考文献を意味する「Ｒｅｆｅｒｅｎｃｅ」と、を子の要素として備える。
また、第９図は、ＸＳＬにより記述された文献情報のスキーマ形式変換指示情報の一例を示す図であり、第１０図は、第９図に示すスキーマ形式変換指示情報により形式変換された後の構造化データ（ＸＭＬ文書）の一例を示す図であり、また、第１１図は、第９図に示すスキーマ形式変換指示情報により形式変換された後のスキーマデータ（ＤＴＤ）の一例を示す図である。
第１１図に示す変換後のＤＴＤの例では、構造化データ内で用いられる要素（ＥＬＥＭＥＮＴ）は、Ｌｉｔｅｒａｔｕｒｅ、Ｔｉｔｌｅ、Ａｂｓｔｒａｃｔ、Ｌｉｎｋ、Ｉｄであり、それぞれの要素の型を定義している。各要素のうち「Ｌｉｔｅｒａｔｕｒｅ」は、文献データ全体を意味し、文献の題名を意味する「Ｔｉｔｌｅ」と、文献の概要を意味する「Ａｂｓｔｒａｃｔ」と、関連する配列データへの参照番号集合を意味し、個々の参照番号を意味する「Ｉｄ」を子の要素として備える「Ｌｉｎｋ」と、を子の要素として備える。
これにより、異なる構造化言語やスキーマ言語で記述された取得データを予めまたは必要に応じて定めた形式に変換することができるようになるので、各種の外部データベースから取得したデータ間の整合を容易にとることができるようになりデータ記述形式に関する高い拡張性を担保することができるようになる。その結果、各種のデータ記述形式に対応する外部データベースへのアクセスを容易に行うことができるようになる。すなわち、統一した特定の構造化記述言語の形式（例えば、ＢＳＭＬやＢｉｏＭＬ等）で内部のデータベースを管理することが可能になるため、データベースの利用効率などを著しく向上させることができるようになる。
また、スキーマに新たなリソース（例えば、ＸＭＬの要素など）が追加された場合であっても、容易に追加された形式に変換することができるようになる。
また、本発明は、外部のデータベースからデータを取得する場合に限られず、同様に自己が管理する内部データベースからデータを取得することにより、内部データの一括形式変換を行うことができるようになる。
再び第３図に戻り、本発明は、次に、変換された変換後の構造化データおよびスキーマデータをデータベースに登録する（ステップＳＡ−３）。
ここで、既知のＸＭＬ格納システム（例えば、ｅＸｃｅｌｏｎ、Ｔａｍｉｎｏ等のＤＯＭ木格納のもの、ＸＭＬネイティブ格納方式のもの、ＲＤＢラッパー形式のもの、または、同等機能の処理系をもつもの等）を用いてもよい。
次に、本発明は、ステップＳＡ−３において登録された各種のデータベースにアクセスしてデータ処理を行うツールプログラム（分析ツール）と、当該ツールプログラムに入力される構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録する（ステップＳＡ−４）。
ここで、スキーマリソース定義情報の概念について第３０図を参照して説明する。スキーマリソース定義情報は、例えば、各種のデータベースに登録された構造化データのスキーマデータと、各種のツールの入力書式とのマッピングを定義することにより、登録された各データソースと、ツールの利用形態の各リソースとの対応を定義してもよい。また、スキーマリソース定義情報は、ＸＳＬ、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであってもよい。
次に、本発明は、ツールプログラム（分析ツール）が起動された場合に、起動された当該ツールプログラムに対応するスキーマリソース定義情報に従って、データベースに登録された構造化データおよびスキーマデータを動的に変換して（ステップＳＡ−６）、該ツールプログラムに入力する（ステップＳＡ−７）。
ここで、分析ツールの入力データの形式変換の処理フローを第５図に示す。まず、ユーザが登録された分析ツールＡを起動すると（ステップＳＢ−１）、分析ツール格納ファイルから分析ツールＡを読み出しで（ロード）、ＣＰＵが分析ツールＡを実行可能な状態にする（ステップＳＢ−２）。
そして、本発明は、スキーマリソース定義ファイルから分析ツールＡに対応するスキーマリソース定義情報Ａ（例えば、ＸＳＬ文書など）を取得する（ステップＳＢ−３）。
そして、本発明は、取得したスキーマリソース定義情報Ａにより、各データベースに登録された各構造化データおよび各スキーマデータの形式を変換する（ステップＳＢ−４）。
そして、変換後の各構造化データおよび各スキーマデータを分析ツールＡの入力データとする（ステップＳＢ−５）。これにて、変換処理を終了する。
ここで、ステップＳＡ−６の変換処理は、Ｘａｌａｎ（ＡＰＡＣＨＥ  ＸＭＬＰＲＯＪＥＣＴ）やＸＴ（Ｊａｍｅｓ  Ｃｌａｒｋ）等の既知のＸＳＬＴプロセッサを用いて実行してもよい。
再び第３図に戻り、次に、本発明は、分析ツールの処理結果を各種のデータベースに登録し、出力装置に処理結果を出力する（ステップＳＡ−８）。
ここで、３種類の分析ツールを起動して遺伝子発現制御解析を実行し、これらの処理結果を各種のデータベースに登録する場合の処理概要を第１２図〜第１５図および第２４図〜第２９図等を参照して説明する。
第１２図は、遺伝子発現制御解析処理の処理の概要を示すフロー図である。
まず、本発明は、第１３図に示すように、転写単位予測ツールを起動して転写単位を予測する（ステップＳＣ−１）。ここで、第１３図は、転写単位の予測の概要を示す概念図である。
第１３図に示すように、まず、各種の外部データベースにアクセスして種々のデータを取得し、これらの上述の方法により必要に応じて形式変換を行って共有部分のデータベースを予め作成しておく。
そして、転写単位予測ツールは、対応するスキーマリソース定義情報に基づいて共有部分のデータベースにアクセスして適宜形式変換が行われたデータを入力データとして処理を行い、処理結果を転写単位データベースに登録する。転写単位予測ツールのスキーマリソース定義情報は、遺伝子名データベースから各遺伝子について、（遺伝子名、開始位置、終了位置）の形式で転写単位予測ツールの入力データにマッピングしている。すなわち、遺伝子名データベースに登録された各遺伝子のデータは、転写単位予測ツールのスキーマリソース定義情報により（遺伝子名、開始位置、終了位置）の形式のデータに変換されて、転写単位予測ツールの入力データとなる。
ここで、第１３図で示した転写単位データベースに格納されるスキーマデータおよび構造化データの一例を第２４図および第２５図を参照して説明する。
第２４図は、第１３図で示した転写単位データベースのスキーマデータについてＤＴＤを用いて記述した場合を一例に示す図であり、第２５図は、第１３図で示した転写単位データベースの構造化データについてＸＭＬ文書を用いて記述した場合を一例に示す図である。第２４図に示すように、第１３図で示した転写単位データベースの文書型が定義され、第２５図に示すように構造化データが記述される。
再び、第１２図に戻り、次に、本発明は、第１４図に示すように制御部位予測ツールを起動して制御部位を予測する（ステップＳＣ−２）。ここで、第１４図は、制御部位の予測の概要を示す概念図である。
起動された制御部位予測ツールは、対応するスキーマリソース定義情報に基づいて共有部分のデータベースにアクセスして適宜形式変換が行われたデータや、ＢＬＡＳＴ等の他の配列統計処理ツールの処理結果データや、転写単位予測ツールの処理結果を格納した転写単位データベースに登録されたデータなどを入力データとして処理を行い、処理結果を制御部位データベースに登録する。制御部位予測ツールのスキーマリソース定義情報は、転写単位データベース、遺伝子名データベース、全ゲノムデータベースから、各転写単位について、（転写単位識別子、開始位置、終了位置、任意の長さのアミノ酸配列）の形式で制御部位予測ツールの入力データとマッピングを行い、また、配列統計処理ツールの処理結果から任意の長さのアミノ酸部分配列の全ての出現する組合せについて、（アミノ酸部分配列、ゲノム中の出願回数）の形式で制御部位予測ツールの入力データとマッピングを行う。また、ＢＬＡＳＴなどの配列統計処理ツールのスキーマリソース定義情報は、全ゲノムデータベースから配列全体を取り出すように配列統計処理ツールの入力データとマッピングを行う。
ここで、第１４図で示した制御部位データベースに格納されるスキーマデータおよび構造化データの一例を第２６図および第２７図を参照して説明する。
第２６図は、第１４図で示した制御部位データベースのスキーマデータについてＤＴＤを用いて記述した場合を一例に示す図であり、第２７図は、第１４図で示した制御部位データベースの構造化データについてＸＭＬ文書を用いて記述した場合を一例に示す図である。第２６図に示すように、第１４図で示した制御部位データベースの文書型が定義され、第２７図に示すように構造化データが記述される。
再び、第１２図に戻り、次に本発明は、第１５図に示すように制御遺伝子予測ツールを起動して制御遺伝子を予測する（ステップＳＣ−３）。ここで、第１５図は、制御遺伝子の予測の概要を示す概念図である。
起動された制御遺伝子予測ツールは、対応するスキーマリソース定義情報に基づいて共有部分のデータベースにアクセスして適宜形式変換が行われたデータや、ＢＬＡＳＴ等の他の配列統計処理ツールの処理結果データや、転写単位予測ツールの処理結果を格納した転写単位データベースに登録されたデータや、制御部位予測ツールの処理結果を格納した制御部位データベースに登録されたデータなどを入力データとして処理を行い、処理結果を制御ネットワークデータベースに登録する。制御遺伝子予測ツールのスキーマリソース定義情報は、配列データベースから、各ＤＮＡ結合蛋白質の遺伝子について、（遺伝子名、アミノ酸配列）の形式で制御遺伝子予測ツールの入力データとマッピングを行い、また、転写単位データベース、全ゲノムデータベースから各転写単位について、（転写単位識別子、制御部位（開始位置、終了位置、アミノ酸配列）のリスト）の形式で制御遺伝子予測ツールの入力データとマッピングを行う。
ここで、第１５図で示した制御ネットワークデータベースに格納されるスキーマデータおよび構造化データの一例を第２８図および第２９図を参照して説明する。
第２８図は、第１５図で示した制御ネットワークデータベースのスキーマデータについてＤＴＤを用いて記述した場合を一例に示す図であり、第２９図は、第１５図で示した制御ネットワークデータベースの構造化データについてＸＭＬ文書を用いて記述した場合を一例に示す図である。第２８図に示すように、第１５図で示した制御ネットワークデータベースの文書型が定義され、第２９図に示すように構造化データが記述される。
これにて、遺伝子発現制御解析処理を終了する。
このように、各分析ツールにより随時項目追加が発生し、その追加項目を後段の分析ツールの処理で使用するような場合であっても、分析ツールの仕様に手を加えることなく、使用する各データの拡張性を容易に担保することができるようになる。また、共有部分のデータベースの一括形式変換を行うことができるようになる。
［システム構成］
まず、本システムの構成について説明する。第２図は、本発明が適用される本システムの構成の一例を示すブロック図であり、該構成のうち本発明に関係する部分のみを概念的に示している。本システムは、概略的に、構造化データ処理装置１００と、配列情報等に関する外部データベースやホモロジー検索等の外部プログラム等を提供する外部システム２００とを、ネットワーク３００を介して通信可能に接続して構成されている。
第２図においてネットワーク３００は、構造化データ処理装置１００と外部システム２００とを相互に接続する機能を有し、例えば、インターネット等である。
第２図において外部システム２００は、ネットワーク３００を介して、構造化データ処理装置１００と相互に接続され、利用者に対して配列情報等に関する外部データベースやホモロジー検索やモチーフ検索等の外部プログラムを実行するウェブサイトを提供する機能を有する。
ここで、外部システム２００は、ＷＥＢサーバやＡＳＰサーバ等として構成してもよく、そのハードウェア構成は、一般に市販されるワークステーション、パーソナルコンピュータ等の情報処理装置およびその付属装置により構成してもよい。また、外部システム２００の各機能は、外部システム２００のハードウェア構成中のＣＰＵ、ディスク装置、メモリ装置、入力装置、出力装置、通信制御装置等およびそれらを制御するプログラム等により実現される。
第２図において構造化データ処理装置１００は、概略的に、構造化データ処理装置１００の全体を統括的に制御するＣＰＵ等の制御部１０２、通信回線等に接続されるルータ等の通信装置（図示せず）に接続される通信制御インターフェース部１０４、入力装置１１２や出力装置１１４に接続される入出力制御インターフェース部１０８、および、各種のデータベースやテーブルなどを格納する記憶部１０６を備えて構成されており、これら各部は任意の通信路を介して通信可能に接続されている。さらに、この構造化データ処理装置１００は、ルータ等の通信装置および専用線等の有線または無線の通信回線を介して、ネットワーク３００に通信可能に接続されている。
記憶部１０６に格納される各種のデータベースやテーブル（構造化データ格納データベース１０６ａ〜処理結果データベース１０６ｆ）は、固定ディスク装置等のストレージ手段であり、各種処理に用いる各種のプログラムやテーブルやファイルやデータベースやウェブページ用ファイル等を格納する。
これら記憶部１０６の各構成要素のうち、構造化データ格納データベース１０６ａは、構造化データを格納したデータベースである。
また、スキーマデータ格納データベース１０６ｂは、スキーマデータを格納するデータベースである。
また、スキーマ形式変換指示情報ファイル１０６ｃは、スキーマ形式変換指示情報等を格納するスキーマ形式変換指示情報格納手段である。
また、分析ツール格納ファイル１０６ｄは、分析ツールに関する情報等を格納する分析ツール格納手段である。
また、スキーマリソース定義ファイル１０６ｅは、スキーマリソース定義情報等を格納するスキーマリソース定義情報格納手段である。
また、処理結果データベース１０６ｆは、分析ツールの処理結果に関する情報等を格納する処理結果格納手段である。
また、第２図において、通信制御インターフェース部１０４は、構造化データ処理装置１００とネットワーク３００（またはルータ等の通信装置）との間における通信制御を行う。すなわち、通信制御インターフェース部１０４は、他の端末と通信回線を介してデータを通信する機能を有する。
また、第２図において、入出力制御インターフェース部１０８は、入力装置１１２や出力装置１１４の制御を行う。ここで、出力装置１１４としては、モニタ（家庭用テレビを含む）の他、スピーカを用いることができる（なお、以下においては出力装置１１４をモニタとして記載する場合がある）。また、入力装置１１２としては、キーボード、マウス、および、マイク等を用いることができる。また、モニタも、マウスと協働してポインティングデバイス機能を実現する。
また、第２図において、制御部１０２は、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）等の制御プログラム、各種の処理手順等を規定したプログラム、および所要データを格納するための内部メモリを有し、これらのプログラム等により、種々の処理を実行するための情報処理を行う。制御部１０２は、機能概念的に、構造化データ取得部１０２ａ、形式変換部１０２ｂ、構造化データ登録部１０２ｃ、分析ツール登録部１０２ｄ、分析ツール起動部１０２ｅ、および、処理結果登録部１０２ｆを備えて構成されている。
このうち、構造化データ取得部１０２ａは、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得する構造化データ取得手段である。
また、形式変換部１０２ｂは、構造化データ取得手段にて取得した上記構造化データおよび上記スキーマデータを、スキーマ形式変換指示情報に基づいて変換する形式変換手段である。
また、構造化データ登録部１０２ｃは、形式変換手段にて変換された変換後の構造化データおよびスキーマデータをデータベースに登録する構造化データ登録手段である。
また、分析ツール登録部１０２ｄは、構造化データ登録手段にて登録された上記データベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される上記構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録する分析ツール登録手段である。
また、分析ツール起動部１０２ｅは、ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応する上記スキーマリソース定義情報に従って、上記データベースに登録された構造化データおよびスキーマデータを動的に変換して当該ツールプログラムに入力する分析ツール起動手段である。
また、処理結果登録部１０２ｆは、分析ツールの処理結果をデータベースに登録する処理結果登録手段である。
なお、これら各部によって行なわれる処理の詳細については、後述する。
［実施例］
次に、このように構成された本実施の形態における本システムの処理の一例について、以下に第１７図〜第２３図等を参照して詳細に説明する。
第１７図は、本発明が適用される構造化データ処理装置の概念を説明するための図である。
本発明は、第１７図に示すような各データベースを設ける。本データベースは、複数のサブデータベースから構成される。第１７図中のサブデータベース「配列データベース」には配列データを格納する。第１７図では配列データベースはひとつしか示されていないが、複数あっても良い。
配列データベースの各レコードには、少なくとも塩基またはアミノ酸配列データ本体が入る。ＢＳＭＬ、ＢｉｏＭＬ、ＧＡＭＥのように、部分修飾記述や全体記述が含まれても良い。
複数の配列データに関係するデータは、配列データベースとは別にサブデータベース「関係データベース」に格納する。第１７図中では関係データベースＡ乃至Ｄの４種類の関係データベースが示されている。
関係データベースの各レコードには、少なくとも１つの参照情報が含まれる。参照情報は、システム内のサブデータベースまたは外部データベースのレコード全体、またはレコード内の特定部分を差し示している。関係データベースの各レコードには部分修飾記述や全体記述その他が含まれても良い。第１７図中では関係データベース「Ｄ」に配列データベースと関係データベース「Ａ」乃至「Ｃ」への参照を含むレコードが存在することが、「参照」というラベルの付いた矢線で示されている。
第１８図は、本発明が適用される構造化データ処理装置の基本構成を示す図である。本発明は、第１８図に示すようなデータベースシステム（構造化データ処理装置）を構成する。このシステムは、基本処理モジュール、拡張処理モジュール、記憶部から構成されている。
基本処理モジュールは、ツール登録処理部（概念的に第２図における分析ツール登録部１０２ｄに対応する）、文書登録処理部（概念的に第２図における構造化データ登録部１０２ｃに対応する）、形式変換処理部（概念的に第２図における形式変換部１０２ｂに対応する）、サービス仲介処理部（概念的に第２図における分析ツール起動部１０２ｅおよび処理結果登録部１０２ｆに対応する）、リンク処理部から構成されている。拡張処理モジュールは、いくつかのツール部（第１８図中、分析ツールＡ、分析ツールＢ、・・・であり、これらは、概念的に第２図における分析ツール格納ファイル１０６ｄに対応する）から構成されている。記憶部は構造格納部（概念的に第２図における構造化データ格納データベース１０６ａに対応する）、スキーマ格納部（概念的に第２図におけるスキーマデータ格納データベース１０６ｂに対応する）、スキーマリソース定義部（概念的に第２図におけるスキーマリソース定義ファイル１０６ｅに対応する）、結果ファイル（概念的に第２図における処理結果データベース１０６ｆに対応する）からなる。
そして、本システムは、大きく３つのサービスを提供する。これらのサービスは、第１８図におけるツール登録処理部による解析処理ツール登録サービス、文書登録処理部による文書格納サービス、サービス仲介処理部による解析処理（検索処理などを含む）サービスからなっている。
解析処理ツール登録サービスでは、ツール登録処理部が解析ツールとそれに対になるリソース定義を読み込み、解析ツールをツール部に、リソース定義をスキーマリソース定義部にそれぞれ登録する。
文書格納サービスでは、ＤＴＤやＸＭＬ−ＳｃｈｅｍａやＲＥＬＡＸなどの文書型を明記した構造化文書を読み込み、必要に応じて形式変換処理を行ない、構造格納部に格納する。次に、その構造化文書の文書型（複数あっても良い）が既に登録されているかどうかスキーマ格納部に問い合わせる。既に登録されている場合は何もしないが、登録されていない場合は文書型を取得しスキーマ格納部に登録する。
解析処理サービスでは、サービス仲介処理部がサービス要求を受け取り、その実行に必要な解析処理ツールを決定する。その解析ツールと対になるリソース定義をスキーマリソース定義部から取得する。サービス仲介処理部は、実行に必要な文書データをリソース定義などに従ってリンク参照を解決しながら構造格納部から文書集合を取得する。また、その文書集合の処理を解析処理ツールに依頼し、結果を生成する。
ここで、第１８図中の太い矢線は、データの移動を意味する。ただし、構造格納部から出る矢線については、必ずしも実際のデータ移動を意味せず、参照情報（ポインタ）のみを移動させることを意味する場合もある。
すなわち、本発明の一態様によれば、本発明の構造化データ処理装置は、遺伝子の塩基配列または蛋白質のアミノ酸配列に関連した情報を管理する構造化データ処理装置であって、上記塩基配列または上記アミノ酸配列に関する配列データを格納する配列データ格納部と、複数の上記配列データに関係する関係データを格納する複数の関係データ格納部とを備え、上記塩基配列または上記アミノ酸配列の全体に関する情報は、上記配列データ格納部または上記関係データ格納部に格納され、上記関係データ格納部に格納された各関係データレコードは、上記関係データ格納部自身への参照構造、または上記配列データ格納部を構成するデータレコード全体または一部への参照構造を有することを特徴とする。
また、本発明の構造化データ処理装置は、基本処理部と、拡張処理部と、記憶部とを備え、上記基本処理部が、解析ツールおよび上記解析ツールと対になるリソース定義を読み込み、上記解析ツールおよび上記リソース定義を登録するツール登録部と、文書型を明記した構造化文書を読み込み、必要に応じて形式変換処理を行ない、上記記憶部に上記構造化文書を登録する文書登録部と、サービスの要求を受け取り、上記サービスの実行に必要な解析処理ツールを決定するサービス仲介部と、上記参照構造への参照を行なうリンク処理部とを備え、上記拡張処理部が、上記構造化文書の解析処理を実行する複数種類の解析処理ツールを備え、上記記憶部が、上記文書登録部によって読み込んだ上記構造化文書を格納する構造格納部と、上記構造化文書のスキーマを格納するスキーマ格納部と、上記ツール登録部によって登録されるリソース定義を格納するスキーマリソース定義部とを備え、上記構造格納部が、構造化文書の木構造を保ったまま格納することが望ましい。
また、本発明の構造化データ処理装置は、外部データベースからデータを読み込み、上記配列データ格納部または上記関係データ格納部に格納するためのデータに変換する変換手段を備えることが望ましい。
また、本発明の構造化データ処理装置は、上記配列データ格納部または上記関係データ格納部を検索し、検索した結果を構造化文書で出力する検索手段を備えることが望ましい。
また、本発明の構造化データ処理装置は、上記検索手段が、ＢＳＭＬ（Ｂｉｏ  Ｓｅｑｕｅｎｃｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）形式の記述形式に変換することが望ましい。
また、本発明の構造化データ処理装置は、上記検索手段が、ＢｉｏＭＬ（ＢＩＯ  ｐｏｌｙｍｅｒ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）形式の記述形式に変換することが望ましい。
以下、本発明の実施例の処理概要を、図面を参照しながら詳細に説明する。
構造化データ処理装置（システム）は、第１８図に示すように構成されている。本実施の形態では、特定目的を達成するための構成方法を具体的に示す。ここでは、塩基配列を入力として、関連する塩基配列を検索するサービスを目的とする。このとき関連配列は、次のようにして探す。
まず、塩基配列を含むレコードからリンクされている文献レコードに自然言語的に近い文献レコードを求める。この文献レコードに含まれる塩基配列が検索結果となる。このように文献データを用いて関連配列を検索する方法をここでは「文献類似法」と呼ぶ。文献類似法では２つの配列間に介在する文献ＤＢレコードの数（上記説明では２）を増減することでヒット件数を制御することができる。
上述したように、本システムは、３つのサービスを提供する。本実施の形態では、コマンド、ライブラリ、ＴＣＰ／ＩＰサービス、ｈｔｔｐサービス（ＣＧＩ）など複数考えられるが、ここの説明では簡便のためコマンドとする。
本システムが稼働状態にあるときには、次のサービスコマンドを実行できる。
（１）文書格納サービス
（２）解析処理ツール登録サービス
（３）解析処理サービス
ただし、サービス（２）は、サービス（１）の格納条件に依存し、サービス（３）は、サービス（１）とサービス（２）の格納・登録条件に依存する。これらの各条件の詳細は後述する。
（１）文書格納サービス
文書格納サービスコマンド（１）は、次のように実行する。
ｓｔｏｒｅ〈文書名〉〈スキーマ名〉［〈スキーマ変換記述名〉］
ここで、“ｓｔｏｒｅ”は、文書格納サービスコマンド名である。〈文書名〉には、格納するＸＭＬ文書のファイル名を、〈スキーマ名〉には、格納するＸＭＬ文書の文書型定義（ＤＴＤ）のファイル名を、〈スキーマ変換記述名〉には、格納するＸＭＬ文書のスキーマから本システム用のスキーマへの変換指示をＸＳＬ言語で記したファイル名を指定する。形式変換を行わないでそのままの形式で構造格納部へ格納する場合は、スキーマ変換記述名は省略しても良い。
第１９図乃至第２１図は、文書格納サービスの処理を示すフロー図である。
第１９図は、文書格納サービスのメインルーチンを示すフロー図である。
ｓｔｏｒｅコマンドによる文書格納サービスは、次の手順で実行される。
まず、ステップＳ３１において、格納する構造化文書のスキーマがスキーマ格納部に登録されているかどうかを調べる。
ステップＳ３１で格納されていないと判断された場合（ステップＳ３１：ＮＯ）は、ステップＳ３２において、スキーマ変換記述が利用可能かどうかを調べる。一方、ステップＳ３１で格納されている場合（ステップＳ３１：ＹＥＳ）は、サブルーチン文書登録処理へ進む。サブルーチン文書登録処理については、第５図を用いて後述する。
そして、ステップＳ３２で利用可能であると判断された場合（ステップＳ３２：ＹＥＳ）は、サブルーチン形式変換処理へ進む。サブルーチン形式変換処理については、第２０図を用いて後述する。一方、ステップＳ３２で利用可能でないと判断された場合（ステップＳ３２：ＮＯ）は、サブルーチン文書登録処理へ進む。
第２０図は、文書格納サービスのサブルーチン「形式変換処理」を示すフロー図である。
形式変換処理は、次の手順で実行される。
まず、ステップＳ４１において、格納する構造化文書のスキーマとスキーマ変換記述から格納構造のスキーマを生成する。
そして、ステップＳ４２において、スキーマ変換記述に従って構造化文書を変換し、その結果をステップＳ４１で生成したスキーマと共にサブルーチン文書登録処理に渡す。ここで、上記変換は、一般に入手可能なＸＳＬＴプロセッサ（Ｓａｘｏｎ、Ｘａｌａｎ等）または同等機能の処理系を利用する。
第２１図は、文書格納サービスのサブルーチン「文書登録処理」を示すフロー図である。
文書登録処理は次の手順で実行する。
まず、ステップＳ５１において、文書を構造格納部に格納する。ここで、上記格納は、市販のＸＭＬ格納システム（ｅＸｃｅｌｏｎ、Ｔａｍｉｎｏ等のＤＯＭ木格納、ＸＭＬネイティブ格納方式のもの、ＲＤＢラッパー方式のもの、または同等機能の処理系）を用いる。
そして、ステップＳ５２において、スキーマがスキーマ格納部に登録されているか否かを判断する。
ステップＳ５２で登録されていないと判断された場合（ステップＳ５２：ＮＯ）は、ステップＳ５３において、スキーマを登録して終了する。一方、ステップＳ５２で登録されていると判断された場合（ステップＳ５２：ＹＥＳ）は、そのまま終了する。
次に、文書格納サービスの実行例を以下に示す。
この実行例では、文書をＸＭＬで表現し、スキーマをＸＭＬ  ＤＴＤ（文書型定義）で表現する。格納するデータは、下記のＵＲＬのサービスを用いてＸＭＬ文書としてローカルに保存する。配列データは、ＧｅｎＢａｎｋサービスを利用し、文献データは、ＰｕｂＭｅｄサービスを利用する（ｈｔｔｐ：／／ｗｗｗ．ｎｃｂｉ．ｎｌｍ．ｎｉｈ．ｇｏｖ／Ｇｅｎｂａｎｋ／参照）。ＧｅｎＢａｎｋから直接取得できるデータとスキーマの引用は割愛する。
配列データのスキーマ変換記述をｓｅｑｕｅｎｃｅ．ｘｓｌ（第６図）とし、文献データのスキーマ変換記述をｌｉｔｅｒａｔｕｒｅ．ｘｓｌ（第９図）とする。以上のデータが形式変換処理への入力となる。
形式変換処理後、文書登録処理が行なわれるデータは次のようになる。
配列データは、ｓｅｑｕｅｎｃｅ．ｘｍｌ（第７図）、スキーマは、ｓｑｕｅｎｃｅ．ｄｔｄ（第８図）となる。
Ｓｅｑｕｅｎｃｅタグは、配列全体を意味し、Ｔｉｔｌｅタグは、配列に関する自然言語による説明を意味し、Ｎｕｃｌｅｏｔｉｄｅタグは、塩基配列を意味し、Ｐｅｐｔｉｄｅタグは、塩基配列を変換したアミノ酸配列を意味し、Ｒｅｆｅｒｅｎｃｅタグは、参考文献を意味し、ＲｅｆＴｉｔｌｅタグは、参考文献の題名を意味し、Ｉｄタグは、参考文献の参照番号を意味する。
また、文献データの１レコードは、ｌｉｔｅｒａｔｕｒｅ．ｘｍｌ（第１０図）となり、スキーマは、ｌｉｔｅｒａｔｕｒｅ．ｄｔｄ（第１１図）となる。
Ｌｉｔｅｒａｔｕｒｅタグは、文献データ全体を意味し、Ｔｉｔｌｅタグは、文献の題名を意味し、Ａｂｓｔｒａｃｔタグは、文献の概要を意味し、Ｌｉｎｋタグは、関連する配列データへの参照番号集合を意味し、Ｉｄタグは、個々の参照番号を意味する。
（２）解析処理ツール登録サービス
次に、解析処理ツール登録サービスコマンド（２）を説明する。
解析処理ツール登録サービスコマンド（２）は、次のように実行する。
ｒｅｇｉｓｔｅｒ〈ツールコマンド名〉［〈リソース定義〉］
ここで“ｒｅｇｉｓｔｅｒ”は、解析処理ツール登録サービスコマンド名である。〈ツールコマンド名〉には、登録する解析処理ツールのファイル名を指定し、〈リソース定義〉には、本システム格納用データスキーマからツールの入力となるデータ形式への変換指示をＸＳＬ言語で記したファイル名を指定する。ツールへの入力が格納部内のデータに由来しない場合は、リソース定義は省略しても良い。
第２２図は、解析処理ツール登録サービスの処理を説明するためのフロー図である。
ｒｅｇｉｓｔｅｒコマンドによるツール登録処理は次の手順で実行される。
まず、ステップＳ６１において、解析ツールが実行可能な状態になっているか否かを判断する。
ステップＳ６１で実行可能な状態になっていないと判断された場合（ステップＳ６１：ＮＯ）は、ステップＳ６２において、本システムが実行可能な場所に複写する。
そして、ステップＳ６１で実行可能な状態になっていると判断された場合（ステップＳ６１：ＹＥＳ）、あるいは、ステップＳ６２で複写した後、ステップＳ６３において、解析ツールのコマンド名を記憶する。
さらに、ステップＳ６４において、リソース定義をスキーマリソース定義部に格納して終了する。
次に、解析処理ツール登録サービスの実行例を以下に説明する。
本実行例では、システムに格納された配列データと文献データを対象に文献類似法による配列検索を行なうための２つの解析処理ツール（索引付け処理、検索処理）をそれぞれ上記手順で登録する。
索引付け処理は、１ｈ−ｉｎｄｅｘコマンドとし、検索処理は、１ｈ−ｓｅａｒｃｈコマンドとする。１ｈ−ｉｎｄｅｘコマンドは、検索対象の文字列と識別子の組の集合からなる全検索対象データを引数にとる。本コマンドは、リソース定義１ｈ−ｉｎｄｅｘ．ｘｓｌと共に登録する。１ｈ−ｓｅａｒｃｈコマンドは、検索キーである配列を引数にとる。本コマンドと同時に登録するリソース定義はない。
（３）解析処理サービス
解析処理サービスコマンド（３）は、次のように実行する。
ｐｒｏｃｅｓｓ〈解析ツール名〉［−ｔｏｏｌａｒｇｓ〈ツール引数リスト〉］［−ｓｅｒｖｉｃｅａｒｇｓ〈サービス引数リスト〉］
ここで“ｐｒｏｃｅｓｓ”は、解析処理サービスコマンド名である。〈解析ツール名〉には、システムに登録済みの解析ツールの名前を指定し、〈ツール引数リスト〉には、その解析ツールに渡すパラメータを指定する。解析ツールが追加の引数を必要としない場合、ツール引数リストは省略しても良い。〈サービス引数リスト〉には、解析ツールには直接渡さず、サービスに必要なパラメータを指定する。必要ない場合は、サービス引数リストは省略しても良い。
第２３図は、解析処理サービスの処理を説明するためのフロー図である。
ｐｒｏｃｅｓｓコマンドによる解析処理サービスは、サービス仲介処理部によって次の手順で実行される。
まず、ステップＳ７１において、解析ツール（分析ツール）がシステムに登録されているか否かを判断する。
ステップＳ７１で登録されていないと判断された場合（ステップＳ７１：ＮＯ）は、ステップＳ７２において、エラー処理を行なう。
一方、ステップＳ７１で登録されていると判断された場合（ステップＳ７１：ＹＥＳ）は、ステップＳ７３において、解析ツールに対応したリソース定義がスキーマリソース定義部に登録されているか否かを判断する。
ステップＳ７３で登録されていると判断された場合（ステップＳ７３：ＹＥＳ）は、ステップＳ７４において、（サービス引数リストが存在する場合はそれも用いて、）構造格納部内の各文書についてリソース定義（ＸＳＬ）を適用し、それぞれの結果に解析ツールを適用する。そして、ステップＳ７５において、全文書の処理が終了したか否かを判断することにより、全文書が終了（ステップＳ７５：ＹＥＳ）するまでステップＳ７４を繰り返す。
一方、ステップＳ７３で登録されていないと判断された場合（ステップＳ７３：ＮＯ）は、ステップＳ７６において、解析ツールを実行する。
そして、ステップＳ７６における解析ツールの実行後、あるいは、ステップＳ７５における処理の終了後、実行結果を出力して終了する。
次に、解析処理ツール登録サービスの実行例を以下に説明する。
既に述べたように文献類似法は、索引作成処理を行なう１ｈ−ｉｎｄｅｘと検索処理を行なう１ｈ−ｓｅａｒｃｈ  との２つの解析ツールにより実装される。
索引作成処理では、次のようにｐｒｏｃｅｓｓコマンドを起動する。
2003001409.tif 000003
１ｈ−ｉｎｄｅｘツールには、リソース定義として１ｈ−ｓｅａｒｃｈ．ｘｓｌが存在しているため、構造格納部内の全文書に関してＸＳＬＴ処理を行なう。この処理は、リソース定義１ｈ−ｉｎｄｅｘ．ｘｓｌとサービス引数−ｄｅｐｔｈ＝２の情報を用いて次のように動作する。
構造格納部中の各配列レコードｓから参照される文献レコード集合をＬ１とする。Ｌ１の各文献レコードｌ  から参照される配列レコード集合をＳ１とする。
Ｓ１の各配列レコードＳ’から参照される文献レコード集合をＬ２とする。このように配列・文献の組のパスを２段階辿って（この段数を”−ｄｅｐｔｈ＝２”が指定している。）得られる全集合から自然言語（テキスト）データのある部分のみを元の配列ｓのＩｄと共に取り出す。このＸＳＬＴ処理の結果を１ｈ−ｉｎｄｅｘに渡し（この渡し方を”−ｔｏｏｌａｒｇｓ  ″＠ｄｏｃｕｍｅｎｔｓ″”により指定している。）索引を作成する。
検索処理では、次のようにｐｒｏｃｅｓｓコマンドを起動する。
2003001409.tif 000004
１ｈ−ｓｅａｒｃｈ  ツールにはリソース定義が存在していないため、直接１ｈ−ｓｅａｒｃｈ  が起動され、１ｈ−ｉｎｄｅｘが作成した索引を用いて配列ＩＤに関連のある配列ＩＤ集合を結果に出す。
以上説明してきたように、本発明によれば、関係ＤＢに配列ＤＢとは独立な拡張が可能になることで、配列ＤＢレコードの枠組みに収まらないスキーマ拡張が容易に行なえるようになり、問題点（１）を解決している。
また、本発明によれば、構造格納方式の文書記憶部を持ち、レコードの部分構造を参照する関係ＤＢを持つことで、構造的に違いの大きい複数形式への変換を総合的に効率よく行なうことができ、問題点（２）を解決している。
また、発明の実施の形態の項で文献類似法の例を挙げて示したように、本システムは、柔軟性と実装効率を両立しており、問題点（２）を解決している。この性質は、構造格納部をＲＤＢ技術で実装するよりもネイティブな構造格納技術を用いた方がより顕著になる。
また、文献類似法の実装例では、インデックス作成時に処理対象となるテキスト部をＸＳＬＴを用いて動的に生成した。そのため、リンクをたどる段数をパラメータ化でき、実行可能な機能の柔軟性が高くなった。効率に関しては、実際のところ、上述の実施の形態のようなコマンドラインで解析ツールを結合する仕組では、データをバイトストリームで渡すことになり、そこがネックになるが、データ空間を共有するタイプのコンポーネント結合技術を用いることでそれは解決することができる。
また、文献類似法以外の解析コンポーネントについても、ツールが必要とする文書をスキーマ格納部に登録されている文書形式から生成する指示を準備することで柔軟に追加することができる。また、登録する構造化文書の形式が多用な場合でも、とりあえず構造格納部に格納してしまう運用が可能であり、このような柔軟性も備えている。
［他の実施の形態］
さて、これまで本発明の実施の形態について説明したが、本発明は、上述した実施の形態以外にも、上記特許請求の範囲に記載した技術的思想の範囲内において種々の異なる実施の形態にて実施されてよいものである。
例えば、構造化データ処理装置１００がスタンドアローンの形態で処理を行う場合を一例に説明したが、構造化データ処理装置１００とは別筐体で構成されるクライアント端末からの要求に応じて処理を行い、その処理結果を当該クライアント端末に返却するように構成してもよい。
また、実施形態において説明した各処理のうち、自動的に行なわれるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行なわれるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。
この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種の登録データや検索条件等のパラメータを含む情報、画面例、データベース構成については、特記する場合を除いて任意に変更することができる。
また、構造化データ処理装置１００に関して、図示の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。
例えば、構造化データ処理装置１００の各部または各装置が備える処理機能、特に制御部１０２にて行なわれる各処理機能については、その全部または任意の一部を、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）および当該ＣＰＵにて解釈実行されるプログラムにて実現することができ、あるいは、ワイヤードロジックによるハードウェアとして実現することも可能である。なお、プログラムは、後述する記録媒体に記録されており、必要に応じて構造化データ処理装置１００に機械的に読み取られる。
すなわち、ＲＯＭまたはＨＤなどの記憶部１０６などには、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）と協働してＣＰＵに命令を与え、各種処理を行うためのコンピュータプログラムが記録されている。このコンピュータプログラムは、ＲＡＭ等にロードされることによって実行され、ＣＰＵと協働して制御部１０２を構成する。また、このコンピュータプログラムは、構造化データ処理装置１００に対して任意のネットワーク３００を介して接続されたアプリケーションプログラムサーバに記録されてもよく、必要に応じてその全部または一部をダウンロードすることも可能である。
また、本発明にかかるプログラムを、コンピュータ読み取り可能な記録媒体に格納することもできる。ここで、この「記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等の任意の「可搬用の物理媒体」や、各種コンピュータシステムに内蔵されるＲＯＭ、ＲＡＭ、ＨＤ等の任意の「固定用の物理媒体」、あるいは、ＬＡＮ、ＷＡＮ、インターネットに代表されるネットワークを介してプログラムを送信する場合の通信回線や搬送波のように、短期にプログラムを保持する「通信媒体」を含むものとする。
また、「プログラム」とは、任意の言語や記述方法にて記述されたデータ処理方法であり、ソースコードやバイナリコード等の形式を問わない。なお、「プログラム」は必ずしも単一的に構成されるものに限られず、複数のモジュールやライブラリとして分散構成されるものや、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）に代表される別個のプログラムと協働してその機能を達成するものをも含む。なお、実施の形態に示した各装置において記録媒体を読み取るための具体的な構成、読み取り手順、あるいは、読み取り後のインストール手順等については、周知の構成や手順を用いることができる。
記憶部１０６に格納される各種のデータベース等（構造化データ格納データベース１０６ａ〜処理結果データベース１０６ｆ）は、ＲＡＭ、ＲＯＭ等のメモリ装置、ハードディスク等の固定ディスク装置、フレキシブルディスク、光ディスク等のストレージ手段であり、各種処理やウェブサイト提供に用いる各種のプログラムやテーブルやファイルやデータベースやウェブページ用ファイル等を格納する。
また、構造化データ処理装置１００は、既知のパーソナルコンピュータ、ワークステーション等の情報処理端末等の情報処理装置にプリンタやモニタやイメージスキャナ等の周辺装置を接続し、該情報処理装置に本発明の方法を実現させるソフトウェア（プログラム、データ等を含む）を実装することにより実現してもよい。
さらに、構造化データ処理装置１００の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷等に応じた任意の単位で、機能的または物理的に分散・統合して構成することができる。例えば、各データベースを独立したデータベース装置として独立に構成してもよく、また、処理の一部をＣＧＩ（Ｃｏｍｍｏｎ  Ｇａｔｅｗａｙ  Ｉｎｔｅｒｆａｃｅ）を用いて実現してもよい。
また、ネットワーク３００は、構造化データ処理装置１００と外部システム２００とを相互に接続する機能を有し、例えば、インターネットや、イントラネットや、ＬＡＮ（有線／無線の双方を含む）や、ＶＡＮや、パソコン通信網や、公衆電話網（アナログ／デジタルの双方を含む）や、専用回線網（アナログ／デジタルの双方を含む）や、ＣＡＴＶ網や、ＩＭＴ２０００方式、ＧＳＭ方式またはＰＤＣ／ＰＤＣ−Ｐ方式等の携帯回線交換網／携帯パケット交換網や、無線呼出網や、Ｂｌｕｅｔｏｏｔｈ等の局所無線網や、ＰＨＳ網や、ＣＳ、ＢＳまたはＩＳＤＢ等の衛星通信網等のうちいずれかを含んでもよい。すなわち、本システムは、有線・無線を問わず任意のネットワークを介して、各種データを送受信することができる。
以上詳細に説明したように、本発明によれば、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得し、取得した構造化データおよびスキーマデータを、スキーマ形式変換指示情報に基づいて変換し、変換された変換後の構造化データおよびスキーマデータをデータベースに登録し、登録されたデータベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録し、ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応するスキーマリソース定義情報に従って、データベースに登録された構造化データおよびスキーマデータを動的に変換して当該ツールプログラムに入力するので、異なる構造化言語やスキーマ言語で記述された取得データを予めまたは必要に応じて定めた形式に変換することができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
また、本発明によれば、各種の外部データベースから取得したデータ間の整合を容易にとることができるようになり、データ記述形式に関する高い拡張性を担保することができるようになる。その結果、各種のデータ記述形式に対応する外部データベースへのアクセスを容易に行うことができるようになる。すなわち、統一した特定の構造化記述言語の形式（例えば、ＢＳＭＬやＢｉｏＭＬ等）で内部のデータベースを管理することが可能になるため、データベースの利用効率などを著しく向上させることができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
また、本発明によれば、スキーマに新たなリソース（例えば、ＸＭＬの要素など）が追加された場合であっても、容易に追加された形式に変換することができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
また、本発明によれば、各分析ツールにより随時項目追加が発生し、その追加項目を後段の分析ツールの処理で使用するような場合であっても、分析ツールの仕様に手を加えることなく、使用する各データの拡張性を容易に担保することができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
また、本発明によれば、共有部分のデータベースの一括形式変換を行うことができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
また、本発明によれば、構造化記述言語は、ＸＭＬ、ＳＧＭＬ、ＢｉｏＭＬ、ＢＳＭＬ、ＡＳＮ．１、ＧＡＭＥ、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であるので、これらのバイオインフォマティクス分野において一般的に用いられる構造化記述言語により記述された構造化データを効率的に変換することができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
また、本発明によれば、スキーマデータは、ＤＴＤ、ＸＭＬスキーマ、ＲＥＬＡＸ、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであるので、これらのバイオインフォマティクス分野において一般的に用いられるスキーマ言語により記述されたスキーマデータを効率的に変換することができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
また、本発明によれば、スキーマ形式変換指示情報およびスキーマリソース定義情報は、ＸＳＬ、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであるので、これらのバイオインフォマティクス分野において一般的に用いられるスキーマ変換記述言語により記述されたスキーマ形式変換指示情報およびスキーマリソース定義情報に基づいて、構造化データおよびスキーマデータを効率的に変換することができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
また、本発明によれば、構造化データは、塩基配列および／またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むので、ＧｅｎＢａｎｋなどに登録された配列情報や、ＰｕｂＭｅｄなどに登録された文献情報を取得して形式変換することができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
産業上の利用可能性
以上のように、本発明にかかる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体は、様々な形式のスキーマ言語により定義された様々な形式の構造化データを効率的に処理するのに適している。
【図面の簡単な説明】
第１図は、遺伝子の塩基配列または蛋白質のアミノ酸配列の配列情報データベースの基本的なデータ構造の例を示す図であり、第２図は、本発明が適用される本システムの構成の一例を示すブロック図であり、第３図は、本発明の基本原理を示す原理構成図であり、第４図は、本発明による取得データの形式変換の一例を説明する概念図であり、第５図は、分析ツールの入力データの形式変換の処理を示すフロー図であり、第６図は、ＸＳＬにより記述された配列情報のスキーマ形式変換指示情報の一例を示す図であり、第７図は、第６図に示すスキーマ形式変換指示情報により形式変換された後の構造化データ（ＸＭＬ文書）の一例を示す図であり、第８図は、第６図に示すスキーマ形式変換指示情報により形式変換された後のスキーマデータ（ＤＴＤ）の一例を示す図であり、第９図は、ＸＳＬにより記述された文献情報のスキーマ形式変換指示情報の一例を示す図であり、第１０図は、第９図に示すスキーマ形式変換指示情報により形式変換された後の構造化データ（ＸＭＬ文書）の一例を示す図であり、第１１図は、第９図に示すスキーマ形式変換指示情報により形式変換された後のスキーマデータ（ＤＴＤ）の一例を示す図であり、第１２図は、遺伝子発現制御解析処理の処理の概要を示すフロー図であり、第１３図は、転写単位の予測の概要を示す概念図であり、第１４図は、制御部位の予測の概要を示す概念図であり、第１５図は、制御遺伝子の予測の概要を示す概念図であり、第１６図は、ＢＩ分野で一般的に用いられるＢＳＭＬにより記述されたデータと、同様に一般的に用いられるＢｉｏＭＬにより記述されたデータとの構造的な相違を説明するための図であり、第１７図は、本発明が適用される構造化データ処理装置の概念を説明するための図であり、第１８図は、本発明が適用される構造化データ処理装置の基本構成を示す図であり、第１９図は、文書格納サービスのメインルーチンを示すフロー図であり、第２０図は、文書格納サービスのサブルーチン「形式変換処理」を示すフロー図であり、第２１図は、文書格納サービスのサブルーチン「文書登録処理」を示すフロー図であり、第２２図は、解析処理ツール登録サービスの処理を説明するためのフロー図であり、第２３図は、解析処理サービスの処理を説明するためのフロー図であり、第２４図は、第１３図で示した転写単位データベースのスキーマデータについてＤＴＤを用いて記述した場合を一例に示す図であり、第２５図は、第１３図で示した転写単位データベースの構造化データについてＸＭＬ文書を用いて記述した場合を一例に示す図であり、第２６図は、第１４図で示した制御部位データベースのスキーマデータについてＤＴＤを用いて記述した場合を一例に示す図であり、第２７図は、第１４図で示した制御部位データベースの構造化データについてＸＭＬ文書を用いて記述した場合を一例に示す図であり、第２８図は、第１５図で示した制御ネットワークデータベースのスキーマデータについてＤＴＤを用いて記述した場合を一例に示す図であり、第２９図は、第１５図で示した制御ネットワークデータベースの構造化データについてＸＭＬ文書を用いて記述した場合を一例に示す図であり、第３０図は、スキーマリソース定義情報の概念について説明する図である。
【図１】
2003001409.tif 000005
【図２】
2003001409.tif 000006
【図３】
2003001409.tif 000007
【図４】
2003001409.tif 000008
【図５】
2003001409.tif 000009
【図６】
2003001409.tif 000010
【図７】
2003001409.tif 000011
【図８】
2003001409.tif 000012
【図９】
2003001409.tif 000013
【図１０】
2003001409.tif 000014
【図１１】
2003001409.tif 000015
【図１２】
2003001409.tif 000016
【図１３】
2003001409.tif 000017
【図１４】
2003001409.tif 000018
【図１５】
2003001409.tif 000019
【図１６】
2003001409.tif 000020
【図１７】
2003001409.tif 000021
【図１８】
2003001409.tif 000022
【図１９】
2003001409.tif 000023
【図２０】
2003001409.tif 000024
【図２１】
2003001409.tif 000025
【図２２】
2003001409.tif 000026
【図２３】
2003001409.tif 000027
【図２４】
2003001409.tif 000028
【図２５】
2003001409.tif 000029
【図２６】
2003001409.tif 000030
【図２７】
2003001409.tif 000031
【図２８】
2003001409.tif 000032
【図２９】
2003001409.tif 000033
【図３０】
2003001409.tif 000034
【国際調査報告】
2003001409.tif 000035
2003001409.tif 000036
2003001409.tif 000037
2003001409.tif 000038