Saltar al contenido principal
| Operación | Sintaxis | Descripción | Ejemplo | | :----------------------------------------- | :------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | token | [] | Los corchetes encierran un solo token. | [] Cualquier palabra o signo de puntuación. | | texto del token | "" | Las comillas indican un token con el texto especificado. | ["Grantor"] Un token con la palabra “Grantor”. | | variable | : | Los dos puntos se utilizan para asignar un nombre a la secuencia de tokens que le sigue. Nota: La variable estará disponible solo dentro de esa misma regla, es decir, hasta que la parte derecha finalice con un punto y coma. | [t: "Contract"] Encuentra un token que contiene la palabra “Contract” y lo asigna a la variable t. | | lema | L"word" Lemma"word" | “L” o “Lemma” antes de una palabra significa que la búsqueda debe encontrar todas las formas de esa palabra. | [L"rule"] Se encontrarán tokens como “rule”, “rules”, “ruled” y “ruling”. | | expresión regular | /regular expression/ | Las barras diagonales simples encierran una expresión regular. Al igual que con los elementos de búsqueda Valor de expresión regular, se utiliza la sintaxis de expresión regular PCRE2. | /[1]?\d:\d{2}\s+(([ap]\.m\.) | ([AP]M))?/ La plantilla coincidirá con la hora en formato de 12 horas, por ejemplo, “2:00 p.m.”, “9:34 AM”. | | configuración de opciones para expresiones regulares | /regular expression/i | La configuración de opciones se puede colocar después de la barra diagonal que cierra la expresión regular. La opción “i”, por ejemplo, significa coincidencia sin distinción entre mayúsculas y minúsculas de la expresión regular. | /[1]?\d:\d{2}\s+([ap]\.?m\.?)?/i Esta plantilla simplifica el ejemplo anterior con la ayuda de la coincidencia sin distinción entre mayúsculas y minúsculas. Coincidirá con la hora en formato de 12 horas, por ejemplo, “2:00 p.m.”, “9:34 AM”. | | predicados de token | <first_in_paragraph> | El token es el primero en un párrafo. | ["Section" <first_in_paragraph>] La palabra “Section” inicia el párrafo. Puede usar esto, por ejemplo, para extraer el número de sección inmediatamente después de este token. | | predicados de token | <punctuator> | El token es un signo de puntuación. | ["Tenant"] [<punctuator>]{0,2} La palabra “Tenant” puede estar seguida de hasta dos signos de puntuación, por ejemplo, un paréntesis de cierre y una coma. | | predicados de token | <initial_letter_capitalized> | El token comienza con una letra mayúscula. | [L"agreement" <initial_letter_capitalized>] Esta plantilla coincidirá con “Agreement” y “Agreements”, pero no con “agreement”. | | predicados de token | <mixed_capitalization> | Algunas letras del token están en mayúscula, pero no todas. | [L"letter" <mixed_capitalization>] Esta plantilla coincidirá, por ejemplo, con “Letters” y “letteR”. | | predicados de token | <all_letters_capitalized> | El token está completamente en mayúsculas. | [t: @NEROrganization <all_letters_capitalized>]+ Esta plantilla coincidirá con entidades nombradas de organización escritas completamente en mayúsculas. | | OR lógico | | | Se utiliza una barra vertical para especificar texto de token alternativo o condiciones alternativas para el token. | ["Lender" | "Co-Lender"] ["shall"] ["have"] Esta plantilla coincidirá con cualquiera de estas cadenas: “Lender shall have” o “Co-Lender shall have” | | AND lógico | espacio | El espacio se utiliza como conjunción lógica para las condiciones de token. | [t: "Section" <first_in_paragraph>] Encuentra un token que contiene la palabra “Section” Y comienza un párrafo. | | condición de objeto | @object_name | El signo arroba (”@”) verifica que el token esté ubicado dentro de una región de objeto. Se admiten los siguientes objetos: Objetos de entidad nombrada, los mismos tipos que también están disponibles como elementos de búsqueda especializados, con el prefijo “NER”: NERPerson, NEROrganization, NERAddress, NERLocation, NERDate, NERDuration, NERMoney; Elementos de búsqueda; Sentence - Se crea un objeto separado para cada oración en el flujo de texto; Paragraph - Se crea un objeto separado para cada párrafo en el flujo de texto. | [t: @NEROrganization]+ ["Lender"] Asigna el nombre t a una secuencia de tokens que contiene una entidad NEROrganization y está seguida por la palabra clave “Lender”. [t: @NERPerson @Preamble_Segment ]+ Encuentra el nombre de una persona en el segmento de preámbulo (representado por un elemento de búsqueda Campo de entrada). | | separación de objetos similares | @object_name( same ) | “same” significa que en un token repetido, se hace coincidir el mismo objeto con la secuencia de tokens en lugar de varios objetos de este tipo. Si la condición de objeto utiliza un OR lógico, no se debe usar “same”. | Por ejemplo, si tiene una lista de nombres de personas uno tras otro, todos se detectarán como NERPerson. Para extraer el nombre de una persona a la vez, use la condición “same”. [t: @NERPerson( same )]+ Asigna el nombre t a la primera persona encontrada. | | posición relativa | @object_name( right_to( another_object )) @object_name( left_to( another_object )) | “right_to” significa que object_name se encuentra después del another_object especificado entre paréntesis. “left_to” significa que object_name se encuentra antes del another_object especificado entre paréntesis. | [ t: @NERAddress( same, right_to( id1 ), left_to( id2 ) )] Encuentra una entidad nombrada NERAddress entre id1 e id2. | | OR lógico (como se usa en condiciones de objeto) | | | Una barra vertical también se puede usar como disyunción lógica para condiciones de objeto. | [t: @NERPerson( right_to( id1 ) | right_to( id2 ) )] Asigna el nombre t al nombre de una persona ubicada después de id1 o después de id2. | | secuencia de tokens | espacio | Los tokens en una secuencia están separados por espacios. | ["Grantor"] [":"] Esta plantilla coincidirá con “Grantor:”. Los tokens se pueden especificar simplemente para contexto, incluso si estas palabras no necesitan ser extraídas. | | secuencias de tokens alternativas | [token1] | ([token2][token3]) | Se utiliza una barra vertical para especificar secuencias de tokens alternativas. Los paréntesis establecen la prioridad. | ["will"] (["start"] | (["take"] ["place"])) ["on"]Esta plantilla coincidirá con cualquiera de estas cadenas: “will start on” o “will take place on”. Tenga en cuenta que si hubiéramos omitido los paréntesis, la plantilla también habría coincidido con “will start place on”. Los paréntesis aseguran que la frase “take place” esté presente completamente o no esté en absoluto. Nota: Para casos reales más complejos de secuencias de tokens alternativas, puede resultarle más conveniente escribir una regla separada para cada alternativa:["will"] ["start"] ["on"] => ...; ["will"] ["take"] ["place"] ["on"] => ...; | | token opcional | []? | Un signo de interrogación indica que el token es opcional. | ["Tenant"] ["."]? La palabra “Tenant” puede ir seguida de un punto. | | token repetible opcional | []* | Un asterisco indica que el token es opcional y puede repetirse varias veces. | ["Grantor"] []* ["Tenant"] Las palabras clave “Grantor” y “Tenant” pueden estar separadas por cualquier cantidad de tokens, o ninguno. | | token repetible obligatorio | []+ | Un signo más indica que el token debe encontrarse al menos una vez y puede repetirse. | [@NERPerson]+ Especifica que debe encontrarse el nombre de una persona, posiblemente distribuido en varios tokens, ya que el nombre generalmente consta de varias palabras. | | token con número especificado de repeticiones | []{n,} []{n,m} | Los números entre llaves indican que el token debe repetirse de n a m veces. Si no se especifica el segundo número, el token debe repetirse al menos n veces. Nota: Como puede observar, {0,} es equivalente a *, mientras que {1,} es equivalente a +. | ["Grantor"] []{1,3} ["Tenant"] Las palabras clave “Grantor” y “Tenant” deben estar separadas por 1 a 3 tokens. Esto puede ser más útil que *, ya que permite especificar que las dos palabras clave no estén demasiado distantes entre sí. |