> ## 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.

# 繰り返しグループのインスタンスを参照要素、除外要素、またはソース要素として使用する

> リレーションおよび除外要素を定義する際に、LastFound、AllInstances、Instance(#)、CurrentInstance などの繰り返しグループのインスタンスを参照します。

要素選択ダイアログを使用して、次の項目を選択できます。

* 要素の **Properties** ダイアログの \[リレーション] タブにある参照要素
* 要素の **Properties** ダイアログの \[検索制約] タブにある除外要素
* ブロックの **Properties** ダイアログにあるソース要素

単純な要素では、その名前が使用されます。繰り返しグループ要素では、リレーションの作成に、繰り返しグループの仮説への参照 (インスタンス番号を考慮したもの) が使用されます。

FlexiLayout のマッチング時には、繰り返しグループの仮説の複数のインスタンスが、要素ツリー内の 1 つの **繰り返しグループ** 要素に対応します。そのため、繰り返しグループと他の要素の間のリレーションを指定する場合は、どのインスタンスを使用するかを指定する必要があります。完全名ではなく仮説への参照を指定すると、繰り返しグループ名の後にピリオドと、参照先インスタンスの説明が続きます。

<div id="repeating-group-instance-types">
  ## 繰り返しグループのインスタンスの種類
</div>

インスタンスには、次のいずれかがあります。

| Name                | Description                                                                                          |
| ------------------- | ---------------------------------------------------------------------------------------------------- |
| **LastFound**       | 指定したサブ要素に対する仮説が生成された時点で、繰り返しグループについて最後に検出されたインスタンス。                                                  |
| **AllInstances**    | 繰り返しグループで検出されたすべてのインスタンス。                                                                            |
| **Instance(#)**     | 特定のインスタンス番号。                                                                                         |
| **CurrentInstance** | 現在のインスタンス。繰り返しグループのサブ要素のリレーションを指定する際に使用し、グループ自体の現在の仮説、つまりツリー内で指定したサブ要素より上にある、グループの既に検出済みのサブ要素を参照します。 |

<div id="reference-syntax">
  ## 参照の構文
</div>

要素選択ダイアログでの参照の構文は、**繰り返しグループ** のインスタンスとそのサブ要素にアクセスするために **Advanced** セクションで入力するコードの構文と同じです。

例:

```text theme={null}
SearchElements.RepeatingGroup.LastFound.RepeatingGroup1.Instance(1).StaticText
```

<div id="select-an-instance-in-a-dialog-box">
  ## ダイアログでインスタンスを選択する
</div>

参照要素または除外要素を選択するダイアログでは、グループのインスタンスを選択します。選択ツリーでは、繰り返しグループの名前の横にインスタンス番号が表示されます。**繰り返しグループ**を選択すると、インスタンスを選択できる **Repeating instance** field が使用可能になります。行った変更は、ツリーと結果文字列の両方に反映されます。

<div id="rules-for-currentinstance-and-allinstances">
  ## CurrentInstance と AllInstances のルール
</div>

子グループで **CurrentInstance** を選択すると、その上位にあるすべてのグループにも **CurrentInstance** が自動的に設定されます。親グループの **CurrentInstance** を別の値に変更すると、すべての子グループのインスタンスがデフォルト値の **LastFound** にリセットされます。

親グループで **AllInstances** を選択すると、すべての子グループにも **AllInstances** が自動的に設定されます。子グループの **AllInstances** を別の値に変更すると、親グループの **AllInstances** はデフォルト値の **LastFound** にリセットされます。

Advanced code で参照を手動で作成する場合は、**CurrentInstance** を指定できるのは親グループに対してのみであり、グループに **CurrentInstance** を指定する場合は、その上位にあるすべてのグループにも **CurrentInstance** を指定する必要があることに注意してください。グループに **AllInstances** を指定した場合は、その下位にあるすべてのグループにも **AllInstances** を指定する必要があります。ダイアログでグループのインスタンスを選択すると、正しい値が自動的に適用されます。

<div id="related-topics">
  ## 関連トピック
</div>

* [検索制約](/ja/flexi-capture/fls/template/basic-constraints)
* [相対検索領域](/ja/flexi-capture/fls/template/relations)
* [追加の検索条件](/ja/flexi-capture/fls/template/advanced-constraints)
