ドキュメント分類
Content Engine にチェックインされるドキュメントには、クラスが必要です。ドキュメントは、ドキュメントのクラスを選択して手動で分類することも、ドキュメントのチェックイン時に自動的に分類することもできます。Content Engine には拡張可能なフレームワークが用意されており、これによって、特定の MIME タイプの着信ドキュメントをターゲット・ドキュメント・クラスに自動的に割り当てたり、着信ドキュメント内で検出された値に基づいて、選択されたプロパティーをそのターゲット・クラスに設定したりできます。分類コンポーネント、すなわち分類子は、ドキュメント・クラスの割り当て作業を行います。Content Engine にパッケージ化されているこのような分類子の 1 つとして、XML Classifier があります。詳細については、分類のフローチャートおよび XML Classifier についてを参照してください。
JavaScript または Java™ により実装されたカスタム分類子をドキュメント分類フレームワークにプラグイン接続することもできます。詳細については、自動ドキュメント分類についてを参照してください。
カスタム分類子の要件
カスタム分類子をドキュメント分類フレームワークにプラグイン接続するには、次のタスクに従ってください。
- Content Engine Java API の DocumentClassifier インターフェースを実装します。これは、JavaScript コンポーネントまたは Java コンポーネントとして実装できます。分類子は、それに渡される Document オブジェクトに対して該当するクラスを割り当てる必要があります。通常、この作業は、Document オブジェクトのコンテンツからメタデータを抽出し、それを、オブジェクトに継承されたクラス・プロパティーにマッピングすることで行われます。1 つまたは複数の MIME タイプをサポートするように分類子を実装できます。
Java で実装された分類子の場合、JAR ファイルにクラスをパッケージ化でき、クラスまたは JAR ファイルを、CodeModule オブジェクトとして Content Engine オブジェクト・ストアにチェックインできます。別の方法として、Content Engine を実行中のアプリケーション・サーバーのクラスパスに、この分類子を指定することもできます。ドキュメント分類子は、Content Engine 上で非同期的に実行されます。
- DocumentClassificationAction オブジェクトを作成します。オブジェクトを Factory.DocumentClassificationActioncreateInstance メソッドでインスタンス化し、次に、以下の必須プロパティーを設定します。
- ドキュメント分類アクションを識別するための表示名 (DisplayName プロパティー)。
- 特定のコンテンツ・タイプのドキュメントを、そのタイプのドキュメントを処理するように実装された分類子に関連付ける MIME タイプ (MimeType プロパティー)。MIME タイプは、1 つの分類子のみにマッピングが可能です。したがって、1 つの DocumentClassificationAction オブジェクトの MimeType プロパティーは、他の DocumentClassificationAction オブジェクトの MimeType プロパティーとは異なっている必要があります。
- JavaScript または Java で実装された分類子を識別するプログラム ID (ProgId プロパティー)。Java で実装された分類子をオブジェクト・ストアにチェックインした場合は、DocumentClassificationAction オブジェクトの CodeModule プロパティーも設定する必要があります。
ドキュメント分類子を実装し、DocumentClassificationAction オブジェクトを作成するコード例については、「ドキュメント分類関連オブジェクトの操作」を参照してください。詳細については、アクション・ハンドラーを参照してください。
ドキュメントのチェックイン・プロセス
既存の DocumentClassificationAction オブジェクトの MIME タイプ・プロパティーと一致するコンテンツ・タイプのドキュメントを自動的に分類できます。新しいドキュメントを自動的に分類するには、Document オブジェクトを作成し、以下のタスクに従います。
- Document オブジェクトの MimeType プロパティーを DocumentClassificationAction の MimeType プロパティーの値と一致するように設定します。Document オブジェクトの MimeType プロパティーの設定は必須ではありませんが、意図するドキュメント分類子が確実に開始されるようにするため、設定することを推奨します。MimeType プロパティーを設定しない場合、Content Engine はコンテンツ・エレメントのファイル拡張子を MIME タイプにマッピングするため、予期しない結果が出ることがあります。「About MIME Types」を参照してください。
- Document オブジェクトの checkin メソッドを、AUTO_CLASSIFY 定数を指定して呼び出します。
オブジェクト・ストアに初期クラスで Document オブジェクトがチェックインされ、このオブジェクトの ClassificationStatus プロパティーが CLASSIFICATION_PENDING に設定されます。ドキュメントの分類は非同期アクションです。このため、DocumentClassificationQueueItem オブジェクトで表される自動分類要求がキューに追加されます。
分類要求をキューから取り出して処理するのは、Classification Manager です。Classification Manager は、ターゲット・ドキュメントから MIME タイプを取得し、その MIME タイプに登録されている DocumentClassificationAction オブジェクトを見つけて、DocumentClassificationAction オブジェクトで示されている分類子を開始します。分類子は、ドキュメントのチェックインを開始したユーザーと同じアクセス権限で動作します。
ドキュメントの分類が完了すると、Document オブジェクトの ClassificationStatus プロパティーが更新されて、成功または失敗を示します。分類が失敗すると、ドキュメントに割り当てられた初期クラスがそのまま残ります。分類が成功すると、ドキュメントに新規クラスが割り当てられ、ClassifyCompleteEvent オブジェクトが起動されます。