http://www.osoa.org/jira/browse/BP-135
Submitted by: Ivana Trickovic
Target: WS-HumanTask specification and ws-humantask-api.wsdl, version 1.1, PR 1
Issue Description:
A couple of inconsistencies have been found:
1. The specification says that getMyTaskAbstract has the following input
parameters:
* task type ("ALL" | "TASKS" |
"NOTIFICATIONS")
* generic human role
* work queue
* status list
* where clause
* order-by clause
* created-on clause
* maxTasks
* taskIndexOffset
"order-by clause" and "taskIndexOffset" are not included in
the wsdl file.
2. Operations getMyTaskAbstract and getMyTaskDetails differ in the list of
input parameters. Operation getMyTaskDetails does not allow to specify
"order-by clause" and "taskIndexOffset".
3. The type of "maxTasks" not consistently defined
Proposal:
1. Change element getMyTaskAbstract (in ws-humantask-api.wsdl) as follows:
<xsd:element name="getMyTaskAbstracts">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="taskType"
type="xsd:string" />
<xsd:element name="genericHumanRole"
type="xsd:string" minOccurs="0" />
<xsd:element name="workQueue"
type="xsd:string" minOccurs="0" />
<xsd:element name="status"
type="htt:tStatus" minOccurs="0"
maxOccurs="unbounded" />
<xsd:element name="whereClause"
type="xsd:string" minOccurs="0" />
<xsd:element name="orderByClause"
type="xsd:string" minOccurs="0" />
<xsd:element name="createdOnClause"
type="xsd:string" minOccurs="0" />
<xsd:element name="maxTasks" type="xsd:int"
minOccurs="0" />
<xsd:element name="taskIndexOffset"
type="xsd:int" minOccurs="0" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
2. Extend the list of input data of operation getMyTaskDetails to allow
defining "order-by clause" and "taskIndexOffset", in the
specification (section 7.1.2) and wsdl file .
The xsd snippet should look as follows:
<xsd:element name="getMyTaskDetails">
<xsd:complexType>
<yxsd:sequence>
<xsd:element
name="taskType" type="xsd:string" />
<xsd:element name="genericHumanRole" type="xsd:string"
minOccurs="0" />
<xsd:element name="workQueue" type="xsd:string"
minOccurs="0" />
<xsd:element name="status" type="htt:tStatus"
minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="whereClause" type="xsd:string"
minOccurs="0" />
<xsd:element name="orderByClause"
type="xsd:string" minOccurs="0" />
<xsd:element name="createdOnClause" type="xsd:string"
minOccurs="0" />
<xsd:element name="maxTasks" type="xsd:int"
minOccurs="0" />
<xsd:element name="taskIndexOffset"
type="xsd:int" minOccurs="0" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
3. Change maxTasks to be of type xsd:int instead of xsd:integer for operation
"GetTaskHistory".