Page 1 of 1

Resultados de Búsqueda sin considerar la tilde

PostPosted:Tue Aug 02, 2016 8:08 pm
by oswaldochc86
Estimados.

Estoy ejecutando la versión 6.3.1 de Openkm. He subido dos documentos

1. educacion uno
2. educación dos (con tilde educación)

Sin embargo al realizar la búsqueda avanzada por nombre, al colocar educacion como parámetro sólo me devuelve el primer documento, me gustaría obtener como resultado los dos documentos, es decir que la búsqueda no considere la tilde.

No quisiera colocar educaci?n* como parámetro.

Es posible realizar esto??

Agradeciendo su atención

Re: Resultados de Búsqueda sin considerar la tilde

PostPosted:Wed Aug 03, 2016 4:13 pm
by jllort
Hay que modificar el analizador de lucene que estas utilizando por defecto con uno que no tenga en cuenta los acentos. La versión profesional viene con este analizador por defecto, pero en la community aun no hemos incluido este cambio. Por lo tanto ahora mismo para que esto te funcione en la community deberías crear este analizador ( te podemos intentar orientar sobre este punto ).

Re: Resultados de Búsqueda sin considerar la tilde

PostPosted:Thu Aug 04, 2016 1:03 pm
by oswaldochc86
Gracias mi estimado, le agradecería mucho la guía que me pudiera ofrecer para modificar el analizador de lucene.

Re: Resultados de Búsqueda sin considerar la tilde

PostPosted:Fri Aug 05, 2016 8:08 am
by cgarcia
Para esto hay que crear un custom analyzer basado en StandardAnalyzer:

http://wiki.openkm.com/index.php/Indexing_configuration

https://lucene.apache.org/core/3_1_0/ap ... lyzer.html

Espero que esto te sirva de ayuda

Re: Resultados de Búsqueda sin considerar la tilde

PostPosted:Fri Aug 05, 2016 1:09 pm
by oswaldochc86
Gracias cgarcia, voy a revisar la información de los enlaces que me envió

Re: Resultados de Búsqueda sin considerar la tilde

PostPosted:Mon Aug 08, 2016 8:10 pm
by oswaldochc86
Estimados

He creado un Custom Analizer lo he configurado dentro del parámetro hibernate.search.analyzer
Code: Select all
protected ReusableAnalyzerBase.TokenStreamComponents createComponents(String fieldName, Reader reader) {
    Tokenizer source = new StandardTokenizer(this.matchVersion, reader);
    TokenStream result = new StandardFilter(this.matchVersion, source);
    result = new LowerCaseFilter(this.matchVersion, result);
    result = new StopFilter(this.matchVersion, result, this.stopwords);
    result = new ASCIIFoldingFilter(result);
    
    if (!this.stemExclusionSet.isEmpty()) {
        result = new KeywordMarkerFilter(result, this.stemExclusionSet);
    }
    
    result = new SnowballFilter(result, new SpanishStemmer());
    return new ReusableAnalyzerBase.TokenStreamComponents(source, result);
}
He buscado un problema similar al que tengo y agregaban ISOLatin1AccentFilter si embargo esta función esta deprecated y recomiendan el uso de ASCCIIFoldingFilter, sin embargo no se si esto resolverá el problema que mencione al inicio o si el código que he elaborado le falta ya que al hacer un rebuild indexes igual persiste mi problema.

Agradecería la ayuda que me puedan proporcionar

Re: Resultados de Búsqueda sin considerar la tilde

PostPosted:Wed Aug 10, 2016 4:42 pm
by jllort
El rebuild indexes te reconstruye todo el indice, con lo cual si el problema persiste, es que el analizador aun no esta del todo correcto. En el apartado de Administracion > Tools > List indexes
1- click en search indexes
2- pega el uuid de un documento y realiza un click en search
3- te debería aparecer un solo documento, realiza un click en el icono de la derecha
4- en la parte de arriba realiza un click en show terms ( te tienen que aparecer los términos por los que lucene ha indexado el fichero )

Re: Resultados de Búsqueda sin considerar la tilde

PostPosted:Wed Aug 10, 2016 9:45 pm
by oswaldochc86
Estimado

Muy agradecido por su respuesta, he realizado los pasos que me ha indicado, he revisado terms y todo se encuentra con minúscula (Adjunto imagen), solamente el campo "name" mantiene la tilde. Tengo que hacer algo adicional para que el nombre del archivo se indexe sin tilde?, o el proceso de búsqueda por nombre solo toma en cuenta los terms.

Re: Resultados de Búsqueda sin considerar la tilde

PostPosted:Mon Aug 15, 2016 9:04 pm
by oswaldochc86
Para solucionar el caso planteado revisé el @FieldBridge del campo name y he modificado su impl para que sustituya los caracteres tildados.

Rebuild Indexes y listo.

Agradezco mucho la ayuda que me han brindado.

Re: Resultados de Búsqueda sin considerar la tilde

PostPosted:Tue Aug 16, 2016 8:43 am
by jllort
Si deseas compartir el analizador con la comunidad, puedes subir aquí el fichero en cuestión y lo incorporaremos o bien en el código fuente de la versión community o bien en la documentación de la versión 6.3 que estamos terminando.

Re: Resultados de Búsqueda sin considerar la tilde

PostPosted:Thu Sep 01, 2016 8:42 pm
by diegospano
@oswaldochc86, podrías comentar como implementaste el nuevo analizador?.

1- cómo lo configuraste?
2- debiste descargar software del sitio de Lucene?.
3- en que path guardaste el analizador?

Muchas gracias.