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

# Parte derecha

> Operaciones de la parte derecha en el código de NLP Extraction Rules: crear elementos de búsqueda, crear grupos y crear elementos de búsqueda secundarios dentro de grupos.

<table>
  <thead>
    <tr>
      <th>Operación</th>
      <th>Sintaxis</th>
      <th>Descripción</th>
      <th>Ejemplo</th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>crear un elemento de búsqueda</td>

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

      <td>
        Al elemento de búsqueda se le asigna el valor especificado entre paréntesis. El valor puede especificarse mediante una variable creada en la parte izquierda de la regla, o puede pasarse
        directamente como texto entre comillas. Los valores de varias variables pueden concatenarse con el signo más.
      </td>

      <td>
        <code>\[ t: "Contract" ] => kw\_Contract( t );</code> Asigna el valor del token t al elemento de búsqueda <code>kw\_Contract</code>.{" "}
        <code>\[ "Contract" | "Contrato" ] => documentType( "Contract" );</code> Establece el tipo de documento como una cadena constante "Contract" si se encontraron las palabras clave especificadas.{" "}

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

        {" "}

        Encuentra dos nombres de organizaciones unidos por la abreviatura "d/b/a" y asigna el conjunto al elemento de búsqueda <code>Supplier\_FullName</code>.
      </td>
    </tr>

    <tr>
      <td>crear un grupo</td>

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

      <td>
        Se crea una nueva instancia de un grupo y se asigna a una variable. Luego puede usar esta variable para crear elementos de búsqueda anidados. <strong>Nota:</strong> Si intenta crear una segunda
        instancia de un grupo no repetible, no se ejecutará toda la regla. Al trabajar con grupos no repetibles, escriba dos reglas separadas: una para cuando ya exista una instancia y otra para cuando no
        exista.
      </td>

      <td>
        <code>\["Grantor"] \[":"] \[p: @NERPerson]+ => Grantor group, group.FullName( p );</code> Crea una nueva instancia de un grupo Grantor y asigna el nombre de la persona encontrado en la parte izquierda al
        elemento de búsqueda <code>Grantor.FullName</code>.
      </td>
    </tr>

    <tr>
      <td>crear un elemento de búsqueda secundario en un grupo</td>

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

      <td>El nuevo elemento de búsqueda se crea dentro del grupo especificado por una variable y recibe el valor especificado entre paréntesis.</td>
      <td>Consulte el ejemplo anterior.</td>
    </tr>

    <tr>
      <td>crear un elemento de búsqueda secundario en un grupo desde la parte izquierda</td>

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

      <td>
        El nuevo elemento de búsqueda se crea dentro del grupo encontrado en la parte izquierda de la regla. El valor del nuevo elemento de búsqueda se especifica entre paréntesis. <strong>Nota:</strong> Para
        grupos no repetibles, la parte izquierda de la regla puede tanto comprobar que exista una instancia como asignar un nombre de variable a ese grupo. La parte derecha puede entonces usar este nombre de variable para
        crear elementos anidados.
      </td>

      <td>
        <code>group: Tenant \[p: @NERPerson]+ \[]\{0,3} \["Tenant"] => group.FullName( p );</code> Accede a la instancia existente de un grupo Tenant y asigna el nombre de la persona encontrado en la
        parte izquierda al elemento de búsqueda <code>Tenant.FullName</code>.{" "}
        <code>\[org: @BuyerGroup.organization\_name]+ \[]\{3,9} \[addr: @NERAddress] => parent( obj( org ) ).buyer\_address( addr );</code> Encuentra una entidad con nombre de dirección situada cerca
        del nombre de la organización y asigna esta dirección al elemento de búsqueda <code>buyer\_address</code> en la misma instancia de BuyerGroup a la que pertenece el elemento de búsqueda <code>organization\_name</code>.
      </td>
    </tr>
  </tbody>
</table>
