메인 콘텐츠로 건너뛰기
Properties 창에서 요소를 만들고 해당 속성을 설정하면, 프로그램이 이러한 속성에 대한 코드를 자동으로 생성합니다. 이 섹션에서는 자동 생성된 코드를 이해하고, 필요에 따라 수정할 수 있도록 안내합니다.

검색 요소 구조

검색 요소 구조 예시 Parties.Address 검색 요소에 대해 자동 생성된 코드는 다음과 같습니다.

자동으로 생성된 규칙

~Root.Parties.Address,
t1 : Root.Parties.Organization,
t2 : Root.kw_PreNextParty
[ t: @NERAddress( same, right_to( t1 ), left_to( t2 ) ) ~@Root.Parties.Address ]+
=>
Root.Parties.Address( t );
보시다시피 자동 생성된 코드는 항상 전체 경로를 사용해 각 검색 요소를 참조하여 이름 충돌이 발생하지 않도록 합니다. 이 경우에는 요소 이름을 더 짧게 줄이기 위해 각 이름에서 Root를 제거할 수 있습니다.

더 짧은 요소 이름 규칙

~Parties.Address,
t1 : Parties.Organization,
t2 : kw_PreNextParty
[ t: @NERAddress( same, right_to( t1 ), left_to( t2 ) ) ~@Parties.Address ]+
=>
Parties.Address( t );
이제 각 문장의 의미를 하나씩 살펴보겠습니다:

규칙 설명

// Check that the Address search element hasn't been found yet, because we need only the first instance
~Parties.Address,
// Get the Organization search element and the next party keyword search element. They were found before Address
t1 : Parties.Organization,
t2 : kw_PreNextParty
// NERAddress 명명된 엔티티 하나를 포함하는 토큰 시퀀스를 찾습니다
// ("same" 키워드는 여러 개가 있을 경우 하나의 NERAddress만 일치시켜야 함을 지정합니다)
// 주소는 조직 이름 뒤, 다음 당사자 키워드 앞에 위치해야 합니다
// + 기호는 토큰 시퀀스가 여러 단어로 구성될 수 있음을 의미합니다
// 끝에 있는 ~@Parties.Address 조건은
// 주소가 동일한 토큰에서 다시 일치되지 않도록 보장합니다
[ t: @NERAddress( same, right_to( t1 ), left_to( t2 ) ) ~@Parties.Address ]+
=>
Parties.Address( t );