Defaults and Overrides

As decided, March 1997, by:

Goals:

  1. Web page authors would like to express default and override labels for directories and subdirectories. For example, there may be a default label with V level 2 for <protocol>://<server>, an overriding default label with V level 1 for <protocol>://<server>/<dir>/ and an overriding specific label with V level 2 for <protocol>://<server>/<dir>/<fname>.
  2. Client programs should be able to quickly find the most specific label for a particular URL. In particular, they should:

Resolutions:

  1. If a web page contains a label list, a label in the list for a longer URL overrides a generic label for a prefix of that URL. That is, a generic or specific label for http://foo.com/bar/bat overrides a generic label for http://foo.com/bar
  2. Each label list stands on its own. For example, if a list has just one label, a generic label for http://foo.com/bar, then that label can safely be interpreted to apply to *every* URL beginning http://foo.com/bar.
  3. If a client downloads a page located at the URL <protocol>://<server>/dir>/<fname>, but there is no label embedded in the HTML document retrieved from that address, we recommend that the client direct the following label bureau query to <server>: GET /PICSLabels?u="<protocol>://<server>/<dir>/<fname>"&s="<service-id>" HTTP/1.0

    That is, we suggest that each server that dispenses documents run a label bureau at the distinguised filename PICSLabels. The main idea behind this proposal is to make servers, rather than client, be responsible for resolving defaults and overrides. The server can keep a database of defaults and overrides and quickly resolve them at run time, generating a specific label for the requested URL. In order to ease the rating task for web page authors, the server can provide an easy way for authors to create default labels for various levels of the directory hierarchy.

    It has been pointed out that this server-side implementation of defaults may not be possible in disconnected environments. For example, consider the case of a CD-ROM contain a directory tree full of files. In these cases, it may actually be reasonable to resolve defaults and overrides by walking a directory tree or otherwise looking for labels in distinguished places. We suggest, however, that even in a situation such as this, it will be better to run a pseudo-server on each local machine to handle file:// URLs. This pseudo-server will be able to respond to label bureau queries as suggested in item 3 above, walking the tree to look for embedded labels or otherwise looking in distinguished locations to find all applicable labels, and then resolve the defaults.