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

# Partie droite

> Opérations de la partie droite dans le code NLP Extraction Rules — créer des éléments de recherche, créer des groupes et créer des éléments de recherche enfants dans des groupes.

<table>
  <thead>
    <tr>
      <th>Opération</th>
      <th>Syntaxe</th>
      <th>Description</th>
      <th>Exemple</th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>créer un élément de recherche</td>

      <td>
        <code>search\_element\_name( value\_expression )</code> <code>search\_element\_name( token\_variable1 + token\_variable2 )</code>
      </td>

      <td>
        L’élément de recherche reçoit la valeur indiquée entre parenthèses. La valeur peut être spécifiée par une variable créée dans la partie gauche de la règle, ou transmise directement sous forme de texte entre
        guillemets. Les valeurs de plusieurs variables peuvent être concaténées à l’aide du signe plus.
      </td>

      <td>
        <code>\[ t: "Contract" ] => kw\_Contract( t );</code> Affecte la valeur du jeton t à l’élément de recherche <code>kw\_Contract</code>.{" "}
        <code>\[ "Contract" | "Contrato" ] => documentType( "Contract" );</code> Définit le type de document sur la chaîne constante "Contract" si les mots-clés indiqués ont été trouvés.{" "}

        <code>
          \[ org1: @NEROrganization( same ) ]+ \[ kw\_doingBusinessAs: "d/b/a" | "d / b/ a" ] \[ org2: @NEROrganization( same )]+ => Supplier\_FullName( org1 + kw\_doingBusinessAs + org2 );
        </code>

        {" "}

        Recherche deux noms d’organisation reliés par l’abréviation "d/b/a" et affecte l’ensemble à l’élément de recherche <code>Supplier\_FullName</code>.
      </td>
    </tr>

    <tr>
      <td>créer un groupe</td>

      <td>
        <code>group\_name id</code>
      </td>

      <td>
        Une nouvelle instance de groupe est créée et affectée à une variable. Vous pouvez ensuite utiliser cette variable pour créer des éléments de recherche imbriqués. <strong>Remarque :</strong> Si vous tentez de créer une deuxième
        instance d’un groupe non répétitif, l’ensemble de la règle ne sera pas exécuté. Lorsque vous travaillez avec des groupes non répétitifs, écrivez deux règles distinctes : l’une lorsque l’instance existe déjà et l’autre lorsqu’elle
        n’existe pas.
      </td>

      <td>
        <code>\["Grantor"] \[":"] \[p: @NERPerson]+ => Grantor group, group.FullName( p );</code> Crée une nouvelle instance d’un groupe Grantor et affecte le nom de la personne trouvé dans la partie gauche à
        l’élément de recherche <code>Grantor.FullName</code>.
      </td>
    </tr>

    <tr>
      <td>créer un élément de recherche enfant dans un groupe</td>

      <td>
        <code>id.search\_element\_name( value\_expression )</code>
      </td>

      <td>Le nouvel élément de recherche est créé dans le groupe indiqué par une variable et reçoit la valeur indiquée entre parenthèses.</td>
      <td>Voir l’exemple ci-dessus.</td>
    </tr>

    <tr>
      <td>créer un élément de recherche enfant dans un groupe à partir de la partie gauche</td>

      <td>
        <code>left\_hand\_part\_object.search\_element\_name( value\_expression )</code>
      </td>

      <td>
        Le nouvel élément de recherche est créé dans le groupe trouvé dans la partie gauche de la règle. La valeur du nouvel élément de recherche est indiquée entre parenthèses. <strong>Remarque :</strong> Pour les
        groupes non répétitifs, la partie gauche de votre règle peut à la fois vérifier qu’une instance existe et affecter un nom de variable à ce groupe. La partie droite peut ensuite utiliser ce nom de variable pour
        créer des éléments imbriqués.
      </td>

      <td>
        <code>group: Tenant \[p: @NERPerson]+ \[]\{0,3} \["Tenant"] => group.FullName( p );</code> Accède à l’instance existante d’un groupe Tenant et affecte le nom de la personne trouvé dans la
        partie gauche à l’élément de recherche <code>Tenant.FullName</code>.{" "}
        <code>\[org: @BuyerGroup.organization\_name]+ \[]\{3,9} \[addr: @NERAddress] => parent( obj( org ) ).buyer\_address( addr );</code> Recherche une entité nommée d’adresse située à proximité
        du nom de l’organisation et affecte cette adresse à l’élément de recherche <code>buyer\_address</code> dans la même instance de BuyerGroup à laquelle appartient l’élément de recherche <code>organization\_name</code>.
      </td>
    </tr>
  </tbody>
</table>
