Structure of the Zim Object Dictionary

Zim's Object Dictionary is a repository of object descriptions. It is an integral part of your database application and it is unique in that it stores descriptions of database objects and all the other objects that comprise your application (e.g., entity sets, relationships, forms, windows, documents, etc.).

Each object type is stored separately from other types (e.g., entity set descriptions are stored separately from window descriptions, which are in turn stored separately from form descriptions, and so on).

The Object Dictionary is, itself, an entity-relationship database, just like the application databases that you will develop. Unlike an application database, however, the Object Dictionary is automatically created when you use the New Database (ZIMINIT) utility to initialize a new application database. In addition, you are provided with a number of pre-defined documents and other useful objects.

THE OBJECT DICTIONARY AS AN ENTITY-RELATIONSHIP DATABASE

Because the Object Dictionary is an entity-relationship database, it can be represented by an E-R diagram shown in Figure 1.1.

The Object Dictionary comprises a number of pre-defined entity sets (the boxes in the E-R diagram). Entity sets can be related to other entity sets via a relationship (the diamonds in the diagram).

The entity sets hold object definitions. When you define objects, records are added to the entity sets, describing the objects that you defined.

 

 Figure 1.1:   The E-R diagram for Zim's Object Dictionary (the boxes denote entity sets; the diamonds denote relationships; role names are shown in parentheses).

The table below shows the correspondence between the objects that you define for your application and the Object Dictionary entity sets that contain the records describing those objects.

Object Type Name

Dictionary Entity Sets

Dictionary Role

Constant

Constants

Consts

 

DDDescriptions

 

Directory

Directories

Dirs

Display

Displays

Disps

 

DisplayForms

DFs

Document

Documents

Docs

 

Fields (*)

Flds

Help Error Messages

EhErrHelp

 

Entity Set

EntitySets

Ents

Form

Forms

 

 

FormFields

FFs

Menu

Menus

 

 

FormFields

FFs

Relationship

Relationships

Rels

 

Fields (*)

Flds

Role

Roles

 

Set

NamedSets

Sets

User

Users

 

Variable

Variables

Vars

Window

Windows

Wins

(*) Used only if the document or the relationship has fields.