A Viewpoint is a named version of an Outcome, usually either the latest Outcome generated by a particular Activity, or of a particular XMLSchema. Activities may be repeated or be reused many times in the Workflow, which can create multiple versions of the same Outcomes, and finding the latest version of a particular outcome would be expensive if queries would have to account for this fact using date range checks or similar grouping functions. So the Viewpoint exists as a pointer to the accepted 'current' version of an Outcome. It is automatically updated during Activity execution, but may be set manually by administrators to perform rollbacks.
On Activity execution, a 'last' viewpoint for the Outcome schema is always written automatically, pointing to the current version. An Activity may specify one 'Viewpoint' property to create an additional Viewpoint
* by giving it a name
* by giving an xpath expression to select a value from the actual Outcome
* example: xpath:/TestOutcome/StrinValue
The name of the Viewpoint may contain alphanumeric characters only.
Viewpoint for Versioning of Descriptions
Viewpoint is used to implement Versioning of Description Items. (TBD)