Thanks @ChrisKeefe and @lizgehret! I will be interested in learning more about what you are doing at some point.
I'm working on tools for provenance parsing and replay, and am curious about your use cases.
We are developing an application that would allow users to the view the provenance of an artifact, similar to how q2-view does it, but would like to be able to interact with the provenance a bit more.
Our current solution which is based on code that @jakereps wrote awhile back is similar to:
provenance_file = artifact._archiver.provenance_dir / "action/action.yaml"
with provenance_file.open() as fh:
text = fh.read()
# replace custom qiime definitions that fail with yaml loader
# text = text.replace("!cite", "")
provenance = yaml.safe_load(text)
Not perfect, but perhaps someone will find it helpful