Repository_ReadkeyWords00
Set of keywords use to launch the search of the repository. They must be surrounded by single quotes.
2017-01-18 09:05:41.557 UTC
'breast cancer'
2017-01-18 19:10:26.345 UTC
headerFile00
--headerFile 'path/to/file'
2017-01-18 19:41:25.847 UTC
Dataset file with a header row that can be used to give a secondary ranking to the results' relevance. It is important to give the path to the file surrounded by single quotes. Otherwise, leave it empty.
2017-01-18 09:05:23.23 UTC
lastAction0repoSearchkeyWords0headerFile0STDOUT00STDERR00net.sf.taverna.t2.activitiesexternal-tool-activity1.5net.sf.taverna.t2.activities.externaltool.ExternalToolActivity
default_2
789663B8-DA91-428A-9F7D-B3F3DA185FD4
default local_4
<?xml version="1.0" encoding="UTF-8"?>
<localInvocation><directory>/home/brayan/Taverna/</directory><shellPrefix>/bin/sh -c</shellPrefix><linkCommand>/bin/ln -s %%PATH_TO_ORIGINAL%% %%TARGET_NAME%%</linkCommand></localInvocation>
25cde908-3071-4bbf-af89-ff2168bc6c0a
python repoSearch.py %%keyWords%% %%headerFile%%
1200
1800
headerFile
keyWords
repoSearch.py
true
false
false
UTF-8
false
import requests, urllib, json, argparse, csv, pickle
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Constants definition
REPOSEARCH_FILE = '/home/brayan/Taverna/repoSearch-results'
DATAVERSE_API_KEY = 'aa7b80fd-db9d-4f10-a33c-8f0879d0160d'
SEARCH_API_POINT = 'https://dataverse.harvard.edu/api/search?'
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Input data read
parser = argparse.ArgumentParser(description = 'This module launches the search over the Harvard Dataverse.')
parser.add_argument('keywords', help = 'List of keywords to use to perform the search')
parser.add_argument('--headerFile', help = 'File with a header row that can be used to check datasets\' importance')
searchKeywords = parser.parse_args().keywords
headerFile = parser.parse_args().headerFile
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Search
searchQuery = {'q' : searchKeywords, 'type' : 'dataset', 'show_relevance': 'true', 'per_page' : 20, 'key' : DATAVERSE_API_KEY}
searchEncoded = urllib.urlencode(searchQuery)
response = requests.get(SEARCH_API_POINT + searchEncoded)
responseDict = json.loads(response.text)
header = searchKeywords.lower().split() # In case there is no headerFile, we use search keywords
if headerFile:
header = [word.lower() for word in next(csv.reader(open(headerFile, 'rb')), [])]
print 'Read header:', ', '.join(header)
print responseDict['data']['total_count'], 'datasets were found!'
resultsFile = open(REPOSEARCH_FILE, 'w')
resultsFile.truncate()
pickle.dump(responseDict['data']['items'], resultsFile)
resultsFile.close()
keyWords
keyWords
false
false
false
UTF-8
false
false
false
headerFile
headerFile
false
false
false
UTF-8
false
false
false
true
true
true
0
false
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize
1
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry
1.0
1000
5000
0
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokemainLoopheaderFile0keyWords0lastAction00net.sf.taverna.t2.activitiesdataflow-activity1.5net.sf.taverna.t2.activities.dataflow.DataflowActivitynet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize
1
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Loop
<activity xmlns="http://taverna.sf.net/2008/xml/t2flow"><raven><group>net.sf.taverna.t2.activities</group><artifact>beanshell-activity</artifact><version>1.5</version></raven><class>net.sf.taverna.t2.activities.beanshell.BeanshellActivity</class><inputMap /><outputMap /><configBean encoding="xstream"><net.sf.taverna.t2.activities.beanshell.BeanshellActivityConfigurationBean xmlns="">
<inputs>
<net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
<name>lastAction</name>
<depth>0</depth>
<translatedElementType>java.lang.String</translatedElementType>
<allowsLiteralValues>true</allowsLiteralValues>
</net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
</inputs>
<outputs>
<net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityOutputPortDefinitionBean>
<name>loop</name>
<depth>0</depth>
<granularDepth>0</granularDepth>
</net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityOutputPortDefinitionBean>
</outputs>
<classLoaderSharing>workflow</classLoaderSharing>
<localDependencies />
<artifactDependencies />
<script>loop = "" + ! lastAction.equals("Quit program");
if ("true".matches(loop)) {
Thread.sleep(500);
}</script>
<dependencies />
</net.sf.taverna.t2.activities.beanshell.BeanshellActivityConfigurationBean></configBean><annotations /></activity>
true
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry
1.0
1000
5000
0
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Invoketitlevalue00net.sf.taverna.t2.activitiesstringconstant-activity1.5net.sf.taverna.t2.activities.stringconstant.StringConstantActivity
Search info
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize
1
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry
1.0
1000
5000
0
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokeTellmessage0title0net.sf.taverna.t2.activitieslocalworker-activity1.5net.sf.taverna.t2.activities.localworker.LocalworkerActivity
title
0
'text/plain'
java.lang.String
true
message
0
'text/plain'
java.lang.String
true
workflow
net.sourceforge.taverna.scuflworkers.ui.TellWorker
UserNameHere
2017-01-18 11:34:10.263 UTC
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize
1
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry
1.0
1000
5000
0
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokeConcatenate_two_stringsstring10string20output00net.sf.taverna.t2.activitieslocalworker-activity1.5net.sf.taverna.t2.activities.localworker.LocalworkerActivity
string1
0
'text/plain'
java.lang.String
true
string2
0
'text/plain'
java.lang.String
true
output
0
'text/plain'
0
workflow
org.embl.ebi.escience.scuflworkers.java.StringConcat
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize
1
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry
1.0
1000
5000
0
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokedeleteTmpnet.sf.taverna.t2.activitiesexternal-tool-activity1.5net.sf.taverna.t2.activities.externaltool.ExternalToolActivity
789663B8-DA91-428A-9F7D-B3F3DA185FD4
default local_4
<?xml version="1.0" encoding="UTF-8"?>
<localInvocation><directory>/home/brayan/Taverna/</directory><shellPrefix>/bin/sh -c</shellPrefix><linkCommand>/bin/ln -s %%PATH_TO_ORIGINAL%% %%TARGET_NAME%%</linkCommand></localInvocation>
53489c16-f8e0-45d8-a7ad-6ddea79fe390
python deleteTmp.py
1200
1800
deleteTmp.py
true
false
false
UTF-8
false
import os
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Constant definition
REPOSEARCH_FILE = '/home/brayan/Taverna/repoSearch-results'
CURRENT_RESULT_FILE = '/home/brayan/Taverna/repoSearch-current'
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Main program
try:
os.remove(REPOSEARCH_FILE)
os.remove(CURRENT_RESULT_FILE)
except OSError:
pass
false
true
true
0
false
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize
1
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry
1.0
1000
5000
0
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokerepoSearchkeyWordsrepoSearchheaderFilemainLoopheaderFilemainLoopkeyWordsTellmessageTelltitleConcatenate_two_stringsstring1Concatenate_two_stringsstring2lastAction
7440a668-9bb7-4333-a053-884366af36a4
2017-01-18 11:57:45.734 UTC
ae638f31-83db-4a37-a87c-d57ddc0e972e
2017-01-18 19:10:27.352 UTC
1ec03e3a-bd5a-4b7a-839f-e8234fdbea89
2017-01-18 09:20:45.651 UTC
63f06900-e18f-4d6b-b4cd-21bb610446e2
2017-01-16 23:37:10.354 UTC
f07fe259-464f-4ea9-89a4-f214e61f487c
2017-01-17 00:59:58.401 UTC
7c13e557-6089-45e4-bad6-de760ebbd5ac
2017-01-17 00:07:26.638 UTC
5481fa2a-d102-410a-a82a-c0f4a7b50ead
2017-01-18 11:53:45.611 UTC
39622add-a611-4290-8537-32a6ad23ad9e
2017-01-18 11:55:08.982 UTC
8ca26ca8-67bf-4991-b689-152e24402974
2017-01-18 11:37:28.725 UTC
2ef40ea0-5b2e-4e0a-89d9-8e89833d3914
2017-01-18 09:26:48.244 UTC
be18670d-be68-4a97-9da6-666c0860d38b
2017-01-18 09:24:20.669 UTC
add29333-981c-4309-b10d-c14d53833e22
2017-01-17 00:03:42.858 UTC
9822530b-1dcc-4cae-a9bc-0318b5f5f9fa
2017-01-17 00:55:08.400 UTC
12c905cc-4760-4584-8590-40d8710c8060
2017-01-18 08:52:13.727 UTC
abd801a6-78b0-4386-816a-9ff44aac7671
2017-01-17 00:09:43.754 UTC
This workflow launches a search in the Harvard Dataverse repository. Only a few keywords are needed. One can optionally include a datafile with a header line so that results' descriptions are compared with those words that compose the header in order to give a secondary ranking of the results' relevance.
2017-01-18 08:52:08.915 UTC
73b916d9-6bf9-43c5-96d1-4160d9538d8c
2017-01-17 00:22:21.631 UTC
96a6d5cd-ffb4-47bc-a9d3-bdaa97ccc4b3
2017-01-18 09:48:34.509 UTC
b49af5ee-81c9-40dd-97d9-f509207ec4a7
2017-01-18 09:12:47.755 UTC
674ae031-9d5c-4639-af1b-c72e3b521c41
2017-01-17 00:42:55.580 UTC
f0e19e1b-2bb6-41ec-bec0-744a716b7651
2017-01-18 19:41:27.176 UTC
b41b99ad-2bde-4d65-abda-d147be841aa5
2017-01-18 09:21:11.51 UTC
963215c5-8509-4511-b6e0-16f51d8dfe59
2017-01-18 09:28:07.60 UTC
2fcefc6d-b130-4e96-8f1e-fae6bb4b65bb
2017-01-17 00:36:52.364 UTC
e0afde41-dd76-48a8-aecb-a68689a87fc7
2017-01-18 09:29:36.20 UTC
c6052817-c6e8-48d6-ae12-f954d84eb240
2017-01-17 00:07:04.260 UTC
2638fc67-4bba-4a96-8aeb-c078c02270e5
2017-01-18 09:40:18.133 UTC
48b0e435-7de9-4d54-bcfb-be360a6c8d60
2017-01-17 00:52:12.582 UTC
36110a21-1fe8-4eac-b7c5-ee3f5426df53
2017-01-17 01:01:25.366 UTC
1c42bdd6-f65f-4c70-beab-5a1b5c6005fb
2017-01-18 11:36:21.57 UTC
9432f2f1-321b-4767-b282-f08d5f60d713
2017-01-18 11:52:58.779 UTC
5ffdf7d4-b6fc-436b-8ae3-0f47ef6f4685
2017-01-16 23:30:41.164 UTC
e5879a29-aa74-4bcb-94b0-a6c416bc1354
2017-01-16 23:51:21.996 UTC
9106cf46-861d-4802-87d5-318a2faaf505
2017-01-18 09:31:47.532 UTC
6dd6e1ba-fb1f-4d87-858e-bb3eefe88167
2017-01-18 08:54:00.609 UTC
86e6efc1-3d7c-437a-a317-6a08decb30eb
2017-01-17 00:15:37.626 UTC
f61c2521-be6b-4440-865c-2def6cb23408
2017-01-18 09:04:54.183 UTC
65de9280-3a9e-4b5e-abae-4197f6eba2a4
2017-01-18 14:18:24.132 UTC
c9ac6f13-cdb8-4b09-8ca7-065f98e55980
2017-01-18 08:58:18.338 UTC
a98726c7-b2ba-4d71-a3e1-48216f60bdc5
2017-01-17 00:52:55.392 UTC
a276f6e7-43d3-4d2e-8769-51c4f179e64a
2017-01-18 11:54:55.503 UTC
Brayan Stiven Zapata Impatá
2017-01-18 08:50:18.830 UTC
1eeb8598-ea93-491a-a663-3486d764b213
2017-01-18 09:07:49.619 UTC
1f0446e7-42ef-4f19-a4d1-55b3078ebb5b
2017-01-18 14:13:47.431 UTC
Repository Read
2017-01-18 08:50:25.598 UTC
8e91050a-7edc-496b-b602-117ede0703b3
2017-01-17 00:10:15.250 UTC
a8506575-fa1a-4385-b6c1-0421241ca120
2017-01-18 15:22:12.921 UTC
118e1be6-3d7c-4791-a224-f9f679af1e1c
2017-01-16 23:52:58.322 UTC
0ab5a349-3932-40f2-82fc-fce69408dfe6
2017-01-18 09:36:56.284 UTC
c176bb12-61dc-409d-9a52-43640960e3c4
2017-01-16 23:31:41.570 UTC
f7ec5397-111f-47d2-90e1-0a6a4725670b
2017-01-18 15:23:10.390 UTC
effb819b-c5ca-463d-a038-ff7965c920e1
2017-01-18 09:05:42.732 UTC
d9562a4f-9df2-427c-8926-3c5a3c17656c
2017-01-17 01:03:25.206 UTC
b8bac212-1097-4a89-afdc-f9712c1cc398
2017-01-18 09:17:47.147 UTC
d2cb45c5-8163-4e68-8ab1-227be447e010
2017-01-18 11:52:56.937 UTC
8bc37dc1-264a-4f11-9670-9c914fdb7c9a
2017-01-17 00:11:49.963 UTC
044d1437-46cc-4199-860c-0155024ddb69
2017-01-18 11:55:22.672 UTC
89acf9fb-729b-4e9c-bbd7-3da2f4fb8582
2017-01-18 11:34:11.720 UTC
437185d4-93dc-4872-931e-c590d3bce40f
2017-01-18 11:57:34.919 UTC
f6197c8f-ceb4-4ed2-aab5-8f2649542d5a
2017-01-17 00:26:34.467 UTC
2f99fa7e-1f4a-40cb-9743-8561a3d6a0fe
2017-01-18 09:11:53.707 UTC
50a04a08-8c1c-48f7-b3ba-02e603d46486
2017-01-18 09:45:44.344 UTC
d27ce05d-6e23-4dc0-bf99-e0fc1bc08f34
2017-01-18 09:55:35.830 UTC
IfDownloadDownloadFlag00resultDownloadSTDOUT00STDERR00net.sf.taverna.t2.activitiesexternal-tool-activity1.5net.sf.taverna.t2.activities.externaltool.ExternalToolActivity
default_2
789663B8-DA91-428A-9F7D-B3F3DA185FD4
default local_4
<?xml version="1.0" encoding="UTF-8"?>
<localInvocation><directory>/home/brayan/Taverna/</directory><shellPrefix>/bin/sh -c</shellPrefix><linkCommand>/bin/ln -s %%PATH_TO_ORIGINAL%% %%TARGET_NAME%%</linkCommand></localInvocation>
8cd38833-752b-4a4b-b494-f5ce7c226df2
python resultDownload.py
1200
1800
resultDownload.py
true
false
false
UTF-8
false
import sys, os, requests, urllib, json, re
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Constants definition
DATASETS_FOLDER = '/home/brayan/Taverna/datasets'
CURRENT_RESULT_FILE = '/home/brayan/Taverna/repoSearch-current'
DATAVERSE_API_KEY = 'aa7b80fd-db9d-4f10-a33c-8f0879d0160d'
DATASET_API_POINT = 'https://dataverse.harvard.edu/api/datasets/:persistentId/?'
FILEACCESS_API_POINT = 'https://dataverse.harvard.edu/api/access/datafile/'
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Dataset file download
currentResultFile = open(CURRENT_RESULT_FILE, 'r')
globalId = currentResultFile.read()
currentResultFile.close()
searchQuery = {'persistentId' : globalId, 'key' : DATAVERSE_API_KEY}
searchEncoded = urllib.urlencode(searchQuery)
response = requests.get(DATASET_API_POINT + searchEncoded)
responseDict = json.loads(response.text)
if len(responseDict['data']['latestVersion']['files']) == 0:
print 'No files in this dataset...'
print 'Showing the following result.'
sys.exit()
fileData = responseDict['data']['latestVersion']['files'][0]['dataFile']
if re.match('.*pdf.*|.*various.*|.*i', fileData['contentType'].lower()) or re.match('.*x-stata.*|.*spss-*', fileData['originalFileFormat']):
print 'This dataset includes a non-open file format (PDF, SPSS, Stata, etc)...'
print 'Showing the following result.'
sys.exit()
searchQuery = {'format' : 'original', 'key' : DATAVERSE_API_KEY}
searchEncoded = urllib.urlencode(searchQuery)
response = requests.get(FILEACCESS_API_POINT + str(fileData['id']) + '?' + searchEncoded)
if not os.path.exists(DATASETS_FOLDER):
os.makedirs(DATASETS_FOLDER)
fileName = fileData['filename']
targetFile = open(DATASETS_FOLDER + '/' + fileName, 'w')
targetFile.truncate()
targetFile.write(response.text)
targetFile.close()
print "Datafile '" + fileName + "' donwloaded!"
false
true
true
0
false
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize
1
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry
1.0
1000
5000
0
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokeConcatenate_two_stringsstring20string10output00net.sf.taverna.t2.activitieslocalworker-activity1.5net.sf.taverna.t2.activities.localworker.LocalworkerActivity
string1
0
'text/plain'
java.lang.String
true
string2
0
'text/plain'
java.lang.String
true
output
0
'text/plain'
0
workflow
org.embl.ebi.escience.scuflworkers.java.StringConcat
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize
1
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry
1.0
1000
5000
0
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokedownloadInfomessage0title0net.sf.taverna.t2.activitieslocalworker-activity1.5net.sf.taverna.t2.activities.localworker.LocalworkerActivity
title
0
'text/plain'
java.lang.String
true
message
0
'text/plain'
java.lang.String
true
answer
0
'text/plain'
0
workflow
net.sourceforge.taverna.scuflworkers.ui.TellWorker
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize
1
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry
1.0
1000
5000
0
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Invoketitlevalue00net.sf.taverna.t2.activitiesstringconstant-activity1.5net.sf.taverna.t2.activities.stringconstant.StringConstantActivity
Download information
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize
1
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry
1.0
1000
5000
0
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokeConcatenate_two_stringsstring2Concatenate_two_stringsstring1downloadInfomessagedownloadInfotitle
2524aebc-b9da-4d9f-9d5f-e2f2095e9232
2017-01-18 11:36:58.517 UTC
a2713069-bf03-4644-85b9-520be9c88247
2017-01-18 09:36:46.844 UTC
1ea73594-9729-45f9-830e-476fe1b505b6
2017-01-17 00:51:51.34 UTC
In case the selected action is "Download", this workflow dowloads the dataset file.
2017-01-18 09:36:47.162 UTC
IfDownload
2017-01-17 00:51:28.695 UTC
298f433a-a717-4d3f-953f-6be4a164139b
2017-01-18 09:36:50.348 UTC
e7b9085c-40f4-4cb5-ab16-3c7bb6a8d6e5
2017-01-17 01:03:15.742 UTC
fa1344aa-6169-49ad-85b1-5dcddb49d5e5
2017-01-18 14:17:17.813 UTC
332f5ced-3a18-4d66-970e-46907457392f
2017-01-17 00:52:06.734 UTC
9f5da592-bb4e-435b-9531-55e12d4b2988
2017-01-18 14:13:36.381 UTC
3bef4d22-b94c-4051-8ae3-f52f4d44349f
2017-01-18 09:48:25.989 UTC
a8cb744d-481e-4dee-9966-b6e2ea2ac9d3
2017-01-18 09:29:28.884 UTC
469e2c4a-0120-460c-a466-17000bbedfce
2017-01-18 11:37:02.453 UTC
39351cdd-f67a-4dc6-9b3b-1d8eb4c8cdac
2017-01-18 09:45:40.870 UTC
Brayan Stiven Zapata Impatá
2017-01-18 09:36:23.389 UTC
15e5d7e1-06cf-43c5-a022-e5b0b78c6219
2017-01-18 09:03:32.250 UTC
cd7123cd-3b33-49a2-8b73-80d882d4d121
2017-01-18 09:55:06.198 UTC
Search_main_loopkeyWords00headerFile00lastAction0IfDownloadDownloadFlag0net.sf.taverna.t2.activitiesdataflow-activity1.5net.sf.taverna.t2.activities.dataflow.DataflowActivitynet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize
1
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry
1.0
1000
5000
0
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokeResultsIterationkeyWords0headerFile0Action00net.sf.taverna.t2.activitiesdataflow-activity1.5net.sf.taverna.t2.activities.dataflow.DataflowActivitynet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize
1
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Loop
<activity xmlns="http://taverna.sf.net/2008/xml/t2flow"><raven><group>net.sf.taverna.t2.activities</group><artifact>beanshell-activity</artifact><version>1.5</version></raven><class>net.sf.taverna.t2.activities.beanshell.BeanshellActivity</class><inputMap /><outputMap /><configBean encoding="xstream"><net.sf.taverna.t2.activities.beanshell.BeanshellActivityConfigurationBean xmlns="">
<inputs>
<net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
<name>Action</name>
<depth>0</depth>
<translatedElementType>java.lang.String</translatedElementType>
<allowsLiteralValues>true</allowsLiteralValues>
</net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
</inputs>
<outputs>
<net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityOutputPortDefinitionBean>
<name>loop</name>
<depth>0</depth>
<granularDepth>0</granularDepth>
</net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityOutputPortDefinitionBean>
</outputs>
<classLoaderSharing>workflow</classLoaderSharing>
<localDependencies />
<artifactDependencies />
<script>loop = "" + Action.equals("Next");
if ("true".matches(loop)) {
Thread.sleep(500);
}</script>
<dependencies />
</net.sf.taverna.t2.activities.beanshell.BeanshellActivityConfigurationBean></configBean><annotations /></activity>
true
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry
1.0
1000
5000
0
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokecheckIfDownloadAction0DownloadFlags11
This service checks if the condition is "true" and if so outputs a value in the pass_flags list and
leaves the fail_flags empty. If the condition is not true then the service outputs a value in the
fail_flags list and leaves the pass_flags empty.
2011-11-15 09:59:22.100 UTC
net.sf.taverna.t2.activitiesbeanshell-activity1.5net.sf.taverna.t2.activities.beanshell.BeanshellActivity
Action
0
text/plain
java.lang.String
true
DownloadFlags
1
1
workflow
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize
1
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry
1.0
1000
5000
0
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokeIfDownloadDownloadFlagResultsIterationkeyWordsResultsIterationheaderFilecheckIfDownloadActionlastAction
12b383c1-d878-42fb-a175-12cd3a4513f3
2017-01-18 11:54:35.498 UTC
3b75ad0c-0566-4418-ac57-6a6ad2b6be8e
2017-01-18 09:35:15.124 UTC
18839b5f-5caa-40ef-8f64-05c0a56e19d8
2017-01-18 11:55:21.471 UTC
baeedf29-d74f-43e3-a023-ab36bc37eba8
2017-01-18 11:36:17.565 UTC
08707bb7-18c1-4c23-bc81-497fff0cf7a0
2017-01-18 09:55:26.150 UTC
Once the repo sends the results, this workflow iterates through them and download the dataset files (only if they are CSV/text files).
2017-01-18 09:35:12.647 UTC
aed0108e-1a6c-42da-b2c3-ea879f935893
2017-01-18 09:25:32.355 UTC
3deddeb4-434c-4509-8d86-7d5f46f1a1a8
2017-01-18 14:18:17.711 UTC
77587c6f-c6ee-404b-a25d-b73734e9bef9
2017-01-18 09:29:33.460 UTC
e0ffc6e0-94e7-48c2-8dd4-6ea98f2a3b90
2017-01-18 09:24:11.571 UTC
afc5b273-fecf-45f0-94a2-50cbf569bf7c
2017-01-18 11:52:58.502 UTC
38f405af-10b4-4419-a640-e109847bf9dc
2017-01-18 14:17:19.493 UTC
012d5a82-759c-4635-987a-93e13d96929a
2017-01-18 09:45:42.93 UTC
a00517a8-1948-4386-b321-b6eaff6383ae
2017-01-18 14:13:45.383 UTC
Brayan Stiven Zapata Impatá
2017-01-18 09:34:12.649 UTC
3aa09d49-93d2-4396-813e-0b68dfe07e4a
2017-01-18 09:19:50.246 UTC
b4b00cb4-e6d0-4717-bd6e-6b2aef2fda43
2017-01-18 11:52:56.665 UTC
1fab449c-ec8d-4a30-9750-36837d102418
2017-01-18 11:53:45.338 UTC
291aac27-f144-4132-92ad-a8ad5316c8e2
2017-01-18 09:23:45.532 UTC
6fba939e-576d-4e33-bfbe-fce018d8605f
2017-01-18 15:23:10.155 UTC
818ee95d-ccf7-4441-aa05-d69a138a9582
2017-01-18 09:20:18.507 UTC
3c5a1c95-77c4-4571-8c6e-169d437e8cfd
2017-01-18 11:54:51.694 UTC
a41c908f-3b71-4eba-b1bd-be03b1bed7f6
2017-01-18 11:37:28.469 UTC
f548e44c-4efb-4251-9ad2-8e852611270c
2017-01-18 09:48:32.870 UTC
Search main loop
2017-01-18 09:34:21.89 UTC
f5a344d0-9dda-4aa4-9293-eb3fd23fd4a8
2017-01-18 09:36:55.21 UTC
ResultsIterationheaderFile00keyWords00Action0resultsReadheaderFile0keyWords0STDOUT00STDERR00net.sf.taverna.t2.activitiesexternal-tool-activity1.5net.sf.taverna.t2.activities.externaltool.ExternalToolActivity
default_2
789663B8-DA91-428A-9F7D-B3F3DA185FD4
default local_4
<?xml version="1.0" encoding="UTF-8"?>
<localInvocation><directory>/home/brayan/Taverna/</directory><shellPrefix>/bin/sh -c</shellPrefix><linkCommand>/bin/ln -s %%PATH_TO_ORIGINAL%% %%TARGET_NAME%%</linkCommand></localInvocation>
a6d2412f-4a3a-44ec-8bc3-abc24ca32ec8
python resultsRead.py %%keyWords%% %%headerFile%%
1200
1800
headerFile
keyWords
resultsRead.py
true
false
false
UTF-8
false
import argparse, csv, pickle
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Constants definition
REPOSEARCH_FILE = '/home/brayan/Taverna/repoSearch-results'
CURRENT_RESULT_FILE = '/home/brayan/Taverna/repoSearch-current'
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Data definition
parser = argparse.ArgumentParser(description = 'This module reads the results send by the repository.')
parser.add_argument('keywords', help = 'List of keywords used to perform the search')
parser.add_argument('--headerFile', help = 'File with a header row that can be used to check datasets\' importance')
searchKeywords = parser.parse_args().keywords
headerFile = parser.parse_args().headerFile
resultsFile = open(REPOSEARCH_FILE, 'r')
results = pickle.load(resultsFile)
header = searchKeywords.lower().split() # In case there is no headerFile, we use search keywords
if headerFile:
header = [word.lower() for word in next(csv.reader(open(headerFile, 'rb')), [])]
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Result reading
dataset = results[0]
print dataset['name'], '\n'
print '- Search score:', dataset['score']
print '- Global Id:', dataset['global_id']
if 'description' in dataset:
print '- Description:'
lenght = len(dataset['description'])
maxLength = 100
for i in range(lenght / maxLength):
if i * maxLength + 2 * maxLength > lenght:
print dataset['description'][i * maxLength : ]
else:
print dataset['description'][i * maxLength : i * maxLength + maxLength]
matches = [word for word in header if word in dataset['description'].lower()]
print '- Matches:', len(matches) , '/', len(header)
print '- Matched words:', ', '.join(matches)
resultsFile = open(REPOSEARCH_FILE, 'w')
resultsFile.truncate()
pickle.dump(results[1:], resultsFile)
resultsFile.close()
currentResultFile = open(CURRENT_RESULT_FILE, 'w')
currentResultFile.truncate()
currentResultFile.write(dataset['global_id'])
currentResultFile.close()
keyWords
keyWords
false
false
false
UTF-8
false
false
false
headerFile
headerFile
false
false
false
UTF-8
false
false
false
true
true
true
0
false
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize
1
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry
1.0
1000
5000
0
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Invokemessagevalue00net.sf.taverna.t2.activitiesstringconstant-activity1.5net.sf.taverna.t2.activities.stringconstant.StringConstantActivity
Select an action to perform over the result:
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize
1
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry
1.0
1000
5000
0
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokeQuitOptionvalue00net.sf.taverna.t2.activitiesstringconstant-activity1.5net.sf.taverna.t2.activities.stringconstant.StringConstantActivity
Quit program
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize
1
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry
1.0
1000
5000
0
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokeNextOptionvalue00net.sf.taverna.t2.activitiesstringconstant-activity1.5net.sf.taverna.t2.activities.stringconstant.StringConstantActivity
Next
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize
1
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry
1.0
1000
5000
0
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokeDownloadOptionvalue00net.sf.taverna.t2.activitiesstringconstant-activity1.5net.sf.taverna.t2.activities.stringconstant.StringConstantActivity
Download
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize
1
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry
1.0
1000
5000
0
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokecreateMenssagestring20string10output00net.sf.taverna.t2.activitieslocalworker-activity1.5net.sf.taverna.t2.activities.localworker.LocalworkerActivity
string1
0
'text/plain'
java.lang.String
true
string2
0
'text/plain'
java.lang.String
true
output
0
0
workflow
org.embl.ebi.escience.scuflworkers.java.StringConcat
UserNameHere
2017-01-18 09:12:42.726 UTC
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize
1
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry
1.0
1000
5000
0
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokeConcatenate_two_stringsstring10string20output00net.sf.taverna.t2.activitieslocalworker-activity1.5net.sf.taverna.t2.activities.localworker.LocalworkerActivity
string1
0
'text/plain'
java.lang.String
true
string2
0
'text/plain'
java.lang.String
true
output
0
'text/plain'
0
workflow
org.embl.ebi.escience.scuflworkers.java.StringConcat
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize
1
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry
1.0
1000
5000
0
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokeActionOverResultmessage0valueList1title0answer00net.sf.taverna.t2.activitieslocalworker-activity1.5net.sf.taverna.t2.activities.localworker.LocalworkerActivity
valueList
1
l('text/plain')
java.lang.String
true
message
0
'text/plain'
java.lang.String
true
title
0
'text/plain'
java.lang.String
true
answer
0
'text/plain'
0
workflow
net.sourceforge.taverna.scuflworkers.ui.SelectWorker
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize
1
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry
1.0
1000
5000
0
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Invoketitlevalue00net.sf.taverna.t2.activitiesstringconstant-activity1.5net.sf.taverna.t2.activities.stringconstant.StringConstantActivity
New result
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize
1
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry
1.0
1000
5000
0
net.sf.taverna.t2.coreworkflowmodel-impl1.5net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokeresultsReadheaderFileresultsReadkeyWordscreateMenssagestring2createMenssagestring1Concatenate_two_stringsstring1Concatenate_two_stringsstring2ActionOverResultmessageActionOverResulttitleActionOverResultvalueListActionOverResultvalueListActionOverResultvalueListAction
cd494e49-a182-41dc-b434-aa85823c7a4e
2017-01-18 09:17:45.827 UTC
40d3a924-2a4b-404e-9030-be84adbcbe8e
2017-01-18 09:04:34.906 UTC
59457717-f145-4353-882e-67e3ae2078c6
2017-01-18 09:18:43.771 UTC
9f5a1f04-e393-451a-8f63-71315eabd570
2017-01-18 09:36:12.540 UTC
fd7965fb-8874-4b79-9f8e-0bb4220b0d6d
2017-01-18 15:23:09.992 UTC
12910405-7067-42db-b43f-81fad95fac88
2017-01-18 09:48:16.597 UTC
ResultsIteration
2017-01-17 00:00:23.548 UTC
b4082b66-02fb-4aaa-b85b-f3b5c631ea19
2017-01-17 00:36:45.868 UTC
7fc40992-cef3-44f2-98c9-3df481d3a3db
2017-01-17 00:09:40.326 UTC
2a6b5ae4-f707-4945-9710-a99601a035ee
2017-01-18 11:54:33.494 UTC
8730ceb4-d074-40b2-bdf1-a186d57242c9
2017-01-18 11:53:42.838 UTC
04ad450c-2d6e-4c0b-8a24-65a788bc6a48
2017-01-18 09:07:47.362 UTC
ea818803-c2ac-43be-bba0-60745e7f822b
2017-01-18 11:37:22.128 UTC
Displays the information of a single result and ask for an action to perform over it.
2017-01-18 09:36:11.534 UTC
50ef0d4f-3980-4bf8-977a-60a6068f2f2e
2017-01-18 11:36:10.941 UTC
ceda8e50-0f46-4910-ba96-6f6e9ad0f86a
2017-01-18 09:54:33.907 UTC
b430d88f-b0e7-4058-a3e8-8d20e1c97a80
2017-01-18 11:37:26.85 UTC
531fa87e-acd8-4b6c-8e72-3998388ae562
2017-01-18 09:11:46.819 UTC
3488ae09-255d-490d-bb74-17920b69d20b
2017-01-18 11:54:49.439 UTC
2f356067-d3bb-4eb3-a73b-90926dddb76a
2017-01-17 00:36:21.972 UTC
e0f4b85a-772b-429e-b6ff-be1ed50ce742
2017-01-18 08:57:18.525 UTC
6fffd565-6d08-4f7d-9b40-9719d47b199f
2017-01-17 00:01:41.740 UTC
fa9d38ed-f1d1-4e6c-8226-3dc79ccd0ec4
2017-01-18 11:43:00.589 UTC
669ca007-bd14-4966-b1d3-a0ef80378e07
2017-01-18 08:57:35.749 UTC
dd27f10e-cd27-46ec-b444-12c3f1bb211d
2017-01-18 09:12:46.787 UTC
4230824b-f64b-45bf-aeec-1584c7f04752
2017-01-17 00:07:01.330 UTC
55da0de6-bdc6-40b9-b6e4-78c00a1b7cb6
2017-01-18 08:57:41.74 UTC
e8bab8f2-3f7a-4f43-839a-1d2005b22d73
2017-01-17 00:03:25.764 UTC
Brayan Stiven Zapata Impatá
2017-01-18 09:35:46.915 UTC
3f53d6ad-ecb8-4a3b-b5a3-dd1dc6b2fb27
2017-01-18 08:57:13.312 UTC
d94b8b21-36d4-4543-bafe-ed4f5559cb94
2017-01-18 08:58:03.674 UTC
68dc1c1f-8096-4912-8a52-cf3dba401646
2017-01-18 11:52:53.726 UTC
26391e9b-9544-475b-b77b-4f1ba0ba1f0c
2017-01-18 14:18:07.277 UTC
d60af919-e711-46c8-bd60-fb3f2663d21c
2017-01-17 00:24:23.755 UTC
1ba8e2de-1ceb-4e22-87d7-af06a2e02bb1
2017-01-18 09:04:44.74 UTC
c8d96777-d4ec-4ec2-9f8e-38467bbd7443
2017-01-18 09:42:56.949 UTC
2dacb16f-78e4-4ea2-a554-0b4bc676f172
2017-01-18 09:55:24.357 UTC
ddfe5c19-addd-4206-bba8-298ff2e68981
2017-01-17 00:42:52.917 UTC