(57)【要約】【課題】　ＸＭＬデータの妥当性のチェックを行うシステムおよび方法を提供する。【解決手段】　本発明の一実施形態によれば、妥当性検査システムは、プロセッサによりアクセス可能であり、シンタックス規則のセットに対応する少なくとも２つのオブジェクトに関連するコンピュータモデルの拡張可能マークアップ言語（ＸＭＬ）データモデルを有するメモリを含む。本システムは、プロセッサによりアクセス可能であり、ＸＭＬデータモデルに対応する、ＸＭＬフォーマットで表されたセマンティック情報を有するセマンティック規則のセットも含む。本システムは、セマンティック規則のセットを使用してＸＭＬデータモデルを妥当性検査するように適合された妥当性検査器をさらに含む。【選択図】　図１
2004118850.tif 000002
【特許請求の範囲】
【請求項１】
妥当性検査システムであって、プロセッサによりアクセス可能であり、コンピュータネットワークの拡張可能マークアップ言語データモデルを有するメモリであって、前記ＸＭＬデータモデルは、シンタックス規則のセットに対応する、前記コンピュータネットワークの少なくとも２つのオブジェクトに関連する、メモリと、
　前記プロセッサによってアクセス可能であり、前記ＸＭＬデータモデルに対応する、ＸＭＬフォーマットで表されたセマンティック情報を有するセマンティック規則のセットと、
　前記セマンティック規則のセットを使用して、前記コンピュータネットワークの前記ＸＭＬデータモデルを妥当性検査するように適合された妥当性検査器と、
を備えた妥当性検査システム。
【請求項２】
前記セマンティック規則のセットが、前記オブジェクトの役割に関連する情報を含む請求項１記載のシステム。
【請求項３】
前記セマンティック規則のセットが、前記オブジェクトの関係要件に関連する情報を含む請求項１記載のシステム。
【請求項４】
前記セマンティック規則のセットは、前記オブジェクトの関係制約に関連する情報を含む請求項１記載のシステム。
【請求項５】
前記セマンティック規則のセットは、前記オブジェクトの関係オプションに関連する情報を含む請求項１記載のシステム。
【請求項６】
前記セマンティック規則のセットは、オブジェクトの型に関連する情報を含む請求項１記載のシステム。
【請求項７】
前記シンタックス規則のセットは、複数のオブジェクトの属性に関連する情報を含む請求項１記載のシステム。
【請求項８】
前記セマンティック規則のセットは、前記コンピュータネットワークＸＭＬデータモデルの少なくとも１つのオブジェクトに対応するコネクション要件に関連する情報を含む請求項１記載のシステム。
【請求項９】
前記セマンティック規則のセットは、前記コンピュータネットワークＸＭＬデータモデルの少なくとも１つのオブジェクトのコネクション制約に関連する情報を含む請求項１記載のシステム。
【請求項１０】
システムであって、前記セマンティック規則のセットは、前記コンピュータネットワークＸＭＬデータモデルの少なくとも１つのオブジェクトのコネクションオプションに関連する情報を含む請求項１記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
　本発明は、一般にコンピュータシステムの分野に関し、特に、妥当性検査システムおよび妥当性検査方法に関する。
【背景技術】
【０００２】
　拡張可能マークアップ言語（ＸＭＬ）は、ドキュメントまたはファイル内のオブジェクトを識別し、かつ／またはドキュメントもしくはファイル内のオブジェクトを関連付ける機構である。たとえば、ＸＭＬは、数式、電子商取引トランザクション、オブジェクトメタデータ、サーバアプリケーション、および多種多様な他のタイプの構造化された情報を表すために使用される場合がある。一般に、ＸＭＬは、オブジェクト型およびオブジェクトの階層関係を定義する表記法でオブジェクトを表現する柔軟性のアーキテクチャを提供する。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
　しかし、特定のＸＭＬファイルは、多数のオブジェクトならびに対応する関係、および／またはオブジェクトに関連する定義情報を含みうる。したがって、ＸＭＬデータの妥当性のチェックまたは検証は一般に、時間がかかるとともに労働集約的なものである。さらに、プログラムコードへのアクセスが制限されている場合、ＸＭＬデータの検証が不可能な場合もある。
【課題を解決するための手段】
【０００４】
　本発明の一実施形態によれば、妥当性検査システムは、プロセッサによりアクセス可能であり、シンタックス規則のセットに対応する少なくとも２つのオブジェクトに関連するコンピュータモデルの拡張可能マークアップ言語（ＸＭＬ）データモデルを有するメモリを含む。本システムは、プロセッサによりアクセス可能であり、ＸＭＬデータモデルに対応する、ＸＭＬフォーマットで表されたセマンティック情報を有するセマンティック規則のセットも含む。本システムは、セマンティック規則のセットを使用してＸＭＬデータモデルを妥当性検査するように適合された妥当性検査器をさらに含む。
【０００５】
　本発明の別の実施形態によれば、妥当性検査方法は、シンタックス規則のセットに対応する少なくとも２つのオブジェクトに関連するコンピュータモデルの拡張可能マークアップ言語（ＸＭＬ）データモデルを提供することと、セマンティック規則のセットをデータモデルに適用して、少なくとも２つのオブジェクト間の関係を妥当性検査することと、を含む。
【０００６】
　本発明およびその利点のより完全な理解のために、これより、添付図面と併せて行われる以下の説明を参照する。
【発明を実施するための最良の形態】
【０００７】
　本発明の好ましい実施形態およびその利点は、図面の図１および図２を参照することによって最もよくわかる。同様の番号が、様々な図面の同様かつ対応する部分に使用される。
【０００８】
　図１は、本発明による妥当性検査システム１０の実施形態を示した図である。手短に言えば、妥当性検査システム１０は、セマンティック規則を使用して拡張可能マークアップ言語（ＸＭＬ）データモデルを妥当性検査し、それによってＸＭＬデータモデルのプログラミングおよび保守に関連するコストを大幅に削減する。たとえば、ＸＭＬデータモデルは一般に、ＸＭＬデータモデルの様々なオブジェクト間の関係のシンタックスを定義する。本発明によれば、セマンティック規則のセットが用いられて、シンタックスおよびセマンティックレベルの両方におけるＸＭＬデータモデルを高速に妥当性検査する。
【０００９】
　図示の実施形態では、妥当性検査システム１０は、入力装置１２、出力装置１４、プロセッサ１６、およびメモリ１８を含む。入力装置１２は、キーボード、キーパッド、マウスやトラックパッド等のポインティングデバイス、または妥当性検査システム１０に情報を入力するための他のタイプの装置を含むことができる。出力装置１４は、モニタ、ディスプレイ、プリンタ、または出力を生成するための他のタイプの装置を含むことができる。
【００１０】
　本発明は、プロセッサ１６が実行可能なコンピュータソフトウェアも包含する。図示の実施形態では、メモリ１８は、コンピュータソフトウェアプログラムである妥当性検査器２０を備える。しかし、システム１０、特に妥当性検査器２０が、ハードウェア、ソフトウェア、またはハードウェア構成部分とソフトウェア構成部分とを組み合わせたものを使用して構成されうることは認められたい。図１の実施形態では、妥当性検査器２０はメモリ１８に格納されて示されており、プロセッサ１６により実行可能である。しかし、妥当性検査器２０は、プロセッサ１６によりアクセス可能なように、遠方に格納されるなど、別様に格納されていてもよい。
【００１１】
　図示の実施形態では、妥当性検査システム１０は、メモリ１８に格納されたデータベース３０も含む。データベース３０は、少なくとも１つの拡張可能マークアップ言語（ＸＭＬ）データモデル３２の妥当性検査に関連する情報を含む。たとえば、図示の実施形態では、妥当性検査システム１０は、ＸＭＬフォーマットでコンピュータネットワークの関係を定義するコンピュータネットワークモデル３４の妥当性検査に使用することができる。したがって、コンピュータネットワークモデル３４は、各ネットワークデバイスに関連する発信元および宛先コネクションなどであるがこれらに限定されない、各種ネットワークデバイスのタイプ、モデル、役割、およびコネクションに関連する情報を含むことができる。しかし、集積回路アーキテクチャやデータベースに格納されている名前情報およびアドレス情報などであるがこれらに限定されない、他のタイプのデバイスや情報をＸＭＬデータモデル３２で表すことができることは認められたい。
【００１２】
　図示の実施形態では、妥当性検査システム１０は、データベース３０に格納されている規則データ４０も含む。規則データ４０は、特定のモデル３２内の各種オブジェクト間の関係を定義し妥当性検査する、ＸＭＬデータモデル３２に関連する情報を含む。たとえば、この実施形態では、規則データ４０は、シンタックス規則４２のセットおよびセマンティック規則４４のセットを含む。シンタックス規則４２は、モデル３２の特定のオブジェクトを識別する要素、および特定の要素に関連する名前−値の対を識別する属性に関連する情報を含む。シンタックス規則４２を使用するＸＭＬフォーマットのコンピュータネットワークモデル３４の例を以下に示す。
【００１３】
<device type="firewall"id="7000101">
<attribute name="name"value="firewall-1"/>
<attribute name="make"value="acme"/>
<attribute name="model"value="a25"/>
<attribute name="serial"value="SER12345"/>
<attribute name="role"value="Inner_Zone"/>
</device>
<device type="switch"id="1100101">
<attribute name="name"value="switch-1"/>
<attribute name="make"value="acme"/>
<attribute name="model"value="z57"/>
<attribute name="serial"value="12345678"/>
<attribute name="role"value="tier3"/>
</device>
<connection source="1100101:4"destination="2200201:eth0"/>
<connection source="1100101:5"destination="7000101:eth0"/>
<connection source="1100101:6"destination="7000101:eth1"/>
<connection source="1100101:7"destination="7000101:eth2"/>
<connection source="1100101:8"destination="9900902:eth0"/>
【００１４】
　上記のネットワークモデル３４の例では、シンタックス規則４２が、要素および名前−値の対、すなわちネットワーク要素に関連する属性を定義する。たとえば、この実施形態では、シンタックス規則４２は、ファイアウォールのメーカー、モデル、およびシリアルナンバーを含むネットワーク要素としてファイアウォールを定義する。シンタックス規則４２は、ネットワークの発信元−宛先コネクションも定義する。
【００１５】
　セマンティック規則４４は、特定のデータモデル３２に対応するセマンティックに関連する情報を含む。たとえば、この実施形態では、セマンティック規則４４は、関係要件規則５０、関係制約規則５２、および関係オプション規則５４を含む。関係要件規則５０は、２つまたはそれよりも多くのオブジェクト間に求められる関係に関連する情報を含む。たとえば、関係要件規則５０は、特定のデバイスまたはオブジェクトに求められるコネクションに関連する情報を含むことができる。関係制約規則５２は、モデルオブジェクトに対応する関係の制約に関連する情報を含む。たとえば、関係制約規則５２は、コンピュータネットワークモデル３４の特定のオブジェクトのコネクションの最小数および／または最大数を定義しても、またはコンピュータネットワークモデル３４の特定のオブジェクトに許されないコネクションを定義してもよい。関係オプション規則５４は、特定のデータモデル３２のオブジェクト間の任意選択的な関係に関連する情報を含む。たとえば、関係オプション規則５４は、コンピュータネットワークモデル３４のオブジェクト間のデータ通信の任意選択的すなわち代替のタイプやフォーマットに関連する情報を含むことができる。ＸＭＬフォーマットで表されたセマンティック規則４４の例を以下に提示する。
【００１６】
<device>
<type name="firewall">
<rules type="required">
<connectionrule type="eth"connectionMin="2"connectionMax="3"/>
<destination name="type"value="switch"/>
<destination name="role"value="tier3"/>
</connectionrule>
</rules>
<rules type="optional">
<attributerule name="serial"/>
</rules>
<rules type="forbidden">
<attributerule name="disk"/>
</rules>
</type>
<type name="switch">
<rule type="required">
<connectionrule connectionMax="32"/>
</rules>
</type>
</device>
【００１７】
　上記セマンティック規則４４の例に示すように、特定のセマンティック規則４４は、許容可能な、または求められるファイアウォールのメーカーおよび／またはモデルを定義することができる。別のセマンティック規則４４は、特定のファイアウォールのコンテキストで禁じられている属性を定義することができる。さらに、セマンティック規則４４は、特定の型のオブジェクトに特定のコネクションを定義することができ、それによってモデル３２の発信元属性および宛先属性を妥当性検査する。たとえば、セマンティック規則４４は、特定のファイアウォールのコネクション要件、特定のファイアウォールの最小コネクション量、および／または特定のファイアウォールの最大コネクション量に関連する情報を含むことができる。さらに、セマンティック規則４４は、求められる宛先オブジェクトの特定の属性を定義することもできる。たとえば、上記例では、ファイアウォールについて、数えられるコネクションは、タイプ「ｓｗｉｔｃｈ」および役割「ｔｉｅｒ３」の宛先デバイスへのコネクションのみである。この例では、２つのＸＭＬデバイス宣言および３つのＸＭＬコネクション宣言にまたがる関係を妥当性検査することができる。
【００１８】
　上記ネットワークモデル３４の例では、関係要件規則５０は、ネットワークデバイスのデバイスタイプ、メーカー、モデル、役割、およびコネクションなどであるがこれらに限定されない、ネットワークデバイスまたは構成要素間に求められる関係に関連する情報を含む。関係要件規則５０は、特定のファイアウォールに求められるコネクションなどであるがこれに限定されない、ネットワーク構成要素間に求められるコネクションに関連する情報も含むことができる。関係要件規則５０は、ネットワーク構成要素間に求められるデータ通信フォーマットに関連する情報も含むことができる。
【００１９】
　コンピュータネットワークモデル３４の関係制約規則５２は、ネットワークデバイスまたは構成要素間の関係制約に関連する情報を含むことができる。たとえば、関係制約規則５２は、特定のファイアウォールへの最小および／または最大コネクション量などであるがこれに限定されない、ネットワークモデル３４の１つまたは複数のデバイスまたは構成要素の最小および／または最大コネクション量に関連する情報を含むことができる。関係制約規則５２は、モデル３２のオブジェクト間の許されないすなわち禁じられている関係に関する情報も含むことができる。たとえば、関係制約規則５２は、特定のネットワーク構成要素間で許されないすなわち禁じられているコネクション、および／またはネットワークデバイス間で許されていないすなわち禁じられているデータ通信フォーマットに関連する情報を含むことができる。
【００２０】
　関係オプション規則５４は、モデル３２のオブジェクト間の許容される、または任意選択的な関係に関連する情報を含む。たとえば、コンピュータネットワークモデル３４の場合、関係オプション規則５４は、ネットワークデバイスの許容可能なタイプ、メーカー、モデル、役割、およびコネクションなどであるがこれらに限定されない、任意選択的すなわち許容されるネットワークデバイスまたは構成要素の定義に関連する情報を含むことができる。関係オプション規則５４は、特定のファイアウォールに許容されるコネクションなどであるがこれに限定されない、ネットワーク構成要素間の許容可能すなわち任意選択的なコネクションに関連する情報も含むことができる。関係オプション規則５４は、ネットワーク構成要素間で許容されるデータ通信フォーマットを定義することもできる。
【００２１】
　こうして、本発明は、コンピュータネットワークモデル３４などであるがこれに限定されないＸＭＬデータモデル３２の妥当性を検査する効率的なシステム１０を提供する。たとえば、多くの場合、コンピュータネットワークは大規模かつ複雑であるため、一般に妥当性の検証または検査が困難である。コンピュータネットワークモデル３４は、コンピュータネットワークに関連する物理的な構造または他の関係情報をＸＭＬフォーマットで表すために使用することが可能である。こうして、本発明の実施形態によれば、妥当性検査器２０は、セマンティック規則４４を使用してコンピュータネットワークモデル３４の妥当性を検証または検査する。
【００２２】
　図２は、本発明による妥当性検査方法の実施形態を示すフローチャートである。方法はステップ１００にて始まり、妥当性検査器２０がメモリ１８からＸＭＬデータモデル３２の１つを検索する。たとえば、妥当性検査器２０は、データベース３０からコンピュータネットワークモデル３４を検索することができる。ステップ１０２において、妥当性検査器２０は、データベース３０からセマンティック規則４４を検索する。
【００２３】
　ステップ１０２の後、妥当性検査器２０はセマンティック規則４４を、検索されたＸＭＬデータモデル３２に適用する。たとえば、ステップ１０４において、妥当性検査器２０は関係要件規則５０を、検索されたＸＭＬデータモデル３２に適用する。判定ステップ１０６において、検索されたＸＭＬデータモデル３２が関係要件規則５０のいずれかに違反した場合、方法はステップ１０８に進み、妥当性検査器２０は、システム１０のユーザにアラームまたは他の警報を発して、規則違反があることをユーザに通知することができる。検索されたＸＭＬデータモデル３２が関係要件規則５０に違反しない場合、方法はステップ１０６からステップ１１０に進む。
【００２４】
　ステップ１１０において、妥当性検査器２０は関係制約規則５２を、検索されたＸＭＬデータモデル３２に適用する。判定ステップ１１２において、検索されたＸＭＬデータモデル３２が関係制約規則５２に違反しているか否かを判定する。検索されたＸＭＬデータモデル３２が関係制約規則５２のいずれかに違反している場合、方法はステップ１１２からステップ１１４に進み、妥当性検査器２０がシステム１０のユーザに警報を発して、規則違反があることをユーザに通知する。検索されたＸＭＬデータモデル３２が関係制約規則５２に違反していない場合、方法はステップ１１２からステップ１１６に進む。
【００２５】
　ステップ１１６において、妥当性検査器２０は関係オプション規則５４を、検索されたＸＭＬデータモデル３２に適用する。判定ステップ１１８において、検索されたＸＭＬデータモデル３２が関係オプション規則５４のいずれかに違反しているか否かを判定する。検索されたＸＭＬデータモデル３２が関係オプション規則５４に違反している場合、方法はステップ１１８からステップ１２０に進み、妥当性検査器２０がシステム１０のユーザに警報を発して、規則違反があることをユーザに通知する。検索されたＸＭＬデータモデル３２が関係オプション規則５４に違反していない場合、方法は終了する。
【００２６】
　したがって、本発明は、ＸＭＬフォーマットで表されたセマンティック規則４４のセットを使用し、それによってプログラミングコードにおけるモデル３２のセマンティック要件を表現する必要性が大幅に少なくなった、またはなくなった、ＸＭＬデータモデル３２の妥当性を検査または検証する効率的かつ費用効率的なシステムおよび方法を提供する。さらに、セマンティック規則４４は、データモデル３２のコードにアクセスする必要なく、またはデータモデル３２にプログラミングを追加する必要なく、容易に強化することができる。
【図面の簡単な説明】
【００２７】
【図１】本発明による妥当性検査システムの実施形態を示す図である。
【図２】本発明による妥当性検査方法の実施形態を示すフローチャートである。
【図１】
2004118850.tif 000003
【図２】
2004118850.tif 000004