All resources All frames

# HTTPFrame

The basic frame class of all resources accessible through the HTTP protocol.

## Inerits

The HTTPFrame class inerits from the following classes:

- Resource
- FramedResource
- ResourceFrame
- ProtocolFrame

## Attributes description

The HTTPFrame defines the following attributes:

- quality
- title
- content-language
- content-encoding
- content-type
- icon
- maxage
- send-md5
- putable
- relocate
- index
- icondir
- browsable
- style-sheet-link

`quality`

semantics
  A rating of the quality of this resource's content. The rating is provided as a number between 0.0 and 1.0. It is used mainly by the NegotiatedFrame to negotiate among its set of variants.
type
  This attribute is an editable DoubleAttribute
default value
  This attribute defaults to 1.0.

`title`

semantics
  The title of this resource. This attribute can be either computed from the resource content (e.g. if the content is an HTML file which has some META tag), or provided for informational purposes (even if the resource's content type is not text/html.)
type
  This attribute is an editable StringAttribute
default value
  This attribute defaults to null.

`content-language`

semantics
  The natural language of the resource content. This is used mainly by the NegotiatedFrame to negotiate among its set of variant resources. The value of this attribute can be either extracted from the resource content (e.g. if it is an HTML file that includes some appropriate META tag), or provided for informational purposes.
type
  This attribute is an editable LanguageAttribute
default value
  This attribute defaults to null.

`content-encoding`

semantics
  The encoding in which the resource's content is stored. Right now this can only be a single token (as described in the HTTP/1.1 specification).
type
  This attribute is an editable EncodingAttribute
default value
  This attribute defaults to null.

`content-type`

semantics
  The (MIME) type of the resource's content.
type
  This attribute is an editable MimeTypeAttribute
default value
  This attribute defaults to text/plain.

`icon`

semantics
  Any icon to be associated with the resource. This is used, for example, to produce nice directory listings.
type
  This attribute is an editable StringAttribute
default value
  This attribute defaults to null.

`maxage`

semantics
  This attribute defines the allowed drift between the real content of a resource, and the one that is sent as request replies. The bigger this value, the more efficient the server can be, since it will be able to reuse cachd request replies for a longer time. This attribute takes effect only if it is defined, and if the resource provides a meaningfull last-modified attribute value.
type
  This attribute is an editable LongAttribute
default value
  This attribute defaults to null.

`send-md5`

semantics
  Should we add a Content-Md5 header in the reply?
type
  This attribute is an editable BooleanAttribute
default value
  This attribute defaults to false.

`putable`

semantics

- Attached to a FileResource:
Should the file resource support PUT requets ? When this flag is true, the file resource object will handle appropriately the HTTP PUT method, by overriding the resource's file with the new content. The old content will be saved using the emacs convention (the ~ files). Care should be taken when turning this feature on: you probably want to use some authentication filter to ensure that only authors are allowed to change resources.
- Attached to a DirectoryResource:
If this flag is setted to true that will allow you to create new resources through the HTTP PUT method. When this resource is looked up, it uses the normal DirectoryResource alogorithm to find the appropriate resource. If this fails, it goes to the resource indexer, and asks it to create a resource having the given name. If this succeeds, the newly created resource is attached as a child of the directory resource, and the PUT method is delegated to its HTTPFrame. Notice that the indexer should be configured to create a resource (with its appropriate frame) that handles the PUT method, otherwise, the resource will be effectively created, but it will fail to save the put'ed content (the FileResource, for example, should have a HTTPFrame with its putable attribute turned to true).

type
  This attribute is an editable BooleanAttribute
default value
  This attribute defaults to false.

`relocate`

semantics (when attached to a DirectoryResource)
  Should the directory emit a relocation reply when accessed through an invalid URL. A common case of handling invalid directory access is to emit a relocation reply so that the browser gets access to the directory through a valid URL (e.g. http://www.w3.org/pub is invalid, because pub is a directory, the correct URL is http://www.w3.org/pub/). When this flag is set to true, the directory resource will emit the appropriate relocation reply.
type
  This attribute is an editable BooleanAttribute
default value
  This attribute defaults to true.

`index`

semantics (when attached to a DirectoryResource)
  The optional name of the directory child resource that is to be used as the directory index. This attribute should name an existing child resource, that will be used as the index resource of the directory (all accesses to the directory will be delegated to it).
type
  This attribute is an editable StringAttribute
default value
  This attribute defaults to null.

`icondir`

semantics (when attached to a DirectoryResource)
  The name of the directory that handles this directory's icons. Each HTTPFrame has an optional icon attribute. When a directory resource needs to produce a listing it will dereference each icons relative to its icon directory.
type
  This attribute is an editable StringAttribute
default value
  This attribute defaults to null.

`browsable` (when attached to a DirectoryResource)

semantics
  Should this directory handle the GNN BROWSE method ? When trun to true the putable directory will reply appropriately to the GNN BROWSE method (which allows it to get the directory content).
type
  This attribute is an editable BooleanAttribute
default value
  This attribute defaults to false.

`style-sheet-link`

semantics
  This attribute is a relative link to a Style Sheet. This could be use by the frame when it generates a HTML document "on the fly", it could add a link to this style sheet.
type
  This attribute is an editable StringAttribute
default value
  This attribute defaults to null.

Jigsaw Team
$Id: org.w3c.jigsaw.frames.HTTPFrame.html,v 1.3 1998/03/27 08:19:12 bmahe Exp $