A objectspace is a storage location
for correlated objects: it is used to organize business objects
within the OBEROn database. There are different logical reason to
subdivide objects in objectspaces. For example, in a library, a
objectspace might contain books of a similar argument or for a single
historical period. In an engineering company, a objectspace might
contain all objects related to a product family or to a specific
In addition, you have to consider also the performance point of
view: if you are searching for a specific object and you know the
objectspace where it is stored, you can avoid to scan the whole
database. This limits the search space and improves the overall
When defining a new objectspace,
you can establish what is the objectspace meaning and where it is
phisically located inside the database. In particular each objectspace
represents a set of relational tables all stored into a single tablespace.
Generally also the indexes defined for those tables are stored into
the same tablespace although - for Oracle DB - you can specify a
different database area (the indexspace) in which the indexes and
constraint information for the objectspace will be stored.
The names of tablespaces/indespaces and their associated
storage are defined by the database administrator (DBA). This must
be done before the objectspace creation.
Note: MySQL 5.0 and PostgreSQL for Windows don't support tablespaces (leave the field empty)
to manage Objectspaces (see user
access rights )
can create a new instance by clicking the "Add new ObjectSpace"
button from the "Context Design" menu and compile the
relative form. The same results can be obtained with the following
OOQL command :
objectspace define 'Customers' ' tablespace
'TS_CUSTOMERS' description 'Collects all customers' ;