Occasionally connected computing

Occasionally connected computing (OCC) is a term used in computing for an architecture or framework which permits running some aspects of a web application when not connected to the Internet. This is sometimes a feature of a Rich Internet application (RIA).

Software architecture
Occasionally connected computing is a software architecture based on the idea that an end user should be able to continue working with an internet application even when temporarily disconnected or when a wireless connection fails or is otherwise unavailable. OCC has been seen as one aspect of 'pervasive computing'. In the past, audio and visual telephony no longer functioned when a connection was lost. In an OCC architecture, tasks continue and update a central data store when a connection is restored. Client-side persistent data (CSPD), while not permanent data as in a central data store, is a common implementation of an OCC framework on non-handheld devices such as personal and laptop computers. As the local data stored on PDAs commonly exceeds several Gigabytes, OCC becomes more viable for handheld devices.

OCC frameworks and implementations
In the case of the Curl language an alternate URI scheme is used to identify a resource which is to be used for OCC. Where a normal HTTP URL might be {url "http://www.your-office.com/your-site.php" } an OCC URI could be {url "curl://occ/reconnect-as-needed" } Such a URI redirects to the web when connected and to the local store when disconnected. The Smalltalk language is a special case because of the ability to save the bytecode image at run time. The possibilities using the REBOL 2.x runtime environment lie somewhere between Smalltalk and Curl 5.0 but may be extended with the release of REBOL 3.0 which is projected for late 2008 (a public alpha began in Jan 2008.)