Defining virtual reference
Virtual collections are not stored as such but represent the result of a query or access path. In contrast to temporary or transient collections, virtual collections can be accessed sequentially or by position, only, but not by key. More details are described in the "Virtual collections" sub topic of the Reference documentation.
Also names for virtual references have to be unique within the members defined for a data type and its base types. The name must not contain special characters or spaces except underscores. After filling in the name, Next should be pressed in order to continue.
Virtual collections require the complex data type for instances in the view or access path result. For selecting the data type, one may enter the type name directly in the Data type field or use enhanced find by pressing the Find button, which allows selecting a data type defined in the project or a system data type. When the data type entered does not yet exist, one may press the New button in order to define a new data type. In this case, a sub wizard pops up ( Data Type Wizard ), which is described in chapter " Data Type Wizard" . For viewing the type definition for the selected type, the Details button might be used.
When the result set refers to instances with different types, Weak-typed should be switched on, while the data type defines the common base type for all instances in the result set.
The Next step requests the transient option..
For defining a virtual collection representing a query result, the collection type virtual collection has to be selected.
Virtual collections always require a data source definition. This must be either a query (OQL) expression or an access path. Since access paths are more powerful and include OQL queries, it is suggested always defining an access path.
the Next button directly leads to the definition summary.