W3C Lib LibGuide

Central Data Structures

The central data structures are the structures that are a part of the core entity. Each of the core modules as explained in section "Control and Data Flow"are relying on one or more of the central data structures. This section describes the relationship between the core modules and the central data structures and the relationship between the central data structures themselves.

Anchors

All anchor management is handled by the HTAnchor module. You should normally not have to look directly into the HTAnchor structure, but use the methods provided by the anchor manager.

Request

The HTRequest structure is defined in the access manager. It is currently not a completely opaque data structure but it will soon be so be prepared to use methods like the ones to handle the HTAnchor Object Then we can also better call it an object and not a data structure ;-).

Streams

Almost each stream module has its specific implementation of the stream structure, but the generic one is defined in the HTStream Module. The structured stream definition is placed in the HTStruct module. None of these modules have any code directly associated with - this is left to the specific stream modules, for example the HTFWrite stream.

HyperDoc Structure

The HyperDoc structure is different from the other central data structures as it is only declared in the Library - the definition is left to the application. It is intended to contain information about data objects, especially hypertext objects that are to be presented to a user. As an example of a definition, you can look at the Line Mode Browser where it is defined in the GridText module. Here it is called "_HText" structure and it contains all information needed to present and manage a data object in a text based environment.

Even though the Library does not interfere with the contents of the HyperDoc object it does provide an API for managing the object. This API is known as the "HText API" and it is described further in the User's Guide


Henrik Frystyk, libwww@w3.org, November 1995