Areas of Consortium Activity
The goal of the
World Wide Web Consortium
(W3C) will be to ensure the
evolution of the World Wide Web (W3) protocols into a true information
infrastructure in such a fashion that smooth transitions will be assured both
now and in the future.Toward this goal,
the MIT Consortium team will develop, support, test,
disseminate W3 protocols and reference implementations of such protocols and
be a vendor-neutral convenor of the community developing W3 products.
In this latter role,
the team will act as a coordinator for W3 development to ensure maximum
possible standardization and interoperability.
The W3C Director in consultation with the Advisory Committee will more
fully define the priorities and activities of the Consortium.
Therefore,
the work described herein is a starting point and also what we perceive to be
important to the evolution of the Web.
The technical part of the work falls into the following broad categories:
- Automatability
- The ability to replace frequently used manual procedures
with automated ones.
- Extensibility
- The ability for new ideas, concepts,
operations and object types to be incorporated into the Web incrementally and
with back-compatibility;
- Scalability, Efficiency,
and Robustness
- The properties which maintain the operation of the Web in
the face of changes in technology and in dramatic growth in size and
usage;
- Incorporation of Privacy,
- Web mechanisms for employing means for the and Authentication privacy,
data integrity and authentication required for commercial or confidential use.
The following gives an overview of the state of the art in these fields and
the impact which W3C will have through incorporation of these improvements.
Protocol design areas
In more detail,
the work will involve changes to the specifications and conventions which are
used or selected by the Web along the following lines:
Naming and addressing syntax and semantics:
Universal Identifiers Network transfer protocols:
HyperText Transfer Protocol (HTTP) ,
including protocols for enhancing the robustness of the Web (proxy servers,
caching, replication, optimal request routing,
etc.).
Data formats for hypertext, hypermedia, etc.:
HyperText Markup Language (HTML), etc.
In most cases W3C will attempt to define W3 specifications in terms of
existing standards.
This involves an awareness of the state of the art with related developments
such as:
The z39.50 suite of protocols emanating from library automation,
and its ANSI "BER" encoding style;The Object Management Group's CORBA
proposals
Alternative underlying networks such as ATM, wireless,
etc.
Specific work in areas which are not deemed central to the needs of the Web
may be done subject to the availability of specific funding.More details on
areas of work in which we or our collaborators are already engaged,
as of September 1994 are as follows.
Incorporation of Privacy,
and Authentication
There is a need for W3,
and HTTP in particular, to provide the three basic forms of network security:
authentication, message integrity, and privacy.
There is work already done in this field,
most notably by EIT but also at CERN to add security to the HTTP protocol in a
manner similar to the PEM enhancements for electronic mail.
We have an informal agreement to work with EIT to ensure that the work
results in a common standard for interoperability.
Our guiding principles in this area will be:
A choice of encryption levels and technologies should be available to the
user,
communications between peers taking place using facilities common to the two
sides;
A common software interface in the reference code to allow new or different
encryption modules to be added or removed.
This is particularly necessary given the different laws surrounding the
distribution and use of encryption code in different countries.
This work will take place in conjunction with the Security area of the
Internet Engineering Task Force (IETF) whose GSS task force is working on an
callable interface in this area.
Decoupling of the key distribution and certificate verification system from
the encryption itself.
This is necessary because the key distribution system has social implications
on the trust structure in the organizations which use it.
We propose to implement a decentralized certificate system using the Web as a
certificate repository:
however,
other systems could also be used.
We expect to provide at least one combination of facilities which will allow
international communication,
using technology which is available in some form both in the US and the EU.
The basic forms of security,
privacy and authentication will be adequate for transactions which involve
payment,
but further investigation will be necessary in order to determine the most
appropriate approaches that will allow easy payment for information and for
goods and services.
Enhanced document description languages
There is a need for more sophisticated document description languages than the
basic HTML which is the lingua franca of the Web today.
The basic Web architecture provides a method for negotiating formats,
but some work to select or provide common standards in this are is necessary.
The areas which are currently under development are:
Enhancements to HTML to allow more sophisticated documents,
while preserving the principle of a format-independent transfer language.
The details of this are available in the discussion notes of the HTML working
group of the IETF and the www-html mailing list and in the repository of
background materials.
The features being prototyped and defined include tables, figures,
and mathematical formulas.
A language for defining style,
for mapping format-independent documents onto specific renderings;
The selection or definition of completely presentation-oriented languages such
as Adobe Inc.'s "PDF" language,
and the hyper-TeX and hyper-DVI languages;
Languages for 2, 3 and 4 dimensional compositional graphics,
leading to distributed virtual reality.
There are a number of contenders for such languages,
but there is clearly some design work to be done before we have what we need
here,
as we are talking about merging the time and structure-based compositional
features of HyTime with for example 3D graphics which has its own set of
conventional notations.
Current priorities are pushing HTML enhancements.
For instance,
there is a requirement from industry to define the current HTML more
precisely.
Future HTML enhancements are then organized in a series of levels.
Web semantics
The longer term goal is a much richer semantic web for automatability via
agents.
In the short term there is a requirement for the specification and
demonstration of a number of features which may be implemented cleanly using
HTML and HTTP's link typing capabilities.
This will permit definition of large structured documents,
and relationships between versions and translations of documents to be
specified by servers in a way that will allow clients to give simple user
access to these properties,
using for example toolbars and graphical maps.
Some link relationships have been specified for a while,
but few have been in widespread use.
The consortium will prototype the use of more link types,
whose adoption as common practice will lead to a more readable web.
A second area in which semantics can be included is in the design of
semantically rich formats for alternative representations of objects.
This work is in the research stage,
and involves elaboration of any extensions or generalizations to be made to
the W3 hypertext model.
Protocol support for interaction
Work is in progress at CERN to provide support for user interaction with the
Web, such as direct editing and creation of new resources.
This is needed to allow easier updates of the Web by people with the authority
and knowledge to effect such changes.
Hypertext electronic mail,
news and Notes-like collaborative services will need support editing
facilities for HTTP.
We will attempt to develop a common model so such protocols will be useful
along a spectrum of such services.
This in turn gives us a base for the use of the Web as a collaborative tool
rather than a medium for centralized dissemination.
The HTTP protocol needs extensions for the update and creation of objects,
so that for example an HTTP proxy can perform mail and news functions as an
intermediary between for example an NNTP server and an HTTP client.
Scalability
There is a clear need for more sophisticated protocol features than HTTP
currently provides to enable intelligent replication of information which is
in wide demand.
Features to control caching include the exchange of sufficient usage
information to allow an efficient adaptive caching strategy,
and also the exchange of logging,
charging and intellectual property rights information to allow distribution
through the network of caches to have the same capabilities as a simple
client-server system.
A particular task is to incrementally add features to HTTP to allow caching
features to be extended,
along with modeling and algorithms work to provide a theoretical basis for the
longer term.
Protocol Support
W3C will produce basic software which may be used as a reference
implementation of the protocols.
The following features are some example target developments of the protocol
support code.
The wish lists for the distributed reference implementations are constantly
changing, as ideas move from conception to implementation in the code.
The current state is kept on the Web.
Much of the work of the consortium is expected to involve the folding into
these products of contributions from members or from collaborating institutes.
The three basic reference implementations which the W3 Consortium will
provide are the libwww common library,
and a reference client and server implementation.
Common code library
The "libwww" code library contains code for the parsing and generation of all
web-common data formats,
and for the handling of the client side of all web-common protocols.
It is structured in a very modular fashion,
so that it may be used in whole or in part.
Written for portability in a form of C which will compile under traditional
K&R C compilers or under ANSI C,
it nevertheless uses an object-oriented design style.
The library was designed for use in any application requiring access to the
Web.
It has been used not only in many clients,
but also in servers which provide gateway web access.
The libwww software released by the consortium will be a continuation of the
releases which have been sourced from and evolved by CERN since the birth of
the Web.
A planned work item will introduce a multi-threaded event driven code
architecture.
This will allow client implementations which can perform many network
operations at once (even within the same thread or process),
and easier porting between platforms.
It will allow a good match with event-driven environments, such as Mac,
Widows and X.
Reference server
The HTTP Daemon (HTTPD) server supports Unix- and VMS-based W3 hypermedia
databases.
It has allowed the W3 development team to experiment with new protocol
features,
and allowed many information providers to get information on-line rapidly and
easily.
Despite the fact that many servers have been produced for specific application
needs, or platforms,
the HTTPD server code will continue to be an important Web reference.
Prototype client
The consortium will produce one or more reference clients which may be used to
prototype new libwww and protocol features.
A possible task in this area is to break out the HTML display widget as a
common piece of code,
taking the boundary of the common code up a level from its previous interface.
The consortium will work toward fully interactive clients,
with wysiwyg editing facilities.
Test suites
Regression testing,
and the generation of automatic test suites from protocol definition files
will be done wherever possible.
The extent to which these techniques can be used will have to be learned from
experience and will depend on the cleanliness of the specifications.
Test material and test programs will be made available as a reference code of
the consortium.Development Coordination
An activity inseparable from the protocol specification is the coordination
among groups developing the Web.
As interworking is essential to the concept of the Web,
any aspects of client or server software which have implement protocols must
have compatible or unique implementations.
Competitive commercial software products require and assume common protocols.
This project will help coordinate industrial and academic development
activities so as to make greater use of resources,
and reach higher functionality.
Examples of this activity include:
The maintenance of a hypertext web describing the state of the art,
new areas of research suggested or under way, ideas,
discussion and pointers to any results, decisions, and conclusions;
The management of mailing lists for those interested in particular fields,
and the classification of announcements;
The organization will conduct meetings as necessary.
The project will attempt to make exemplary use of the Web itself for these
purposes,
requiring development of extended functionality where needed.
Dissemination, promotion,
and User support
While knowledge of the existence of W3 is becoming ubiquitous,
a reference point is essential to ensure that misunderstandings do not arise,
and to allow those in all sectors to keep abreast of developments.
The project will seek to maintain:
Overview documents about the Web;
Pointers to methods for getting access to the Web;
On the Web,
a certain amount of non-technical information including answers to frequently
asked questions;
Details of software and documentation available from the project,
and pointers to the registry of software and services (below).
Registration and coordination of services
In order to provide a realistic picture of the deployment of the Web,
W3C will maintain registries of:
Servers,
especially HTTP servers Facilities offered on the Web by subject
area
Suppliers of services and products for Web user
The administration of this information is in most cases delegated
hierarchically.
This information is not designed to compete with commercial catalogues,
but will attempt to be as definitive as possible.