| create a search element | search_element_name( value_expression ) search_element_name( token_variable1 + token_variable2 ) | The search element is assigned the value specified in the brackets. The value can be specified by a variable created in the left-hand part of the rule, or it can be passed directly as text in quotation marks. The values of several variables can be concatenated using the plus sign. | [ t: "Contract" ] => kw_Contract( t ); Assigns the value of the token t to the kw_Contract search element. `[ “Contract" | "Contrato” ] => documentType( “Contract” );Sets the document type to a constant string "Contract" if the specified keywords were found.[ org1: @NEROrganization( same ) ]+ [ kw_doingBusinessAs: “d/b/a" | "d / b/ a” ] [ org2: @NEROrganization( same )]+ => Supplier_FullName( org1 + kw_doingBusinessAs + org2 );Finds two organization names joined by a "d/b/a" abbreviation and assigns the whole to theSupplier_FullName` search element. |
| create a group | group_name id | A new instance of a group is created and assigned to a variable. You can then use this variable to create nested search elements. Note: If you attempt to create a second instance of a non-repeating group, the whole rule will not be executed. When working with non-repeating groups, write two separate rules: for when an instance already exists and for when it does not. | ["Grantor"] [":"] [p: @NERPerson]+ => Grantor group, group.FullName( p ); Creates a new instance of a Grantor group and assigns the person’s name found in the left-hand part to the Grantor.FullName search element. | | |
| create a child search element in a group | id.search_element_name( value_expression ) | The new search element is created within the group specified by a variable and receives the value specified in the brackets. | See example above. | | |
| create a child search element in a group from left-hand part | left_hand_part_object.search_element_name( value_expression ) | The new search element is created within the group found in the left-hand part of the rule. The value for the new search element is specified in the brackets. Note: For a non-repeating groups, the left-hand part of your rule can both check that an instance exists and assign a variable name to that group. The right-hand part can then use this variable name to create nested elements. | group: Tenant [p: @NERPerson]+ []{0,3} ["Tenant"] => group.FullName( p ); Accesses the existing instance of a Tenant group and assigns the person’s name found in the left-hand part to the Tenant.FullName search element. [org: @BuyerGroup.organization_name]+ []{3,9} [addr: @NERAddress] => parent( obj( org ) ).buyer_address( addr ); Finds an address named entity that is located close to the organization name and assigns this address to the buyer_address search element in the same instance of BuyerGroup to which the organization_name search element belongs. | | |