# Application Profiles

Libwww consists of a small core and a large set of hooks for adding functionality. By itself, the core it not capable of performing any Web related tasks like accessing a HTTP server or parsing a HTML document. All this functionality must be registered by the application. This way, the core of libwww is kept application independent and can be used as the basic building block for any kind of Web application.

The Library comes with a large set of default functions, for example for accessing HTTP and FTP servers, parsing RFC 822 headers etc. but it must all be registered by the application before the core knows about it. You can either register the parts directly through the many initialization functions in the Initialization Interface or you can use these "precompiled" profiles which are set up to contain the featuers often used by the a specific type of application, for example a client, a server, a robot etc.

This module helps the application programmer setting up all this functionality, but it is important to note that none of it is required in order to use the Library. All the profiles declared below superseed the Library core initialization function `HTLibInit()` which is defined in the HTLib module.

Using Profiles