Week 8 – Update
Hello everyone, this Xiaoliang Jiang from project 1. This is the eighth week for my internship. As the project approaches the end, for this week, I kept revising my R extension by adding some new functions to improve the stability of my whole R extension package, including wrote a new inserting break function to allow spaces be valid in title and properties, extended the number of levels, added a user-defined association library and improved stability of the function.
At the beginning of this week, my function works well when inputs do not contain spaces. Since, originally, I use spaces to split different entities, if inputs contain these spaces, the function will split entities incorrectly. In weekly meeting between my mentors and I, we have discussed this problem in depth. As I was inspired by the discussion, I decided to follow mentor’s suggestion that using some other special strings to represent the space as URL decoder/encoder which replaces spaces by “%20”. In order to replace these spaces, I revised my insert breaks function and output file generating function to encode breaks before adding breaks and decode them when generating output file. After that, my function could work well with spaces right now.
In addition, I extended the number of levels from three to seven. Originally, I thought three levels are enough for most situations, however, when I tried to regenerate a real RDF example, I found that three levels are not enough. So, I extended the number of levels by revising the function logic, modifying the structure of breaks and adding more options of levels into drop-down menu.
I also added a user-defined association library in my function to let users added associations as they want. Originally, this association library is in my function, but after discuss this question with my mentor, I followed my mentor’s suggestion to use an external file as association library to let users could edit it by themselves.
At last, in order to let functions above work well, I revised sum_str() function by adding several arguments. I also tried to test my functions by generating a real RDF file. In the next week, as I think my work is functionally complete now, I will focus on tidying things up and writing some documents like README.