Vision Class Cross Reference
Predefined Class Hierarchy
Your Vision database comes with a number of pre-defined classes. These classes include an initial set of methods which you can modify and extend. All classes are direct or indirect subclasses of the class Object. You can also define any number of additional subclasses.
The pre-defined class hierarchy is illustrated below:
Object Boolean Bridge BuiltInWorkspace CoreWorkspace DBEntity DataRecord DateRange Dictionary Entity Classification Currency DataSource FixedProperty TimeSeriesProperty Function ComputedFunction Block Method Primitive EnumeratedFunction Collection IndexedCollection IndexedList TimeSeries SequencedCollection List Value IncorporatorPrototype LinkRecord Ordinal Date DateOffset Number Double Float Integer String PrivateRecord Selector ToolKit Environment MaintenanceTools FormatTools Interface OpenVision Schema Undefined Utility
The Boolean Class
This class provides protocol for logical values. Logical values are represented by the two subclasses of Boolean - TRUE and FALSE.
The DateRange Class
This class is defined by specifying a starting date, an ending date an an increment. Starting and ending dates can be any valid absolute or relative date. The increment is an instance of one of the DateOffset classes.
The Dictionary Class
The subclasses of the Dictionary class are used to name related objects in a homogeneous way.
The Entity Class
The subclasses of the Entity class are used to describe real-world entities such as companies, countries, and products. Instances of these classes are usually named and can be referenced directly or used as part of a list.
The Function Classes
This class is an abstract class that is used to organize the classes in the hierarchy that can be evaluated. Two major subclasses are defined: ComputedFunction and EnumeratedFunction. The class ComputedFunction is an abstract class that is used to organize the Function classes in the hierarchy that are computed rather than enumerated. The class EnumeratedFunction is an abstract class that is used to organize the Function classes in the hierarchy that are enumerated rather than computed. These classes are also divided into several subclasses.
Three subclasses of the class ComputedFunction have been defined: Block, Method and Primitive. Instances of these classes all represent a type of function which evaluates by computation. A Block is a set of one or more expressions that are viewed together as a unit. Methods are a special form of block that are created and used internally. The class Primitive represents methods that are implemented primitively in Vision. Although messages that are primitives are not distinguishable from other messages from a usage perspective, these messages cannot be directly altered inside Vision.
Two subclasses of the class EnumeratedFunction have been defined: Collection and Value. Instances of these classes all represent a type of function which evaluates by enumerating elements. The class Collection is an abstract class that is used to organize multi-valued EnumeratedFunction classes in the hierarchy. The instances of the class Value are single-valued enumerated functions. The class Collection includes two types of collections: IndexedCollection and SequencedCollection. The class IndexedCollection is an abstract class that is used to organize the collections that are indexed, IndexedList and TimeSeries. The class SequencedCollection is an abstract class that is used to organize the collection subclass that is not indexed, the List class.
The Ordinal Classes
This class is an abstract class that is used to organize the classes in the hierarchy whose instances can be compared along a linear dimension. Subclasses of the class Ordinal are Character, Date, DateOffset, Number and String.
The instances of the class Date represent a specific day in the calendar. Each date encompasses a day, month, and year. The class DateOffset is an abstract class that supports the protocol for different date increments: BusinessDays, Days, MonthBeginnings, MonthEnds, Months, QuarterBeginnings, QuarterEnds, Quarters, YearBeginnings, YearEnds, and Years.
The class Number is used to organize the numeric classes Double, Float, and Integer. The instances of the class String are objects that represent sequences of characters.
The Selector Class
The instances of this class are objects that represent strings used for names in the system. Each selector is unique; there can never be two selectors with identical character sequences defined for the same class.
The ToolKit Class
Subclasses of this class are used to organize packages of classes and messages offered as a unit to perform a set of related functions. Built-in ToolKits include The OpenVision ToolKit, The Schema ToolKit, and The UserInterface ToolKit.
The Utility Class
This class is used to organize miscellaneous utility operations. This class does not have any instances. It does respond to a set of primitive messages which execute utility functions.
The Undefined Class
This class is used to represent values that are not available (NA).
The Application Classes
These classes are used to organize the data and manage the navigations, access and processing rules associated with specific application.