For the Basic search implementation part I have reused the code of Wikipathways Client Plugin created by Thomas Kelder (code repository: https://github.com/thomaskelder/pathvisio-wikipathways-client).
The task for this first week is to :
- Implement the GUI for Basic Search
Search by query as on http://www.wikipathways.org itself.
Search for pathways by name, pathway element labels
- Search by text but for specific species
I have used the findPathwaysByText method of WikiPathways web service
1. Search for pathways by name, pathway element labels
By name: e.g. Asparagine degradation
By pathway element label: e.g. pathway element label: ASP3-4
2. search for pathways by species/organism: e.g. Homo Sapeins
From the above queries we get a number of pathways, which are displayed in a Table .Then the user can select any one and the selected pathway gets loaded (opened) in PathVisio Tool.
Step by step demonstration of task:
When the Wikipathway Client Plugin is loaded into PathVisio – “Wikipathways” menu with submenus- ‘Search’, ‘Browse’, ‘Update’ gets registered
When the ‘Search’ option is chosen – Search WikiPathways Dialog popsout
Then user can search pathways , based on any query text like –
Pathway Name: Asparagine degradation
Pathway element Label: ASP3-4
Search by text but for specific species
Finding pathways using a textual search on the description and text labels of the pathway objects. The query syntax can have several options:
- Combine terms with AND and OR. Combining terms with a space is equal to using OR (‘p53 OR apoptosis’ gives the same result as ‘p53 apoptosis’).
- Group terms with parentheses, e.g. ‘(apoptosis OR mapk) AND p53’
- You can use wildcards * and ?. * searches for one or more characters, ? searchers for only one character.
- Use quotes to escape special characters. E.g. ‘”apoptosis*”‘ will include the * in the search and not use it as wildcard.
Then the list of pathways is shown, user can select anyone of the pathway
Then on the double click of the selected pathways from list of pathways, the pathway gets loaded into pathvisio