W3C PICS

REC-PICS-services-961031

Rating Services and Rating Systems (and Their Machine Readable Descriptions)

Version 1.1

W3C Recommendation 31-October-96

Editor:
Jim Miller <[email protected]>
Authors:
Jim Miller <[email protected]>
Paul Resnick <[email protected]>
David Singer <[email protected]>


Status of this document

This document has been reviewed by W3C members and other interested parties and has been endorsed by the Director as a W3C Recommendation. It is a stable document and may be used as reference material or cited as a normative reference from another document. W3C's role in making the Recommendation is to draw attention to the specification and to promote its widespread deployment. This enhances the functionality and interoperability of the Web.

A list of current W3C Recommendations and other technical documents can be found at http://www.w3.org/pub/WWW/TR/.

Abstract

This document, which has been prepared for the technical subcommittee of PICS (Platform for Internet Content Selection), defines a language for describing rating services. Software programs will read service descriptions written in this language, in order to interpret content labels and assist end-users in configuring selection software.


Table of Contents

Introduction

What is a "rating service"?

What is a "rating system"?

What is a "content label"?

The application/pics-service document type

Explanation of Sample Rating Service

Detailed syntax of application/pics-service

Glossary

References

Acknowledgments

Appendix A: The Ages Rating Service

Appendix B: RSAC Rating Service

Appendix C: The SafeSurf~~ Rating Service


Introduction

This document, which has been prepared for the technical subcommittee of PICS (Platform for Internet Content Selection), defines a language for describing rating services. Software programs will read service descriptions written in this language, in order to interpret content labels and assist end-users in configuring selection software.

A related document (PICS Label Distribution) specifies the syntax and semantics of content labels and protocol(s) for distributing labels.

The goal of the PICS effort is to enable a marketplace in which many different products and services will be developed, tested, and compared. Hence, the following considerations have had significant impact on this document:

What is a "rating service"?

A rating service is an individual, group, organization, or company that provides content labels for information on the Internet. The labels it provides are based on a rating system (see below). Each rating service must describe itself using a newly created MIME type, application/pics-service. Selection software that relies on ratings from a PICS rating service can first load the application/pics-service description. This description allows the software to tailor its user interface to reflect the details of a particular rating service, rather than providing a "one design fits all rating services" interface.

This specification does not state how the application/pics-service description of a rating service is initially located. For users of the World Wide Web, we expect that well-known sites will provide lists of rating services along with their application/pics-service descriptions. It is expected that client programs will cache copies of application/pics-service descriptions, so any incompatible change in a service description should be accomplished by creating an entirely new service URL.

Each rating service picks a URL as its unique identifier. It is included in all content labels the service produces, to identify their source. We recommend, but do not require, that this identifier include a version number, as shown in all of the examples in this specification, to simplify transitions due to incompatible changes over time. For example, our sample service "http://www.gcf.org/v1.0/" includes "v1.0" as its own version number. To ensure that no other service uses the same identifier, it must be a valid URL. In addition, the URL (when used within a query) serves as a default location for a label bureau that dispenses this service's labels (see PICS Label Distribution).

Since the service identifier is a URL, it can be used to retrieve a document. That document may be in any format, but we recommend that it:

What is a "rating system"?

A rating system specifies the dimensions used for labeling, the scale of allowable values on each dimension, and a description of the criteria used in assigning values. For example, the MPAA rates movies in the USA based on a single dimension with allowable values G, PG, PG-13, R, and NC-17.

Each rating system is identified by a valid URL. This enables several services to use the same rating system and refer to it by its identifier. The URL naming a rating system can be accessed to obtain a human-readable description of the rating system. The format of that description is not specified.

What is a "content label"?

A content label (or rating) contains information about a document. As described in PICS Label Distribution, a content label (or rating) has three parts:

  1. the URL naming the rating service that produced the label;
  2. a set of PICS-defined (and extensible) attribute-value pairs, which provide information about the rating such as the date that the rating was assigned;
  3. a set of rating-system-defined attribute-value pairs, which actually rate the item along various dimensions (also called categories)

The application/pics-service document type

A rating service is defined by a document of type application/pics-service. The detailed syntax and semantics are presented in the next two sections. Here is an example of such a document, intended only to illustrate the full set of features of a machine description:

((PICS-version 1.1)
 (rating-system "http://www.gcf.org/ratings")
 (rating-service "http://www.gcf.org/v1.0/")
 (icon "icons/gcf.gif")
 (name "The Good Clean Fun Rating System")
 (description "Everything you ever wanted to know about soap,
cleaners, and related products.  For demonstration purposes only.")

 (category  
  (transmit-as "suds")
  (name "Soapsuds Index")
  (min   0.0)
  (max   1.0))

 (category  
  (transmit-as "density")
  (name "suds density")
  (label (name "none") (value 0) (icon "icons/none.gif"))
  (label (name "lots") (value 1) (icon "icons/lots.gif")))

 (category  
  (transmit-as "subject")
  (name "document subject")
  (multivalue true)
  (unordered true)
  (label (name "soap") (value 0))
  (label (name "water") (value 1))
  (label (name "soapdish") (value 2))
  (label-only))

 (category  
  (transmit-as "color")
  (name "picture color")
  (integer)

  (category  
    (transmit-as "hue")
    (label (name "blue")  (value 0))
    (label (name "red")   (value 1))
    (label (name "green") (value 2)))

  (category  
   (transmit-as "intensity")
   (min 0)
   (max 255))))



Explanation of Sample Rating Service

  1. The identifier of the rating system used is http://www.gcf.org/ratings. The document available at that URL should be a human-readable description of the categories, scales, and intended criteria for assigning ratings.
  2. The identifier of the rating service is http://www.gcf.org/v1.0/. The labels themselves will have this URL in them to identify the service that created them. The document available at this URL should be a human-readable description of the rating service.
  3. There is an icon associated with the rating service, and it can be retrieved from "http://www.gcf.org/v1.0/icons/gcf.gif" (formed by interpreting the icon attribute's value relative to the rating-service identifier).
  4. There are four top-level categories in this rating system. Each category has a short transmission name to be used in labels; some also have longer names that are more easily understood. For example, the first has transmission name "suds" and the longer name "Soapsuds Index." The second has a transmission name of "density" and longer name "suds density,".
  5. The "Soapsuds Index" category is rated on a scale from 0.0 to 1.0, inclusive.
  6. The "suds density" category can have ratings from negative to positive infinity, but there are two values that have names and icons associated with them. The name "none" is the same as 0, and the name "lots" is the same as 1. Icons associated with those names are found at http://www.gcf.org/ratings/icons/none.gif and http://www.gcf.org/ratings/icons/lots.gif (i.e. they are dereferenced relative to the rating-system identifier).
  7. The "document subject" category only allows the values 0, 1, and 2 to be used, but a single document can have any combination of these values. Each value has a name (0 is "soap," etc.). So one document might not have any rating on this category, while another is both a "soap" and a "soapdish." The values are unordered, which is a hint to user interface designers to employ check boxes or some other widgets that do not convey ordering of values, rather than a slider or other widget that does convey ordering.
  8. The "picture color" category has two sub-categories. Values on the "picture color" dimension itself are restricted to integers, and will be transmitted as a category named "color." The first sub-category is transmitted as "color/hue" and the second as "color/intensity." Notice that color/hue can take on only integer values (because it inherits the integer attribute of its parent, "color," category), but there are three values with names ("blue," "red," and "green."). The category color/intensity can take on any integer value between 0 and 255 (inclusive).

Detailed syntax of application/pics-service

Notes:

  1. Whitespace is ignored except in quoted strings. Multiple contiguous whitespace characters can be treated as though they were a single space character.
  2. Transmit-names and quoted strings are case sensitive. Option names and other tokens in the BNF grammar are case insensitive.
  3. Additional attributes may be added over time, using the extension attribute. To avoid duplication of extension names, each extension is identified by a quoted-URL. The URL can be dereferenced to get a human-readable description of the extension. If the extension is optional then software which does not understand the extension can simply ignore it; if the extension is mandatory then software which does not understand the extension should reject the entire service description. See http://w3.org/PICS/extensions/ to find out what extensions are currently in use.
  4. The only service-option that may occur more than once in a single service description is the extension option. Likewise, the only option that may occur more than once as a default or as a category-option is extension. In each case, if the extension option is supplied more than once, the quoted-URLs defining the extensions must be distinct.
  5. This specification requires the use of UTF-7 encoding to allow for the inclusion of non-English description strings. For those rating systems and services that use only the US-ASCII character set in their descriptive strings, UTF-7 allows direct encoding of the following (printable) characters: a-z, A-Z, 0-9, '(),-./:?!#$%&*;<=>@[]^_`{|} Notice that "+" is not included in this set, since it is used by the UTF-7 encoding system.
  6. It is guaranteed that this and all future versions of the application/pics-service MIME type will begin with the version information, changing from 1.1 as specified here to other numbers as the specification is revised. Rating services are encouraged to adopt a similar mechanism and place their own version number in their rating-service URL. (Notice that the service description uses the notation "(PICS-version 1.1)" while the label itself (see PICS Label Distribution) uses "PICS-1.1". While inelegant, this is intentional.)
rating-service-description ::
  '(' version rating-system rating-service
      service-option* category-list+ ')'

version :: '(' 'PICS-version' '1.1' ')'
rating-system :: '(' 'rating-system' quoted-URL ')'
rating-service :: '(' 'rating-service' quoted-URL ')'
service-option :: default | description | extension
  icondef | name
category-list ::
  '(' 'category'
      '(' 'transmit-as' transmit-name ')'
      (category-option | scale-option)*
      category-list*
  ')'

defaultable-option :: extension | integer | labeled
   | max | min | multi | unordered
category-option ::  description | icondef | name
scale-option :: defaultable-option | enum-list

enum-list :: enum+
enum ::
   '(' 'label' name [description]
       '(' 'value' number ')'
       [icondef]
   ')'

default :: '(' 'default' defaultable-option+ ')'
description :: '(' 'description' quoted-string ')'
extension :: '(' 'extension'
                 '(' mand/opt quoted-URL data* ')' ')'
icondef :: '(' 'icon' quoted-URL ')'
integer :: '(' 'integer' [boolean] ')'
labeled :: '(' 'label-only' [boolean ] ')'
max :: '(' 'max' maxnum ')'
min :: '(' 'min' minnum ')'
multi :: '(' 'multivalue' [boolean] ')'
name :: '(' 'name' quoted-string ')'
unordered :: '(' 'unordered' [boolean] ')'

boolean :: 't' | 'f' | 'true' | 'false'
mand/opt :: 'optional' | 'mandatory'
transmit-name :: '"' transmit-name-char+ '"'

minnum :: number | '-INF'
maxnum :: number | '+INF'
number :: [sign]unsignedint['.' [unsignedint]]
sign :: '+' | '-'
unsignedint :: [0-9]+

data :: quoted-string | '(' data* ')'
    Note: In many cases it is useful to be able to use a
    URL as data.  This syntax requires that, in such a case,
    the URL must be UTF-7 encoded.  This will rarely require
    any additional work, but designers and implementers of
    extensions should take care.
quoted-string :: '"' UTF-7 '"'
UTF-7 :: Characters encoded using UTF-7, with direct
   coding of US-ASCII set O except for the double-quote
   (decimal 34) which must be encoded to allow for its use
   as the string delimiter character.  See note above.

quoted-URL ::  '"' URL '"'
URL is as defined in RFC-1738 for URLs. In addition,
   PICS defines the following new form for referencing
   Internet Relay Chat (IRC) rooms:
   URL :: ... | 'irc://' host '/' alphanumpm 
       (where host is the usual Internet hostname)
transmit-name-char :: alphanumpm | '.' | '$' | ',' | ';' | ':' 
                | '&' | '=' | '?' | '!' | '*' | '~' | '@'
                | '#' | '_' | '%' hex hex
    Note: Use the "%" escape technique (% followed by the two
          hex digits that represent the character in the ASCII character
          set) to insert single or double quotation marks or parentheses.
alphanumpm :: 'A' | ... | 'Z' | 'a' | ... | 'z' | '0' | ... | '9' | sign
sign :: '+' | '-'

For reference, the following attributes are currently defined by the above BNF:

  1. Within a rating service, there are the attributes category, default, description, extension, icon, name, PICS-version, rating-service, and rating-system.
  2. Within a category, there are the attributes description, extension, icon, integer, label, label-only, max, min, multivalue, name, transmit-as, and unordered.
  3. Within a named value (an enum in the BNF syntax), there are the attributes description, icon, name and value.
  4. The defaultable attributes are those which can be overridden by a lexically enclosed description: extension, integer, label-only, max, min, multivalue, unordered. While it isn't actually possible to override an extension, careful design of extensions allows an equivalent facility.

Semantics of the application/pics-service Description

Recall that the MIME type application/pics-service is intended to describe a particular rating service in sufficient detail to automatically generate a user interface for configuring content selection software that relies on the rating service.

The quoted-URL in the rating-service identifies the service. This identifier is included in all the labels provided by the rating service. Dereferencing the URL yields a human-readable description of the service. If the optional URL for an icon for the rating service is supplied, it is dereferenced relative to the rating service URL. The name of the rating system is intended to be short and human-readable, with the description being a longer description (suitable, perhaps, for a pop-up box). A complete human-readable description is available from the rating service's URL.

The quoted-URL in the rating-system identifies the rating system used by this service. Dereferencing the URL yields a human-readable description of the rating system. All remaining relative URLs in the application/pics-service description are dereferenced relative to the rating-system URL, since they describe features of the rating system. The only exception is the rating service's icon, as described above, which is dereferenced relative to the rating-service URL, so that the service can maintain its own (possibly copyrighted) identity even if it chooses to share a rating system with other services.

The machine-readable description also describes the categories used in the rating system. There may be one or more categories for a given rating system. A single document may have a rating on any or all of these categories. Categories can be nested within one another.

A category has a "transmission name" which is used in the actual label for a document. Transmission names should be as short as reasonable, but they may be complete URLs if desired. They must be unique within a given rating system (i.e. two categories in the same rating system must not have the same transmission name; but see below for creating transmissions names from nested categories.) Unlike the name and description strings, transmission names are language-independent. That is, if a rating system is offered in several languages, the transmission names must be the same in all of them. Transmission names are case sensitive (to allow URLs to be used as transmission names). In addition to the transmission name, which is required, a category may optionally have an icon and a human-readable description.

Categories may be nested within one another (as in the case of color in the example rating system). In this case, the transmission name is created in the usual way by starting with the outermost category's transmit-as string, adding a "/" and proceeding inward in the nesting. Thus, the example rating system has three categories, and their transmission names are color, color/hue, and color/intensity. In order to simplify the user interface of configuration software, it is wise to have few categories at any level of nesting; we recommend 10 or fewer.

Icons, if provided, may be of any size. We recommend, however, that icons be as small as possible, since selection software is likely to embed them in displays that include other text and images as well. We also recommend that a rating service's category icons all be the same size.

Values in PICS labels may be integers or fractions with no greater range or precision than that provided by IEEE single-precision floating point numbers. Values may be given names by using the label attribute. When a value is given a name, it may optionally have attached an icon and a human-readable description. The description for each category can specify restrictions on the range of permissible values for certain named attributes. Values may be restricted in a variety of ways:

  1. minimum (min attribute, defaults to -INF) value;
  2. maximum (max attribute, defaults to +INF) value;
  3. integer values only (integer attribute, defaults to false if the attribute is omitted, but true if it is present with no value specified);
  4. named values only (label-only attribute, defaults to false if the attribute is omitted, but true if it is present with no value specified).
  5. more than a single rating allowed for a given document (consider the dimension "sizes available"). This is indicated by setting the attribute multivalue to true (default is false if the attribute is omitted, but true if it is present with no value specified).
  6. unordered values (unordered attribute, defaults to false if the attribute is omitted, but true if its is present with no value specified.)

For rating systems that contain large numbers of categories or deeply nested categories, it is convenient to allow for inheritance of some attribute values. In particular, the defaultable-options of a category (extension, integer, label-only, max, min, multivalue, and unordered) are inherited by each category from its enclosing (parent) category. These attributes can be given default values for the entire rating service by using the default attributes. This corresponds to value inheritance in object-oriented systems or lexical scoping in programming languages. (Notice that not all attributes can be inherited. Rationale: the set was chosen to include only those attributes that can be overridden. Thus, the enum-list is not inheritable because there is no way to say "don't give this value a name," which would be required to override an inherited name.)

Note: While it would be nice to restrict the numeric values of ratings to integers, the following examples motivate our decision to permit fractional values.

  1. The MPAA rating system was changed to interpolate a new category (PG-13) between "PG" and "R". Had their system been encoded with a tightly packed integer scale (e.g., G=1, PG=2, R=3) it would have required rescinding many existing labels when the change occurred. With fractional numbers there is no need to renumber (e.g., PG-13 could be associated with the fraction 2.5).
  2. It may be desirable to include the cost of an item in a content label. This cost may not be an integral number of currency units (think, for example, of a micropayment system in which charges of small fractions of a cent are permitted).
  3. Ratings may be generated by statistical means from the responses of many people. Such ratings could be rounded off to an integer before presentation, but this loses much important information.

Glossary

application/pics-service
A new MIME data type, defined in this document.
application/pics-labels
A new MIME data type used to transmit one or more labels, defined in PICS Labels.
BNF
Backus-Naur Form (or Backus Normal Form). A notation for describing a formal syntax, used extensively in describing programming languages and computer-readable data formats.
category
The part of a rating system which describes a particular criterion used for rating. For example, a rating system might have three categories named "sexual material," "violence," and "vocabulary." Also called a dimension.
content label
A data structure containing information about a given document's contents. Also called a rating or content rating. The content label may accompany the document it is about or be available separately.
content rating
See content label.
dimension
See category.
HTML
HyperText Markup Language. A means of representing hypertext documents. Based on SGML. See the HTML 2.0 Proposed Standard.
HTTP
HyperText Transfer Protocol. Used for retrieving document contents and/or descriptive header information. See the draft HTTP specification.
hypertext
Text, graphics, and other media connected through links.
MIME
Multimedia Internet Message Extension. A technique for sending arbitrary data through electronic mail on the Internet. See RFC-1521
PICS
Platform for Internet Content Selection, the name for both the suite of specification documents of which this is a part, and for the organization writing the documents.
rating
See content label.
label bureau
A computer system which supplies, via a computer network, ratings of documents. It may or may not provide the documents themselves.
rating server
See label bureau.
rating service
An individual or organization that assigns labels according to some rating system, and then distributes them, perhaps via a label bureau or via CD-ROM.
rating system
A method for rating information. A rating system consists of one or more categories.
scale
The range of permissible values for a category.
SGML
Standard Generalized Markup Language. See ISO 8879.
transmission name
(of a category) The short name intended for use over a network to refer to the category. This is distinct from the category name in as much as the transmission name must be language-independent, encoded in ASCII, and as short as reasonably possible. Within a single rating system the transmission names of all categories must be distinct.
URL
Uniform Resource Locator. Described in RFC-1738. A URL describes the location and means of retrieval for a single document. It consists of three components: the "scheme" (protocol used to retrieve a document, like "http" or "ftp"), a host name, and a hierarchical document name within that host. For example "http://w3.org/PICS" is the URL of the PICS home page. The scheme for retrieving it is "http," the host is "w3.org" and the name within that host is "PICS". Notice that PICS defines an additional scheme beyond those listed in RFC-1738, described in Rating Services and Rating Systems, which allows Chat (IRC) rooms to be named.
UTF-7
An encoding technique that can be used to transmit Unicode over 7-bit ASCII transport systems such as Internet electronic mail.

References

  1. PICS, "Label Syntax and Communication Protocols", Internet Draft, "draft-pics-labels-00.txt", 11/21/95.
  2. T. Berners-Lee, D. Connolly, "Hypertext Markup Language - 2.0", RFC 1866, 11/03/1995.
  3. N. Borenstein, N. Freed, "MIME (Multipurpose Internet Mail Extensions) Part One: Mechanisms for Specifying and Describing the Format of Internet Message Bodies", RFC 1521, 09/23/1993.
  4. T. Berners-Lee, L. Masinter, M. McCahill, "Uniform Resource Locators (URLs)", RFC 1738, 12/20/94.
  5. D. Goldsmith, M. Davis, "UTF-7 - A Mail-Safe Transformation Format of Unicode", RFC 1642, 7/13/94.

Acknowledgments

Comments and suggestions from the following people are gratefully acknowledged:

Brenda Baker, Lucent
Scott Berkun, Microsoft
Tim Berners-Lee, W3C
Roxana Bradescu, AT&T
Daniel W. Connolly, W3C
Roy Fielding, W3C
Jay Friedland, SurfWatch
Henrik Frystyk Nielsen, W3C
Wayne Gramlich, Sun
Woodson Hobbs, NewView
Rohit Khare, W3C
Charlie Kim, Apple
John C. Klensin, MCI
Tim Krauskopf, Spyglass
Breen Liblong, IFSI
Ann McCurdy, Microsoft
Rich Petke, CompuServe
Eric Prud'hommeaux, W3C
Dave Raggett, W3C
Bob Schloss, IBM
Ray Soular, SafeSurf
Jason Thomas, MIT
G. Winfield Treese, OpenMarket
Richard Wolpert, Providence Systems

Appendix A: The Ages Rating Service

One of the simplest possible rating systems uses a single category, "Minimum recommended age." We present the machine description for a fictional service that uses this rating system.

((PICS-version 1.1)
 (rating-system "http://www.ages.org/our-system/")
 (rating-service "http://www.ages.org/our-service/v1.0/")
 (name "The Ages Rating Service")
 (description "We estimate the maturity required to view materials on
the Internet.")
 (category (transmit-as "age") (name "Minimum Recommended Age") (integer true)))

Appendix B: RSAC Rating Service

As a specific example of a deployed rating service encoded using the PICS machine-readable description format, we present the service supplied by the Recreational Software Advisory Council (RSAC). They use their own (copyrighted) rating system, which we include with their permission. The rating system contains four categories: Violence, Nudity, Sex, and Language. Each category is rated on a scale from 0 to 4, with a specific description for each value. Only values with names are permitted.

((PICS-version 1.1)
 (rating-system "http://www.rsac.org/ratingsv01.html")
 (rating-service "http://www.rsac.org/")
 (name "The RSAC Ratings Service")
 (description "The Recreational Software Advisory Council rating
service.  Based on the work of Dr. Donald F. Roberts of Stanford
University, who has studied the effects of media on children for
nearly 20 years.")
 (default (label-only true))

 (category
  (transmit-as "v")
  (name "Violence")
  (label
   (name "Conflict")
   (description "Harmless conflict; some damage to objects")
   (value 0))
  (label
   (name "Fighting")
   (description "Creatures injured or killed; damage to objects; 
fighting")
   (value 1))
  (label
   (name "Killing")
   (description "Humans injured or killed with small amount of blood")
   (value 2))
  (label
   (name "Blood and Gore")
   (description "Humans injured or killed; blood and gore")
   (value 3))
  (label
   (name "Wanton Violence")
   (description "Wanton and gratuitous violence; torture; rape")
   (value 4)))

 (category
  (transmit-as "s")
  (name "Sex")
  (label
   (name "None")
   (description "Romance; no sex")
   (value 0))
  (label
   (name "Passionate kissing")
   (description "Passionate kissing")
   (value 1))
  (label
   (name "Clothed sexual touching")
   (description "Clothed sexual touching")
   (value 2))
  (label
   (name "Non-explicit sexual activity")
   (description "Non-explicit sexual activity")
   (value 3))
  (label
   (name "Explicit sexual activity; sex crimes")
   (description
    "Explicit sexual activity; sex crimes")
   (value 4)))

 (category
  (transmit-as "n")
  (name "Nudity")
  (label
   (name "None")
   (description "No nudity or revealing attire")
   (value 0))
  (label
   (name "Revealing Attire")
   (description "Revealing attire")
   (value 1))
  (label
   (name "Partial Nudity")
   (description "Partial nudit")
   (value 2))
  (label
   (name "Frontal Nudity")
   (description "Non-sexual frontal nudity")
   (value 3))
  (label
   (name "Explicit")
   (description
    "Provocative frontal nudity")
   (value 4)))

 (category
  (transmit-as "l")
  (description "Language")
  (label (name "Slang")
         (description "Inoffensive slang; no profanity")
         (value 0))
  (label (name "Mild Expletives")
         (description "Mild expletives")
         (value 1))
  (label (name "Expletives")
         (description "Expletives; non-sexual anatomical references")
         (value 2))
  (label (name "Obscene Gestures")
         (description "Strong, vulgar language; obscene gestures")
         (value 3))
  (label (name "Explicit")
         (description "Crude or explicit sexual references")
         (value 4))))

Appendix C: The SafeSurf~~ Rating Service

SafeSurf, a parents' organization, has established a rating system that is used for self-rating by a large and growing number of sites on the Internet. They have provided a machine-readable version of their service to PICS as a demonstration of a more complex rating system that includes sub-categories as well as a document classification system. The following specification includes a full description of the rating part of the SafeSurf system, with only a small stub to represent the classifications.

((PICS-version 1.1)
 (rating-system "http://www.classify.org/safesurf/")
 (rating-service "http://www.classify.org/safesurf/service/")
 (name "SafeSurf Rating Service")
 (description "The SafeSurf SS~~ Rating and Classification Standard.  Designed with input from thousands of parents and Net citizens worldwide to specifically to handle the vast potential of the Internet, it empowers each family to make informed decisions concerning accessibility of online content. Copyright 1995.  All Rights Reserved.")

 (category (transmit-as "SS~~000") (name "Age Range") 
   (label 
     (name "All Ages") 
     (value 1))
   (label 
     (name "Older Children") 
     (value 2))
   (label 
     (name "Younger Teens") 
     (value 3))
   (label 
     (name "Older Teens") 
     (value 4))
   (label 
     (name "Adult Supervision Recommended") 
     (value 5))
   (label 
     (name "Adults") 
     (value 6))
   (label 
     (name "Limited to Adults") 
     (value 7))
   (label 
     (name "Adults Only") 
     (value 8)) 
   (label 
     (name "Explicitly for Adults") 
     (value 9)))

 (category (transmit-as "SS~~001") (name "Profanity") 
   (label 
     (name "Subtle Innuendo") 
     (description "Subtly Implied through the use of Slang") 
     (value 1))
   (label 
     (name "Strong Innuendo") 
     (description "Expressly implied through the use of Slang") 
     (value 2))
   (label 
     (name "Technical Reference") 
     (description "Dictionary, encyclopedic, news, technical references") (value 3))
   (label 
     (name "Non-Graphic-Artistic") 
     (description "Limited non-sexual expletives used in a artistic fashion") (value 4))
   (label 
     (name "Graphic-Artistic") 
     (description "Non-sexual expletives used in a artistic fashion") (value 5))
   (label 
     (name "Graphic") 
     (description "Limited use of expletives and obscene gestures") (value 6))
   (label 
     (name "Detailed Graphic") 
     (description "Casual use of expletives and obscene gestures") (value 7))
   (label 
     (name "Explicit Vulgarity") 
     (description "Heavy use of vulgar language and obscene gestures. Unsupervised Chat Rooms.") 
     (value 8))
   (label 
     (name "Explicit and Crude") 
     (description "Saturated with crude sexual references and gestures. Unsupervised Chat Rooms.") 
     (value 9)))

 (category (transmit-as "SS~~002") (name "Heterosexual Themes")  
    (label 
      (name "Subtle Innuendo")
      (description "Subtly Implied through the use of metaphor") 
      (value 1))
    (label 
      (name "Strong Innuendo")
      (description "Explicitly implied (not described) through the use of metaphor") 
      (value 2))
    (label 
      (name "Technical Reference")
      (description "Dictionary, encyclopedic, news, medical references") 
      (value 3))
    (label 
      (name "Non-Graphic-Artistic")
      (description "Limited metaphoric descriptions used in a artistic fashion") 
      (value 4))
    (label (name "Graphic-Artistic")
      (description "Metaphoric descriptions used in a artistic fashion") 
      (value 5))
    (label 
      (name "Graphic")
      (description "Descriptions of intimate sexual acts") 
      (value 6))
    (label 
      (name "Detailed Graphic")
      (description "Descriptions of intimate details of sexual acts") 
      (value 7))
    (label 
      (name "Explicit Vulgarity")
      (description "Explicit Descriptions of intimate details of sexual acts designed to arouse. Inviting interactive sexual participation. Unsupervised Sexual Chat Rooms or Newsgroups") 
      (value 8))
    (label 
      (name "Explicit and Crude")
      (description "Profane Graphic Descriptions of intimate details of sexual acts designed to arouse. Inviting interactive sexual participation.  Unsupervised Sexual Chat Rooms or Newsgroups") 
      (value 9)))

 (category (transmit-as "SS~~003") (name "Homosexual Themes")
    (label 
      (name "Subtle Innuendo")
      (description "Subtly Implied through the use of metaphor") 
      (value 1))
    (label 
      (name "Strong Innuendo")
      (description "Explicitly implied (not described) through the use of metaphor") 
      (value 2))
    (label 
      (name "Technical Reference")
      (description "Dictionary, encyclopedic, news, medical references") 
      (value 3))
    (label 
      (name "Non-Graphic-Artistic")
      (description "Limited metaphoric descriptions used in a artistic fashion") 
      (value 4))
    (label 
      (name "Graphic-Artistic")
      (description "Metaphoric descriptions used in a artistic fashion") 
      (value 5))
    (label 
      (name "Graphic")
      (description "Descriptions of intimate sexual acts") 
      (value 6))
    (label 
      (name "Detailed Graphic")
      (description "Descriptions of intimate details of sexual acts") 
      (value 7))
    (label 
      (name "Explicit Vulgarity")
      (description "Explicit Descriptions of intimate details of sexual acts designed to arouse. Inviting interactive sexual participation. Unsupervised Sexual Chat Rooms or Newsgroups") 
      (value 8))
    (label 
      (name "Explicit and Crude")
      (description "Profane Graphic Descriptions of intimate details of sexual acts designed to arouse. Inviting interactive sexual participation.  Unsupervised Sexual Chat Rooms or Newsgroups") 
      (value 9)))

      
 (category (transmit-as "SS~~004") (name "Nudity") 
    (label 
      (name "Subtle Innuendo")
      (description "Subtly Implied through the use of composition, lighting, shaping, revealing clothing, etc.") 
      (value 1))
    (label 
      (name "Strong Innuendo")
      (description "Explicitly implied (not shown) through the use of composition, lighting, shaping or revealing clothing") 
      (value 2))
    (label 
      (name "Technical Reference")
      (description "Dictionary, encyclopedic, news, medical references") 
      (value 3))
    (label 
      (name "Non-Graphic-Artistic")
      (description "Classic works of art presented in public museums for family viewing") 
      (value 4))
    (label 
      (name "Graphic-Artistic")
      (description "Artistically presented without full frontal nudity") 
      (value 5))
    (label 
      (name "Graphic")
      (description "Artistically presented with frontal nudity") 
      (value 6))
    (label 
     (name "Detailed Graphic")
     (description "Erotic frontal nudity") 
      (value 7))
    (label 
      (name "Explicit Vulgarity")
      (description "Detailed provocative presentation") 
      (value 8))
    (label 
      (name "Explicit and Crude")
      (description "Explicit pornographic presentation") 
      (value 9)))

 (category (transmit-as "SS~~005")
    (name "Violence") 
    (label 
      (name "Subtle Innuendo")
      (value 1))
    (label 
      (name "Strong Innuendo")
      (value 2))
    (label 
      (name "Technical Reference") 
      (value 3))
    (label 
      (name "Non-Graphic-Artistic") 
      (value 4))
    (label 
      (name "Graphic-Artistic") 
      (value 5))
    (label 
      (name "Graphic") 
      (value 6))
    (label 
      (name "Detailed Graphic") 
      (value 7))
    (label 
      (name "Inviting Participation in Graphic Interactive Format") 
      (value 8))
    (label 
      (name "Encouraging Personal Participation, Weapon Making") 
      (value 9)))

 (category (transmit-as "SS~~006") 
   (name "Sex Violence and Profanity")
    (label 
      (name "Subtle Innuendo") 
      (value 1))
    (label 
      (name "Strong Innuendo") 
      (value 2))
    (label 
      (name "Technical Reference") 
      (value 3))
    (label 
      (name "Non-Graphic-Artistic") 
      (value 4))
    (label 
      (name "Graphic-Artistic") 
      (value 5))
    (label 
      (name "Graphic") 
      (value 6))
    (label 
      (name "Detailed Graphic") 
      (value 7))
    (label 
      (name "Explicit Vulgarity") 
      (value 8))
    (label 
      (name "Explicit and Crude") 
      (value 9)))

 (category (transmit-as "SS~~007") 
   (name "Intolerance of another person's racial, religious, or gender backround") 
    (label 
      (name "Subtle Innuendo") 
      (value 1))
    (label 
      (name "Strong Innuendo") 
      (value 2))
    (label 
      (name "Technical Reference") 
      (value 3))
    (label 
      (name "Non-Graphic-Literary") 
      (value 4))
    (label 
      (name "Graphic-Literary") 
      (value 5))
    (label 
      (name "Graphic Discussions") 
      (value 6))
    (label 
      (name "Endorsing Hatred")
      (value 7))
    (label 
      (name "Endorsing Violent or Hateful Action") 
      (value 8))
    (label 
      (name "Advocating Violent or Hateful Action") 
      (value 9)))

 (category (transmit-as "SS~~008") (name "Glorifying Drug Use")
    (label 
      (name "Subtle Innuendo") 
      (value 1))
    (label 
      (name "Strong Innuendo") 
      (value 2))
    (label 
      (name "Technical Reference") 
      (value 3))
    (label 
      (name "Non-Graphic-Artistic") 
      (value 4))
    (label 
      (name "Graphic-Artistic") 
      (value 5))
    (label 
      (name "Graphic") 
      (value 6))
    (label 
      (name "Detailed Graphic") 
      (value 7))
    (label 
      (name "Simulated Interactive Participation") 
      (value 8))
    (label 
      (name "Soliciting Personal Participation") 
      (value 9)))

 (category (transmit-as "SS~~009") (name "Other Adult Themes") 
    (label 
      (name "Subtle Innuendo") 
      (value 1))
    (label 
      (name "Strong Innuendo") 
      (value 2))
    (label 
      (name "Technical Reference") 
      (value 3))
    (label 
      (name "Non-Graphic-Artistic") 
      (value 4))
    (label 
      (name "Graphic-Artistic") 
      (value 5))
    (label 
      (name "Graphic") 
      (value 6))
    (label 
      (name "Detailed Graphic") 
      (value 7))
    (label 
      (name "Explicit Vulgarity") 
      (value 8))
    (label 
      (name "Explicit and Crude") 
      (value 9)))

 (category (transmit-as "SS~~00A") (name "Gambling") 
    (label 
      (name "Subtle Innuendo") 
      (value 1))
    (label 
      (name "Strong Innuendo") 
      (value 2))
    (label 
      (name "Technical Discussion") 
      (value 3))
    (label 
      (name "Non-Graphic-Artistic, Advertising") 
      (value 4))
    (label 
      (name "Graphic-Artistic, Advertising") 
      (value 5))
    (label 
      (name "Simulated Gambling") 
      (value 6))
    (label 
      (name "Real Life Gambling without Stakes") 
      (value 7))
    (label 
      (name "Encouraging Interactive Real Life Participation with Stakes") 
      (value 8))
    (label 
      (name "Providing Means with Stakes") 
      (value 9)))

 (category (transmit-as "SS~~100")  (name "General Information") 
      (min 1) (max 100) (integer true)))

Copyright  ©  1996 W3C (MIT, INRIA, Keio ), All Rights Reserved. W3C liability, trademark, document use and software licensing rules apply.


Webmaster
$Date: 2000/09/08 16:13:46 $