ActiveVOS Designer User’s Guide
Use the Optimize Parameters command from the Process menu to combine an assign with an invoke, reply, or People activity, if the variable in the copy operations in the assign qualify.
The Optimize Parameters command makes changes to your process based on the following conditions:
The variable is only assigned within a single assign activity and possibly has an initialization expression
Is only referenced by a single "main" activity that can use implicit scopes (i.e. invoke, reply or people activities)
The assign immediately precedes the main activity that uses the variable as input (either in a sequence, or through a link).
The assign qualifies to be converted into an XQuery assignment type:There is only one copy expression, The copy has a from expression, which uses XQuery, There is no initialization expression for the variable
The assign qualifies to be converted into an XQuery assignment type if The from clause is: an expression using XPath , a literal, a variable with a property ,a variable, optionally with a part and/or a query
Changes made:
If the variable is an element type, it is changed to a message type, and all copies that set it get a new "part" attribute.
If the variable was an element type and had an initialization expression, the initialization expression is moved to become the first "copy" in the assign activity.
If the variable is the only thing assigned in the assign statement that sets it, move the entire assign to be in the implicit scope and move all the inbound and outbound links for the assign to the implicit scope (adding to the inbound or outbound links that are already there). Otherwise, move just the copies from the assign to a new assign activity inside the implicit scope.
Move the variable into the implicit scope and rename it (and all of its uses) to "parameters".
Convert copy "from" constructs to use expressions (unless they are from a literal). from variable.part with query="/foo/bar" becomes "$parameters.part/foo/bar" , from variable with property="ns:foo" becomes "abx.getVariableProperty('parameters','ns:foo')" , copy from variable.part (query?) to copy from an expression.
Copyright (c) 2004-2008 Active Endpoints, Inc.