WSHumanTask中文翻译(一)
4 人工任务(Human Tasks)
The <task> element is used to specify human tasks. The section below introduces the syntax for the element, and individual properties are explained in subsequent sections.
<task>元素用来指定人工任务,下面介绍这个元素的语法,关于元素的属性在下面的小节里介绍。
4.1 所有语法(Overall Systax)
Definition of human tasks:
人工任务的定义如下:
<htd:task name="NCName">
<htd:interface portType="QName"
operation="NCName"
responsePortType="QName"?
responseOperation="NCName"?/>
<htd:priority expressionLanguage="anyURI"?>?
integer-expression
</htd:priority>
<htd:peopleAssignments>
...
</htd:peopleAssignments>
<htd:delegation potentialDelegatees=
"anybody|nobody|potentialOwners|other"/>?
<htd:from>?
...
</htd:from>
</htd:delegation>
<htd:presentationElements>
...
</htd:presentationElements>
<htd:outcome part="NCName" queryLanguage="anyURI">?
queryContent
</htd:outcome>
<htd:searchBy expressionLanguage="anyURI"?>?
expression
</htd:searchBy>
<htd:renderings>?
<htd:rendering type="QName">+
...
</htd:rendering>
</htd:renderings>
<htd:deadlines>?
<htd:startDeadline>*
...
</htd:startDeadline>
<htd:completionDeadline>*
...
</htd:completionDeadline>
</htd:deadlines>
</htd:task>
下面介绍task元素里定义的属性:
4.2 属性(Properties)
n name:此元素指定任务的名称。
n interface:这个元素用来指定调用任务的接口。这个操作使用WSDL指定,即一个WSDL portType和WSDL operation。这个元素及portType、operation是必须的(mandatory)。接口可以使以下形式:
l WSDL operation是一个单向操作,任务异步返回输出数据。在这种情况下,必须使用responsePortType和responseOperation属性指定一个回调单向操作。当任务完成时,回调操作被调用。当任务的单向操作被调用时,回调操作的Web service endpoint地址在运行时被提供。
l WSDL operation是request-response操作。在这种情况下,不必指定responsePortType和responseOperation。
n priority:此元素用来指定任务的优先级。它是可选的元素,它的值是一个整数表达式。如果不存在这个元素,表示没有指定任务的优先级。0表示最高优先级,越大的数字表示的优先级越低。表达式计算的结果是xsd:integer类型。expressionLanguage属性指定了表达式使用的语言。此属性是可选的。如果没有指定,默认的语言继承自最近包围此属性的元素使用的语言。
n peopleAssignments:此元素用来指定人,这些人被分配到不同的普通角色,如潜在的任务所有者,业务主管。此元素是必须的(mandatory)。参见4.5节获取更多人员分配的细节。
n delegation:此元素用来指定关于任务委派的约束。potentialDelegatees属性定义了任务委派的对象。该属性允许使用下面的值:
l anybody:表示可以将任务委派给任何人。
l potentialOwners:表示允许委派任务给前面选择了的潜在的所有者。
l other:表示允许委派任务给其它人,如已授权的所有者。元素<from>用来决定谁可以被委派给此任务。
l nobody:表示不允许委派给任何人。
注:delegation这个元素是可选的。如果没有使用这个元素,表示任务可以委派给任何人。
n presentationElements:此元素用来指定展示在任务列表中任务的信息,比如名字、主题和描述。参见4.3节。此元素必选(mandatory)。
n outcome:此元素标识输出信息(任务的业务结果)中的域,可选。
n searchBy:此元素用来基于定制查询标准寻找任务实例,可选。
n rendering:此元素指定表现(rendering)方法,可选。如果不指定,那么任务表现与实现独立。参见4.4节。
n deadlines:此元素指定不同的底线(deadlines),可选。参见4.6节。
4.3 陈述性的元素(Presentation Elements)
Information about human tasks or notifications needs to be made available in a
human-readable way to allow users dealing with their tasks and notifications via a
user interface, which could be based on various technologies, such as Web browsers, Java clients, Flex-based clients or .NET clients. For example, a user queries for her
tasks, getting a list of tasks she should work on, displaying a short description of
each task. Upon selection of one of the tasks, more complete information about the
task is displayed by the user interface.
人工任务或通知的信息应该通过一个用户接口允许用户易于处理他们的任务和通知,通常有几种技术,如Web留言器、Java客户端、易于Flex的客户端或.NET客户端。例如,用户查询他们的任务,获取任务列表,展示任务的简单描述。现在其中一个任务后,通过用户接口可以展示关于任务更完整的信息。
4.4 描述任务的元素(Elements for Rendering Tasks)
语法:
<htd:renderings>
<htd:rendering type="QName">+
<xsd:any minOccurs="1" maxOccurs="1"/>
</htd:rendering>
</htd:renderings>
4.5 用于给任务分配人的元素(Elements for People Assignment)
语法:
<htd:peopleAssignments>
<htd:potentialOwners>
...
</htd:potentialOwners>
<htd:excludedOwners>?
...
</htd:excludedOwners>
<htd:taskInitiator>?
...
</htd:taskInitiator>
<htd:taskStakeholders>?
...
</htd:taskStakeholders>
<htd:businessAdministrators>?
...
</htd:businessAdministrators>
</htd:peopleAssignments>
4.6 处理超时(timeout)和自动调整(escalation)的元素
Timeouts和escalations允许指定一个date或time,这个时间是任务必须到达一个指定的状态前。如果timeouts发生了,作为响应要执行一些动作(actions)。任务的状态没有被改变。规范中指定了在不同点的一些deadlines,当计时器时钟(timer clock)开始时,状态必须在给定的时间段或给定的date到达。这些deadlines是: n Start deadline:指定一个时间(time),直到任务必须开始,例如,它必须到达状态InProgress。也可以制定时间段(the period of time)或准确的时间点(the point in time),直到任务必须到达状态InProgress。规范允许使用表达式,所以durations和deadlines可以在运行时被计算,比如,使用定制日历。从任务进入Created状态开始,time就开始被衡量(measure)。如果任务在deadline前没有到达InProgress状态,就会执行一些自动调整的动作(action)或动作集。 n Complete deadline:与开始底线类似。