This summer I participated in the Google Summer of Code. Within the NRNB organization, I worked on the WikiPathways/PathVisio project. It was a great experience. I am very grateful to my mentor, Martina Kutmon for helping me along the way.
This project aimed at creating a library using PathVisio core module to create a library to just read and write GPML files (used by PathVisio to store pathways) which can be used by PathVisio, the WikiPathways app for Cytoscape and many other applications.
In other words a general GPML library which contains the data model, the functionality to read and write GPML files and relevant exporters to other often used file formats so it can be easily integrated in other applications.
This mostly involved getting rid of unused code. The following commits were the most significant in this phase.
- https://github.com/PathVisio/libGPML/commit/6623bf0a90d372f01d19560c08bb1a5eafd73178
- https://github.com/PathVisio/libGPML/commit/76744cfb391a660be8de1345e46beb6a192204d2
- https://github.com/PathVisio/libGPML/commit/3b354c8d45502f85a24878cbcb77bf1125756aa6
- https://github.com/PathVisio/libGPML/commit/9deed5caea1502e80edd7e8121156674382f6d60
The development of the new schema required a lot of discussion with the community involving major design decisions. This was accomplished in parallel among other goals.
- https://github.com/PathVisio/libGPML/commit/c43bbe8116dff60cd2f82c5aabaf5dc17b77651c
- https://github.com/PathVisio/libGPML/commit/bcb19d6471b9628142e49fdd65ad46b43eb2b0fd
- https://github.com/PathVisio/libGPML/commit/af49d662eafdf9221675d7fd6afe4ef8c1263aaf
- https://github.com/PathVisio/libGPML/commit/301c98a759a224881d2df407a2c9576a315f9f93
- https://github.com/PathVisio/libGPML/commit/c6f7047d24a5ce8b2e27761a10987f14660d9b09
- https://github.com/PathVisio/libGPML/commit/fabbf7fccde8fdc6077b23c9bdacd772b898e02a
- https://github.com/PathVisio/libGPML/commit/9a30e0fc6d0aee5c109ea082d3ce651aacd96b67
- https://github.com/PathVisio/libGPML/commit/78ccebde4a3b5fd2d11c5212e18e91a1a7eb69c4
- https://github.com/PathVisio/libGPML/commit/7096efa6ba9d04b3e5750f3523acbb0844ab9954
- https://github.com/PathVisio/libGPML/commit/4b550cd4e5306f25db067313cba096178a7e2769
This class was created to reinterpret the Pathway in a more network like model, easing the use of graph algorithms to perform better analysis.
- https://github.com/PathVisio/libGPML/commit/8bfc9a436730d842626ebb57c81502b219294d5b
- https://github.com/PathVisio/libGPML/commit/f6ac1c9b6d5deadf1226ee19b0499aa07e42f054
- https://github.com/PathVisio/libGPML/commit/1b7d814376fd042e9cc7f43d27c40b331f531a76
- https://github.com/PathVisio/libGPML/commit/a367246aab661bf10efd7429ceac9561f1b9039a
Using the PathVisio BioPAX plugin, an exporter for BioPAX was introduced, it was modified to create a BiopaxExporterStrict, a strict exporter which allows loosing data in order to avoid errors. An Exporter to SIF format was also added. Both exporters take the help of PathwayAsNetwork module to export.
- https://github.com/PathVisio/libGPML/commit/78503ade11f63c834b753409f4c8cb0a46fde15c
- https://github.com/PathVisio/libGPML/commit/94ffe0aca6afdc8beed21b728fd3a4fa7fa2627b
- https://github.com/PathVisio/libGPML/commit/a8b241bb481b498c78e4535663bf7cacae2d0a27
- https://github.com/PathVisio/libGPML/commit/55c76f95d4f0b5c0c2ae86e9a10d088c9f1d1e36