Using Wikipedia to Improve Web Service Discovery

Size: px
Start display at page:

Download "Using Wikipedia to Improve Web Service Discovery"

Transcription

1 QUEENSLAND UNIVERSITY OF TECHNOLOGY Using Wikipedia to Improve Web Service Discovery by Alejandro Metke Jimenez Bachelor of Systems and Computing Engineering (Los Andes University, Colombia) Master of Information Technology Studies (University of Queensland, Australia) A thesis submitted in partial fulfillment for the degree of Doctor of Philosophy in the Science and Engineering Faculty School of Electrical Engineering and Computer Science September 2012

2

3 Statement of Original Authorship The work contained in this thesis has not been previously submitted to meet requirements for an award at this or any other higher education institution. To the best of my knowledge and belief, the thesis contains no material previously published or written by another person except where due reference is made. Signature: Date: iii

4

5 Abstract Building and maintaining software are not easy tasks. However, thanks to advances in web technologies, a new paradigm is emerging in software development. The Service Oriented Architecture (SOA) is a relatively new approach that helps bridge the gap between business and IT and also helps systems remain flexible. However, there are still several challenges with SOA. As the number of available services grows, developers are faced with the problem of discovering the services they need. Public service repositories such as Programmable Web provide only limited search capabilities. Several mechanisms have been proposed to improve web service discovery by using semantics. However, most of these require manually tagging the services with concepts in an ontology. Adding semantic annotations is a non-trivial process that requires a certain skill-set from the annotator and also the availability of domain ontologies that include the concepts related to the topics of the service. These issues have prevented these mechanisms becoming widespread. This thesis focuses on two main problems. First, to avoid the overhead of manually adding semantics to web services, several automatic methods to include semantics in the discovery process are explored. Although experimentation with some of these strategies has been conducted in the past, the results reported in the literature are mixed. Second, Wikipedia is explored as a general-purpose ontology. The benefit of using it as an ontology is assessed by comparing these semantics-based methods to classic term-based information retrieval approaches. The contribution of this research is significant because, to the best of our knowledge, a comprehensive analysis of the impact of using Wikipedia as a source of semantics in web service discovery does not exist. The main output of this research is a web service discovery engine that implements these methods and a comprehensive analysis of the benefits and trade-offs of these semantics-based discovery approaches.

6

7 Acknowledgements I take this opportunity to thank my principal supervisor, Professor Kerry Raymond, for her excellent guidance during my studies. Kerry always gave me room to explore new ideas but at the same time helped me maintain focus on the important aspects of the thesis. Her valuable suggestions helped me complete this thesis (almost) on time. I would like to thank my associate supervisor Dr Ian MacColl for his suggestions and encouragement during this research. Ian s contributions and meticulous attention to detail were always very helpful. I would also like to thank both the Smart Services CRC and QUT for supporting this research with scholarships. Further thanks to all the colleagues I ve met at QUT and the Smart Services CRC for providing a stimulating and friendly work environment. I would especially like to thank Michael Henderson and Jim Steel for encouraging me to undertake many interesting projects and also Keith Duddy for helping me keep in touch with my MDA roots. I am also especially thankful to my wife Claudia for her unconditional love and for putting up with the countless hours I spent working on my thesis. Finally, I would like to thank my parents for their unconditional support which made my journey to Australia and this work possible. vii

8

9 Forward Readers should note the following conventions adopted in this thesis. In order to provide a coherent, hierarchical, top-down decomposition of this thesis, most chapters and sections are summarised by italicised topic sentences. These sentences are intended to enhance readability. ix

10

11 Contents Statement of Original Authorship iii Abstract v Acknowledgements vii Forward ix List of Figures List of Tables List of Figures Abbreviations xvii xix xxiii xxv 1 Introduction Motivation Contributions Published Papers Structure of the Thesis Background and Related Work Web Services Types of Web Services XML SOAP WSDL Web Service Discovery Approaches Discovery Architectures Discovery Techniques Semantics and Ontologies xi

12 Contents xii RDF RDFS OWL Wikipedia Structure Articles Disambiguation Pages Redirect Pages Wikipedia as a Source of Knowledge Information Retrieval Information Retrieval Metrics Vector Space Model Term Weights TF TF-IDF WF-IDF BM Latent Semantic Analysis Explicit Semantic Analysis Discovery Engines Syntactic Matching Semantic Matching Similarity Techniques Woogle URBE Clustering Techniques Discussion Research Design Hypothesis and Research Questions High-Level Experiment design Engine Design Choices Research Plan Detailed Architecture Dataset Creating a Baseline for Term-Based Discovery WSDL Processing Pre-processing Information Extraction Natural Language Tokenisation Programming Language Tokenisation Stemming Weighting

13 Contents xiii Indexing Query Processing Pre-Processing Weighting Similarity Calculation WSDL Fetcher Similarity Calculator Ranked List Generator Evaluation Term-Based Baseline Results Summary A Basic ESA Discovery Engine Architecture Preprocessing Semantic Interpreter Filtering Wikipedia Building the Concept Vectors Adding ESA to the Web Service Discovery Engine ESA WSDL Processing Module ESA Query Processing Module ESA Similarity Module ESA Baseline Results Analysis Summary Experiments and Optimisations of ESA WSDL Processing Module Tokenisation Difficulties of Tokenisation Maximum Matching Algortihm Simple Tokeniser Naming Convention Other Tokenisation Techniques Evaluation Dataset and Metrics Evaluation of Existing Tokenisation Techniques The WEASEL Tokeniser WEASEL v WEASEL v Evaluation of the WEASEL Tokeniser Weighting Models in WSDL Processing WSDL Structure Experiments With Weighting Zones WSDL Documentation

14 Contents xiv Assigning Weights to WSDL Zones Query Processing Module Weighting Models in Query Processing Semantic Interpreter Concept Space Reduction Concept Space Filtering Vector Space Reduction Weighting Models in Semantic Interpreter Wikipedia Article Structure Wikipedia Link Structure Anchors Redirects Link Structure Experiments Combinations Summary Discussion Evaluation and Statistical Significance of the Results Analysis of ESA Performance Analysis of the Contribution of New Techniques Benefits and Limitations of Using Semantics Advantages and Disadvantages of Using Wikipedia as an Ontology Limitations of the System Future Work Summary Conclusions 171 A Relevance Assessments Dataset 175 A.1 Duplicates and Errors A.2 Revised List of Web Services A.3 User Queries and Relevance Assessments A.3.1 Stock management with news event A.3.2 Company information A.3.3 Voice message A.3.4 Food serving with recipes A.3.5 Residence information by phone number A.3.6 Job search A.3.7 Zip code A.3.8 Weather forecast A.3.9 Temperature conversion A.3.10 Currency conversion

15 Contents xv A.3.11 Phone number verification A.3.12 SQL database queries A.3.13 Historical price information A.3.14 Financial planning A.3.15 Encryption & decryption A.3.16 IP to country of origin DNS lookup A.3.17 Music audio song A.3.18 Book ISBN A.3.19 Map direction A.3.20 Football soccer A.3.21 Shipping cost A.3.22 Verses from Quran A.3.23 Lottery drawings A.3.24 Country details with capital information A.3.25 Credit card information service A.3.26 Charts and graphs A.3.27 Image conversion A.3.28 Holiday date service A.3.29 SMS message to mobile phone A.3.30 Sales and tax data A.3.31 Digital Signature A verification A.3.33 Address verification A.3.34 Anagram service A.3.35 Spam filtering A.3.36 Bank account verification A.3.37 Fraud detection in credit card service A.3.38 Fax service A.3.39 Mutual fund information A.3.40 Bar code A.3.41 Bible with dictionary A.3.42 Driving direction A.3.43 E-government framework A.3.44 Real time metal price A.3.45 Financial security A.3.46 Convert text from one language to another A.3.47 Product and shop details A.3.48 Population census A.3.49 Spell check A.3.50 Australian post code location B Analysis of Mappings of Queries and WSDL Files 231 B.1 Query Job search B.2 Query Real time metal price

16 Contents xvi B.3 Query Anagram service B.4 Query Digital signature B.5 Query Football soccer B.6 WSDL 10 Job Search Service B.7 WSDL 38 European Human Resources Service B.8 WSDL 95 World Cup 2006 Pool Service B.9 WSDL 109 Anagram Service B.10 WSDL 128 Anagram Service B.11 WSDL 144 Digital Signature Service B.12 WSDL 145 Digital Signature Verification Service B.13 WSDL 158 Countdown Service B.14 WSDL 214 Precious Metal Trading Service B.15 WSDL 229 Precious Metals Service B.16 WSDL 383 Signature Verification Service B.17 WSDL 533 Soccer World Cup Scores Service Bibliography 243

17 List of Figures 2.1 An example WSDL file An example of a Wikipedia article Architecture of our web service discovery system Architecture of the experimental framework High level experimentation plan Main components of our term-based web service discovery system Main components of our ESA concept-based web service discovery system Internal structure of the WSDL processing module An example WSDL file that returns a list of words An example of the partially-tokenised WSDL representation that contains only information relevant for discovery An example of a bag-of-words representation of a WSDL file Internal structure of the query processing module Internal structure of the similarity calculation module Average precision over all the queries using a term-based information retrieval approach with three different weighting models Main components of our term-based web service discovery system Main components of our semantics-based WSDL engine Example of an augmented Wikipedia XML file The semantic interpreter built from Wikipedia using ESA Internal structure of the ESA WSDL processing module Inverted index used in an ESA web service discovery Internal structure of the ESA query processing module Internal structure of the ESA similarity calculation module Average precision of all the queries using the ESA baseline and the term-based baseline implementations Assessment of the mappings from queries to the Wikipedia concept space in the ESA baseline Assessment of the mappings between WSDLs and the Wikipedia concept space in the ESA baseline A high level view of the experiments conducted to improve the ESA implementation xvii

18 List of Figures xviii 6.2 Tokenisation experiment WSDL processing module weighting models experiment WSDL processing module structure experiment Impact on MAP of individual WSDL zones in ESA Impact on average precision of experimentation with WSDL documentation zones Query processing module weighting models experiment Semantic interpreter module concept space reduction experiment Impact on MAP when using the vector space reduction experiments based on top k filtering Semantic interpreter module weighting models experiment Semantic interpreter module article structure experiment Impact on MAP of individual Wikipedia article zone in ESA Semantic interpreter module link structure experiment Impact on MAP when using PageRank and HITS in the semantic interpreter Experiment combinations Impact on MAP when combining top k experiments with the best ESA implementation

19 List of Tables 3.1 Number of documentation tags in the 576 WSDL files in the main dataset MAP of the different weighting models Minimal rules used in baseline implementation to filter Wikipedia articles Rules based on heuristics used to filter Wikipedia articles Statistics about the number of articles in Wikipedia before and after filtering MAP obtained by term-based IR baseline and ESA baseline Sizes of the dictionaries used in tokenisation Results of the evaluation of three tokenisation algorithms Examples where the Naming Convention tokeniser had trouble tokenising correctly Results of the WEASEL tokeniser evaluation Impact on MAP when replacing the MMA tokeniser with the WEASEL tokeniser Impact on MAP when using weighting models in the WSDL indexing process Impact on MAP when using different WSDL zone combinations Impact on MAP when using only natural language tags and using only programming-language-type tags Top ten mappings for two anagram services Weights assigned to each WSDL zone Impact on MAP of using different WSDL zone values Impact on MAP when using WF-IDF in the query mapping process in the ESA baseline Impact on MAP when using the vector space reduction experiments based on concept space filtering Impact on MAP when using the vector space reduction experiments based on thresholds Impact on MAP when using the vector space reduction experiments based on top k filtering Summary of vector space reduction techniques xix

20 List of Tables xx 6.17 Impact on MAP when using different weighting models in the semantic interpreter Impact on MAP when using Wikipedia zoning in the creation of the semantic interpreter Impact on MAP when using a combination of Wikipedia article zone weights in the creation of the semantic interpreter Impact on MAP when using PageRank and HITS in the creation of the semantic interpreter Summary of techniques used in the combination experiments Best combinations of techniques Results of paired t-test between best term-based and best ESA Queries that have relevant WSDLs with no query terms Queries where all relevant WSDLs contain at least one query term Results of paired t-test between best term-based and best ESA using query subset Results of paired t-test between the baseline and best ESA Implementations Results of paired t-test between an ESA implementation with no Wikipedia-specific optimisations and best ESA Implementation B.1 Top ten concepts mapped to query Job search in ESA baseline B.2 Top ten concepts mapped to query Real time metal price in ESA baseline B.3 Top ten concepts mapped to query Anagram service in ESA baseline233 B.4 Top ten concepts mapped to query Digital signature in ESA baseline233 B.5 Top ten concepts mapped to query Football soccer in ESA baseline234 B.6 Top ten concepts mapped to Job Search service in ESA baseline. 234 B.7 Top ten concepts mapped to European Human Resources service in ESA baseline B.8 Top ten concepts mapped to World Cup 2006 Pool service in ESA baseline B.9 Top ten concepts mapped to Anagram service in ESA baseline B.10 Top ten concepts mapped to other Anagram service in ESA baseline237 B.11 Top ten concepts mapped to Digital Signature service in ESA baseline B.12 Top ten concepts mapped to Digital Signature Verification service in ESA baseline B.13 Top ten concepts mapped to Countdown service in ESA baseline 239 B.14 Top ten concepts mapped to Precious Metal Trading service in ESA baseline B.15 Top ten concepts mapped to Precious Metals service in ESA baseline B.16 Top ten concepts mapped to Signature Verification service in ESA baseline

21 List of Tables xxi B.17 Top ten concepts mapped to Soccer World Cup Scores service in ESA baseline

22

23 List of Algorithms 4.1 Cosine Similarity Calculation Cosine Similarity Calculation For Sparse Representation Pseudo-code for building the semantic interpreter Pseudo-code for transforming WSDL files into concept vectors xxiii

24

25 Abbreviations BM25 Best Match 25 CORBA Common Object Request Broker Architecture COTS Commercial Off The Shelf DMOZ Directory MOZila DNS Domain Name System ESA Explicit Semantic Analysis HITS Hyperlink-Induced Topic Search HTTP Hypertext Transfer Protocol IDF Inverse Document Frequency INEX INitiative for the Evaluation of XML retrieval IP Internet Protocol IR Information Retrieval ISBN International Standard Book Number IT Information Technology JUNG Java Universal Network/Graph Framework LSA Latent Semantic Analysis MAP Mean Average Precision MIT Massachusetts Institute of Technology MMA Maximum Matching Algorithm OWL Web Ontology Language OWL-S Web Ontology Language for Services POI Poor Obfuscation Implementation RDF Resource Description Framework RDFS Resource Description Framework Schema xxv

26 Abbreviations xxvi REST RMI RPC SESA SGML SMS SMTP SOA SOAP SQL SVD TF TF-IDF UDDI URBE URI URL VSM WEASEL WF-IDF WS WSDL WSMO WWW XML XSD ReprEsentational State Transfer Remote Method Invocation Remote Procedure Call Semantically Enabled Service oriented Architecture Standard Generalised Markup Language Short Message Service Simple Mail Transfer Protocol Service Oriented Architecture Simple Object Access Protocol Structured Query Language Singular Value Decomposition Term Frequency Term Frequency - Inverse Document Frequency Universal Description Discovery and Integration Uddi Registry By Example Uniform Resource Identifier Uniform Resource Locator Vector Space Model Web service Advanced Sentence Extraction Library Sublinear Term Frequency - Inverse Document Frequency Web Service Web Service Description Language Web Service Modeling Ontology World Wide Web extensible Markup Language XML Schema Document

27 Dedicated to my wife Claudia. xxvii

28

29 Chapter 1 Introduction Web service discovery is a key part of the Service Oriented Architecture paradigm which promises to increase software reuse. Building and maintaining software are not easy tasks. However, thanks to advances in web technologies, a new paradigm is emerging in software development. The Service Oriented Architecture (SOA) is an approach that helps bridge the gap between business and IT and also helps systems remain flexible [1]. The cornerstone of SOA is web services. Composing and reusing web services saves time and money. Services also facilitate outsourcing certain parts of an application to an external provider. Research has shown that implementing SOA within an enterprise generates economic potential [2]. However, there are still several challenges with SOA. The number of publicly available web services has been increasing steadily over the years [3]. As this number grows, developers are faced with the problem of discovering the services they need. Public service repositories such as Programmable Web [4] provide limited search capabilities. Several approaches to web service discovery have been proposed. Using a semanticsbased approach has the advantage that user queries do not have to be expressed using the exact same words used in the services in order to get relevant results back from the discovery engine. 1

30 Chapter 1. Introduction 2 One of the many criteria used to classify web service discovery approaches is the degree of user involvement. On the one hand, some approaches require the service authors (or an interested party) to add external semantic information to the service definitions. For example, approaches based on semantic annotations require the authors to select a domain ontology and tag the services with the corresponding concepts in the ontology. This situation presents two practical problems: first, many domains lack ontologies, which means that the ontologies have to be built, and, second, the effort of manually tagging the services can be quite high. On the other hand, some approaches attempt to use the information already available in the services without requiring any additional information. The main disadvantage of these approaches is that they rely on the services actually having useful information in their definitions. The risk is that many services might not have enough relevant information in their definitions to become discoverable. For example, web services which are derived automatically from legacy systems often are missing important documentation. The main goal of this project is to provide the benefits of the semantics-based approaches without human intervention. To do this an external body of knowledge is required. Because we are dealing with general-purpose web services, Wikipedia is used as a general-purpose ontology. Wikipedia s extensive coverage makes it the largest human-built, online repository of information available and an ideal candidate to extract general-purpose knowledge. Even though it is not an ontology, Wikipedia resembles an ontology in many ways and has been used as the main source of several automatically derived ontologies [5]. There have been several criticisms of the traditional, engineering-oriented approach to ontology building. Critics point out the following issues: languages and tools used in formal ontology engineering impose high entrance barriers on potential users, the approach is not fast enough to catch up with conceptual change in many domains, and users of the formal ontologies cannot have difficulties grasping the meaning of all the elements as intended by the ontology creators [6, 7]. Wikipedia, on the other hand, is based on a wiki software platform that is used by millions of users, is constantly updated

31 Chapter 1. Introduction 3 by its large community of users, and, if articles are considered concepts, each one them is documented and can be easily reviewed by accessing the article online. The approach used in this research does not require the service authors to add any additional semantic information manually. The consequent question is whether such an approach is viable. 1.1 Motivation This thesis is motivated both by the need to improve web service discovery tools and by the opportunity of exploiting a huge human-built knowledge repository such as Wikipedia. The motivation for this thesis is twofold. First, web service discovery tools are important to achieve good software reuse based on web services. Service discovery is a key part in the process of building software applications from existing services. Without effective service discovery tools existing services might be ignored and eventually duplicated. Although the number of services currently available publicly is not comparable to the number of web pages available in the web, the numbers are likely to grow in the future because Web Service Discovery Language (WSDL) has become one of the key standards in the Service Oriented Architecture paradigm. In private intranets the numbers are likely to be significant. Many software applications nowadays already include web services that expose their functionality to allow integration with other applications within the enterprise. On the other hand, Wikipedia has been steadily growing to become the largest human-built knowledge repository in existence. Although not entirely structured, it does have certain characteristics that differentiate it from simple plain text documents. Many researchers have looked at ways to use Wikipedia to improve several applications that range from natural language processing to information retrieval. Another motivation for this thesis is to explore how and to what extent this huge collectively-built resource can be used as a general-purpose ontology.

32 Chapter 1. Introduction Contributions The contributions of this thesis include a novel web service discovery method, an extensive analysis of the suitability of Wikipedia as a source of semantics in web service discovery, and a revised dataset suitable for web service discovery evaluation. The following are the major contributions in this thesis: A novel web service discovery method based on Explicit Semantic Analysis (ESA) is introduced. based on this method is explained in detail. The architecture of a web service discovery system The proposed method is compared to term-based information retrieval approaches. An extensive analysis of the impact of using Wikipedia s article structure and link structure in an ESA-based semantic interpreter is performed. Several concept space reduction techniques for the ESA semantic interpreter are compared. Several information extraction techniques for WSDL files are compared and a new tokeniser that outperforms existing ones is introduced. The impact of using the structure of WSDL files to improve search results is analysed. A revised version of the dataset used in [8] is made available 1. This version eliminates duplicate WSDL files and includes a manually revised version of the binary relevance assessments for the 50 queries. An experimentation framework and the main building blocks of a semantic web service discovery engine is made available 2. 1 The dataset is available upon request. Please send an to ametke@gmail.com 2 The software is available upon request. Please send an to ametke@gmail.com

33 Chapter 1. Introduction Published Papers Two papers were published during this research project. The following papers have been published during this research project. 1. Alejandro Metke-Jimenez, Kerry Raymond, and Ian MacColl. Ontologies derived from Wikipedia: A framework for comparison. In Proceedings of the International Conference on Knowledge Engineering and Ontology Development, pages SciTePress, Alejandro Metke-Jimenez, Kerry Raymond, and Ian MacColl. Information extraction from web services: A comparison of tokenisation algorithms. In Proceedings of the 2nd International Workshop on Software Knowledge. SciTePress, Additional papers will be submitted in mid-late Structure of the Thesis The research is presented in the following chapters. Chapter 2 discusses background information and related work. The technologies required to make web services possible are discussed and several approaches to web service discovery are examined. Several standards used to represent ontologies are presented. Wikipedia s characteristics are examined in detail. Finally, the metrics used throughout this thesis are introduced and related work on information retrieval is presented. Chapter 3 presents the project s research design. The main hypothesis and the research questions are presented. An overview of the design of the experimentation framework is given. A high-level diagram of the experimentation plan is presented. Finally, the dataset used to evaluate the different approaches is described in detail.

34 Chapter 1. Introduction 6 Chapter 4 explores the classic term-based information retrieval approach to web service discovery, based on the Vector Space Model (VSM). The results of running the discovery task using different weighting models are analysed. Chapter 5 discusses how Wikipedia can be used to add semantics automatically to the web service discovery task. The Explicit Semantic Analysis (ESA) method is used to create a semantic interpreter that is also used to calculate the semantic similarity between queries and services. The results of running the discovery task using this method are analysed and compared to the results obtained with the classic term-based information retrieval techniques. Chapter 6 experiments with different techniques used to improve the performance of the ESA method in the context of web service discovery by exploiting specific characteristics of both web services and Wikipedia. The results of these experiments are analysed, resulting in an improved ESA web service discovery system. Chapter 7 discusses the findings of the previous chapters. The statistical significance of the results is discussed. Also, the benefits and drawbacks of using semantics-based discovery systems are examined. The advantages and disadvantages of using Wikipedia as an external body of knowledge are explored. The limitations of the ESA method are also discussed. Finally, it also suggests fruitful areas for further research. Chapter 8 draws together the insights from this research and presents the answers to the research problem posed in Chapter 3.

35 Chapter 2 Background and Related Work Web services rely on several different technologies that have contributed to their current widespread use. In this chapter background and related work on web service discovery is reviewed. As discussed in Section 1.1, the new web service discovery engine is needed in the context of the software development process of applications based on web services, such as SOA applications and mashups, to enable effective reuse of existing web services. First, an overview of web services and related technologies is given. Then, different existing web service discovery approaches are discussed. Because one of the goals of this thesis is to explore the use of semantics in the web service discovery process, semantics and technologies used to represent them are also introduced. Then, the standards proposed to use these technologies to add semantics to web services are explained. Wikipedia is presented along with research on using Wikipedia as an ontology. The Vector Space Model is introduced as it is the basic IR representation that underpins the research in this thesis. Two semantic techniques, Latent Semantic Analysis (LSA) and Explicit Semantic Analysis (ESA) are presented. Some discovery techniques based on similarity are then discussed. Finally, the chapter ends with a discussion of the material presented. 7

36 Chapter 2. Background and Literature Review Web Services Web services are network-accessible components that perform tasks on behalf of clients. Web services are software components that perform a task for an external client and can be accessed through the network [9]. Tasks can be as simple as an arithmetic operation or as complex as a complete business process. Since web services are network accessible they provide a distributed computing platform. The service provider is responsible for supplying the service description and the technical and business support. Web services are different from other distributed computing platforms, such as Common Object Request Broker Architecture (CORBA) and Java Remote Method Invocation (RMI). The web service model is much simpler. There is no concept of distributed object references. A web service just exposes an endpoint with several operations [10] Types of Web Services Web services have been categorised mainly as big web services and RESTful web services. There are two common types of web services: those that rely on Simple Object Access Protocol (SOAP) and the WS-* standards, sometimes referred to as big web services [11], and Representational State Transfer (RESTful) web services [12]. Each type has advantages and disadvantages and the choice of service usually depends on the type of application being built [13]. For the purpose of discovery the most relevant difference is the way the services describe their functionality. Big web services are described using a standard machine-processable language called Web Service Description Language (WSDL). On the other hand, RESTful web services do not enforce a standard mechanism to do this. Even though WSDL

37 Chapter 2. Background and Literature Review 9 can be used, the most common approach is to describe them using textual documentation, usually targeted at a developer wishing to integrate the service. These descriptions, although adequate for a developer, are not machine-readable. For the purpose of this thesis only big web services, those that use WSDL, will be considered. However, the different techniques discussed throughout the document could be used, however, to discover RESTful web services, if they are properly documented. The following sections provide a brief overview of the most important technologies that make big web services possible XML XML is a general-purpose markup language that can be used to represent data in an architecture-independent format. The payload of a service, the data that goes in and out, needs to be represented in some format. Interoperability between heterogenous systems has traditionally been difficult because of the different data types used in different hardware architectures. Extensible Markup Language (XML) is a general purpose markup language that solves these issues by defining common data types that can be used to represent information that is going to be transferred between systems [14]. XML is a restricted form of Standard Generalised Markup Language (SGML) [15]. It is extensible because it allows users to create their own tags. The structure of an XML document is defined using an XML Schema [16]. The schema specifies which tag names are valid, which elements are mandatory and which optional, and several additional characteristics. The schema can be used by software or hardware components to verify the validity of an XML document. There are other more complex characteristics that cannot be constrained and verified using a schema. For example, an element can be declared to be of type integer and this allows declaring an XML document invalid if it contains letters in that field. However,

38 Chapter 2. Background and Literature Review 10 there might be more complex business rules that determine the possible values of the element that can only be calculated based on other external information. This type of check has to be done in the backend. XML has become a de-facto standard for exchanging information [17]. Most Commercial Off-The-Shelf (COTS) applications provide mechanisms to export their data as XML. An example that will be used throughout this thesis is the content of Wikipedia, which is exported in a huge XML file suitable for offline processing. Also, although intended for machine processing, the text format of XML facilitates manual inspection and debugging SOAP SOAP is an information exchange protocol used in big web services. SOAP is a protocol used to exchange information [18]. Messages are defined using XML and are transmitted using other protocols, such as Hypertext Transfer Protocol (HTTP) or Simple Mail Transfer Protocol (SMTP). The specification has four parts: a description of the SOAP message, the rules to serialize messages, a definition of the protocol binding between SOAP and HTTP, and how to use SOAP for Remote Procedure Call (RPC)-like binding [19]. The SOAP message consists of an envelope, a header, and a body. The envelope is the root element of the XML document and it is mandatory. The header is an optional element that contains metadata about the contents of the message. It is useful because an application can check its contents to determine if it needs to process the whole body of the message or not. Finally, the body element is a mandatory element that contains all the data that needs to be transmitted. The data transmitted using SOAP has to to be serialized into a format understood by the protocol. SOAP uses the same simple data types found in the XML Schema definition. Complex types can be formed by combining these simple types. It is usually straightforward to transform the data types in most programming languages to this representation.

39 Chapter 2. Background and Literature Review 11 HTTP is the most common protocol used to transport SOAP messages. There are several ways to use SOAP with HTTP. The semantics of SOAP map naturally to the semantics of HTTP. However, SOAP messages can also be transported using other protocols. Most services available at the time of writing use version 1.1 of the SOAP specification. A newer version of the specification, version 1.2, is also available and it includes new features that allow better interoperability, better protocol independence, and increased performance [20]. However, for the purpose of web service discovery, the difference between protocols is irrelevant WSDL WSDL files differ from plain text documents because they are XML-based and have a predefined structure given by the WSDL schema. WSDL is an XML language designed to describe a contract between a web service and its clients [21]. WSDL files have a complex structure defined by the WSDL schema. All the WSDL files in our data collection (see Section 3.6) use version 1.1 of the standard so this is the version that will be examined. A WSDL document is defined using the following six major elements [21]: Types define the data types used by the service. These can be defined inline or imported from external schemas. This element is comparable to a function library in a traditional programming language. Messages define the data being transmitted. Each message is associated with one or more types. This element is comparable to the parameters passed into a function call in a traditional programming language. PortTypes define a set of abstract operations. This element is comparable to an interface definition in a traditional programming language 1. 1 In fact, in version 2.0 this element has been renamed to interface.

40 Chapter 2. Background and Literature Review 12 Bindings define the protocol used to communicate with a porttype. Ports specify the location of a porttype, establishing a a communication endpoint. Services aggregate a set of ports. An example WSDL file taken from the dataset is shown in Figure 2.1. This is a simple test service that returns a list of words. <?xml version="1.0" encoding="utf-8"?> <wsdl:definitions xmlns:soap=" <wsdl:types> <s:schema elementformdefault="qualified" targetnamespace=" <s:element name="getwordlistresponse"> <s:complextype> <s:sequence> <s:element minoccurs="0" maxoccurs="1" name="getwordlistresult" type="tns:arrayofstring" /> </s:sequence> </s:complextype> </s:element> </s:schema> </wsdl:types> <wsdl:message name="getwordlistsoapin"> <wsdl:part name="parameters" element="tns:getwordlist" /> </wsdl:message> <wsdl:message name="getwordlistsoapout"> <wsdl:part name="parameters" element="tns:getwordlistresponse" /> </wsdl:message> <wsdl:porttype name="autowebservicesoap"> <wsdl:operation name="getwordlist"> <wsdl:input message="tns:getwordlistsoapin" /> <wsdl:output message="tns:getwordlistsoapout" /> </wsdl:operation> </wsdl:porttype> <wsdl:binding name="autowebservicesoap" type="tns:autowebservicesoap"> <soap:binding transport=" /> <wsdl:operation name="getwordlist"> <soap:operation soapaction=" style="document" /> <wsdl:input> <soap:body use="literal" /> </wsdl:input> <wsdl:output> <soap:body use="literal" /> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:service name="autowebservice"> <wsdl:port name="autowebservicesoap" binding="tns:autowebservicesoap"> <soap:address location=" /> </wsdl:port> </wsdl:service> </wsdl:definitions> Figure 2.1: An example WSDL file.

41 Chapter 2. Background and Literature Review 13 The WSDL schema also allows adding comments in natural language almost anywhere within the document. There are no documentation tags in the example service. However, as it will be shown in Section 3.6, in practice most WSDL files lack good documentation. There is also a new version of the standard, version 2.0, which includes a considerable amount of new features such as interface inheritance and the use of other type systems different from XML Schema [22]. However, for the purpose of discovery, the changes in the standard are largely irrelevant. 2.2 Web Service Discovery Approaches Several web service discovery approaches have been proposed in the literature. One of the main goals of web services is to promote reuse of existing software. An efficient discovery mechanism is necessary to achieve this goal because, even if a service exists, it will not be reused if it cannot be found. There are several ways of classifying service discovery techniques. Demello and V. S. [23] claim that it is important to consider both the architectures and techniques used for service discovery and propose an interesting classification system Discovery Architectures Web service architectures can be centralised or distributed. Web service discovery architectures can be centralised or distributed. Centralised architectures rely on a central repository to store and publicise service definitions. This type of architectures can be subdivided in UDDI (Universal Description Discovery and Integration)-based and portal-based. UDDI is a standard that describes an XML-based web service registry. The standard focuses on defining a set of services to support three main aspects: the discovery of businesses, organisations, and other service providers, the web services that

42 Chapter 2. Background and Literature Review 14 these make available, and the technical interfaces used to access those services [24]. UDDI registries are centralised. Service providers need to register themselves and their services in the chosen registry for the services to be discoverable. Also, the discovery functionality is limited to syntactic keyword matching [25]. UDDI-based architectures rely on a UDDI repository while portal-based ones rely on a web portal, such as programmableweb.com. The UDDI standard was initially proposed to address the discovery problem by providing a centralised repository of service descriptions. However, some authors consider that the standard is too complex for end users who just want to publish their services [26] and also, several problems with the centralised architecture have been identified [23]. Perhaps the most relevant one is that registration in a centralised repository is not mandatory and therefore all unregistered services will not be discoverable by potential clients. The shortcomings of the UDDI standard have given rise to proposals of distributed architectures that do not rely on a central repository. These architectures can be subdivided in Internet-based and peer-to-peer. In the Internet-based architectures a web crawler is used to collect service definitions, in the same way a search engine crawls for web pages. The service definitions are then indexed and made available for search. Peer-to-peer architectures rely on peer-to-peer networks to provide a scalable and distributed solution. These architectures are more complicated in terms of implementation Discovery Techniques Web service discovery techniques can be classified as functional or non-functional. Apart from the architecture, the other important aspect to consider is the discovery technique. These can be classified into functional and non-functional. Functional techniques rely on the functionality exposed by services. This category can be further subdivided into syntactic matching and semantic matching. We are interested in these categories because they have proven to be effective in other search domains. In syntactic matching only the keywords associated with the service or

Getting Started with Service- Oriented Architecture (SOA) Terminology

Getting Started with Service- Oriented Architecture (SOA) Terminology Getting Started with - Oriented Architecture (SOA) Terminology Grace Lewis September 2010 -Oriented Architecture (SOA) is a way of designing, developing, deploying, and managing systems it is neither a

More information

PSG College of Technology, Coimbatore-641 004 Department of Computer & Information Sciences BSc (CT) G1 & G2 Sixth Semester PROJECT DETAILS.

PSG College of Technology, Coimbatore-641 004 Department of Computer & Information Sciences BSc (CT) G1 & G2 Sixth Semester PROJECT DETAILS. PSG College of Technology, Coimbatore-641 004 Department of Computer & Information Sciences BSc (CT) G1 & G2 Sixth Semester PROJECT DETAILS Project Project Title Area of Abstract No Specialization 1. Software

More information

Service Oriented Architecture

Service Oriented Architecture Service Oriented Architecture Charlie Abela Department of Artificial Intelligence charlie.abela@um.edu.mt Last Lecture Web Ontology Language Problems? CSA 3210 Service Oriented Architecture 2 Lecture Outline

More information

Search and Information Retrieval

Search and Information Retrieval Search and Information Retrieval Search on the Web 1 is a daily activity for many people throughout the world Search and communication are most popular uses of the computer Applications involving search

More information

Introduction to Service Oriented Architectures (SOA)

Introduction to Service Oriented Architectures (SOA) Introduction to Service Oriented Architectures (SOA) Responsible Institutions: ETHZ (Concept) ETHZ (Overall) ETHZ (Revision) http://www.eu-orchestra.org - Version from: 26.10.2007 1 Content 1. Introduction

More information

Principles and Foundations of Web Services: An Holistic View (Technologies, Business Drivers, Models, Architectures and Standards)

Principles and Foundations of Web Services: An Holistic View (Technologies, Business Drivers, Models, Architectures and Standards) Principles and Foundations of Web Services: An Holistic View (Technologies, Business Drivers, Models, Architectures and Standards) Michael P. Papazoglou (INFOLAB/CRISM, Tilburg University, The Netherlands)

More information

A QoS-Aware Web Service Selection Based on Clustering

A QoS-Aware Web Service Selection Based on Clustering International Journal of Scientific and Research Publications, Volume 4, Issue 2, February 2014 1 A QoS-Aware Web Service Selection Based on Clustering R.Karthiban PG scholar, Computer Science and Engineering,

More information

T-110.5140 Network Application Frameworks and XML Web Services and WSDL 15.2.2010 Tancred Lindholm

T-110.5140 Network Application Frameworks and XML Web Services and WSDL 15.2.2010 Tancred Lindholm T-110.5140 Network Application Frameworks and XML Web Services and WSDL 15.2.2010 Tancred Lindholm Based on slides by Sasu Tarkoma and Pekka Nikander 1 of 20 Contents Short review of XML & related specs

More information

Integration of Hotel Property Management Systems (HPMS) with Global Internet Reservation Systems

Integration of Hotel Property Management Systems (HPMS) with Global Internet Reservation Systems Integration of Hotel Property Management Systems (HPMS) with Global Internet Reservation Systems If company want to be competitive on global market nowadays, it have to be persistent on Internet. If we

More information

Service-Oriented Architecture and its Implications for Software Life Cycle Activities

Service-Oriented Architecture and its Implications for Software Life Cycle Activities Service-Oriented Architecture and its Implications for Software Life Cycle Activities Grace A. Lewis Software Engineering Institute Integration of Software-Intensive Systems (ISIS) Initiative Agenda SOA:

More information

Introduction into Web Services (WS)

Introduction into Web Services (WS) (WS) Adomas Svirskas Agenda Background and the need for WS SOAP the first Internet-ready RPC Basic Web Services Advanced Web Services Case Studies The ebxml framework How do I use/develop Web Services?

More information

Creating Web Services in NetBeans

Creating Web Services in NetBeans Creating Web Services in NetBeans Fulvio Frati fulvio.frati@unimi.it Sesar Lab http://ra.crema.unimi.it 1 Outline Web Services Overview Creation of a Web Services Server Creation of different Web Services

More information

Combining SAWSDL, OWL DL and UDDI for Semantically Enhanced Web Service Discovery

Combining SAWSDL, OWL DL and UDDI for Semantically Enhanced Web Service Discovery Combining SAWSDL, OWL DL and UDDI for Semantically Enhanced Web Service Discovery Dimitrios Kourtesis, Iraklis Paraskakis SEERC South East European Research Centre, Greece Research centre of the University

More information

Introduction to Web Services

Introduction to Web Services Department of Computer Science Imperial College London CERN School of Computing (icsc), 2005 Geneva, Switzerland 1 Fundamental Concepts Architectures & escience example 2 Distributed Computing Technologies

More information

Service Virtualization: Managing Change in a Service-Oriented Architecture

Service Virtualization: Managing Change in a Service-Oriented Architecture Service Virtualization: Managing Change in a Service-Oriented Architecture Abstract Load balancers, name servers (for example, Domain Name System [DNS]), and stock brokerage services are examples of virtual

More information

Service-Oriented Architectures

Service-Oriented Architectures Architectures Computing & 2009-11-06 Architectures Computing & SERVICE-ORIENTED COMPUTING (SOC) A new computing paradigm revolving around the concept of software as a service Assumes that entire systems

More information

Research on the Model of Enterprise Application Integration with Web Services

Research on the Model of Enterprise Application Integration with Web Services Research on the Model of Enterprise Integration with Web Services XIN JIN School of Information, Central University of Finance& Economics, Beijing, 100081 China Abstract: - In order to improve business

More information

Distributed Embedded Systems

Distributed Embedded Systems Distributed Embedded Systems Computer Architecture and Operating Systems 2 Content 1. Motivation 2. An Overview of Distributed Software Architecture Approaches 2.1 Pro & Contra Middleware 2.2 Message-Based

More information

XIII. Service Oriented Computing. Laurea Triennale in Informatica Corso di Ingegneria del Software I A.A. 2006/2007 Andrea Polini

XIII. Service Oriented Computing. Laurea Triennale in Informatica Corso di Ingegneria del Software I A.A. 2006/2007 Andrea Polini XIII. Service Oriented Computing Laurea Triennale in Informatica Corso di Outline Enterprise Application Integration (EAI) and B2B applications Service Oriented Architecture Web Services WS technologies

More information

Extending SOA Infrastructure for Semantic Interoperability

Extending SOA Infrastructure for Semantic Interoperability Extending SOA Infrastructure for Semantic Interoperability Wen Zhu wzhu@alionscience.com Sumeet Vij svij@alionscience.com 3rd Annual DoD SOA & Semantic Technology Symposium July 14, 2011 www.alionscience.com

More information

Evaluating Semantic Web Service Tools using the SEALS platform

Evaluating Semantic Web Service Tools using the SEALS platform Evaluating Semantic Web Service Tools using the SEALS platform Liliana Cabral 1, Ioan Toma 2 1 Knowledge Media Institute, The Open University, Milton Keynes, UK 2 STI Innsbruck, University of Innsbruck,

More information

Introduction. Tom Dinkelaker, Ericsson Guido Salvaneschi, Mira Mezini, TUD

Introduction. Tom Dinkelaker, Ericsson Guido Salvaneschi, Mira Mezini, TUD Introduction Tom Dinkelaker, Ericsson Guido Salvaneschi, Mira Mezini, TUD Agenda of KICK-OFF MEETING Introduction Organization of Course Topics Questions & Answers Ericsson Telekommunikation GmbH & Co.

More information

T320 E-business technologies: foundations and practice

T320 E-business technologies: foundations and practice T320 E-business technologies: foundations and practice Block 3 Part 1 Activity 5: Implementing a simple web service Prepared for the course team by Neil Simpkins Introduction 1 Components of a web service

More information

Internationalization and Web Services

Internationalization and Web Services Internationalization and Web Services 25 th Internationalization and Unicode Conference Presented by Addison P. Phillips Director, Globalization Architecture webmethods, Inc. 25 th Internationalization

More information

Combining RDF and Agent-Based Architectures for Semantic Interoperability in Digital Libraries

Combining RDF and Agent-Based Architectures for Semantic Interoperability in Digital Libraries Combining RDF and Agent-Based Architectures for Semantic Interoperability in Digital Libraries Norbert Fuhr, Claus-Peter Klas University of Dortmund, Germany {fuhr,klas}@ls6.cs.uni-dortmund.de 1 Introduction

More information

FUSE ESB. Getting Started with FUSE ESB. Version 4.1 April 2009

FUSE ESB. Getting Started with FUSE ESB. Version 4.1 April 2009 FUSE ESB Getting Started with FUSE ESB Version 4.1 April 2009 Getting Started with FUSE ESB Version 4.1 Publication date 22 Jul 2009 Copyright 2001-2009 Progress Software Corporation and/or its subsidiaries

More information

Web Services Strategy

Web Services Strategy Web Services Strategy Agenda What What are are Web Web Services? Services? Web Web Services Services --The The Technologies Technologies Web Web Services Services Compliments Compliments Overall Overall

More information

AquaLogic Service Bus

AquaLogic Service Bus AquaLogic Bus Wolfgang Weigend Principal Systems Engineer BEA Systems 1 What to consider when looking at ESB? Number of planned business access points Reuse across organization Reduced cost of ownership

More information

Bindings for the Service Provisioning Markup Language (SPML) Version 1.0

Bindings for the Service Provisioning Markup Language (SPML) Version 1.0 1 2 3 Bindings for the Service Provisioning Markup Language (SPML) Version 1.0 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 OASIS Standard, Approved October 2003 Document identifier:

More information

A standards-based approach to application integration

A standards-based approach to application integration A standards-based approach to application integration An introduction to IBM s WebSphere ESB product Jim MacNair Senior Consulting IT Specialist Macnair@us.ibm.com Copyright IBM Corporation 2005. All rights

More information

Resource Oriented Architecture and REST

Resource Oriented Architecture and REST Resource Oriented Architecture and REST Assessment of impact and advantages on INSPIRE Roberto Lucchi, Michel Millot European Commission Joint Research Centre Institute for Environment and Sustainability

More information

Building Semantic Content Management Framework

Building Semantic Content Management Framework Building Semantic Content Management Framework Eric Yen Computing Centre, Academia Sinica Outline What is CMS Related Work CMS Evaluation, Selection, and Metrics CMS Applications in Academia Sinica Concluding

More information

Web Services. Distributed Object Systems 11. Web Services, SOAP and NET. Web Applications. Web Services. Web services vs Distributed Objects

Web Services. Distributed Object Systems 11. Web Services, SOAP and NET. Web Applications. Web Services. Web services vs Distributed Objects Distributed Object Systems 11 Web Services, SOAP and NET Piet van Oostrum Web Services Some Definitions A Web Service is a software system designed to support interoperable machine-to-machine interaction

More information

Web Services Middleware Application: A Solution for SMEs towards B2B Framework Implementation

Web Services Middleware Application: A Solution for SMEs towards B2B Framework Implementation Web Services Middleware Application: A Solution for SMEs towards B2B Framework Implementation ADRIAN BESIMI, ZAMIR DIKA Contemporary Sciences and Technologies South East European University Ilindenska

More information

Software agents. Web services. and. F. Dignum Utrecht University

Software agents. Web services. and. F. Dignum Utrecht University Web services and Software agents F. Dignum Utrecht University Contents What are Web Services? Standards Problems with Web Services Software Agents Conclusions Today s Web Web Services: Killer Application?

More information

Vertical Integration of Enterprise Industrial Systems Utilizing Web Services

Vertical Integration of Enterprise Industrial Systems Utilizing Web Services Vertical Integration of Enterprise Industrial Systems Utilizing Web Services A.P. Kalogeras 1, J. Gialelis 2, C. Alexakos 1, M. Georgoudakis 2, and S. Koubias 2 1 Industrial Systems Institute, Building

More information

Motivation Definitions EAI Architectures Elements Integration Technologies. Part I. EAI: Foundations, Concepts, and Architectures

Motivation Definitions EAI Architectures Elements Integration Technologies. Part I. EAI: Foundations, Concepts, and Architectures Part I EAI: Foundations, Concepts, and Architectures 5 Example: Mail-order Company Mail order Company IS Invoicing Windows, standard software IS Order Processing Linux, C++, Oracle IS Accounts Receivable

More information

Ontological Identification of Patterns for Choreographing Business Workflow

Ontological Identification of Patterns for Choreographing Business Workflow University of Aizu, Graduation Thesis. March, 2010 s1140042 1 Ontological Identification of Patterns for Choreographing Business Workflow Seiji Ota s1140042 Supervised by Incheon Paik Abstract Business

More information

SOA GOVERNANCE MODEL

SOA GOVERNANCE MODEL SOA GOVERNANCE MODEL Matjaz B. Juric University of Ljubljana, Slovenia matjaz.juric@fri.uni-lj.si Eva Zupancic University of Ljubljana, Slovenia Abstract: Service Oriented Architecture (SOA) has become

More information

4. Concepts and Technologies for B2C, B2E, and B2B Transaction

4. Concepts and Technologies for B2C, B2E, and B2B Transaction 4. Concepts and Technologies for B2C, B2E, and B2B Transaction 4.4 Exchanging Information within Open Business Communities 4.4.1 Pre-Internet B2B standards: EDI, Interactive EDI, Universal EDI, OpenEDI

More information

WSPDS: Web Services Peer-to-peer Discovery Service

WSPDS: Web Services Peer-to-peer Discovery Service WSPDS: Web Services Peer-to-peer Discovery Service Farnoush Banaei-Kashani, Ching-Chien Chen, and Cyrus Shahabi Computer Science Department, University of Southern California, Los Angeles, California 90089

More information

Interacting the Edutella/JXTA Peer-to-Peer Network with Web Services

Interacting the Edutella/JXTA Peer-to-Peer Network with Web Services Interacting the Edutella/JXTA Peer-to-Peer Network with Web Services Changtao Qu Learning Lab Lower Saxony University of Hannover Expo Plaza 1, D-30539, Hannover, Germany qu @learninglab.de Wolfgang Nejdl

More information

Leveraging Information Access in E-Government Using Mobile Services in Kenya. Clement W. Marini

Leveraging Information Access in E-Government Using Mobile Services in Kenya. Clement W. Marini Leveraging Information Access in E-Government Using Mobile Services in Kenya Clement W. Marini Master in Technology Innovation and Development January 9, 2013 Abstract The purpose of this research paper

More information

EUR-Lex 2012 Data Extraction using Web Services

EUR-Lex 2012 Data Extraction using Web Services DOCUMENT HISTORY DOCUMENT HISTORY Version Release Date Description 0.01 24/01/2013 Initial draft 0.02 01/02/2013 Review 1.00 07/08/2013 Version 1.00 -v1.00.doc Page 2 of 17 TABLE OF CONTENTS 1 Introduction...

More information

Live Model Pointers A requirement for future model repositories

Live Model Pointers A requirement for future model repositories Live Model Pointers A requirement for future model repositories Keith Duddy QUT/Smart Services CRC 8 April 2009 1 Introduction Model interoperability is a topic that assumes that models are created and

More information

Virtual Credit Card Processing System

Virtual Credit Card Processing System The ITB Journal Volume 3 Issue 2 Article 2 2002 Virtual Credit Card Processing System Geraldine Gray Karen Church Tony Ayres Follow this and additional works at: http://arrow.dit.ie/itbj Part of the E-Commerce

More information

Lesson 4 Web Service Interface Definition (Part I)

Lesson 4 Web Service Interface Definition (Part I) Lesson 4 Web Service Interface Definition (Part I) Service Oriented Architectures Module 1 - Basic technologies Unit 3 WSDL Ernesto Damiani Università di Milano Interface Definition Languages (1) IDLs

More information

Grid Computing. Web Services. Explanation (2) Explanation. Grid Computing Fall 2006 Paul A. Farrell 9/12/2006

Grid Computing. Web Services. Explanation (2) Explanation. Grid Computing Fall 2006 Paul A. Farrell 9/12/2006 Grid Computing Web s Fall 2006 The Grid: Core Technologies Maozhen Li, Mark Baker John Wiley & Sons; 2005, ISBN 0-470-09417-6 Web s Based on Oriented Architecture (SOA) Clients : requestors Servers : s

More information

Service-Oriented Architecture and Software Engineering

Service-Oriented Architecture and Software Engineering -Oriented Architecture and Software Engineering T-86.5165 Seminar on Enterprise Information Systems (2008) 1.4.2008 Characteristics of SOA The software resources in a SOA are represented as services based

More information

EHR-IIS Interoperability Enhancement Project. Transport Layer Protocol Recommendation Formal Specification. Version 1.

EHR-IIS Interoperability Enhancement Project. Transport Layer Protocol Recommendation Formal Specification. Version 1. EHR-IIS Interoperability Enhancement Project Transport Layer Protocol Recommendation Formal Specification Version 1.1 June 4, 2014 Transport Layer Expert Panel EHR-IIS Interoperability Enhancement Project

More information

Lightweight Data Integration using the WebComposition Data Grid Service

Lightweight Data Integration using the WebComposition Data Grid Service Lightweight Data Integration using the WebComposition Data Grid Service Ralph Sommermeier 1, Andreas Heil 2, Martin Gaedke 1 1 Chemnitz University of Technology, Faculty of Computer Science, Distributed

More information

Service Computing: Basics Monica Scannapieco

Service Computing: Basics Monica Scannapieco Service Computing: Basics Monica Scannapieco Generalities: Defining a Service Services are self-describing, open components that support rapid, low-cost composition of distributed applications. Since services

More information

A Generic Database Web Service

A Generic Database Web Service A Generic Database Web Service Erdogan Dogdu TOBB Economics and Technology University Computer Engineering Department Ankara, Turkey edogdu@etu.edu.tr Yanchao Wang and Swetha Desetty Georgia State University

More information

A Service-oriented Architecture for Business Intelligence

A Service-oriented Architecture for Business Intelligence A Service-oriented Architecture for Business Intelligence Liya Wu 1, Gilad Barash 1, Claudio Bartolini 2 1 HP Software 2 HP Laboratories {name.surname@hp.com} Abstract Business intelligence is a business

More information

Semantic Search in Portals using Ontologies

Semantic Search in Portals using Ontologies Semantic Search in Portals using Ontologies Wallace Anacleto Pinheiro Ana Maria de C. Moura Military Institute of Engineering - IME/RJ Department of Computer Engineering - Rio de Janeiro - Brazil [awallace,anamoura]@de9.ime.eb.br

More information

BMC Software Inc. Technical Disclosure Publication Document Application Integration Manager (AIM) Author. Vincent J. Kowalski.

BMC Software Inc. Technical Disclosure Publication Document Application Integration Manager (AIM) Author. Vincent J. Kowalski. BMC Software Inc. Technical Disclosure Publication Document Application Integration Manager (AIM) Author Vincent J. Kowalski Posted: June 2009 Overview This document describes an invention, the Application

More information

REVIEW PAPER ON PERFORMANCE OF RESTFUL WEB SERVICES

REVIEW PAPER ON PERFORMANCE OF RESTFUL WEB SERVICES REVIEW PAPER ON PERFORMANCE OF RESTFUL WEB SERVICES Miss.Monali K.Narse 1,Chaitali S.Suratkar 2, Isha M.Shirbhate 3 1 B.E, I.T, JDIET, Yavatmal, Maharashtra, India, monalinarse9990@gmail.com 2 Assistant

More information

Enterprise Application Designs In Relation to ERP and SOA

Enterprise Application Designs In Relation to ERP and SOA Enterprise Application Designs In Relation to ERP and SOA DESIGNING ENTERPRICE APPLICATIONS HASITH D. YAGGAHAVITA 20 th MAY 2009 Table of Content 1 Introduction... 3 2 Patterns for Service Integration...

More information

NIST s Guide to Secure Web Services

NIST s Guide to Secure Web Services NIST s Guide to Secure Web Services Presented by Gaspar Modelo-Howard and Ratsameetip Wita Secure and Dependable Web Services National Institute of Standards and Technology. Special Publication 800-95:

More information

Web Services Servizio Telematico Doganale

Web Services Servizio Telematico Doganale Web Services Servizio Telematico Doganale USER MANUAL Pagina 1 di 20 Contents 1 Introduction... 3 2 Functional testing of web services... 6 3 Creating the client... 10 3.1 Open Source solutions... 10 3.2

More information

What is a Web service?

What is a Web service? What is a Web service? Many people and companies have debated the exact definition of Web services. At a minimum, however, a Web service is any piece of software that makes itself available over the Internet

More information

IT services for analyses of various data samples

IT services for analyses of various data samples IT services for analyses of various data samples Ján Paralič, František Babič, Martin Sarnovský, Peter Butka, Cecília Havrilová, Miroslava Muchová, Michal Puheim, Martin Mikula, Gabriel Tutoky Technical

More information

A Collaborative System Software Solution for Modeling Business Flows Based on Automated Semantic Web Service Composition

A Collaborative System Software Solution for Modeling Business Flows Based on Automated Semantic Web Service Composition 32 A Collaborative System Software Solution for Modeling Business Flows Based on Automated Semantic Web Service Composition Ion SMEUREANU, Andreea DIOŞTEANU Economic Informatics Department, Academy of

More information

E-Business Technologies for the Future

E-Business Technologies for the Future E-Business Technologies for the Future Michael B. Spring Department of Information Science and Telecommunications University of Pittsburgh spring@imap.pitt.edu http://www.sis.pitt.edu/~spring Overview

More information

Mining Text Data: An Introduction

Mining Text Data: An Introduction Bölüm 10. Metin ve WEB Madenciliği http://ceng.gazi.edu.tr/~ozdemir Mining Text Data: An Introduction Data Mining / Knowledge Discovery Structured Data Multimedia Free Text Hypertext HomeLoan ( Frank Rizzo

More information

Modern XML applications

Modern XML applications Modern XML applications XML in electronic data interchange, application integration and databases Patryk Czarnik Institute of Informatics University of Warsaw XML and Modern Techniques of Content Management

More information

UIMA and WebContent: Complementary Frameworks for Building Semantic Web Applications

UIMA and WebContent: Complementary Frameworks for Building Semantic Web Applications UIMA and WebContent: Complementary Frameworks for Building Semantic Web Applications Gaël de Chalendar CEA LIST F-92265 Fontenay aux Roses Gael.de-Chalendar@cea.fr 1 Introduction The main data sources

More information

Service Oriented Architectures

Service Oriented Architectures 8 Service Oriented Architectures Gustavo Alonso Computer Science Department Swiss Federal Institute of Technology (ETHZ) alonso@inf.ethz.ch http://www.iks.inf.ethz.ch/ The context for SOA A bit of history

More information

Data Mining Governance for Service Oriented Architecture

Data Mining Governance for Service Oriented Architecture Data Mining Governance for Service Oriented Architecture Ali Beklen Software Group IBM Turkey Istanbul, TURKEY alibek@tr.ibm.com Turgay Tugay Bilgin Dept. of Computer Engineering Maltepe University Istanbul,

More information

INTEGRATED STAFF ATTENDANCE SYSTEM (ISAS) WEE PEK LING

INTEGRATED STAFF ATTENDANCE SYSTEM (ISAS) WEE PEK LING INTEGRATED STAFF ATTENDANCE SYSTEM (ISAS) WEE PEK LING A report submitted in partial fulfillment of the requirements for the award of the degree of Bachelor of Computer Science (Computer Systems & Networking)

More information

Middleware and the Internet. Example: Shopping Service. What could be possible? Service Oriented Architecture

Middleware and the Internet. Example: Shopping Service. What could be possible? Service Oriented Architecture Middleware and the Internet Example: Shopping Middleware today Designed for special purposes (e.g. DCOM) or with overloaded specification (e.g. CORBA) Specifying own protocols integration in real world

More information

K@ A collaborative platform for knowledge management

K@ A collaborative platform for knowledge management White Paper K@ A collaborative platform for knowledge management Quinary SpA www.quinary.com via Pietrasanta 14 20141 Milano Italia t +39 02 3090 1500 f +39 02 3090 1501 Copyright 2004 Quinary SpA Index

More information

How To Design An Online Ticket Service (Ots)

How To Design An Online Ticket Service (Ots) Department of Electrical and Computer Engineering Schulich School of Engineering Project Report for SENG609.22 Agent-based Software Engineering (Fall 2005) Instructor: Dr. B. H. Far Agent-based Online

More information

Joke Server example. with Java and Axis. Web services with Axis SOAP, WSDL, UDDI. Joke Metaservice Joke Server Joke Client.

Joke Server example. with Java and Axis. Web services with Axis SOAP, WSDL, UDDI. Joke Metaservice Joke Server Joke Client. Joke Server example SOAP and WSDL with Java and Axis Interactive web services, Course, Fall 2003 Henning Niss Joke Metaservice Joke Server Joke Client 3 meta service 2 IT University of Copenhagen client

More information

FIPA agent based network distributed control system

FIPA agent based network distributed control system FIPA agent based network distributed control system V.Gyurjyan, D. Abbott, G. Heyes, E. Jastrzembski, C. Timmer, E. Wolin TJNAF, Newport News, VA 23606, USA A control system with the capabilities to combine

More information

A generic approach for data integration using RDF, OWL and XML

A generic approach for data integration using RDF, OWL and XML A generic approach for data integration using RDF, OWL and XML Miguel A. Macias-Garcia, Victor J. Sosa-Sosa, and Ivan Lopez-Arevalo Laboratory of Information Technology (LTI) CINVESTAV-TAMAULIPAS Km 6

More information

Intinno: A Web Integrated Digital Library and Learning Content Management System

Intinno: A Web Integrated Digital Library and Learning Content Management System Intinno: A Web Integrated Digital Library and Learning Content Management System Synopsis of the Thesis to be submitted in Partial Fulfillment of the Requirements for the Award of the Degree of Master

More information

Classic Grid Architecture

Classic Grid Architecture Peer-to to-peer Grids Classic Grid Architecture Resources Database Database Netsolve Collaboration Composition Content Access Computing Security Middle Tier Brokers Service Providers Middle Tier becomes

More information

So today we shall continue our discussion on the search engines and web crawlers. (Refer Slide Time: 01:02)

So today we shall continue our discussion on the search engines and web crawlers. (Refer Slide Time: 01:02) Internet Technology Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture No #39 Search Engines and Web Crawler :: Part 2 So today we

More information

Model User Guide for Implementing Online Insurance Verification

Model User Guide for Implementing Online Insurance Verification Model User Guide for Implementing Online Insurance Verification Using Web services to verify auto insurance coverage Version 3.0 May 8, 2008 Executive Summary IICMVA s Model User Guide for Implementing

More information

Fundamentals of Web Programming a

Fundamentals of Web Programming a Fundamentals of Web Programming a Software As A Service Teodor Rus rus@cs.uiowa.edu The University of Iowa, Department of Computer Science a Copyright 2009 Teodor Rus. These slides have been developed

More information

Christoph Bussler. B2B Integration. Concepts and Architecture. With 165 Figures and 4 Tables. IIIBibliothek. Springer

Christoph Bussler. B2B Integration. Concepts and Architecture. With 165 Figures and 4 Tables. IIIBibliothek. Springer Christoph Bussler B2B Integration Concepts and Architecture With 165 Figures and 4 Tables IIIBibliothek Springer Contents Part I Introduction to Business-to-Business Integration.... 1 1 History 3 1.1 Why

More information

Emerging Technologies Shaping the Future of Data Warehouses & Business Intelligence

Emerging Technologies Shaping the Future of Data Warehouses & Business Intelligence Emerging Technologies Shaping the Future of Data Warehouses & Business Intelligence Service Oriented Architecture SOA and Web Services John O Brien President and Executive Architect Zukeran Technologies

More information

Getting started with OWASP WebGoat 4.0 and SOAPUI.

Getting started with OWASP WebGoat 4.0 and SOAPUI. Getting started with OWASP WebGoat 4.0 and SOAPUI. Hacking web services, an introduction. Version 1.0 by Philippe Bogaerts Philippe.Bogaerts@radarhack.com www.radarhack.com Reviewed by Erwin Geirnaert

More information

Ontology-based Web Service Composition: Part 1. Rolland Brunec Betreuerin: Sabine Maßmann Universität Leipzig, Abteilung Datenbanken

Ontology-based Web Service Composition: Part 1. Rolland Brunec Betreuerin: Sabine Maßmann Universität Leipzig, Abteilung Datenbanken Ontology-based Web Service Composition: Part 1 Rolland Brunec Betreuerin: Sabine Maßmann Universität Leipzig, Abteilung Datenbanken Motivation Semantic Web Web Services Web Service Composition Web Services

More information

Oracle Service Bus. User Guide 10g Release 3 Maintenance Pack 1 (10.3.1) June 2009

Oracle Service Bus. User Guide 10g Release 3 Maintenance Pack 1 (10.3.1) June 2009 Oracle Service Bus User Guide 10g Release 3 Maintenance Pack 1 (10.3.1) June 2009 Oracle Service Bus User Guide, 10g Release 3 Maintenance Pack 1 (10.3.1) Copyright 2007, 2008, Oracle and/or its affiliates.

More information

EAI OVERVIEW OF ENTERPRISE APPLICATION INTEGRATION CONCEPTS AND ARCHITECTURES. Enterprise Application Integration. Peter R. Egli INDIGOO.

EAI OVERVIEW OF ENTERPRISE APPLICATION INTEGRATION CONCEPTS AND ARCHITECTURES. Enterprise Application Integration. Peter R. Egli INDIGOO. EAI OVERVIEW OF ENTERPRISE APPLICATION INTEGRATION CONCEPTS AND ARCHITECTURES Peter R. Egli INDIGOO.COM 1/16 Contents 1. EAI versus SOA versus ESB 2. EAI 3. SOA 4. ESB 5. N-tier enterprise architecture

More information

Ibm. Web Services Conceptual Architecture (WSCA 1.0) May 2001. By Heather Kreger IBM Software Group

Ibm. Web Services Conceptual Architecture (WSCA 1.0) May 2001. By Heather Kreger IBM Software Group Ibm Web s Conceptual Architecture (WSCA 1.0) May 2001 By Heather Kreger IBM Software Group Front Matter Notice The authors have utilized their professional expertise in preparing this report. However,

More information

Bing Liu. Web Data Mining. Exploring Hyperlinks, Contents, and Usage Data. With 177 Figures. ~ Spring~r

Bing Liu. Web Data Mining. Exploring Hyperlinks, Contents, and Usage Data. With 177 Figures. ~ Spring~r Bing Liu Web Data Mining Exploring Hyperlinks, Contents, and Usage Data With 177 Figures ~ Spring~r Table of Contents 1. Introduction.. 1 1.1. What is the World Wide Web? 1 1.2. ABrief History of the Web

More information

Model Driven Interoperability through Semantic Annotations using SoaML and ODM

Model Driven Interoperability through Semantic Annotations using SoaML and ODM Model Driven Interoperability through Semantic Annotations using SoaML and ODM JiuCheng Xu*, ZhaoYang Bai*, Arne J.Berre*, Odd Christer Brovig** *SINTEF, Pb. 124 Blindern, NO-0314 Oslo, Norway (e-mail:

More information

Investigating Web Services on the World Wide Web

Investigating Web Services on the World Wide Web Investigating Web Services on the World Wide Web Eyhab Al-Masri and Qusay H. Mahmoud Department of Computing and Information Science University of Guelph, Guelph, ON, N1G 2W1 Canada {ealmasri,qmahmoud}@uoguelph.ca

More information

SmartLink: a Web-based editor and search environment for Linked Services

SmartLink: a Web-based editor and search environment for Linked Services SmartLink: a Web-based editor and search environment for Linked Services Stefan Dietze, Hong Qing Yu, Carlos Pedrinaci, Dong Liu, John Domingue Knowledge Media Institute, The Open University, MK7 6AA,

More information

Table of Contents. Chapter No. 1 Introduction 1. iii. xiv. xviii. xix. Page No.

Table of Contents. Chapter No. 1 Introduction 1. iii. xiv. xviii. xix. Page No. Table of Contents Title Declaration by the Candidate Certificate of Supervisor Acknowledgement Abstract List of Figures List of Tables List of Abbreviations Chapter Chapter No. 1 Introduction 1 ii iii

More information

Introduction to Testing Webservices

Introduction to Testing Webservices Introduction to Testing Webservices Author: Vinod R Patil Abstract Internet revolutionized the way information/data is made available to general public or business partners. Web services complement this

More information

Web Services Implementation: The Beta Phase of EPA Network Nodes

Web Services Implementation: The Beta Phase of EPA Network Nodes Web Services Implementation: The Beta Phase of EPA Network Nodes Connie Dwyer and Chris Clark U.S. Environmental Protection Agency, 1200 Pennsylvania Avenue, N. W., Washington, D.C. dwyer.connie@epa.gov

More information

DIGITAL MARKETING PROPOSAL. Stage 1: SEO Audit/Correction. www.abccompany.com

DIGITAL MARKETING PROPOSAL. Stage 1: SEO Audit/Correction. www.abccompany.com DIGITAL MARKETING PROPOSAL www.abccompany.com SEARCH ENGINE OPTIMIZATION SEO Search Engine Optimization SEO (search engine optimization) is the process of improving the visibility of a website or a web

More information

Building the European Biodiversity. Observation Network (EU BON)

Building the European Biodiversity. Observation Network (EU BON) Enterprise Application Integration Building the European Biodiversity through Service-Oriented Architecture Observation Network (EU BON) EU BON Project Building the European Biodiversity Network Presentation

More information

Web Services Overview. Ajith Abraham

Web Services Overview. Ajith Abraham Web Services Overview Ajith Abraham 1 What is Web Services? Component applications that can be published in the Internet-based distributed environment, can be searched and can be executed dynamically.

More information

Alternatives to SNMP and Challenges in Management Protocols. Communication Systems Seminar Talk 10 Francesco Luminati

Alternatives to SNMP and Challenges in Management Protocols. Communication Systems Seminar Talk 10 Francesco Luminati Alternatives to SNMP and Challenges in Management Protocols Communication Systems Seminar Talk 10 Francesco Luminati Introduction Structure Network management Management approaches SNMP Alternatives: NetConf

More information