(57)【要約】【課題】  無線自動識別（ＲＦＩＤ）プロセスを設定し、配置するために携帯型方式を提供する、リーダーアプリケーションマークアップ言語（ＲＡＭＬ）スキーマを使用することによって、そのＲＦＩＤプロセスを実行することを容易にするシステムおよび／または方法を提供する。【解決手段】  スキーマ構成要素は、ＲＦＩＤアーキテクチャに関するＲＦＩＤデータを受信する。ここで、少なくともこのＲＦＩＤデータ（例えば、設定および／または構成を含めて、発見されたリーダー）に基づいて、１つのＲＡＭＬスキーマを作成する。ＲＡＭＬスキーマは、サブシステム定義（例えば、サーバ状態およびそのサーバ内のエンティティの定義を含んだ）およびプロセス定義（例えば、プロセス関連エンティティおよび相互関係を含んだ）を含む。【選択図】  図１
2006072976.tif 000002
【特許請求の範囲】
【請求項１】
ＲＦＩＤプロセスを実行することを容易にするＲＦＩＤ構成要素であって、
ＲＦＩＤアーキテクチャに関するＲＦＩＤデータを受信するレシーバ構成要素と、
少なくとも前記受信したＲＦＩＤデータに基づいてリーダーアプリケーションマークアップ言語（ＲＡＭＬ）スキーマを作成し、ＲＦＩＤプロセスをインストールし、および／または配置するスキーマ構成要素と
を含むことを特徴とする構成要素。
【請求項２】
前記ＲＦＩＤアーキテクチャが、
ＲＦＩＤ信号を受信するＲＦＩＤリーダーと、
少なくとも１つのＲＦＩＤリーダーに送信するＲＦＩＤタグと
を含むサブシステムを形成する、ＲＦＩＤリーダーの１つの集合を含むことを特徴とする請求項１に記載の構成要素。
【請求項３】
ＲＦＩＤリーダーの前記集合の１つの部分集合が、前記サブシステム内の特定の位置に関連付けられることを特徴とする請求項２に記載の構成要素。
【請求項４】
前記ＲＦＩＤデータが、ＲＦＩＤリーダー、発見されたＲＦＩＤリーダー、構成されたＲＦＩＤリーダー、およびＲＦＩＤリーダーの１つの集合の少なくとも１つであることを特徴とする請求項１に記載の構成要素。
【請求項５】
前記レシーバ構成要素が、インターネット、ＬＡＮ、ＷＡＮ、シリアルライン、およびＴＣＰ／ＩＰの少なくとも１つを介して前記ＲＦＩＤデータを受信することを特徴とする請求項１に記載の構成要素。
【請求項６】
前記ＲＡＭＬスキーマを生成する際に使用するために前記受信したＲＦＩＤデータの１つの部分集合を特定するため、前記ＲＦＩＤアーキテクチャを分析する設定構成要素をさらに含むことを特徴とする請求項１に記載の構成要素。
【請求項７】
前記ＲＡＭＬスキーマが、特定のＲＦＩＤベースのプロセスを使用するために使用される前記サブシステムの物理構成要素を定義することを特徴とする請求項２に記載の構成要素。
【請求項８】
前記ＲＡＭＬスキーマが、指定されたサーバの状態と、前記ＲＦＩＤプロセスによって使用されるべき前記サブシステムの少なくとも１つのエンティティとを定義するサブシステム定義を含むことを特徴とする請求項７に記載の構成要素。
【請求項９】
前記ＲＡＭＬスキーマが、装置の集合、追加の論理ソース、イベントポリシー、イベントハンドラ、書込みハンドラ、およびトラッカーの少なくとも１つを有する論理ソースを含むプロセス定義を含むことを特徴とする請求項７に記載の構成要素。
【請求項１０】
前記プロセス定義が、少なくとも１つのＲＦＩＤプロセス関連エンティティおよび関連付けられた相互関係を含む前記ＲＦＩＤプロセスを定義することを特徴とする請求項９に記載の構成要素。
【請求項１１】
前記プロセス定義は、前記サブシステムの上部に構築されるＲＦＩＤプロセスを指定することを特徴とする請求項７に記載の構成要素。
【請求項１２】
請求項１に記載のＲＡＭＬスキーマを記録したことを特徴とするコンピュータ可読媒体。
【請求項１３】
請求項１に記載の構成要素を記録したことを特徴とするコンピュータ可読媒体。
【請求項１４】
ＲＦＩＤプロセスを実行することを容易にするコンピュータで実施される方法であって、
ＲＦＩＤアーキテクチャからＲＦＩＤデータを受信するステップと、
少なくとも前記受信したＲＦＩＤデータに基づいてリーダーアプリケーションマークアップ言語（ＲＡＭＬ）スキーマを作成するステップと、
ＲＦＩＤプロセスを設定し、および／または配置するために前記ＲＡＭＬスキーマを使用するステップと
を含むことを特徴とする方法。
【請求項１５】
前記ＲＡＭＬスキーマをコンピュータ可読媒体に記憶するステップと、
前記コンピュータ可読媒体を介して前記ＲＡＭＬスキーマを使用するステップと
をさらに含むことを特徴とする請求項１４に記載の方法。
【請求項１６】
請求項１４に記載の方法を容易にする、レシーバとスキーマ構成要素の間で通信することを特徴とするデータパケット。
【請求項１７】
前記ＲＡＭＬスキーマが、サーバの状態および関連付けられたエンティティを有するＲＦＩＤネットワーク定義を含むことを特徴とする請求項１４に記載の方法。
【請求項１８】
前記ＲＡＭＬスキーマが、プロセス関連エンティティおよび相互関係を有するプロセス定義を含んでいることを特徴とする請求項１４に記載の方法。
【請求項１９】
ＲＦＩＤデータの１つの部分集合を特定するために前記受信したＲＦＩＤを分析するステップをさらに含むことを特徴とする請求項１４に記載の方法。
【請求項２０】
ＲＦＩＤプロセスを実行することを容易にするコンピュータで実施されるシステムであって、
ＲＦＩＤアーキテクチャからＲＦＩＤデータを受信するための手段と、
少なくとも前記受信したＲＦＩＤデータに基づいてリーダーアプリケーションマークアップ言語（ＲＡＭＬ）スキーマを作成するための手段と、
ＲＦＩＤプロセスを設定し、および／または配置するために前記ＲＡＭＬスキーマを使用するための手段と
を含むことを特徴とするシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、無線自動識別（ＲＦＩＤ）に関し、より詳細には、ＲＦＩＤシステムおよび／または方法に関連付けられたＲＦＩＤプロセスを実行することを容易にする言語スキーマに関する。
【背景技術】
【０００２】
多くの小売業者、製造業者および販売業者は、効率を高めるために異なる新たな運営方法を適用している。これらの業者は、消費者に関して供給と需要を最適化するために、貯蔵庫の在庫を監視する。利益を最大限にする一態様は、商品および／または製品の枯渇に連動して補充が行われるように、適切に貯蔵された在庫に応じて決まる。例えば、コンピュータとＶＣＲを販売する小売業者は、消費者売り上げに関連してコンピュータを貯蔵し、消費者売り上げに関連してそのＶＣＲを貯蔵する必要がある。したがって、コンピュータの需要がＶＣＲよりも高い場合（例えば、より多く売れた場合）、小売業者は、供給と需要を最適化するために、ひいては利益を最適化するために、コンピュータをより頻繁に貯蔵する場合がある。在庫および関連付けられた販売高の監視は、複雑な作業であり、内部の仕組みは分からないので、製品の動きはほとんどブラックボックスに等しい。それでもやはり、製品の監視は、在庫／製品の効率において非常に重要な要素である。
【０００３】
製品に関する１つの種類の監視システムおよび／または方法は、製造業、サービス業および小包配達業で広く使用される携帯型画像収集装置（例えば、バーコードリーダ）である。このような装置は、様々な現場データ収集活動を実行することができる。携帯型データ収集装置は、在庫管理、追跡、製造管理および促進、品質保証および他の目的のために、倉庫、小売店、出荷ターミナルにある製品、製品小包および／または容器に貼付されたバーコードデータフォームを読み取るように構成された、総合バーコードデータフォームリーダをしばしば含んでいる。
【０００４】
一意のバーコードを製品上に置くことができ、そのバーコードはその製品に関する情報に関連付けることができる。例えば、製品上のバーコードを走査するためにバーコードスキャナを利用することができ、その走査に基づいて情報を取り出すことができる。しかしこのような識別情報は製品上に散乱する場合があるので、これは美観を損ねるものである。さらに、バーコードが裂けたり、汚れたり、上に何か書き加えられるかまたは他の物理的損傷／変更が加えられた場合、このような従来型のシステムおよび／または方法は相当に無駄になる恐れがある。バーコードの一部が製品から剥がれた場合、バーコードスキャナはそのバーコードを正確に読み取ることができない場合がある。同様に、製品の上に汚れが付着した場合、そのようなバーコードは読み取り不可能になる恐れがある。
【０００５】
さらに、バーコードリーダおよび商品統一コード（ＵＰＣ）を利用する監視システムおよび／または方法は、ユーザ（例えば、小売業者、販売業者、製造業者など）にさらに面倒を強いる。バーコードリーダは、製品を正確に監視するために照準線を必要とする。例えば、典型的なバーコードシステムは、正確な読み取りを達成するために、スキャナがバーコードおよび／またはＵＰＣの４〜８インチ以内にあるようにすることを必要とする。製品を識別するためには、バーコードシステムが照準線を必要とするだけでなく、個別の製品上での手動による走査も必要である。さらに、単一バーコードおよび／またはＵＰＣは、製品のすべてのインスタンスを表す必要がある（例えば、Ｔｏｍａｔｏブランドのケチャップのボトルには、製品を表すための単一のＵＰＣおよび／またはバーコードが示されている）。加えて、その単一バーコードおよび／またはＵＰＣに関連付けられた情報量は制限されている。したがって、Ｔｏｍａｔｏブランドのケチャップの走査は、製品の識別および価格を提供することができる。僅かな情報であるばかりでなく、この情報は、リアルタイムの製品監視にも繋がらない。
【０００６】
少なくとも監視システムおよび／または方法（例えば、バーコードリーダ、バーコードおよび／またはＵＰＣ）の上記の不備を取り除く必要性から、自動認識及びデータ取得（ＡＩＤＣ）技術、具体的には無線自動識別（ＲＦＩＤ）が開発された。ＲＦＩＤは、ＲＦＩＤタグを使用するデータを遠隔から記憶し、取り出す方法である。ＲＦＩＤシステムは、無線周波数および関連付けられた信号に基づいているので、無数の利益および／または利点が、製品監視において従来技術よりも優れている。ＲＦＩＤ技術は、製品を監視し、および／またはＲＦＩＤタグから信号を受信するために、照準線を必要としない。したがって、スキャナを目標（例えば、製品）の近くに置く必要のある、手動走査は必須ではない。それでも尚、ＲＦＩＤでは、無線周波数、ＲＦＩＤタグサイズ、および関連付けられた電源に基づいて範囲が制限されている。したがって、ＲＦＩＤシステムは、数秒以内に複数の読み取りを可能にし、これによって迅速な走査および識別が提供される。すなわち、ＲＦＩＤシステムは、タグがＲＦＩＤリーダーの範囲内にある場合は、複数のタグが読み取られ、および／または識別されることを可能にする。ＲＦＩＤシステムにおける複数の読み取り機能は、独自の識別コードを含む情報タグを個々の製品に提供する機能で補われる。したがって、バーコードシステムとは対照的に、Ｔｏｍａｔｏブランド製のケチャップの各ボトルは、関連付けられた識別コードを有することになる。例えば、Ｔｏｍａｔｏブランド製のケチャップのボトル２本には、ＲＦＩＤシステム内でそれに関連付けられた２つの別個の識別コードがあるが、バーコードシステムでは、Ｔｏｍａｔｏブランド製のケチャップのこの２本のボトルは同じバーコードおよび／またはＵＰＣを有することになる。別の例では、ＲＦＩＤシステムおよび／または方法は、水中パイプの追跡および／または監視のように水中で実施することができるが、バーコード監視システムは、そのような状況下では無数の問題を提示する。
【０００７】
さらに、ＲＦＩＤシステムおよび／または方法は、タグ付きアイテムに関連付けられたリアルタイムデータを提供する。リアルタイムデータストリームは、小売業者、販売業者および／または製造業者に、供給と需要を正確に最適化して在庫および／または製品を監視する機能を可能にする。ＲＦＩＤの利用は、フロントエンド配達（例えば、小売業者から消費者へ）およびバックエンド配達（例えば、配達業者／製造業者から小売業者へ）に対する製品の供給をさらに容易にすることができる。配達業者および／または製造業者は、商品出荷、品質、量、出荷時刻などを監視することができる。また、小売業者は、受け取った在庫の量、その在庫の所在、品質、消費期限などを追跡することができる。上記の利点は、フロントエンド供給、バックエンド供給、流通網、製造、小売り、オートメーションなどのような複数の分野に跨って機能すべく、ＲＦＩＤ技術の柔軟性を示す。
【０００８】
ＲＦＩＤシステムは、少なくとも１つのＲＦＩＤタグおよび１つのＲＦＩＤトランシーバから構成される。ＲＦＩＤタグは、ＲＦＩＤトランシーバから無線周波数へのクエリの受信と送信を提供するアンテナを含むことができる。ＲＦＩＤタグは、例えば粘着シール、柔軟で薄いラベルなどのような小さい物体であってよい。通常は、次のように、ＲＦＩＤタグが利用する４つの異なる周波数がある。すなわち、低周波タグ（１２５から１３４キロヘルツ）、高周波タグ（１３．５６メガヘルツ）、ＵＨＦタグ（８６８から９５６メガヘルツ）、およびマイクロ波タグ（２．４５ギガヘルツ）である。
【０００９】
様々な周波数の範囲内で、ＲＦＩＤタグは、受動であっても能動であってもよい。受動ＲＦＩＤタグは電源機構を含まないが、ＲＦＩＤトランシーバから受信した無線周波数によってアンテナ内に誘発された微小電流は、タグが応答するのに十分な電力を供給する。少なくとも電源が欠如していることに基づいて、受動ＲＦＩＤタグの応答は、ＩＤ番号（例えば、グローバル一意識別子（ＧＵＩＤ））から構成され、簡素である。ＧＵＩＤは、一意の擬似乱数であり、１６進数形式で書かれた１６バイト数の標準的な汎用一意識別子（ＵＵＩＤ）により実施することができる。しかし、ＲＦＩＤシステムおよび／または方法は、例えば電子製品コード（ＥＰＣ）と呼ばれる６４ビットまたは９６ビット形式などの情報を記憶することに集中している。受動ＲＦＩＤタグに電源機構がないことにより、装置は小型化され、費用効率が向上する。一部の受動ＲＦＩＤタグは、４ｍｍ×．４ｍｍであり、紙よりも薄い。しかし、電源機構がないことで、受動ＲＦＩＤタグの実際の読み取り範囲は１０ｍｍから約５メートルまでに制限される。
【００１０】
能動ＲＦＩＤタグは電源を含み、これによりさらに長い読み取り範囲を可能にしている。能動ＲＦＩＤタグは米国通貨のサイズに粗等しいが、これは数年に及ぶ電池寿命を有しながら、実際には約１０メートルの読み取り範囲を提供する。さらに、能動ＲＦＩＤタグは読み取りと書込みが可能である。例えば、ＲＦＩＤタグは、能動ＲＦＩＤタグへの書込みにより、盗難を抑止するために追加のセキュリティ層を提供することができる。セキュリティビットは、少なくともＲＦＩＤトランシーバに基づいてセキュリティ状態を特定することができる。あるセキュリティシステムでは、例えば能動ＲＦＩＤタグは、製品が、警告／警報をトリガせず、安全領域から出荷のために運び出されていないことを示す１にセットされ／書き込まれたセキュリティビットを有することができる。適切な状況が存在すると、ＲＦＩＤシステムおよび／または方法は、そのタグ上のビットに、そのタグの付いた製品が安全領域から出荷のために運び出されたことを示す０を書き込むことができる。
【発明の開示】
【発明が解決しようとする課題】
【００１１】
ＲＦＩＤシステムは、次の複数の構成要素（コンポーネント）から構成することができる。すなわち、タグ、タグリーダー（例えば、タグトランシーバ）、タグプログラミングステーション、流通リーダー、格納設備、タグ在庫ワンドなどである。さらに、様々な型、モデル、タイプ、および応用例を、各構成要素（例えば、タグ、タグリーダー、タグプログラミングステーション、流通リーダー、格納設備、タグ在庫ワンドなど）に関連付けることができるが、これによって、当該ＲＦＩＤシステム内、および他のＲＦＩＤシステムでの発見、構成、設定、通信、維持管理、セキュリティおよび／または整合性が複雑化する。上記に鑑みて、製造業者および関連付けられた仕様に関して、ＲＦＩＤ装置に発見、構成、設定および通信する一意の方法を提供する必要がある。
【課題を解決するための手段】
【００１２】
本発明のいくつかの態様の基礎的理解を提供するために、本発明の簡約化した概要を以下に示す。この概要は、本発明の広範囲に亘る概説ではない。この概要は、本発明の主要な要素または重大な要素を識別することも、本発明の範囲を示すことも意図しない。この概要の唯一の目的は、本発明のいくつかの概念を、後述するさらに詳細な説明の前置きとして簡約化して示すことである。
【００１３】
本発明は、ＲＦＩＤアーキテクチャ内のＲＦＩＤプロセスを設定し、および／または配置するために携帯型方式を提供する、リーダーアプリケーションマークアップ言語（ＲＡＭＬ）スキーマを使用することによって、そのＲＦＩＤプロセスを実行することを容易にするシステムおよび／または方法に関する。スキーマ構成要素は、ＲＦＩＤ配置に関するＲＦＩＤデータを受信し、ＲＡＭＬスキーマを作成することができる。ＲＦＩＤデータ（例えば、プロセス関連データ）は、限定ではないが、ＲＦＩＤアーキテクチャ内で発見され、および／または構成されたＲＦＩＤリーダーであってよい。さらに、ＲＦＩＤデータはプロセス関連データである。一度受信されると、スキーマ構成要素は、少なくともＲＦＩＤデータ（例えば、プロセス関連データ）に基づいてＲＡＭＬスキーマを作成し、これによりＲＦＩＤプロセスの実行を容易にする携帯型方式を提供する。ＲＡＭＬスキーマは、ＲＦＩＤプロセスを構成する、論理リーダーの集合、フィルタおよび／またはアラートに関するイベントポリシー、イベントハンドラ、書込みハンドラ、および／または追跡情報を指定する。
【００１４】
本発明の一態様によれば、スキーマ構成要素は、少なくとも受信したＲＦＩＤデータに基づいてＲＡＭＬスキーマを作成するジェネレータ構成要素をさらに含む。ＲＡＭＬスキーマがサブシステム定義（例えば、サーバ内の、発見され、構成されたすべてのリーダーの組）とプロセス定義をさらに含むように、ＲＡＭＬスキーマを作成することができる。サブシステム定義は、プロセスとは独立した、サーバのエンティティに関する定義を含む。さらに、サブシステム定義は、サーバ状態と、プロセスがそこに構築されるエンティティとを定義する。一方、プロセス定義は、複数のプロセス関連エンティティと、相互関係とを含む。サブシステム定義および／またはプロセス定義を含むためにＲＡＭＬスキーマを作成することにより、ＲＦＩＤプロセスの実行は、そのような定義されたＲＦＩＤプロセスの設定および配置に携帯型方式を提供することにより容易になる。
【００１５】
本発明の別の態様によれば、ＲＡＭＬスキーマは、形式および可用性で汎用性のある携帯型方式を提供することによって、ＲＦＩＤプロセスの実行を容易にするために、メモリおよび／またはデータストアに記憶することができる。スキーマ構成要素は、ＲＡＭＬスキーマを動的に、または将来において使用することができるように、ＲＡＭＬスキーマを作成し、そのＲＡＭＬスキーマをデータストアおよび／またはメモリに記憶することができる。ＲＡＭＬスキーマのために使用されるメモリおよび／またはデータストアは、揮発性および／または不揮発性メモリであってよい。
【００１６】
本発明のさらに別の態様によれば、ＲＦＩＤアーキテクチャおよび／またはＲＦＩＤ配置から受信したＲＦＩＤデータを分析することによって、ＲＦＩＤデータ（例えば、プロセス関連データ）の部分集合を伴うスキーマ構成要素を提供するために、設定構成要素を含めることができる。ＲＦＩＤアーキテクチャは、複数のＲＦＩＤリーダーの集合を含めることができ、リーダーの集合は、ＲＦＩＤタグを読み取ることのできる少なくとも１つのＲＦＩＤリーダーをさらに含む。設定構成要素は、１つ以上のＲＦＩＤと、限定ではないが構成、特定設定、許可などのような関連付けられたデータとを発見するために、ＲＦＩＤアーキテクチャを分析することができる。設定構成要素は、ＲＦＩＤプロセスを実行することを容易にするために、スキーマ構成要素がＲＡＭＬスキーマを作成することを可能にする、ＲＦＩＤアーキテクチャ内でＲＦＩＤリーダーおよび関連付けられたデータを特定する。ここで、ＲＡＭＬスキーマは、例えばサブシステム定義（例えば、ＲＦＩＤネットワーク定義）および／またはプロセス定義を含む。ＲＡＭＬスキーマは、論理リーダーの集合、フィルタおよび／またはアラートに関するイベントポリシー、イベントハンドラ、書込みハンドラ、および／またはＲＦＩＤプロセスを含む追跡情報を指定する。
【００１７】
以下の説明および添付の図面は、本発明を例示する態様を詳細に説明するものである。しかしこれらの態様は、本発明の原理を使用することのできる様々な方法の数例を示すものであり、本発明は、すべてのそのような態様およびそれらの等価形態を含むことを意図する。以下に示す本発明の詳細な説明を図面と共に検討することにより、本発明の他の利点および新しい特徴が明らかになろう。
【発明を実施するための最良の形態】
【００１８】
本願で使用する「構成要素」、「システム」などの用語は、ハードウェア、ソフトウェア（例えば、実行中の）および／またはファームウェアのどれかであるコンピュータ関連エンティティを意味する。例えば、構成要素は、プロセッサで実行中のプロセス、プロセッサ、オブジェクト、実行可能なプログラムおよび／またはコンピュータであってよい。一例として、サーバで実行中のアプリケーションとサーバのどちらも構成要素であってよい。１つまたは複数の構成要素が１つのプロセスに常駐することができ、１つの構成要素は、１つのコンピュータ上に局在するか、および／または複数のコンピュータに分散することができる。
【００１９】
本発明を、図面を参照して説明するが、図面全体を通して類似の参照番号が類似の要素を示すために使用される。以下の説明では、説明の目的で、本発明の完全な理解を提供するために多数の具体的な詳細を述べる。しかし、本発明はこれらの具体的な詳細がなくても実現できることが明らかになろう。他の場合、本発明を説明することを容易にするために、良く知られた構造および装置がブロック図形式で示される。
【００２０】
図１は、ＲＦＩＤアーキテクチャで少なくとも１つの無線自動識別（ＲＦＩＤ）プロセスを実行することを容易にするために、スキーマを使用するシステム１００を示す。ＲＦＩＤデータはＲＦＩＤアーキテクチャに関連付けられたプロセス関連データであり、スキーマ構成要素１０２によって受信することができる。ここで、サーバのすべてのエンティティの定義と、それらエンティティおよび相互関係に関連するすべてのプロセスの定義とを含めるために、リーダーアプリケーションマークアップ言語（ＲＡＭＬ）スキーマが使用される。スキーマ構成要素１０２は、サーバ状態と、プロセスがその上に構築されるエンティティとが定義され、関連付けられたＲＦＩＤプロセスが定義されるように、ＲＡＭＬスキーマを生成する。さらに、スキーマ構成要素１０２は、サーバの状態と、ランタイムによって使用されるように開発されたプロセスとを表すために、ＲＦＩＤスキーマを使用する。一度ＲＦＩＤデータがスキーマ構成要素１０２によって取得されると、プロセス／サービスに携帯型方式（例えば、ＲＡＭＬスキーマ）を提供するＲＦＩＤアーキテクチャにＲＦＩＤサービス１０４を提供するために使用される、例えばＲＡＭＬなどのスキーマを実施することができる。ＲＡＭＬスキーマは、単一ＲＦＩＤプロセス（例えば、ＸＭＬの宣言型プロセス定義）を表す拡張マークアップ言語（ＸＭＬ）スキーマであることを理解されたい。また、ＲＡＭＬスキーマは、論理リーダーの集合、フィルタおよび／またはアラートに関するイベントポリシー、イベントハンドラ、書込みハンドラおよび／またはＲＦＩＤプロセスを含む追跡情報を指定する。
【００２１】
本発明の一態様によれば、スキーマ構成要素１０２によって受信されたＲＦＩＤデータは、サブシステム定義（例えば、ＲＦＩＤネットワーク定義）とプロセス定義とを含むＲＡＭＬスキーマの生成を可能にする。ＲＦＩＤデータは、少なくとも１つの論理リーダーグループからなる少なくとも１つのサブシステムリーダーグループの１つの集合を含むことができる。ここで、論理リーダーグループは、ＲＦＩＤサービス１０４で使用すべき少なくとも１つのリーダーを有する。一実施形態では、少なくとも１つの論理リーダーグループは、サブシステムリーダーグループに複数のＲＦＩＤリーダーを含むことができる。ここで、各タグリーダーは、関連付けられた参照（例えば、名前、アドレスなど）、リーダー設定（例えば、物理リーダーの設定）、転送設定（例えば、ＴＣＰＩＰ、シリアル、ＨＴＴＰ、無線など）、プロパティ（例えば、リーダーに適用することのできるプロパティ、および関連付けられたプロパティ参照）、およびプロセス（例えば、ビジネス論理の実行を可能にするのに必須の情報および関連付けられたプロセス参照をカプセル化すること）を有する。各タグリーダーに関する関連付けがバインドまたは配置で発生する可能性があるが、そのような関連付けはＲＡＭＬスキーマにカプセル化することができるということに留意し、理解されたい。また、１つのサブシステムリーダーの集合（例えば、リーダーのＲＦＩＤネットワーク集合）を別の集合（例えば、ｒｅａｄｅｒｃｏｌｌｅｃｔｉｏｎ１、ｒｅａｄｅｒｃｏｌｌｅｃｔｉｏｎ２など）と区別／識別するために、参照を関連付けることができるということを理解されたい。第１のリーダーの集合と第２のリーダーの集合は同じ物理リーダーを含むことができ、それぞれに対するバインドは異なる（例えば、論理リーダーの集合はＲＡＭＬで指定され、ランタイムで１つまたは複数の物理リーダーにバインドされる）ということに留意されたい。
【００２２】
例えば、５つのドックドアのある倉庫は、ドアそれぞれに関連付けられたＲＦＩＤリーダーを有することができる。倉庫全体に対するサブシステムリーダーの集合（例えば、ユニバースリーダーの集合、リーダーのＲＦＩＤネットワーク集合など）を、例えばｗａｒｅｈｏｕｓｅ＿ｒｅａｄｅｒｃｏｌｌｅｃｔｉｏｎ１で参照することができる。ここで、各ドックドアにある複数のＲＦＩＤリーダーは、１つのリーダー集合にグループ化することができ、したがって５つのリーダー集合が生じることになる（例えば、ｒｅａｄｅｒｄｏｃｋｄｏｏｒ１、ｒｅａｄｅｒｄｏｃｋｄｏｏｒ２など）。ドックドアにある各リーダーは、例えば、参照（例えば、ｒｅａｄｅｒ１ｄｏｃｋｄｏｏｒ１、ｒｅａｄｅｒ２ｄｏｃｋｄｏｏｒ１など）、リーダー設定（．５メートルに設定されたＲＦＩＤ範囲）、転送設定（例えば、ＴＣＰＩＰ）、プロパティ（例えば、参照ｐｒｏｐｅｒｔｙ１＿ｒｅａｄｅｒ１ｄｏｃｋｄｏｏｒ１によるタイムアウトプロパティ）、およびプロセス（例えば、ＲＡＭＬのような携帯型方式スキーマにより作成される）を有することができる。
【００２３】
さらに、スキーマ構成要素１０２によって取得されたＲＦＩＤデータは、例えば１つ以上の論理ソース（例えば、論理ソースの少なくとも１つの集合、リーダー集合および／またはイベントハンドラ）、１つ以上のトラッカーログ（例えば、少なくとも１つのＲＦＩＤリーダーの活動の追跡）、１つ以上のパラメータ集合、セキュリティ（例えば、作成し、修正し、および／または実行することが許可されたＲＦＩＤリーダー）、１つ以上のフィルタ、１つ以上のアラート、１つ以上のイベントハンドラ、および１つ以上のデータシンク（例えば、データの集合）のような、すべてのプロセス関連エンティティとサブシステム定義内の相互関係を含むプロセス定義（例えば、ＲＦＩＤネットワーク定義、装置構成定義、サーバ内で発見され、構成されたすべてのリーダーの組の定義など）から構成される、リーダーアプリケーションマークアップ言語（ＲＡＭＬ）スキーマを使用する。したがって、上記に引き続き、倉庫全体に関するサブシステムリーダーの集合（例えば、ユニバースリーダー集合、リーダーのＲＦＩＤネットワーク集合）は、スキーマ構成要素１０２によって受信することのできるプロセス関連エンティティおよび相互関係を有し、これによって、ＲＦＩＤアーキテクチャに適用されるＲＦＩＤサービス／プロセスに携帯型方式を提供するＲＡＭＬスキーマの使用が可能になる。
【００２４】
一実施形態では、スキーマ構成要素１０２は、ＲＦＩＤサービス１０４を実施するようにスキーマを作成し、使用するためにＲＦＩＤデータを取得することができる。ここで、ＲＦＩＤサービス１０４は、タグ読み取りを実行するために共同し、タグ読み取りをフィルタリング、タグ読み取りを拡充し、アラートを評価し、関連データをホストアプリケーションのシンクに記憶する、様々なドックドアにある複数のリーダーを表す「出荷プロセス」である。ドックドアは、複数のタグリーダーを含むことができ、１つのソースタグの複数の読み取りを提供することができる。このような複数の読み取りを読み取り、フィルタリングすることができる。例えば、同一ＩＤの複数の読み取りがフィルタ除去（例えば、ドロップ）される。さらに、例えばソースタグの到着または発信をアラートするように、タグ読み取りにアラートを関連付けることができる。このようなＲＦＩＤデータは、スキーマを生成するためにスキーマ構成要素１０２によって使用することができ、これによってＲＦＩＤアーキテクチャにおけるＲＦＩＤプロセスのための携帯型方式が可能になる。
【００２５】
さらに別の実施形態では、スキーマ構成要素１０２は、リーダーが少なくとも商品の特定位置に基づいて読み取り、および書込むように構成される場合、「製造プロセス」のようなＲＦＩＤサービス１０４を実施するようにスキーマを作成し、使用するためにＲＦＩＤデータを受信することができる。「製造プロセス」は、限定ではないがフィルタリング、拡充、アラート、記憶などのような「出荷プロセス」の機能に類似の機能をそれぞれの位置で実行することができ、ＲＦＩＤデータは、ＲＦＩＤアーキテクチャのＲＦＩＤプロセスに携帯型方式を提供するスキーマ構成要素１０２によって作成されたスキーマを作成することを容易にする、ということを理解されたい。
【００２６】
図２は、ＲＦＩＤアーキテクチャ内でＲＦＩＤプロセスに携帯型方式を提供することによって、そのプロセスを実行することを容易にするために、スキーマを作成し、および／または使用するシステム２００を示す。スキーマ構成要素２０２は、サーバの状態と、ＲＦＩＤプロセスを実行するためにＲＦＩＤランタイムによって開発中および使用中のプロセスとを表すために、スキーマ（例えば、リーダーアプリケーションマークアップ言語（ＲＡＭＬ）スキーマ）をそこから使用することのできる、ＲＦＩＤデータを受信することができる。取得したＲＦＩＤデータは、サブシステム関連データ（例えば、ＲＦＩＤネットワーク、ユニバース）および／またはプロセス関連データのどちらであってもよい。スキーマ構成要素２０２がスキーマを作成し、および／または使用するために、受信したＲＦＩＤデータはＲＦＩＤサーバ（例えば、ＲＦＩＤアーキテクチャ）エンティティデータを提供する。例えば、ＲＦＩＤデータはサーバ状態の定義であってよく、その定義は、ＲＦＩＤリーダー、ＲＦＩＤリーダーの様々な集合、ＲＦＩＤリーダー関連データなどを提供する。ＲＦＩＤアーキテクチャに関連付けられた受信ＲＦＩＤデータは、スキーマ構成要素２０２が、少なくとも１つのエンティティを含むそのような定義されたサーバ状態内でＲＦＩＤプロセスを実行することを容易にする、リーダーアプリケーションマークアップ言語（ＲＡＭＬ）スキーマを作成し、および／または使用することを可能にする。すなわち、ＲＡＭＬスキーマは、ＲＦＩＤアーキテクチャに適用されるＲＦＩＤランタイムサービス２０６のために使用することのできるプロセスに携帯型方式を提供する。ＲＡＭＬスキーマは、ＲＦＩＤプロセスを表す、例えばＸＭＬ（拡張マークアップ言語）スキーマであってよいということを理解されたい。さらに、いかなる適切にタグ付けされた、またはマークアップされた言語でも、ＲＡＭＬスキーマを表すことができる。
【００２７】
ＲＡＭＬスキーマは、ＲＦＩＤプロセスを実行するために、サーバの状態（例えば、装置の定義、サブシステム定義、ＲＦＩＤネットワーク定義）と、ＲＦＩＤランタイムによって開発中および使用中のプロセス（例えば、プロセス定義）とを表すことができるということを理解されたい。オブジェクトモデル（ＯＭ）および／またはアプリケーションプログラムインターフェース（ＡＰＩ）は、開発者がそれらのインスタンス（例えば、ＲＡＭＬスキーマを使用することによって作成し、および／または使用されるインスタンス）を作成しなければならないという必要性を解消する。さらに、使用可能なＲＦＩＤネットワークおよび／またはＲＦＩＤサブシステムの状況（例えば、ＲＦＩＤサービスに参加することを許可されたＲＦＩＤアーキテクチャ内のエンティティ）が、ＲＦＩＤプロセスを構築するためにＲＦＩＤデータによって提供される。すなわち、ＲＦＩＤプロセス定義は、プロセスを設計するために特定のＲＦＩＤネットワークインスタンス（例えば、ＲＦＩＤサブシステム、ユニバースインスタンス）を使用するが、ここで、ＲＡＭＬスキーマは、１つ以上のＲＦＩＤネットワークインスタンスのそれらのプロセスに携帯型方式を提供する。
【００２８】
例えば、ＲＦＩＤデータはスキーマ構成要素２０２によって受信することができ、ＲＦＩＤデータは、少なくともＲＦＩＤサブシステムデータ（例えば、サーバ状態、装置データ、ＲＦＩＤネットワークデータ）を提供する。ＲＦＩＤデータは、限定ではないが、サーバのリーダー、論理グループまたはサーバ内のリーダーの集合（例えば、Ａｃｍｅ  Ｗａｒｅｈｏｕｓｅ  ＲＦＩＤリーダー）、個々のリーダーに対する参照（例えば、リーダーを指定／区別するための名前および／または参照、例えばＡｃｍｅ＿Ｗａｒｅｈｏｕｓｅ＿ｒｅａｄｅｒ１＿ｄｏｃｋｄｏｏｒ１）、確立されたＲＦＩＤネットワーク内の各リーダーに対する関連づけられた設定／構成／仕様（例えば、ＲＦＩＤサブシステム、サーバ）などを含むことができる。
【００２９】
ＲＦＩＤデータを受信後、スキーマ構成要素２０２は、特定のＲＦＩＤサブシステム（例えば、ＲＦＩＤサーバ、ＲＦＩＤネットワーク）に関連したＲＦＩＤプロセスを含んだ形式の転送を容易にするために、ＲＡＭＬスキーマを使用することができる。本発明の一態様によれば、ＲＡＭＬスキーマは、ＲＦＩＤランタイムサービス２０６によって使用されるようにデータストア２０４に記憶／保存することができる。データストア２０４は、ＲＡＭＬスキーマに記憶および／または取り出しを提供する。これにより開発者は、特定のＲＦＩＤ配置（例えば、ＲＦＩＤサーバ）のためにＲＦＩＤプロセスを動的に、または将来のために設定し、配置することができる。
【００３０】
データストア２０４は、ＲＦＩＤデータに少なくとも基づいてスキーマ構成要素２０２により生成されたＲＡＭＬスキーマを保持するために使用することができ、これにより、ＲＦＩＤアーキテクチャに対してそのプロセスを実施することを容易にするＲＦＩＤプロセスに携帯型方式を提供する。さらに、データストア２０４は、例えば揮発性メモリまたは不揮発性メモリであってよく、もしくは揮発性メモリと不揮発性メモリの両方を含んでもよい。限定ではなく説明のために、不揮発性メモリは、読み出し専用メモリ（ＲＯＭ）、書込み可能ＲＯＭ（ＰＲＯＭ）、電子的書込み可能ＲＯＭ（ＥＰＲＯＭ）、電子的消去可能ＲＯＭ（ＥＥＰＲＯＭ）またはフラッシュメモリを含むことができる。揮発性メモリは、外部キャッシュメモリとして動作するランダムアクセスメモリ（ＲＡＭ）を含むことができる。限定ではなく説明として、ＲＡＭは、シンクロナスＲＡＭ（ＳＲＡＭ）、ダイナミックＲＡＭ（ＤＲＡＭ）、シンクロナスＤＲＡＭ（ＳＤＲＡＭ）、ダブルデータレートＳＤＲＡＭ（ＤＤＲ  ＳＤＲＡＭ）、拡張ＳＤＲＡＭ（ＥＳＤＲＡＭ）、Ｓｙｎｃｈｌｉｎｋ  ＤＲＡＭ（ＳＬＤＲＡＭ）、およびダイレクトＲａｍｂｕｓ  ＲＡＭ（ＤＲＲＡＭ）のように多くの方式で使用可能である。本システムおよび方法のデータストア２０４は、限定ではないがこれらおよびいかなる他の適切なタイプのメモリを含むことを意図する。
【００３１】
ＲＦＩＤランタイムサービス２０６は、ＲＦＩＤアーキテクチャ上で実施することができ、ＲＦＩＤランタイムサービスは、例えばＲＦＩＤプロセスであってよい。ＲＦＩＤプロセスは、実行の重要な単位を作成するために様々なエンティティと共に形成するｕｂｅｒまたは上位オブジェクトであることを理解されたい。さらに、スキーマ構成要素２０２は、ＲＦＩＤプロセスがＲＦＩＤアーキテクチャで実施されるべき携帯型／送信可能方式となるように、ＲＡＭＬスキーマを提供する。例えば、ＲＦＩＤプロセスは、アウトバウンドプロセス（例えば、ピック、パック、出荷シナリオ）、製造プロセス、出荷プロセス、受信プロセス、追跡、データ表現／操作／適用可能、セキュリティなどであってよい。
【００３２】
図３は、ＲＦＩＤプロセスを実施するために携帯型方式を提供するリーダーアプリケーションマークアップ言語（ＲＡＭＬ）スキーマを作成し、および／または使用することによってＲＦＩＤプロセスを実施することを容易にする、システム３００を示す。スキーマ構成要素３０２は、少なくともＲＦＩＤデータに基づいてリーダーアプリケーションマークアップ言語（ＲＡＭＬ）スキーマ３１２を使用する。さらに、スキーマ構成要素３０２は、ＲＦＩＤデータを取得するレシーバ構成要素３０４をさらに含み、これによってスキーマ構成要素３０２は、ＲＦＩＤアーキテクチャ内でＲＦＩＤプロセスを実行することを容易にするＲＡＭＬスキーマ３１２を作成することができる。
【００３３】
スキーマ構成要素３０２は、ＲＡＭＬスキーマ３１２を生成するジェネレータ構成要素３０６をさらに含む。ジェネレータ構成要素３０６は、ＲＡＭＬスキーマ３１２を生成し、ＲＡＭＬスキーマ３１２はサブシステム定義３０８および／またはプロセス定義３１０を含むことができる。サブシステム定義３０８は、プロセスがそこで実行されるサーバ状態の定義であることを理解されたい。すなわち、サブシステム定義３０８は、いかなるプロセス（例えば、サーバ状態およびプロセスがそこに構築されるエンティティを定義すること）からも独立した、サーバ内のすべてのエンティティの定義を含む。さらに、特定のサブシステムインスタンスがＲＦＩＤプロセスを設計するために使用されるように、プロセス定義３１０がＲＦＩＤプロセスを定義することを理解されたい。したがって、プロセス定義３１０は、すべてのプロセス関連エンティティと相互関係（例えば、ＲＦＩＤプロセスはサブシステムの上部に構築されるプロセスを指定する）とを含む。ＲＡＭＬスキーマは、少なくとも１つのＲＦＩＤプロセスを含む携帯型データフォーマットであり、ＲＡＭＬスキーマはサブシステム定義３０８および／またはプロセス定義３１０を含むことも理解されたい。
【００３４】
ジェネレータ構成要素３０６は、サブシステム定義３０８を含んだＲＡＭＬスキーマ３１２を生成する。コードを簡単にするために、「サーバ」はサブシステム定義３０８に使用することを理解されたい。例えば、サブシステム定義３０８を含むＲＡＭＬスキーマ３１２は、ターゲット名前空間位置および関連付けられた参照「ＤｅｖｉｃｅＣｏｎｆｉｇｕｒａｔｉｏｎ．ｘｓｄ．」を伴う「ＤｅｖｉｃｅＣｏｎｆｉｇｕｒａｔｉｏｎ」によって識別することができる。さらに、ＸＭＬバージョンおよび関連付けられた符号化が定義される。上記事項を以下のコードで示す。
【００３５】
【表１】
2006072976.tif 000003
【００３６】
「ｔａｒｇｅｔＮａｍｅｓｐａｃｅ」と呼ばれるターゲット名前空間は発行されたＵＲＩであってよく、したがって本発明はその名前空間には限定されない。
【００３７】
サブシステム定義３０８は、「Ｄｅｖｉｃｅ」というタイプの「装置」という要素を定義する。複合タイプの「Ｄｅｖｉｃｅ」は、以下のコードで示すように、一連の要素名およびタイプを含む。
【００３８】
【表２】
2006072976.tif 000004
【００３９】
上記のコードは、「ＤｅｖｉｃｅＲｅａｄｅｒ」という名称の複合タイプの初期インスタンシエーションを示し、要素「ＤｅｖｉｃｅＩｎｆｏｒｍａｔｉｏｎ」、「ｎａｍｅ」、および「ＰｒｏｐｅｒｔｙＰｒｏｆｉｌｅ」はメンバーである。一度これらメンバーが「Ｄｅｖｉｃｅ」の要素と定義されると、それらメンバー（例えば、「ＤｅｖｉｃｅＩｎｆｏｒｍａｔｉｏｎ」、「ｎａｍｅ」、および「ＰｒｏｐｅｒｔｙＰｒｏｆｉｌｅ」など）をさらに定義することができる。サブシステム定義３０８は、「ＤｅｖｉｃｅＩｎｆｏｒｍａｔｉｏｎ」を以下のコードによって定義することができる。
【００４０】
【表３】
2006072976.tif 000005
【００４１】
さらに、「ＰｒｏｐｅｒｔｙＰｒｏｆｉｌｅ」が定義され、物理リーダーの設定が決定される。「ＰｒｏｐｅｒｔｙＰｒｏｆｉｌｅ」はプロセスとは独立であることを理解されたい。さらに、「ＰｒｏｐｅｒｔｙＰｒｏｆｉｌｅ」は構成（例えば、リーダーのプロパティのリスト）を含む。上記事項を以下のコードで示す。
【００４２】
【表４】
2006072976.tif 000006
【００４３】
一度「ＤｅｖｉｃｅＣｏｎｆｉｇｕｒａｔｉｏｎ．ｘｓｄ」内で定義されると、「Ｔｒａｎｓｐｏｒｔ」が以下のコードによってさらに定義される。
【００４４】
【表５】
2006072976.tif 000007
【００４５】
「ＡｒｒａｙＯｆＰｒｏｐｅｒｙ」は、リーダーに適用することのできる一組のプロパティである。これは、プロパティのリストを含む。上記事項は、以下のコードによって示すことができる。
【００４６】
【表６】
2006072976.tif 000008
【００４７】
さらに、サブシステム定義３０８は、シリアル通信が使用される場合に「ＴｒａｎｓｐｏｒｔＳｅｔｔｉｎｇｓ」を定義する、「ＳｅｒｉａｌＴｒａｎｓｐｏｒｔＳｅｔｔｉｎｇｓ」を定義することができる。これは、以下のコードによって定義される。
【００４８】
【表７】
2006072976.tif 000009
【００４９】
同様に、ＴＣＰ通信用の「ＴｒａｎｓｐｏｒｔＳｅｔｔｉｎｇｓ」を処理するために「ＴｃｐＴｒａｎｓｐｏｒｔＳｅｔｔｉｎｇｓ」を定義することができる。これは、以下のコードによって定義される。
【００５０】
【表８】
2006072976.tif 000010
【００５１】
サブシステム定義３０８が、ＲＦＩＤプロセスに携帯型方式を提供することを容易にするために使用されるＲＡＭＬスキーマ３１２に含まれる、ジェネレータ構成要素３０６によって生成される。ジェネレータ構成要素３０６は、サブシステム定義３０８に連動して構築されるプロセスを指定するために、プロセス定義３１０を生成することができる。
【００５２】
ジェネレータ構成要素３０６は、サーバの状態を表すためにはサブシステム定義３０８を使用することができ、一方、ランタイムによって開発され、使用されるＲＦＩＤプロセスを表すためにはプロセス定義３１０を使用することができる。例えば、プロセス定義３１０を含むＲＡＭＬスキーマ３１２は、ターゲット名前空間位置および関連付けられた参照「ＰｒｏｃｅｓｓＤｅｆｉｎｉｔｉｏｎ．ｘｓｄ．」を伴う「ＰｒｏｃｅｓｓＤｅｆｉｎｉｔｉｏｎ」によって識別することができる。さらに、ＸＭＬバージョンおよび関連付けられた符号化が定義される。上記事項を以下に示す。
【００５３】
【表９】
2006072976.tif 000011
【００５４】
コードで示したように、「ｄｅｖｉｃｅＣｏｌｌｅｃｔｉｏｎＬｉｓｔ」は要素「ｄｅｖｉｃｅＣｏｌｌｅｃｔｉｏｎ」を含む。装置の集合は、特定のサブシステム設定（例えば、ＲＦＩＤネットワーク）内のＲＦＩＤリーダーの集合である。例えば、倉庫は特定のサブシステム（例えば、ＲＦＩＤネットワーク）と見なすことができ、装置の集合は受け入れドックドアにあるリーダーの集合であってよい。さらに、「ｄｅｖｉｃｅＣｏｌｌｅｃｔｉｏｎ」は、基礎となるエンティティを、物理リーダーの関連付けられた名前により配置時のバインドプロセスを介してマップする。上記の例に引き続き、「ｄｅｖｉｃｅＣｏｌｌｅｃｔｉｏｎ」内の単一リーダーへの参照を参照することはできるが、それは、ｒｅａｄｅｒ１＿ｒｅｃｅｉｖｉｎｇ＿ｄｏｃｋ＿ｄｏｏｒ、ｒｅａｄｅｒＡ＿ｄｏｃｋｄｏｏｒ＿ｒｅｃｅｉｖｉｎｇ、ｒｅｃｅｉｖｉｎｇＲＥＡＤＥＲ１などに限られる。「ｄｅｖｉｃｅＣｏｌｌｅｃｔｉｏｎ」は、名前（例えば、集合の名前）および構成（例えば、グループに関するプロパティプロファイル）を含む。
【００５５】
プロセス定義３１０は、限定ではないが名前（例えば、ＲＦＩＤプロセスの名前）、トラッカー（例えば、プロセス実行を追跡するために使用されるトラッカー）ｌｏｇｉｃａｌＳｏｕｒｃｅ（例えば、プロセスの最上位論理ソース）、ｗｒｉｔｅＨｎｄｌｅｒ（例えば、Ｒｆｉｄ  Ｄｅｖｉｃｅｓに対する書込みを扱う構成要素）のような一連のフィールドを含むように、「Ｐｒｏｃｅｓｓ」というタイプの「ｐｒｏｃｅｓｓ」という要素を定義する。「Ｐｒｏｃｅｓｓ」は、ＲＦＩＤプロセスを表す最上位プロセスクラスである。「Ｐｒｏｃｅｓｓ」は、ＲＦＩＤサーバの基礎的な配置可能単位であるということを理解されたい。上記事項は、以下のコードによって示すことができる。
【００５６】
【表１０】
2006072976.tif 000012
【００５７】
上記は、要素「Ｔｒａｃｋｅｒ」「ＬｏｇｉｃａｌＳｏｕｒｃｅ」および「ＷｒｉｔｅＨｎｄｌｅｒ」がメンバーである、「Ｐｒｏｃｅｓｓ」という名称の複合タイプの初期インスタンシエーションを表す。さらに、コードは、要素の名前と、それに関連付けられた関連する「．ｘｓｄ」ストリングを有するタイプを定義する。一度メンバーが「Ｐｒｏｃｅｓｓ」の要素と定義されると、それらメンバー（例えば、「Ｔｒａｃｋｅｒ」、「ＬｏｇｉｃａｌＳｏｕｒｃｅ」および「ＷｒｉｔｅＨａｎｄｌｅｒ」など）をさらに定義することができる。プロセス定義３１０は、以下のコードによって「Ｔｒａｃｋｅｒ」を定義することができ、これによって、ランタイム実行に関連するログの追跡および作成を後に続けることができる。
【００５８】
【表１１】
2006072976.tif 000013
【００５９】
上記のように、要素「Ｔｒａｃｋｅｒ」はトラッカー定義であり、フィールドレベル（例えば、追跡のレベル）とオプション（例えば、追跡に関するオプションの集合）が定義される。
【００６０】
プロセス定義３１０は、「ＰａｒａｍｅｔｅｒＤａｔａ」を含む要素「ＡｒｒａｙＯｆＰａｒａｍｅｔｅｒＤａｔａ」を定義し、「ＰａｒａｍｅｔｅｒＤａｔａ」は名前（例えば、パラメータ名）と値（例えば、ＸＭＬ直列化可能オブジェクト）を含む。「ＡｒｒａｙＯｆＰａｒａｍｅｔｅｒＤａｔａ」はプロセス構成要素のパラメータの集合であり、パラメータはＲＦＩＤ構成要素に関するパラメータである。例えば、「ＰａｒａｍｅｔｅｒＤａｔａ」は、ＲＦＩＤ構成要素に関するパラメータを［名前、値］の対で表す。「ＰａｒａｍｅｔｅｒＤａｔａ」は、定義された名前（例えば、パラメータ名）と値（例えば、ＸＭＬ直列化可能オブジェクト）とを有する。上記事項は、以下のコード例によって実施される。
【００６１】
【表１２】
2006072976.tif 000014
【００６２】
プロセス定義３１０は、複合タイプの名前「ＬｏｇｉｃａｌＳｏｕｒｃｅ」により読み取りソースの反復定義を提供する。「ＬｏｇｉｃａｌＳｏｕｒｃｅ」はすべてのｒｅａｄＳｏｕｒｃｅと、組合せを提供するリーダーとから読み取る。「ＬｏｇｉｃａｌＳｏｕｒｃｅ」はプロセスの最上位の論理ソースであり、このプロセスはツリー状に構成された論理ソースから構成されるということを理解されたい。すなわち、「ＬｏｇｉｃａｌＳｏｕｒｃｅ」は、１つのプロセスを表す論理ソースツリー内の１つのノードである。「ＬｏｇｉｃａｌＳｏｕｒｃｅ」は、そのツリーのルートであり、出力はプロセスのＤａｔａシンクに送信される。
【００６３】
「ＬｏｇｉｃａｌＳｏｕｒｃｅ」は、プロセスの活動状態にあるエンティティであり、他の構成要素をラッピングし、それらを論理的にリンクする。「ＬｏｇｉｃａｌＳｏｕｒｃｅ」は、装置の集合（例えば、リーダーのような装置から構成される）、フィルタおよびアラートに関する規則を含む任意選択のイベントポリシー、任意選択のイベントハンドラおよび追加の論理ソースのような、一組の構成要素を含む。さらに、「ＬｏｇｉｃａｌＳｏｕｒｃｅ」は、タグ読み取りイベントを論理ソースに位置づけるための一組のソースも含む。また、「ＬｏｇｉｃａｌＳｏｕｒｃｅ」は、最後の構成要素の出力と定義された単一出力点も有する。以下のコードは上記態様を示す。
【００６４】
【表１３】
2006072976.tif 000015
【００６５】
上記のコードは、ｉｎｆｒａで示す後述するコードセクションでそれぞれがさらに定義される、メンバー「ｌｏｇｉｃａｌＳｏｕｒｃｅＬｉｓｔ」（例えば、その入力として動作する論理ソースのリスト）、「ｄｅｖｉｃｅＣｏｌｌｅｃｔｉｏｎＬｉｓｔ」（例えば、その入力として動作するリーダーの集合のリスト）および「ＣｏｍｐｏｎｅｎｔＬｉｓｔ」（例えば、構成要素のリスト）を伴う「ＬｏｇｉｃａｌＳｏｕｒｃｅ」を定義する。
【００６６】
プロセス定義３１０は、「ｄｅｖｉｃｅＣｏｌｌｅｃｔｉｏｎＬｉｓｔ」が「ｄｅｖｉｃｅＣｏｌｌｅｃｔｉｏｎｓ」のアレイになるように、複数のリーダーの集合のうちの１つの集合を定義する。「ｄｅｖｉｃｅＲｅａｄｅｒＣｏｌｌｅｃｔｉｏｎ」はストリングのアレイである。各ストリングは装置またはリーダー名であることを理解されたい。以下のコードはこれを示す。
【００６７】
【表１４】
2006072976.tif 000016
【００６８】
「ＡｒｒａｙＯｆＤｅｖｉｃｅＣｏｌｌｅｃｔｉｏｎ」は「ＬｏｇｉｃａｌＳｏｕｒｃｅ」によって使用される。
【００６９】
ＲＦＩＤプロセスに携帯型方式を提供するためにＲＡＭＬスキーマ３１２を生成することを容易にするプロセス定義３１０を続行すると、「ＣｏｍｐｏｎｅｎｔＬｉｓｔ」が定義される。「ＣｏｍｐｏｎｅｎｔＬｉｓｔ」は、フィルタまたはアラートに関するイベントポリシーまたはイベントハンドラであってよい構成要素の集合である。さらに、フィルタおよびアラートポリシーは、論理ソースで実施することができる。例えば、論理ソースに関するアラートは、Ｔａｇ  Ｒｅａｄ  Ｅｖｅｎｔに関するイベント状態アクション（ＥＣＡ）スタイル規則であってよい。別の実施形態では、論理ソースに関するフィルタは、Ｔａｇ  Ｒｅａｄ  Ｅｖｅｎｔをドロップまたは許可する。以下のコードは「ＣｏｍｐｏｎｅｎｔＬｉｓｔ」の一例である。
【００７０】
【表１５】
2006072976.tif 000017
【００７１】
プロセス定義３１０は、論理ソースに対するイベントハンドラである「ＥｖｅｎｔＨａｎｄｌｅｒ」をさらに定義する。すなわち、「ＥｖｅｎｔＨａｎｄｌｅｒ」は、論理ソースから発するイベントを処理するために使用される。「ＥｖｅｎｔＨａｎｄｌｅｒ」は、アセンブリ（例えば、イベントハンドラの．ＮＥＴアセンブリ）、ｃｌａｓｓＮａｍｅ（例えば、イベントハンドラのクラス名）、およびｐａｒａｍｅｔｅｒＬｉｓｔ（例えば、イベントハンドラのパラメータのリスト）のフィールドを含む。上記事項は以下のコードによって示すことができる。
【００７２】
【表１６】
2006072976.tif 000018
【００７３】
プロセス定義３１０は、装置にコマンドを送信すること（通常、これはタグへの書込みを伴う）を扱う「ＷｒｉｔｅＨａｎｄｌｅｒ」をさらに定義する。「ＷｒｉｔｅＨａｎｄｌｅｒ」は、「ＬｏｇｉｃａｌＷｒｉｔｅｒ」ｓと呼ばれる論理レベルで装置を扱うということを理解されたい。「ＷｒｉｔｅＨａｎｄｌｅｒ」が「ＬｏｇｉｃａｌＷｒｉｔｅｒ」ｓの１つまたは複数を扱うので、本発明者らは「ＡｒｒａｙＯｆＬｏｇｉｃａｌＷｒｉｔｅｒ」を有する。これを、以下のコードで示す。
【００７４】
【表１７】
2006072976.tif 000019
【００７５】
サブシステム定義３０８とプロセス定義３１０を生成することにより、ジェネレータ構成要素３０６は、リーダーアプリケーションマークアップ言語（ＲＡＭＬ）スキーマ３１２を作成し、使用する。ＲＡＭＬスキーマ３１２は、ＲＦＩＤアーキテクチャ内でＲＦＩＤプロセスを実行している間にエラーを緩和するために使用することができる。ＲＡＭＬスキーマ３１２は、サーバの状態（例えば、ＲＦＩＤネットワーク、サブシステム）と、ＲＦＩＤプロセスを実行するためにランタイムによって開発され、使用されるプロセスとを表す。さらに、ＲＡＭＬスキーマ３１２は、少なくとも１つのＲＦＩＤプロセスの設定および／または配置を容易にするプロセスの携帯型方式である。ＲＡＭＬスキーマ３１２は、サブシステム定義３０８および／またはプロセス定義３１０を含むことを理解されたい。
【００７６】
図４は、ＲＦＩＤプロセスに携帯型方式を提供するリーダーアプリケーションマークアップ言語（ＲＡＭＬ）スキーマを使用することにより、ＲＦＩＤプロセスを実施することを容易にする、システム４００を示す。ＲＦＩＤアーキテクチャ４０２は、少なくとも１つのＲＦＩＤリーダーと少なくとも１つのＲＦＩＤタグとを含むことができる。ＲＦＩＤアーキテクチャ４０２は物理システムであり、ＲＦＩＤリーダーは、ＲＦＩＤタグを含むアイテムおよび／またはオブジェクトを識別するために、ＲＦＩＤタグ信号を受信する。例えば、製造プラントは、１つ以上の受け入れドックドア、１つ以上の出荷ドックドアにある複数のリーダーから構成され、それらの間で製造プロセスを使用する、ＲＦＩＤアーキテクチャを含むことができる。ＲＦＩＤリーダーは、ＲＦＩＤタグから信号を受信することができ、ＲＦＩＤタグはそのようなタグ付きアイテムの一意の識別を提供する。
【００７７】
システム４００は、ＲＦＩＤプロセスを設定し配置するために携帯型方式を提供するリーダーアプリケーションマークアップ言語（ＲＡＭＬ）スキーマをスキーマ構成要素４０６が使用することのできるような環境内で、エンティティを特定するＲＦＩＤアーキテクチャ４０２と通信する、設定構成要素４０４をさらに含む。設定構成要素４０４は、例えば、リーダーおよび関連付けられたデータの発見、リーダーの構成、ＲＦＩＤプロセス特有リーダー設定の保存、リーダー関連データなどを提供する。ＲＦＩＤアーキテクチャ４０２を分析することにより（例えば、サーバ内でのＲＦＩＤリーダーを特定すること、およびそのようなリーダーを構成すること）、スキーマ構成要素４０６は、分析されたＲＦＩＤデータに基づいてＲＦＩＤプロセスを実行することを容易にする、サブシステム定義および／またはプロセス定義を含むＲＡＭＬスキーマを作成し、使用することができる。
【００７８】
例えば、設定構成要素４０４は、ＲＦＩＤプロセス定義の一部として使用される前にＲＦＩＤリーダーを発見することができる。サーバ内でＲＦＩＤリーダーを発見することにより、ＲＡＭＬスキーマは、サーバの状態を表すために利用することができる。さらに、サーバの状態が表された後で、ＲＡＭＬスキーマは、ランタイムによって開発中および使用中のプロセスを表すために、さらに使用することができる。例えば、ＲＦＩＤリーダーは、以下のコードのサンプルによって発見することができる。
【００７９】
【表１８】
2006072976.tif 000020
【００８０】
一度リーダーが発見されると、設定構成要素４０４は、少なくとも特定のＲＦＩＤリーダー設定に基づいて、発見されたＲＦＩＤリーダーを構成し、保存することができる。設定構成要素４０４は、発見されたＲＦＩＤリーダーおよび関連付けられた構成を、例えばデータストア４０８に記憶することができる。ＲＦＩＤリーダーは、構成され、ｅＰＣ準拠リーダーであり、粗類似のリーダーの集合に関連付けられることを理解されたい。例えば、続行コードは、以下に示すように、発見されたＲＦＩＤリーダーを構成し、記憶するために実施することができる。
【００８１】
【表１９】
2006072976.tif 000021
【００８２】
上記のサンプルコードは、サーバネットワーク（例えば、ユニバース、サブシステム）に物理リーダーのリストを作成し、追加する。一度このリストが生成されると、物理ＲＦＩＤリーダーが構成される。上記の実施形態では、「ライター」装置に関する暗黙的プロパティプロファイルが適用され、データストア４０８に記憶される（例えば、上記のサンプルコードは、ｓｅｒｖｅｒＳｔｏｒｅのようなデータストアを参照する）。
【００８３】
設定構成要素４０４は、論理リーダーの集合をさらに作成することができる。ＲＦＩＤリーダー上で呼び起こされたプロパティは、スキーマ構成要素４０６によって使用されるＲＡＭＬスキーマに少なくとも基づいているということを理解されたい。一度作成されると、設定構成要素４０４は、物理ＲＦＩＤリーダーを論理リーダーの集合に追加し、それに関連付けられたプロパティを指定することができる。
【００８４】
【表２０】
2006072976.tif 000022
【００８５】
さらに、設定構成要素４０４は、論理リーダーの集合内の物理ＲＦＩＤリーダーを、他の構成情報（例えば、円滑化、データ獲得パラメータなど）で構成する。構成で使用されるプロパティの名前と値は、特定のリーダータイプにより異なる（例えば、以下のプロパティはリーダー依存である）ことを理解されたい。設定構成要素４０４は、論理リーダーの集合および関連するプロパティをデータストア４０８に記憶する。上記事項は、以下のコードのサンプルによって実施することができる。
【００８６】
【表２１】
2006072976.tif 000023
【００８７】
スキーマ構成要素４０６は、発見されたリーダーおよび構成設定を、設定構成要素４０４および／またはデータストア４０８を介して受信することができる。スキーマ構成要素４０６は、リーダーアプリケーションマークアップ言語（ＲＡＭＬ）スキーマを使用することができ、ＲＦＩＤプロセスは、１つ以上のＲＦＩＤランタイムサービス４１０のための使用および設定を容易する携帯型方式である。ＲＡＭＬスキーマは、サブシステム定義（例えば、ＲＦＩＤネットワーク定義）および／またはプロセス定義から構成される。サブシステム定義は、プロセスからは独立したサーバ内のすべてのエンティティに関する定義を含む。すなわち、サブシステム定義（例えば、ＲＦＩＤネットワーク定義、ユニバース）は、サーバの状態と、プロセスがそこで構築されるエンティティとを定義する。さらに、プロセス定義は、ＲＦＩＤプロセス定義である。プロセス定義は、プロセス関連エンティティと相互関係とを含む。ＲＡＭＬスキーマは、サーバの状態と、ＲＦＩＤランタイムサービス４１０によって開発され、使用されるプロセスとを表すために使用される。
【００８８】
ＲＡＭＬスキーマは、少なくとも１つのＲＦＩＤプロセスを実行することを容易にするために、さらに使用することができる。複数のプロセスをＲＦＩＤランタイムサービス４１０として参照することができることを理解されたい。例えば、「出荷プロセス」は、ＲＡＭＬスキーマによって表すことのできるプロセスである。「出荷プロセス」は、タグ読み取りを実行するために共同し、タグ読み取りをフィルタリングし、タグ読み取りを拡充し、アラートを評価し、関連データをホストアプリケーションのシンクに記憶する、様々なドックドアにある複数のリーダーを表す。ドックドアは、複数のタグリーダーを含むことができ、１つのソースタグの複数の読み取りを提供することができる。このような複数の読み取りを読み取り、フィルタリングすることができる。例えば、同一ＩＤの複数の読み取りがフィルタ除去（例えば、ドロップ）される。さらに、例えばソースタグの到着または発信をアラートするように、タグ読み取りにアラートを関連付けることができる。設定構成要素４０４からの特定は、ＲＦＩＤアーキテクチャ４０２のＲＦＩＤプロセスに携帯型方式を可能にするＲＡＭＬスキーマを生成するために、スキーマ構成要素４０６により使用することができる。
【００８９】
さらに別の実施形態では、少なくとも位置に基づいて読み取り、書き込むようにリーダーが構成される「製造プロセス」を、ＲＡＭＬスキーマによって表すことができる。「製造プロセス」は、限定はしないが、フィルタリング、拡充、アラート、記憶などのような「出荷プロセス」の機能と類似の機能を、それぞれの位置で実行することができ、スキーマ構成要素４０６によって作成されたスキーマが、ＲＦＩＤアーキテクチャ４０２で実施されるべきＲＦＩＤプロセスに携帯型方式を提供することを理解されたい。
【００９０】
図５は、ＲＦＩＤアーキテクチャ５０２内で実施されるべきＲＦＩＤプロセスに携帯型方式を提供する、リーダーアプリケーションマークアップ言語（ＲＡＭＬ）スキーマを使用することにより、ＲＦＩＤプロセスを実行することを容易にする、システム５００を示す。ＲＦＩＤアーキテクチャ５０２は、複数のサーバ（例えば、サブシステム、ＲＦＩＤネットワーク）を含むことができ、１つのサーバは、１つのサーバで発見され、および／または構成されたリーダーの組である。簡約化のために、ＲＦＩＤアーキテクチャ５０２は、第１の集合５０４が示される、リーダーの２つの集合を含む単一ユニバースを示す。例えば、ＲＦＩＤサブシステムは、関与するエンティティが粗類似のプロセスに関連付けられる位置であってよい。一実施形態では、サブシステムは、関連付けられたＲＦＩＤリーダーを有する複数の受信および／または出荷ドックドアを含む倉庫であってよい。したがって、第１の位置５０４は、指定されたサブシステム内のリーダーの集合であってよい。リーダーの複数の集合を実施することができるということを理解されたい。ＲＦＩＤリーダーの１つの集合内で、ＲＦＩＤリーダー５０６は、少なくとも１つのＲＦＩＤタグ５０８を含む商品パレット５１０から１つのＲＦＩＤ信号５１２を受信することができる。パレットおよび／または商品には、少なくともユーザ指定（例えば、タグ付き単一パレット、タグ付き個別商品、タグ付きパレットおよび商品など）に基づいてタグ付けすることができるということを理解されたい。
【００９１】
システム５００は、サーバ内のＲＦＩＤリーダーを発見するために、ＲＦＩＤアーキテクチャ５１２を分析する設定構成要素５１４をさらに含む。一度発見されると、設定構成要素５１４は、発見されたＲＦＩＤリーダーをさらに構成し、構成されたＲＦＩＤリーダーをメモリ（図示せず）に保存する。設定構成要素５１４は、リーダーおよび関連付けられたデータの発見、リーダーの構成、ＲＦＩＤプロセス特有のリーダー設定の保存、リーダー関連データなどを提供するということを理解されたい。サーバ内のＲＦＩＤリーダーを特定し、そのリーダーを構成することにより、ＲＡＭＬ構成要素５１６は、ＲＦＩＤプロセスを実行することを容易にするユニバース定義および／またはプロセス定義を含む、ＲＡＭＬスキーマを作成し、使用することができる。ＲＦＩＤアーキテクチャ５０２を分析する際、ＲＡＭＬ構成要素５１６は、少なくとも一部にはＲＦＩＤアーキテクチャ５０２の分析に基づいてＲＡＭＬスキーマを作成する。ＲＡＭＬ構成要素５１６によって作成されたＲＡＭＬスキーマは、サーバの状態（例えば、ＲＦＩＤサブシステム、ＲＦＩＤネットワーク）と、ランタイムにより開発され、使用されるプロセスとを表すことを容易にする。ＲＡＭＬスキーマは、データストア５１８に記憶することができ、これによってＲＦＩＤプロセスに携帯型のアクセス可能な方式が提供される。ＲＦＩＤランタイム構成要素５２０がＲＦＩＤプロセスを実施するためにＲＡＭＬスキーマを使用するまで、データストア５１８はそのＲＡＭＬスキーマを記憶するということを理解されたい。ＲＦＩＤランタイム構成要素５２０は、ＲＦＩＤプロセスがＲＦＩＤアーキテクチャ５０２内で容易に配置され、設定されるように、ＲＡＭＬスキーマを携帯型方式として使用する。
【００９２】
図６〜８は、本発明による方法を示す。説明を簡単にするために、この方法を一連の動作として図示し説明する。本発明は、本明細書に記載の動作によって、および／またはそれら動作の順番によって制限されるものではなく、例えば動作は様々な順番で、および／または同時に行うことができ、また、本明細書に提示し、記載しない他の動作と共に行うことができるということを理解し、認識されたい。さらに、本発明による方法を実施するには、本明細書に記載した動作のすべてが必要となるわけではない。また、当業者ならば、この方法は、代わりに、状態図またはイベントによって一連の反復した状態として表すことができることを理解し、認識することができるだろう。
【００９３】
図６は、携帯型方式を提供するリーダーアプリケーションマークアップ言語（ＲＡＭＬ）スキーマを使用することによって、ＲＦＩＤアーキテクチャ内でＲＦＩＤプロセスを実行することを容易にする、方法６００を示す。例えば、ＲＦＩＤアーキテクチャは、少なくとも１つのＲＦＩＤリーダーおよび関連付けられた１つ以上のＲＦＩＤタグを含むシステムであってよい。６０２で、ＲＦＩＤアーキテクチャに関連するＲＦＩＤデータを受信することができる。ＲＦＩＤデータは、限定ではないが、サーバ内のＲＦＩＤリーダー、それに関連付けられた構成設定、および／またはＲＦＩＤアーキテクチャ関連データであってよい。６０４で、リーダーアプリケーションマークアップ言語（ＲＡＭＬ）スキーマは、少なくとも受信ＲＦＩＤデータに基づいて生成することができる。ＲＡＭＬスキーマは、設定され、配置されるためにＲＦＩＤプロセスを使用することのできる携帯型方式を提供するために、部分集合定義（例えば、サーバ状態およびサーバ内のエンティティに関する定義を含む）とプロセス定義（例えば、プロセス関連エンティティおよび相互関係を含む）とを含めて作成される。次に６０６で、ＲＦＩＤプロセスを実行することを容易にするために、ＲＡＭＬスキーマが使用される。ＲＦＩＤアーキテクチャ内でＲＦＩＤプロセスを設定し、配置するために、ＲＡＭＬスキーマを使用することができる。ＲＡＭＬスキーマは、生成時に、将来の使用または動的な使用に備えて記憶しておくことができるということを理解されたい。しかし、ＲＡＭＬスキーマは、少なくとも一部には携帯型方式に基づいてＲＦＩＤプロセスを実行することを容易にすることのできる、ユニバース定義とプロセス定義とを含む。
【００９４】
次に図７を参照すると、携帯型方式を提供するリーダーアプリケーションマークアップ言語（ＲＡＭＬ）スキーマを使用することによって、ＲＦＩＤアーキテクチャ内でＲＦＩＤプロセスを実行することを容易にする、方法７００が示されている。７０２で、ＲＦＩＤアーキテクチャからＲＦＩＤデータを受信することができる。このようなＲＦＩＤデータは、限定ではないが、発見されたリーダーおよび／または関連付けられたデータ、リーダーの構成、保存されたＲＦＩＤプロセス特有のリーダー設定、リーダー関連データなどであってよいということを理解されたい。ＲＦＩＤデータは、限定ではないが、インターネット接続、ＬＡＮ、および／またはＲＦＩＤリーダーおよびホストプロトコルから受信することができるということを理解されたい。
【００９５】
次に７０４で、少なくともＲＦＩＤアーキテクチャからの受信ＲＦＩＤデータに基づいて、サブシステム定義が生成される。このサブシステム定義は、いかなるプロセスからも独立した、サーバ内のエンティティに関する定義を含む。このサブシステム定義は、サーバ状態と、プロセスが構築されるエンティティとを定義する。例えば、サブシステム定義は、名前、ＲｅａｄｅｒＣｏｌｌｅｃｔｉｏｎＬｉｓｔ、ｒｅａｄｅｒＬｉｓｔ、およびｐｒｏｃｅｓｓＬｉｓｔというメンバーを有する「ｄｅｖｉｃｅＣｏｎｆｉｇｕｒａｔｉｏｎ」を含むことができる。サブシステム定義に適切な構造を提供するために、「ｄｅｖｉｃｅＣｏｎｆｉｇｕｒａｔｉｏｎ」内の各メンバーをさらに定義することができるということを理解されたい。したがって、サブシステム（例えば、ＲＦＩＤネットワーク、サーバ内の、発見され、および／または構成されたリーダーの組）関連データ（例えば、リーダーの集合、構成、名前など）、ＲＦＩＤリーダーデータ（例えば、転送、構成、名前、参照、リーダータイプ、リーダー設定）、プロパティ（例えば、ＲＦＩＤリーダーに適用されるべきプロパティ、プロパティの名前、プロパティのリスト）、およびプロセス（例えば、ビジネス論理を使用するためのデータ、プロセスのリスト、プロセスへの参照を含む）をさらに定義し、要素に関連付けることができる。
【００９６】
７０６で、少なくともＲＦＩＤアーキテクチャからのＲＦＩＤデータに基づいて、プロセス定義が生成される。プロセス定義は、すべてのプロセス関連エンティティと相互関係とを含む。プロセス定義は、サブシステムの最上部に構築されるプロセスを指定する。例えば、プロセス定義は、名前、トラッカー、セキュリティ、ｌｏｇｉｃａｌＳｏｕｒｃｅ、およびｄｅｔａＳｉｎｋＬｉｓｔというメンバーを有する「Ｐｒｏｃｅｓｓ」を含むことができる。プロセス定義に適切な構造を提供するために、「Ｐｒｏｃｅｓｓ」内の各メンバーをさらに定義することができるということを理解されたい。したがって、例えばｌｏｇｉｃａｌＳｏｕｒｃｅに、例えば論理ソースリスト、リーダー集合リスト、フィルタリスト（および関連付けられたフィルタ）、アラートリスト（および関連付けられたアラート）およびイベントハンドラによりさらにポピュレートし、および／または定義することができる。
【００９７】
一度サブシステム定義およびプロセス定義が生成されると、７０８で携帯型方式を提供することによりＲＦＩＤアーキテクチャ内のＲＦＩＤプロセスを実行することを容易にするために、リーダーアプリケーションマークアップ言語（ＲＡＭＬ）スキーマを使用することができる。ＲＡＭＬスキーマは、サブシステム定義および／またはプロセス定義を含むことができるということを理解されたい。一度ＲＡＭＬスキーマが、サブシステム定義および／またはプロセス定義を含むように構成／生成されると、７１０でＲＦＩＤアーキテクチャ内のＲＦＩＤプロセスおよび／またはサービスの設定および配置に携帯型方式を提供するために、そのＲＡＭＬスキーマをデータストアに記憶することができる。ＲＡＭＬスキーマを、ＲＦＩＤプロセスおよび／またはサービスを使用するシステムにアクセス可能なメモリに記憶することができる。
【００９８】
図８は、携帯型方式を提供するリーダーアプリケーションマークアップ言語（ＲＡＭＬ）スキーマを使用することによって、ＲＦＩＤアーキテクチャ内でＲＦＩＤプロセスを実行することを容易にする、方法８００を示す。８０２で、ＲＦＩＤリーダーが発見され、構成され、記憶される。ＲＦＩＤタグを読み取る少なくとも１つのＲＦＩＤリーダーを含めて、ＲＦＩＤリーダーをＲＦＩＤアーキテクチャに関連付けることができる。発見され、構成されたＲＦＩＤリーダーを、例えばメモリに記憶することができる。この情報を、ＲＦＩＤデータと呼ぶことができる。さらに、このメモリは、揮発性または不揮発性メモリであってよく、また揮発性および不揮発性メモリの両方を含むことができるということを理解されたい。次に８０４で、記憶された情報（例えば、ＲＦＩＤデータ）にアクセスすることができ、これによって８０６では、少なくとも記憶されたＲＦＩＤデータに基づいてリーダーアプリケーションマークアップ言語（ＲＡＭＬ）スキーマを生成することができる。ＲＡＭＬスキーマは、サブシステム定義および／またはプロセス定義を含むことができる。さらに、ＲＡＭＬスキーマはデータストア（例えば、メモリ）に記憶することができ、これによってＲＦＩＤプロセスを設定し、かつ配置することのできる携帯型方式が提供される。次に８１０で、ＲＦＩＤプロセスを設定し、および／または配置するために、ＲＡＭＬスキーマを使用することができる（例えば、送信する、アップロードする、アクセスする、実行する、ダウンロードするなど）。
【００９９】
本発明の様々な態様を実施に付加的な状況を提供するために、図９〜１０と以下の説明は、本発明の様々な態様を実施することのできる適切なコンピューティング環境の簡潔で一般的な説明を提供することを意図する。上記では、本発明を、ローカルコンピュータおよび／または遠隔コンピュータで実行されるコンピュータプログラムのコンピュータ実行可能命令の一般的な状況で説明したが、当業者には、本発明は、他のプログラムモジュールとの組合せによっても実施することができることが理解されよう。一般に、プログラムモジュールは、特定のタスクを実行し、および／または特定の抽象データタイプを実施する、ルーチン、プログラム、構成要素、データ構造などを含む。
【０１００】
さらに、当業者には、本発明の方法は、それぞれが１つまたは複数の関連付けられた装置と動作可能に通信することのできる、単一プロセッサまたはマルチプロセッサコンピュータシステム、ミニコンピュータ、メインフレームコンピュータ、並びにパーソナルコンピュータ、ハンドヘルドコンピューティングデバイス、マイクロプロセッサベースの、および／または書き換え可能な家庭用電化製品などを含めて、他のコンピュータシステム構成によって実施することができることも理解されよう。説明した本発明の態様は、通信ネットワークを介してリンクされた遠隔処理装置によって特定のタスクが実行される、分散型コンピューティング環境で実施することもできる。しかし、本発明の態様のすべてではないにしてもその一部は、スタンドアロンコンピュータで実施することができる。分散型コンピューティング環境では、プログラムモジュールをローカルおよび／または遠隔メモリ記憶装置に置くことができる。
【０１０１】
図９は、本発明が対話することのできるサンプルコンピューティング環境９００の略図である。システム９００は、１つまたは複数のクライアント９１０を含む。この１つ以上のクライアント９１０は、ハードウェアおよび／またはソフトウェア（例えば、スレッド、プロセス、コンピューティングデバイス）であってよい。システム９００は、１つまたは複数のサーバ９２０も含む。この１つ以上のサーバ９２０は、ハードウェアおよび／またはソフトウェア（例えば、スレッド、プロセス、コンピューティングデバイス）であってよい。サーバ９２０は、本発明を使用することにより変形を実行するために、スレッドを収納することができる。
【０１０２】
クライアント９１０とサーバ９２０の間の１つの可能な通信は、複数のコンピュータプロセス間で送信されるように構成されたデータパケット形式であってよい。システム９００は、１つ以上のクライアント９１０と１つ以上のサーバ９２０の間の通信を容易にするために使用することのできる、通信フレームワーク９４０を含む。１つ以上のクライアント９１０は、その１つ以上のクライアント９１０に対してローカルに情報を記憶するために使用することのできる、１つまたは複数のクライアントデータストア９５０に動作可能に接続される。同様に、１つ以上のサーバ９２０は、そのサーバ９４０に対してローカルに情報を記憶するために使用することのできる、１つまたは複数のサーバデータストア９３０に動作可能に接続される。
【０１０３】
図１０を参照すると、本発明の様々な態様を実施するための環境例１０００は、コンピュータ１０１２を含む。コンピュータ１０１２は、処理装置１０１４、システムメモリ１０１６、およびシステムバス１０１８を含む。システムバス１０１８は、限定ではないがシステムメモリ１０１６を含めてシステム構成要素を、処理装置１０１４に連結する。処理装置１０１４は、様々な使用可能なプロセッサのどれであってもよい。デュアルマイクロプロセッサおよび他のマルチプロセッサアーキテクチャも、処理装置１０１４として使用することができる。
【０１０４】
システムバス１０１８は、メモリバスまたはメモリコントローラ、周辺バスまたは外部バス、および／または、限定ではないが、業界標準アーキテクチャ（ＩＳＡ）、マイクロチャネルアーキテクチャ（ＭＳＡ）、拡張ＩＳＡ（ＥＩＳＡ）、インテリジェントドライブエレクトロニクス（ＩＤＥ）、ＶＥＳＡローカルバス（ＶＬＢ）、周辺装置相互接続（ＰＣＩ）、カードバス、ユニバーサルシリアルバス（ＵＳＢ）、高性能グラフィックポート（ＡＧＰ）、パーソナルコンピュータメモリカード国際協会バス（ＰＣＭＣＩＡ）、Ｆｉｒｅｗｉｒｅ（ＩＥＥＥ  １３９４）、および小型コンピュータシステムインターフェース（ＳＣＳＩ）を含めて、いかなる使用可能なバスアーキテクチャの種類でも使用するローカルバスを含めて、各種バス構造のどれであってもよい。
【０１０５】
システムメモリ１０１６は、揮発性メモリ１０２０および不揮発メモリ１０２２を含む。基本入出力システム（ＢＩＯＳ）は、起動時などに、コンピュータ１０１２内の素子間で情報を転送するための基本ルーチンを含んでおり、不揮発性メモリ１０２２に記憶される。限定ではなく、一例として、不揮発性メモリ１０２２は、読み出し専用メモリ（ＲＯＭ）、書込み可能ＲＯＭ（ＰＲＯＭ）、電子的書込み可能ＲＯＭ（ＥＰＲＯＭ）、電子的消去可能ＲＯＭ（ＥＥＰＲＯＭ）またはフラッシュメモリを含むことができる。揮発性メモリ１０２０は、外部キャッシュメモリとして動作するランダムアクセスメモリ（ＲＡＭ）を含む。限定ではなく説明として、ＲＡＭは、シンクロナスＲＡＭ（ＳＲＡＭ）、ダイナミックＲＡＭ（ＤＲＡＭ）、シンクロナスＤＲＡＭ（ＳＤＲＡＭ）、ダブルデータレートＳＤＲＡＭ（ＤＤＲ  ＳＤＲＡＭ）、拡張ＳＤＲＡＭ（ＥＳＤＲＡＭ）、Ｓｙｎｃｈｌｉｎｋ  ＤＲＡＭ（ＳＬＤＲＡＭ）、およびダイレクトＲａｍｂｕｓ  ＲＡＭ（ＤＲＲＡＭ）のような多くの方式で使用可能である。
【０１０６】
コンピュータ１０１２は、取り外し可能／取り外し不可能な揮発性／不揮発性コンピュータ記憶媒体も含む。図１０は、例えばディスク記憶１０２４を示す。ディスク記憶１０２４は、限定ではないが、磁気ディスクドライブ、フロッピー（登録商標）ディスクドライブ、テープドライブ、Ｊａｚドライブ、Ｚｉｐドライブ、ＬＳ−１００ドライブ、フラッシュメモリカードまたはメモリスティックのような装置を含む。さらに、ディスク記憶１０２４は、限定ではないが、コンパクトディスクＲＯＭ装置（ＣＤ−ＲＯＭ）、ＣＤ記録可能ドライブ（ＣＤ−Ｒドライブ）、ＣＤ書換え可能ドライブ（ＣＤ−ＲＷドライブ）またはデジタル多用途ディスクＲＯＭドライブ（ＤＶＤ−ＲＯＭ）のような光ディスクドライブを含む他の記憶媒体とは別個に、またはそれらと組み合わせて記憶媒体を含むことができる。ディスク記憶装置１０２４をシステムバス１０１８に接続することを容易にするためには、通常、インターフェース１０２６のような取り外し可能または取り外し不可能なインターフェースが使用される。
【０１０７】
図１０は、ユーザと、適切な動作環境１０００で説明した基本コンピュータ資源との間で媒介として機能するソフトウェアを示すということを理解されたい。このようなソフトウェアは、オペレーティングシステム１０２８を含む。ディスク記憶１０２４に記憶することのできるオペレーティングシステム１０２８は、コンピュータシステム１０１２の資源を制御し、割り当てるように動作する。システムアプリケーション１０３０は、システムメモリ１０１６またはディスク記憶１０２４に記憶されたプログラムモジュール１０３２およびプログラムデータ１０３４により、オペレーティングシステム１０２８による資源管理を活用する。本発明は、様々なオペレーティングシステムまたはオペレーティングシステムの組合せによって実施することができるということを理解されたい。
【０１０８】
ユーザは、１つ以上の入力装置１０３６を介してコマンドまたは情報をコンピュータ１０１２に入力する。入力装置１０３６は、限定ではないが、マウス、トラックボール、スタイラス、タッチパッド、キーボード、マイクロフォン、ジョイスティック、ゲームパッド、衛星放送受信用アンテナ、スキャナ、ＴＶチューナカード、デジタルカメラ、デジタルビデオカメラ、ウェブカメラなどのようなポインティングデバイスを含む。これらおよび他の入力装置は、１つ以上のインターフェースポート１０３８を介してシステムバス１０１８により処理装置１０１４に接続する。１つ以上のインターフェースポート１０３８は、例えばシリアルポート、パラレルポート、ゲームポートおよびユニバーサルシリアルバス（ＵＳＢ）を含む。１つ以上の出力装置１０４０は、１つ以上の入力装置１０３６と同じタイプのポートの一部を使用する。したがって、コンピュータ１０１２に入力を提供し、またコンピュータ１０１２から出力装置１０４０に情報を出力するために、例えばＵＳＢポートを使用することができる。他にも出力装置１０４０はあるが、特別なアダプタを必要とするモニタ、スピーカおよびプリンタのようないくつかの出力装置１０４０があることを示すために、出力アダプタ１０４２が提供される。出力アダプタ１０４２は、限定ではなく説明のために、出力装置１０４０とシステムバス１０１８の間に接続手段を提供する、ビデオおよびサウンドカードを含む。他の装置および／または装置のシステムは、１つ以上の遠隔コンピュータ１０４４のように入力および出力機能の両方を提供するということに留意されたい。
【０１０９】
コンピュータ１０１２は、１つ以上の遠隔コンピュータ１０４４のような、１つまたは複数の遠隔コンピュータに対する論理接続を使用するネットワーク環境で動作することができる。この１つ以上の遠隔コンピュータ１０４４は、パーソナルコンピュータ、サーバ、ルータ、ネットワークＰＣ、ワークステーション、マイクロプロセッサベースの機器、ピアデバイスまたは他の共通ネットワークノードなどであってよく、通常は、コンピュータ１０１２に関して示した要素の多くまたはすべてを含む。簡潔にするために、１つ以上の遠隔コンピュータ１０４４と共にメモリストレージデバイス１０４６だけを示した。１つ以上の遠隔コンピュータ１０４４は、ネットワークインターフェース１０４８を介してコンピュータ１０１２に論理的に接続され、次いで通信接続１０５０を介して物理的に接続される。ネットワークインターフェース１０４８は、ローカルエリアネットワーク（ＬＡＮ）および広域ネットワーク（ＷＡＮ）のような有線および／または無線通信ネットワークを含む。ＬＡＮ技術は、ファイバ分散データインターフェース（ＦＤＤＩ）、銅配線データインターフェース（ＣＤＤＩ）、Ｅｔｈｅｒｎｅｔ（登録商標）、トークンリングなどを含む。ＷＡＮ技術は、限定ではないが、ポイントツーポイントリンク、総合デジタル通信網（ＩＳＤＮ）およびその変形のような回線交換網、パケット交換網、およびデジタル加入者回線（ＤＳＬ）を含む。
【０１１０】
１つ以上の通信接続１０５０は、ネットワークインターフェース１０４８をバス１０１８に接続するために使用されるハードウェア／ソフトウェアに関する。通信接続１０５０は、説明を明瞭にするためにコンピュータ１０１２内部にあるように示したが、コンピュータ１０１２の外部にあってもよい。ネットワークインターフェース１０４８に対する接続のために必須のハードウェア／ソフトウェアは、一例として、正規の電話級のモデムを含むモデム、ケーブルモデムおよびＤＳＬモデム、ＩＳＤＮアダプタ、およびＥｔｈｅｒｎｅｔ（登録商標）カードのような内部および外部技術を含む。
【０１１１】
上記で説明したものは、本発明の例を含んでいる。当然ながら、本発明を説明するために、構成要素または方法のすべての想定され得る組合せを説明することは不可能であるが、当業者ならば、本発明の多くのさらなる組合せおよび並べ替えが可能であることを理解するだろう。したがって、本発明は、首記の特許請求の範囲の趣旨および範囲に含まれる、すべてのそのような代替形態、修正形態、および変形形態を含むことを意図する。
【０１１２】
特に、また上記の構成要素、装置、回路、システムなどによって実行される様々な機能に関して、そのような構成要素を説明するために使用される用語（「手段」への言及を含めて）は、特に指摘がない限り、たとえ本発明の態様例の本明細書で示した機能を実行する、開示された構造に構造上は等価でなくても、記載した構成要素の指定された機能（例えば、等価の機能）を実行するいかなる構成要素にでも対応することを意図する。この点で、本発明は、本発明の様々な方法の動作および／またはイベントを実行するためのコンピュータ実行可能命令を有する、システム並びにコンピュータ可読媒体を含むことも理解されたい。
【０１１３】
さらに、複数の実施態様のうちの１つだけに関して本発明の具体的な特徴を開示したが、これらの特徴は、いかなる所与の、または具体的な用途に対して所望され、有利となる他の実施態様の１つまたは複数の他の特徴と組み合わせることができる。さらに、用語「含む（ｉｎｃｌｕｄｅ）」および「含んでいる（ｉｎｃｌｕｄｉｎｇ）」およびその変形は、詳細な説明または特許請求の範囲で使用される限り、用語「含んでいる（ｃｏｍｐｒｉｓｉｎｇ）」と同様の方法による包含を意図するものである。
【図面の簡単な説明】
【０１１４】
【図１】スキーマを作成し、および／または使用することによってＲＦＩＤプロセスを実行することを容易にする、システム例のブロック図である。
【図２】スキーマを作成し、および／または使用し、そのスキーマをデータストアに記憶することによってＲＦＩＤプロセスを実行することを容易にする、システム例のブロック図である。
【図３】サブシステム定義（例えば、ＲＦＩＤネットワーク定義）とプロセス定義とを含むスキーマを作成し、および／または使用することによってＲＦＩＤプロセスを実行することを容易にする、システム例のブロック図である。
【図４】スキーマを作成し、および／または使用することによってＲＦＩＤプロセスを実行することを容易にする、システム例のブロック図である。
【図５】スキーマを作成し、および／または使用することによってＲＦＩＤプロセスを実行することを容易にする、システム例のブロック図である。
【図６】リーダーアプリケーションマークアップ言語（ＲＡＭＬ）スキーマを使用することによってＲＦＩＤアーキテクチャ内でＲＦＩＤプロセスを実行することを容易にする、方法例の流れ図である。
【図７】リーダーアプリケーションマークアップ言語（ＲＡＭＬ）スキーマを使用することによってＲＦＩＤアーキテクチャ内でＲＦＩＤプロセスを実行することを容易にする、方法例の流れ図である。
【図８】リーダーアプリケーションマークアップ言語（ＲＡＭＬ）スキーマを使用することによってＲＦＩＤアーキテクチャ内でＲＦＩＤプロセスを実行することを容易にする、方法例の流れ図である。
【図９】本発明の新しい態様を使用することのできる、ネットワーク接続環境例を示す図である。
【図１０】本発明の新しい態様を使用することのできる、動作環境例を示す図である。
【符号の説明】
【０１１５】
１０１４  処理装置
１０１６  システムメモリ
１０１８  バス
１０２０  揮発性
１０２２  不揮発性
１０２４  ディスク記憶
１０２６  インターフェース
１０２８  オペレーティングシステム
１０３０  アプリケーション
１０３２  モジュール
１０３４  データ
１０３６  １つ以上の入力装置
１０３８  １つ以上のインターフェースポート
１０４０  １つ以上の出力装置
１０４２  １つ以上の出力アダプタ
１０４４  １つ以上の遠隔コンピュータ
１０４６  メモリストレージ
１０４８  ネットワークインターフェース
１０５０  １つ以上の通信接続
【図１】
2006072976.tif 000024
【図２】
2006072976.tif 000025
【図３】
2006072976.tif 000026
【図４】
2006072976.tif 000027
【図５】
2006072976.tif 000028
【図６】
2006072976.tif 000029
【図７】
2006072976.tif 000030
【図８】
2006072976.tif 000031
【図９】
2006072976.tif 000032
【図１０】
2006072976.tif 000033