
The True Meaning of Service
by Kendall Grant Clark
July 17, 2002
The Conventional Wisdom...
At some point over the past 18 months the future direction of the Web began
to be seen widely as a struggle between "Web
Services" and the "Semantic Web". The latter was thought to be rooted in the W3C
and academia, the former in IBM-Microsoft-Sun and industry. Since the
significance of any debate of the form, "the future of x", depends almost
entirely on the present value of x, debates about the future of
the Web are often heated, primarily because the present Web is so
valuable. There is too much at stake for half measures.
Part of the debate between services and semantics is a replay of the debate
about what makes the Web an interesting place: commerce or content? In the
conventional wisdom, services represent the commerce part of the Web, while
semantics represent its content.
For the most part these lines of allegiance and interest have been
unspoken. But they are usually revealed -- Freud would be unsurprised to learn
-- in oblique ways: in, for example, canonical examples. For the services crowd,
the canonical example is a complex, yet seamless commercial transaction; for
some reason, airline reservations and stock market quotations show up most
often. For the semantics crowd, the canonical example is some kind of agent or
autonomous process seamlessly handling an otherwise onerous task: a popular
example is automatic reconciliation of the schedules of a group of very busy
(and, we're left to assume, very important) people who want to have a
meeting.
Related Reading
XML in a Nutshell, 2nd Edition
A Desktop Quick Reference
By W. ScottMeans, Elliotte RustyHarold
Table of Contents
Index
Sample Chapter
Read Online--Safari
...is Often Wrong
It's been clear for some time that the conventional wisdom is wrong. But I
didn't really understand just how wrong the "Services versus Semantics" picture
is until I started to acquaint myself with DAML-S. DAML-S -- presently at version
0.6 -- is an upper ontology of web services being built on top of DAML+OIL (which is morphing into WebOnt, a W3C project). The idea is
that high-level ontologies of web resources can be very useful things and,
here's the kicker, web services are just a kind of web resource. Web
services are resources that,
as The DAML Services Coalition puts it, "allow one to effect some action or
change in the world, such as the sale of a product or the control of a physical
device" ("DAML-S: Semantic Markup For Web Services").
So DAML-S refutes the conventional wisdom in its own modest way by suggesting
that "versus" is not the only way to connect "semantics" and "services". If DAML-S
were merely a thought experiment, it would already have provided an interesting,
alternative way to look at the future of the Web. But DAML-S is much more than a thought experiment.
Why DAML-S?
The first bit about DAML-S to grasp is that it's a high-level
ontology, one that sits at the application level and is meant to answer the
what- and why-questions about a web service, as opposed to the how-questions,
which are the domain of WSDL (see Rich Salz's excellent "Examining WSDL for
details), about which more below. The value of having machine-digestible answers
to the how-questions of a web service should be clear by now to XML.com readers. But what could you do with machine-digestible answers to the what- and why-questions?
The motivations for creating DAML-S include discovery, invocation,
interoperation, composition, verification, and monitoring. A part of the practical cash value of any web technology labeled "semantic" is that the Web ought to provide something relatively useful in response to vague or even cryptic input from the end-user. If the end-user inputs "airline reservation" to her autonomous web agent, among the outputs ought to be, for example, the starting point of a web service which will guide her into making a flight reservation.
To support that and other kinds of end-user effect, we need smart service discovery. We need to be able to program agents to locate web services which satisfy a set of constraints. But smart discovery is useless without equally smart invocation; the end-user will be very disappointed if, after her
agent discovers a way to make reservations, it cannot invoke the process. The
end-user will be equally disappointed if, after it has discovered and invoked an
airline reservation service, her agent cannot monitor the process, providing her
with helpful feedback of the steps and graceful recovery from failures or
problems. This requires equally smart execution monitoring to go along with
discovery and invocation.
Developers and end-users alike, though in different
ways and for different reasons, may want to build up complex web services from
simpler ones, which is not possible unless or until one has machine-digestible
descriptions of, among other things, the inputs, outputs, preconditions, and
effects of the simpler services. Intelligent composition of services presupposes
their interoperation, particularly automatic translations or mappings between
clients and services. Last, for discovery to work, the properties of a service
must be machine verifiable; whether or not a service satisfies the set of
relevant constraints is a function of its properties.
Of course some of the preceding paragraph sounds like science fiction, but it
is backed by solid research in agent theory and other areas of computer science. A
mundane way of understanding DAML-S is to think of it as a marriage of
autonomous agent theory and XML-RDF, WSDL-SOAP.
[1] [2] Next