W3C PICS

W3C PICS library Interfaces

Any suggestions or ideas are welcome at libpics@w3.org.

Components

The libpics library is divided into two components, accessible through two interfaces:

Every module in the PICS library has a HTML document associated with it containing a detailed description of its interface. See w3c Library Interfaces for instructions on modifying header or html files.


CSLUtils

The minimal interface to the PICS library is to use it as just a parser. The parser may read a label, machine readable service description, or a user descritpion. The only PICS modules needed for this interface are the parser and a module specific to the object you wish to parse (see the Label parser example). The parser uses list, chunk, and memory management from the libwww modules. See the function list for a list of the needed funtions. These functions are implemented in libwww. To make it easier to genericly integrate CSLUtils with any application, the libwww modules of these functions have been sequestered to HTUtils, along with the necessary headers.

The CSLUtils interface is defined in CSLUtils.html. This contains the definition of primitive data types and ephemoral types, as well as some label request generation functions.

objects

It defined the following objects needed to employ the parser:

label request generation functions

These functions generate label requests given a list of services. These are also implemented for CSUsers

LablPars

LablPars.c demonstrates the use of the CSLUtils interface. The User's guide explains how LablPars uses the CSLUtils interface. HTFuncs.html explains how LablPars provides the list and memory functions required by the parser. Example output is in Simple.html. Another example, that parses .rat files (machine-readable service descriptions), is in RatPars.

CSLApp

This interface is a superset of the CSLUtils interface. It automates the process of generating label requests for each URL request and checking user profiles to allow or deny access to the URL. It is intended to supplement the libwww and will probably only be usefull to applications based it.

The CSLApp interface is defined in CSLApp.html. This contains the definition of primitive data types and ephemoral types, as well as some label request generation functions.

objects

It defined the following objects:

functions



CSLabel

CSLL.html Application interface to Label data structures and internals

objects

functions

CSLLSt.html Label data internals

objects

functions


CSUser

Example user description, not specified in any standard.

CSUser.html Application interface to User data structures and internals

objects

functions

CSUserSt.html User data internals

objects

functions


CSMacRed

CSMR.html Application interface to MR data structures and internals

objects

functions

CSMRSt.html MR data internals

objects

functions


CSParser

definition files

objects

functions


Eric Prud'hommeuax, libpics@w3.org, March 96