equal
deleted
inserted
replaced
113 self.terms = terms |
113 self.terms = terms |
114 locate(terms, self, '++terms++') |
114 locate(terms, self, '++terms++') |
115 self.reset_terms_parent() |
115 self.reset_terms_parent() |
116 self.reset_top_terms() |
116 self.reset_top_terms() |
117 |
117 |
118 @property |
|
119 def sublocations(self): |
118 def sublocations(self): |
120 return self.terms, self.catalog |
119 return self.terms, self.catalog |
121 |
120 |
122 @property |
121 @property |
123 def top_terms(self): |
122 def top_terms(self): |
126 @top_terms.setter |
125 @top_terms.setter |
127 def top_terms(self, value): |
126 def top_terms(self, value): |
128 self._top_terms = [term for term in value or () if term.usage is None] |
127 self._top_terms = [term for term in value or () if term.usage is None] |
129 |
128 |
130 def init_catalog(self): |
129 def init_catalog(self): |
|
130 # Init catalog |
131 catalog = self.catalog = Catalog() |
131 catalog = self.catalog = Catalog() |
|
132 locate(catalog, self) |
132 # Init fulltext search catalog |
133 # Init fulltext search catalog |
133 catalog['fulltext'] = TextIndexWithInterface(IThesaurusTerm, 'label', language=self.language) |
134 catalog['fulltext'] = TextIndexWithInterface(IThesaurusTerm, 'label', language=self.language) |
134 # Init stemmed search catalog |
135 # Init stemmed search catalog |
135 catalog['stemmed'] = TextIndexWithInterface(IThesaurusTerm, 'label', |
136 catalog['stemmed'] = TextIndexWithInterface(IThesaurusTerm, 'label', |
136 lexicon=Lexicon(NltkStemmedTextProcessor(language=self.language))) |
137 lexicon=Lexicon(NltkStemmedTextProcessor(language=self.language))) |
199 pass |
200 pass |
200 |
201 |
201 def reset_top_terms(self): |
202 def reset_top_terms(self): |
202 self.top_terms = [term for term in self.terms.values() |
203 self.top_terms = [term for term in self.terms.values() |
203 if (not term.generic) and (not term.usage)] |
204 if (not term.generic) and (not term.usage)] |
|
205 |
|
206 def get_top_terms(self, extract=None): |
|
207 if extract is None: |
|
208 return self.top_terms |
|
209 return [term for term in self.top_terms if extract in term.extracts] |
204 |
210 |
205 def clear(self): |
211 def clear(self): |
206 self.terms.clear() |
212 self.terms.clear() |
207 self.catalog.reset() |
213 self.catalog.reset() |
208 self.top_terms = [] |
214 self.top_terms = [] |