and sends the results to the client. The dynamic documents can be handled by the common gateway interface (CGI) technology that contains a set of rules and terms that allows the pro- grammer to define how the dynamic document should be written, how input Web Communication data should be supplied to the program, and how the output result should be used. The term common in CGI indicates that the set of rules are common to any language like C, C++, Unix Shell, or Perl. The term gateway in CGI indicates that a CGI program is a gateway used to access other resources like databases and graphic packages. The term interface in CGI indicates that there exists a set of predefined terms like variables and cells that can be used in any CGI program. Codes that are written in one of the languages that support CGI are known as a CGI program. A programmer can write a simple CGI program by encoding a sequence of thoughts in a program using the syntax of any of the languages specified above. 3. Programming for active documents The active documents are compressed at the server site SO that when the client requests the active document, the server sends a document copy in the form of a byte code. Thus the document is run at the client site or decompressed at the client site. The conversion to the binary form saves the bandwidth and transmission time. The client can also store the retrieved document SO that it can run the document again without making a request to the server. The steps from the creation to the execution of an active document are: The programmer writes the program to be run on the client. The program is compiled and the binary code is created. The compressed document is stored in a file at the server. The client sends a request for the program. The requested copy of the binary code is transported in a compressed form from the server to the client. The client changes the binary code into executable code. The client links all the library modules and prepares it for execution. The program is run and the result is presente