| creare un elemento di ricerca | search_element_name( value_expression ) search_element_name( token_variable1 + token_variable2 ) | All’elemento di ricerca viene assegnato il valore specificato tra parentesi. Il valore può essere fornito da una variabile creata nella parte sinistra della regola, oppure può essere passato direttamente come testo tra virgolette. I valori di più variabili possono essere concatenati usando il segno più. | [ t: "Contract" ] => kw_Contract( t ); Assegna il valore del token t all’elemento di ricerca kw_Contract. `[ “Contract" | "Contrato” ] => documentType( “Contract” );Imposta il tipo di documento su una stringa costante "Contract" se sono state trovate le parole chiave specificate.[ org1: @NEROrganization( same ) ]+ [ kw_doingBusinessAs: “d/b/a" | "d / b/ a” ] [ org2: @NEROrganization( same )]+ => Supplier_FullName( org1 + kw_doingBusinessAs + org2 );Trova due nomi di organizzazioni uniti dall'abbreviazione "d/b/a" e assegna l’insieme all'elemento di ricercaSupplier_FullName`. |
| creare un gruppo | group_name id | Viene creata una nuova istanza di un gruppo e assegnata a una variabile. È quindi possibile usare questa variabile per creare elementi di ricerca annidati. Nota: Se si tenta di creare una seconda istanza di un gruppo non ripetuto, l’intera regola non verrà eseguita. Quando si lavora con gruppi non ripetuti, scrivere due regole separate: una per quando un’istanza esiste già e una per quando non esiste. | ["Grantor"] [":"] [p: @NERPerson]+ => Grantor group, group.FullName( p ); Crea una nuova istanza di un gruppo Grantor e assegna il nome della persona trovato nella parte sinistra all’elemento di ricerca Grantor.FullName. | | |
| creare un elemento di ricerca figlio in un gruppo | id.search_element_name( value_expression ) | Il nuovo elemento di ricerca viene creato all’interno del gruppo specificato da una variabile e riceve il valore indicato tra parentesi. | Vedi l’esempio sopra. | | |
| creare un elemento di ricerca figlio in un gruppo dalla parte sinistra | left_hand_part_object.search_element_name( value_expression ) | Il nuovo elemento di ricerca viene creato all’interno del gruppo trovato nella parte sinistra della regola. Il valore per il nuovo elemento di ricerca è specificato tra parentesi. Nota: Per i gruppi non ripetuti, la parte sinistra della regola può sia verificare l’esistenza di un’istanza sia assegnare un nome di variabile a quel gruppo. La parte destra può quindi usare questo nome di variabile per creare elementi annidati. | group: Tenant [p: @NERPerson]+ []{0,3} ["Tenant"] => group.FullName( p ); Accede all’istanza esistente di un gruppo Tenant e assegna il nome della persona trovato nella parte sinistra all’elemento di ricerca Tenant.FullName. [org: @BuyerGroup.organization_name]+ []{3,9} [addr: @NERAddress] => parent( obj( org ) ).buyer_address( addr ); Trova un’entità denominata indirizzo che si trova vicino al nome dell’organizzazione e assegna questo indirizzo all’elemento di ricerca buyer_address nella stessa istanza di BuyerGroup a cui appartiene l’elemento di ricerca organization_name. | | |