{"id":2772,"date":"2016-06-11T10:16:40","date_gmt":"2016-06-11T10:16:40","guid":{"rendered":"https:\/\/notebooks.dataone.org\/?p=2772"},"modified":"2016-06-11T10:16:40","modified_gmt":"2016-06-11T10:16:40","slug":"week-3-reproducibility-of-script-based-workflows","status":"publish","type":"post","link":"https:\/\/notebooks.dataone.org\/workflow-reproducibility\/week-3-reproducibility-of-script-based-workflows\/","title":{"rendered":"Week 3: Reproducibility of Script-Based Workflows"},"content":{"rendered":"

For this week, I continued to work on implementing\u00a0queries by defining some generic queries, e.g.:\u00a0for each sink node Y, compute all source nodes X that are in the lineage of Y\u00a0similar: for each output node, compute all input nodes on which the output depends. Then I practiced\u00a0more sophisticated\u00a0queries such as are the outputs that do NOT depend on ALL inputs? or queries for LCA (Lowest common ancestor) problems: for two given data products X and Y, determine the node(s) that are \u201clowest\u201d common ancestors of X and Y (\u201cmost recent common ancestor\u201d).<\/p>\n

Additionally, \u00a0I also exploited noWorkflow which uses abstract syntax tree (AST) analysis, reflection, and profiling, to collect provenance without the need of a version control system and enable scientists to avoid using naming conventions to store files originated in previous executions. After that I tried some examples in\u00a0noWorkflow, then started investigating some queries in this model.<\/p>\n

Next week, I will discuss more about Yin-Yang which combining YW( allowing the user to define a wf model implicit in a script) & NW (capturing retrospective provenance from Python scripts).<\/p>\n","protected":false},"excerpt":{"rendered":"

For this week, I continued to work on implementing\u00a0queries by defining some generic queries, e.g.:\u00a0for each sink node Y, compute all source nodes X that are in the lineage of Y\u00a0similar: for each output node, compute all input nodes on which the output depends. Then I practiced\u00a0more sophisticated\u00a0queries such as Continue reading Week 3: Reproducibility of Script-Based Workflows<\/span>→<\/span><\/a><\/p>\n","protected":false},"author":104,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[371],"tags":[],"_links":{"self":[{"href":"https:\/\/notebooks.dataone.org\/wp-json\/wp\/v2\/posts\/2772"}],"collection":[{"href":"https:\/\/notebooks.dataone.org\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/notebooks.dataone.org\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/notebooks.dataone.org\/wp-json\/wp\/v2\/users\/104"}],"replies":[{"embeddable":true,"href":"https:\/\/notebooks.dataone.org\/wp-json\/wp\/v2\/comments?post=2772"}],"version-history":[{"count":1,"href":"https:\/\/notebooks.dataone.org\/wp-json\/wp\/v2\/posts\/2772\/revisions"}],"predecessor-version":[{"id":2773,"href":"https:\/\/notebooks.dataone.org\/wp-json\/wp\/v2\/posts\/2772\/revisions\/2773"}],"wp:attachment":[{"href":"https:\/\/notebooks.dataone.org\/wp-json\/wp\/v2\/media?parent=2772"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/notebooks.dataone.org\/wp-json\/wp\/v2\/categories?post=2772"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/notebooks.dataone.org\/wp-json\/wp\/v2\/tags?post=2772"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}