The first demonstration package of Diorama [16] is implemented as a World Wide Web (WWW) application. All the components and its interface functions are created using HTML [9] and Perl CGI-scripts [24,29]. Linking to the underlying data sources and metadata library databases is implemented with Oraperl [4], since Diorama uses the Oracle7 as the back-end service repository support. Clients may be implemented using any GUI-tool such as Web Applications (HTML-based), TCL/TK applications, Smalltalk applications etc. Components of the prototype system interact via HTTP [11] protocol, a popular protocol that provides good flexibility in types of data to be sent or received (both text and binary).
Using HTTP also allows us to focus more on the non-network issues component design for distributed query services because HTTP provides a large support base of tools and libraries. Furthermore, using a popular protocol such as HTTP allows Diorama components to be more readily incorporated into new developments of the DIOM system as well as other external systems.
Currently, all wrapper functions are implemented as CGI scripts written in Oraperl, and can be accessed through HTTP protocol. The invocation commands to a wrapper are embedded within the HTTP call and the result is returned as a MIME object.
At end of the first phase of the Diorama prototype development, Sun
Microsystems announced the release of the Java JDBC
[28] database access API.
The continuous effort for Diorama wrapper development will be using
Java programming language. We expect that utilizing Java and JDBC will
allow single wrapper implementations to be used for all underlying
supported repositories. Some wrapper processing with JDBC
implementation may also allow for more distributed computing in the
sense that those processing tasks which are less data intensive can
be shifted to the client machine.
Starting up the Diorama prototype requires access to a web client which
supports tables and frames (e.g., Netscape 2.0). The web client
starts the application by opening a URL
to the Diorama main menu.
The initial main menu page is shown in Figure 12.
It is broken up into three main sections.
The first section is the menu options at the top of the screen which
are Netscape program functions (See [25] for Netscape details).
The second section is the larger frame to the right
of the screen which offers all major Diorama features: the Producer
Metadata Facilities, the Consumer Metadata Facilities, and the Query
Facilities. The thrid section is the smaller frame on the left side which
offers a functionally identical menu which remains throughout the rest of the
Diorama session
to allow for convenient access to all the major DIOM services. A user
may choose any function by mouse-clicking any of the boxes in the main
frame or any of the underlined words in the side menu.
Due to the space limitation, we omit the further discussion of
the list of Diorama facilities. Readers who are interested in
more details may refer to [16] or visit us at
http://ugweb.cs.ualberta.ca/
diom.