CC/PP - DTPP

Document Transformation Preference Profiling

Also: Comments on CC/PP (Description Format & Exchange Protocol)

By:
Sean B. Palmer, WAP Tech Info - (sean@waptechinfo.com)
Date:
23rd September 2000

CC/PP : Description Format & Exchange Protocol

At the moment, we have a useful description format in development by the W3C for composite capabilities/Preference Profiles. These profiles will hopefully enable us to deliver a content-specific Internet for the near future. However, at the moment we are missing the key link; which this document will hopefully start to fill in.

The CC/PP Description Format (Vocabulary and Structure), provides a format for preference profiles. These profiles define many characteristics through the use of DF and RDF Schema. As this is still in development, it would be terse to suggest leaping ahead, but we at least need to get started on the nex two stages of CC/PP - a protocol, and an implementation system. As you will know, a protocol is starting to be developed, championed by Johan Hjelm. The CC/PP exchange protocol specifies a means for transferring CC/PP DF information between servers and clients, as well as intermediaries (e.g. proxies). (N.B. Due to reasons expressed later, I believe that the best way forward is an exchange format basd on the transferral of profile URIs, rather than data itself, except for clients that may have to transmit a small built in profile.)

TThe next step as far as the W3C should be concerned is actually ealing with CC/PP - implementing it. The most useful and under-talked application for it at the moment, as the W3C keeps telling us, is DTPP - Document Transformation Preference Profiling.

Document Transformation Preference Profiling

DTPP concerns the transformation of documents as they pass through a CC/PP system. For example, a document can be transformed by extension, restriction, replacement, or processing (e.g. XSLT).

As an example, you may have an XHTML 1.1 document with a profile in it. This profile could ouline that the document may be pared down to to XHTML Basic, transformed to another XHTML Family by XSLT, or replaced by a WML file. As yet there is no method for doing this, which is why I am hoping DTPP will be taken seriously in future.

What wmainly have to deal with is a new kind of method for specifying different stages in the CC/PP chain - from source to output. Then each of these stages will have a different kind of CC/PP processing taking palce. For example:

XHTML 1.1 GET (HTTP/1.1) => profile indicates "source"[1]
                   /\         \/ XSLT to XHTML Basic allowed \/
                   /\               Transformation[2]
Client requests XHTML Basic             \/
                     [4] /\  <=  <= [3]Output delivered back to client

In this case, the following statuses will apply:
[1] Source document
[2] Transformation (drivers and content)
[3] Output
[4] Cachable output

This is only a very simple example. The fun comes when you have a lengthy profile that indicates multiple transformations are allowable.

DTPP, by adding the statuses, allows different processing to take place at different times in the CC/PP system.

Profile Processing

The main purpose of DTPP, when it is developed, will be to provide a means of processing profiles (possibly by XSLT), to provide the engine for transformability. The W3C alays emphasize that the CC/PP answer is needed for a rapidly emerging 3G world. The fact that voice browsers and fridges will be able to have custom delivered content is very great indeed, and CC/PP needs the full backing of the general community.

Using profile statuses, the processor will know "what needs to be one next" in the chain of comand. USing profile processing, this can then be carried out, passing the source document through a chain of transformations until it reaches the desired output status.

The primary objective for CC/PP should come from a standpoint of usability. The general public want to be able to write a single document, and then eventually have it "seeable" by any Internet user agent. This is a mighty task, but by attaching a preference profile to your document (be it WML2 or XHTML 1.0/1.1/2.0), you will be able to deliver what you want, where you want it.

Conclusions

I believe that DTPP should be considered as part of the Exchange Protocol for CC/PP, in that it offers the next step towards the processing of CC/PP.

Although DTPP is only a proposal, a system similar to it will at some point have to be investigated, so the system outlined above will hopefully provide a focusing point for the discussion, as well as furthering the progress of the Exchange Protocol work.