Google Wave Overview - Do you know what a #GoogleWave, Wavelet and a Blip are? Go Learn now... #fb

Google Wave Entities

A wave is a threaded conversation, consisting of one or more participants (which may include both human participants and robots). The wave is a dynamic entity which contains state and stores historical information. A wave is a living thing, with participants communicating and modifying the wave in real time. A wave serves as a container for one or more wavelets defined below.

A wavelet is a threaded conversation that is spawned from a wave (including the initial conversation). Wavelets serve as the container for one or more messages, known as blips. The wavelet is the basic unit of access control for data in the wave. All participants on a wavelet have full read/write access to all of the content within the wavelet. As well, all events that occur within the Google Wave APIs operate on wavelet level or lower.

When you spawn a wavelet from within a wave, you do not inherit any access permissions from the parent wavelet. During the lifetime of a wave, you may spawn private conversations, which become separate wavelets, but are bundled together within the same "wave." Since events occur at the wavelet level or below, the context of an event is restricted to a single wavelet. A wavelet may be created and managed with a robot as its only participant. This allows the robot to use the wavelet effectively as a private data document. These data documents are never rendered/revealed to the user and may contain structured or unstructured data about the wavelet.

A blip is the basic unit of conversation and consists of a single messages which appears on a wavelet. Blips may either be drafts or published (by clicking "Done" within the Wave client). Blips manage their content through their document, defined below. Blips may also contain other blips as children, forming a blip hierarchy. Each wavelet always consists of at least one root blip.


A document is the content attached to a blip. This document consists of XML which can be retrieved, modified or added by the API. Generally, you manage the document through convenience methods rather than through direct manipulation of the XML data structure.