This image illustrates the validation caching technique for mod_plsql. The details are as follows:

1. The Oracle HTTP Server receives a PL/SQL procedure request from a client server. The Oracle HTTP Server routes the request to mod_plsql.

2. mod_plsql prepares the request.

3. mod_plsql invokes the PL/SQL procedure in the Web application. mod_plsql passes the usual Common Gateway Interface (CGI) environment variables to the Web application.

4. The PL/SQL procedure generates content to pass back. If the PL/SQL procedure decides that the generated content is cacheable, it calls the owa_cache procedure from the PL/SQL Web Toolkit to set the tag and cache level:

       owa_cache.set_cache(p_etag, p_level);

5. The HTML is returned to mod_plsql.

6. mod_plsql stores the cacheable content in its file system for the next request.

7. The Oracle HTTP Server sends the response to the client browser.