XMLファイルを用いてオブジェクト指向スクリプトツールをサポートするコンピュータ実装方法であって、前記XMLファイル中の第1タグを用いてスクリプト言語でソフトウェアクラスを定義するステップを含み、前記ソフトウェアクラスは少なくとも1つのメソッドを有し、前記XMLファイル中の第2タグにおける前記少なくとも1つのメソッドを呼出すステップを含む、方法。前記スクリプト言語はAntである、請求項1に記載の方法。XMLパーサを用いて前記XMLファイルをパースするステップをさらに含む、請求項1または2に記載の方法。前記XMLファイル中のタグを用いて前記少なくとも1つのメソッドを定義するステップをさらに含む、請求項1から3のいずれか1項に記載の方法。前記XMLファイル中のタグを用いて、ソフトウェアオブジェクトが前記ソフトウェアクラスのインスタンスであるか否かをチェックするステップをさらに含む、請求項1から4のいずれか1項に記載の方法。クラスの拡張および継承と、メソッドオーバーライドと、インスタンスの多態性と、特別のthisおよびsuperインスタンスとの少なくとも1つをサポートするステップをさらに含む、請求項1から5のいずれか1項に記載の方法。前記XMLファイルのタグ中の、インスタンスメソッド呼出し構文をサポートするステップをさらに含み、前記構文は[classreference].[methodname]のフォーマットになっている、請求項1から6のいずれか1項に記載の方法。タグが不明要素であると判断された場合、前記XMLファイル中の前記タグをインスタンスメソッドを呼出すための前記構文に関連付けるステップをさらに含む、請求項7に記載の方法。タイプ定義テーブルを用いて前記インスタンスメソッド呼出し構文を定義するステップをさらに含む、請求項8に記載の方法。前記方法はさらに、1つまたは複数の汎用アプリケーション構築スクリプトを前記ソフトウェアクラスにカプセル化するステップと、別のソフトウェアクラスにおける1つまたは複数の特定のアプリケーション構築スクリプトを実行するステップとを含み、前記別のソフトウェアクラスは、前記ソフトウェアクラスから拡張または継承される、請求項1から9のいずれか1項に記載の方法。前記方法はさらに、1つまたは複数の汎用ドメイン管理スクリプトを前記ソフトウェアクラスにカプセル化するステップと、別のソフトウェアクラスにおける1つまたは複数のドメイン管理スクリプトを用いて特定のドメインを起動させるステップとを含み、前記別のソフトウェアクラスは、前記ソフトウェアクラスから拡張または継承される、請求項1から10のいずれか1項に記載の方法。前記ソフトウェアクラスは、別のソフトクラスのインスタンスを引数として受入れることができるユーティリティクラスである、請求項1から11のいずれか1項に記載の方法。前記オブジェクト指向スクリプトツールを用いてデータベースにリンクするステップをさらに含む、請求項1から12のいずれか1項に記載の方法。オブジェクト指向スクリプトツールを用いてアプリケーションを異なるサーバに配布させるステップをさらに含む、請求項1から13のいずれか1項に記載の方法。1つまたは複数のコンピュータシステムで実行されたときに、請求項1から14のいずれか1項に記載の方法を実装する指令を含む、コンピュータプログラム。請求項15に記載の前記コンピュータプログラムを含む、コンピュータ可読記憶媒体。請求項1から14のいずれか1項に記載の方法を実行するように構成されたコンピュータシステム。XMLファイルを用いてオブジェクト指向スクリプトツールをサポートするコンピュータシステムであって、XMLファイルを含む前記コンピュータシステムは、スクリプト言語でソフトウェアクラスを定義する第1タグを前記XMLファイルに含み、前記ソフトウェアクラスは少なくとも1つのメソッドを有し、前記ソフトウェアクラスにおける前記少なくとも1つのメソッドを呼出す第2タグを前記XMLファイルに含む、コンピュータシステム。命令を格納している機械可読媒体であって、前記指令が実行されると、XMLファイル中の第1タグを用いてスクリプト言語でソフトウェアクラスを定義するステップをシステムに実行させ、前記ソフトウェアクラスは少なくとも1つのメソッドを有し、前記XMLファイル中の第2タグにおける前記少なくとも1つのメソッドを呼出すステップをシステムに実行させる、機械可読媒体。概要一実施形態によれば、オブジェクト指向スクリプトツールはXMLファイルを用いてソフトウェア開発およびドメイン管理を行う。XMLファイルは、少なくともオブジェクト指向スクリプト言語でスクリプトクラスを定義する第1タグを有する。スクリプトクラスはXMLファイル中の第2タグに定義された少なくとも1つのメソッドを有する。汎用ソフトウェア開発およびドメイン管理スクリプトは、汎用スクリプトクラスにカプセル化され、これを特定のソフトウェア開発およびドメイン管理タスク用の個別スクリプトクラスに拡張することができる。詳細な説明添付図面の図により、本発明を限定ではなく例示として説明する。添付図面の図において、同一の参照符号は同等の要素を示す。また、この開示において、一実施形態、1つの実施形態またはいくつかの実施形態は、同一の実施形態に限られず、少なくとも1つの実施形態を意味することに注意すべきである。以下、オブジェクト指向プログラミング言語プラットフォームの例としてJAVAプラットフォームを用いて、本発明の一実施形態を説明する。他の種類のオブジェクト指向プログラミング言語プラットフォームを制限なく使用できることは、当業者には明らかであろう。一実施形態によれば、AntのようなXMLに基づくスクリプトツールは、オブジェクト指向機能を含むように拡張することができる。1つの実施形態において、オブジェクト指向スクリプトツールは、XMLに基づくスクリプトツールの拡張として実装することができる。たとえば、オブジェクト指向Antスクリプトツールまたはオブジェクト指向Antを、JAVAプログラミング言語を用いてAntの拡張として実装してもよい。1つの実施形態において、オブジェクト指向Antスクリプトツールを実装するJAVAコードは、Antスクリプトツール用の拡張タスクを格納するAntスクリプト環境により指定されたライブラリディレクトリにコンパイルされて配布することができる。図1は、オブジェクト指向Antスクリプトツール環境を示す例示的な図である。図1に示すように、Antスクリプト環境は、XMLパーサ101を使用して、XMLファイル102に含まれ、異なるタグ110、112および120を有するスクリプトをパースすることができる。XMLファイル102中の各タグ110、112または120は、一種類のスクリプトタスクまたはターゲット111、113または121に関連付けられている。一実施形態によれば、オブジェクト指向Antのようなオブジェクト指向スクリプトツールは、オブジェクト指向スクリプト構文を含む追加のタグ122および124を利用してオブジェクト指向機能をサポートすることができる。図1に示すように、タグ122を、オブジェクト指向Antスクリプト環境においてクラス定義タスク123をサポートするために使用することができ、別のタグ124をオブジェクト指向Antスクリプト環境において関数呼出しタスク125をサポートするために使用することができる。一実施形態によれば、オブジェクト指向スクリプト構文は、異なるタイプのオブジェクト指向スクリプトの使用をサポートする。これらの異なるタイプのオブジェクト指向スクリプトは、タイプ定義テーブルに格納することができる。このタイプ定義テーブルは、タグ名をハッシュテーブルのキーとしてハッシュテーブルを使用して実装することができる。また、オブジェクト指向Antスクリプトツールの各タスクインスタンスは、インスタンスプールに格納することができる。インスタンスプールは、各インスタンスのIDまたは参照番号をキーとしてハッシュテーブルに実装することができる。別の一実施形態において、このようなタイプ定義メカニズムを低い優先順位で解釈して、ソフトウェア開発者が他の目的のために同一タグを他の用途に用いる際の名前衝突を防ぐことができる。別の例において、名前衝突を防ぐため、独特のタグを定義してオブジェクト指向Antスクリプト環境を開始することもできる。一実施形態によれば、オブジェクト指向スクリプトツールは、オブジェクト指向プログラミング言語により与えられた同様の機能を有することができる。さらに、オブジェクト指向プログラミング言語に精通するソフトウェア開発者は、オブジェクト指向スクリプト言語を簡単に理解することができる。たとえば、Antスクリプト言語に基づいたオブジェクト指向Antは、JAVAと同様の機能を有することができる。よって、熟練したJAVA開発者は、オブジェクト指向Antスクリプトツールの使い方をすぐに習得することができる。図2は、オブジェクト指向Antスクリプト言語の構文とJAVAプログラミング言語の構文との間のマッピング関係の例を示している。1つの実施形態によれば、JAVAクラスを定義することができるJAVAプログラミング言語と同じく、オブジェクト指向スクリプトツールはクラスタグを用いてスクリプトのクラスを定義することができる。たとえば、図2の1行目に示すように、オブジェクト指向Antスクリプト言語で定義されたHelloサンプルクラスを、JAVAプログラミング言語のHelloクラスにマップすることができる。1つの実施形態によれば、オブジェクト指向スクリプトツールのクラスタグは、スクリプトクラスの挙動をカプセル化する任意のスクリプトを含むことができる。1つの実施形態において、クラスタグに2つの属性を付与することができる。1つの属性は、根本クラスunderlyingclassの名前を定義する名前属性である。もう1つの属性は、基底クラスbaseclassのクラス名を定義する基底属性である。基底属性のデフォルト値はObjectであって、根本クラスがルートクラスrootclassから直接拡張されたクラスであることを示す。一実施形態によれば、JAVAクラスにおいてメソッドを定義するのと同様に、オブジェクト指向スクリプトツールは、メソッドタグを使用してクラスのメソッドを定義することができる。1つの実施形態において、メソッドタグは名前属性を有してもよい。たとえば、図2の3行目に示すように、メソッドの名前属性には値sayHiが与えられている。また、メソッドタグは、メソッドタグの本文に1つまたは複数の属性タグを定義することができる。このような属性タグは、メソッドが呼出されるときにメソッドに使用される1つまたは複数のパラメータを定義する。図2の4行目に示す例において、メソッドsayHiは、メッセージの内容を指定するパラメータをもっている。一実施形態によれば、オブジェクト指向スクリプトツールはクラスに参照値を割当てることができる。たとえば、図2の7行目において、JAVAで新たなクラスを作成するのと同様に、タグを使用してクラスの初期化をすることができる。図2の1行目のタグを用いて作成したHelloクラスのインスタンスには、インスタンスを一義的に識別するために、参照値hが割当てられている。一実施形態によれば、オブジェクト指向スクリプトツールによって、ユーザはクラス呼出しタグを使用してスクリプトクラスにおけるメソッドを[classreference].[methodname]の形式で呼出すことができるようになる。たとえば、図2の9行目に示すように、図2の3~5行目に定義されたsayHiメソッドは、JAVAにおいてクラス呼出し構文を再構築するh.sayHi構文を使用して呼出すことができる。図2の4行目におけるメッセージ属性の定義に応じて、sayHiメソッドにメッセージの内容を含むパラメータを与える。一実施形態によれば、オブジェクト指向スクリプトツールは、メッセージの内容を書出すことができるエコータグを提供する。たとえば、図2の11行目に示すように、エコータグはJAVAのSystem.outと同様に動作することができる。一実施形態によれば、オブジェクト指向スクリプトツールは、あるオブジェクト指向Antオブジェクトが特定のAntクラスタイプであるか否かをチェックするのに使用できる<instanceof>タグを与える。1つの実施形態において、<instanceof>タグは、AntオブジェクトIDを表すid属性およびこれから検証されるAntクラスの名前を表すclassname属性を提供している。一実施形態によれば、オブジェクト指向プログラミング言語と同様に、オブジェクト指向スクリプトツールは、他の便利な機能を提供することができる。これらの便利な機能は、JAVAが提供しているような、メソッドオーバーライド、特別なthisおよびsuperインスタンスを含む。また、JAVAと同様に、オブジェクト指向Antは、クラスの拡張および継承、インスタンスメソッドの呼出し構文のリフレクションフレーバーreflectionflavor、およびインスタンスプロパティを取得する構文をサポートすることができる。一実施形態によれば、オブジェクト指向スクリプトツールを用いてソフトウェアアプリケーションを構築することができる。汎用アプリケーション構築スクリプトはクラスにカプセル化することができる。その後、ソフトウェア開発者は、いくつかの好みの特別な機能に組み込むために、独自のバージョンの汎用アプリケーション構築スクリプトを作成することができる。図3は、ソフトウェアアプリケーションを構築するためのクラス階層の例を示している。図3に示すように、App.class.xml301は、汎用アプリケーション構築スクリプトをカプセル化する基底クラスである。MyAppBase.class.xml302は、基底クラスApp.class.xml301を継承するクラスである。ソフトウェア開発者は、App.class.xml301に既に存在している実装の詳細を書換えたり、コピーして貼付けたりする必要がない。ソフトウェア開発者は新しいメソッドを追加またはMyAppBase.class.xml302に既存のメソッドをオーバーライドするだけでよい。さらに、ソフトウェア開発者は、MyAppBase.class.xml302に基づいて、異なるプロジェクト用に異なるオブジェクト指向AntスクリプトクラスMyApp1.class.xml303およびMyApp2.class.xml304を作成することができる。異なるオブジェクト指向AntスクリプトクラスMyApp1.class.xml303およびMyApp2.class.xml304は、プロジェクトのディレクトリおよび有用なライブラリへのリンクのようなプロジェクトを無事にコンパイルし、構築するために必要なすべての情報を含んでいる。図4は、アプリケーションを構築するためのオブジェクト指向Antスクリプトクラスの使用例を示している。図4に示すように、2つの個別のオブジェクト指向AntスクリプトクラスMyApp1およびMyApp2を使用して2つの個別のアプリケーションApp1およびApp2を構築することができる。一実施形態によれば、オブジェクト指向スクリプトツールを使用して異なるネットワークまたはアプリケーションサーバドメインを管理することもできる。図5は、アプリケーションサーバドメインを管理するためのクラス階層の例を示している。図5に示すように、汎用ドメイン関連のスクリプトは、クラスDomain.class.xml501にカプセル化することができる。ネットワーク管理者は、別のクラスMyDomainBase.class.xml502に独自のバージョンの汎用ドメイン関連のスクリプトを指定することができる。MyDomainBase.class.xml502は、ネットワーク管理者に合うようにカスタマイズした機能を含んでいる。ここでは、MyDomainBase.class.xml502は、基底クラスDomain.class.xml501を継承するクラスである。このとき、ネットワーク管理者は、汎用ドメイン管理スクリプトに既に存在している実装の詳細を書換えたり、コピーして貼り付けたりする必要がない。ソフトウェア開発者は新しいメソッドを追加または既存のメソッドをオーバーライドするだけでよい。さらに、ネットワーク管理者は、MyDomainBase.class.xml502に基づいて、特定のドメインのために個別のオブジェクト指向AntスクリプトクラスMyDomainl.class.xml503を作成することができる。ここでは、オブジェクト指向Antスクリプトクラスは、特定のドメインを無事に準備し、起動するために必要なすべての情報を含んでいる。図6は、アプリケーションサーバドメインを管理するためのオブジェクト指向Antスクリプトクラスの使用例を示している。図6に示すように、アプリケーションサーバドメインMyDomain1は、オブジェクト指向Antスクリプトクラスを使用して準備および起動することができる。一実施形態によれば、オブジェクト指向スクリプトツールを使用して他のタイプのスクリプトクラスのオブジェクトを引数として受け入れることができるユーティリティスクリプトクラスを作ることができる。図7は、オブジェクト指向Antユーティリティクラスの使用例を示している。図7に示すように、ユーティリティAntクラス、すなわちMyApp1Utilクラスは、参照記号またはidapp1utilを有している。MyApp1Utilクラスには、その参照記号またはidapp1によってMyApp1クラスのすべてのインスタンスプロパティを取得することができるプロセスメソッドを有している。以降の操作は、得られたMyApp1クラスのインスタンスプロパティに基づいて行うことができる。このような操作は、配布定義ファイルの管理などを含むがこれらに限定されない。一実施形態によれば、オブジェクト指向スクリプトツールは、分散環境においてソフトウェアアプリケーションを検証するために、たとえばアプリケーションサーバのドメイン設立およびデータベースへのリンクなどに使用することができる。図8は、分散環境においてソフトウェアアプリケーションを検証する例示的なステップを示している。図8に示すように、ソフトウェアアプリケーションのテストスクリプトは、最初にアプリケーションをコンパイルするステップ801と、異なる目的のために異なるアプリケーションのテストケースを開発およびコンパイルするステップ802とを含むことができる。次に、ターゲットドメインを準備するステップ803および起動させるステップ804を行い、ステップ805でドメイン内においてサーバ上にアプリケーションを配布する。ステップ806でテストケースの実行が完了した後、ステップ807でドメインをシャットダウンして、ステップ808でクリーンアップを行うことができる。ソフトウェアの検証が複雑であるため、異なるテストケースを開発する必要がある。よって、各テストシナリオに膨大な量のスクリプトファイルが存在する可能性がある。以前、1つのテストケースから別のテストケースへのスクリプトファイルの移行は、多くの似たようなテストスクリプトを使用し、コピーおよびペースト手法を通じて行った。テストスクリプトはサイズが非常に大きくなることがありかつ詳細に関わるので、このコピーおよびペースト手法は効率的ではない。多くの場合、ソフトウェア開発者は、ミスを避けるために、古いテストスクリプトを再利用するよりはむしろテストスクリプトを書換える。オブジェクト指向Antを使用することにより、ソフトウェア開発者は、膨大な量のコードをコピーおよびペーストせずに、1つのテストケースから別のテストケースに簡単に拡張することができる。一実施形態によれば、Antにオブジェクト指向構文を導入することにより、はるかに簡単に既存のスクリプトを再利用することができる。たとえば、AntマクロA内部で別のマクロBを呼出すことができる。一例を挙げると、ソフトウェア開発者は単にBの挙動を変更し、Aを再利用することを望む。コピーおよびペースト手法を使用する場合、ソフトウェア開発者は、2つの新しいマクロA1およびB1を作成する必要があり、ソフトウェア開発者は、Aの内容をA1にコピーし、Bの呼出しをB1の呼出しに変更する必要がある。しかしながら、オブジェクト指向Antを用いれば、ソフトウェア開発者は単に、新たなクラスB1を用いて基底クラスBを拡張することにより、新しい実装を用いてBの中の1つまたは複数のメソッドをオーバーライドすることができる。本発明は、従来の汎用目的または本開示の教示に従ってプログラムされた専用のデジタルコンピュータまたはマイクロプロセッサを用いて便利に実装することができる。ソフトウェア分野の当業者には明らかなように、適切なソフトウェアコーディングは、本開示の教示に基づいて熟練したプログラマによって容易に作成されることができる。いくつかの実施形態において、本発明は、本発明のプロセスのいずれかを実行するようにコンピュータをプログラムするのに使用できる指令をその上/中に格納する記憶媒体1つまたは複数であるコンピュータプログラム製品を含む。記憶媒体は、フロッピー登録商標ディスク、光学ディスク、DVD、CD-ROM、マイクロドライブおよび光磁気ディスクを含む任意のタイプのディスク、ROM、RAM、EPROM、EEPROM、DRAM、VRAM、フラッシュメモリデバイス、磁気または光カード、ナノシステム分子メモリICを含む、または指令および/またはデータを格納するのに適した任意のタイプの媒体またはデバイスに限定しないがこれらを含むことができる。本発明に関する以上の説明は、例示および説明を目的とするものである。網羅的またはこの発明を開示された厳密な形式に限定することを意図していない。当業者には多くの修正および変更が明らかになるであろう。与えられたコード例は、例示を目的とするものである。本明細書に記載の技術は、別のコード言語を用いて、異なるコードで適用できるということは明らかであろう。本発明の原理およびその実用性を最もよく説明するために、実施形態が選択され、述べられた。よって、当業者は、予測される特定の用途に適するさまざまな実施形態およびさまざまな変形例を有する本発明を理解することができる。本発明の範囲は以下の特許請求の範囲およびそれの均等物によって定義されるものとする。