ReadWriteWeb

The Web of Services: Machine-Accessible Services

Written by Alexander Korth / October 16, 2009 12:00 PM / 10 Comments

In the last two posts in this series, we discussed the Web of data, which makes structured interlinked data sets machine-accessible, and the Web of identities, which makes data about people machine-accessible while addressing privacy and data volatility.

This time, we'll focus on the Web of services, which makes services accessible to and processable for machines. These Webs all have a semantic architecture in common and follow basic Web principles, such as being decentralized, modular, simple, addressable via URIs, and built for machines.

The services sector has become the world's biggest business sector, accounting for 64% of the worldwide gross domestic product. The sector has pressure on it to make its services easier and more widely accessible, as well as to quickly adapt to ever faster changes in the market environment.

The effort to standardize such things as service-oriented architectures (SOA) and Web services has taken years, but still we have no clear definition of what constitutes a service at a conceptual level. The interface, which is the format of what goes in and out of the service, is often described formally, but what the service is actually doing, semantically speaking, is not. While there are a number of different approaches to semantically describing Web services, such as OWL-S, WSMO and WDSL-S, none so far has managed to break out of its academic confines.

Today, there are already all kinds of services with different levels of complexity, and their number is expected to grow exponentially. The services follow different standards, and a lot of them are proprietary, uni-directional and designed to be used by humans to mash up something new. Editorial catalogs such as ProgrammableWeb and search engines for Web services such as seekda are designed for humans who are searching for a particular service for that reason. For tasks that are unsolvable for machines, there are even Web services such as Amazon's Mechanical Turk, which have humans in the back end answering tricky queries.

The problem with all of this is that each of the tens of thousands of services is accessible but not findable by a machine without a machine-understandable description. Thus, every service nowadays has to be wired to a machine by hand. So, what would machines be capable of if services were annotated with semantic descriptions?

  • Service discovery
    Given an index of Web services, a machine charged with finding the right service for a particular problem could choose one among those that have been indexed.
  • Contracting and execution
    Once a service has been selected, a machine could look up its terms and decide on contracting and execution details. How often would the service be needed? And what would be the cheapest contract then?
  • Billing or revenue sharing
    Depending on the autonomy of the machine, one could imagine something like an Autonomous Agent, which automatically makes the best deal with the service provider on such things as billing or revenue sharing for service usage.
  • Replacement on failure, based on experience
    Of course, the machine would be able to replace a failing service with an equivalent one. It could also rate a service and publish it.
  • Service orchestration
    A machine could, given enough intelligence, split a task into sub-tasks and then discover, contract and orchestrate services to solve these sub-tasks. And after the sub-tasks have been addressed, the main task would be solved. Such orchestration could involve the parallelization of tasks, for speeding up or redundancy purposes, or chaining services (whereby the output of one service is inputted into the next).

Research projects such as TripCom, SUPER, SHAPE and SOA4All are dealing with these ideas and scenarios.

Future scenarios are limited only by our imagination: machines could autonomously pursue goals on behalf of their master user or company, according to a specified level of freedom. These agents could solve increasingly complex problems and be granted increasingly more autonomy (finally ending up as Skynet).

In the next and final post in this series, we will discuss how all of these scenarios could become a reality with the arrival of all three Webs: a revolution in the ability of machines to access, process and apply information.

Do you also count the Web of services as a third Web? Where do you see its limits?

(Photo by zorro-art.)


Comments

Subscribe to comments for this post OR Subscribe to comments for all ReadWriteWeb posts

  1. This is a wonderful and super interesting series. I am wondering, where would you put augmented reality into the scenario of intelligent search?

    Posted by: Ulstrup | October 16, 2009 12:43 PM



  2. We are trying terribly hard to get the staid EDI industry to adopt open Web Services interfaces.

    http://www.scribd.com/doc/19752394/Grand-Horizon

    http://www.scribd.com/doc/19812213/Chart

    Posted by: Alan Wilensky | October 16, 2009 1:53 PM



  3. Hi Ulstrup, cheers for the kudos! Well, AR is basically a LBS that embeds knowledge about locations nearby in the display. That could be fetched from the Web of Data, e.g. from dbPedia based on geo coordinates. AR could get even more relevant if would be personalized. In this case the app could query the Web of Identities to access knowledge about the user or her friends. The possibilities are endless. What do you think about that?

    Cheers, @alexkorth

    Posted by: Alexander Korth | October 16, 2009 2:01 PM



  4. Alex -

    What I appreciate about your perspective is the emphasis on function.

    Many data naturalists become enamored with collecting and classifying big data sets, much like a lepidopterologist loves to collect butterflies.

    But data is only means to an end: namely, a fuel for the services you describe.

    An appreciation of this could help public initiatives like Data.gov to prove their value, and discriminate between which data sets are worth expanding (and tossing).

    Without such focus, these data repositories may be as useful as dead butterfly collections.

    Posted by: Michael E. Driscoll | October 16, 2009 2:09 PM



  5. The standard with the most promise of tying these three webs together is XRD. It is a simple, machine-readable way to list a set of web services.

    WebFinger layers on top of XRD to link a services to a particular person, tying in the Web of Identities.

    The Web of Data flows once the location of a particular service has been found, again through XRD. Applications can interface with the service to read and write data, in order to accomplish the task at hand.

    Posted by: jaredhanson.net Author Profile Page | October 16, 2009 2:15 PM



  6. Really excellent piece. I agree with Michael wholeheartedly too, re: means to an end.

    Selfishly, Alex, you should check out Siri -- this exactly the tree they are barking up:

    http://www.readwriteweb.com/archives/siri_virtual_personal_assistant_prepares_for_debut.php

    Video demo here:
    http://kara.allthingsd.com/20090709/siri-the-full-d7-demo/

    Keep the series going -- its good, and it's the kind of reporting only RWW is doing.

     Posted by: Josh Author Profile Page | October 16, 2009 3:59 PM



  7. @ Michael: you are perfectly right. The data is worthless without an app. The point with the Webs of Data and Identities is that they are a ground-breaking new way of databases in terms of both, quantity and quality. Quant because it's overarching data set borders by interlinking them, and qual because of its semantic annotation. They enable a whole new generation of services that, of course, someone has to create. I am sure there will be loads of people creating next gen apps! :)

    -Alex

    Posted by: Alexander Korth | October 17, 2009 1:54 AM



  8. @ Josh: right, RWW is the only fine place for such articles.
    Re Siri: this is a very good example in two ways: a personal assistent (and also an autonomous agent as I wrote above) are very appealing use cases to demonstrate the usefulness and power of the three webs. Web of Data to look up common sense knowledge, Web of Identities to look up ppl data, and the Web of Services to find and contract services to reach a task goal.
    The drawback example is Siri's problem that today there is no Web of Services forcing its team to manually wire existing services to it (and forcing me to wait longer to participate since I live in Berlin). The Web of Services would help Siri to react more autonomously on unseen user queries. Also, the Web of Data forms a backbone to look up common sense knowledge and contextual knowledge.
    What do you think? I'd like to continue discussing!

    -Alex

    Posted by: Alexander Korth | October 17, 2009 2:09 AM



  9. Yea, that's what the Semantic Web Service guys have been telling us for quite a few years (SUPER was before SOA4ALL, before SUPER there was DIP and before that there was SWWS...)- nice summary. However, not much of this has made the leap into practical use and I tend to believe that there is a good reason for that: not many companies can imagine there business, there vendor relations and even their revenue sharing to be determined automatically by some computer program.

    Not saying the Semantic Web Services make no sense - just that this line of argumentation does not work.

    Posted by: Valentin | October 17, 2009 2:15 AM



  10. This would be a big shift, but I would not call it the third web.

     Posted by: Paramendra Author Profile Page | October 18, 2009 9:47 PM



Leave a comment

Optional: Sign in with Connect Facebook   Sign in with Twitter Twitter   Sign in with OpenID OpenID  |  
RWW SPONSORS



FOLLOW @RWW ON TWITTER

ReadWriteWeb on Facebook



TEXT LINK ADS