JPWO2003001409A1 - 構造化データ処理装置 - Google Patents
構造化データ処理装置 Download PDFInfo
- Publication number
- JPWO2003001409A1 JPWO2003001409A1 JP2003507726A JP2003507726A JPWO2003001409A1 JP WO2003001409 A1 JPWO2003001409 A1 JP WO2003001409A1 JP 2003507726 A JP2003507726 A JP 2003507726A JP 2003507726 A JP2003507726 A JP 2003507726A JP WO2003001409 A1 JPWO2003001409 A1 JP WO2003001409A1
- Authority
- JP
- Japan
- Prior art keywords
- schema
- data
- structured
- structured data
- language
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/84—Mapping; Conversion
- G06F16/86—Mapping to a database
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B50/00—ICT programming tools or database systems specially adapted for bioinformatics
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B50/00—ICT programming tools or database systems specially adapted for bioinformatics
- G16B50/30—Data warehousing; Computing architectures
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B50/00—ICT programming tools or database systems specially adapted for bioinformatics
- G16B50/20—Heterogeneous data integration
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Biophysics (AREA)
- Bioethics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Biotechnology (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
構造化データ処理装置(100)は、構造化データ処理装置(100)の全体を統括的に制御するCPU等の制御部(102)、通信回線等に接続されるルータ等の通信装置(図示せず)に接続される通信制御インターフェース部(104)、入力装置(112)や出力装置(114)に接続される入出力制御インターフェース部(108)、および、各種のデータベースやテーブルなどを格納する記憶部(106)を備えて構成されており、これら各部は任意の通信路を介して通信可能に接続されている。
Description
技術分野
本発明は、構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体に関し、特に、様々な形式のスキーマ言語により定義された様々な形式の構造化データを効率的に処理することができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体に関する。
背景技術
従来、バイオインフォマティクス分野において扱われる基本的なデータベースとして、大規模な塩基またはアミノ酸などの配列情報データベースや、文献情報データベースがある。例えば、既存の配列情報データベースの例として、「GenBank」などがあり、文献情報データベースの例として「PubMed」などがある(http://www.ncbi.nlm.nih.gov/Genbank/参照)。
第1図は、遺伝子の塩基配列または蛋白質のアミノ酸配列の配列情報データベースの基本的なデータ構造の例を示す図である。
ここで、第1図に示すように、配列情報データベースに格納される各配列情報のデータ構造は、一般的に(1)配列本体を格納するフィールド、(2)配列の一部分についてのアノテーション情報を格納する部分修飾記述フィールド、(3)配列の全体についてのアノテーション情報を格納する全体記述フィールド、の3つのフィールド群からなっている。
上記(1)の配列本体を格納するフィールドは、塩基配列またはアミノ酸配列からなっている。塩基配列は、生物細胞の染色体を構成する4種類の塩基(ACGT)を一次元の列に並べたものである。塩基配列が遺伝子として働くときにその特定の配列情報から特定の蛋白質が生成される。アミノ酸配列は、その蛋白質を構成する二十数種のアミノ酸を一次元の列に並べたものである。
上記(2)の部分修飾記述フィールドは、配列本体の一部分について、実験や解析を通して得た知見(物性や構造情報など)等のアノテーション情報を記したものである。この情報は配列によっては全くない場合もあるし、同一の配列部分に複数の部分修飾記述フィールドが記述されることもある。
また、上記(3)の全体記述フィールドは、その配列全体に関する情報であり、例えば、分類ID、通称、自然言語による説明、生物種、染色体上の位置、(発現データの場合)臓器、関連する学術文献の参照先、キーワードなどに関するデータからなる。
これらのデータベースに格納される配列情報は、レコード毎に埋まるフィールドや繰り返し回数が異なるという性質を持つ。そのため、ある程度書式付けされたテキスト形式またはXMLなどの構造化された記述形式で流通することが多い。
バイオインフォマティクス分野で用いられている既存の構造化記述言語には、例えば、「ASN.1(Abstract Syntax Notation 1)」(http://www.ncbi.nlm.nih.gov/Sitemap/Summary/asn1.html、James M. Ostell, ”Integrated Access to Heterogeneous Data from NCBI”,pp.730−736,IEEE Engineering in Medicine and Biology,Nov/Dec,1995)や、XMLベースの「BSML(Bio Sequence Markup Language)」(http://www.labbook.com/faq/bsml.asp)、「BioML(The BIOpolymer Markup Language)」(http://www.bioml.com/BIOML/index.html)、および、「GAME(Genome Annotation Markup Elements)」(http://www.bioxml.org/Projects/game/)などが存在している。
これらの配列データは大規模(例えば、GenBankのレコード数は1000万件規模)であり、効率的な検索処理を行なうために上述の例のデータでは、リレーショナルデータベース(RDB)を用いたデータベースシステムに変換/格納されている。
しかしながら、従来のシステムには、
(1)多種の構造化記述形式に対応する高い拡張性を持つ形式でデータを格納することができない。
(2)データを効率よく格納・利用することができない。
という2つの問題点があった。以下、これらの問題点について具体的に説明する。
まず問題点(1)で述べている、データ記述形式に関する高い拡張性は、バイオインフォマティクス(BI)分野では特に重要である。ここでBI分野において格納すべき情報は、XMLやBSMLやBioMLなどの既存の構造化記述言語で表記されるものだけではない。すなわち、BI分野全体の研究が進むにつれて格納すべき情報の定義情報の集合(スキーマ)などは変化する。例えば、新たに実験手段が開発された場合、その結果を格納するフィールドや定義するためのスキーマが追加されることになる。
また、同じ事実を複数の表現で格納するために繰り返し構造が導入されることも多い。このような場合、既存形式のデータを新規形式のデータに変換する必要があり、変換プログラムの開発と変換処理のコストが発生する。
さらに他の例として、相互作用する複数の蛋白質の部位の情報を、枠組みを変えずに蛋白質のレコードに含めようとする場合には、同じ情報を異なる2つのレコードに同期して格納する必要がある。この場合、格納領域が多く使用される、格納・修正等の機能の実装が複雑になる、などの管理上の問題が発生する。
また、第16図は、BI分野で一般的に用いられるBSMLにより記述された構造化データと、同様に一般的に用いられるBioMLにより記述された構造化データとの構造的な相違を説明するための図である。
上述したように、現在でも複数種類の構造化記述言語で記述された構造化記述形式があり、既存のソフトウェア資産を再利用するためにはそれらへ容易に変換できる必要がある。特に、第16図に示すように、BSMLとBioMLの間には、部分修飾記述フィールドの形式に構造的な相違がある。BioMLは、蛋白質の構造に関する一部の部分修飾記述をXML文書の木構造に埋め込むのに対して、BSMLは、全ての部分修飾記述を配列位置情報との組で別記している。このような違いのある複数の形式へ変換を効率的に行なうためには、格納構造の表現能力が十分に柔軟である必要がある。
問題点(2)は、問題点(1)を解決するような柔軟なデータを対象にしたときの効率について述べている。
RDB技術は、古くから実用化されており、既存の計算機アプリケーションにおいては、信頼性が高く、大規模データの処理効率に優れた運用が可能である。しかし、RDBでは、対象ドメインで扱うデータのスキーマが静的であることを前提にデータモデルが設計される。特に、データ構造が複雑になるに従って固定化の度合が高まる。そのため、問題点(1)に対して求められるような高い拡張性を持つシステムの構築は、本来想定されておれず、上述したような効率上の課題が生じる。
RDBが利用できない場合は、最も柔軟な格納方式であるプレーンテキストファイルでの格納になるが、これは大規模データにおける検索や取り出し性能が実用的ではない。特に、BI分野ではこれらのデータを対象に大規模な解析処理を連続して行なうため、各レコード操作に求められる効率は、事務帳票処理やエンドユーザが起因となるトランザクション処理に比べて高くなってしまう。
従って、本発明は、遺伝子の塩基配列や蛋白質のアミノ酸配列などの配列情報のような大規模なデータを、高い拡張性を持つ形式でデータを格納し、しかもデータを効率よく格納・利用することが可能となる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することを目的としている。
発明の開示
本発明にかかる構造化データ処理装置は、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得する構造化データ取得手段と、上記構造化データ取得手段にて取得した上記構造化データおよび上記スキーマデータを、スキーマ形式変換指示情報に基づいて変換する形式変換手段と、上記形式変換手段にて変換された変換後の構造化データおよびスキーマデータをデータベースに登録する構造化データ登録手段と、上記構造化データ登録手段にて登録された上記データベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される上記構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録する分析ツール登録手段と、上記ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応する上記スキーマリソース定義情報に従って、上記データベースに登録された構造化データおよびスキーマデータを変換して当該ツールプログラムに入力する分析ツール起動手段とを備えたことを特徴とする。
この装置によれば、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得し、取得した構造化データおよびスキーマデータを、スキーマ形式変換指示情報に基づいて変換し、変換された変換後の構造化データおよびスキーマデータをデータベースに登録し、登録されたデータベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録し、ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応するスキーマリソース定義情報に従って、データベースに登録された構造化データおよびスキーマデータを動的に変換して当該ツールプログラムに入力するので、異なる構造化言語やスキーマ言語で記述された取得データを予めまたは必要に応じて定めた形式に変換することができるようになる。
また、各種の外部データベースから取得したデータ間の整合を容易にとることができるようになり、データ記述形式に関する高い拡張性を担保することができるようになる。その結果、各種のデータ記述形式に対応する外部データベースへのアクセスを容易に行うことができるようになる。すなわち、統一した特定の構造化記述言語の形式(例えば、BSMLやBioML等)で内部のデータベースを管理することが可能になるため、データベースの利用効率などを著しく向上させることができるようになる。
また、スキーマに新たなリソース(例えば、XMLの要素など)が追加された場合であっても、容易に追加された形式に変換することができるようになる。
また、各分析ツールにより随時項目追加が発生し、その追加項目を後段の分析ツールの処理で使用するような場合であっても、分析ツールの仕様に手を加えることなく、使用する各データの拡張性を容易に担保することができるようになる。また、共有部分のデータベースの一括形式変換を行うことができるようになる。
つぎの発明にかかる構造化データ処理装置は、上記の構造化データ処理装置において、上記構造化記述言語は、XML、SGML、BioML、BSML、ASN.1、GAME、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であることを特徴とする。
これは構造化記述言語の一例を一層具体的に示すものである。この装置によれば、構造化記述言語は、XML、SGML、BioML、BSML、ASN.1、GAME、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であるので、これらのバイオインフォマティクス分野において一般的に用いられる構造化記述言語により記述された構造化データを効率的に変換することができるようになる。
つぎの発明にかかる構造化データ処理装置は、上記の構造化データ処理装置において、上記スキーマデータは、DTD、XMLスキーマ、RELAX、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであることを特徴とする。
これはスキーマデータの一例を一層具体的に示すものである。この装置によれば、スキーマデータは、DTD、XMLスキーマ、RELAX、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであるので、これらのバイオインフォマティクス分野において一般的に用いられるスキーマ言語により記述されたスキーマデータを効率的に変換することができるようになる。
つぎの発明にかかる構造化データ処理装置は、上記の構造化データ処理装置において、上記スキーマ形式変換指示情報および上記スキーマリソース定義情報は、XSL、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであることを特徴とする。
これはスキーマ形式変換指示情報およびスキーマリソース定義情報の一例を一層具体的に示すものである。この装置によれば、スキーマ形式変換指示情報およびスキーマリソース定義情報は、XSL、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであるので、これらのバイオインフォマティクス分野において一般的に用いられるスキーマ変換記述言語により記述されたスキーマ形式変換指示情報およびスキーマリソース定義情報に基づいて、構造化データおよびスキーマデータを効率的に変換することができるようになる。
つぎの発明にかかる構造化データ処理装置は、上記の構造化データ処理装置において、上記構造化データは、塩基配列および/またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むことを特徴とする。
これはスキーマ形式変換指示情報およびスキーマリソース定義情報の一例を一層具体的に示すものである。この装置によれば、構造化データは、塩基配列および/またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むので、GenBankなどに登録された配列情報や、PubMedなどに登録された文献情報を取得して形式変換することができるようになる。
つぎの発明にかかる構造化データ処理方法は、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得する構造化データ取得ステップと、上記構造化データ取得ステップにて取得した上記構造化データおよび上記スキーマデータを、スキーマ形式変換指示情報に基づいて変換する形式変換ステップと、上記形式変換ステップにて変換された変換後の構造化データおよびスキーマデータをデータベースに登録する構造化データ登録ステップと、上記構造化データ登録ステップにて登録された上記データベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される上記構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録する分析ツール登録ステップと、上記ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応する上記スキーマリソース定義情報に従って、上記データベースに登録された構造化データおよびスキーマデータを動的に変換して当該ツールプログラムに入力する分析ツール起動ステップとを含むことを特徴とする。
この方法によれば、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得し、取得した構造化データおよびスキーマデータを、スキーマ形式変換指示情報に基づいて変換し、変換された変換後の構造化データおよびスキーマデータをデータベースに登録し、登録されたデータベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録し、ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応するスキーマリソース定義情報に従って、データベースに登録された構造化データおよびスキーマデータを動的に変換して当該ツールプログラムに入力するので、異なる構造化言語やスキーマ言語で記述された取得データを予めまたは必要に応じて定めた形式に変換することができるようになる。
また、各種の外部データベースから取得したデータ間の整合を容易にとることができるようになり、データ記述形式に関する高い拡張性を担保することができるようになる。その結果、各種のデータ記述形式に対応する外部データベースへのアクセスを容易に行うことができるようになる。すなわち、統一した特定の構造化記述言語の形式(例えば、BSMLやBioML等)で内部のデータベースを管理することが可能になるため、データベースの利用効率などを著しく向上させることができるようになる。
また、スキーマに新たなリソース(例えば、XMLの要素など)が追加された場合であっても、容易に追加された形式に変換することができるようになる。
また、各分析ツールにより随時項目追加が発生し、その追加項目を後段の分析ツールの処理で使用するような場合であっても、分析ツールの仕様に手を加えることなく、使用する各データの拡張性を容易に担保することができるようになる。また、共有部分のデータベースの一括形式変換を行うことができるようになる。
つぎの発明にかかる構造化データ処理方法は、上記の構造化データ処理方法において、上記構造化記述言語は、XML、SGML、BioML、BSML、ASN.1、GAME、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であることを特徴とする。
これは構造化記述言語の一例を一層具体的に示すものである。この方法によれば、構造化記述言語は、XML、SGML、BioML、BSML、ASN.1、GAME、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であるので、これらのバイオインフォマティクス分野において一般的に用いられる構造化記述言語により記述された構造化データを効率的に変換することができるようになる。
つぎの発明にかかる構造化データ処理方法は、上記の構造化データ処理方法において、上記スキーマデータは、DTD、XMLスキーマ、RELAX、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであることを特徴とする。
これはスキーマデータの一例を一層具体的に示すものである。この方法によれば、スキーマデータは、DTD、XMLスキーマ、RELAX、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであるので、これらのバイオインフォマティクス分野において一般的に用いられるスキーマ言語により記述されたスキーマデータを効率的に変換することができるようになる。
つぎの発明にかかる構造化データ処理方法は、上記の構造化データ処理方法において、上記スキーマ形式変換指示情報および上記スキーマリソース定義情報は、XSL、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであることを特徴とする。
これはスキーマ形式変換指示情報およびスキーマリソース定義情報の一例を一層具体的に示すものである。この方法によれば、スキーマ形式変換指示情報およびスキーマリソース定義情報は、XSL、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであるので、これらのバイオインフォマティクス分野において一般的に用いられるスキーマ変換記述言語により記述されたスキーマ形式変換指示情報およびスキーマリソース定義情報に基づいて、構造化データおよびスキーマデータを効率的に変換することができるようになる。
つぎの発明にかかる構造化データ処理方法は、上記の構造化データ処理方法において、上記構造化データは、塩基配列および/またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むことを特徴とする。
これはスキーマ形式変換指示情報およびスキーマリソース定義情報の一例を一層具体的に示すものである。この方法によれば、構造化データは、塩基配列および/またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むので、GenBankなどに登録された配列情報や、PubMedなどに登録された文献情報を取得して形式変換することができるようになる。
つぎの発明にかかるプログラムは、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得する構造化データ取得ステップと、上記構造化データ取得ステップにて取得した上記構造化データおよび上記スキーマデータを、スキーマ形式変換指示情報に基づいて変換する形式変換ステップと、上記形式変換ステップにて変換された変換後の構造化データおよびスキーマデータをデータベースに登録する構造化データ登録ステップと、上記構造化データ登録ステップにて登録された上記データベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される上記構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録する分析ツール登録ステップと、上記ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応する上記スキーマリソース定義情報に従って、上記データベースに登録された構造化データおよびスキーマデータを動的に変換して当該ツールプログラムに入力する分析ツール起動ステップとを含む構造化データ処理方法をコンピュータに実行させることを特徴とする。
このプログラムによれば、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得し、取得した構造化データおよびスキーマデータを、スキーマ形式変換指示情報に基づいて変換し、変換された変換後の構造化データおよびスキーマデータをデータベースに登録し、登録されたデータベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録し、ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応するスキーマリソース定義情報に従って、データベースに登録された構造化データおよびスキーマデータを動的に変換して当該ツールプログラムに入力するので、異なる構造化言語やスキーマ言語で記述された取得データを予めまたは必要に応じて定めた形式に変換することができるようになる。
また、各種の外部データベースから取得したデータ間の整合を容易にとることができるようになり、データ記述形式に関する高い拡張性を担保することができるようになる。その結果、各種のデータ記述形式に対応する外部データベースへのアクセスを容易に行うことができるようになる。すなわち、統一した特定の構造化記述言語の形式(例えば、BSMLやBioML等)で内部のデータベースを管理することが可能になるため、データベースの利用効率などを著しく向上させることができるようになる。
また、スキーマに新たなリソース(例えば、XMLの要素など)が追加された場合であっても、容易に追加された形式に変換することができるようになる。
また、各分析ツールにより随時項目追加が発生し、その追加項目を後段の分析ツールの処理で使用するような場合であっても、分析ツールの仕様に手を加えることなく、使用する各データの拡張性を容易に担保することができるようになる。また、共有部分のデータベースの一括形式変換を行うことができるようになる。
つぎの発明にかかるプログラムは、上記のプログラムにおいて、上記構造化記述言語は、XML、SGML、BioML、BSML、ASN.1、GAME、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であることを特徴とする。
これは構造化記述言語の一例を一層具体的に示すものである。このプログラムによれば、構造化記述言語は、XML、SGML、BioML、BSML、ASN.1、GAME、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であるので、これらのバイオインフォマティクス分野において一般的に用いられる構造化記述言語により記述された構造化データを効率的に変換することができるようになる。
つぎの発明にかかるプログラムは、上記のプログラムにおいて、上記スキーマデータは、DTD、XMLスキーマ、RELAX、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであることを特徴とする。
これはスキーマデータの一例を一層具体的に示すものである。このプログラムによれば、スキーマデータは、DTD、XMLスキーマ、RELAX、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであるので、これらのバイオインフォマティクス分野において一般的に用いられるスキーマ言語により記述されたスキーマデータを効率的に変換することができるようになる。
つぎの発明にかかるプログラムは、上記のプログラムにおいて、上記スキーマ形式変換指示情報および上記スキーマリソース定義情報は、XSL、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであることを特徴とする。
これはスキーマ形式変換指示情報およびスキーマリソース定義情報の一例を一層具体的に示すものである。このプログラムによれば、スキーマ形式変換指示情報およびスキーマリソース定義情報は、XSL、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであるので、これらのバイオインフォマティクス分野において一般的に用いられるスキーマ変換記述言語により記述されたスキーマ形式変換指示情報およびスキーマリソース定義情報に基づいて、構造化データおよびスキーマデータを効率的に変換することができるようになる。
つぎの発明にかかるプログラムは、上記のプログラムにおいて、上記構造化データは、塩基配列および/またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むことを特徴とする。
これはスキーマ形式変換指示情報およびスキーマリソース定義情報の一例を一層具体的に示すものである。このプログラムによれば、構造化データは、塩基配列および/またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むので、GenBankなどに登録された配列情報や、PubMedなどに登録された文献情報を取得して形式変換することができるようになる。
つぎの発明にかかる記録媒体は、上記のプログラムを記録したことを特徴とする。
この記録媒体によれば、当該記録媒体に記録されたプログラムをコンピュータに読み取らせて実行することによって、上記のプログラムをコンピュータを利用して実現することができ、これら各方法と同様の効果を得ることができる。
発明を実施するための最良の形態
以下に、本発明にかかる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
特に、以下の実施の形態においては、本発明を、XMLベースの構造化記述言語およびスキーマ言語に適用した例について説明するが、この場合に限られず、他のいずれの構造化記述言語およびスキーマ言語に適用可能なシステム等について、同様に適用することができる。
[本発明の概要]
以下、本発明の概要について説明し、その後、本発明の構成および処理等について詳細に説明する。第3図は本発明の基本原理を示す原理構成図である。
本発明は、概略的に、以下の基本的特徴を有する。すなわち、本発明は、まず、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを、インターネット等を介して外部のデータベース等から取得する(ステップSA−1)。
ここで、外部のデータベースは、例えば、GenBank、EMBL(European Molecular Biology Laboratory)、DDBJ(DNA Data Bank of Japan)等の配列データベースや、GDB(Genome Data Base)、OMIM(online mendelian inheritance in man)等のヒトゲノム地図データに関するデータベースや、PIR(Protein Identification Resource)、SWISS−PROT、PRF等のアミノ酸配列データベースや、PROSITE、BLOCKS等の蛋白質機能データベースや、PDB(Protein Data Bank)等の蛋白質立体構造データベースや、Entrez等の統合型データベースや、PubMed等の文献データベース等が公知である。これらの各データベースは、それぞれ予め定めた構造化記述言語により構造化データを記述し、また、同様に予め定めたスキーマ言語により記述された、構造化データに対応するスキーマデータを収集している。
ここで、外部のデータベースなどから取得する構造化データを記述する構造化記述言語は、XML、SGML、BioML、BSML、ASN.1、GAME、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であってもよく、また、スキーマデータは、DTD、XMLスキーマ、RELAX、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであってもよい。
次に、本発明は、取得した構造化データおよびスキーマデータを、スキーマ形式変換指示情報に基づいて変換する(ステップSA−2)。ここで、第4図は、本発明による取得データの形式変換の一例を説明する概念図である。
第4図に示すように、構造化記述言語で記述された構造化データと、スキーマ言語で記述されたスキーマデータとをそれぞれ外部のデータベースなどから取得すると、予め定めたスキーマ形式変換指示情報に従って、取得データを変換する。
ここで、スキーマ形式変換指示情報は、XSL、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであってもよく、この場合、変換処理は、Xalan(APACHE XML PROJECT)やXT(James Clark)等の既知のXSLTプロセッサを用いて実行してもよい。
ここで、第6図は、XSLにより記述された配列情報のスキーマ形式変換指示情報の一例を示す図であり、第7図は、第6図に示すスキーマ形式変換指示情報により形式変換された後の構造化データ(XML文書)の一例を示す図であり、また、第8図は、第6図に示すスキーマ形式変換指示情報により形式変換された後のスキーマデータ(DTD)の一例を示す図である。第6図に示すXSL文書により、取得データのスキーマデータは第8図に示すDTDの形式に変換され、構造化データは第7図に示すXML文書に変換される。
第8図に示す変換後のDTDの例では、構造化データ内で用いられる要素(ELEMENT)は、Sequence、Title、Nucleotide、Peptide、Reference、RefTitle、Idであり、それぞれの要素の型を定義している。各要素のうち「Sequence」は、塩基配列データを意味し、配列に関する自然言語による説明を意味する「Title」と、塩基配列を意味する「Nucleotide」と、塩基配列を変換したアミノ酸配列を意味する「Peptide」と、参考文献の題名を意味する「RefTitle」および参考文献の参照番号を意味する「Id」を子の要素として備え、参考文献を意味する「Reference」と、を子の要素として備える。
また、第9図は、XSLにより記述された文献情報のスキーマ形式変換指示情報の一例を示す図であり、第10図は、第9図に示すスキーマ形式変換指示情報により形式変換された後の構造化データ(XML文書)の一例を示す図であり、また、第11図は、第9図に示すスキーマ形式変換指示情報により形式変換された後のスキーマデータ(DTD)の一例を示す図である。
第11図に示す変換後のDTDの例では、構造化データ内で用いられる要素(ELEMENT)は、Literature、Title、Abstract、Link、Idであり、それぞれの要素の型を定義している。各要素のうち「Literature」は、文献データ全体を意味し、文献の題名を意味する「Title」と、文献の概要を意味する「Abstract」と、関連する配列データへの参照番号集合を意味し、個々の参照番号を意味する「Id」を子の要素として備える「Link」と、を子の要素として備える。
これにより、異なる構造化言語やスキーマ言語で記述された取得データを予めまたは必要に応じて定めた形式に変換することができるようになるので、各種の外部データベースから取得したデータ間の整合を容易にとることができるようになりデータ記述形式に関する高い拡張性を担保することができるようになる。その結果、各種のデータ記述形式に対応する外部データベースへのアクセスを容易に行うことができるようになる。すなわち、統一した特定の構造化記述言語の形式(例えば、BSMLやBioML等)で内部のデータベースを管理することが可能になるため、データベースの利用効率などを著しく向上させることができるようになる。
また、スキーマに新たなリソース(例えば、XMLの要素など)が追加された場合であっても、容易に追加された形式に変換することができるようになる。
また、本発明は、外部のデータベースからデータを取得する場合に限られず、同様に自己が管理する内部データベースからデータを取得することにより、内部データの一括形式変換を行うことができるようになる。
再び第3図に戻り、本発明は、次に、変換された変換後の構造化データおよびスキーマデータをデータベースに登録する(ステップSA−3)。
ここで、既知のXML格納システム(例えば、eXcelon、Tamino等のDOM木格納のもの、XMLネイティブ格納方式のもの、RDBラッパー形式のもの、または、同等機能の処理系をもつもの等)を用いてもよい。
次に、本発明は、ステップSA−3において登録された各種のデータベースにアクセスしてデータ処理を行うツールプログラム(分析ツール)と、当該ツールプログラムに入力される構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録する(ステップSA−4)。
ここで、スキーマリソース定義情報の概念について第30図を参照して説明する。スキーマリソース定義情報は、例えば、各種のデータベースに登録された構造化データのスキーマデータと、各種のツールの入力書式とのマッピングを定義することにより、登録された各データソースと、ツールの利用形態の各リソースとの対応を定義してもよい。また、スキーマリソース定義情報は、XSL、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであってもよい。
次に、本発明は、ツールプログラム(分析ツール)が起動された場合に、起動された当該ツールプログラムに対応するスキーマリソース定義情報に従って、データベースに登録された構造化データおよびスキーマデータを動的に変換して(ステップSA−6)、該ツールプログラムに入力する(ステップSA−7)。
ここで、分析ツールの入力データの形式変換の処理フローを第5図に示す。まず、ユーザが登録された分析ツールAを起動すると(ステップSB−1)、分析ツール格納ファイルから分析ツールAを読み出しで(ロード)、CPUが分析ツールAを実行可能な状態にする(ステップSB−2)。
そして、本発明は、スキーマリソース定義ファイルから分析ツールAに対応するスキーマリソース定義情報A(例えば、XSL文書など)を取得する(ステップSB−3)。
そして、本発明は、取得したスキーマリソース定義情報Aにより、各データベースに登録された各構造化データおよび各スキーマデータの形式を変換する(ステップSB−4)。
そして、変換後の各構造化データおよび各スキーマデータを分析ツールAの入力データとする(ステップSB−5)。これにて、変換処理を終了する。
ここで、ステップSA−6の変換処理は、Xalan(APACHE XMLPROJECT)やXT(James Clark)等の既知のXSLTプロセッサを用いて実行してもよい。
再び第3図に戻り、次に、本発明は、分析ツールの処理結果を各種のデータベースに登録し、出力装置に処理結果を出力する(ステップSA−8)。
ここで、3種類の分析ツールを起動して遺伝子発現制御解析を実行し、これらの処理結果を各種のデータベースに登録する場合の処理概要を第12図〜第15図および第24図〜第29図等を参照して説明する。
第12図は、遺伝子発現制御解析処理の処理の概要を示すフロー図である。
まず、本発明は、第13図に示すように、転写単位予測ツールを起動して転写単位を予測する(ステップSC−1)。ここで、第13図は、転写単位の予測の概要を示す概念図である。
第13図に示すように、まず、各種の外部データベースにアクセスして種々のデータを取得し、これらの上述の方法により必要に応じて形式変換を行って共有部分のデータベースを予め作成しておく。
そして、転写単位予測ツールは、対応するスキーマリソース定義情報に基づいて共有部分のデータベースにアクセスして適宜形式変換が行われたデータを入力データとして処理を行い、処理結果を転写単位データベースに登録する。転写単位予測ツールのスキーマリソース定義情報は、遺伝子名データベースから各遺伝子について、(遺伝子名、開始位置、終了位置)の形式で転写単位予測ツールの入力データにマッピングしている。すなわち、遺伝子名データベースに登録された各遺伝子のデータは、転写単位予測ツールのスキーマリソース定義情報により(遺伝子名、開始位置、終了位置)の形式のデータに変換されて、転写単位予測ツールの入力データとなる。
ここで、第13図で示した転写単位データベースに格納されるスキーマデータおよび構造化データの一例を第24図および第25図を参照して説明する。
第24図は、第13図で示した転写単位データベースのスキーマデータについてDTDを用いて記述した場合を一例に示す図であり、第25図は、第13図で示した転写単位データベースの構造化データについてXML文書を用いて記述した場合を一例に示す図である。第24図に示すように、第13図で示した転写単位データベースの文書型が定義され、第25図に示すように構造化データが記述される。
再び、第12図に戻り、次に、本発明は、第14図に示すように制御部位予測ツールを起動して制御部位を予測する(ステップSC−2)。ここで、第14図は、制御部位の予測の概要を示す概念図である。
起動された制御部位予測ツールは、対応するスキーマリソース定義情報に基づいて共有部分のデータベースにアクセスして適宜形式変換が行われたデータや、BLAST等の他の配列統計処理ツールの処理結果データや、転写単位予測ツールの処理結果を格納した転写単位データベースに登録されたデータなどを入力データとして処理を行い、処理結果を制御部位データベースに登録する。制御部位予測ツールのスキーマリソース定義情報は、転写単位データベース、遺伝子名データベース、全ゲノムデータベースから、各転写単位について、(転写単位識別子、開始位置、終了位置、任意の長さのアミノ酸配列)の形式で制御部位予測ツールの入力データとマッピングを行い、また、配列統計処理ツールの処理結果から任意の長さのアミノ酸部分配列の全ての出現する組合せについて、(アミノ酸部分配列、ゲノム中の出願回数)の形式で制御部位予測ツールの入力データとマッピングを行う。また、BLASTなどの配列統計処理ツールのスキーマリソース定義情報は、全ゲノムデータベースから配列全体を取り出すように配列統計処理ツールの入力データとマッピングを行う。
ここで、第14図で示した制御部位データベースに格納されるスキーマデータおよび構造化データの一例を第26図および第27図を参照して説明する。
第26図は、第14図で示した制御部位データベースのスキーマデータについてDTDを用いて記述した場合を一例に示す図であり、第27図は、第14図で示した制御部位データベースの構造化データについてXML文書を用いて記述した場合を一例に示す図である。第26図に示すように、第14図で示した制御部位データベースの文書型が定義され、第27図に示すように構造化データが記述される。
再び、第12図に戻り、次に本発明は、第15図に示すように制御遺伝子予測ツールを起動して制御遺伝子を予測する(ステップSC−3)。ここで、第15図は、制御遺伝子の予測の概要を示す概念図である。
起動された制御遺伝子予測ツールは、対応するスキーマリソース定義情報に基づいて共有部分のデータベースにアクセスして適宜形式変換が行われたデータや、BLAST等の他の配列統計処理ツールの処理結果データや、転写単位予測ツールの処理結果を格納した転写単位データベースに登録されたデータや、制御部位予測ツールの処理結果を格納した制御部位データベースに登録されたデータなどを入力データとして処理を行い、処理結果を制御ネットワークデータベースに登録する。制御遺伝子予測ツールのスキーマリソース定義情報は、配列データベースから、各DNA結合蛋白質の遺伝子について、(遺伝子名、アミノ酸配列)の形式で制御遺伝子予測ツールの入力データとマッピングを行い、また、転写単位データベース、全ゲノムデータベースから各転写単位について、(転写単位識別子、制御部位(開始位置、終了位置、アミノ酸配列)のリスト)の形式で制御遺伝子予測ツールの入力データとマッピングを行う。
ここで、第15図で示した制御ネットワークデータベースに格納されるスキーマデータおよび構造化データの一例を第28図および第29図を参照して説明する。
第28図は、第15図で示した制御ネットワークデータベースのスキーマデータについてDTDを用いて記述した場合を一例に示す図であり、第29図は、第15図で示した制御ネットワークデータベースの構造化データについてXML文書を用いて記述した場合を一例に示す図である。第28図に示すように、第15図で示した制御ネットワークデータベースの文書型が定義され、第29図に示すように構造化データが記述される。
これにて、遺伝子発現制御解析処理を終了する。
このように、各分析ツールにより随時項目追加が発生し、その追加項目を後段の分析ツールの処理で使用するような場合であっても、分析ツールの仕様に手を加えることなく、使用する各データの拡張性を容易に担保することができるようになる。また、共有部分のデータベースの一括形式変換を行うことができるようになる。
[システム構成]
まず、本システムの構成について説明する。第2図は、本発明が適用される本システムの構成の一例を示すブロック図であり、該構成のうち本発明に関係する部分のみを概念的に示している。本システムは、概略的に、構造化データ処理装置100と、配列情報等に関する外部データベースやホモロジー検索等の外部プログラム等を提供する外部システム200とを、ネットワーク300を介して通信可能に接続して構成されている。
第2図においてネットワーク300は、構造化データ処理装置100と外部システム200とを相互に接続する機能を有し、例えば、インターネット等である。
第2図において外部システム200は、ネットワーク300を介して、構造化データ処理装置100と相互に接続され、利用者に対して配列情報等に関する外部データベースやホモロジー検索やモチーフ検索等の外部プログラムを実行するウェブサイトを提供する機能を有する。
ここで、外部システム200は、WEBサーバやASPサーバ等として構成してもよく、そのハードウェア構成は、一般に市販されるワークステーション、パーソナルコンピュータ等の情報処理装置およびその付属装置により構成してもよい。また、外部システム200の各機能は、外部システム200のハードウェア構成中のCPU、ディスク装置、メモリ装置、入力装置、出力装置、通信制御装置等およびそれらを制御するプログラム等により実現される。
第2図において構造化データ処理装置100は、概略的に、構造化データ処理装置100の全体を統括的に制御するCPU等の制御部102、通信回線等に接続されるルータ等の通信装置(図示せず)に接続される通信制御インターフェース部104、入力装置112や出力装置114に接続される入出力制御インターフェース部108、および、各種のデータベースやテーブルなどを格納する記憶部106を備えて構成されており、これら各部は任意の通信路を介して通信可能に接続されている。さらに、この構造化データ処理装置100は、ルータ等の通信装置および専用線等の有線または無線の通信回線を介して、ネットワーク300に通信可能に接続されている。
記憶部106に格納される各種のデータベースやテーブル(構造化データ格納データベース106a〜処理結果データベース106f)は、固定ディスク装置等のストレージ手段であり、各種処理に用いる各種のプログラムやテーブルやファイルやデータベースやウェブページ用ファイル等を格納する。
これら記憶部106の各構成要素のうち、構造化データ格納データベース106aは、構造化データを格納したデータベースである。
また、スキーマデータ格納データベース106bは、スキーマデータを格納するデータベースである。
また、スキーマ形式変換指示情報ファイル106cは、スキーマ形式変換指示情報等を格納するスキーマ形式変換指示情報格納手段である。
また、分析ツール格納ファイル106dは、分析ツールに関する情報等を格納する分析ツール格納手段である。
また、スキーマリソース定義ファイル106eは、スキーマリソース定義情報等を格納するスキーマリソース定義情報格納手段である。
また、処理結果データベース106fは、分析ツールの処理結果に関する情報等を格納する処理結果格納手段である。
また、第2図において、通信制御インターフェース部104は、構造化データ処理装置100とネットワーク300(またはルータ等の通信装置)との間における通信制御を行う。すなわち、通信制御インターフェース部104は、他の端末と通信回線を介してデータを通信する機能を有する。
また、第2図において、入出力制御インターフェース部108は、入力装置112や出力装置114の制御を行う。ここで、出力装置114としては、モニタ(家庭用テレビを含む)の他、スピーカを用いることができる(なお、以下においては出力装置114をモニタとして記載する場合がある)。また、入力装置112としては、キーボード、マウス、および、マイク等を用いることができる。また、モニタも、マウスと協働してポインティングデバイス機能を実現する。
また、第2図において、制御部102は、OS(Operating System)等の制御プログラム、各種の処理手順等を規定したプログラム、および所要データを格納するための内部メモリを有し、これらのプログラム等により、種々の処理を実行するための情報処理を行う。制御部102は、機能概念的に、構造化データ取得部102a、形式変換部102b、構造化データ登録部102c、分析ツール登録部102d、分析ツール起動部102e、および、処理結果登録部102fを備えて構成されている。
このうち、構造化データ取得部102aは、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得する構造化データ取得手段である。
また、形式変換部102bは、構造化データ取得手段にて取得した上記構造化データおよび上記スキーマデータを、スキーマ形式変換指示情報に基づいて変換する形式変換手段である。
また、構造化データ登録部102cは、形式変換手段にて変換された変換後の構造化データおよびスキーマデータをデータベースに登録する構造化データ登録手段である。
また、分析ツール登録部102dは、構造化データ登録手段にて登録された上記データベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される上記構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録する分析ツール登録手段である。
また、分析ツール起動部102eは、ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応する上記スキーマリソース定義情報に従って、上記データベースに登録された構造化データおよびスキーマデータを動的に変換して当該ツールプログラムに入力する分析ツール起動手段である。
また、処理結果登録部102fは、分析ツールの処理結果をデータベースに登録する処理結果登録手段である。
なお、これら各部によって行なわれる処理の詳細については、後述する。
[実施例]
次に、このように構成された本実施の形態における本システムの処理の一例について、以下に第17図〜第23図等を参照して詳細に説明する。
第17図は、本発明が適用される構造化データ処理装置の概念を説明するための図である。
本発明は、第17図に示すような各データベースを設ける。本データベースは、複数のサブデータベースから構成される。第17図中のサブデータベース「配列データベース」には配列データを格納する。第17図では配列データベースはひとつしか示されていないが、複数あっても良い。
配列データベースの各レコードには、少なくとも塩基またはアミノ酸配列データ本体が入る。BSML、BioML、GAMEのように、部分修飾記述や全体記述が含まれても良い。
複数の配列データに関係するデータは、配列データベースとは別にサブデータベース「関係データベース」に格納する。第17図中では関係データベースA乃至Dの4種類の関係データベースが示されている。
関係データベースの各レコードには、少なくとも1つの参照情報が含まれる。参照情報は、システム内のサブデータベースまたは外部データベースのレコード全体、またはレコード内の特定部分を差し示している。関係データベースの各レコードには部分修飾記述や全体記述その他が含まれても良い。第17図中では関係データベース「D」に配列データベースと関係データベース「A」乃至「C」への参照を含むレコードが存在することが、「参照」というラベルの付いた矢線で示されている。
第18図は、本発明が適用される構造化データ処理装置の基本構成を示す図である。本発明は、第18図に示すようなデータベースシステム(構造化データ処理装置)を構成する。このシステムは、基本処理モジュール、拡張処理モジュール、記憶部から構成されている。
基本処理モジュールは、ツール登録処理部(概念的に第2図における分析ツール登録部102dに対応する)、文書登録処理部(概念的に第2図における構造化データ登録部102cに対応する)、形式変換処理部(概念的に第2図における形式変換部102bに対応する)、サービス仲介処理部(概念的に第2図における分析ツール起動部102eおよび処理結果登録部102fに対応する)、リンク処理部から構成されている。拡張処理モジュールは、いくつかのツール部(第18図中、分析ツールA、分析ツールB、・・・であり、これらは、概念的に第2図における分析ツール格納ファイル106dに対応する)から構成されている。記憶部は構造格納部(概念的に第2図における構造化データ格納データベース106aに対応する)、スキーマ格納部(概念的に第2図におけるスキーマデータ格納データベース106bに対応する)、スキーマリソース定義部(概念的に第2図におけるスキーマリソース定義ファイル106eに対応する)、結果ファイル(概念的に第2図における処理結果データベース106fに対応する)からなる。
そして、本システムは、大きく3つのサービスを提供する。これらのサービスは、第18図におけるツール登録処理部による解析処理ツール登録サービス、文書登録処理部による文書格納サービス、サービス仲介処理部による解析処理(検索処理などを含む)サービスからなっている。
解析処理ツール登録サービスでは、ツール登録処理部が解析ツールとそれに対になるリソース定義を読み込み、解析ツールをツール部に、リソース定義をスキーマリソース定義部にそれぞれ登録する。
文書格納サービスでは、DTDやXML−SchemaやRELAXなどの文書型を明記した構造化文書を読み込み、必要に応じて形式変換処理を行ない、構造格納部に格納する。次に、その構造化文書の文書型(複数あっても良い)が既に登録されているかどうかスキーマ格納部に問い合わせる。既に登録されている場合は何もしないが、登録されていない場合は文書型を取得しスキーマ格納部に登録する。
解析処理サービスでは、サービス仲介処理部がサービス要求を受け取り、その実行に必要な解析処理ツールを決定する。その解析ツールと対になるリソース定義をスキーマリソース定義部から取得する。サービス仲介処理部は、実行に必要な文書データをリソース定義などに従ってリンク参照を解決しながら構造格納部から文書集合を取得する。また、その文書集合の処理を解析処理ツールに依頼し、結果を生成する。
ここで、第18図中の太い矢線は、データの移動を意味する。ただし、構造格納部から出る矢線については、必ずしも実際のデータ移動を意味せず、参照情報(ポインタ)のみを移動させることを意味する場合もある。
すなわち、本発明の一態様によれば、本発明の構造化データ処理装置は、遺伝子の塩基配列または蛋白質のアミノ酸配列に関連した情報を管理する構造化データ処理装置であって、上記塩基配列または上記アミノ酸配列に関する配列データを格納する配列データ格納部と、複数の上記配列データに関係する関係データを格納する複数の関係データ格納部とを備え、上記塩基配列または上記アミノ酸配列の全体に関する情報は、上記配列データ格納部または上記関係データ格納部に格納され、上記関係データ格納部に格納された各関係データレコードは、上記関係データ格納部自身への参照構造、または上記配列データ格納部を構成するデータレコード全体または一部への参照構造を有することを特徴とする。
また、本発明の構造化データ処理装置は、基本処理部と、拡張処理部と、記憶部とを備え、上記基本処理部が、解析ツールおよび上記解析ツールと対になるリソース定義を読み込み、上記解析ツールおよび上記リソース定義を登録するツール登録部と、文書型を明記した構造化文書を読み込み、必要に応じて形式変換処理を行ない、上記記憶部に上記構造化文書を登録する文書登録部と、サービスの要求を受け取り、上記サービスの実行に必要な解析処理ツールを決定するサービス仲介部と、上記参照構造への参照を行なうリンク処理部とを備え、上記拡張処理部が、上記構造化文書の解析処理を実行する複数種類の解析処理ツールを備え、上記記憶部が、上記文書登録部によって読み込んだ上記構造化文書を格納する構造格納部と、上記構造化文書のスキーマを格納するスキーマ格納部と、上記ツール登録部によって登録されるリソース定義を格納するスキーマリソース定義部とを備え、上記構造格納部が、構造化文書の木構造を保ったまま格納することが望ましい。
また、本発明の構造化データ処理装置は、外部データベースからデータを読み込み、上記配列データ格納部または上記関係データ格納部に格納するためのデータに変換する変換手段を備えることが望ましい。
また、本発明の構造化データ処理装置は、上記配列データ格納部または上記関係データ格納部を検索し、検索した結果を構造化文書で出力する検索手段を備えることが望ましい。
また、本発明の構造化データ処理装置は、上記検索手段が、BSML(Bio Sequence Markup Language)形式の記述形式に変換することが望ましい。
また、本発明の構造化データ処理装置は、上記検索手段が、BioML(BIO polymer Markup Language)形式の記述形式に変換することが望ましい。
以下、本発明の実施例の処理概要を、図面を参照しながら詳細に説明する。
構造化データ処理装置(システム)は、第18図に示すように構成されている。本実施の形態では、特定目的を達成するための構成方法を具体的に示す。ここでは、塩基配列を入力として、関連する塩基配列を検索するサービスを目的とする。このとき関連配列は、次のようにして探す。
まず、塩基配列を含むレコードからリンクされている文献レコードに自然言語的に近い文献レコードを求める。この文献レコードに含まれる塩基配列が検索結果となる。このように文献データを用いて関連配列を検索する方法をここでは「文献類似法」と呼ぶ。文献類似法では2つの配列間に介在する文献DBレコードの数(上記説明では2)を増減することでヒット件数を制御することができる。
上述したように、本システムは、3つのサービスを提供する。本実施の形態では、コマンド、ライブラリ、TCP/IPサービス、httpサービス(CGI)など複数考えられるが、ここの説明では簡便のためコマンドとする。
本システムが稼働状態にあるときには、次のサービスコマンドを実行できる。
(1)文書格納サービス
(2)解析処理ツール登録サービス
(3)解析処理サービス
ただし、サービス(2)は、サービス(1)の格納条件に依存し、サービス(3)は、サービス(1)とサービス(2)の格納・登録条件に依存する。これらの各条件の詳細は後述する。
(1)文書格納サービス
文書格納サービスコマンド(1)は、次のように実行する。
store〈文書名〉〈スキーマ名〉[〈スキーマ変換記述名〉]
ここで、“store”は、文書格納サービスコマンド名である。〈文書名〉には、格納するXML文書のファイル名を、〈スキーマ名〉には、格納するXML文書の文書型定義(DTD)のファイル名を、〈スキーマ変換記述名〉には、格納するXML文書のスキーマから本システム用のスキーマへの変換指示をXSL言語で記したファイル名を指定する。形式変換を行わないでそのままの形式で構造格納部へ格納する場合は、スキーマ変換記述名は省略しても良い。
第19図乃至第21図は、文書格納サービスの処理を示すフロー図である。
第19図は、文書格納サービスのメインルーチンを示すフロー図である。
storeコマンドによる文書格納サービスは、次の手順で実行される。
まず、ステップS31において、格納する構造化文書のスキーマがスキーマ格納部に登録されているかどうかを調べる。
ステップS31で格納されていないと判断された場合(ステップS31:NO)は、ステップS32において、スキーマ変換記述が利用可能かどうかを調べる。一方、ステップS31で格納されている場合(ステップS31:YES)は、サブルーチン文書登録処理へ進む。サブルーチン文書登録処理については、第5図を用いて後述する。
そして、ステップS32で利用可能であると判断された場合(ステップS32:YES)は、サブルーチン形式変換処理へ進む。サブルーチン形式変換処理については、第20図を用いて後述する。一方、ステップS32で利用可能でないと判断された場合(ステップS32:NO)は、サブルーチン文書登録処理へ進む。
第20図は、文書格納サービスのサブルーチン「形式変換処理」を示すフロー図である。
形式変換処理は、次の手順で実行される。
まず、ステップS41において、格納する構造化文書のスキーマとスキーマ変換記述から格納構造のスキーマを生成する。
そして、ステップS42において、スキーマ変換記述に従って構造化文書を変換し、その結果をステップS41で生成したスキーマと共にサブルーチン文書登録処理に渡す。ここで、上記変換は、一般に入手可能なXSLTプロセッサ(Saxon、Xalan等)または同等機能の処理系を利用する。
第21図は、文書格納サービスのサブルーチン「文書登録処理」を示すフロー図である。
文書登録処理は次の手順で実行する。
まず、ステップS51において、文書を構造格納部に格納する。ここで、上記格納は、市販のXML格納システム(eXcelon、Tamino等のDOM木格納、XMLネイティブ格納方式のもの、RDBラッパー方式のもの、または同等機能の処理系)を用いる。
そして、ステップS52において、スキーマがスキーマ格納部に登録されているか否かを判断する。
ステップS52で登録されていないと判断された場合(ステップS52:NO)は、ステップS53において、スキーマを登録して終了する。一方、ステップS52で登録されていると判断された場合(ステップS52:YES)は、そのまま終了する。
次に、文書格納サービスの実行例を以下に示す。
この実行例では、文書をXMLで表現し、スキーマをXML DTD(文書型定義)で表現する。格納するデータは、下記のURLのサービスを用いてXML文書としてローカルに保存する。配列データは、GenBankサービスを利用し、文献データは、PubMedサービスを利用する(http://www.ncbi.nlm.nih.gov/Genbank/参照)。GenBankから直接取得できるデータとスキーマの引用は割愛する。
配列データのスキーマ変換記述をsequence.xsl(第6図)とし、文献データのスキーマ変換記述をliterature.xsl(第9図)とする。以上のデータが形式変換処理への入力となる。
形式変換処理後、文書登録処理が行なわれるデータは次のようになる。
配列データは、sequence.xml(第7図)、スキーマは、squence.dtd(第8図)となる。
Sequenceタグは、配列全体を意味し、Titleタグは、配列に関する自然言語による説明を意味し、Nucleotideタグは、塩基配列を意味し、Peptideタグは、塩基配列を変換したアミノ酸配列を意味し、Referenceタグは、参考文献を意味し、RefTitleタグは、参考文献の題名を意味し、Idタグは、参考文献の参照番号を意味する。
また、文献データの1レコードは、literature.xml(第10図)となり、スキーマは、literature.dtd(第11図)となる。
Literatureタグは、文献データ全体を意味し、Titleタグは、文献の題名を意味し、Abstractタグは、文献の概要を意味し、Linkタグは、関連する配列データへの参照番号集合を意味し、Idタグは、個々の参照番号を意味する。
(2)解析処理ツール登録サービス
次に、解析処理ツール登録サービスコマンド(2)を説明する。
解析処理ツール登録サービスコマンド(2)は、次のように実行する。
register〈ツールコマンド名〉[〈リソース定義〉]
ここで“register”は、解析処理ツール登録サービスコマンド名である。〈ツールコマンド名〉には、登録する解析処理ツールのファイル名を指定し、〈リソース定義〉には、本システム格納用データスキーマからツールの入力となるデータ形式への変換指示をXSL言語で記したファイル名を指定する。ツールへの入力が格納部内のデータに由来しない場合は、リソース定義は省略しても良い。
第22図は、解析処理ツール登録サービスの処理を説明するためのフロー図である。
registerコマンドによるツール登録処理は次の手順で実行される。
まず、ステップS61において、解析ツールが実行可能な状態になっているか否かを判断する。
ステップS61で実行可能な状態になっていないと判断された場合(ステップS61:NO)は、ステップS62において、本システムが実行可能な場所に複写する。
そして、ステップS61で実行可能な状態になっていると判断された場合(ステップS61:YES)、あるいは、ステップS62で複写した後、ステップS63において、解析ツールのコマンド名を記憶する。
さらに、ステップS64において、リソース定義をスキーマリソース定義部に格納して終了する。
次に、解析処理ツール登録サービスの実行例を以下に説明する。
本実行例では、システムに格納された配列データと文献データを対象に文献類似法による配列検索を行なうための2つの解析処理ツール(索引付け処理、検索処理)をそれぞれ上記手順で登録する。
索引付け処理は、1h−indexコマンドとし、検索処理は、1h−searchコマンドとする。1h−indexコマンドは、検索対象の文字列と識別子の組の集合からなる全検索対象データを引数にとる。本コマンドは、リソース定義1h−index.xslと共に登録する。1h−searchコマンドは、検索キーである配列を引数にとる。本コマンドと同時に登録するリソース定義はない。
(3)解析処理サービス
解析処理サービスコマンド(3)は、次のように実行する。
process〈解析ツール名〉[−toolargs〈ツール引数リスト〉][−serviceargs〈サービス引数リスト〉]
ここで“process”は、解析処理サービスコマンド名である。〈解析ツール名〉には、システムに登録済みの解析ツールの名前を指定し、〈ツール引数リスト〉には、その解析ツールに渡すパラメータを指定する。解析ツールが追加の引数を必要としない場合、ツール引数リストは省略しても良い。〈サービス引数リスト〉には、解析ツールには直接渡さず、サービスに必要なパラメータを指定する。必要ない場合は、サービス引数リストは省略しても良い。
第23図は、解析処理サービスの処理を説明するためのフロー図である。
processコマンドによる解析処理サービスは、サービス仲介処理部によって次の手順で実行される。
まず、ステップS71において、解析ツール(分析ツール)がシステムに登録されているか否かを判断する。
ステップS71で登録されていないと判断された場合(ステップS71:NO)は、ステップS72において、エラー処理を行なう。
一方、ステップS71で登録されていると判断された場合(ステップS71:YES)は、ステップS73において、解析ツールに対応したリソース定義がスキーマリソース定義部に登録されているか否かを判断する。
ステップS73で登録されていると判断された場合(ステップS73:YES)は、ステップS74において、(サービス引数リストが存在する場合はそれも用いて、)構造格納部内の各文書についてリソース定義(XSL)を適用し、それぞれの結果に解析ツールを適用する。そして、ステップS75において、全文書の処理が終了したか否かを判断することにより、全文書が終了(ステップS75:YES)するまでステップS74を繰り返す。
一方、ステップS73で登録されていないと判断された場合(ステップS73:NO)は、ステップS76において、解析ツールを実行する。
そして、ステップS76における解析ツールの実行後、あるいは、ステップS75における処理の終了後、実行結果を出力して終了する。
次に、解析処理ツール登録サービスの実行例を以下に説明する。
既に述べたように文献類似法は、索引作成処理を行なう1h−indexと検索処理を行なう1h−search との2つの解析ツールにより実装される。
索引作成処理では、次のようにprocessコマンドを起動する。
1h−indexツールには、リソース定義として1h−search.xslが存在しているため、構造格納部内の全文書に関してXSLT処理を行なう。この処理は、リソース定義1h−index.xslとサービス引数−depth=2の情報を用いて次のように動作する。
構造格納部中の各配列レコードsから参照される文献レコード集合をL1とする。L1の各文献レコードl から参照される配列レコード集合をS1とする。
S1の各配列レコードS’から参照される文献レコード集合をL2とする。このように配列・文献の組のパスを2段階辿って(この段数を”−depth=2”が指定している。)得られる全集合から自然言語(テキスト)データのある部分のみを元の配列sのIdと共に取り出す。このXSLT処理の結果を1h−indexに渡し(この渡し方を”−toolargs ″@documents″”により指定している。)索引を作成する。
検索処理では、次のようにprocessコマンドを起動する。
1h−search ツールにはリソース定義が存在していないため、直接1h−search が起動され、1h−indexが作成した索引を用いて配列IDに関連のある配列ID集合を結果に出す。
以上説明してきたように、本発明によれば、関係DBに配列DBとは独立な拡張が可能になることで、配列DBレコードの枠組みに収まらないスキーマ拡張が容易に行なえるようになり、問題点(1)を解決している。
また、本発明によれば、構造格納方式の文書記憶部を持ち、レコードの部分構造を参照する関係DBを持つことで、構造的に違いの大きい複数形式への変換を総合的に効率よく行なうことができ、問題点(2)を解決している。
また、発明の実施の形態の項で文献類似法の例を挙げて示したように、本システムは、柔軟性と実装効率を両立しており、問題点(2)を解決している。この性質は、構造格納部をRDB技術で実装するよりもネイティブな構造格納技術を用いた方がより顕著になる。
また、文献類似法の実装例では、インデックス作成時に処理対象となるテキスト部をXSLTを用いて動的に生成した。そのため、リンクをたどる段数をパラメータ化でき、実行可能な機能の柔軟性が高くなった。効率に関しては、実際のところ、上述の実施の形態のようなコマンドラインで解析ツールを結合する仕組では、データをバイトストリームで渡すことになり、そこがネックになるが、データ空間を共有するタイプのコンポーネント結合技術を用いることでそれは解決することができる。
また、文献類似法以外の解析コンポーネントについても、ツールが必要とする文書をスキーマ格納部に登録されている文書形式から生成する指示を準備することで柔軟に追加することができる。また、登録する構造化文書の形式が多用な場合でも、とりあえず構造格納部に格納してしまう運用が可能であり、このような柔軟性も備えている。
[他の実施の形態]
さて、これまで本発明の実施の形態について説明したが、本発明は、上述した実施の形態以外にも、上記特許請求の範囲に記載した技術的思想の範囲内において種々の異なる実施の形態にて実施されてよいものである。
例えば、構造化データ処理装置100がスタンドアローンの形態で処理を行う場合を一例に説明したが、構造化データ処理装置100とは別筐体で構成されるクライアント端末からの要求に応じて処理を行い、その処理結果を当該クライアント端末に返却するように構成してもよい。
また、実施形態において説明した各処理のうち、自動的に行なわれるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行なわれるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。
この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種の登録データや検索条件等のパラメータを含む情報、画面例、データベース構成については、特記する場合を除いて任意に変更することができる。
また、構造化データ処理装置100に関して、図示の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。
例えば、構造化データ処理装置100の各部または各装置が備える処理機能、特に制御部102にて行なわれる各処理機能については、その全部または任意の一部を、CPU(Central Processing Unit)および当該CPUにて解釈実行されるプログラムにて実現することができ、あるいは、ワイヤードロジックによるハードウェアとして実現することも可能である。なお、プログラムは、後述する記録媒体に記録されており、必要に応じて構造化データ処理装置100に機械的に読み取られる。
すなわち、ROMまたはHDなどの記憶部106などには、OS(Operating System)と協働してCPUに命令を与え、各種処理を行うためのコンピュータプログラムが記録されている。このコンピュータプログラムは、RAM等にロードされることによって実行され、CPUと協働して制御部102を構成する。また、このコンピュータプログラムは、構造化データ処理装置100に対して任意のネットワーク300を介して接続されたアプリケーションプログラムサーバに記録されてもよく、必要に応じてその全部または一部をダウンロードすることも可能である。
また、本発明にかかるプログラムを、コンピュータ読み取り可能な記録媒体に格納することもできる。ここで、この「記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、EPROM、EEPROM、CD−ROM、MO、DVD等の任意の「可搬用の物理媒体」や、各種コンピュータシステムに内蔵されるROM、RAM、HD等の任意の「固定用の物理媒体」、あるいは、LAN、WAN、インターネットに代表されるネットワークを介してプログラムを送信する場合の通信回線や搬送波のように、短期にプログラムを保持する「通信媒体」を含むものとする。
また、「プログラム」とは、任意の言語や記述方法にて記述されたデータ処理方法であり、ソースコードやバイナリコード等の形式を問わない。なお、「プログラム」は必ずしも単一的に構成されるものに限られず、複数のモジュールやライブラリとして分散構成されるものや、OS(Operating System)に代表される別個のプログラムと協働してその機能を達成するものをも含む。なお、実施の形態に示した各装置において記録媒体を読み取るための具体的な構成、読み取り手順、あるいは、読み取り後のインストール手順等については、周知の構成や手順を用いることができる。
記憶部106に格納される各種のデータベース等(構造化データ格納データベース106a〜処理結果データベース106f)は、RAM、ROM等のメモリ装置、ハードディスク等の固定ディスク装置、フレキシブルディスク、光ディスク等のストレージ手段であり、各種処理やウェブサイト提供に用いる各種のプログラムやテーブルやファイルやデータベースやウェブページ用ファイル等を格納する。
また、構造化データ処理装置100は、既知のパーソナルコンピュータ、ワークステーション等の情報処理端末等の情報処理装置にプリンタやモニタやイメージスキャナ等の周辺装置を接続し、該情報処理装置に本発明の方法を実現させるソフトウェア(プログラム、データ等を含む)を実装することにより実現してもよい。
さらに、構造化データ処理装置100の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷等に応じた任意の単位で、機能的または物理的に分散・統合して構成することができる。例えば、各データベースを独立したデータベース装置として独立に構成してもよく、また、処理の一部をCGI(Common Gateway Interface)を用いて実現してもよい。
また、ネットワーク300は、構造化データ処理装置100と外部システム200とを相互に接続する機能を有し、例えば、インターネットや、イントラネットや、LAN(有線/無線の双方を含む)や、VANや、パソコン通信網や、公衆電話網(アナログ/デジタルの双方を含む)や、専用回線網(アナログ/デジタルの双方を含む)や、CATV網や、IMT2000方式、GSM方式またはPDC/PDC−P方式等の携帯回線交換網/携帯パケット交換網や、無線呼出網や、Bluetooth等の局所無線網や、PHS網や、CS、BSまたはISDB等の衛星通信網等のうちいずれかを含んでもよい。すなわち、本システムは、有線・無線を問わず任意のネットワークを介して、各種データを送受信することができる。
以上詳細に説明したように、本発明によれば、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得し、取得した構造化データおよびスキーマデータを、スキーマ形式変換指示情報に基づいて変換し、変換された変換後の構造化データおよびスキーマデータをデータベースに登録し、登録されたデータベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録し、ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応するスキーマリソース定義情報に従って、データベースに登録された構造化データおよびスキーマデータを動的に変換して当該ツールプログラムに入力するので、異なる構造化言語やスキーマ言語で記述された取得データを予めまたは必要に応じて定めた形式に変換することができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
また、本発明によれば、各種の外部データベースから取得したデータ間の整合を容易にとることができるようになり、データ記述形式に関する高い拡張性を担保することができるようになる。その結果、各種のデータ記述形式に対応する外部データベースへのアクセスを容易に行うことができるようになる。すなわち、統一した特定の構造化記述言語の形式(例えば、BSMLやBioML等)で内部のデータベースを管理することが可能になるため、データベースの利用効率などを著しく向上させることができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
また、本発明によれば、スキーマに新たなリソース(例えば、XMLの要素など)が追加された場合であっても、容易に追加された形式に変換することができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
また、本発明によれば、各分析ツールにより随時項目追加が発生し、その追加項目を後段の分析ツールの処理で使用するような場合であっても、分析ツールの仕様に手を加えることなく、使用する各データの拡張性を容易に担保することができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
また、本発明によれば、共有部分のデータベースの一括形式変換を行うことができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
また、本発明によれば、構造化記述言語は、XML、SGML、BioML、BSML、ASN.1、GAME、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であるので、これらのバイオインフォマティクス分野において一般的に用いられる構造化記述言語により記述された構造化データを効率的に変換することができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
また、本発明によれば、スキーマデータは、DTD、XMLスキーマ、RELAX、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであるので、これらのバイオインフォマティクス分野において一般的に用いられるスキーマ言語により記述されたスキーマデータを効率的に変換することができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
また、本発明によれば、スキーマ形式変換指示情報およびスキーマリソース定義情報は、XSL、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであるので、これらのバイオインフォマティクス分野において一般的に用いられるスキーマ変換記述言語により記述されたスキーマ形式変換指示情報およびスキーマリソース定義情報に基づいて、構造化データおよびスキーマデータを効率的に変換することができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
また、本発明によれば、構造化データは、塩基配列および/またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むので、GenBankなどに登録された配列情報や、PubMedなどに登録された文献情報を取得して形式変換することができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
産業上の利用可能性
以上のように、本発明にかかる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体は、様々な形式のスキーマ言語により定義された様々な形式の構造化データを効率的に処理するのに適している。
【図面の簡単な説明】
第1図は、遺伝子の塩基配列または蛋白質のアミノ酸配列の配列情報データベースの基本的なデータ構造の例を示す図であり、第2図は、本発明が適用される本システムの構成の一例を示すブロック図であり、第3図は、本発明の基本原理を示す原理構成図であり、第4図は、本発明による取得データの形式変換の一例を説明する概念図であり、第5図は、分析ツールの入力データの形式変換の処理を示すフロー図であり、第6図は、XSLにより記述された配列情報のスキーマ形式変換指示情報の一例を示す図であり、第7図は、第6図に示すスキーマ形式変換指示情報により形式変換された後の構造化データ(XML文書)の一例を示す図であり、第8図は、第6図に示すスキーマ形式変換指示情報により形式変換された後のスキーマデータ(DTD)の一例を示す図であり、第9図は、XSLにより記述された文献情報のスキーマ形式変換指示情報の一例を示す図であり、第10図は、第9図に示すスキーマ形式変換指示情報により形式変換された後の構造化データ(XML文書)の一例を示す図であり、第11図は、第9図に示すスキーマ形式変換指示情報により形式変換された後のスキーマデータ(DTD)の一例を示す図であり、第12図は、遺伝子発現制御解析処理の処理の概要を示すフロー図であり、第13図は、転写単位の予測の概要を示す概念図であり、第14図は、制御部位の予測の概要を示す概念図であり、第15図は、制御遺伝子の予測の概要を示す概念図であり、第16図は、BI分野で一般的に用いられるBSMLにより記述されたデータと、同様に一般的に用いられるBioMLにより記述されたデータとの構造的な相違を説明するための図であり、第17図は、本発明が適用される構造化データ処理装置の概念を説明するための図であり、第18図は、本発明が適用される構造化データ処理装置の基本構成を示す図であり、第19図は、文書格納サービスのメインルーチンを示すフロー図であり、第20図は、文書格納サービスのサブルーチン「形式変換処理」を示すフロー図であり、第21図は、文書格納サービスのサブルーチン「文書登録処理」を示すフロー図であり、第22図は、解析処理ツール登録サービスの処理を説明するためのフロー図であり、第23図は、解析処理サービスの処理を説明するためのフロー図であり、第24図は、第13図で示した転写単位データベースのスキーマデータについてDTDを用いて記述した場合を一例に示す図であり、第25図は、第13図で示した転写単位データベースの構造化データについてXML文書を用いて記述した場合を一例に示す図であり、第26図は、第14図で示した制御部位データベースのスキーマデータについてDTDを用いて記述した場合を一例に示す図であり、第27図は、第14図で示した制御部位データベースの構造化データについてXML文書を用いて記述した場合を一例に示す図であり、第28図は、第15図で示した制御ネットワークデータベースのスキーマデータについてDTDを用いて記述した場合を一例に示す図であり、第29図は、第15図で示した制御ネットワークデータベースの構造化データについてXML文書を用いて記述した場合を一例に示す図であり、第30図は、スキーマリソース定義情報の概念について説明する図である。
本発明は、構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体に関し、特に、様々な形式のスキーマ言語により定義された様々な形式の構造化データを効率的に処理することができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体に関する。
背景技術
従来、バイオインフォマティクス分野において扱われる基本的なデータベースとして、大規模な塩基またはアミノ酸などの配列情報データベースや、文献情報データベースがある。例えば、既存の配列情報データベースの例として、「GenBank」などがあり、文献情報データベースの例として「PubMed」などがある(http://www.ncbi.nlm.nih.gov/Genbank/参照)。
第1図は、遺伝子の塩基配列または蛋白質のアミノ酸配列の配列情報データベースの基本的なデータ構造の例を示す図である。
ここで、第1図に示すように、配列情報データベースに格納される各配列情報のデータ構造は、一般的に(1)配列本体を格納するフィールド、(2)配列の一部分についてのアノテーション情報を格納する部分修飾記述フィールド、(3)配列の全体についてのアノテーション情報を格納する全体記述フィールド、の3つのフィールド群からなっている。
上記(1)の配列本体を格納するフィールドは、塩基配列またはアミノ酸配列からなっている。塩基配列は、生物細胞の染色体を構成する4種類の塩基(ACGT)を一次元の列に並べたものである。塩基配列が遺伝子として働くときにその特定の配列情報から特定の蛋白質が生成される。アミノ酸配列は、その蛋白質を構成する二十数種のアミノ酸を一次元の列に並べたものである。
上記(2)の部分修飾記述フィールドは、配列本体の一部分について、実験や解析を通して得た知見(物性や構造情報など)等のアノテーション情報を記したものである。この情報は配列によっては全くない場合もあるし、同一の配列部分に複数の部分修飾記述フィールドが記述されることもある。
また、上記(3)の全体記述フィールドは、その配列全体に関する情報であり、例えば、分類ID、通称、自然言語による説明、生物種、染色体上の位置、(発現データの場合)臓器、関連する学術文献の参照先、キーワードなどに関するデータからなる。
これらのデータベースに格納される配列情報は、レコード毎に埋まるフィールドや繰り返し回数が異なるという性質を持つ。そのため、ある程度書式付けされたテキスト形式またはXMLなどの構造化された記述形式で流通することが多い。
バイオインフォマティクス分野で用いられている既存の構造化記述言語には、例えば、「ASN.1(Abstract Syntax Notation 1)」(http://www.ncbi.nlm.nih.gov/Sitemap/Summary/asn1.html、James M. Ostell, ”Integrated Access to Heterogeneous Data from NCBI”,pp.730−736,IEEE Engineering in Medicine and Biology,Nov/Dec,1995)や、XMLベースの「BSML(Bio Sequence Markup Language)」(http://www.labbook.com/faq/bsml.asp)、「BioML(The BIOpolymer Markup Language)」(http://www.bioml.com/BIOML/index.html)、および、「GAME(Genome Annotation Markup Elements)」(http://www.bioxml.org/Projects/game/)などが存在している。
これらの配列データは大規模(例えば、GenBankのレコード数は1000万件規模)であり、効率的な検索処理を行なうために上述の例のデータでは、リレーショナルデータベース(RDB)を用いたデータベースシステムに変換/格納されている。
しかしながら、従来のシステムには、
(1)多種の構造化記述形式に対応する高い拡張性を持つ形式でデータを格納することができない。
(2)データを効率よく格納・利用することができない。
という2つの問題点があった。以下、これらの問題点について具体的に説明する。
まず問題点(1)で述べている、データ記述形式に関する高い拡張性は、バイオインフォマティクス(BI)分野では特に重要である。ここでBI分野において格納すべき情報は、XMLやBSMLやBioMLなどの既存の構造化記述言語で表記されるものだけではない。すなわち、BI分野全体の研究が進むにつれて格納すべき情報の定義情報の集合(スキーマ)などは変化する。例えば、新たに実験手段が開発された場合、その結果を格納するフィールドや定義するためのスキーマが追加されることになる。
また、同じ事実を複数の表現で格納するために繰り返し構造が導入されることも多い。このような場合、既存形式のデータを新規形式のデータに変換する必要があり、変換プログラムの開発と変換処理のコストが発生する。
さらに他の例として、相互作用する複数の蛋白質の部位の情報を、枠組みを変えずに蛋白質のレコードに含めようとする場合には、同じ情報を異なる2つのレコードに同期して格納する必要がある。この場合、格納領域が多く使用される、格納・修正等の機能の実装が複雑になる、などの管理上の問題が発生する。
また、第16図は、BI分野で一般的に用いられるBSMLにより記述された構造化データと、同様に一般的に用いられるBioMLにより記述された構造化データとの構造的な相違を説明するための図である。
上述したように、現在でも複数種類の構造化記述言語で記述された構造化記述形式があり、既存のソフトウェア資産を再利用するためにはそれらへ容易に変換できる必要がある。特に、第16図に示すように、BSMLとBioMLの間には、部分修飾記述フィールドの形式に構造的な相違がある。BioMLは、蛋白質の構造に関する一部の部分修飾記述をXML文書の木構造に埋め込むのに対して、BSMLは、全ての部分修飾記述を配列位置情報との組で別記している。このような違いのある複数の形式へ変換を効率的に行なうためには、格納構造の表現能力が十分に柔軟である必要がある。
問題点(2)は、問題点(1)を解決するような柔軟なデータを対象にしたときの効率について述べている。
RDB技術は、古くから実用化されており、既存の計算機アプリケーションにおいては、信頼性が高く、大規模データの処理効率に優れた運用が可能である。しかし、RDBでは、対象ドメインで扱うデータのスキーマが静的であることを前提にデータモデルが設計される。特に、データ構造が複雑になるに従って固定化の度合が高まる。そのため、問題点(1)に対して求められるような高い拡張性を持つシステムの構築は、本来想定されておれず、上述したような効率上の課題が生じる。
RDBが利用できない場合は、最も柔軟な格納方式であるプレーンテキストファイルでの格納になるが、これは大規模データにおける検索や取り出し性能が実用的ではない。特に、BI分野ではこれらのデータを対象に大規模な解析処理を連続して行なうため、各レコード操作に求められる効率は、事務帳票処理やエンドユーザが起因となるトランザクション処理に比べて高くなってしまう。
従って、本発明は、遺伝子の塩基配列や蛋白質のアミノ酸配列などの配列情報のような大規模なデータを、高い拡張性を持つ形式でデータを格納し、しかもデータを効率よく格納・利用することが可能となる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することを目的としている。
発明の開示
本発明にかかる構造化データ処理装置は、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得する構造化データ取得手段と、上記構造化データ取得手段にて取得した上記構造化データおよび上記スキーマデータを、スキーマ形式変換指示情報に基づいて変換する形式変換手段と、上記形式変換手段にて変換された変換後の構造化データおよびスキーマデータをデータベースに登録する構造化データ登録手段と、上記構造化データ登録手段にて登録された上記データベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される上記構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録する分析ツール登録手段と、上記ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応する上記スキーマリソース定義情報に従って、上記データベースに登録された構造化データおよびスキーマデータを変換して当該ツールプログラムに入力する分析ツール起動手段とを備えたことを特徴とする。
この装置によれば、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得し、取得した構造化データおよびスキーマデータを、スキーマ形式変換指示情報に基づいて変換し、変換された変換後の構造化データおよびスキーマデータをデータベースに登録し、登録されたデータベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録し、ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応するスキーマリソース定義情報に従って、データベースに登録された構造化データおよびスキーマデータを動的に変換して当該ツールプログラムに入力するので、異なる構造化言語やスキーマ言語で記述された取得データを予めまたは必要に応じて定めた形式に変換することができるようになる。
また、各種の外部データベースから取得したデータ間の整合を容易にとることができるようになり、データ記述形式に関する高い拡張性を担保することができるようになる。その結果、各種のデータ記述形式に対応する外部データベースへのアクセスを容易に行うことができるようになる。すなわち、統一した特定の構造化記述言語の形式(例えば、BSMLやBioML等)で内部のデータベースを管理することが可能になるため、データベースの利用効率などを著しく向上させることができるようになる。
また、スキーマに新たなリソース(例えば、XMLの要素など)が追加された場合であっても、容易に追加された形式に変換することができるようになる。
また、各分析ツールにより随時項目追加が発生し、その追加項目を後段の分析ツールの処理で使用するような場合であっても、分析ツールの仕様に手を加えることなく、使用する各データの拡張性を容易に担保することができるようになる。また、共有部分のデータベースの一括形式変換を行うことができるようになる。
つぎの発明にかかる構造化データ処理装置は、上記の構造化データ処理装置において、上記構造化記述言語は、XML、SGML、BioML、BSML、ASN.1、GAME、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であることを特徴とする。
これは構造化記述言語の一例を一層具体的に示すものである。この装置によれば、構造化記述言語は、XML、SGML、BioML、BSML、ASN.1、GAME、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であるので、これらのバイオインフォマティクス分野において一般的に用いられる構造化記述言語により記述された構造化データを効率的に変換することができるようになる。
つぎの発明にかかる構造化データ処理装置は、上記の構造化データ処理装置において、上記スキーマデータは、DTD、XMLスキーマ、RELAX、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであることを特徴とする。
これはスキーマデータの一例を一層具体的に示すものである。この装置によれば、スキーマデータは、DTD、XMLスキーマ、RELAX、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであるので、これらのバイオインフォマティクス分野において一般的に用いられるスキーマ言語により記述されたスキーマデータを効率的に変換することができるようになる。
つぎの発明にかかる構造化データ処理装置は、上記の構造化データ処理装置において、上記スキーマ形式変換指示情報および上記スキーマリソース定義情報は、XSL、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであることを特徴とする。
これはスキーマ形式変換指示情報およびスキーマリソース定義情報の一例を一層具体的に示すものである。この装置によれば、スキーマ形式変換指示情報およびスキーマリソース定義情報は、XSL、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであるので、これらのバイオインフォマティクス分野において一般的に用いられるスキーマ変換記述言語により記述されたスキーマ形式変換指示情報およびスキーマリソース定義情報に基づいて、構造化データおよびスキーマデータを効率的に変換することができるようになる。
つぎの発明にかかる構造化データ処理装置は、上記の構造化データ処理装置において、上記構造化データは、塩基配列および/またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むことを特徴とする。
これはスキーマ形式変換指示情報およびスキーマリソース定義情報の一例を一層具体的に示すものである。この装置によれば、構造化データは、塩基配列および/またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むので、GenBankなどに登録された配列情報や、PubMedなどに登録された文献情報を取得して形式変換することができるようになる。
つぎの発明にかかる構造化データ処理方法は、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得する構造化データ取得ステップと、上記構造化データ取得ステップにて取得した上記構造化データおよび上記スキーマデータを、スキーマ形式変換指示情報に基づいて変換する形式変換ステップと、上記形式変換ステップにて変換された変換後の構造化データおよびスキーマデータをデータベースに登録する構造化データ登録ステップと、上記構造化データ登録ステップにて登録された上記データベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される上記構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録する分析ツール登録ステップと、上記ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応する上記スキーマリソース定義情報に従って、上記データベースに登録された構造化データおよびスキーマデータを動的に変換して当該ツールプログラムに入力する分析ツール起動ステップとを含むことを特徴とする。
この方法によれば、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得し、取得した構造化データおよびスキーマデータを、スキーマ形式変換指示情報に基づいて変換し、変換された変換後の構造化データおよびスキーマデータをデータベースに登録し、登録されたデータベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録し、ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応するスキーマリソース定義情報に従って、データベースに登録された構造化データおよびスキーマデータを動的に変換して当該ツールプログラムに入力するので、異なる構造化言語やスキーマ言語で記述された取得データを予めまたは必要に応じて定めた形式に変換することができるようになる。
また、各種の外部データベースから取得したデータ間の整合を容易にとることができるようになり、データ記述形式に関する高い拡張性を担保することができるようになる。その結果、各種のデータ記述形式に対応する外部データベースへのアクセスを容易に行うことができるようになる。すなわち、統一した特定の構造化記述言語の形式(例えば、BSMLやBioML等)で内部のデータベースを管理することが可能になるため、データベースの利用効率などを著しく向上させることができるようになる。
また、スキーマに新たなリソース(例えば、XMLの要素など)が追加された場合であっても、容易に追加された形式に変換することができるようになる。
また、各分析ツールにより随時項目追加が発生し、その追加項目を後段の分析ツールの処理で使用するような場合であっても、分析ツールの仕様に手を加えることなく、使用する各データの拡張性を容易に担保することができるようになる。また、共有部分のデータベースの一括形式変換を行うことができるようになる。
つぎの発明にかかる構造化データ処理方法は、上記の構造化データ処理方法において、上記構造化記述言語は、XML、SGML、BioML、BSML、ASN.1、GAME、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であることを特徴とする。
これは構造化記述言語の一例を一層具体的に示すものである。この方法によれば、構造化記述言語は、XML、SGML、BioML、BSML、ASN.1、GAME、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であるので、これらのバイオインフォマティクス分野において一般的に用いられる構造化記述言語により記述された構造化データを効率的に変換することができるようになる。
つぎの発明にかかる構造化データ処理方法は、上記の構造化データ処理方法において、上記スキーマデータは、DTD、XMLスキーマ、RELAX、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであることを特徴とする。
これはスキーマデータの一例を一層具体的に示すものである。この方法によれば、スキーマデータは、DTD、XMLスキーマ、RELAX、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであるので、これらのバイオインフォマティクス分野において一般的に用いられるスキーマ言語により記述されたスキーマデータを効率的に変換することができるようになる。
つぎの発明にかかる構造化データ処理方法は、上記の構造化データ処理方法において、上記スキーマ形式変換指示情報および上記スキーマリソース定義情報は、XSL、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであることを特徴とする。
これはスキーマ形式変換指示情報およびスキーマリソース定義情報の一例を一層具体的に示すものである。この方法によれば、スキーマ形式変換指示情報およびスキーマリソース定義情報は、XSL、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであるので、これらのバイオインフォマティクス分野において一般的に用いられるスキーマ変換記述言語により記述されたスキーマ形式変換指示情報およびスキーマリソース定義情報に基づいて、構造化データおよびスキーマデータを効率的に変換することができるようになる。
つぎの発明にかかる構造化データ処理方法は、上記の構造化データ処理方法において、上記構造化データは、塩基配列および/またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むことを特徴とする。
これはスキーマ形式変換指示情報およびスキーマリソース定義情報の一例を一層具体的に示すものである。この方法によれば、構造化データは、塩基配列および/またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むので、GenBankなどに登録された配列情報や、PubMedなどに登録された文献情報を取得して形式変換することができるようになる。
つぎの発明にかかるプログラムは、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得する構造化データ取得ステップと、上記構造化データ取得ステップにて取得した上記構造化データおよび上記スキーマデータを、スキーマ形式変換指示情報に基づいて変換する形式変換ステップと、上記形式変換ステップにて変換された変換後の構造化データおよびスキーマデータをデータベースに登録する構造化データ登録ステップと、上記構造化データ登録ステップにて登録された上記データベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される上記構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録する分析ツール登録ステップと、上記ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応する上記スキーマリソース定義情報に従って、上記データベースに登録された構造化データおよびスキーマデータを動的に変換して当該ツールプログラムに入力する分析ツール起動ステップとを含む構造化データ処理方法をコンピュータに実行させることを特徴とする。
このプログラムによれば、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得し、取得した構造化データおよびスキーマデータを、スキーマ形式変換指示情報に基づいて変換し、変換された変換後の構造化データおよびスキーマデータをデータベースに登録し、登録されたデータベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録し、ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応するスキーマリソース定義情報に従って、データベースに登録された構造化データおよびスキーマデータを動的に変換して当該ツールプログラムに入力するので、異なる構造化言語やスキーマ言語で記述された取得データを予めまたは必要に応じて定めた形式に変換することができるようになる。
また、各種の外部データベースから取得したデータ間の整合を容易にとることができるようになり、データ記述形式に関する高い拡張性を担保することができるようになる。その結果、各種のデータ記述形式に対応する外部データベースへのアクセスを容易に行うことができるようになる。すなわち、統一した特定の構造化記述言語の形式(例えば、BSMLやBioML等)で内部のデータベースを管理することが可能になるため、データベースの利用効率などを著しく向上させることができるようになる。
また、スキーマに新たなリソース(例えば、XMLの要素など)が追加された場合であっても、容易に追加された形式に変換することができるようになる。
また、各分析ツールにより随時項目追加が発生し、その追加項目を後段の分析ツールの処理で使用するような場合であっても、分析ツールの仕様に手を加えることなく、使用する各データの拡張性を容易に担保することができるようになる。また、共有部分のデータベースの一括形式変換を行うことができるようになる。
つぎの発明にかかるプログラムは、上記のプログラムにおいて、上記構造化記述言語は、XML、SGML、BioML、BSML、ASN.1、GAME、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であることを特徴とする。
これは構造化記述言語の一例を一層具体的に示すものである。このプログラムによれば、構造化記述言語は、XML、SGML、BioML、BSML、ASN.1、GAME、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であるので、これらのバイオインフォマティクス分野において一般的に用いられる構造化記述言語により記述された構造化データを効率的に変換することができるようになる。
つぎの発明にかかるプログラムは、上記のプログラムにおいて、上記スキーマデータは、DTD、XMLスキーマ、RELAX、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであることを特徴とする。
これはスキーマデータの一例を一層具体的に示すものである。このプログラムによれば、スキーマデータは、DTD、XMLスキーマ、RELAX、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであるので、これらのバイオインフォマティクス分野において一般的に用いられるスキーマ言語により記述されたスキーマデータを効率的に変換することができるようになる。
つぎの発明にかかるプログラムは、上記のプログラムにおいて、上記スキーマ形式変換指示情報および上記スキーマリソース定義情報は、XSL、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであることを特徴とする。
これはスキーマ形式変換指示情報およびスキーマリソース定義情報の一例を一層具体的に示すものである。このプログラムによれば、スキーマ形式変換指示情報およびスキーマリソース定義情報は、XSL、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであるので、これらのバイオインフォマティクス分野において一般的に用いられるスキーマ変換記述言語により記述されたスキーマ形式変換指示情報およびスキーマリソース定義情報に基づいて、構造化データおよびスキーマデータを効率的に変換することができるようになる。
つぎの発明にかかるプログラムは、上記のプログラムにおいて、上記構造化データは、塩基配列および/またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むことを特徴とする。
これはスキーマ形式変換指示情報およびスキーマリソース定義情報の一例を一層具体的に示すものである。このプログラムによれば、構造化データは、塩基配列および/またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むので、GenBankなどに登録された配列情報や、PubMedなどに登録された文献情報を取得して形式変換することができるようになる。
つぎの発明にかかる記録媒体は、上記のプログラムを記録したことを特徴とする。
この記録媒体によれば、当該記録媒体に記録されたプログラムをコンピュータに読み取らせて実行することによって、上記のプログラムをコンピュータを利用して実現することができ、これら各方法と同様の効果を得ることができる。
発明を実施するための最良の形態
以下に、本発明にかかる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
特に、以下の実施の形態においては、本発明を、XMLベースの構造化記述言語およびスキーマ言語に適用した例について説明するが、この場合に限られず、他のいずれの構造化記述言語およびスキーマ言語に適用可能なシステム等について、同様に適用することができる。
[本発明の概要]
以下、本発明の概要について説明し、その後、本発明の構成および処理等について詳細に説明する。第3図は本発明の基本原理を示す原理構成図である。
本発明は、概略的に、以下の基本的特徴を有する。すなわち、本発明は、まず、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを、インターネット等を介して外部のデータベース等から取得する(ステップSA−1)。
ここで、外部のデータベースは、例えば、GenBank、EMBL(European Molecular Biology Laboratory)、DDBJ(DNA Data Bank of Japan)等の配列データベースや、GDB(Genome Data Base)、OMIM(online mendelian inheritance in man)等のヒトゲノム地図データに関するデータベースや、PIR(Protein Identification Resource)、SWISS−PROT、PRF等のアミノ酸配列データベースや、PROSITE、BLOCKS等の蛋白質機能データベースや、PDB(Protein Data Bank)等の蛋白質立体構造データベースや、Entrez等の統合型データベースや、PubMed等の文献データベース等が公知である。これらの各データベースは、それぞれ予め定めた構造化記述言語により構造化データを記述し、また、同様に予め定めたスキーマ言語により記述された、構造化データに対応するスキーマデータを収集している。
ここで、外部のデータベースなどから取得する構造化データを記述する構造化記述言語は、XML、SGML、BioML、BSML、ASN.1、GAME、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であってもよく、また、スキーマデータは、DTD、XMLスキーマ、RELAX、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであってもよい。
次に、本発明は、取得した構造化データおよびスキーマデータを、スキーマ形式変換指示情報に基づいて変換する(ステップSA−2)。ここで、第4図は、本発明による取得データの形式変換の一例を説明する概念図である。
第4図に示すように、構造化記述言語で記述された構造化データと、スキーマ言語で記述されたスキーマデータとをそれぞれ外部のデータベースなどから取得すると、予め定めたスキーマ形式変換指示情報に従って、取得データを変換する。
ここで、スキーマ形式変換指示情報は、XSL、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであってもよく、この場合、変換処理は、Xalan(APACHE XML PROJECT)やXT(James Clark)等の既知のXSLTプロセッサを用いて実行してもよい。
ここで、第6図は、XSLにより記述された配列情報のスキーマ形式変換指示情報の一例を示す図であり、第7図は、第6図に示すスキーマ形式変換指示情報により形式変換された後の構造化データ(XML文書)の一例を示す図であり、また、第8図は、第6図に示すスキーマ形式変換指示情報により形式変換された後のスキーマデータ(DTD)の一例を示す図である。第6図に示すXSL文書により、取得データのスキーマデータは第8図に示すDTDの形式に変換され、構造化データは第7図に示すXML文書に変換される。
第8図に示す変換後のDTDの例では、構造化データ内で用いられる要素(ELEMENT)は、Sequence、Title、Nucleotide、Peptide、Reference、RefTitle、Idであり、それぞれの要素の型を定義している。各要素のうち「Sequence」は、塩基配列データを意味し、配列に関する自然言語による説明を意味する「Title」と、塩基配列を意味する「Nucleotide」と、塩基配列を変換したアミノ酸配列を意味する「Peptide」と、参考文献の題名を意味する「RefTitle」および参考文献の参照番号を意味する「Id」を子の要素として備え、参考文献を意味する「Reference」と、を子の要素として備える。
また、第9図は、XSLにより記述された文献情報のスキーマ形式変換指示情報の一例を示す図であり、第10図は、第9図に示すスキーマ形式変換指示情報により形式変換された後の構造化データ(XML文書)の一例を示す図であり、また、第11図は、第9図に示すスキーマ形式変換指示情報により形式変換された後のスキーマデータ(DTD)の一例を示す図である。
第11図に示す変換後のDTDの例では、構造化データ内で用いられる要素(ELEMENT)は、Literature、Title、Abstract、Link、Idであり、それぞれの要素の型を定義している。各要素のうち「Literature」は、文献データ全体を意味し、文献の題名を意味する「Title」と、文献の概要を意味する「Abstract」と、関連する配列データへの参照番号集合を意味し、個々の参照番号を意味する「Id」を子の要素として備える「Link」と、を子の要素として備える。
これにより、異なる構造化言語やスキーマ言語で記述された取得データを予めまたは必要に応じて定めた形式に変換することができるようになるので、各種の外部データベースから取得したデータ間の整合を容易にとることができるようになりデータ記述形式に関する高い拡張性を担保することができるようになる。その結果、各種のデータ記述形式に対応する外部データベースへのアクセスを容易に行うことができるようになる。すなわち、統一した特定の構造化記述言語の形式(例えば、BSMLやBioML等)で内部のデータベースを管理することが可能になるため、データベースの利用効率などを著しく向上させることができるようになる。
また、スキーマに新たなリソース(例えば、XMLの要素など)が追加された場合であっても、容易に追加された形式に変換することができるようになる。
また、本発明は、外部のデータベースからデータを取得する場合に限られず、同様に自己が管理する内部データベースからデータを取得することにより、内部データの一括形式変換を行うことができるようになる。
再び第3図に戻り、本発明は、次に、変換された変換後の構造化データおよびスキーマデータをデータベースに登録する(ステップSA−3)。
ここで、既知のXML格納システム(例えば、eXcelon、Tamino等のDOM木格納のもの、XMLネイティブ格納方式のもの、RDBラッパー形式のもの、または、同等機能の処理系をもつもの等)を用いてもよい。
次に、本発明は、ステップSA−3において登録された各種のデータベースにアクセスしてデータ処理を行うツールプログラム(分析ツール)と、当該ツールプログラムに入力される構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録する(ステップSA−4)。
ここで、スキーマリソース定義情報の概念について第30図を参照して説明する。スキーマリソース定義情報は、例えば、各種のデータベースに登録された構造化データのスキーマデータと、各種のツールの入力書式とのマッピングを定義することにより、登録された各データソースと、ツールの利用形態の各リソースとの対応を定義してもよい。また、スキーマリソース定義情報は、XSL、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであってもよい。
次に、本発明は、ツールプログラム(分析ツール)が起動された場合に、起動された当該ツールプログラムに対応するスキーマリソース定義情報に従って、データベースに登録された構造化データおよびスキーマデータを動的に変換して(ステップSA−6)、該ツールプログラムに入力する(ステップSA−7)。
ここで、分析ツールの入力データの形式変換の処理フローを第5図に示す。まず、ユーザが登録された分析ツールAを起動すると(ステップSB−1)、分析ツール格納ファイルから分析ツールAを読み出しで(ロード)、CPUが分析ツールAを実行可能な状態にする(ステップSB−2)。
そして、本発明は、スキーマリソース定義ファイルから分析ツールAに対応するスキーマリソース定義情報A(例えば、XSL文書など)を取得する(ステップSB−3)。
そして、本発明は、取得したスキーマリソース定義情報Aにより、各データベースに登録された各構造化データおよび各スキーマデータの形式を変換する(ステップSB−4)。
そして、変換後の各構造化データおよび各スキーマデータを分析ツールAの入力データとする(ステップSB−5)。これにて、変換処理を終了する。
ここで、ステップSA−6の変換処理は、Xalan(APACHE XMLPROJECT)やXT(James Clark)等の既知のXSLTプロセッサを用いて実行してもよい。
再び第3図に戻り、次に、本発明は、分析ツールの処理結果を各種のデータベースに登録し、出力装置に処理結果を出力する(ステップSA−8)。
ここで、3種類の分析ツールを起動して遺伝子発現制御解析を実行し、これらの処理結果を各種のデータベースに登録する場合の処理概要を第12図〜第15図および第24図〜第29図等を参照して説明する。
第12図は、遺伝子発現制御解析処理の処理の概要を示すフロー図である。
まず、本発明は、第13図に示すように、転写単位予測ツールを起動して転写単位を予測する(ステップSC−1)。ここで、第13図は、転写単位の予測の概要を示す概念図である。
第13図に示すように、まず、各種の外部データベースにアクセスして種々のデータを取得し、これらの上述の方法により必要に応じて形式変換を行って共有部分のデータベースを予め作成しておく。
そして、転写単位予測ツールは、対応するスキーマリソース定義情報に基づいて共有部分のデータベースにアクセスして適宜形式変換が行われたデータを入力データとして処理を行い、処理結果を転写単位データベースに登録する。転写単位予測ツールのスキーマリソース定義情報は、遺伝子名データベースから各遺伝子について、(遺伝子名、開始位置、終了位置)の形式で転写単位予測ツールの入力データにマッピングしている。すなわち、遺伝子名データベースに登録された各遺伝子のデータは、転写単位予測ツールのスキーマリソース定義情報により(遺伝子名、開始位置、終了位置)の形式のデータに変換されて、転写単位予測ツールの入力データとなる。
ここで、第13図で示した転写単位データベースに格納されるスキーマデータおよび構造化データの一例を第24図および第25図を参照して説明する。
第24図は、第13図で示した転写単位データベースのスキーマデータについてDTDを用いて記述した場合を一例に示す図であり、第25図は、第13図で示した転写単位データベースの構造化データについてXML文書を用いて記述した場合を一例に示す図である。第24図に示すように、第13図で示した転写単位データベースの文書型が定義され、第25図に示すように構造化データが記述される。
再び、第12図に戻り、次に、本発明は、第14図に示すように制御部位予測ツールを起動して制御部位を予測する(ステップSC−2)。ここで、第14図は、制御部位の予測の概要を示す概念図である。
起動された制御部位予測ツールは、対応するスキーマリソース定義情報に基づいて共有部分のデータベースにアクセスして適宜形式変換が行われたデータや、BLAST等の他の配列統計処理ツールの処理結果データや、転写単位予測ツールの処理結果を格納した転写単位データベースに登録されたデータなどを入力データとして処理を行い、処理結果を制御部位データベースに登録する。制御部位予測ツールのスキーマリソース定義情報は、転写単位データベース、遺伝子名データベース、全ゲノムデータベースから、各転写単位について、(転写単位識別子、開始位置、終了位置、任意の長さのアミノ酸配列)の形式で制御部位予測ツールの入力データとマッピングを行い、また、配列統計処理ツールの処理結果から任意の長さのアミノ酸部分配列の全ての出現する組合せについて、(アミノ酸部分配列、ゲノム中の出願回数)の形式で制御部位予測ツールの入力データとマッピングを行う。また、BLASTなどの配列統計処理ツールのスキーマリソース定義情報は、全ゲノムデータベースから配列全体を取り出すように配列統計処理ツールの入力データとマッピングを行う。
ここで、第14図で示した制御部位データベースに格納されるスキーマデータおよび構造化データの一例を第26図および第27図を参照して説明する。
第26図は、第14図で示した制御部位データベースのスキーマデータについてDTDを用いて記述した場合を一例に示す図であり、第27図は、第14図で示した制御部位データベースの構造化データについてXML文書を用いて記述した場合を一例に示す図である。第26図に示すように、第14図で示した制御部位データベースの文書型が定義され、第27図に示すように構造化データが記述される。
再び、第12図に戻り、次に本発明は、第15図に示すように制御遺伝子予測ツールを起動して制御遺伝子を予測する(ステップSC−3)。ここで、第15図は、制御遺伝子の予測の概要を示す概念図である。
起動された制御遺伝子予測ツールは、対応するスキーマリソース定義情報に基づいて共有部分のデータベースにアクセスして適宜形式変換が行われたデータや、BLAST等の他の配列統計処理ツールの処理結果データや、転写単位予測ツールの処理結果を格納した転写単位データベースに登録されたデータや、制御部位予測ツールの処理結果を格納した制御部位データベースに登録されたデータなどを入力データとして処理を行い、処理結果を制御ネットワークデータベースに登録する。制御遺伝子予測ツールのスキーマリソース定義情報は、配列データベースから、各DNA結合蛋白質の遺伝子について、(遺伝子名、アミノ酸配列)の形式で制御遺伝子予測ツールの入力データとマッピングを行い、また、転写単位データベース、全ゲノムデータベースから各転写単位について、(転写単位識別子、制御部位(開始位置、終了位置、アミノ酸配列)のリスト)の形式で制御遺伝子予測ツールの入力データとマッピングを行う。
ここで、第15図で示した制御ネットワークデータベースに格納されるスキーマデータおよび構造化データの一例を第28図および第29図を参照して説明する。
第28図は、第15図で示した制御ネットワークデータベースのスキーマデータについてDTDを用いて記述した場合を一例に示す図であり、第29図は、第15図で示した制御ネットワークデータベースの構造化データについてXML文書を用いて記述した場合を一例に示す図である。第28図に示すように、第15図で示した制御ネットワークデータベースの文書型が定義され、第29図に示すように構造化データが記述される。
これにて、遺伝子発現制御解析処理を終了する。
このように、各分析ツールにより随時項目追加が発生し、その追加項目を後段の分析ツールの処理で使用するような場合であっても、分析ツールの仕様に手を加えることなく、使用する各データの拡張性を容易に担保することができるようになる。また、共有部分のデータベースの一括形式変換を行うことができるようになる。
[システム構成]
まず、本システムの構成について説明する。第2図は、本発明が適用される本システムの構成の一例を示すブロック図であり、該構成のうち本発明に関係する部分のみを概念的に示している。本システムは、概略的に、構造化データ処理装置100と、配列情報等に関する外部データベースやホモロジー検索等の外部プログラム等を提供する外部システム200とを、ネットワーク300を介して通信可能に接続して構成されている。
第2図においてネットワーク300は、構造化データ処理装置100と外部システム200とを相互に接続する機能を有し、例えば、インターネット等である。
第2図において外部システム200は、ネットワーク300を介して、構造化データ処理装置100と相互に接続され、利用者に対して配列情報等に関する外部データベースやホモロジー検索やモチーフ検索等の外部プログラムを実行するウェブサイトを提供する機能を有する。
ここで、外部システム200は、WEBサーバやASPサーバ等として構成してもよく、そのハードウェア構成は、一般に市販されるワークステーション、パーソナルコンピュータ等の情報処理装置およびその付属装置により構成してもよい。また、外部システム200の各機能は、外部システム200のハードウェア構成中のCPU、ディスク装置、メモリ装置、入力装置、出力装置、通信制御装置等およびそれらを制御するプログラム等により実現される。
第2図において構造化データ処理装置100は、概略的に、構造化データ処理装置100の全体を統括的に制御するCPU等の制御部102、通信回線等に接続されるルータ等の通信装置(図示せず)に接続される通信制御インターフェース部104、入力装置112や出力装置114に接続される入出力制御インターフェース部108、および、各種のデータベースやテーブルなどを格納する記憶部106を備えて構成されており、これら各部は任意の通信路を介して通信可能に接続されている。さらに、この構造化データ処理装置100は、ルータ等の通信装置および専用線等の有線または無線の通信回線を介して、ネットワーク300に通信可能に接続されている。
記憶部106に格納される各種のデータベースやテーブル(構造化データ格納データベース106a〜処理結果データベース106f)は、固定ディスク装置等のストレージ手段であり、各種処理に用いる各種のプログラムやテーブルやファイルやデータベースやウェブページ用ファイル等を格納する。
これら記憶部106の各構成要素のうち、構造化データ格納データベース106aは、構造化データを格納したデータベースである。
また、スキーマデータ格納データベース106bは、スキーマデータを格納するデータベースである。
また、スキーマ形式変換指示情報ファイル106cは、スキーマ形式変換指示情報等を格納するスキーマ形式変換指示情報格納手段である。
また、分析ツール格納ファイル106dは、分析ツールに関する情報等を格納する分析ツール格納手段である。
また、スキーマリソース定義ファイル106eは、スキーマリソース定義情報等を格納するスキーマリソース定義情報格納手段である。
また、処理結果データベース106fは、分析ツールの処理結果に関する情報等を格納する処理結果格納手段である。
また、第2図において、通信制御インターフェース部104は、構造化データ処理装置100とネットワーク300(またはルータ等の通信装置)との間における通信制御を行う。すなわち、通信制御インターフェース部104は、他の端末と通信回線を介してデータを通信する機能を有する。
また、第2図において、入出力制御インターフェース部108は、入力装置112や出力装置114の制御を行う。ここで、出力装置114としては、モニタ(家庭用テレビを含む)の他、スピーカを用いることができる(なお、以下においては出力装置114をモニタとして記載する場合がある)。また、入力装置112としては、キーボード、マウス、および、マイク等を用いることができる。また、モニタも、マウスと協働してポインティングデバイス機能を実現する。
また、第2図において、制御部102は、OS(Operating System)等の制御プログラム、各種の処理手順等を規定したプログラム、および所要データを格納するための内部メモリを有し、これらのプログラム等により、種々の処理を実行するための情報処理を行う。制御部102は、機能概念的に、構造化データ取得部102a、形式変換部102b、構造化データ登録部102c、分析ツール登録部102d、分析ツール起動部102e、および、処理結果登録部102fを備えて構成されている。
このうち、構造化データ取得部102aは、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得する構造化データ取得手段である。
また、形式変換部102bは、構造化データ取得手段にて取得した上記構造化データおよび上記スキーマデータを、スキーマ形式変換指示情報に基づいて変換する形式変換手段である。
また、構造化データ登録部102cは、形式変換手段にて変換された変換後の構造化データおよびスキーマデータをデータベースに登録する構造化データ登録手段である。
また、分析ツール登録部102dは、構造化データ登録手段にて登録された上記データベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される上記構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録する分析ツール登録手段である。
また、分析ツール起動部102eは、ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応する上記スキーマリソース定義情報に従って、上記データベースに登録された構造化データおよびスキーマデータを動的に変換して当該ツールプログラムに入力する分析ツール起動手段である。
また、処理結果登録部102fは、分析ツールの処理結果をデータベースに登録する処理結果登録手段である。
なお、これら各部によって行なわれる処理の詳細については、後述する。
[実施例]
次に、このように構成された本実施の形態における本システムの処理の一例について、以下に第17図〜第23図等を参照して詳細に説明する。
第17図は、本発明が適用される構造化データ処理装置の概念を説明するための図である。
本発明は、第17図に示すような各データベースを設ける。本データベースは、複数のサブデータベースから構成される。第17図中のサブデータベース「配列データベース」には配列データを格納する。第17図では配列データベースはひとつしか示されていないが、複数あっても良い。
配列データベースの各レコードには、少なくとも塩基またはアミノ酸配列データ本体が入る。BSML、BioML、GAMEのように、部分修飾記述や全体記述が含まれても良い。
複数の配列データに関係するデータは、配列データベースとは別にサブデータベース「関係データベース」に格納する。第17図中では関係データベースA乃至Dの4種類の関係データベースが示されている。
関係データベースの各レコードには、少なくとも1つの参照情報が含まれる。参照情報は、システム内のサブデータベースまたは外部データベースのレコード全体、またはレコード内の特定部分を差し示している。関係データベースの各レコードには部分修飾記述や全体記述その他が含まれても良い。第17図中では関係データベース「D」に配列データベースと関係データベース「A」乃至「C」への参照を含むレコードが存在することが、「参照」というラベルの付いた矢線で示されている。
第18図は、本発明が適用される構造化データ処理装置の基本構成を示す図である。本発明は、第18図に示すようなデータベースシステム(構造化データ処理装置)を構成する。このシステムは、基本処理モジュール、拡張処理モジュール、記憶部から構成されている。
基本処理モジュールは、ツール登録処理部(概念的に第2図における分析ツール登録部102dに対応する)、文書登録処理部(概念的に第2図における構造化データ登録部102cに対応する)、形式変換処理部(概念的に第2図における形式変換部102bに対応する)、サービス仲介処理部(概念的に第2図における分析ツール起動部102eおよび処理結果登録部102fに対応する)、リンク処理部から構成されている。拡張処理モジュールは、いくつかのツール部(第18図中、分析ツールA、分析ツールB、・・・であり、これらは、概念的に第2図における分析ツール格納ファイル106dに対応する)から構成されている。記憶部は構造格納部(概念的に第2図における構造化データ格納データベース106aに対応する)、スキーマ格納部(概念的に第2図におけるスキーマデータ格納データベース106bに対応する)、スキーマリソース定義部(概念的に第2図におけるスキーマリソース定義ファイル106eに対応する)、結果ファイル(概念的に第2図における処理結果データベース106fに対応する)からなる。
そして、本システムは、大きく3つのサービスを提供する。これらのサービスは、第18図におけるツール登録処理部による解析処理ツール登録サービス、文書登録処理部による文書格納サービス、サービス仲介処理部による解析処理(検索処理などを含む)サービスからなっている。
解析処理ツール登録サービスでは、ツール登録処理部が解析ツールとそれに対になるリソース定義を読み込み、解析ツールをツール部に、リソース定義をスキーマリソース定義部にそれぞれ登録する。
文書格納サービスでは、DTDやXML−SchemaやRELAXなどの文書型を明記した構造化文書を読み込み、必要に応じて形式変換処理を行ない、構造格納部に格納する。次に、その構造化文書の文書型(複数あっても良い)が既に登録されているかどうかスキーマ格納部に問い合わせる。既に登録されている場合は何もしないが、登録されていない場合は文書型を取得しスキーマ格納部に登録する。
解析処理サービスでは、サービス仲介処理部がサービス要求を受け取り、その実行に必要な解析処理ツールを決定する。その解析ツールと対になるリソース定義をスキーマリソース定義部から取得する。サービス仲介処理部は、実行に必要な文書データをリソース定義などに従ってリンク参照を解決しながら構造格納部から文書集合を取得する。また、その文書集合の処理を解析処理ツールに依頼し、結果を生成する。
ここで、第18図中の太い矢線は、データの移動を意味する。ただし、構造格納部から出る矢線については、必ずしも実際のデータ移動を意味せず、参照情報(ポインタ)のみを移動させることを意味する場合もある。
すなわち、本発明の一態様によれば、本発明の構造化データ処理装置は、遺伝子の塩基配列または蛋白質のアミノ酸配列に関連した情報を管理する構造化データ処理装置であって、上記塩基配列または上記アミノ酸配列に関する配列データを格納する配列データ格納部と、複数の上記配列データに関係する関係データを格納する複数の関係データ格納部とを備え、上記塩基配列または上記アミノ酸配列の全体に関する情報は、上記配列データ格納部または上記関係データ格納部に格納され、上記関係データ格納部に格納された各関係データレコードは、上記関係データ格納部自身への参照構造、または上記配列データ格納部を構成するデータレコード全体または一部への参照構造を有することを特徴とする。
また、本発明の構造化データ処理装置は、基本処理部と、拡張処理部と、記憶部とを備え、上記基本処理部が、解析ツールおよび上記解析ツールと対になるリソース定義を読み込み、上記解析ツールおよび上記リソース定義を登録するツール登録部と、文書型を明記した構造化文書を読み込み、必要に応じて形式変換処理を行ない、上記記憶部に上記構造化文書を登録する文書登録部と、サービスの要求を受け取り、上記サービスの実行に必要な解析処理ツールを決定するサービス仲介部と、上記参照構造への参照を行なうリンク処理部とを備え、上記拡張処理部が、上記構造化文書の解析処理を実行する複数種類の解析処理ツールを備え、上記記憶部が、上記文書登録部によって読み込んだ上記構造化文書を格納する構造格納部と、上記構造化文書のスキーマを格納するスキーマ格納部と、上記ツール登録部によって登録されるリソース定義を格納するスキーマリソース定義部とを備え、上記構造格納部が、構造化文書の木構造を保ったまま格納することが望ましい。
また、本発明の構造化データ処理装置は、外部データベースからデータを読み込み、上記配列データ格納部または上記関係データ格納部に格納するためのデータに変換する変換手段を備えることが望ましい。
また、本発明の構造化データ処理装置は、上記配列データ格納部または上記関係データ格納部を検索し、検索した結果を構造化文書で出力する検索手段を備えることが望ましい。
また、本発明の構造化データ処理装置は、上記検索手段が、BSML(Bio Sequence Markup Language)形式の記述形式に変換することが望ましい。
また、本発明の構造化データ処理装置は、上記検索手段が、BioML(BIO polymer Markup Language)形式の記述形式に変換することが望ましい。
以下、本発明の実施例の処理概要を、図面を参照しながら詳細に説明する。
構造化データ処理装置(システム)は、第18図に示すように構成されている。本実施の形態では、特定目的を達成するための構成方法を具体的に示す。ここでは、塩基配列を入力として、関連する塩基配列を検索するサービスを目的とする。このとき関連配列は、次のようにして探す。
まず、塩基配列を含むレコードからリンクされている文献レコードに自然言語的に近い文献レコードを求める。この文献レコードに含まれる塩基配列が検索結果となる。このように文献データを用いて関連配列を検索する方法をここでは「文献類似法」と呼ぶ。文献類似法では2つの配列間に介在する文献DBレコードの数(上記説明では2)を増減することでヒット件数を制御することができる。
上述したように、本システムは、3つのサービスを提供する。本実施の形態では、コマンド、ライブラリ、TCP/IPサービス、httpサービス(CGI)など複数考えられるが、ここの説明では簡便のためコマンドとする。
本システムが稼働状態にあるときには、次のサービスコマンドを実行できる。
(1)文書格納サービス
(2)解析処理ツール登録サービス
(3)解析処理サービス
ただし、サービス(2)は、サービス(1)の格納条件に依存し、サービス(3)は、サービス(1)とサービス(2)の格納・登録条件に依存する。これらの各条件の詳細は後述する。
(1)文書格納サービス
文書格納サービスコマンド(1)は、次のように実行する。
store〈文書名〉〈スキーマ名〉[〈スキーマ変換記述名〉]
ここで、“store”は、文書格納サービスコマンド名である。〈文書名〉には、格納するXML文書のファイル名を、〈スキーマ名〉には、格納するXML文書の文書型定義(DTD)のファイル名を、〈スキーマ変換記述名〉には、格納するXML文書のスキーマから本システム用のスキーマへの変換指示をXSL言語で記したファイル名を指定する。形式変換を行わないでそのままの形式で構造格納部へ格納する場合は、スキーマ変換記述名は省略しても良い。
第19図乃至第21図は、文書格納サービスの処理を示すフロー図である。
第19図は、文書格納サービスのメインルーチンを示すフロー図である。
storeコマンドによる文書格納サービスは、次の手順で実行される。
まず、ステップS31において、格納する構造化文書のスキーマがスキーマ格納部に登録されているかどうかを調べる。
ステップS31で格納されていないと判断された場合(ステップS31:NO)は、ステップS32において、スキーマ変換記述が利用可能かどうかを調べる。一方、ステップS31で格納されている場合(ステップS31:YES)は、サブルーチン文書登録処理へ進む。サブルーチン文書登録処理については、第5図を用いて後述する。
そして、ステップS32で利用可能であると判断された場合(ステップS32:YES)は、サブルーチン形式変換処理へ進む。サブルーチン形式変換処理については、第20図を用いて後述する。一方、ステップS32で利用可能でないと判断された場合(ステップS32:NO)は、サブルーチン文書登録処理へ進む。
第20図は、文書格納サービスのサブルーチン「形式変換処理」を示すフロー図である。
形式変換処理は、次の手順で実行される。
まず、ステップS41において、格納する構造化文書のスキーマとスキーマ変換記述から格納構造のスキーマを生成する。
そして、ステップS42において、スキーマ変換記述に従って構造化文書を変換し、その結果をステップS41で生成したスキーマと共にサブルーチン文書登録処理に渡す。ここで、上記変換は、一般に入手可能なXSLTプロセッサ(Saxon、Xalan等)または同等機能の処理系を利用する。
第21図は、文書格納サービスのサブルーチン「文書登録処理」を示すフロー図である。
文書登録処理は次の手順で実行する。
まず、ステップS51において、文書を構造格納部に格納する。ここで、上記格納は、市販のXML格納システム(eXcelon、Tamino等のDOM木格納、XMLネイティブ格納方式のもの、RDBラッパー方式のもの、または同等機能の処理系)を用いる。
そして、ステップS52において、スキーマがスキーマ格納部に登録されているか否かを判断する。
ステップS52で登録されていないと判断された場合(ステップS52:NO)は、ステップS53において、スキーマを登録して終了する。一方、ステップS52で登録されていると判断された場合(ステップS52:YES)は、そのまま終了する。
次に、文書格納サービスの実行例を以下に示す。
この実行例では、文書をXMLで表現し、スキーマをXML DTD(文書型定義)で表現する。格納するデータは、下記のURLのサービスを用いてXML文書としてローカルに保存する。配列データは、GenBankサービスを利用し、文献データは、PubMedサービスを利用する(http://www.ncbi.nlm.nih.gov/Genbank/参照)。GenBankから直接取得できるデータとスキーマの引用は割愛する。
配列データのスキーマ変換記述をsequence.xsl(第6図)とし、文献データのスキーマ変換記述をliterature.xsl(第9図)とする。以上のデータが形式変換処理への入力となる。
形式変換処理後、文書登録処理が行なわれるデータは次のようになる。
配列データは、sequence.xml(第7図)、スキーマは、squence.dtd(第8図)となる。
Sequenceタグは、配列全体を意味し、Titleタグは、配列に関する自然言語による説明を意味し、Nucleotideタグは、塩基配列を意味し、Peptideタグは、塩基配列を変換したアミノ酸配列を意味し、Referenceタグは、参考文献を意味し、RefTitleタグは、参考文献の題名を意味し、Idタグは、参考文献の参照番号を意味する。
また、文献データの1レコードは、literature.xml(第10図)となり、スキーマは、literature.dtd(第11図)となる。
Literatureタグは、文献データ全体を意味し、Titleタグは、文献の題名を意味し、Abstractタグは、文献の概要を意味し、Linkタグは、関連する配列データへの参照番号集合を意味し、Idタグは、個々の参照番号を意味する。
(2)解析処理ツール登録サービス
次に、解析処理ツール登録サービスコマンド(2)を説明する。
解析処理ツール登録サービスコマンド(2)は、次のように実行する。
register〈ツールコマンド名〉[〈リソース定義〉]
ここで“register”は、解析処理ツール登録サービスコマンド名である。〈ツールコマンド名〉には、登録する解析処理ツールのファイル名を指定し、〈リソース定義〉には、本システム格納用データスキーマからツールの入力となるデータ形式への変換指示をXSL言語で記したファイル名を指定する。ツールへの入力が格納部内のデータに由来しない場合は、リソース定義は省略しても良い。
第22図は、解析処理ツール登録サービスの処理を説明するためのフロー図である。
registerコマンドによるツール登録処理は次の手順で実行される。
まず、ステップS61において、解析ツールが実行可能な状態になっているか否かを判断する。
ステップS61で実行可能な状態になっていないと判断された場合(ステップS61:NO)は、ステップS62において、本システムが実行可能な場所に複写する。
そして、ステップS61で実行可能な状態になっていると判断された場合(ステップS61:YES)、あるいは、ステップS62で複写した後、ステップS63において、解析ツールのコマンド名を記憶する。
さらに、ステップS64において、リソース定義をスキーマリソース定義部に格納して終了する。
次に、解析処理ツール登録サービスの実行例を以下に説明する。
本実行例では、システムに格納された配列データと文献データを対象に文献類似法による配列検索を行なうための2つの解析処理ツール(索引付け処理、検索処理)をそれぞれ上記手順で登録する。
索引付け処理は、1h−indexコマンドとし、検索処理は、1h−searchコマンドとする。1h−indexコマンドは、検索対象の文字列と識別子の組の集合からなる全検索対象データを引数にとる。本コマンドは、リソース定義1h−index.xslと共に登録する。1h−searchコマンドは、検索キーである配列を引数にとる。本コマンドと同時に登録するリソース定義はない。
(3)解析処理サービス
解析処理サービスコマンド(3)は、次のように実行する。
process〈解析ツール名〉[−toolargs〈ツール引数リスト〉][−serviceargs〈サービス引数リスト〉]
ここで“process”は、解析処理サービスコマンド名である。〈解析ツール名〉には、システムに登録済みの解析ツールの名前を指定し、〈ツール引数リスト〉には、その解析ツールに渡すパラメータを指定する。解析ツールが追加の引数を必要としない場合、ツール引数リストは省略しても良い。〈サービス引数リスト〉には、解析ツールには直接渡さず、サービスに必要なパラメータを指定する。必要ない場合は、サービス引数リストは省略しても良い。
第23図は、解析処理サービスの処理を説明するためのフロー図である。
processコマンドによる解析処理サービスは、サービス仲介処理部によって次の手順で実行される。
まず、ステップS71において、解析ツール(分析ツール)がシステムに登録されているか否かを判断する。
ステップS71で登録されていないと判断された場合(ステップS71:NO)は、ステップS72において、エラー処理を行なう。
一方、ステップS71で登録されていると判断された場合(ステップS71:YES)は、ステップS73において、解析ツールに対応したリソース定義がスキーマリソース定義部に登録されているか否かを判断する。
ステップS73で登録されていると判断された場合(ステップS73:YES)は、ステップS74において、(サービス引数リストが存在する場合はそれも用いて、)構造格納部内の各文書についてリソース定義(XSL)を適用し、それぞれの結果に解析ツールを適用する。そして、ステップS75において、全文書の処理が終了したか否かを判断することにより、全文書が終了(ステップS75:YES)するまでステップS74を繰り返す。
一方、ステップS73で登録されていないと判断された場合(ステップS73:NO)は、ステップS76において、解析ツールを実行する。
そして、ステップS76における解析ツールの実行後、あるいは、ステップS75における処理の終了後、実行結果を出力して終了する。
次に、解析処理ツール登録サービスの実行例を以下に説明する。
既に述べたように文献類似法は、索引作成処理を行なう1h−indexと検索処理を行なう1h−search との2つの解析ツールにより実装される。
索引作成処理では、次のようにprocessコマンドを起動する。
1h−indexツールには、リソース定義として1h−search.xslが存在しているため、構造格納部内の全文書に関してXSLT処理を行なう。この処理は、リソース定義1h−index.xslとサービス引数−depth=2の情報を用いて次のように動作する。
構造格納部中の各配列レコードsから参照される文献レコード集合をL1とする。L1の各文献レコードl から参照される配列レコード集合をS1とする。
S1の各配列レコードS’から参照される文献レコード集合をL2とする。このように配列・文献の組のパスを2段階辿って(この段数を”−depth=2”が指定している。)得られる全集合から自然言語(テキスト)データのある部分のみを元の配列sのIdと共に取り出す。このXSLT処理の結果を1h−indexに渡し(この渡し方を”−toolargs ″@documents″”により指定している。)索引を作成する。
検索処理では、次のようにprocessコマンドを起動する。
1h−search ツールにはリソース定義が存在していないため、直接1h−search が起動され、1h−indexが作成した索引を用いて配列IDに関連のある配列ID集合を結果に出す。
以上説明してきたように、本発明によれば、関係DBに配列DBとは独立な拡張が可能になることで、配列DBレコードの枠組みに収まらないスキーマ拡張が容易に行なえるようになり、問題点(1)を解決している。
また、本発明によれば、構造格納方式の文書記憶部を持ち、レコードの部分構造を参照する関係DBを持つことで、構造的に違いの大きい複数形式への変換を総合的に効率よく行なうことができ、問題点(2)を解決している。
また、発明の実施の形態の項で文献類似法の例を挙げて示したように、本システムは、柔軟性と実装効率を両立しており、問題点(2)を解決している。この性質は、構造格納部をRDB技術で実装するよりもネイティブな構造格納技術を用いた方がより顕著になる。
また、文献類似法の実装例では、インデックス作成時に処理対象となるテキスト部をXSLTを用いて動的に生成した。そのため、リンクをたどる段数をパラメータ化でき、実行可能な機能の柔軟性が高くなった。効率に関しては、実際のところ、上述の実施の形態のようなコマンドラインで解析ツールを結合する仕組では、データをバイトストリームで渡すことになり、そこがネックになるが、データ空間を共有するタイプのコンポーネント結合技術を用いることでそれは解決することができる。
また、文献類似法以外の解析コンポーネントについても、ツールが必要とする文書をスキーマ格納部に登録されている文書形式から生成する指示を準備することで柔軟に追加することができる。また、登録する構造化文書の形式が多用な場合でも、とりあえず構造格納部に格納してしまう運用が可能であり、このような柔軟性も備えている。
[他の実施の形態]
さて、これまで本発明の実施の形態について説明したが、本発明は、上述した実施の形態以外にも、上記特許請求の範囲に記載した技術的思想の範囲内において種々の異なる実施の形態にて実施されてよいものである。
例えば、構造化データ処理装置100がスタンドアローンの形態で処理を行う場合を一例に説明したが、構造化データ処理装置100とは別筐体で構成されるクライアント端末からの要求に応じて処理を行い、その処理結果を当該クライアント端末に返却するように構成してもよい。
また、実施形態において説明した各処理のうち、自動的に行なわれるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行なわれるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。
この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種の登録データや検索条件等のパラメータを含む情報、画面例、データベース構成については、特記する場合を除いて任意に変更することができる。
また、構造化データ処理装置100に関して、図示の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。
例えば、構造化データ処理装置100の各部または各装置が備える処理機能、特に制御部102にて行なわれる各処理機能については、その全部または任意の一部を、CPU(Central Processing Unit)および当該CPUにて解釈実行されるプログラムにて実現することができ、あるいは、ワイヤードロジックによるハードウェアとして実現することも可能である。なお、プログラムは、後述する記録媒体に記録されており、必要に応じて構造化データ処理装置100に機械的に読み取られる。
すなわち、ROMまたはHDなどの記憶部106などには、OS(Operating System)と協働してCPUに命令を与え、各種処理を行うためのコンピュータプログラムが記録されている。このコンピュータプログラムは、RAM等にロードされることによって実行され、CPUと協働して制御部102を構成する。また、このコンピュータプログラムは、構造化データ処理装置100に対して任意のネットワーク300を介して接続されたアプリケーションプログラムサーバに記録されてもよく、必要に応じてその全部または一部をダウンロードすることも可能である。
また、本発明にかかるプログラムを、コンピュータ読み取り可能な記録媒体に格納することもできる。ここで、この「記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、EPROM、EEPROM、CD−ROM、MO、DVD等の任意の「可搬用の物理媒体」や、各種コンピュータシステムに内蔵されるROM、RAM、HD等の任意の「固定用の物理媒体」、あるいは、LAN、WAN、インターネットに代表されるネットワークを介してプログラムを送信する場合の通信回線や搬送波のように、短期にプログラムを保持する「通信媒体」を含むものとする。
また、「プログラム」とは、任意の言語や記述方法にて記述されたデータ処理方法であり、ソースコードやバイナリコード等の形式を問わない。なお、「プログラム」は必ずしも単一的に構成されるものに限られず、複数のモジュールやライブラリとして分散構成されるものや、OS(Operating System)に代表される別個のプログラムと協働してその機能を達成するものをも含む。なお、実施の形態に示した各装置において記録媒体を読み取るための具体的な構成、読み取り手順、あるいは、読み取り後のインストール手順等については、周知の構成や手順を用いることができる。
記憶部106に格納される各種のデータベース等(構造化データ格納データベース106a〜処理結果データベース106f)は、RAM、ROM等のメモリ装置、ハードディスク等の固定ディスク装置、フレキシブルディスク、光ディスク等のストレージ手段であり、各種処理やウェブサイト提供に用いる各種のプログラムやテーブルやファイルやデータベースやウェブページ用ファイル等を格納する。
また、構造化データ処理装置100は、既知のパーソナルコンピュータ、ワークステーション等の情報処理端末等の情報処理装置にプリンタやモニタやイメージスキャナ等の周辺装置を接続し、該情報処理装置に本発明の方法を実現させるソフトウェア(プログラム、データ等を含む)を実装することにより実現してもよい。
さらに、構造化データ処理装置100の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷等に応じた任意の単位で、機能的または物理的に分散・統合して構成することができる。例えば、各データベースを独立したデータベース装置として独立に構成してもよく、また、処理の一部をCGI(Common Gateway Interface)を用いて実現してもよい。
また、ネットワーク300は、構造化データ処理装置100と外部システム200とを相互に接続する機能を有し、例えば、インターネットや、イントラネットや、LAN(有線/無線の双方を含む)や、VANや、パソコン通信網や、公衆電話網(アナログ/デジタルの双方を含む)や、専用回線網(アナログ/デジタルの双方を含む)や、CATV網や、IMT2000方式、GSM方式またはPDC/PDC−P方式等の携帯回線交換網/携帯パケット交換網や、無線呼出網や、Bluetooth等の局所無線網や、PHS網や、CS、BSまたはISDB等の衛星通信網等のうちいずれかを含んでもよい。すなわち、本システムは、有線・無線を問わず任意のネットワークを介して、各種データを送受信することができる。
以上詳細に説明したように、本発明によれば、構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得し、取得した構造化データおよびスキーマデータを、スキーマ形式変換指示情報に基づいて変換し、変換された変換後の構造化データおよびスキーマデータをデータベースに登録し、登録されたデータベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録し、ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応するスキーマリソース定義情報に従って、データベースに登録された構造化データおよびスキーマデータを動的に変換して当該ツールプログラムに入力するので、異なる構造化言語やスキーマ言語で記述された取得データを予めまたは必要に応じて定めた形式に変換することができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
また、本発明によれば、各種の外部データベースから取得したデータ間の整合を容易にとることができるようになり、データ記述形式に関する高い拡張性を担保することができるようになる。その結果、各種のデータ記述形式に対応する外部データベースへのアクセスを容易に行うことができるようになる。すなわち、統一した特定の構造化記述言語の形式(例えば、BSMLやBioML等)で内部のデータベースを管理することが可能になるため、データベースの利用効率などを著しく向上させることができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
また、本発明によれば、スキーマに新たなリソース(例えば、XMLの要素など)が追加された場合であっても、容易に追加された形式に変換することができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
また、本発明によれば、各分析ツールにより随時項目追加が発生し、その追加項目を後段の分析ツールの処理で使用するような場合であっても、分析ツールの仕様に手を加えることなく、使用する各データの拡張性を容易に担保することができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
また、本発明によれば、共有部分のデータベースの一括形式変換を行うことができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
また、本発明によれば、構造化記述言語は、XML、SGML、BioML、BSML、ASN.1、GAME、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であるので、これらのバイオインフォマティクス分野において一般的に用いられる構造化記述言語により記述された構造化データを効率的に変換することができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
また、本発明によれば、スキーマデータは、DTD、XMLスキーマ、RELAX、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであるので、これらのバイオインフォマティクス分野において一般的に用いられるスキーマ言語により記述されたスキーマデータを効率的に変換することができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
また、本発明によれば、スキーマ形式変換指示情報およびスキーマリソース定義情報は、XSL、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであるので、これらのバイオインフォマティクス分野において一般的に用いられるスキーマ変換記述言語により記述されたスキーマ形式変換指示情報およびスキーマリソース定義情報に基づいて、構造化データおよびスキーマデータを効率的に変換することができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
また、本発明によれば、構造化データは、塩基配列および/またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むので、GenBankなどに登録された配列情報や、PubMedなどに登録された文献情報を取得して形式変換することができる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体を提供することができる。
産業上の利用可能性
以上のように、本発明にかかる構造化データ処理装置、構造化データ処理方法、プログラム、および、記録媒体は、様々な形式のスキーマ言語により定義された様々な形式の構造化データを効率的に処理するのに適している。
【図面の簡単な説明】
第1図は、遺伝子の塩基配列または蛋白質のアミノ酸配列の配列情報データベースの基本的なデータ構造の例を示す図であり、第2図は、本発明が適用される本システムの構成の一例を示すブロック図であり、第3図は、本発明の基本原理を示す原理構成図であり、第4図は、本発明による取得データの形式変換の一例を説明する概念図であり、第5図は、分析ツールの入力データの形式変換の処理を示すフロー図であり、第6図は、XSLにより記述された配列情報のスキーマ形式変換指示情報の一例を示す図であり、第7図は、第6図に示すスキーマ形式変換指示情報により形式変換された後の構造化データ(XML文書)の一例を示す図であり、第8図は、第6図に示すスキーマ形式変換指示情報により形式変換された後のスキーマデータ(DTD)の一例を示す図であり、第9図は、XSLにより記述された文献情報のスキーマ形式変換指示情報の一例を示す図であり、第10図は、第9図に示すスキーマ形式変換指示情報により形式変換された後の構造化データ(XML文書)の一例を示す図であり、第11図は、第9図に示すスキーマ形式変換指示情報により形式変換された後のスキーマデータ(DTD)の一例を示す図であり、第12図は、遺伝子発現制御解析処理の処理の概要を示すフロー図であり、第13図は、転写単位の予測の概要を示す概念図であり、第14図は、制御部位の予測の概要を示す概念図であり、第15図は、制御遺伝子の予測の概要を示す概念図であり、第16図は、BI分野で一般的に用いられるBSMLにより記述されたデータと、同様に一般的に用いられるBioMLにより記述されたデータとの構造的な相違を説明するための図であり、第17図は、本発明が適用される構造化データ処理装置の概念を説明するための図であり、第18図は、本発明が適用される構造化データ処理装置の基本構成を示す図であり、第19図は、文書格納サービスのメインルーチンを示すフロー図であり、第20図は、文書格納サービスのサブルーチン「形式変換処理」を示すフロー図であり、第21図は、文書格納サービスのサブルーチン「文書登録処理」を示すフロー図であり、第22図は、解析処理ツール登録サービスの処理を説明するためのフロー図であり、第23図は、解析処理サービスの処理を説明するためのフロー図であり、第24図は、第13図で示した転写単位データベースのスキーマデータについてDTDを用いて記述した場合を一例に示す図であり、第25図は、第13図で示した転写単位データベースの構造化データについてXML文書を用いて記述した場合を一例に示す図であり、第26図は、第14図で示した制御部位データベースのスキーマデータについてDTDを用いて記述した場合を一例に示す図であり、第27図は、第14図で示した制御部位データベースの構造化データについてXML文書を用いて記述した場合を一例に示す図であり、第28図は、第15図で示した制御ネットワークデータベースのスキーマデータについてDTDを用いて記述した場合を一例に示す図であり、第29図は、第15図で示した制御ネットワークデータベースの構造化データについてXML文書を用いて記述した場合を一例に示す図であり、第30図は、スキーマリソース定義情報の概念について説明する図である。
Claims (16)
- 構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得する構造化データ取得手段と、
上記構造化データ取得手段にて取得した上記構造化データおよび上記スキーマデータを、スキーマ形式変換指示情報に基づいて変換する形式変換手段と、
上記形式変換手段にて変換された変換後の構造化データおよびスキーマデータをデータベースに登録する構造化データ登録手段と、
上記構造化データ登録手段にて登録された上記データベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される上記構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録する分析ツール登録手段と、
上記ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応する上記スキーマリソース定義情報に従って、上記データベースに登録された構造化データおよびスキーマデータを変換して当該ツールプログラムに入力する分析ツール起動手段と、
を備えたことを特徴とする構造化データ処理装置。 - 上記構造化記述言語は、XML、SGML、BioML、BSML、ASN.1、GAME、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であること、
を特徴とする請求の範囲第1項に記載の構造化データ処理装置。 - 上記スキーマデータは、DTD、XMLスキーマ、RELAX、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであること、
を特徴とする請求の範囲第1項または第2項に記載の構造化データ処理装置。 - 上記スキーマ形式変換指示情報および上記スキーマリソース定義情報は、XSL、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであること、
を特徴とする請求の範囲第1項から第3項のいずれか一つに記載の構造化データ処理装置。 - 上記構造化データは、塩基配列および/またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むこと、
を特徴とする請求の範囲第1項から第4項のいずれか一つに記載の構造化データ処理装置。 - 構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得する構造化データ取得ステップと、
上記構造化データ取得ステップにて取得した上記構造化データおよび上記スキーマデータを、スキーマ形式変換指示情報に基づいて変換する形式変換ステップと、
上記形式変換ステップにて変換された変換後の構造化データおよびスキーマデータをデータベースに登録する構造化データ登録ステップと、
上記構造化データ登録ステップにて登録された上記データベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される上記構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録する分析ツール登録ステップと、
上記ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応する上記スキーマリソース定義情報に従って、上記データベースに登録された構造化データおよびスキーマデータを変換して当該ツールプログラムに入力する分析ツール起動ステップと、
を含むことを特徴とする構造化データ処理方法。 - 上記構造化記述言語は、XML、SGML、BioML、BSML、ASN.1、GAME、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であること、
を特徴とする請求の範囲第6項に記載の構造化データ処理方法。 - 上記スキーマデータは、DTD、XMLスキーマ、RELAX、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであること、
を特徴とする請求の範囲第6項または第7項に記載の構造化データ処理方法。 - 上記スキーマ形式変換指示情報および上記スキーマリソース定義情報は、XSL、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであること、
を特徴とする請求の範囲第6項から第8項のいずれか一つに記載の構造化データ処理方法。 - 上記構造化データは、塩基配列および/またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むこと、
を特徴とする請求の範囲第6項から第9項のいずれか一つに記載の構造化データ処理方法。 - 構造化記述言語で記述された構造化データと、当該構造化データの構造を定義したスキーマデータとを取得する構造化データ取得ステップと、
上記構造化データ取得ステップにて取得した上記構造化データおよび上記スキーマデータを、スキーマ形式変換指示情報に基づいて変換する形式変換ステップと、
上記形式変換ステップにて変換された変換後の構造化データおよびスキーマデータをデータベースに登録する構造化データ登録ステップと、
上記構造化データ登録ステップにて登録された上記データベースにアクセスしてデータ処理を行うツールプログラムと、当該ツールプログラムに入力される上記構造化データのスキーマのリソースを定義するスキーマリソース定義情報とを対応させて登録する分析ツール登録ステップと、
上記ツールプログラムが起動された場合に、起動された当該ツールプログラムに対応する上記スキーマリソース定義情報に従って、上記データベースに登録された構造化データおよびスキーマデータを変換して当該ツールプログラムに入力する分析ツール起動ステップと、
を含む構造化データ処理方法をコンピュータに実行させることを特徴とするプログラム。 - 上記構造化記述言語は、XML、SGML、BioML、BSML、ASN.1、GAME、若しくは、これらのいずれかを拡張した構造化記述言語、または、これらと同等の記述能力を持つ構造化記述言語であること、
を特徴とする請求の範囲第11項に記載のプログラム。 - 上記スキーマデータは、DTD、XMLスキーマ、RELAX、若しくは、これらのいずれかを拡張したスキーマ言語、または、これらと同等の記述能力を持つスキーマ言語により記述されたデータであること、
を特徴とする請求の範囲第11項または第12項に記載のプログラム。 - 上記スキーマ形式変換指示情報および上記スキーマリソース定義情報は、XSL、若しくは、これを拡張した言語、または、これらと同等の記述能力を持つ木構造変換言語により記述されたデータであること、
を特徴とする請求の範囲第11項から第13項のいずれか一つに記載のプログラム。 - 上記構造化データは、塩基配列および/またはアミノ酸配列を含む配列情報、文献情報のうち少なくとも一つに関する要素を含むこと、
を特徴とする請求の範囲第11項から第14項のいずれか一つに記載のプログラム。 - 上記請求の範囲第11項から第15項のいずれか一つに記載されたプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001189631 | 2001-06-22 | ||
JP2001189631 | 2001-06-22 | ||
PCT/JP2002/006288 WO2003001409A1 (fr) | 2001-06-22 | 2002-06-24 | Dispositif de traitement de donnees structurees |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2003001409A1 true JPWO2003001409A1 (ja) | 2004-10-14 |
Family
ID=19028525
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003507726A Pending JPWO2003001409A1 (ja) | 2001-06-22 | 2002-06-24 | 構造化データ処理装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20040177082A1 (ja) |
EP (1) | EP1403779A1 (ja) |
JP (1) | JPWO2003001409A1 (ja) |
WO (1) | WO2003001409A1 (ja) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050108219A1 (en) * | 1999-07-07 | 2005-05-19 | Carlos De La Huerga | Tiered and content based database searching |
JP3972323B2 (ja) * | 2001-09-04 | 2007-09-05 | インターナショナル・ビジネス・マシーンズ・コーポレーション | スキーマ生成装置、データ処理装置及びその方法並びにプログラム |
US7360172B2 (en) | 2002-12-19 | 2008-04-15 | Microsoft Corporation | Contact controls |
US7240298B2 (en) * | 2002-12-19 | 2007-07-03 | Microsoft Corporation | Contact page |
US7636719B2 (en) * | 2002-12-19 | 2009-12-22 | Microsoft Corporation | Contact schema |
US7360174B2 (en) | 2002-12-19 | 2008-04-15 | Microsoft Corporation | Contact user interface |
US7418663B2 (en) | 2002-12-19 | 2008-08-26 | Microsoft Corporation | Contact picker interface |
US7313760B2 (en) * | 2002-12-19 | 2007-12-25 | Microsoft Corporation | Contact picker |
US7549125B2 (en) | 2003-10-23 | 2009-06-16 | Microsoft Corporation | Information picker |
US7953759B2 (en) * | 2004-02-17 | 2011-05-31 | Microsoft Corporation | Simplifying application access to schematized contact data |
US7430719B2 (en) | 2004-07-07 | 2008-09-30 | Microsoft Corporation | Contact text box |
JP2006113786A (ja) * | 2004-10-14 | 2006-04-27 | Mitsubishi Space Software Kk | 配列情報抽出装置、配列情報抽出方法および配列情報抽出プログラム |
US8219898B2 (en) * | 2007-06-11 | 2012-07-10 | Brother Kogyo Kabushiki Kaisha | Document registration system, information processing apparatus, and computer usable medium therefor |
US7970943B2 (en) * | 2007-08-14 | 2011-06-28 | Oracle International Corporation | Providing interoperability in software identifier standards |
US8137201B2 (en) * | 2009-01-09 | 2012-03-20 | Microsoft Corporation | Arrangement for building and operating human-computation and other games |
CN111739585B (zh) * | 2020-06-24 | 2022-10-18 | 胡嘉欣 | 一种基于ncbi数据库的信息提取方法及其相关设备 |
CN115917657A (zh) * | 2020-09-14 | 2023-04-04 | Illumina公司 | 用于个性化医学的自定义数据文件 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000187626A (ja) * | 1998-10-16 | 2000-07-04 | Mitsubishi Electric Corp | アプリケ―ション間デ―タ送受信システム及びアプリケ―ション間デ―タ送受信方式及びアプリケ―ション間デ―タ送受信方法及びプログラムを記録したコンピュ―タ読取可能な記録媒体 |
JP2000348061A (ja) * | 1998-06-10 | 2000-12-15 | Nippon Telegr & Teleph Corp <Ntt> | 半構造化文書情報統合検索装置および半構造化文書情報抽出装置、その方法、ならびにそのプログラムを格納する記録媒体 |
JP2002108903A (ja) * | 2000-09-29 | 2002-04-12 | Toshiba Corp | データ収集システムおよびデータ収集方法およびプログラムを記録した媒体およびプログラム製品 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6424980B1 (en) * | 1998-06-10 | 2002-07-23 | Nippon Telegraph And Telephone Corporation | Integrated retrieval scheme for retrieving semi-structured documents |
-
2002
- 2002-06-24 JP JP2003507726A patent/JPWO2003001409A1/ja active Pending
- 2002-06-24 US US10/480,292 patent/US20040177082A1/en not_active Abandoned
- 2002-06-24 WO PCT/JP2002/006288 patent/WO2003001409A1/ja not_active Application Discontinuation
- 2002-06-24 EP EP20020743697 patent/EP1403779A1/en not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000348061A (ja) * | 1998-06-10 | 2000-12-15 | Nippon Telegr & Teleph Corp <Ntt> | 半構造化文書情報統合検索装置および半構造化文書情報抽出装置、その方法、ならびにそのプログラムを格納する記録媒体 |
JP2000187626A (ja) * | 1998-10-16 | 2000-07-04 | Mitsubishi Electric Corp | アプリケ―ション間デ―タ送受信システム及びアプリケ―ション間デ―タ送受信方式及びアプリケ―ション間デ―タ送受信方法及びプログラムを記録したコンピュ―タ読取可能な記録媒体 |
JP2002108903A (ja) * | 2000-09-29 | 2002-04-12 | Toshiba Corp | データ収集システムおよびデータ収集方法およびプログラムを記録した媒体およびプログラム製品 |
Non-Patent Citations (5)
Title |
---|
BUNEMAN, P.: "A Data Transformation System for Biological Data Sources", PROCEEDINGS OF THE 21TH INTERNATIONAL CONFERENCE ON VERY LARGE DATA BASES, JPN6008040987, 1995, pages 158 - 169, XP002960468, ISSN: 0001111843 * |
STOKES, A. J.: "GXML: A Novel Method for Exchanging and Querying Complete Genomes by Representing them as Structured", 情報処理学会論文誌, vol. Vol.40,No.SIG6(TOD3), JPN5003017465, 15 August 1999 (1999-08-15), JP, pages 66 - 78, XP002960464, ISSN: 0001111839 * |
三上知親: "マルチエージェントによる異種の分子生物学データベースの統合と検索の実現", 情報処理学会研究報告 98−DBS−114, vol. 第98巻,第2号, JPN6008040985, 19 January 1998 (1998-01-19), JP, pages 121 - 128, ISSN: 0001111841 * |
北上始: "遺伝子情報処理への挑戦11 DNAデータベースシステム", BIT, vol. 第25巻,第11号, JPN6008040983, 1 November 1993 (1993-11-01), JP, pages 24 - 36, ISSN: 0001111840 * |
北村泰彦: "スクリプトに基づくWWW情報統合支援システムとゲノムデータベースへの応用", 電子情報通信学会論文誌(J81−D−I), vol. 第J81−D−I巻,第5号, JPN6008040986, 25 May 1998 (1998-05-25), JP, pages 451 - 459, ISSN: 0001111842 * |
Also Published As
Publication number | Publication date |
---|---|
US20040177082A1 (en) | 2004-09-09 |
WO2003001409A1 (fr) | 2003-01-03 |
EP1403779A1 (en) | 2004-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Yang et al. | NCBI's conserved domain database and tools for protein domain analysis | |
JPWO2003001409A1 (ja) | 構造化データ処理装置 | |
Wilke et al. | A RESTful API for accessing microbial community data for MG-RAST | |
Zhu et al. | SRAdb: query and use public next-generation sequencing data from within R | |
AlSairafi et al. | The design of discovery net: Towards open grid services for knowledge discovery | |
Chard et al. | I'll take that to go: Big data bags and minimal identifiers for exchange of large, complex datasets | |
Jarnuczak et al. | Using the PRIDE database and ProteomeXchange for submitting and accessing public proteomics datasets | |
Prlić et al. | Integrating sequence and structural biology with DAS | |
Maurer et al. | MARS: microarray analysis, retrieval, and storage system | |
Madeira et al. | Using EMBL‐EBI Services via Web Interface and Programmatically via Web Services | |
CN111259067B (zh) | 一种基于Spring实现DAO接口的方法、装置及设备 | |
Sayers et al. | Using GenBank and SRA | |
Stajich | An introduction to BioPerl | |
US20050146951A1 (en) | Knowledge search apparatus knowledge search method program and recording medium | |
Cheng et al. | SoyXpress: a database for exploring the soybean transcriptome | |
Jamil | Improving integration effectiveness of ID mapping based biological record linkage | |
Pavesi et al. | Using Weeder for the discovery of conserved transcription factor binding sites | |
Rifaieh et al. | SWAMI: integrating biological databases and analysis tools within user friendly environment | |
Guda et al. | Mitoproteome: human heart mitochondrial protein sequence database | |
Pearson et al. | Using SQL databases for sequence similarity searching and analysis | |
JP2002108903A (ja) | データ収集システムおよびデータ収集方法およびプログラムを記録した媒体およびプログラム製品 | |
Sayers et al. | Using GenBank | |
Stanislaus et al. | RPPAML/RIMS: a metadata format and an information management system for reverse phase protein arrays | |
Witting | Bio-and chemoinformatics approaches for metabolomics data analysis | |
Hsu et al. | Reconfigurable Web wrapper agents for biological information integration |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050613 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080819 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20081216 |