Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Most processes depict real-life, practical business or scientific scenarios which need the interactions of a human at least once in its workflow design. Typically, these interactions are initiated by the process itself, and requests a user input to proceed. For example, consider a "bank loan request" process which often requires the final decision to be taken by a human.

...

The .ht file contains the information about the human task of the BPEL process. It is an xml based file consisting of a predefined set of human task description elements. The table below shows the basic elements and their descriptions with some examples from the ClaimsApprovalTask sample.

 

Element

...

Description

...

...

Contains declarations of elements from WS- HumanTask namespace, that is   <htd:logicalPeopleGroups>, <htd:tasks>  and   <htd:notifications>.

...

...

...

...

...

Used to specify logical people groups used in an inline human task or a people activity. The name attribute contains the name of the logical people group. The name   must be unique among the names of all logical people groups defined within the <   htd:human   Interactions> element.  

<htd:logicalPeopleGroups>  

  <htd:logicalPeopleGroupname="regionalClerks">  

  <htd:documentationxml:lang="en-US">  

  The group of clerks responsible for the region specified.  

  </htd:documentation>fd  

  <htd:parametername="role" type="xsd:string"/>  

  </htd:logicalPeopleGroup>

...

< htd:tasks >

Specifies the human tasks used in the business process.

<htd:tasks>

       <htd:task1>

       <htd:task2>

       <htd:task3>

<htd:tasks>

< htd:task >

...

Used to provide the definition of an inline human task. The name attribute specifies the name of the task. The name must be unique among the names of all tasks defined within the <htd:tasks>element.

It also consists of the <htd:interface , <htd:peopleAssignments> and <htd:presentationElements> elements which are used to described the task.

<htd:task name="OrderProcess">  

<htd:interface/>

<htd:peopleAssignments/>

<htd:presentationElements/>

</htd:task>

...

< htd:interface >Specifies the port types and operations of the human task      

<htd:interface

portType="cl:ClaimsHandlingPT"  

  operation="approve"  

responsePortType="cl:ClaimsHandlingCallbackPT"  

  responseOperation="approvalResponse"/>  

...

...

Used to assign people to process-related generic human roles.

  <<htd:peopleAssignments>

               <htd:potentialOwners>

                   <htd:from logicalPeopleGroup="regionalClerks">

                       <htd:argument name="role">

                           regionalClerksRole

                       </htd:argument>

                   </htd:from>

               </htd:potentialOwners>

               <htd:businessAdministrators>

                   <htd:from logicalPeopleGroup="regionalManager">

                       <htd:argument name="role">

                           regionalManagerRole

                       </htd:argument>

                   </htd:from>

               </htd:businessAdministrators>

           </htd:peopleAssignments>

< htd:documentation >

Provides annotations for users

<htd:documentation>  

Examplefor WS-HumanTask 1.1 - WS-HumanTask Task Definition  

</htd:documentation>

...

...

From element used to assign people for roles which have been specified in the business process. Argument element will pass values used in the people query.

<htd:from logicalPeopleGroup="regionalClerks">

                       <htd:argument name="role">

                           regionalClerksRole

                       </htd:argument>

                   </htd:from>

...

...

Specifies the user interface for human tasks or how the user interacts with the human task.

<htd:presentationElements>  

<htd:name xml:lang="en-US">Approve Claim

</htd:name>  

<htd:name xml:lang="de-DE">Genehmigungder Schadensforderung  

</htd:name>  

<htd:presentationParameters>  

<htd:presentationParametername="firstname"  

  type="xsd:string">  

htd:getInput("ClaimApprovalRequest")/test10:cust/test10:firstname  

</htd:presentationParameter>  

</htd:presentationParameters>

...

...

...

Used to provide the definition of an inline notification.The name attribute specifies the name of the notification. The name must be unique among the names of all notifications defined within the < htd:notifications > element.

<htd:notifications>  

  <htd:notificationname="ClaimApprovalReminder">  

  <htd:documentationxml:lang="en-US">

...

2) htconfig.xml file

This file consists of deployment details of the human task. Human tasks supports two task types called task and notification. A task can have a publish and a callback. Publish means providing a service and Callback means calling an external service to provide the output. Notification is also a task type. A notification task provides one operation for external parties to create notifications. 

...