*/
public InvocationContext invokingService(WorkflowTrackingContext context, InvocationEntity receiver,
XmlObject header, XmlObject body, String... descriptionAndAnnotation) {
InvokingServiceDocument activity = InvokingServiceDocument.Factory.newInstance();
RequestInitiatorType activityType = activity.addNewInvokingService();
// create the invocation context; set the receiver to the remote entity
InvocationContextImpl invocationContext = new InvocationContextImpl(context.getMyself(), receiver);
activityType.addNewReceiver().set(receiver.toBaseIDType());
// add header and body fields
if (header != null || body != null) {
InvocationMessageType request = activityType.addNewRequest();
if (header != null)
request.addNewHeader().set(header);
if (body != null)
request.addNewBody().set(body);
}