During the middle week of my intern, I continued working on improving the YesWorkflow Conceptual Model vocabulary and structure. As suggested by my primary mentor, I utilized Markdown format combined with HTML tags to create the model vocabulary documentation table to make it machine-readable. I also created another table for documenting the current mapping from YesWorkflow model to ProvONE model.
Compared with the model produced last week, I moved some URI-template related attributes from yw:Data to yw:Port, since a URI file template is corresponding to a specific port as input or output, and a data can have multiple URI names of multiple ports. While, in our existing examples, there is no use case for this scenario. Besides, with the help of my co-intern Linh and another mentor, I finally understood the meaning of class Channel in ProvONE namespace. P1:Channel is quite different from yw:Data. However, I am still wondering how Channel works for better queries in SPARQL. It seems our current YW model without Channel also works well. Therefore, I drew a graph for explaining my thought and sent it to my mentors. We will have a discussion about it this Friday afternoon.
In addition, I thought about some more complicated SPARQL queries which are based on model facts only, recon facts only and both facts. These extra queries can help solve other mixed provenance problems when coming across any issue after running the script. I have already completed and tested some of the extra queries based on the simulate_data_collection example, but there are some remaining to be further explored and generated.
For the following week, I will continue improving the YW model vocabulary and generating the extra SPARQL queries.