The current World Wide Web presents large volumes of information in a format tailored for viewing by people. A person can surf from link to link, query search engines, or attempt to reach sites by domain name. While the pages retrieved are appealing to humans, to the software that processes the contents they are no more than a string of random characters.
Software programs cannot load a random document, Web page, or file and understand the contents of that document. While the software could make assumptions based on HTML or XML tags, a human programmer would have to get involved and determine the meaning, or semantics, of each tag. From a computer's perspective, the World Wide Web is a garbled mess. Luckily, there's a solution: the Semantic Web.
First envisioned by Tim Berners-Lee, the Semantic Web is complementary to the World Wide Web and consists of machine-usable information. This new Web is made possible by a set of standards being coordinated by the World Wide Web Consortium. As the Semantic Web gains momentum, an increased number of information resources will be just as useful to software agents as to humans. In other words, agents finally have the ability to achieve literacy on the Internet.
Just as the Semantic Web is an extension of the World Wide Web, Semantic Web services are an extension of Web services (see Figure 1). At present, a programmer can build software with the ability to search ports or registries such as a UDDI server for a list of available Web services. While the software may be able to find a Web service without human intervention, it has no way to interpret how to use it or even what the purpose of the service is. Web Service Description Language (WSDL) provides a description of how a Web service will communicate, whereas Semantic markup provides details about what a service provides and why.