...
Synapse entity by synID: syn7205215 (the code file)
URL to a page describing normal distributions
Web
The web client does not support setting provenance when uploading a File. Instead, upload the File first, then navigate to the File in your Project. Click on the File Tools dropdown in the upper right hand corner and select Edit File Provenance. In the resulting pop-up, enter the relevant information. If you are entering an external URL as a reference, include the full URL path. In this example, you would enter http://mathworld.wolfram.com/NormalDistribution.html
.
Command Line
Code Block |
---|
synapse add random_numbers.txt --parentId syn1901847 --executed syn7205215 --used http://mathworld.wolfram.com/NormalDistribution.html |
...
Code Block |
---|
synapse add random_numbers.txt --parentId syn1901847 --executed ./generate_random_data.R --used http://mathworld.wolfram.com/NormalDistribution.html |
Python
Code Block | ||
---|---|---|
| ||
# Set provenance for data file generated by the script file data_file = File(path="random_numbers.txt", parent="syn1901847") data_file = syn.store(data_file, executed="syn7205215", used="http://mathworld.wolfram.com/NormalDistribution.html") |
R
Code Block | ||
---|---|---|
| ||
# Set provenance for data file generated by the script file data_file <- File(path="random_numbers.txt", parent="syn1901847") data_file <- synStore(data_file, executed="syn7205215", used="http://mathworld.wolfram.com/NormalDistribution.html") |
...
To continue our example above, we’ll now add some new results from our initial data file. We’re going to take the results in random_numbers.txt
and square them. The script to square the numbers will be square.R, and we’ll save the output to a data file, squares.txt. As with the previous example, the code file is already saved in Synapse, so we’ll upload the data file and set its provenance.
Web
To update the provenance on a file, navigate to the File that you would like to update. Click on the File Tools dropdown in the upper right hand corner and select Edit File Provenance. In the resulting pop-up, enter the relevant information.
...
Command Line
Code Block |
---|
# Add the data file to Synapse synapse add squares.txt -parentId syn1901847 # Set the provenance for newly created entity syn7209166 using synId synapse set-provenance -id syn7209166 -executed syn7209078 -used syn7208917 # Set the provenance for newly created entity syn7209166 using local path synapse set-provenance -id syn7209166 -executed ./square.R -used ./random_numbers.txt |
Python
Code Block | ||
---|---|---|
| ||
# Add the data file to Synapse squared_file = File(path="squares.txt", parentId="syn1901847") squared_file = syn.store(squared_file) # Set provenance for newly created entity syn7209166 squared_file = syn.setProvenance(squared_file, activity = Activity(used = "syn7208917", executed = "syn7209078")) # Provenance can also be set using local variables instead of looking up synIds squared_file = syn.setProvenance(squared_file, activity = Activity(used = data_file, executed = "syn7209078")) |
R
Code Block | ||
---|---|---|
| ||
# Add the data file to Synapse squared_file <- File(path="squares.txt", parentId="syn1901847") squared_file <- synStore(squared_file) # Set provenance for newly created entity syn7209166 act <- Activity(name = "Squared numbers", used = "syn7208917", executed = "syn7209078") synStore(squared_file, activity=act) # Provenance can also be set using local variables instead of looking up synIds act <- Activity(name = "Squared numbers", used = data_file, executed = "syn7209078") squared_file <- synStore(squared_file, activity=act) |
...
To delete a Provenance relationship, you must be the person who created the entity.
Web
Navigate to the entity you would like to delete provenance from (e.g. a File or Folder). In this example, we are deleting provenance from a file. Select File Tools, then Edit File Provenance. In the list of Used and Executed, click the minus symbol ( ) next to the URL or synID to delete each activity and Save your changes.
Command Line
Currently, deleting provenance is not supported in the command line client.
Python
Code Block |
---|
# Delete provenance on entity syn123 delete_provenance = syn.deleteProvenance('syn123') |
R
Code Block | ||
---|---|---|
| ||
# Delete provenance on entity syn123 deleteProvenance = synDeleteProvenance('syn123') |
Viewing Provenance
Web
Navigate to a File to view its provenance. Clicking on the triple dots above an entity will expand it to show the File's full provenance.
...
Command Line
Code Block |
---|
synapse get-provenance -id syn7209166 |
Python
Code Block | ||
---|---|---|
| ||
provenance = syn.getProvenance("syn7209166") provenance |
R
Code Block | ||
---|---|---|
| ||
provenance <- synGetProvenance("syn7209166") provenance |
...
If an activity isn’t assigned to an entity and then stored, a separate graph will be created for each file that the activity generated. The following example is used to assign the same activity to multiple files resulting in one provenance graph:
Web
Unfortunately, the web interface does not support assigning the same activity to multiple files. This action must be completed using either the R or the Python client.
...