| 1 | [[BR]] '''1. Main changes from previous version''' |
| 2 | |
| 3 | a. In the main search page the option of the ontologies has been '''added.''' “Ontologies to use in query expansion”. |
| 4 | |
| 5 | The user has the option to select related terms retrieved from |
| 6 | · Human Phenotype Ontology |
| 7 | · Human Disease Ontology |
| 8 | · NCI Thesaurus |
| 9 | · Medical Subject Headings (or …Select All [Deselect All])) |
| 10 | Used for query expansion. |
| 11 | |
| 12 | b. New Lucene modules have been '''added''': |
| 13 | i. lucene.search.highlight.Formatter; |
| 14 | ii. lucene.search.highlight.Highlighter; |
| 15 | iii. lucene.search.highlight.!QueryScorer; |
| 16 | iv. lucene.search.highlight.!TokenSources; |
| 17 | v. lucene.search.Explanation; |
| 18 | |
| 19 | c. (technical staff) |
| 20 | i. public class !LuceneResults (containing !ArrayList<!ArrayList<String>> !FieldValues) has been '''removed''' |
| 21 | ii. List<String> !OntologiesForExpansion has been '''added''' !ArrayList<String>() |
| 22 | |
| 23 | d. Porter Stemmer added (in buildIndexAllTables() where the lucene index is build the corresponding !PorterStemAnalyzer is initialized . |
| 24 | |
| 25 | e. Database retrieval is now not generic to ALL fields. |
| 26 | |
| 27 | TODO: change back to generic. (In order to work for all classes, for all fields.) |
| 28 | Same needs to be done for the search. |
| 29 | f. Query expansion added. Expands the query by adding synony ms and children to initial query, using Boolean OR (not necessary, but more convenient to look through the query), expansion terms are weighted less than initial query terms. |
| 30 | |
| 31 | '''Ontocat Index plugin''' |
| 32 | |
| 33 | 1. New Lucene modules added: |
| 34 | a. lucene.index.Term; |
| 35 | b. lucene.search.!BooleanQuery; |
| 36 | c. lucene.search.!BooleanClause; |
| 37 | |
| 38 | |
| 39 | |
| 40 | ''' ''' |
| 41 | '''2. General functionality description''' |
| 42 | ''' ''' |
| 43 | · '''Annotator''' added: Annotates the input text: searches words and phrases in ontologies and adds XML tags to found terms : ask Dasha how to use |
| 44 | · '''DBIndexPlugin (modified): '''the user can request ontologies to be used in query expansion. These ontologies are added as local files. (TODO : updated versions, online) |
| 45 | o '''Build (DB) Index : '''First the Index writer and the Porter Stemmer analyzer are initiated. The File where the index will be written is created. (TODO: check if the directory exists and create if not) |
| 46 | For all the found classes (DB tables) the corresponding entities (DB table fields) are retrieved and their corresponding names & values inserted in the index.(TODO: not generic to every possible name field, change back to old trick) |
| 47 | After the creation, the index is optimized. |
| 48 | |
| 49 | |
| 50 | |
| 51 | '''3. What values (terms) are being indexed''' |
| 52 | ''' ''' |
| 53 | '''4. How ontocat is involved''' |
| 54 | ''' ''' |
| 55 | '''5. How can it be integrated into a more generic search inside molgenis, without ontologies? ''' |