Context DataObject は、コンテキスト情報の格納に使用します。
場合によっては、Virtual member manager クライアント・アプリケーションが、Virtual member manager とコンテキスト情報をやり取りする必要があります。 例えば、Person を作成するときには、クライアント・アプリケーションが、その個人をどのレルムの下に作成するかを指定しなければならないことがあります。 レルム自身は個人データの一部ではありません。 他の例として、Virtual member manager が、IP アドレスの判別のために、 クライアント・アプリケーションに対して HTTPServletRequest オブジェクトを渡すように要求することがあります。 Context DataObject は、このようなコンテキスト情報の格納に使用されます。
クライアント・アプリケーションは、Virtual member manager にとって不明のキーを使用して、Virtual member manager に任意のデータを渡すことがあります。 このため、Context データ・オブジェクトはオブジェクト・マッピングに対して任意のキーをサポートします。
<xsd:complexType name="Context">
<xsd:sequence>
<xsd:element maxOccurs="1" minOccurs="1" name="key" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="1" name="value" type="xsd:anySimpleType"/>
</xsd:sequence>
</xsd:complexType>
<wim:contexts>
<wim:key>Realm</wim:key>
<wim:value>realmA</wim:value>
</wim:contexts>