A key facet of the DGL system is to make several types of artifacts accessible to many remotely located users. An artifact is a representation of a physical or virtual object that is shared among the users. Some artifacts can stand on their own but usually they have some relationship to other artifacts. The artifact objects should be made visible and accessible to the participating users. In other words, they have to be implemented as shared objects. The following list shows a summary of all distributed artifacts that are implemented by the virtual laboratory (see chapter 2 for more details about the appearance of each artifact):
Artifact objects have common properties and functionality. It is therefore a good idea to generalize those common factors (see figure 3.1 for the inheritence tree). The generic artifact contains methods for management and embedding of the artifacts into the system: This allows accessing all artifact in a uniform way and is explained further in section 4.1. That way, the system will be open, so it can be easily extented with further kinds of artifacts.
A collection of interconnected artifacts builds a unit, from now on called session. Figure 3.2 shows a summary of relationships between artifacts. Every artifact has at least a reference to the user artifact that represents its creator. Every session can contain a number of images and every image can further contain one or more drawings and annotations. Additionally, every session contains a single Discussion artifact.