|
Key
This line was removed.
This word was removed. This word was added.
This line was added.
|
Changes (10)
View Page HistoryService algorithm:
# Extract the UUID from t2flow.
## {color:#993300}Question 1: A t2flow can have many workflows (right?), each with a UUID. Do we assign each UUID to a resource (wf dcterms:identifier uuid), and assign no id to the RO itself?{color}
### {color:#993300}Yes, but one-and-only-one of them will be the 'main' workflow - and its UUID is used for making the WorkflowBundle URI{color}
## {color:#993300}Question 2: WorkflowBundle#getMainWorkflow#getWorkflowIdentifier returns a URI - how is it related to the UUID, why should we use UUID not this URI?{color}
### {color:#993300}It's constructed from the t2flow UUID. However there will be both the workflow bundle ID and the workflow ID - both URIs have the same UUID from the main workflow, but different prefix. We should use the WorkflowBundle URI (that's WorkflowBundle.getGlobalBaseURI()) as the identifier for the RO, and the individual workflow's identifier for the wfdesc (the Workflow.getWorkflowIdentfier).{color}
## {color:#993300}Question 1: A t2flow can have many workflows (right?), each with a UUID. Do we assign each UUID to a resource (wf dcterms:identifier uuid), and assign no id to the RO itself?{color}
### {color:#993300}Yes, but one-and-only-one of them will be the 'main' workflow - and its UUID is used for making the WorkflowBundle URI{color}
## {color:#993300}Question 2: WorkflowBundle#getMainWorkflow#getWorkflowIdentifier returns a URI - how is it related to the UUID, why should we use UUID not this URI?{color}
### {color:#993300}It's constructed from the t2flow UUID. However there will be both the workflow bundle ID and the workflow ID - both URIs have the same UUID from the main workflow, but different prefix. We should use the WorkflowBundle URI (that's WorkflowBundle.getGlobalBaseURI()) as the identifier for the RO, and the individual workflow's identifier for the wfdesc (the Workflow.getWorkflowIdentfier).{color}
# Extract the RO ID from the t2flow.
# For each workflow in t2flow:
## Extract the UUID
# For each workflow in t2flow:
## Extract the UUID
# ## Generate a wfdesc description from t2flow (RDF graph)
## {color:#993300}Question 3: Is there a javadoc for the scufl2 API? I see that the WorkflowBundleIO can save to file, but I'll need something else.{color}
### {color:#993300}Easiest in Eclipse is to click F3 to get the source code - otherwise see {color}[http://mygrid.github.com/scufl2/api/0.9/|http://mygrid.github.com/scufl2/api/0.9/]
### {color:#993300}Easiest in Eclipse is to click F3 to get the source code - otherwise see {color}[http://mygrid.github.com/scufl2/api/0.9/|http://mygrid.github.com/scufl2/api/0.9/]
# ## Generate a roevo description from UUID chain from t2flow (RDF graph)
# Check if RO exists in ROSRS:
## if yes, update identifier = UUID RO ID and remove annotations of the workflow made by this service
## if no, create a new one (with identifier = UUID) RO ID)
# For each workflow in t2flow:
## Upload the workflow
## Upload the workflow
# ## Upload wfdesc and roevo descriptions as 2 annotations of the workflow
# Return 200 OK
Questions and answers:
# {color:#993300}Question 1: A t2flow can have many workflows (right?), each with a UUID. Do we assign each UUID to a resource (wf dcterms:identifier uuid), and assign no id to the RO itself?{color}## {color:#993300}Yes, but one-and-only-one of them will be the 'main' workflow - and its UUID is used for making the WorkflowBundle URI{color}
# {color:#993300}Question 2: WorkflowBundle#getMainWorkflow#getWorkflowIdentifier returns a URI - how is it related to the UUID, why should we use UUID not this URI?{color}## {color:#993300}It's constructed from the t2flow UUID. However there will be both the workflow bundle ID and the workflow ID - both URIs have the same UUID from the main workflow, but different prefix. We should use the WorkflowBundle URI (that's WorkflowBundle.getGlobalBaseURI()) as the identifier for the RO, and the individual workflow's identifier for the wfdesc (the Workflow.getWorkflowIdentfier).{color}
# {color:#993300}Question 3: Is there a javadoc for the scufl2 API? I see that the WorkflowBundleIO can save to file, but I'll need something else.{color}
## {color:#993300}Easiest in Eclipse is to click F3 to get the source code - otherwise see{color} [http://mygrid.github.com/scufl2/api/0.9/|http://mygrid.github.com/scufl2/api/0.9/]
# {color:#993300}Question 1: A t2flow can have many workflows (right?), each with a UUID. Do we assign each UUID to a resource (wf dcterms:identifier uuid), and assign no id to the RO itself?{color}## {color:#993300}Yes, but one-and-only-one of them will be the 'main' workflow - and its UUID is used for making the WorkflowBundle URI{color}
# {color:#993300}Question 2: WorkflowBundle#getMainWorkflow#getWorkflowIdentifier returns a URI - how is it related to the UUID, why should we use UUID not this URI?{color}## {color:#993300}It's constructed from the t2flow UUID. However there will be both the workflow bundle ID and the workflow ID - both URIs have the same UUID from the main workflow, but different prefix. We should use the WorkflowBundle URI (that's WorkflowBundle.getGlobalBaseURI()) as the identifier for the RO, and the individual workflow's identifier for the wfdesc (the Workflow.getWorkflowIdentfier).{color}
# {color:#993300}Question 3: Is there a javadoc for the scufl2 API? I see that the WorkflowBundleIO can save to file, but I'll need something else.{color}
## {color:#993300}Easiest in Eclipse is to click F3 to get the source code - otherwise see{color} [http://mygrid.github.com/scufl2/api/0.9/|http://mygrid.github.com/scufl2/api/0.9/]
The authorization algorithm is rather weak - an access token is shared between the caller and the service. A better solution would be one of the following:
* The caller sends a single-use authorization code, which is exchanged by the service for an access token. Safer but requires constant reauthorization, especially difficult for offline clients such as ro-manager
* The caller sends a single-use authorization code, which is exchanged by the service for an access token. Safer but requires constant reauthorization, especially difficult for offline clients such as ro-manager