Lucene 분석기

org.eclipse.help.base.luceneAnalyzer

3.0(원래 릴리스 2.0에서는 org.eclipse.help.luceneAnalyzer로 추가됨)

이 확장점은 문서를 색인화하고 검색할 때 도움말에서 사용할 텍스트 분석기를 등록하는 데 사용됩니다.

도움말은 Lucene 검색 엔진의 기능을 활용하여 토큰 스트림(단어 스트림)의 색인화를 수행할 수 있습니다. 분석기는 문자 스트림에서 토큰을 작성하며, 텍스트 컨텐츠를 조사하고 색인에서 사용할 토큰을 제공합니다. 텍스트 스트림은 여러 가지 고유한 방법으로 토큰화될 수 있습니다. 일반 분석기가 공백에서 스트림을 토큰화할 수 있으며, 다른 분석기가 응용프로그램 요구에 따라 토큰을 필터링할 수 있습니다. 문서는 대부분 사람이 읽을 수 있는 텍스트이기 때문에 도움말 시스템이 사용하는 분석기는 색인화된 텍스트에 대해 언어 및 문법을 인식하는 토큰화와 정규화를 수행하는 것이 좋습니다. 일부 언어의 경우 검색 품질은 색인화된 텍스트에서 중지 단어를 제거하고 스트림 작업을 수행하면 상당히 높아집니다.

이 확장점에 제공된 분석기는 지정된 로케일에 대한 Eclipse 도움말 시스템에서 제공한 분석기를 대체합니다.

<!ELEMENT extension (analyzer*)>

<!ATTLIST extension

point CDATA #REQUIRED

id    CDATA #IMPLIED

name  CDATA #IMPLIED>


<!ELEMENT analyzer EMPTY>

<!ATTLIST analyzer

locale CDATA #REQUIRED

class  CDATA #REQUIRED>


다음은 Lucene 분석기 구성에 관한 예제입니다.

 

<extension id=

"com.xyx.XYZ"

point=

"org.eclipse.help.base.luceneAnalyzer"

>

<analyzer locale=

"ll_CC"

class=

"com.xyz.ll_CCAnalyzer"

/>

</extension>

locale 속성 값은 5자 또는 2자의 로케일 문자열을 나타내야 합니다. 분석기가 두 문자 언어 지정을 통해 언어에 대해 구성된 경우, 분석기는 이 언어의 모든 로케일에 사용됩니다. 분석기가 5자의 로케일과 일치하게 구성된 경우, 이 분석기가 대신 사용됩니다.

class 속성 값은 org.apache.lucene.analysis.Analyzer를 확장하는 클래스를 나타내야 합니다. 이 분석기가 검색 시 대소문자를 구분하지 않아 검색 히트의 수를 늘릴 수 있는 언어에 대해서는 소문자 필터링을 수행하는 것이 좋습니다.

Eclipse 도움말 시스템은 모든 언어에 분석기를 제공합니다. 영어와 독일어의 경우, 이 분석기는 중지 단어 필터링, 소문자 필터링 및 스테밍을 수행합니다. 기타 모든 언어의 경우, 제공된 분석기는 소문자 필터링만 수행합니다.