From W3C Wiki

"Content Selection" applications for the Semantic Web: aka the migration of PICS applications to the Resource Description Framework technology of the Semantic Web.

Like all pages in this Wiki, it has no formal status within W3C Process. It is just a sketch of some ideas for discussion. Feel free to add content to the foot of this page; if you edit text I've written, please let me know if the changes are more than trivial. Please sign any contributions with your name. -- DanBri - 13 Feb 2003

nearby: "Children, Mobile Phones and the Internet Experts' Meeting" workshop.


There were many aspects of PICS:

  • vocabulary definition language (PICS .rat files) -> now RDF Schema and OWL (Web Ontology Language)
  • pics rating services (now: RDF annotation services (eg. Annotea) and SOAP-style Web Services)
  • pics labels; basically subsumed by RDF descriptions, but:
    • but pics labels fit neatly in HTML, but EmbeddingRDFinHTML is non-trivial. hmm... P3P grew a compact syntax for deployment reasons... and there's N3, and don't forget XPath and XQuery syntax... hm... ShorthandRDF)
    • PICS labels had statements about the labels, e.g. "rated on YYYY-MM-DD by SOMEBODY" which motivated so-called reification in RDF; that seems to be a case of premature standardization, in retrospect. LinkMe: RDF Core WG issues on reification
    • PICS labels could make statements about all resources named by URIs with a shared prefix. RDF '98 had aboutEachPrefix, but it doesn't seem to have been deployed nor used, and the RDFCoreWG decided to take it out. This was a case of ExportingNamingPolicies, something not to be done lightly.
  • pics and digital signatures (now: XML sig and encryption; RDF web-of-trust research etc.)
  • pics rules (now: RDF query, apis; RDF rule languages; OWL facilities too.). Pics rules had a UI component.


There may never be any simple 'thing' that is 'PICS-RDF'. RDF is really, PICS Next Generation. That was the original name for RDF in 1997.

See The old PICS-NG proposal that preceded (and fed into) the original RDF working group's designs.

RDF and PICS even have similarly generic names,

then: Platform for Internet Content Selection now: Resource Description Framework.

RDF work now happens in the context of the Semantic Web Activity. RDF is the basis for the technology platform, and the Web is where we deploy it (perhaps?).

Expressing generalisations: Using OWL for bulk labeling

The basic RDF language is well suited for making claims about the properties of things (people, documents, Web sites etc.). RDF, on its own, does not offer a built-in mechanism for expressing generalisations about entire classes of thing. The Web Ontology Language (OWL) adds such facilities to RDF. Using OWL, you can add to RDF's basic description of classes of thing, for example by listing the necessary and sufficient conditions for a thing to be in some class.

For example, you can say "The class W3CTeamPerson consists of exactly those things that are a foaf:Person and which have a foaf:workplaceHomepage that is". The OWL Guide has examples. The basic idea is to express criteria for being in a class or category, to support machine processing of descriptions of things.

Here is an OWL expression that say "WhiteWine is Wine that hasColor property is white".

<owl:Class rdf:ID="WhiteWine">
  <owl:intersectionOf rdf:parseType="Collection">
    <owl:Class rdf:about="#Wine" />
      <owl:onProperty rdf:resource="#hasColor" />
      <owl:hasValue rdf:resource="#White" />

Don't worry about the details, for now.

How does this relate to PICS and content labeling? Well in PICS, there was a mechanism for expressing a 'generic label' which was true of many things. PICS had just one way of specifying the membership criteria for being in the category being generalized about: it used URI (URL, URN etc) substrings. So, you could for example attach an arbitrary PICS label to "all those things whose URL begins with the string".

It should be possible to re-express the notion of PICS generic labels, but using OWL concepts instead. To do this, we will need to invent some property which relates a thing to strings which are substrings of one or more of its URI names. We shall call this relationship 'util:uriSubstring' for now.

For example, consider a fictional adult site, 'newd pics', which is structured so that everything whose URI begins is an Image, and has an adultContent rating of QuiteOrVeryRude.

<owl:Class rdf:ID="QuiteOrVeryRudeImage">
  <owl:intersectionOf rdf:parseType="Collection">
    <owl:Class rdf:about="#Image" />
      <owl:onProperty rdf:resource="" />
      <owl:hasValue></owl:hasValue>  <!-- can this be a string literal, or hasValue becomes has???Value  -->

We could then use other OWL expressions to say that each QuiteOrVeryRudeImage has other characteristics.

@@hmm am not sure this is quite right yet. Also we need some test data for a worked example.

Comparing PICS and RDF

The former emphasised selection, filtering, discovery; the latter emphasises very general approaches to the description of things for that and other purposes. RDF _is_ in many ways PICS 2 already, and imho the work needed to finish the job of building the Semantic Web is largely the same work needed to make RDF useful for the original set of Metadata apps which included PICS, Dublin Core, Sitemaps, RSS etc. When that is done, PICS will be fully migrated to the new platform, RDF.

I prefer that we talk about this explicitly as a migration effort, not as a new 'RDF' version of PICS. This is about Content Selection for the Semantic Web, rather than about the old PICS technology...

--DanBri Feb 13 2003

Here's a demo (worked example) I made for the rdfweb project, showing use of RDF and SVG together as a sketch of how the Semantic Web provides a new take on PICS: SVG-Semantics: "PICS NG" Demo

--DanBri Mar 14 2003

also: VocabularyMarket

Conveniently smutless site for use in demos: "A selection of beautiful pictures of tits", from the Royal Tit-Watching (Ornithological) Society of Britain.