Documentation Index
Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
Use this file to discover all available pages before exploring further.
Extraction Rules のアクティビティを構成したので、field の値を検証および正規化するためにビジネス ルールを追加できます。
Doctor ID field のプロパティを調整して、事前認識の結果から OCR エラーや不要な文字を取り除きます。field region が見つかった後、field プロパティ内の regular expression によってデータが再抽出され、OCR ノイズが除去されます。
Doctor ID field の設定を開く
- Skill 名をクリックし、Fields タブに移動します。
- 「Doctor」Group を展開し、その横にある設定アイコンをクリックして「Doctor ID」field の設定を開きます。
正規表現を追加する
-
field プロパティの Value セクションで、Regular expression オプションの横にある追加アイコンをクリックします。
-
次の式を Regular Expression Editor に貼り付けます。
[0-9]{1}[\/.-]{1}[0-9]{5}[\/.-]{1}[0-9]{2}[\/.-]{1}[0-9]{3}
このエディターでは、Extraction Rules Activity Editor で使用される表記とは異なる一般的な表記を使用します。詳しくは、Regular Expression Editor で Syntax help をクリックしてください。
変更を保存する
Save をクリックして Regular Expression Editor を閉じ、続けてもう一度 Save をクリックして field プロパティを閉じます。
患者は、発病開始日から3日以内に病欠証明書を受け取る必要があります。つまり、発行日は開始日の3日後まででなければなりません。
この制約を適用するには、スクリプト ルールを使用します。
New Ruleダイアログを開く
データ フォームの下にある追加のiconをクリックします。New Ruleダイアログが開きます。追加のiconが表示されない場合は、ドキュメント画像上部のReferenceセクションに切り替えてください。
ルールの種類とfieldを設定する
- Advanced Script Ruleを選択し、Nextをクリックします。
- ルール名を「Check validity」に変更します。
- fieldsの一覧で「Date」「Start Date」「End Date」のfieldを選択します。
- Nextをクリックします。
有効性確認のスクリプトを追加する
次のスクリプトをスクリプト エディタに貼り付けます:// アクセスするすべてのfieldの変数を作成
var dateField = Context.GetField("Date");
var startField = Context.GetField("Start Date");
var endField = Context.GetField("End Date");
var issueDate = dateField.Value;
var startDate = startField.Value;
//「Start Date」fieldがドキュメント上で見つかったかどうかを確認
if (startDate && issueDate)
{
//発行日が開始日の3日以上後でないかを確認
if ((issueDate.getTime() - startDate.getTime()) / 3600000 / 24 > 3)
{
Context.CheckSucceeded = false;
Context.ErrorMessage = "病欠証明書の発行が遅すぎます";
}
}
Save をクリックし、セット内のさまざまなドキュメントでルールの動作を確認します。ルールのエラー処理の挙動を確認するには、データ フォーム上の field にテスト値を手動で入力します。field の値を変更するたびに、ルールが再適用されます。
病欠の開始日と終了日を使って病欠期間を計算します。文書に期間が指定されている場合は、その値が計算した期間と一致するかどうかを確認します。文書に期間が含まれていない場合は、計算した値を対応する fields に書き込みます。
New Rule ダイアログを開く
ルールを作成するには、データ フォームの下にある追加 icon をクリックします。
ルールの種類と fields を設定する
- Advanced Script Rule を選択し、Next をクリックします。
- ルール名を「Check duration」に変更します。
- fields の一覧で、「Start Date」「End Date」「Duration」の fields を選択します。fields 値を読み取るだけでなく、必要に応じて修正も行うため、両方の列で fields を選択しておくことが重要です。
- Next をクリックします。
期間のスクリプトを追加する
次のスクリプトをスクリプト エディタに貼り付けます。// アクセスするすべてのfieldの変数を作成する
var startField = Context.GetField("Start Date") ;
var endField = Context.GetField("End Date");
var durationField = Context.GetField("Duration");
var startDate = startField.Value;
var endDate = endField.Value;
//「Start Date」と「End Date」のfieldがDocumentで見つかったか確認する
if (endField && endDate && startField && startDate)
{
//病気休暇の期間を計算する
var length = (1 + (endDate.getTime() - startDate.getTime()) / 3600000 / 24);
//期間のfieldが見つからなかった場合、または数値として解析できなかった場合、計算値をfieldに渡す
if (!durationField.Value)
durationField.Value = length;
//期間のfieldが見つかった場合、その値と計算された期間を比較する
else if (durationField.Value != length)
{
Context.CheckSucceeded = false;
Context.ErrorMessage = "\"Duration\" fieldの値が実際の病気休暇期間と一致しません";
durationField.AddSuggestion(length.toString());
}
}
Save をクリックし、セット内のさまざまなドキュメントでルールがどのように動作するかを確認します。ルールがエラーをどのように処理するかを確認するには、データ フォーム上の fields にテスト値を手動で入力します。fields の値を変更するたびに、ルールが再適用されます。
ステップ 10. Skill をテストして公開する
設定した Skill をテストし、Vantage server に公開します。
チュートリアルの概要
チュートリアルの概要に戻ります。