Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Multi-agent Semantic Web Systems:WS Intro
Ewan Klein
MASWS — 15 February 2008
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
1 Overview
2 Anatomy of WSRPCDescriptionDiscoveryCompositionSemantic WS?
3 Conclusion
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Antecedents
The View from IBM
Previous attempts at distributed computing (CORBA,Distributed Smalltalk, Java RMI) have yielded systems wherethe coupling between various components in a system is tootight to be effective for low-overhead, ubiquitous B2Be-business over the Internet. These approaches require toomuch agreement and shared context among business systemsfrom different organizations to be reliable for open,low-overhead B2B e-business.
http://www-128.ibm.com/developerworks/webservices/
library/w-ovr/
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Web Service Architecture
Tightly coupled, monolithic systems are brittle:
changing the output of one subsystem can cause the wholesystem to break;software collaboration may unintentionally rely on sideeffects of a specific implementation.
Web Service architecture is designed to be loosely coupled;
applications use service discovery to dynamically bindcomponents to concrete network-available services.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Applications in WS Architecture
Application Design
Describe capabilities of network services needed to performa function.
Describe the ‘orchestration’ of these collaborators.
Application Execution
Translate collaborator requirements into query to discoveryagent.
Locate service with right capabilities.
Orchestrate message-passing to invoke services.
Just-in-time integration of applications.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Applications in WS Architecture
Application Design
Describe capabilities of network services needed to performa function.
Describe the ‘orchestration’ of these collaborators.
Application Execution
Translate collaborator requirements into query to discoveryagent.
Locate service with right capabilities.
Orchestrate message-passing to invoke services.
Just-in-time integration of applications.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Applications in WS Architecture
Application Design
Describe capabilities of network services needed to performa function.
Describe the ‘orchestration’ of these collaborators.
Application Execution
Translate collaborator requirements into query to discoveryagent.
Locate service with right capabilities.
Orchestrate message-passing to invoke services.
Just-in-time integration of applications.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Applications in WS Architecture
Application Design
Describe capabilities of network services needed to performa function.
Describe the ‘orchestration’ of these collaborators.
Application Execution
Translate collaborator requirements into query to discoveryagent.
Locate service with right capabilities.
Orchestrate message-passing to invoke services.
Just-in-time integration of applications.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Applications in WS Architecture
Application Design
Describe capabilities of network services needed to performa function.
Describe the ‘orchestration’ of these collaborators.
Application Execution
Translate collaborator requirements into query to discoveryagent.
Locate service with right capabilities.
Orchestrate message-passing to invoke services.
Just-in-time integration of applications.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Applications in WS Architecture
Application Design
Describe capabilities of network services needed to performa function.
Describe the ‘orchestration’ of these collaborators.
Application Execution
Translate collaborator requirements into query to discoveryagent.
Locate service with right capabilities.
Orchestrate message-passing to invoke services.
Just-in-time integration of applications.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Applications in WS Architecture
Application Design
Describe capabilities of network services needed to performa function.
Describe the ‘orchestration’ of these collaborators.
Application Execution
Translate collaborator requirements into query to discoveryagent.
Locate service with right capabilities.
Orchestrate message-passing to invoke services.
Just-in-time integration of applications.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Applications in WS Architecture
Application Design
Describe capabilities of network services needed to performa function.
Describe the ‘orchestration’ of these collaborators.
Application Execution
Translate collaborator requirements into query to discoveryagent.
Locate service with right capabilities.
Orchestrate message-passing to invoke services.
Just-in-time integration of applications.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Concepts and Terminology
Following terminology about Web Services derived fromW3C Web Services Architecture (WS-Arch: W3C WGNote, 2004–2-11).
http://www.w3.org/TR/ws-arch/
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Concepts and Terminology
Following terminology about Web Services derived fromW3C Web Services Architecture (WS-Arch: W3C WGNote, 2004–2-11).
http://www.w3.org/TR/ws-arch/
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Web Services
A Web Service (WS) is:
a software system
designed to support interoperable machine-to-machineinteraction over a network;
its public interfaces are described in XML (e.g., WSDL);
other systems can interact with the WS as prescribed bythe interface description,
using XML-based (e.g., SOAP) messages.
WS Standards
WSDL (Web Service Description Language) and SOAP: W3CRecommendations; used widely but not universally.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Web Services
A Web Service (WS) is:
a software system
designed to support interoperable machine-to-machineinteraction over a network;
its public interfaces are described in XML (e.g., WSDL);
other systems can interact with the WS as prescribed bythe interface description,
using XML-based (e.g., SOAP) messages.
WS Standards
WSDL (Web Service Description Language) and SOAP: W3CRecommendations; used widely but not universally.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Web Services
A Web Service (WS) is:
a software system
designed to support interoperable machine-to-machineinteraction over a network;
its public interfaces are described in XML (e.g., WSDL);
other systems can interact with the WS as prescribed bythe interface description,
using XML-based (e.g., SOAP) messages.
WS Standards
WSDL (Web Service Description Language) and SOAP: W3CRecommendations; used widely but not universally.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Web Services
A Web Service (WS) is:
a software system
designed to support interoperable machine-to-machineinteraction over a network;
its public interfaces are described in XML (e.g., WSDL);
other systems can interact with the WS as prescribed bythe interface description,
using XML-based (e.g., SOAP) messages.
WS Standards
WSDL (Web Service Description Language) and SOAP: W3CRecommendations; used widely but not universally.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Web Services
A Web Service (WS) is:
a software system
designed to support interoperable machine-to-machineinteraction over a network;
its public interfaces are described in XML (e.g., WSDL);
other systems can interact with the WS as prescribed bythe interface description,
using XML-based (e.g., SOAP) messages.
WS Standards
WSDL (Web Service Description Language) and SOAP: W3CRecommendations; used widely but not universally.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Web Services
A Web Service (WS) is:
a software system
designed to support interoperable machine-to-machineinteraction over a network;
its public interfaces are described in XML (e.g., WSDL);
other systems can interact with the WS as prescribed bythe interface description,
using XML-based (e.g., SOAP) messages.
WS Standards
WSDL (Web Service Description Language) and SOAP: W3CRecommendations; used widely but not universally.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Web Services
A Web Service (WS) is:
a software system
designed to support interoperable machine-to-machineinteraction over a network;
its public interfaces are described in XML (e.g., WSDL);
other systems can interact with the WS as prescribed bythe interface description,
using XML-based (e.g., SOAP) messages.
WS Standards
WSDL (Web Service Description Language) and SOAP: W3CRecommendations; used widely but not universally.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Web Services
A Web Service (WS) is:
a software system
designed to support interoperable machine-to-machineinteraction over a network;
its public interfaces are described in XML (e.g., WSDL);
other systems can interact with the WS as prescribed bythe interface description,
using XML-based (e.g., SOAP) messages.
WS Standards
WSDL (Web Service Description Language) and SOAP: W3CRecommendations; used widely but not universally.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Web Services
A Web Service (WS) is:
a software system
designed to support interoperable machine-to-machineinteraction over a network;
its public interfaces are described in XML (e.g., WSDL);
other systems can interact with the WS as prescribed bythe interface description,
using XML-based (e.g., SOAP) messages.
WS Standards
WSDL (Web Service Description Language) and SOAP: W3CRecommendations; used widely but not universally.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Agents, Entities and Services
WS is intended to be an abstract notion.
Must be realized by a concrete piece of software—calledan agent by WS-Arch.
Agent can send and receive messages.Service is a resource defined by its functionality.Service can stay the same even though agent (i.e.,implementation) is changed.
Entity is individual or organization that requests orprovides a service.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Agents, Entities and Services
WS is intended to be an abstract notion.
Must be realized by a concrete piece of software—calledan agent by WS-Arch.
Agent can send and receive messages.Service is a resource defined by its functionality.Service can stay the same even though agent (i.e.,implementation) is changed.
Entity is individual or organization that requests orprovides a service.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Agents, Entities and Services
WS is intended to be an abstract notion.
Must be realized by a concrete piece of software—calledan agent by WS-Arch.
Agent can send and receive messages.
Service is a resource defined by its functionality.Service can stay the same even though agent (i.e.,implementation) is changed.
Entity is individual or organization that requests orprovides a service.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Agents, Entities and Services
WS is intended to be an abstract notion.
Must be realized by a concrete piece of software—calledan agent by WS-Arch.
Agent can send and receive messages.Service is a resource defined by its functionality.
Service can stay the same even though agent (i.e.,implementation) is changed.
Entity is individual or organization that requests orprovides a service.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Agents, Entities and Services
WS is intended to be an abstract notion.
Must be realized by a concrete piece of software—calledan agent by WS-Arch.
Agent can send and receive messages.Service is a resource defined by its functionality.Service can stay the same even though agent (i.e.,implementation) is changed.
Entity is individual or organization that requests orprovides a service.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Agents, Entities and Services
WS is intended to be an abstract notion.
Must be realized by a concrete piece of software—calledan agent by WS-Arch.
Agent can send and receive messages.Service is a resource defined by its functionality.Service can stay the same even though agent (i.e.,implementation) is changed.
Entity is individual or organization that requests orprovides a service.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Service Oriented Architecture (WS-Arch)
Agent Person or Organization
Message Meta-data
Service
realizes owns
signals describes
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Service Oriented Architecture:interact
/publish/locate
Requestor Agent
ClientProvider
Agent
Description
Service
interact
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Service Oriented Architecture:interact/publish/locate
Requestor Agent
ClientProvider
Agent
Description
Service
interact
Discovery Agent
publishlocate
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WS Use Casehttp://www.w3.org/2002/06/ws-example
Travel Agent offers customers ability to book completevacation package, e.g., plane tickets, hotel, car rental atdestination, excursions, etc.
Organizations offer WS that allow user to query servicesand make reservations.
Credit card agency provides WS to guarantee payment byconsumer.
Travel Agent doesn’t have/need a priori agreements withservice providers.
Only the vacationer is human; all other services aresoftware agents.
Assumes that agents share common concepts aboutFlight, EconomyClass, etc.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WS Use Casehttp://www.w3.org/2002/06/ws-example
Travel Agent offers customers ability to book completevacation package, e.g., plane tickets, hotel, car rental atdestination, excursions, etc.
Organizations offer WS that allow user to query servicesand make reservations.
Credit card agency provides WS to guarantee payment byconsumer.
Travel Agent doesn’t have/need a priori agreements withservice providers.
Only the vacationer is human; all other services aresoftware agents.
Assumes that agents share common concepts aboutFlight, EconomyClass, etc.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WS Use Casehttp://www.w3.org/2002/06/ws-example
Travel Agent offers customers ability to book completevacation package, e.g., plane tickets, hotel, car rental atdestination, excursions, etc.
Organizations offer WS that allow user to query servicesand make reservations.
Credit card agency provides WS to guarantee payment byconsumer.
Travel Agent doesn’t have/need a priori agreements withservice providers.
Only the vacationer is human; all other services aresoftware agents.
Assumes that agents share common concepts aboutFlight, EconomyClass, etc.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WS Use Casehttp://www.w3.org/2002/06/ws-example
Travel Agent offers customers ability to book completevacation package, e.g., plane tickets, hotel, car rental atdestination, excursions, etc.
Organizations offer WS that allow user to query servicesand make reservations.
Credit card agency provides WS to guarantee payment byconsumer.
Travel Agent doesn’t have/need a priori agreements withservice providers.
Only the vacationer is human; all other services aresoftware agents.
Assumes that agents share common concepts aboutFlight, EconomyClass, etc.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WS Use Casehttp://www.w3.org/2002/06/ws-example
Travel Agent offers customers ability to book completevacation package, e.g., plane tickets, hotel, car rental atdestination, excursions, etc.
Organizations offer WS that allow user to query servicesand make reservations.
Credit card agency provides WS to guarantee payment byconsumer.
Travel Agent doesn’t have/need a priori agreements withservice providers.
Only the vacationer is human; all other services aresoftware agents.
Assumes that agents share common concepts aboutFlight, EconomyClass, etc.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WS Use Casehttp://www.w3.org/2002/06/ws-example
Travel Agent offers customers ability to book completevacation package, e.g., plane tickets, hotel, car rental atdestination, excursions, etc.
Organizations offer WS that allow user to query servicesand make reservations.
Credit card agency provides WS to guarantee payment byconsumer.
Travel Agent doesn’t have/need a priori agreements withservice providers.
Only the vacationer is human; all other services aresoftware agents.
Assumes that agents share common concepts aboutFlight, EconomyClass, etc.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Travel Agent Use Case
Customer
Airline WS
Hotel WS
Travel AgentWSuses
books
books
Credit CardWS
gets payment
gets payment
gets payment
pays with
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Evolution of the WWW
WWW
HTTP, HTML, URI
syntactic semantic
static
dynamic
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Evolution of the WWW
WWW
HTTP, HTML, URI
Semantic Web
RDF(S), OWL
syntactic semantic
static
dynamic
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Evolution of the WWW
WWW
HTTP, HTML, URI
Web Services
SOAP, WSDL, UDDI
Semantic Web
RDF(S), OWL
syntactic semantic
static
dynamic
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
The Appeal of Web Services
A means of building distributed system across the internet.
Virtualization: independent of programming language, OS,development environment.
Based on well-understood underlying transportmechanisms (e.g., HTTP).
Components can be developed and upgradedindependently.
Fairly decentralized
(though issues about discovery,composition).
Probably not appropriate where a high level of fine-grainedinteraction is required.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
The Appeal of Web Services
A means of building distributed system across the internet.
Virtualization: independent of programming language, OS,development environment.
Based on well-understood underlying transportmechanisms (e.g., HTTP).
Components can be developed and upgradedindependently.
Fairly decentralized
(though issues about discovery,composition).
Probably not appropriate where a high level of fine-grainedinteraction is required.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
The Appeal of Web Services
A means of building distributed system across the internet.
Virtualization: independent of programming language, OS,development environment.
Based on well-understood underlying transportmechanisms (e.g., HTTP).
Components can be developed and upgradedindependently.
Fairly decentralized
(though issues about discovery,composition).
Probably not appropriate where a high level of fine-grainedinteraction is required.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
The Appeal of Web Services
A means of building distributed system across the internet.
Virtualization: independent of programming language, OS,development environment.
Based on well-understood underlying transportmechanisms (e.g., HTTP).
Components can be developed and upgradedindependently.
Fairly decentralized
(though issues about discovery,composition).
Probably not appropriate where a high level of fine-grainedinteraction is required.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
The Appeal of Web Services
A means of building distributed system across the internet.
Virtualization: independent of programming language, OS,development environment.
Based on well-understood underlying transportmechanisms (e.g., HTTP).
Components can be developed and upgradedindependently.
Fairly decentralized
(though issues about discovery,composition).
Probably not appropriate where a high level of fine-grainedinteraction is required.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
The Appeal of Web Services
A means of building distributed system across the internet.
Virtualization: independent of programming language, OS,development environment.
Based on well-understood underlying transportmechanisms (e.g., HTTP).
Components can be developed and upgradedindependently.
Fairly decentralized (though issues about discovery,composition).
Probably not appropriate where a high level of fine-grainedinteraction is required.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
The Appeal of Web Services
A means of building distributed system across the internet.
Virtualization: independent of programming language, OS,development environment.
Based on well-understood underlying transportmechanisms (e.g., HTTP).
Components can be developed and upgradedindependently.
Fairly decentralized (though issues about discovery,composition).
Probably not appropriate where a high level of fine-grainedinteraction is required.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Perspectives
A variety of different views on what’s happening (notmutually exclusive):
remote procedure call (RPC)business process within a workflowdialogue in multi-agent system
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Perspectives
A variety of different views on what’s happening (notmutually exclusive):
remote procedure call (RPC)
business process within a workflowdialogue in multi-agent system
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Perspectives
A variety of different views on what’s happening (notmutually exclusive):
remote procedure call (RPC)business process within a workflow
dialogue in multi-agent system
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Perspectives
A variety of different views on what’s happening (notmutually exclusive):
remote procedure call (RPC)business process within a workflowdialogue in multi-agent system
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
RPC Concepts
RPC is a protocol to allow agent on one host to causeexecution of code on remote host.
Uses client-server model of distributed computation:
Client sends message to server
[execute] procedure P with arguments a1, . . . , an
Server executes P, and sends message back to client
result [of executing P(a1, . . . , an)]
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
RPC Concepts
RPC is a protocol to allow agent on one host to causeexecution of code on remote host.
Uses client-server model of distributed computation:
Client sends message to server
[execute] procedure P with arguments a1, . . . , an
Server executes P, and sends message back to client
result [of executing P(a1, . . . , an)]
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
RPC Concepts
RPC is a protocol to allow agent on one host to causeexecution of code on remote host.
Uses client-server model of distributed computation:
Client sends message to server
[execute] procedure P with arguments a1, . . . , an
Server executes P, and sends message back to client
result [of executing P(a1, . . . , an)]
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
RPC Concepts
RPC is a protocol to allow agent on one host to causeexecution of code on remote host.
Uses client-server model of distributed computation:
Client sends message to server
[execute] procedure P with arguments a1, . . . , an
Server executes P, and sends message back to client
result [of executing P(a1, . . . , an)]
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
RPC Concepts
RPC is a protocol to allow agent on one host to causeexecution of code on remote host.
Uses client-server model of distributed computation:
Client sends message to server
[execute] procedure P with arguments a1, . . . , an
Server executes P, and sends message back to client
result [of executing P(a1, . . . , an)]
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
RPC Concepts
RPC is a protocol to allow agent on one host to causeexecution of code on remote host.
Uses client-server model of distributed computation:
Client sends message to server
[execute] procedure P with arguments a1, . . . , an
Server executes P, and sends message back to client
result [of executing P(a1, . . . , an)]
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Protocols and Endpoints
Protocol
Convention that govern syntax, semantics, and synchronizationof communication between two computing ‘endpoints’.Enables/controls connection, communication, data transfer.
Endpoint
Endpoint is “an entity, processor, or resource to which. . . messages can be addressed”.
Endpoint Reference
Conveys the information needed to address an endpoint.Interactions may create new service instances, hence a need todynamically create new endpoint references.(cf. http://www.w3.org/TR/ws-addr-core)
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Protocols and Endpoints
Protocol
Convention that govern syntax, semantics, and synchronizationof communication between two computing ‘endpoints’.Enables/controls connection, communication, data transfer.
Endpoint
Endpoint is “an entity, processor, or resource to which. . . messages can be addressed”.
Endpoint Reference
Conveys the information needed to address an endpoint.Interactions may create new service instances, hence a need todynamically create new endpoint references.(cf. http://www.w3.org/TR/ws-addr-core)
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Protocols and Endpoints
Protocol
Convention that govern syntax, semantics, and synchronizationof communication between two computing ‘endpoints’.Enables/controls connection, communication, data transfer.
Endpoint
Endpoint is “an entity, processor, or resource to which. . . messages can be addressed”.
Endpoint Reference
Conveys the information needed to address an endpoint.Interactions may create new service instances, hence a need todynamically create new endpoint references.(cf. http://www.w3.org/TR/ws-addr-core)
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
RPC Example
Assume Hotel Splendide is making room reservationsavailable as a WS.
Requires a function checkAvailability which takes thecheck-in, check-out dates and room type as inputparameters, and returns the price in US$ as a floatingpoint number.
Example Function
checkAvailability :: (Date, Date, String) -> FloatcheckAvailability checkinDate checkoutDate roomType| ’room rate in USD if available’| 0.0
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
RPC Example
Assume Hotel Splendide is making room reservationsavailable as a WS.
Requires a function checkAvailability which takes thecheck-in, check-out dates and room type as inputparameters, and returns the price in US$ as a floatingpoint number.
Example Function
checkAvailability :: (Date, Date, String) -> FloatcheckAvailability checkinDate checkoutDate roomType| ’room rate in USD if available’| 0.0
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
RPC Example
Assume Hotel Splendide is making room reservationsavailable as a WS.
Requires a function checkAvailability which takes thecheck-in, check-out dates and room type as inputparameters, and returns the price in US$ as a floatingpoint number.
Example Function
checkAvailability :: (Date, Date, String) -> FloatcheckAvailability checkinDate checkoutDate roomType| ’room rate in USD if available’| 0.0
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WS Metadata
Two kinds of metadata about services:
Non-operational
service category (e.g., hotel roombooking)informal descriptioninformation about provider entity(name, contact details)
Operational
service interfacecommunication protocolservice endpoint
Operational metadata is standardly expressed using WebService Description Language (WSDL)
http://www.w3.org/TR/wsdl20-primer
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WS Metadata
Two kinds of metadata about services:
Non-operational
service category (e.g., hotel roombooking)informal descriptioninformation about provider entity(name, contact details)
Operational
service interfacecommunication protocolservice endpoint
Operational metadata is standardly expressed using WebService Description Language (WSDL)
http://www.w3.org/TR/wsdl20-primer
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WS Metadata
Two kinds of metadata about services:
Non-operational
service category (e.g., hotel roombooking)
informal descriptioninformation about provider entity(name, contact details)
Operational
service interfacecommunication protocolservice endpoint
Operational metadata is standardly expressed using WebService Description Language (WSDL)
http://www.w3.org/TR/wsdl20-primer
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WS Metadata
Two kinds of metadata about services:
Non-operational
service category (e.g., hotel roombooking)informal description
information about provider entity(name, contact details)
Operational
service interfacecommunication protocolservice endpoint
Operational metadata is standardly expressed using WebService Description Language (WSDL)
http://www.w3.org/TR/wsdl20-primer
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WS Metadata
Two kinds of metadata about services:
Non-operational
service category (e.g., hotel roombooking)informal descriptioninformation about provider entity(name, contact details)
Operational
service interfacecommunication protocolservice endpoint
Operational metadata is standardly expressed using WebService Description Language (WSDL)
http://www.w3.org/TR/wsdl20-primer
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WS Metadata
Two kinds of metadata about services:
Non-operational
service category (e.g., hotel roombooking)informal descriptioninformation about provider entity(name, contact details)
Operational
service interfacecommunication protocolservice endpoint
Operational metadata is standardly expressed using WebService Description Language (WSDL)
http://www.w3.org/TR/wsdl20-primer
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WS Metadata
Two kinds of metadata about services:
Non-operational
service category (e.g., hotel roombooking)informal descriptioninformation about provider entity(name, contact details)
Operational
service interface
communication protocolservice endpoint
Operational metadata is standardly expressed using WebService Description Language (WSDL)
http://www.w3.org/TR/wsdl20-primer
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WS Metadata
Two kinds of metadata about services:
Non-operational
service category (e.g., hotel roombooking)informal descriptioninformation about provider entity(name, contact details)
Operational
service interfacecommunication protocol
service endpoint
Operational metadata is standardly expressed using WebService Description Language (WSDL)
http://www.w3.org/TR/wsdl20-primer
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WS Metadata
Two kinds of metadata about services:
Non-operational
service category (e.g., hotel roombooking)informal descriptioninformation about provider entity(name, contact details)
Operational
service interfacecommunication protocolservice endpoint
Operational metadata is standardly expressed using WebService Description Language (WSDL)
http://www.w3.org/TR/wsdl20-primer
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WS Metadata
Two kinds of metadata about services:
Non-operational
service category (e.g., hotel roombooking)informal descriptioninformation about provider entity(name, contact details)
Operational
service interfacecommunication protocolservice endpoint
Operational metadata is standardly expressed using WebService Description Language (WSDL)
http://www.w3.org/TR/wsdl20-primer
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WS Metadata
Two kinds of metadata about services:
Non-operational
service category (e.g., hotel roombooking)informal descriptioninformation about provider entity(name, contact details)
Operational
service interfacecommunication protocolservice endpoint
Operational metadata is standardly expressed using WebService Description Language (WSDL)
http://www.w3.org/TR/wsdl20-primer
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WSDL 2.0 Structure
targetNamespacedescription
types
nameinterface
namebinding
nameinterface
service
nameoperation
nameelement
input
nameelement
output
namebindingaddress
endpoint1 *
1 *
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WSDL Interface
Example of WSDL Interface
<interface name = "reservationInterface" ><operation name="checkAvailability""><input messageLabel="In"
element="CheckAvailability"/><output messageLabel="Out"
element="CheckAvailabilityResponse"/></operation>
</interface>
element=”CheckAvailability” specifies the message type.
Where does this get defined?
In the types section of the WSDL document.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WSDL Interface
Example of WSDL Interface
<interface name = "reservationInterface" ><operation name="checkAvailability""><input messageLabel="In"
element="CheckAvailability"/><output messageLabel="Out"
element="CheckAvailabilityResponse"/></operation>
</interface>
element=”CheckAvailability” specifies the message type.
Where does this get defined?
In the types section of the WSDL document.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WSDL Interface
Example of WSDL Interface
<interface name = "reservationInterface" ><operation name="checkAvailability""><input messageLabel="In"
element="CheckAvailability"/><output messageLabel="Out"
element="CheckAvailabilityResponse"/></operation>
</interface>
element=”CheckAvailability” specifies the message type.
Where does this get defined?
In the types section of the WSDL document.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WSDL Interface
Example of WSDL Interface
<interface name = "reservationInterface" ><operation name="checkAvailability""><input messageLabel="In"
element="CheckAvailability"/><output messageLabel="Out"
element="CheckAvailabilityResponse"/></operation>
</interface>
element=”CheckAvailability” specifies the message type.
Where does this get defined?
In the types section of the WSDL document.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WSDL Interface
Example of WSDL Interface
<interface name = "reservationInterface" ><operation name="checkAvailability""><input messageLabel="In"
element="CheckAvailability"/><output messageLabel="Out"
element="CheckAvailabilityResponse"/></operation>
</interface>
element=”CheckAvailability” specifies the message type.
Where does this get defined?
In the types section of the WSDL document.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WSDL Types
Use XML Schema to define types; should be supported byall WSDL 2.0 processors.
But WSDL 2.0 allows the use of other schema definitionlanguages.
Example of WSDL Type Definition<types>
<xs:element name="checkAvailability" type="tCheckAvailability"/>
<xs:complexType name="tCheckAvailability">
<xs:sequence>
<xs:element name="checkInDate" type="xs:date"/>
<xs:element name="checkOutDate" type="xs:date"/>
<xs:element name="roomType" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="checkAvailabilityResponse" type="xs:double"/>
</types>
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WSDL Types
Use XML Schema to define types; should be supported byall WSDL 2.0 processors.
But WSDL 2.0 allows the use of other schema definitionlanguages.
Example of WSDL Type Definition<types>
<xs:element name="checkAvailability" type="tCheckAvailability"/>
<xs:complexType name="tCheckAvailability">
<xs:sequence>
<xs:element name="checkInDate" type="xs:date"/>
<xs:element name="checkOutDate" type="xs:date"/>
<xs:element name="roomType" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="checkAvailabilityResponse" type="xs:double"/>
</types>
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WSDL Types
Use XML Schema to define types; should be supported byall WSDL 2.0 processors.
But WSDL 2.0 allows the use of other schema definitionlanguages.
Example of WSDL Type Definition<types>
<xs:element name="checkAvailability" type="tCheckAvailability"/>
<xs:complexType name="tCheckAvailability">
<xs:sequence>
<xs:element name="checkInDate" type="xs:date"/>
<xs:element name="checkOutDate" type="xs:date"/>
<xs:element name="roomType" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="checkAvailabilityResponse" type="xs:double"/>
</types>
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Binding
WSDL interface and types specifies what abstractmessages can be exchanged with the service.
binding specifies how the messages are exchanged:
gives concrete message format and transmission protocolfor interface and operations.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Binding
WSDL interface and types specifies what abstractmessages can be exchanged with the service.
binding specifies how the messages are exchanged:
gives concrete message format and transmission protocolfor interface and operations.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Binding
WSDL interface and types specifies what abstractmessages can be exchanged with the service.
binding specifies how the messages are exchanged:
gives concrete message format and transmission protocolfor interface and operations.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WSDL Binding
Example of WSDL Binding<binding name="reservationSOAPBinding"
interface="reservationInterface"
type="http://www.w3.org/2006/01/wsdl/soap"
protocol="http://www.w3.org/2003/05/soap/bindings/HTTP">
<operation ref="CheckAvailability"
mep="http://www.w3.org/2003/05/soap/mep/soap-response"/>
</binding>
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WSDL Binding
Example of WSDL Binding<binding name="reservationSOAPBinding"
interface="reservationInterface"
type="http://www.w3.org/2006/01/wsdl/soap"
protocol="http://www.w3.org/2003/05/soap/bindings/HTTP">
<operation ref="CheckAvailability"
mep="http://www.w3.org/2003/05/soap/mep/soap-response"/>
</binding>
use SOAP 1.2 message format
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WSDL Binding
Example of WSDL Binding<binding name="reservationSOAPBinding"
interface="reservationInterface"
type="http://www.w3.org/2006/01/wsdl/soap"
protocol="http://www.w3.org/2003/05/soap/bindings/HTTP">
<operation ref="CheckAvailability"
mep="http://www.w3.org/2003/05/soap/mep/soap-response"/>
</binding>
use HTTP transmission protocol
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WSDL Binding
Example of WSDL Binding<binding name="reservationSOAPBinding"
interface="reservationInterface"
type="http://www.w3.org/2006/01/wsdl/soap"
protocol="http://www.w3.org/2003/05/soap/bindings/HTTP">
<operation ref="CheckAvailability"
mep="http://www.w3.org/2003/05/soap/mep/soap-response"/>
</binding>
use SOAP’s Message Exchange Pattern to implement theoperation’s abstract pattern (e.g., in-out).
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WSDL Service
The WSDL service element specifies where the service canbe accessed.
Specifies a single interface that the service will supportand a list of endpoint locations.
Endpoints must reference the binding to be used.
Example of WSDL Service<binding name="reservationSOAPBinding"
interface="reservationInterface">
. . .
</binding>
<service name="reservationService"
interface="reservationInterface">
<endpoint name="reservationEndpoint"
binding="reservationSOAPBinding"
address ="http://splendide.com/reservation"/>
</service>
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WSDL Service
The WSDL service element specifies where the service canbe accessed.
Specifies a single interface that the service will supportand a list of endpoint locations.
Endpoints must reference the binding to be used.
Example of WSDL Service<binding name="reservationSOAPBinding"
interface="reservationInterface">
. . .
</binding>
<service name="reservationService"
interface="reservationInterface">
<endpoint name="reservationEndpoint"
binding="reservationSOAPBinding"
address ="http://splendide.com/reservation"/>
</service>
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WSDL Service
The WSDL service element specifies where the service canbe accessed.
Specifies a single interface that the service will supportand a list of endpoint locations.
Endpoints must reference the binding to be used.
Example of WSDL Service<binding name="reservationSOAPBinding"
interface="reservationInterface">
. . .
</binding>
<service name="reservationService"
interface="reservationInterface">
<endpoint name="reservationEndpoint"
binding="reservationSOAPBinding"
address ="http://splendide.com/reservation"/>
</service>
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WSDL Service
The WSDL service element specifies where the service canbe accessed.
Specifies a single interface that the service will supportand a list of endpoint locations.
Endpoints must reference the binding to be used.
Example of WSDL Service<binding name="reservationSOAPBinding"
interface="reservationInterface">
. . .
</binding>
<service name="reservationService"
interface="reservationInterface">
<endpoint name="reservationEndpoint"
binding="reservationSOAPBinding"
address ="http://splendide.com/reservation"/>
</service>
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WSDL Service
The WSDL service element specifies where the service canbe accessed.
Specifies a single interface that the service will supportand a list of endpoint locations.
Endpoints must reference the binding to be used.
Example of WSDL Service<binding name="reservationSOAPBinding"
interface="reservationInterface">
. . .
</binding>
<service name="reservationService"
interface="reservationInterface">
<endpoint name="reservationEndpoint"
binding="reservationSOAPBinding"
address ="http://splendide.com/reservation"/>
</service>
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
WSDL Service
The WSDL service element specifies where the service canbe accessed.
Specifies a single interface that the service will supportand a list of endpoint locations.
Endpoints must reference the binding to be used.
Example of WSDL Service<binding name="reservationSOAPBinding"
interface="reservationInterface">
. . .
</binding>
<service name="reservationService"
interface="reservationInterface">
<endpoint name="reservationEndpoint"
binding="reservationSOAPBinding"
address ="http://splendide.com/reservation"/>
</service>
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Service Discovery
The ‘standard’ solution uses UDDI Repositories (supportedby OASIS)
UDDI = Universal Description, Discovery, and Integration
Original vision was a universal yellow pages for e-Businessservices.
Services are categorized using a flattish taxonomy; searchis by category and keyword.
But take-up has been low, and focus has moved tosupporting private registries.
UDDI.org White Paper: The Evolution of UDDI
... most of today’s web service applications are not intended forpublic use, but rather inside organizations or among existing,trusted business partners.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Service Discovery
The ‘standard’ solution uses UDDI Repositories (supportedby OASIS)
UDDI = Universal Description, Discovery, and Integration
Original vision was a universal yellow pages for e-Businessservices.
Services are categorized using a flattish taxonomy; searchis by category and keyword.
But take-up has been low, and focus has moved tosupporting private registries.
UDDI.org White Paper: The Evolution of UDDI
... most of today’s web service applications are not intended forpublic use, but rather inside organizations or among existing,trusted business partners.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Service Discovery
The ‘standard’ solution uses UDDI Repositories (supportedby OASIS)
UDDI = Universal Description, Discovery, and Integration
Original vision was a universal yellow pages for e-Businessservices.
Services are categorized using a flattish taxonomy; searchis by category and keyword.
But take-up has been low, and focus has moved tosupporting private registries.
UDDI.org White Paper: The Evolution of UDDI
... most of today’s web service applications are not intended forpublic use, but rather inside organizations or among existing,trusted business partners.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Service Discovery
The ‘standard’ solution uses UDDI Repositories (supportedby OASIS)
UDDI = Universal Description, Discovery, and Integration
Original vision was a universal yellow pages for e-Businessservices.
Services are categorized using a flattish taxonomy; searchis by category and keyword.
But take-up has been low, and focus has moved tosupporting private registries.
UDDI.org White Paper: The Evolution of UDDI
... most of today’s web service applications are not intended forpublic use, but rather inside organizations or among existing,trusted business partners.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Service Discovery
The ‘standard’ solution uses UDDI Repositories (supportedby OASIS)
UDDI = Universal Description, Discovery, and Integration
Original vision was a universal yellow pages for e-Businessservices.
Services are categorized using a flattish taxonomy; searchis by category and keyword.
But take-up has been low, and focus has moved tosupporting private registries.
UDDI.org White Paper: The Evolution of UDDI
... most of today’s web service applications are not intended forpublic use, but rather inside organizations or among existing,trusted business partners.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Service Discovery
The ‘standard’ solution uses UDDI Repositories (supportedby OASIS)
UDDI = Universal Description, Discovery, and Integration
Original vision was a universal yellow pages for e-Businessservices.
Services are categorized using a flattish taxonomy; searchis by category and keyword.
But take-up has been low, and focus has moved tosupporting private registries.
UDDI.org White Paper: The Evolution of UDDI
... most of today’s web service applications are not intended forpublic use, but rather inside organizations or among existing,trusted business partners.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Composition
Recall just-in-time integration of applications.
Automatic composition of service-based applications ismore vision than reality.
Some tool support for manual or semi-manualcomposition.
Composition raises issues about discovery and description;
to be continued in later lectures.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Composition
Recall just-in-time integration of applications.
Automatic composition of service-based applications ismore vision than reality.
Some tool support for manual or semi-manualcomposition.
Composition raises issues about discovery and description;
to be continued in later lectures.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Composition
Recall just-in-time integration of applications.
Automatic composition of service-based applications ismore vision than reality.
Some tool support for manual or semi-manualcomposition.
Composition raises issues about discovery and description;
to be continued in later lectures.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Composition
Recall just-in-time integration of applications.
Automatic composition of service-based applications ismore vision than reality.
Some tool support for manual or semi-manualcomposition.
Composition raises issues about discovery and description;
to be continued in later lectures.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Composition
Recall just-in-time integration of applications.
Automatic composition of service-based applications ismore vision than reality.
Some tool support for manual or semi-manualcomposition.
Composition raises issues about discovery and description;
to be continued in later lectures.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Evolution of the WWW
WWW
HTTP, HTML, URI
Web Services
SOAP, WSDL, UDDI
Semantic Web
RDF(S), OWL
Semantic Web Services
OWL-S, WSDL-S, WSMO
syntactic semantic
static
dynamic
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Conclusion
SOA can be seen as evolution of Object Orientedapproach.
Web Services are ‘big business’: lots of commercialinvolvement, lots of standardization activity.
But little deployment to date of SOA across the Internet.WS are primarily used within organizations:
Commercial organizations (maybe with trusted partners)Virtual organizations within Grid computing.
Other WS tend to be ‘one-shot’; cf. Amazon, Google, etc.WSDL plays a crucial role in describing services:
interface and associated operations give an abstractspecification of the service;binding and service endpoint show how to invoke theconcrete service.
WSDL adopts an RPC view of service, in terms of inputand output types of the constituent operations.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Conclusion
SOA can be seen as evolution of Object Orientedapproach.
Web Services are ‘big business’: lots of commercialinvolvement, lots of standardization activity.
But little deployment to date of SOA across the Internet.WS are primarily used within organizations:
Commercial organizations (maybe with trusted partners)Virtual organizations within Grid computing.
Other WS tend to be ‘one-shot’; cf. Amazon, Google, etc.WSDL plays a crucial role in describing services:
interface and associated operations give an abstractspecification of the service;binding and service endpoint show how to invoke theconcrete service.
WSDL adopts an RPC view of service, in terms of inputand output types of the constituent operations.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Conclusion
SOA can be seen as evolution of Object Orientedapproach.
Web Services are ‘big business’: lots of commercialinvolvement, lots of standardization activity.
But little deployment to date of SOA across the Internet.
WS are primarily used within organizations:
Commercial organizations (maybe with trusted partners)Virtual organizations within Grid computing.
Other WS tend to be ‘one-shot’; cf. Amazon, Google, etc.WSDL plays a crucial role in describing services:
interface and associated operations give an abstractspecification of the service;binding and service endpoint show how to invoke theconcrete service.
WSDL adopts an RPC view of service, in terms of inputand output types of the constituent operations.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Conclusion
SOA can be seen as evolution of Object Orientedapproach.
Web Services are ‘big business’: lots of commercialinvolvement, lots of standardization activity.
But little deployment to date of SOA across the Internet.WS are primarily used within organizations:
Commercial organizations (maybe with trusted partners)Virtual organizations within Grid computing.
Other WS tend to be ‘one-shot’; cf. Amazon, Google, etc.WSDL plays a crucial role in describing services:
interface and associated operations give an abstractspecification of the service;binding and service endpoint show how to invoke theconcrete service.
WSDL adopts an RPC view of service, in terms of inputand output types of the constituent operations.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Conclusion
SOA can be seen as evolution of Object Orientedapproach.
Web Services are ‘big business’: lots of commercialinvolvement, lots of standardization activity.
But little deployment to date of SOA across the Internet.WS are primarily used within organizations:
Commercial organizations (maybe with trusted partners)
Virtual organizations within Grid computing.
Other WS tend to be ‘one-shot’; cf. Amazon, Google, etc.WSDL plays a crucial role in describing services:
interface and associated operations give an abstractspecification of the service;binding and service endpoint show how to invoke theconcrete service.
WSDL adopts an RPC view of service, in terms of inputand output types of the constituent operations.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Conclusion
SOA can be seen as evolution of Object Orientedapproach.
Web Services are ‘big business’: lots of commercialinvolvement, lots of standardization activity.
But little deployment to date of SOA across the Internet.WS are primarily used within organizations:
Commercial organizations (maybe with trusted partners)Virtual organizations within Grid computing.
Other WS tend to be ‘one-shot’; cf. Amazon, Google, etc.WSDL plays a crucial role in describing services:
interface and associated operations give an abstractspecification of the service;binding and service endpoint show how to invoke theconcrete service.
WSDL adopts an RPC view of service, in terms of inputand output types of the constituent operations.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Conclusion
SOA can be seen as evolution of Object Orientedapproach.
Web Services are ‘big business’: lots of commercialinvolvement, lots of standardization activity.
But little deployment to date of SOA across the Internet.WS are primarily used within organizations:
Commercial organizations (maybe with trusted partners)Virtual organizations within Grid computing.
Other WS tend to be ‘one-shot’; cf. Amazon, Google, etc.
WSDL plays a crucial role in describing services:
interface and associated operations give an abstractspecification of the service;binding and service endpoint show how to invoke theconcrete service.
WSDL adopts an RPC view of service, in terms of inputand output types of the constituent operations.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Conclusion
SOA can be seen as evolution of Object Orientedapproach.
Web Services are ‘big business’: lots of commercialinvolvement, lots of standardization activity.
But little deployment to date of SOA across the Internet.WS are primarily used within organizations:
Commercial organizations (maybe with trusted partners)Virtual organizations within Grid computing.
Other WS tend to be ‘one-shot’; cf. Amazon, Google, etc.WSDL plays a crucial role in describing services:
interface and associated operations give an abstractspecification of the service;binding and service endpoint show how to invoke theconcrete service.
WSDL adopts an RPC view of service, in terms of inputand output types of the constituent operations.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Conclusion
SOA can be seen as evolution of Object Orientedapproach.
Web Services are ‘big business’: lots of commercialinvolvement, lots of standardization activity.
But little deployment to date of SOA across the Internet.WS are primarily used within organizations:
Commercial organizations (maybe with trusted partners)Virtual organizations within Grid computing.
Other WS tend to be ‘one-shot’; cf. Amazon, Google, etc.WSDL plays a crucial role in describing services:
interface and associated operations give an abstractspecification of the service;
binding and service endpoint show how to invoke theconcrete service.
WSDL adopts an RPC view of service, in terms of inputand output types of the constituent operations.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Conclusion
SOA can be seen as evolution of Object Orientedapproach.
Web Services are ‘big business’: lots of commercialinvolvement, lots of standardization activity.
But little deployment to date of SOA across the Internet.WS are primarily used within organizations:
Commercial organizations (maybe with trusted partners)Virtual organizations within Grid computing.
Other WS tend to be ‘one-shot’; cf. Amazon, Google, etc.WSDL plays a crucial role in describing services:
interface and associated operations give an abstractspecification of the service;binding and service endpoint show how to invoke theconcrete service.
WSDL adopts an RPC view of service, in terms of inputand output types of the constituent operations.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Conclusion
SOA can be seen as evolution of Object Orientedapproach.
Web Services are ‘big business’: lots of commercialinvolvement, lots of standardization activity.
But little deployment to date of SOA across the Internet.WS are primarily used within organizations:
Commercial organizations (maybe with trusted partners)Virtual organizations within Grid computing.
Other WS tend to be ‘one-shot’; cf. Amazon, Google, etc.WSDL plays a crucial role in describing services:
interface and associated operations give an abstractspecification of the service;binding and service endpoint show how to invoke theconcrete service.
WSDL adopts an RPC view of service, in terms of inputand output types of the constituent operations.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
DIY
Accessing WS is pretty straightforward
You’ve already done it!
Even with SOAP-based services, there are easy-to-useclient libraries.
Writing WSDL interfaces and publishing WS is harder —you have to be strongly motivated.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
DIY
Accessing WS is pretty straightforward
You’ve already done it!
Even with SOAP-based services, there are easy-to-useclient libraries.
Writing WSDL interfaces and publishing WS is harder —you have to be strongly motivated.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
DIY
Accessing WS is pretty straightforward
You’ve already done it!
Even with SOAP-based services, there are easy-to-useclient libraries.
Writing WSDL interfaces and publishing WS is harder —you have to be strongly motivated.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
DIY
Accessing WS is pretty straightforward
You’ve already done it!
Even with SOAP-based services, there are easy-to-useclient libraries.
Writing WSDL interfaces and publishing WS is harder —you have to be strongly motivated.
Multi-agentSemantic Web
Systems:WS Intro
Ewan Klein
Outline
Overview
Anatomy ofWS
RPC
Description
Discovery
Composition
Semantic WS?
Conclusion
Reading
Read Chapter 8 of Passin (but talks about WSDL 1.0 —some syntactic differences with WSDL 2.0).
And have a look at http://www.xmethods.net/ forsome publicly available WS.