This is typically an HTML document or Web page. The components communicate via the InfoBus thus making it possible to divide the application into manageable pieces. Just as Java interfaces are simple and clear contracts between a producer and a consumer, no complex negotiation is required. The semantics of the data flow are based on interpreting the contents of the data that flows across the InfoBus interfaces as opposed to responding to names of parameters from events or names or parameters of callbacks. A data controller is an optional component that regulates or redirects the flow of data between data producers and consumers.
Data flows between applets in named packets known as data items.
The InfoBus is similar to a hardware bus. Multiple consumers can receive and use data published by a producer, and a consumer can easily obtain data from multiple producers. In fact, a request for data can elicit multiple responses. Multiple conversations can occur simultaneously without requiring anything special from the participating components. A unique InfoBus context identifier is established for a component and the InfoBus for this component's context is returned.