Information reliability and automatic computation are two important aspects that are continuously pushing the Web to be more semantic. Information uploaded to the Web should be reusable and extractable automatically to other applications, platforms, etc. Several tools exist to explicitly markup Web content. The Web services may also have a positive role on the automatic processing of Web contents, especially when they act as flexible and agile agents. However, Web services themselves should be developed with semantics in mind. They should include and provide structured information to facilitate their use, reuse, composition, query, etc. In this chapter, the authors focus on evaluating state-of-the-art semantic aspects and approaches in Web services. Ultimately, this contributes to the goal of Web knowledge management, execution, and transfer.
TopIntroduction
In the current information world, the Web is not only an environment for information transfer and communication; it has deeply interfered with all human daily activities. It has greatly impacted and empowered the human civilized way of life. Through information spread and communicated over the Web, collective efforts can have a significant impact on people and states in the same and in sometimes even more significant impact if compared with real or traditional mechanisms. For different audience, Web semantics can have different expectations and perspectives. In one aspect, adding semantics to Web contents may indicate adding more reliability and authenticity to the information uploaded to the Web in terms of credibility of the information itself and their authors. On another important aspect of Web semantic is the ability for such information to be reused, transferred and applied in a different context whether by humans or more important by agents, or tools with the least amount of human intervention. Working on standards and according to standards then are main procedures to apply and follow to reach the goals of Web semantics. Without common international standards that can regulate and control the different processes and applications throughout the Web, achieving semantics in Web content can stay a dream. Adding semantics to the Web in general and to Web services in particular is seen as the key enabler for future interactive Web. However, only future can tell how much that is true.
Ontology and conceptual modelling are important factors in knowledge management systems. An ontology includes the vocabulary terms and the semantic groundings. At lower levels, data and information are transformed and exchanged between the different group parties. An ontological model can help in information reusability and can help in answering high-level user queries and search through the available information looking for answers. In the Internet world, XML is one of the most popular standards that are used to exchange information. In Web services in particular, XML is the language for several important activities for the Web services architecture. This includes: Web Service Description Language (WSDL), messaging services (SOAP), process presentation (BPEL), and service discovery. While XML provides an important aspect that contributes to Web standards, however, semantic Web includes further standards that in one way or another can extend XML. An intelligent Web semantic system should be able to receive a high level user, or program query and parse through Web pages to find the best answer. In a more realistic approach, the search engines architecture can be adopted where indexers and crawlers continuously search the Web for data, index and archive such data. One the search engine interface receives a query, such query can be processed using the structured information from the indexers or crawlers.
The Web service has two major life cycles: design and development life cycle, execution and usage life cycle. In the first cycle, Web services can be similar to other software applications where their development process will include a requirement or specification stage, design, coding and testing. All those stages are accomplished in the service provider side without the need to communicate with clients. In traditional software development models, especially when a software product is developed for a specific customer, requirements are collected based on customer needs and clients maybe contacted in later stages for reviewing and verification. However, Web services are usually developed based on high level generic requirements that are not meant to a specific user or company.
In the second life cycle, the dynamic usage life cycle, Web services can be used by different users for different purposes. They can be used alone in one context, or they can be part of an orchestra of services in another context. The usage life cycle is very dynamic and unpredictable. This dynamic usage life cycle is what majorly distinguishes Web services from most other software products. In addition, most semantic Web approaches are developed to ensure that Web services are capable of acting as autonomous agents that can serve different users in different contexts.