Welcome!

Microservices Expo Authors: Liz McMillan, Pat Romanski, Carmen Gonzalez, Elizabeth White, Jason Bloomberg

Related Topics: Microservices Expo, Agile Computing

Microservices Expo: Article

Web Service API and the Semantic Web

Web Service API and the Semantic Web

As the Semantic Web gains momentum, it's important for Web service developers to keep abreast of its technologies and prepare for a change in their industry.

This article looks at how the Semantic Web applies to Web services, including what specifications are under development and how you might prepare for integration with future semantic applications.

What Is the Semantic Web and How Does It Impact Web Services?
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.

 

For Semantic Web services to become a reality, a markup language must be descriptive enough that a computer can automatically determine meaning. Following is a list of tasks such a language would require:

I Need to Find a Service (Discovery)
A program must first be able to automatically find, or discover, an appropriate Web service. Neither WSDL nor UDDI allows for software to determine what a Web service offers to the client. A Semantic Web service describes its properties and capabilities so that software can automatically determine its purpose.

I Need to Run a Service (Invocation)
Software must be able to automatically determine how to invoke or execute the service. For example, if executing the service is a multistep procedure, the software needs to know how to interact with the service to complete the necessary sequence. A Semantic Web service provides a descriptive list of what an agent needs to be able to do to execute and fulfill the service. This includes what the inputs and outputs of the service are.

I Need to Use a Few Services Together (Composition)
Software must be able to select and combine a number of Web services to complete a certain objective. The services have to interoperate with each other seamlessly so that the combined results are a valid solution. In this way, agent software can create entirely new services by combining existing ones on the Web.

I Need to Know What is Happening After I Run the Service (Monitoring)
Agent software needs to be able to verify the service properties as well as monitor its execution. Some services may take some time to complete, and the agent should have the ability to monitor the status of a process.

By providing agents with the ability to discover, invoke, compose, and monitor a service automatically without human interaction, powerful new applications can be built. Imagine an Integrated Developer Environment (IDE) that not only lists available services, but also suggests suitable combinations that satisfy your high-level requirements. Instead of scrolling through a list of services looking for one that has input parameters matching your application, the IDE provides you with only the services that are truly compatible.

Personal agents could be built to harness the Web for end users. For example, a personal agent could make arrangements for a birthday celebration with minimal input from the user (see Figure 2). An agent could combine reservation, shopping, and shipping services automatically to solve the higher-level problem of arranging the celebration. By doing this automatically, the user saves both time and money.

 

The Semantic Web consists of semantically marked up static and dynamic content resources. Semantic Web services are an integral part of the powerful machine-friendly Internet.

What Is the Current State of the Semantic Web?
The crucial specifications needed to build the Semantic Web are starting to come together at the W3C. RSS 1.0 (RDF Site Summary), based on the Resource Description Framework (RDF) specification, has been in use for sharing news and events for several years. The Web Ontology Language (OWL), derived from the DAML+ OIL language, is in development and working drafts have been published.

In parallel with the development of standards, applications of the technology are being released. Tools exist for creating and editing RDF, storing the semantic data, inferencing knowledge from the metadata, and visualizing the metadata. The Semantic Web has the backing of large research and development laboratories such as Nokia, BT, and Hewlett-Packard.

What About Semantic Web Services?
The standardization of Semantic Web services is following closely on the heels of the Semantic Web in general. Unfortunately, this means that Semantic Web service development is even more immature than the Semantic Web in general. Researchers and developers have proposed multiple specifications for the creation and deployment of semantically intelligent Web services (see Figure 3). Which specification will become the standard is a question that still remains unanswered at the time of this article.

 

RDF is the primary foundation for the Semantic Web. As such, some developers have worked toward Semantic Web services based on RDF and RDF Schema specifications. Some services, such as MusicBrainz (www.music brainz.org), already provide a Semantic Web service API based on RDF. While the MusicBrainz services don't satisfy all of the desirable traits of a Semantic Web service listed above, the available API is a substantial step toward the adoption of Semantic Web services.

Another specification receiving attention is the DARPA Agent Markup Language (DAML) and its Web services ontology termed DAML-S. Developed by a coalition of researchers brought together by the DARPA program, DAML provides enhanced constructs in comparison to RDF.

DAML allows for advanced properties and property traits such as equivalence and uniqueness. DAML is much more expressive than RDF, its lightweight predecessor. A specific application of DAML, DAML-S, supplies the necessary standards to create a Semantic Web service. Whereas WSDL can tell an agent how the service works, DAML-S can help describe what the service offers and why. In this way, it complements WSDL by providing additional information needed by agents to fullfill the tasks such as discovery and execution.

Using DAML as its basis, the W3C has commissioned the Web Ontology Working Group to produce an agreed-on standard for a Web ontology language. The OWL Web Ontology Language is the result and is currently in the working draft stage of development.

Additional research and development has focused on another framework for building Semantic Web services; the Web Services Modeling Framework (WSMF) has been proposed to facilitate the creation of Semantic Web services. It is based in part on IBM's Web Services Flow Language (WSFL), an XML language for the description of business process-driven compositions of multiple Web services.

To date, the DAML-S specification has received the most attention in the academic and research communities. It is likely, however, that an equivalent ontology will be built using the OWL specifications and subsequently become the de facto standard for creating Semantic Web services. Presently, developers are not going to be able to leverage Semantic Web services for any practical application. Publicly accessible Semantic Web services will, however, begin to appear soon.

How Can We Prepare for Semantic Web Services?
Few developers today are actively building Semantic Web services. As the standards are completed and the demand for intelligent agents grows, expertise will be required in the field of Semantic Web services. Keeping informed, adopting early prototypes, and anticipating change is essential to stay ahead of the curve. Listed below are some recommended actions:

Stay Current
Monitoring key Web sites is the easiest and most cost-efficient way of keeping current as the Semantic Web progresses. The World Wide Web Consortium (www.w3.org/2001/sw) coordinates all formal Semantic Web specifications. Alternatively, the DARPA Agent Markup Language Homepage (www.daml.org) contains use cases, tools, ontologies, and other useful resources for creating semantic markup.

Many of the various working group members attend annual conferences dedicated at least in part to the Semantic Web. The Twelfth International World Wide Web Conference (www.www2003.org), held in Budapest, promises to have papers, talks, and workshops focused on Semantic Web services. The Second International Semantic Web Conference (http://iswc2003.semanticweb.org) is the other major Semantic Web conference and is an excellent research and networking opportunity.

New books and research papers devoted to the subject appear daily. As developers continue to advance the field of Web services, more emphasis will be placed on the next generation of Semantic Web services.

Anticipate the Semantic Web When Designing Applications Today
Web services built today use WSDL to define their interfaces. In the future, you may need to support additional semantic interface definition languages. By anticipating the conversion and designing for extendability, the transition to Semantic Web services should be relatively smooth.

Play with the Technology
Many of the development tools available today are free, some as open-source projects. The W3C maintains links to many free tools, and commercial tools can be found at SemanticWeb.org (www.semanticweb.org).

Applications that demonstrate the business value of the Semantic Web and Semantic Web services are emerging. The TAP project (http://tap.stanford.edu) has created a demonstration semantic search application that gives a peek at the future of searching on the Internet.

Summary
The Semantic Web and Web services initiatives are closely related. Both share the high-level objective of making information on the current World Wide Web accessible and usable to software agents. Semantic Web services are the powerful combination of two evolving technologies.

References

  • Ankolekar, A., et al., "DAML-S: Web Service Description for the Semantic Web," Proceedings 1st International Semantic Web Conference (ISWC 02), 2002.
  • Peer, J. "Bringing Together Semantic Web and Web Services" Proceedings 1st International Semantic Web Conference (ISWC 02), 2002.
  • Paolucci, M. et al., "Semantic Matching of Web Services Capabilities" Proceedings 1st International Semantic Web Conference (ISWC 02), 2002.
  • McIlraith, S.; Son, T. C.; and H. Zeng. "Semantic Web Services". IEEE Intelligent Systems, 16(2):4653, 2001.
  • McIlraith, S.; Son, T. C.; and Zeng, H. "Mobilizing the Semantic Web with DAML-Enabled Web Services." Proceedings Second International Semantic Web Workshop (SemWeb' 2001), 2001.
  • Fensel, D. & Bussler, C. (2002), "The Web Service Modeling Framework (WSMF)". www.cs.vu.nl/~dieter/wsmf/wsmf.paper.pdf accessed on 8 Mar 2002.
  • T. Berners-Lee, J. Hendler, and O. Lassila. "The Semantic Web." Scientific American, 284(5):34-43, 2001.
  • More Stories By Paul Cowles

    Paul Cowles is currently Chief Technology Officer for Semaview Inc. At
    the moment, he's focused on delivering products and services for
    businesses adopting semantic technologies. He also manages Semaview's
    partner program where he works with companies to identify and capitalize
    on new semantic business opportunities.

    Comments (3)

    Share your thoughts on this story.

    Add your comment
    You must be signed in to add a comment. Sign-in | Register

    In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


    Microservices Articles
    Modern software design has fundamentally changed how we manage applications, causing many to turn to containers as the new virtual machine for resource management. As container adoption grows beyond stateless applications to stateful workloads, the need for persistent storage is foundational - something customers routinely cite as a top pain point. In his session at @DevOpsSummit at 21st Cloud Expo, Bill Borsari, Head of Systems Engineering at Datera, explored how organizations can reap the bene...
    "NetApp's vision is how we help organizations manage data - delivering the right data in the right place, in the right time, to the people who need it, and doing it agnostic to what the platform is," explained Josh Atwell, Developer Advocate for NetApp, in this SYS-CON.tv interview at 20th Cloud Expo, held June 6-8, 2017, at the Javits Center in New York City, NY.
    The Jevons Paradox suggests that when technological advances increase efficiency of a resource, it results in an overall increase in consumption. Writing on the increased use of coal as a result of technological improvements, 19th-century economist William Stanley Jevons found that these improvements led to the development of new ways to utilize coal. In his session at 19th Cloud Expo, Mark Thiele, Chief Strategy Officer for Apcera, compared the Jevons Paradox to modern-day enterprise IT, examin...
    In his session at 20th Cloud Expo, Mike Johnston, an infrastructure engineer at Supergiant.io, discussed how to use Kubernetes to set up a SaaS infrastructure for your business. Mike Johnston is an infrastructure engineer at Supergiant.io with over 12 years of experience designing, deploying, and maintaining server and workstation infrastructure at all scales. He has experience with brick and mortar data centers as well as cloud providers like Digital Ocean, Amazon Web Services, and Rackspace. H...
    Skeuomorphism usually means retaining existing design cues in something new that doesn’t actually need them. However, the concept of skeuomorphism can be thought of as relating more broadly to applying existing patterns to new technologies that, in fact, cry out for new approaches. In his session at DevOps Summit, Gordon Haff, Senior Cloud Strategy Marketing and Evangelism Manager at Red Hat, will discuss why containers should be paired with new architectural practices such as microservices ra...
    In his session at 20th Cloud Expo, Scott Davis, CTO of Embotics, discussed how automation can provide the dynamic management required to cost-effectively deliver microservices and container solutions at scale. He also discussed how flexible automation is the key to effectively bridging and seamlessly coordinating both IT and developer needs for component orchestration across disparate clouds – an increasingly important requirement at today’s multi-cloud enterprise.
    The Software Defined Data Center (SDDC), which enables organizations to seamlessly run in a hybrid cloud model (public + private cloud), is here to stay. IDC estimates that the software-defined networking market will be valued at $3.7 billion by 2016. Security is a key component and benefit of the SDDC, and offers an opportunity to build security 'from the ground up' and weave it into the environment from day one. In his session at 16th Cloud Expo, Reuven Harrison, CTO and Co-Founder of Tufin, ...
    DevOps is often described as a combination of technology and culture. Without both, DevOps isn't complete. However, applying the culture to outdated technology is a recipe for disaster; as response times grow and connections between teams are delayed by technology, the culture will die. A Nutanix Enterprise Cloud has many benefits that provide the needed base for a true DevOps paradigm. In their Day 3 Keynote at 20th Cloud Expo, Chris Brown, a Solutions Marketing Manager at Nutanix, and Mark Lav...
    Many organizations are now looking to DevOps maturity models to gauge their DevOps adoption and compare their maturity to their peers. However, as enterprise organizations rush to adopt DevOps, moving past experimentation to embrace it at scale, they are in danger of falling into the trap that they have fallen into time and time again. Unfortunately, we've seen this movie before, and we know how it ends: badly.
    TCP (Transmission Control Protocol) is a common and reliable transmission protocol on the Internet. TCP was introduced in the 70s by Stanford University for US Defense to establish connectivity between distributed systems to maintain a backup of defense information. At the time, TCP was introduced to communicate amongst a selected set of devices for a smaller dataset over shorter distances. As the Internet evolved, however, the number of applications and users, and the types of data accessed and...