Skip to main content

iKnow Web サービス

Important:

インターシステムズは、InterSystems IRIS® 自然言語処理 (NLP) を非推奨Opens in a new tabにしました。インターシステムズ製品の今後のバージョンから削除される可能性があります。以下のドキュメントは、既存ユーザのみに向けたリファレンスとしています。代替のソリューションを見いだすためのサポートを必要とする既存ユーザはインターシステムズのサポート窓口Opens in a new tabにお問い合わせください。

%iKnow パッケージは、NLP クエリを実行する Web サービス・クラスを提供します。この章では、これらのクラスの概要と使用法を説明します。以下のトピックについて説明します。

Note:

InterSystems IRIS では、Web サービスは InterSystems IRIS Web アプリケーション内で実行されます。その Web アプリケーションは、ユーザが選択した Web サーバ (管理ポータルを処理するのと同じ Web サーバ) により処理されます。

利用可能な Web サービス

NLP は以下の Web サービス・クラスを提供します。

%iKnow.Queries パッケージには、これらのクラスがコンパイルされたときにコンパイラによって生成されたクラスも含まれます。例えば、コンパイラはクラス %iKnow.Queries.CcWSAPIOpens in a new tab をコンパイルしたときに、%iKnow.Queries.CcWSAPIOpens in a new tab パッケージにクラスを生成しています。生成されたこれらのクラスは、直接使用するためのものではありません。

NLP Web サービスの使用法

Web サービスを使用するには、それと通信する Web クライアントを作成して使用します。NLP Web サービスの場合も、他の Web サービスの場合と同じ手順でこれを行います。

  1. Web サービスと通信できる Web クライアントを作成します。通常、これを行うには、クライアント・テクノロジが提供するツールを使用して Web クライアントを生成し、Web サービスの WSDL を入力として提供します。このプロセスによって、一連のクライアント・クラスが生成されます。

    InterSystems IRIS® データ・プラットフォーム Web サービスの場合、WSDL は特定の URL で WSDL を取得できます。URL の形式は以下のとおりです。<baseURL> はインスタンスのベース URL です。

    https://<baseurl>/csp/namespace/web_service_class.cls?WSDL
    

    以下はその説明です。

    • namespace はネームスペース名です。

    • web_service_class は、.cls で終わる Web サービスの完全なパッケージおよびクラス名です。

      例えば、クラス %iKnow.Queries.EntityWSAPIOpens in a new tab の場合は、%25iKnow.Queries.EntityWSAPI.cls を使用します。

      Important:

      ここに示すように、パッケージの先頭のパーセント記号を、必ず URL エスケープ・シーケンスの %25 で置き換えてください。

    以下に例を示します。

    https://devsys/csp/samples/%25iKnow.Queries.EntityWSAPI.cls?WSDL
    
  2. 生成されたクライアント・クラスを編集するのではなく、それらを使用する追加クラスやルーチンを作成します。詳細は使用するテクノロジによって異なります。

    InterSystems IRIS では、Web クライアントを使用するには、Web クライアント・クラスのインスタンスを作成し、次にそのインスタンス・メソッドを呼び出します。以下の例を参照してください。

NLP Web サービスと主要な NLP API の比較

SOAP メッセージで簡単に表現できない引数を主要な NLP API は使用するため、主要な NLP API のメソッドとは異なるシグニチャを NLP Web サービスのメソッドは持ちます。特に、次の相違点に注意してください。

  • %Library.ListOpens in a new tab の代わりに、Web サービス (およびそのクライアント) は %Library.ListOfDataTypesOpens in a new tab を使用します。つまり、Web サービスのリストを作成する際は、%Library.ListOfDataTypesOpens in a new tab のインスタンスを作成してから、その SetAt() メソッドを使用して項目を追加します。このインスタンスでは $LISTBUILD のようなリスト関数は使用できません。

  • %iKnow.Filters.FilterOpens in a new tab のインスタンスの代わりに、Web サービス (およびそのクライアント) は、そのクラスの ToString() メソッドから返された形式の文字列を使用します。

  • 複雑な結果を返す API の場合は、多次元配列として参照により結果を返す代わりに、Web サービス (およびそのクライアント) は %XML.DataSetOpens in a new tab のインスタンスを返します。

    Important:

    この構造は .NET およびインターシステムズの製品でのみサポートされています。他の Web テクノロジは、この形式を認識しません。

関連項目

InterSystems IRIS での Web サービスおよびクライアントの詳細は、"Web サービスおよび Web クライアントの作成" を参照してください。

FeedbackOpens in a new tab