Professional Documents
Culture Documents
INTRODUCTION
1.1 PROJECT DEFINITION
As a greater number of Web Services are made available today, automatic
discovery is recognized as an important task. To promote the automation of service
discovery, different semantic languages have been created that allow describing the
functionality of services in a machine interpretable form using Semantic Web
technologies. The problem is that users do not have intimate knowledge about semantic
Web service languages and related toolkits. We have proposed a discovery framework
that enables semantic Web service discovery based on functional parameters represented
in an XML file. We describe a novel approach for automatic discovery of semantic Web
services which employs IOPE to match a user request, expressed in XML, with a
semantic Web service description.
1.2 WEB SERVICES ARCHITECTURE
The Web services architecture is based upon the interactions between three roles:
service provider, service registry and service requestor. The interactions involve publish,
find and bind operations. Together, these roles and operations act upon the Web services
artifacts: the Web service software module and its description. In a typical scenario, a
service provider hosts a network-accessible software module (an implementation of a
Web service). The service provider defines a service description for the Web service and
publishes it to a service requestor or service registry. The service requestor uses a find
operation to retrieve the service description locally or from the service registry and uses
the service description to bind with the service provider and invoke or interact with the
Web service implementation.
Figure 1.2 illustrates these operations, the components providing them and their
interactions.
The roles in Web services architecture are service provider, service requestor and service
registry.
Service provider: From a business perspective, this is the owner of the service.
From an architectural perspective, this is the platform that hosts access to the
service.
Service requestor: From a business perspective, this is the business that requires
certain functions to be satisfied. From an architectural perspective, this is the
application that is looking for and invoking or initiating an interaction with a
service. The service requestor role can be played by a browser driven by a person
operation can be performed at runtime to retrieve the services binding and location
description for invocation.
Bind: A service needs to be invoked. In the bind operation the service requestor
invokes or initiates an interaction with the service at runtime using the binding
details in the service description to locate, contact and invoke the service.
CHAPTER 2
LITERATURE SURVEY
2.1 USING THE WEB SERVICE MODELING ONTOLOGY TO ENABLE
SEMANTIC E-BUSINESS
Jos de Bruijn, Dieter Fensel, Uwe Keller
Digital Enterprise Research Institute, December 6, 2005.
Jos de Bruijn, Dieter Fensel and Uwe Keller proposes a methodology for higher
degree of automation in the location and use of Web Services that can be achieved by
adding explicit semantics to Web Service descriptions. Such semantically enriched
descriptions are usually referred to as Semantic Web Services and they are expected to
enable businesses to dynamically locate partners which provide particular services, and to
facilitate (semi-)automated cooperation with them. The Web Service Modeling Ontology
(WSMO) follows this direction and defines an explicit conceptual model for Semantic
Web Services based on the Web Service Modeling Framework (WSMF). The major aim
of WSMO is to provide the necessary technology to achieve flexible and cost-effective
integration within and across business boundaries.
2.2 DISCOVERING AND INTEGRATING DISTRIBUTED MANUFACTURING
SERVICES WITH SEMANTIC MANUFACTURING CAPABILITY PROFILES
Buhwan Jeong, Jungho Jang, Boonserm Kulvatunyou, Jaegyong Chang and
Hyunbo Cho
Department of Industrial and Management Engineering, Pohang University of
Science and Technology (POSTECH) San 31, Hyoja, Pohang, 790-784, South Korea.
This present paper aims to extend the UDDI registry specification to include
semantic descriptions about manufacturing services and to support reasoning about those
descriptions for service discovery. Specifically, we provide OWL-based definitions for
manufacturing service capability profiles and a DL-based reasoning procedure for
matching queries to service descriptions.
CHAPTER 3
PROBLEM FORMULATION
3.1 MAIN OBJECTIVE
To develop online ticket reservation application for flights in such a way that it
supports dynamic searching and retrieval of flight based on exact match.
3.2 SPECIFIC OBJECTIVE
To discover the requested service for the end-user based on semantic match
making process and automatic discovery of services at run time.
3.3 PLATFORM REQURIEMENTS
3.3.1 HARDWARE REQUIREMENTS
Processor Required:
RAM Size:
Hard disk Capacity:
CHAPTER 4
8
algorithm the services are matched. After filtering out all unmatched services, a best
matched service is discovered. A URL is discovered from the UDDI and it is invoked by
the service client and finally binded to the service provider.
4.4 USECASE DIAGRAM: ONLINE FLIGHT RESERVATION SYSTEM
Use case diagram presents a graphical overview of the functionality provided by a
system in terms of actors, their goals and any dependencies between those use cases.
Service that we wish to provide is the online flight reservation system where anyone can
book ticket, check for availability, cancel the ticket, and check status of the ticket. The
11
Figure 4.4 shows the functional requirements of online flight reservation system.
login
Service client
booking
discovering
discovering URL
binding
Service EndUser
payment
UDDI
cancellation
publising a service
Service Provider
refund status
element WSDL which contains no information on the semantics of the described web
service. A formal description of web service is the key in automating the task of locating
required service.
The Service Provider publishes the service such as booking, payment, and
cancellation, refund status along with a WSDL file, Business and Service detail for
respective service to the UDDI registry. The WSDL to OWL converter will be used to
convert the WSDL file to OWL.Therefore the conversion process generates Service
Grounding, Service Process and service profile. The services are matched through four
phases such as exact match, similarity match, constraint reasoning and best match.
In exact match phase, the strategy of an exact match is implemented. Domain
name and Service name will be given as inputs for this phase. As a result, a list of N
services is discovered in this phase.
The similarity match is the second phase of the service matchmaking. In this
phase, the strategy of the similar match is implemented. Based on Input and Output
parameters, the services are matched using semantic matchmaking algorithm.
The constraint reasoning is the third phase of the service matchmaking. Constraint
knowledge has been formalized using SWRL. Based on constraints like input type, field
and value the services are matched.
After filtering out the unmatched service from first three phases, a best matched
service is obtained in best matching phase and URL is discovered. Then service client and
service provider are binded together and required service from the service provider is
given to service client and execution of service take place by method invocation. Service
client finally response to end-user by providing discovered URL.
13
knowledge has been formalized using SWRL. Based on constraints like input type, field
and value the services are matched. A rule engine is used (eg.JESS) to perform constraint
reasoning.
Best-First Reasoning
The strategy of the best first match is implemented to select the best one among
all candidate services that sufficiently match the required service.
Selects a best matched service
FIELDNAM
1.
2.
3.
E
Username
Password
Email
4.
Phoneno
CONSTRAINT
Primary key
DATATYPE
SAMPLE VALUE
varchar
varchar
varchar
Karthick
******
karthick@gmail.com
Int
9012356565
FIELD NAME
CONSTRAINT
Flight No
Origin
Destination
Type
NoofPass
Depart_date
Primary Key
DATATYPE
Int
varchar
varchar
varchar
Int
varchar
SAMPLE VALUE
111
Chennai
Delhi
Business
5
3/28/2013
FIELD NAME
ticketid
username
noofpass
origin
destination
flightname
Date
Price
bankname
cardno
CONSTRAINT
Primary key
Primary key
Primary key
Type
DATATYPE
Int
varchar
Int
varchar
varchar
varchar
varchar
Int
varchar
SAMPLE VALUE
123435
Karthick
5
Chennai
Delhi
Kingfisher
3/28/2013
7200
Sbi
varchar
123465123456
varchar
Business
FIELD NAME
Flightno
CONSTRAINT
Primary key
17
DATATYPE
Int
SAMPLE VALUE
111
2.
3.
4.
5.
6.
Flightname
Origin
Destination
Economic price
Business price
varchar
varchar
varchar
Int
Int
airindia
Chennai
Delhi
7000
5000
FIELD NAME
Flightno
Flightname
Origin
Destination
Economic price
Business price
CONSTRAINT
Primary key
DATATYPE
Int
varchar
varchar
varchar
Int
Int
SAMPLE VALUE
222
kingfisher
Chennai
Delhi
7000
5000
FIELD NAME
Flightno
Flightname
Origin
Destination
Economicprice
Businessprice
CONSTRAINT
Primary key
DATATYPE
Int
varchar
varchar
varchar
Int
Int
SAMPLE VALUE
333
spicejet
Chennai
Delhi
7000
5000
FIELD NAME
Ticketid
Firstname
Lastname
Age
Gender
CONSTRAINT
Primary key
DATATYPE
Int
varchar
varchar
Int
varchar
SAMPLE VALUE
123440
Karthick
Eg
22
male
FIELD NAME
CONSTRAINT
18
DATATYPE
SAMPLE VALUE
1.
2.
3.
4.
Cardno
Cardname
Expirydate
Cvvno
Primary key
Int
varchar
varchar
varchar
Primary key
123465123456
Kanna
28-02-2013
123
CONSTRAINT
Primary key
Primary key
DATATYPE
Int
varchar
varchar
varchar
SAMPLE VALUE
123465654321
Kanna
30-02-2013
321
CHAPTER 5
FUNCTIONAL DESCRIPTION
5.1 MODULES
The various modules of the system are as follows:
Creation of services
Publishing services
Discovering a service
Execution of service
19
such as target namespaces, binding details, Input and Output message type, and Service
name with invocation details.
5.1.2 PUBLISHING SERVICES
The Service Provider publishes the service such as booking, payment, and
cancellation, refund status along with a WSDL file, Business, Service, IOPE detail for
respective service. When the service has published in the UDDI Registry, it has been
updated into domain ontology by the UDDI administrator.
5.1.3 DISCOVERING A SERVICE
CREATING DOMAIN ONTOLOGY USING NeON TOOL
For discovering a service, ontology is created for an airline domain called a
domain ontology using the NeON tool. This tool is an extensible environment for creating
and editing ontologies and knowledge bases. It is very easy-to-use graphical user
interface. Therefore the domain ontology is created with number of relationships and
properties.
<http://airlines.com/dc/elements/1.1/servicename>
Reservation service".
Query: SELECT ?servicename
WHERE { <http://cmdairways.com/airline/service>
<http://airlines.com/dc/elements/1.1/servicename>
?servicename. }
Result: servicename
"Reservation service"
5.1.4 EXECUTION OF SERVICE
A best service is discovered from four phases of matching, then service client and
service provider is binded together and required service from the service provider is given
to service client and execution of service take place by method invocation. Service client
finally response to end-user by providing discovered url and this happens automatically
while comparing with existing system.
CHAPTER 6
SYSTEM DEVELOPMENT, IMPLEMENTATION AND TESTING
6.1 SYSTEM DEVELOPMENT
System development defines the sequence of steps or phases in which each phase
use the result of previous one. Implementation is the stage of the project when the
theoretical design is turned into a working system. If the implementation stage is not
carefully planned and controlled, it can cause chaos. Thus it can be considered to be the
most crucial stage in achieving a successful new system and in giving the users
confidence that the new system will work and be effective.
The existing systems are not an automated discovery of services rather they are
semi automated or static. To discover a service automatically, our project plays the role of
proposed system. In this system, the services are created with all user requirements and
21
N no. of service providers publishes their N no. of services in the form of WSDL file
to UDDI.
Service Providers publishes the services along with their Constraints and QoS to
the UDDI registry. A WSDL to OWL converter tool is used to convert from WSDL to
OWL which in turn produces profile, process, and grounding. Using these, domain
ontology is created and that is stored in a repository called ontology repository.
On Service clients request, ontology for airline service which was present in
ontology repository is parsed to get the information about the services. Services are then
searched in the UDDI registry and it is processed through four phases such as exact
match, similar match, constraint reasoning and best first match. Using the match making
algorithm the services are matched. After filtering out all unmatched services, a best
matched service is discovered. A URL is discovered from the UDDI and it is invoked by
the service client and finally binded to the service provider.
IMPLEMENTATION
22
Figure 6.2.1.1)
Web Service is created and thus WSDL file is generated for created Web Service.
Like the same N number of service are created for example booking, reservation,
cancel ticket, ticket status, banking, searching flights.
23
24
Booking
Payment
Check status
Cancellation
Booking service is used to book the flight tickets. To book flight tickets, the user
should search for the flights with the inputs. So a search is made to know about the
25
available flights. This service search for the given inputs and reply back if there are
flights available or not. Payment is a banking gateway to book the flight tickets.
Check status service is used to get the status of the ticket by giving ticket id as the
input. With the help of this service, the user can view about the ticket details that has
been booked.
Cancellation service is created to cancel the ticket by giving ticket id as the user
input.
27
28
29
31
34
Click file
open and choose the path to load an ontology into protg tool.
Select OntoGraf tab and expand the owl file to view all classes and properties.
Finally, complete domain ontology for airline service is generated.
Then the requested services are queried from the database using an SPARQL
query can make the collection look like one big database. SPARQL enables us to reap the
benefits of federation.
Similarity Match
36
The similarity match is the second phase of the service matchmaking. In this
phase, the strategy of the similar match is implemented. Based on Input and Output
parameters, the services are matched using semantic matchmaking algorithm.
Constraint Reasoning
The constraint reasoning is the third phase of the service matchmaking.
constraint knowledge has been formalized using SWRL. Based on constraints like input
type, field and value the services are matched. A rule engine is used (eg.JESS) to perform
constraint reasoning.
Best-first reasoning
The strategy of the best first match is implemented to select the best one among
all candidate services that sufficiently match the required service.
After finding the exact matched services, the corresponding target namespace,
operation name, port type, url are fetched from uddi registry which are already published
and it is sent to the service client. Finally the execution of that service takes place.
6.3 TESTING
Testing is the major quality control measure employed during software
development. Its basic function is to detect the errors in the software. For this, different
levels of testing are used, which performs different tasks on the aim to test different
aspects of the system.
6.3.1 UNIT TESTING
In this testing we test each module individually. Unit testing focuses on the
verification of the smallest units of the software design the module. This is known as unit
testing. The modules of the system are tested separately. This test is carried out during
programming stage itself. Each module should work satisfactorily as regards to the
expected from the module. There are validation checks for the fields.
Registration Form
Test description : User Registration Form Validation
Test Id
Input
Test
Status
Action
Result
Msg:You
UF-1
UF-2
UF-3
Username=
have not
Invalid
typed
Pass
anything in
Username=2
54
username
Msg:only
Invalid
character in
Pass
username
Username=kart
hik
Valid
Msg:
Pass
Msg:Passwo
UF-4
Password=
Invalid
rd should not
Pass
be empty
Password=karth
ick
UF-5
Retype
Msg:passwo
Invalid
password=kart
UF-6
hik
Password=karth
rd does not
Pass
match
Valid
ik
Retype
38
Msg:
Pass
password=kart
hik
UF-7
UF-8
E-mail=
Email=karthi
kgmail.com
Invalid
Invalid
Msg: email
is empty
Msg:Enter
valid email
Pass
Pass
Email=karthi
UF-9
k@gmail.com
Valid
Msg:
Pass
UF-
PhoneNo=as
10
is
UF-
PhoneNo=87
11
98784545
UF-
PhoneNo=95
12
55512345
Msg;enter
Invalid
numeric
Pass
value
Msg:it
Invalid
should start
Pass
with 9
Valid
39
Msg:
Pass
40
Test unit :
Login Form
Test description : Login Form Validation
Test
Id
LF-1
Input
Username
Test Status
Action
Result
Invalid
Msg:userna
Pass
me should
not be
41
empty
LF-2
Username
= 234
Msg: only
Invalid
characters in
Pass
username
Username
LF-3
=karthick
Valid
Msg:
Pass
LF-4
LF-5
Password=
Password=
karthick
Msg:Passwo
Invalid
rd should not
Pass
be empty
Valid
Msg:
42
Pass
Test unit :
From=
Invalid
select
FROM
43
Pass
FS-2
From=chen
nai
Valid
FS-3
To=
Invalid
FS-4
To=delhi
Valid
From=chen
FS-5
nai
To=chennai
FS-6
date=
Msg:please
select TO
Msg:
Pass
Pass
Pass
Msg:FROM
Invalid
is same as
Pass
TO
Departure
Msg:
Msg:depart
Invalid
ure date is
Pass
empty
Departure
FS-7
date=
Valid
Msg:
Pass
3/28/2013
Msg:select
FS-8
Class=
Invalid
one from
Pass
class
FS-9
Class=busines
s
Valid
Msg:
Pass
Msg:
FS-10
No.of.Passan
ger=
Invalid
no.of.passan
gers field is
Pass
empty
Msg: Enter
FS-11
No.of.Passan
ger=p
only
Invalid
numbers in
No.of.passan
gers field
44
Pass
FS-12
No.of.Passan
ger=5
Valid
Msg:
45
Pass
46
Test unit :
Firstname=
Invalid
name should
not be
Pass
empty
TB-2
Firstname=
karthik
Valid
Msg:
Pass
Msg: last
TB-3
Lastname=
Invalid
name should
not be
Pass
empty
TB-4
Lastname=
eg
Valid
TB-5
Age=
Invalid
TB-6
Age=22
Valid
47
Msg:
Msg:Enter
the age
Msg:
Pass
Pass
pass
CHAPTER 7
CONCLUSION AND FUTURE ENHANCEMENT
7.1 CONCLUSION
49
How to give up the proper service description in UDDI and how to match
customer service request with service description, become the major challenges in Web
Service discovery. Development of Web Service matching model proposed in this work
uses semantic description and quality description of Web Service based on ontology as
the basis of service matching, and its matching algorithm is based on this logic that when
a notice can satisfy a request that ever functions provides request service. The service
matching method composed of four phases. In the first phase, the profile matcher, and in
the second phase, the semantic matcher, matching of services is done based on semantic,
and third and fourth involve constraint and best service match, based on the constraints
given by the service provider services are filtered out and finally best service is chosen
and given to service client. Using these descriptions and matching phases, the
performance of Web Service matching can be improved effectively.
7.2 FUTURE ENHANCEMENT
In future, fault tolerance can be implemented in the system and Quality of Service
is considered for further improvement of system for providing best service based on the
match making process.
CHAPTER 8
BIBLIOGRAPHY
8.1 BOOKS
Java 2: The Complete Reference, Fifth Edition by Herbert Schildt.
JSP: A Beginner's Guide (Beginner's Guides) by Gary Bollinger, second edition.
50
8.2 REFERENCES
[1] Alexander Maedche and Steffen Staab,Ontology Learning for the Semantic Web,
Institute AIFB, D-76128 Karlsruhe, Germany.
[2] Alireza Zohali, Dr.Kamran Zamanifar, Matching Model For Semantic Web
Services Discovery,Dept. of Computer Engineering, Sama Technical&Vocational
Training School, Khorasgan Branch, Isfahan, Iran.
[3] Buhwan Jeong, Jungho Jang, Boonserm Kulvatunyou, Jaegyong Chang and
Hyunbo Cho,Discovering and integrating distributed manufacturing services with
semantic manufacturing capability profiles, Department of Industrial and
Management Engineering, Pohang University of Science and Technology
(POSTECH) San 31, Hyoja, Pohang, 790-784, South Korea.
[4] Fang-Fang Chua, Syahrul Amri Bin Ngazizan, and Musa Bin Hassan,Design and
Implementation of Airline Reservation Web Services Using Service-oriented
Architecture Proceedings of the World Congress on Engineering 2010 Vol I WCE
2010, June 30 - July 2, 2010, London, U.K.
[5] Hartwig Gunzer, Introduction to Web Services ,Borland, March 2002.
[6] Ian Horrocks, Peter F. Patel-Schneider, Sean Bechhofer, Dmitry Tsarkov, OWL
Rules: A Proposal And Prototype Implementation, February 28, 2005.
[7] Jos de Bruijn, Dieter Fensel, Uwe Keller Using the Web Service Modelling
Ontology to enable Semantic eBusiness Digital Enterprise Research Institute,
December 6, 2005.
[8] Jyotishman Pathak, Neeraj Koul, Doina Caragea,Vasant G Honavar, A
Framework for Semantic Web Services Discovery, Artificial Intelligence
Research Laboratory, Department of Computer Science, Iowa State University.
[9] Massimo Paolucci, Takahiro Kawamura, Terry R.Payne, Katia Sycara,Semantic
Matching of web services capabilities Carnegic Mellon University Pittsburgh,
PA, USA.
[10] Rohallah Benaboud, Ramdane Maamri, and Zadi Sahnoun, Semantic Web Service
Discovery Based on Agents and Ontologies, International Journal of Innovation,
Management and Technology, Vol. 3, No. 4, August 2012.
[11] Uwe Keller, Ruben Lara, Holger Lausen and Dieter Fensel Semantic Web Service
51
www.ibm.com
www.roseindia.net
www.stackoverflow.com
www.wikipedia.org
http://www.w3.org/standards/semanticweb/
www.w3schools.com
52