locales = $locales; } /** * @return \Alchemy\Phrasea\SearchEngine\Elastic\Mapping */ public function getMapping() { $mapping = new MappingBuilder(); $mapping->addStringField('raw_value')->disableAnalysis(); $mapping->addStringField('value') ->setAnalyzer('general_light') ->addAnalyzedChild('strict', 'thesaurus_term_strict') ->addLocalizedChildren($this->locales); $mapping->addStringField('context') ->setAnalyzer('general_light') ->addAnalyzedChild('strict', 'thesaurus_term_strict') ->addLocalizedChildren($this->locales); $mapping->addStringField('path') ->setAnalyzer('thesaurus_path', 'indexing') ->setAnalyzer('keyword', 'searching') ->addRawChild(); $mapping->addStringField('lang')->disableAnalysis(); $mapping->addIntegerField('databox_id'); return $mapping->getMapping(); } }