SlideShare uma empresa Scribd logo
1 de 26
Web Services (NSWI145)
Lecture 08: WS Addressing, WS Notification
Martin Nečaský, Ph.D.
Faculty of Mathematics and Physics
Charles University in Prague, Czech Republic
Summer 2013
WS-*
 family of complementary Web service
technologies
 in this lecture
 W3C Web Services Addressing Working Group:
• WS-Addressing
Summer 2013
WS-Addressing
 W3C Web Services Addressing Working Group
 completed and closed on 5 Sep 2007
 http://www.w3.org/2002/ws/addr/
 motivation
 standard way to include information about
message sender and receiver, how to return
message response in message itself
Summer 2013
WS-Addressing
 consists of three W3C recommendations
 WS Addressing 1.0 – Core
• endpoint references and message addressing properties
• namespace URI
http://www.w3.org/2005/08/addressing (usual
prefix wsa)
 WS Addressing 1.0 – SOAP Binding
 WS Addressing 1.0 – Metadata
• binding endpoint references to WSDL metadata
• how message addressing properties are described using WSDL
• how WS-Policy can be used to indicate support for WS-Addressing
• namespace URI
http://www.w3.org/2007/05/addressing/metadata
(usual prefix wsam)
Summer 2013
Endpoint References
 informally
 endpoint is a referable entity, process or resource to
which messages can be addressed
 endpoint reference provides information needed to
address endpoint
 can be part of service interface description or created
dynamically (e.g. in SOAP messages, BPEL scripts, ...)
 formally
 endpoint is a collection of abstract properties
 WS-Addressing defines a core set of properties which
can be extended by other specifications
Summer 2013
Endpoint References
Summer 2013
 element wsa:EndpointReference
 defines endpoint reference
 can be used by any other WS standard
• WS-Addressing Core does not specify where element
can be used
• used, e.g., in BPEL 2.0
<wsa:EndpointReference
xmlns:wsa="http://www.w3.org/2005/08/addressing">
</wsa:EndpointReference>
Endpoint References
Summer 2013
 complex type
wsa:EndpointReferenceType
 type of wsa:EndpointReference
 can be used by any other WS standard
• used, e.g., in SOAP headers
 sequence of elements
• wsa:Address
• wsa:ReferenceParameters
• wsa:Metadata
Endpoint References
Summer 2013
 element wsa:Address
 required
 absolute IRI representing endpoint address
 two predefined values
• wsa:anonymous : for endpoints without address
• wsa:none : for endpoints which discard messages
<wsa:EndpointReference>
<wsa:Address>
http://gd/TripleStore/services/TripleStoreWS
</wsa:Address>
</wsa:EndpointReference>
Endpoint References
Summer 2013
 element wsa:ReferenceParameters
 optional
 list of individual parameters associated with endpoint
required to properly interact with endpoint
• they are not ordered
• in case of SOAP as transfer protocol, they determine headers
required by endpoint
<wsa:EndpointReference>
<wsa:ReferenceParameters>
...
</wsa:ReferenceParameters>
</wsa:EndpointReference>
Endpoint References
Summer 2013
 element wsa:Metadata
 optional
 list of meta-properties which describe endpoint
behavior, policies and capabilities
 not necessarily full list of all endpoint metadata
<wsa:EndpointReference>
<wsa:Metadata>
...
</wsa:Metadata>
</wsa:EndpointReference>
Endpoint References
 WS Addressing Metadata introduces specific
meta-properties which specify binding to WSDL
 element wsam:InterfaceName
• WSDL2.0 interface name or WSDL1.1 port type name
 element wsam:ServiceName
• WSDL2.0 service name or WSDL1.1 service name
• attribute EndpointName
– WSDL2.0 endpoint name or WSDL1.1 port name
 it is possible to use WSDL2.0 attribute
wsdlLocation of wsa:Metadata element
• from http://www.w3.org/ns/wsdl-instance namespace
• URI where WSDL description is located
Summer 2013
Endpoint References
Summer 2013
<wsa:EndpointReference>
<wsa:Metadata
xmlns:wsdli="http://www.w3.org/ns/wsdl-instance"
xmlns:tsi=
"http://opendata.cz/Infrastructure/TripleStore/iface#"
wsdli:wsdlLocation=
"http://opendata.cz/Infrastructure/TripleStore/iface#
http://gd/TripleStore/services/TripleStoreWS?wsdl">
<wsam:InterfaceName>
tsi:TripleStoreWSPortType
</wsam:InterfaceName>
<wsam:ServiceName EndpointName="tsi:TripleStoreWS">
tsi:TripleStore
</wsam:ServiceName>
</wsa:Metadata>
</wsa:EndpointReference>
Message Addressing Properties
 part of message
 in case of SOAP = SOAP headers
Summer 2013
Message Addressing Properties
 element wsa:To
 optional
 value is xs:anyURI
 absolute URI representing address of intended message receiver
 element wsa:From
 optional
 value wsa:EndpointReferenceType
 endpoint from which message originated
 element wsa:ReplyTo
 optional
 value wsa:EndpointReferenceType
 endpoint for intended receiver of replies to this message
 element wsa:FaultTo
 optional
 value wsa:EndpointReferenceType
 endpoint for intended receiver of faults related to this message
Summer 2013
Message Addressing Properties
Summer 2013
<soap:Envelope
xmlns:soap="http://www.w3.org/2003/05/soap-envelope"
xmlns:wsa="http://www.w3.org/2005/08/addressing"
xmlns:auc="http://example.org/auction">
<soap:Header>
<wsa:To>http://gd/Entity/services/PublicContract</wsa:To>
<wsa:ReplyTo>
<wsa:Address>
http://example.org/auction/replyConsumer
</wsa:Address>
<wsa:ReferenceParameters>
<auc:number>2011107152334-0322</auc:number>
</wsa:ReferenceParameters>
</wsa:ReplyTo>
</soap:Header>
</soap:Envelope>
Message Addressing Properties
Summer 2013
<soap:Envelope
xmlns:soap="http://www.w3.org/2003/05/soap-envelope"
xmlns:wsa="http://www.w3.org/2005/08/addressing"
xmlns:auc="http://example.org/auction">
<soap:Header>
<auc:number>2011107152334-0322</auc:number>
</soap:Header>
</soap:Envelope>
Message Addressing Properties
 element wsa:Action
 mandatory
 value is xs:anyURI
 absolute URI uniquely identifying semantics implied by
message
 URI should identify input, output or fault message within
WSDL 1.1 port type or WSDL 2.0 interface
• identification assigned to message with
wsaw:Action attribute of wsdl:input,
wsdl:output or wsdl:fault elements
• wsaw:Action introduced in WS Addressing 1.0
Metadata
Summer 2013
Message Addressing Properties
Summer 2013
<soap:Envelope xmlns:soap="..." xmlns:wsa="...">
<soap:Header>
<wsa:Action>
http://opendata.cz/.../iface#opGetPublicContract
</wsa:Action>
</soap:Header>
</soap:Envelope>
<wsdl:definitions xmlns:wsdl="..." xmlns:wsa="..." srv="...">
<wsdl:portType name="PublicContractPortType">
<wsdl:operation name="GetPublicContractRDF">
<wsdl:input message="srv:GetPublicContractRequest"
wsaw:Action="http://opendata.cz/.../iface#opGetPublicContract" />
<wsdl:output message="srv:GetPublicContractResponse"
wsaw:Action="http://opendata.cz/.../iface#opGetPublicContractResp" />
</wsdl:operation>
</wsdl:portType>
</wsdl:definitions>
Message Addressing Properties
 element wsa:MessageID
 optional
 value is xs:anyURI
 absolute IRI uniquely identifying message
 uniqueness is responsibility of sender, receiver’s behavior in
case of duplicated IDs is not specified
 element wsa:RelatesTo
 optional
 value is xs:anyURI
 ID of a message related to this message
 relationship type specified by attribute RelationshipType
• default value
http://www.w3.org/2005/08/addressing/reply
Summer 2013
Message Addressing Properties
Summer 2013
<soap:Envelope xmlns:soap="..." xmlns:wsa="...">
<soap:Header>
<wsa:Action>
http://opendata.cz/.../iface#opGetPublicContract
</wsa:Action>
<wsa:MessageID>
http://example.org/contract_bidder/BID2011107152334-0322
</wsa:MessageID>
</soap:Header>
</soap:Envelope>
<soap:Envelope xmlns:soap="..." xmlns:wsa="...">
<soap:Header>
<wsa:Action>
http://opendata.cz/.../iface#opGetPublicContractResp
</wsa:Action>
<wsa:RelatesTo>
http://example.org/contract_bidder/BID2011107152334-0322
</wsa:RelatesTo>
</soap:Header>
</soap:Envelope>
More on Extending WSDL
 WSDL 2.0 endpoint or WSDL 1.1 port may be
extended with WS addressing endpoint reference
<wsdl:port name="PublicContractWS" binding="srv:PublicContractSOAPBinding">
<soap:address
location="http://gd/EntityServices/services/PublicContractWS" />
<wsa:EndpointReference xmlns:wsa="http://www.w3.org/2005/08/addressing">
<wsa:Address>
http://gd/EntityServices/services/PublicContractWS
</wsa:Address>
</wsa:EndpointReference>
</wsdl:port>
Summer 2013
More on Extending WSDL
wsdl11:port
soap:address
wsa:EndpointReference
wsa:Address
wsa:ReferenceParameters
soap:Header
wsa:To
ns1:param1
ns2:param2
ns1:param1
ns2:param2
Summer 2013
More on Extending WSDL
 wsa:Action in incoming message associated with
input, output or fault within WSDL description
 two association mechanisms
 explicit association
• action is defined explicitly for input, output or fault messages with
wsaw:Action attribute (we have already seen sample SOAP
message and WSDL description on previous slides)
• if wsaw:Action attribute is missing
– if soap:operation/@soapAction attribute with a non-empty values is
present then its value is action for input message
– if soap:operation/@soapAction attribute is missing or empty value
then action for input message is assigned implicitly
 implicit association is defined for WSDL 1.1 and WSDL 2.0
Summer 2013
wsdl11:binding
More on Extending WSDL
wsdl11:portType
wsdl11:operation
soap:Header
wsa:Action
wsdl11:input
wsaw:Action
1
2
wsdl11:operation
soap:operation
@soapAction
Summer 2013
More on Extending WSDL
 implicit association for WSDL 1.1
 so called Default Action Pattern for WSDL 1.1
 pattern for input and output messages
[target namespace][delimiter][port type name]
[delimiter][input|output name]
 pattern for fault messages
[target namespace][delimiter][port type name]
[delimiter][operation name][delimiter]Fault
[delimiter][fault name]
 [delimiter]is : (for URN target namespace) or /
Summer 2013
More on Extending WSDL
<wsdl:portType name="PublicContractPortType">
<wsdl:operation name="GetPublicContract">
<wsdl:input message="srv:GetPublicContractRequest"
name="GetPublicContract" />
<wsdl:output message="srv:GetPublicContractResponse"
name="PublicContract" />
</wsdl:operation>
</wsdl:portType>
[target namespace][delimiter][port type name]
[delimiter][input|output name]
http://opendata.cz/EntityServices/PublicContract/iface/
PublicContractPortType/GetPublicContract
http://opendata.cz/EntityServices/PublicContract/iface/
PublicContractPortType/PublicContract
Summer 2013

Mais conteúdo relacionado

Mais procurados

Cloud Security Standards: What to Expect and What to Negotiate V2.0
Cloud Security Standards: What to Expect and What to Negotiate V2.0Cloud Security Standards: What to Expect and What to Negotiate V2.0
Cloud Security Standards: What to Expect and What to Negotiate V2.0Cloud Standards Customer Council
 
Distributed System-Multicast & Indirect communication
Distributed System-Multicast & Indirect communicationDistributed System-Multicast & Indirect communication
Distributed System-Multicast & Indirect communicationMNM Jain Engineering College
 
Scalability and fault tolerance
Scalability and fault toleranceScalability and fault tolerance
Scalability and fault tolerancegaurav jain
 
Lecture 10 - Message Exchange Patterns
Lecture 10 - Message Exchange PatternsLecture 10 - Message Exchange Patterns
Lecture 10 - Message Exchange Patternsphanleson
 
Introduction to SAML 2.0
Introduction to SAML 2.0Introduction to SAML 2.0
Introduction to SAML 2.0Mika Koivisto
 
VLAN and its implementation
VLAN  and its implementation VLAN  and its implementation
VLAN and its implementation Mohit Kumar
 
Grid protocol architecture
Grid protocol architectureGrid protocol architecture
Grid protocol architecturePooja Dixit
 
TCP over wireless slides
TCP over wireless slidesTCP over wireless slides
TCP over wireless slidesMahesh Rajawat
 
11 ooad uml-14
11 ooad uml-1411 ooad uml-14
11 ooad uml-14Niit Care
 
Service-Oriented Architecture (SOA)
Service-Oriented Architecture (SOA)Service-Oriented Architecture (SOA)
Service-Oriented Architecture (SOA)WSO2
 
Key management and distribution
Key management and distributionKey management and distribution
Key management and distributionRiya Choudhary
 

Mais procurados (20)

Cloud Security Standards: What to Expect and What to Negotiate V2.0
Cloud Security Standards: What to Expect and What to Negotiate V2.0Cloud Security Standards: What to Expect and What to Negotiate V2.0
Cloud Security Standards: What to Expect and What to Negotiate V2.0
 
Atom and rss
Atom and rssAtom and rss
Atom and rss
 
Distributed System-Multicast & Indirect communication
Distributed System-Multicast & Indirect communicationDistributed System-Multicast & Indirect communication
Distributed System-Multicast & Indirect communication
 
Virtual machine security
Virtual machine securityVirtual machine security
Virtual machine security
 
Scalability and fault tolerance
Scalability and fault toleranceScalability and fault tolerance
Scalability and fault tolerance
 
Lecture 10 - Message Exchange Patterns
Lecture 10 - Message Exchange PatternsLecture 10 - Message Exchange Patterns
Lecture 10 - Message Exchange Patterns
 
Kerberos
KerberosKerberos
Kerberos
 
Data communication
Data communicationData communication
Data communication
 
Introduction to SAML 2.0
Introduction to SAML 2.0Introduction to SAML 2.0
Introduction to SAML 2.0
 
VLAN and its implementation
VLAN  and its implementation VLAN  and its implementation
VLAN and its implementation
 
Grid protocol architecture
Grid protocol architectureGrid protocol architecture
Grid protocol architecture
 
Middleware
MiddlewareMiddleware
Middleware
 
Software as a service
Software as a serviceSoftware as a service
Software as a service
 
AAA Protocol
AAA ProtocolAAA Protocol
AAA Protocol
 
TCP over wireless slides
TCP over wireless slidesTCP over wireless slides
TCP over wireless slides
 
11 ooad uml-14
11 ooad uml-1411 ooad uml-14
11 ooad uml-14
 
Network Models in Networking.
Network Models in Networking.Network Models in Networking.
Network Models in Networking.
 
Service-Oriented Architecture (SOA)
Service-Oriented Architecture (SOA)Service-Oriented Architecture (SOA)
Service-Oriented Architecture (SOA)
 
Cloud provenance
Cloud provenanceCloud provenance
Cloud provenance
 
Key management and distribution
Key management and distributionKey management and distribution
Key management and distribution
 

Destaque

Web Services - Business Process Execution Language
Web Services - Business Process Execution LanguageWeb Services - Business Process Execution Language
Web Services - Business Process Execution LanguageMartin Necasky
 
Web Services - SOAP (part 2)
Web Services - SOAP (part 2)Web Services - SOAP (part 2)
Web Services - SOAP (part 2)Martin Necasky
 
Soa Primer
Soa PrimerSoa Primer
Soa Primervavasthi
 
[Android] Web services
[Android] Web services[Android] Web services
[Android] Web servicesNikmesoft Ltd
 
Web Services Part 1
Web Services Part 1Web Services Part 1
Web Services Part 1patinijava
 
Web services - A Practical Approach
Web services - A Practical ApproachWeb services - A Practical Approach
Web services - A Practical ApproachMadhaiyan Muthu
 
Web Services - Architecture and SOAP (part 1)
Web Services - Architecture and SOAP (part 1)Web Services - Architecture and SOAP (part 1)
Web Services - Architecture and SOAP (part 1)Martin Necasky
 

Destaque (8)

Web Services - Business Process Execution Language
Web Services - Business Process Execution LanguageWeb Services - Business Process Execution Language
Web Services - Business Process Execution Language
 
Web Services - SOAP (part 2)
Web Services - SOAP (part 2)Web Services - SOAP (part 2)
Web Services - SOAP (part 2)
 
Soa Primer
Soa PrimerSoa Primer
Soa Primer
 
[Android] Web services
[Android] Web services[Android] Web services
[Android] Web services
 
Web Services Part 1
Web Services Part 1Web Services Part 1
Web Services Part 1
 
Web services - A Practical Approach
Web services - A Practical ApproachWeb services - A Practical Approach
Web services - A Practical Approach
 
Web Services - Architecture and SOAP (part 1)
Web Services - Architecture and SOAP (part 1)Web Services - Architecture and SOAP (part 1)
Web Services - Architecture and SOAP (part 1)
 
Web service architecture
Web service architectureWeb service architecture
Web service architecture
 

Semelhante a WS-Addressing

WS-Addressing: Enabling Transport-Neutral Message Addressing and Correlation
WS-Addressing: Enabling Transport-Neutral Message Addressing and CorrelationWS-Addressing: Enabling Transport-Neutral Message Addressing and Correlation
WS-Addressing: Enabling Transport-Neutral Message Addressing and CorrelationJeffrey Hasan
 
Web services101
Web services101Web services101
Web services101chaos41
 
Web Services Discovery for Devices
Web Services Discovery for DevicesWeb Services Discovery for Devices
Web Services Discovery for DevicesJorgen Thelin
 
Lecture 16 - Web Services
Lecture 16 - Web ServicesLecture 16 - Web Services
Lecture 16 - Web Servicesphanleson
 
SWOP project and META software
SWOP project and META softwareSWOP project and META software
SWOP project and META softwareMichele Filannino
 
Svcc2009 Async Ws
Svcc2009 Async WsSvcc2009 Async Ws
Svcc2009 Async WsManoj Kumar
 
Who am I? Who are you? Who is anybody?
Who am I? Who are you? Who is anybody?Who am I? Who are you? Who is anybody?
Who am I? Who are you? Who is anybody?Paul Downey
 
Android chapter16-web-services
Android chapter16-web-servicesAndroid chapter16-web-services
Android chapter16-web-servicesAravindharamanan S
 
Interoperable Web Services with JAX-WS and WSIT
Interoperable Web Services with JAX-WS and WSITInteroperable Web Services with JAX-WS and WSIT
Interoperable Web Services with JAX-WS and WSITCarol McDonald
 
REST vs WS-*: Myths Facts and Lies
REST vs WS-*: Myths Facts and LiesREST vs WS-*: Myths Facts and Lies
REST vs WS-*: Myths Facts and LiesPaul Fremantle
 
Semantic Web Services: State of the Art
Semantic Web Services: State of the ArtSemantic Web Services: State of the Art
Semantic Web Services: State of the ArtMarkus Lanthaler
 
Web-Services!.pptx
Web-Services!.pptxWeb-Services!.pptx
Web-Services!.pptxssuserae0316
 
Spring Web Services: SOAP vs. REST
Spring Web Services: SOAP vs. RESTSpring Web Services: SOAP vs. REST
Spring Web Services: SOAP vs. RESTSam Brannen
 
OUGN 2016: Experiences with REST support on OSB/SOA Suite
OUGN 2016: Experiences with REST support on OSB/SOA SuiteOUGN 2016: Experiences with REST support on OSB/SOA Suite
OUGN 2016: Experiences with REST support on OSB/SOA SuiteJon Petter Hjulstad
 

Semelhante a WS-Addressing (20)

WS-Addressing: Enabling Transport-Neutral Message Addressing and Correlation
WS-Addressing: Enabling Transport-Neutral Message Addressing and CorrelationWS-Addressing: Enabling Transport-Neutral Message Addressing and Correlation
WS-Addressing: Enabling Transport-Neutral Message Addressing and Correlation
 
Web services overview
Web services overviewWeb services overview
Web services overview
 
Web services101
Web services101Web services101
Web services101
 
Web Services Discovery for Devices
Web Services Discovery for DevicesWeb Services Discovery for Devices
Web Services Discovery for Devices
 
Lecture 16 - Web Services
Lecture 16 - Web ServicesLecture 16 - Web Services
Lecture 16 - Web Services
 
SCDJWS 5. JAX-WS
SCDJWS 5. JAX-WSSCDJWS 5. JAX-WS
SCDJWS 5. JAX-WS
 
SWOP project and META software
SWOP project and META softwareSWOP project and META software
SWOP project and META software
 
SOAP-based Web Services
SOAP-based Web ServicesSOAP-based Web Services
SOAP-based Web Services
 
WS-* with WCF
WS-* with WCFWS-* with WCF
WS-* with WCF
 
Web service introduction
Web service introductionWeb service introduction
Web service introduction
 
Svcc2009 Async Ws
Svcc2009 Async WsSvcc2009 Async Ws
Svcc2009 Async Ws
 
Who am I? Who are you? Who is anybody?
Who am I? Who are you? Who is anybody?Who am I? Who are you? Who is anybody?
Who am I? Who are you? Who is anybody?
 
Android chapter16-web-services
Android chapter16-web-servicesAndroid chapter16-web-services
Android chapter16-web-services
 
Interoperable Web Services with JAX-WS and WSIT
Interoperable Web Services with JAX-WS and WSITInteroperable Web Services with JAX-WS and WSIT
Interoperable Web Services with JAX-WS and WSIT
 
REST vs WS-*: Myths Facts and Lies
REST vs WS-*: Myths Facts and LiesREST vs WS-*: Myths Facts and Lies
REST vs WS-*: Myths Facts and Lies
 
Ws rest
Ws restWs rest
Ws rest
 
Semantic Web Services: State of the Art
Semantic Web Services: State of the ArtSemantic Web Services: State of the Art
Semantic Web Services: State of the Art
 
Web-Services!.pptx
Web-Services!.pptxWeb-Services!.pptx
Web-Services!.pptx
 
Spring Web Services: SOAP vs. REST
Spring Web Services: SOAP vs. RESTSpring Web Services: SOAP vs. REST
Spring Web Services: SOAP vs. REST
 
OUGN 2016: Experiences with REST support on OSB/SOA Suite
OUGN 2016: Experiences with REST support on OSB/SOA SuiteOUGN 2016: Experiences with REST support on OSB/SOA Suite
OUGN 2016: Experiences with REST support on OSB/SOA Suite
 

Mais de Martin Necasky

Linked Open Data - Masaryk University in Brno 8.11.2016
Linked Open Data - Masaryk University in Brno 8.11.2016Linked Open Data - Masaryk University in Brno 8.11.2016
Linked Open Data - Masaryk University in Brno 8.11.2016Martin Necasky
 
Tutoriál : Otevřená a propojitelná data veřejné správy
Tutoriál : Otevřená a propojitelná data veřejné správyTutoriál : Otevřená a propojitelná data veřejné správy
Tutoriál : Otevřená a propojitelná data veřejné správyMartin Necasky
 
Linked Data for Czech Legislation - 2nd year of our project
Linked Data for Czech Legislation - 2nd year of our projectLinked Data for Czech Legislation - 2nd year of our project
Linked Data for Czech Legislation - 2nd year of our projectMartin Necasky
 
Linked Open Data for Public Contracts
Linked Open Data for Public ContractsLinked Open Data for Public Contracts
Linked Open Data for Public ContractsMartin Necasky
 
Linked Data for Czech Legislation
Linked Data for Czech LegislationLinked Data for Czech Legislation
Linked Data for Czech LegislationMartin Necasky
 
Otevrena data v CR - aktualni stav (brezen 2013)
Otevrena data v CR - aktualni stav (brezen 2013)Otevrena data v CR - aktualni stav (brezen 2013)
Otevrena data v CR - aktualni stav (brezen 2013)Martin Necasky
 
Otevrene problemy architektury elektronickeho zdravotnictvi
Otevrene problemy architektury elektronickeho zdravotnictviOtevrene problemy architektury elektronickeho zdravotnictvi
Otevrene problemy architektury elektronickeho zdravotnictviMartin Necasky
 
Vysledek souteze o navrh hospodarneho a funkcniho elektronickeho zdravotnictvi
Vysledek souteze o navrh hospodarneho a funkcniho elektronickeho zdravotnictviVysledek souteze o navrh hospodarneho a funkcniho elektronickeho zdravotnictvi
Vysledek souteze o navrh hospodarneho a funkcniho elektronickeho zdravotnictviMartin Necasky
 
Web Services - Introduction
Web Services - IntroductionWeb Services - Introduction
Web Services - IntroductionMartin Necasky
 
Techniky a nástroje pro propojená data (Linked Data)
Techniky a nástroje pro propojená data (Linked Data)Techniky a nástroje pro propojená data (Linked Data)
Techniky a nástroje pro propojená data (Linked Data)Martin Necasky
 
Linked Data pro Evropský sociální fond
Linked Data pro Evropský sociální fondLinked Data pro Evropský sociální fond
Linked Data pro Evropský sociální fondMartin Necasky
 

Mais de Martin Necasky (13)

Linked Open Data - Masaryk University in Brno 8.11.2016
Linked Open Data - Masaryk University in Brno 8.11.2016Linked Open Data - Masaryk University in Brno 8.11.2016
Linked Open Data - Masaryk University in Brno 8.11.2016
 
Tutoriál : Otevřená a propojitelná data veřejné správy
Tutoriál : Otevřená a propojitelná data veřejné správyTutoriál : Otevřená a propojitelná data veřejné správy
Tutoriál : Otevřená a propojitelná data veřejné správy
 
Linked Data for Czech Legislation - 2nd year of our project
Linked Data for Czech Legislation - 2nd year of our projectLinked Data for Czech Legislation - 2nd year of our project
Linked Data for Czech Legislation - 2nd year of our project
 
Linked Open Data for Public Contracts
Linked Open Data for Public ContractsLinked Open Data for Public Contracts
Linked Open Data for Public Contracts
 
Linked Data for Czech Legislation
Linked Data for Czech LegislationLinked Data for Czech Legislation
Linked Data for Czech Legislation
 
RESTful Web Services
RESTful Web ServicesRESTful Web Services
RESTful Web Services
 
Web Services - WSDL
Web Services - WSDLWeb Services - WSDL
Web Services - WSDL
 
Otevrena data v CR - aktualni stav (brezen 2013)
Otevrena data v CR - aktualni stav (brezen 2013)Otevrena data v CR - aktualni stav (brezen 2013)
Otevrena data v CR - aktualni stav (brezen 2013)
 
Otevrene problemy architektury elektronickeho zdravotnictvi
Otevrene problemy architektury elektronickeho zdravotnictviOtevrene problemy architektury elektronickeho zdravotnictvi
Otevrene problemy architektury elektronickeho zdravotnictvi
 
Vysledek souteze o navrh hospodarneho a funkcniho elektronickeho zdravotnictvi
Vysledek souteze o navrh hospodarneho a funkcniho elektronickeho zdravotnictviVysledek souteze o navrh hospodarneho a funkcniho elektronickeho zdravotnictvi
Vysledek souteze o navrh hospodarneho a funkcniho elektronickeho zdravotnictvi
 
Web Services - Introduction
Web Services - IntroductionWeb Services - Introduction
Web Services - Introduction
 
Techniky a nástroje pro propojená data (Linked Data)
Techniky a nástroje pro propojená data (Linked Data)Techniky a nástroje pro propojená data (Linked Data)
Techniky a nástroje pro propojená data (Linked Data)
 
Linked Data pro Evropský sociální fond
Linked Data pro Evropský sociální fondLinked Data pro Evropský sociální fond
Linked Data pro Evropský sociální fond
 

Último

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdfChristopherTHyatt
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 

Último (20)

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 

WS-Addressing

  • 1. Web Services (NSWI145) Lecture 08: WS Addressing, WS Notification Martin Nečaský, Ph.D. Faculty of Mathematics and Physics Charles University in Prague, Czech Republic Summer 2013
  • 2. WS-*  family of complementary Web service technologies  in this lecture  W3C Web Services Addressing Working Group: • WS-Addressing Summer 2013
  • 3. WS-Addressing  W3C Web Services Addressing Working Group  completed and closed on 5 Sep 2007  http://www.w3.org/2002/ws/addr/  motivation  standard way to include information about message sender and receiver, how to return message response in message itself Summer 2013
  • 4. WS-Addressing  consists of three W3C recommendations  WS Addressing 1.0 – Core • endpoint references and message addressing properties • namespace URI http://www.w3.org/2005/08/addressing (usual prefix wsa)  WS Addressing 1.0 – SOAP Binding  WS Addressing 1.0 – Metadata • binding endpoint references to WSDL metadata • how message addressing properties are described using WSDL • how WS-Policy can be used to indicate support for WS-Addressing • namespace URI http://www.w3.org/2007/05/addressing/metadata (usual prefix wsam) Summer 2013
  • 5. Endpoint References  informally  endpoint is a referable entity, process or resource to which messages can be addressed  endpoint reference provides information needed to address endpoint  can be part of service interface description or created dynamically (e.g. in SOAP messages, BPEL scripts, ...)  formally  endpoint is a collection of abstract properties  WS-Addressing defines a core set of properties which can be extended by other specifications Summer 2013
  • 6. Endpoint References Summer 2013  element wsa:EndpointReference  defines endpoint reference  can be used by any other WS standard • WS-Addressing Core does not specify where element can be used • used, e.g., in BPEL 2.0 <wsa:EndpointReference xmlns:wsa="http://www.w3.org/2005/08/addressing"> </wsa:EndpointReference>
  • 7. Endpoint References Summer 2013  complex type wsa:EndpointReferenceType  type of wsa:EndpointReference  can be used by any other WS standard • used, e.g., in SOAP headers  sequence of elements • wsa:Address • wsa:ReferenceParameters • wsa:Metadata
  • 8. Endpoint References Summer 2013  element wsa:Address  required  absolute IRI representing endpoint address  two predefined values • wsa:anonymous : for endpoints without address • wsa:none : for endpoints which discard messages <wsa:EndpointReference> <wsa:Address> http://gd/TripleStore/services/TripleStoreWS </wsa:Address> </wsa:EndpointReference>
  • 9. Endpoint References Summer 2013  element wsa:ReferenceParameters  optional  list of individual parameters associated with endpoint required to properly interact with endpoint • they are not ordered • in case of SOAP as transfer protocol, they determine headers required by endpoint <wsa:EndpointReference> <wsa:ReferenceParameters> ... </wsa:ReferenceParameters> </wsa:EndpointReference>
  • 10. Endpoint References Summer 2013  element wsa:Metadata  optional  list of meta-properties which describe endpoint behavior, policies and capabilities  not necessarily full list of all endpoint metadata <wsa:EndpointReference> <wsa:Metadata> ... </wsa:Metadata> </wsa:EndpointReference>
  • 11. Endpoint References  WS Addressing Metadata introduces specific meta-properties which specify binding to WSDL  element wsam:InterfaceName • WSDL2.0 interface name or WSDL1.1 port type name  element wsam:ServiceName • WSDL2.0 service name or WSDL1.1 service name • attribute EndpointName – WSDL2.0 endpoint name or WSDL1.1 port name  it is possible to use WSDL2.0 attribute wsdlLocation of wsa:Metadata element • from http://www.w3.org/ns/wsdl-instance namespace • URI where WSDL description is located Summer 2013
  • 13. Message Addressing Properties  part of message  in case of SOAP = SOAP headers Summer 2013
  • 14. Message Addressing Properties  element wsa:To  optional  value is xs:anyURI  absolute URI representing address of intended message receiver  element wsa:From  optional  value wsa:EndpointReferenceType  endpoint from which message originated  element wsa:ReplyTo  optional  value wsa:EndpointReferenceType  endpoint for intended receiver of replies to this message  element wsa:FaultTo  optional  value wsa:EndpointReferenceType  endpoint for intended receiver of faults related to this message Summer 2013
  • 15. Message Addressing Properties Summer 2013 <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns:auc="http://example.org/auction"> <soap:Header> <wsa:To>http://gd/Entity/services/PublicContract</wsa:To> <wsa:ReplyTo> <wsa:Address> http://example.org/auction/replyConsumer </wsa:Address> <wsa:ReferenceParameters> <auc:number>2011107152334-0322</auc:number> </wsa:ReferenceParameters> </wsa:ReplyTo> </soap:Header> </soap:Envelope>
  • 16. Message Addressing Properties Summer 2013 <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns:auc="http://example.org/auction"> <soap:Header> <auc:number>2011107152334-0322</auc:number> </soap:Header> </soap:Envelope>
  • 17. Message Addressing Properties  element wsa:Action  mandatory  value is xs:anyURI  absolute URI uniquely identifying semantics implied by message  URI should identify input, output or fault message within WSDL 1.1 port type or WSDL 2.0 interface • identification assigned to message with wsaw:Action attribute of wsdl:input, wsdl:output or wsdl:fault elements • wsaw:Action introduced in WS Addressing 1.0 Metadata Summer 2013
  • 18. Message Addressing Properties Summer 2013 <soap:Envelope xmlns:soap="..." xmlns:wsa="..."> <soap:Header> <wsa:Action> http://opendata.cz/.../iface#opGetPublicContract </wsa:Action> </soap:Header> </soap:Envelope> <wsdl:definitions xmlns:wsdl="..." xmlns:wsa="..." srv="..."> <wsdl:portType name="PublicContractPortType"> <wsdl:operation name="GetPublicContractRDF"> <wsdl:input message="srv:GetPublicContractRequest" wsaw:Action="http://opendata.cz/.../iface#opGetPublicContract" /> <wsdl:output message="srv:GetPublicContractResponse" wsaw:Action="http://opendata.cz/.../iface#opGetPublicContractResp" /> </wsdl:operation> </wsdl:portType> </wsdl:definitions>
  • 19. Message Addressing Properties  element wsa:MessageID  optional  value is xs:anyURI  absolute IRI uniquely identifying message  uniqueness is responsibility of sender, receiver’s behavior in case of duplicated IDs is not specified  element wsa:RelatesTo  optional  value is xs:anyURI  ID of a message related to this message  relationship type specified by attribute RelationshipType • default value http://www.w3.org/2005/08/addressing/reply Summer 2013
  • 20. Message Addressing Properties Summer 2013 <soap:Envelope xmlns:soap="..." xmlns:wsa="..."> <soap:Header> <wsa:Action> http://opendata.cz/.../iface#opGetPublicContract </wsa:Action> <wsa:MessageID> http://example.org/contract_bidder/BID2011107152334-0322 </wsa:MessageID> </soap:Header> </soap:Envelope> <soap:Envelope xmlns:soap="..." xmlns:wsa="..."> <soap:Header> <wsa:Action> http://opendata.cz/.../iface#opGetPublicContractResp </wsa:Action> <wsa:RelatesTo> http://example.org/contract_bidder/BID2011107152334-0322 </wsa:RelatesTo> </soap:Header> </soap:Envelope>
  • 21. More on Extending WSDL  WSDL 2.0 endpoint or WSDL 1.1 port may be extended with WS addressing endpoint reference <wsdl:port name="PublicContractWS" binding="srv:PublicContractSOAPBinding"> <soap:address location="http://gd/EntityServices/services/PublicContractWS" /> <wsa:EndpointReference xmlns:wsa="http://www.w3.org/2005/08/addressing"> <wsa:Address> http://gd/EntityServices/services/PublicContractWS </wsa:Address> </wsa:EndpointReference> </wsdl:port> Summer 2013
  • 22. More on Extending WSDL wsdl11:port soap:address wsa:EndpointReference wsa:Address wsa:ReferenceParameters soap:Header wsa:To ns1:param1 ns2:param2 ns1:param1 ns2:param2 Summer 2013
  • 23. More on Extending WSDL  wsa:Action in incoming message associated with input, output or fault within WSDL description  two association mechanisms  explicit association • action is defined explicitly for input, output or fault messages with wsaw:Action attribute (we have already seen sample SOAP message and WSDL description on previous slides) • if wsaw:Action attribute is missing – if soap:operation/@soapAction attribute with a non-empty values is present then its value is action for input message – if soap:operation/@soapAction attribute is missing or empty value then action for input message is assigned implicitly  implicit association is defined for WSDL 1.1 and WSDL 2.0 Summer 2013
  • 24. wsdl11:binding More on Extending WSDL wsdl11:portType wsdl11:operation soap:Header wsa:Action wsdl11:input wsaw:Action 1 2 wsdl11:operation soap:operation @soapAction Summer 2013
  • 25. More on Extending WSDL  implicit association for WSDL 1.1  so called Default Action Pattern for WSDL 1.1  pattern for input and output messages [target namespace][delimiter][port type name] [delimiter][input|output name]  pattern for fault messages [target namespace][delimiter][port type name] [delimiter][operation name][delimiter]Fault [delimiter][fault name]  [delimiter]is : (for URN target namespace) or / Summer 2013
  • 26. More on Extending WSDL <wsdl:portType name="PublicContractPortType"> <wsdl:operation name="GetPublicContract"> <wsdl:input message="srv:GetPublicContractRequest" name="GetPublicContract" /> <wsdl:output message="srv:GetPublicContractResponse" name="PublicContract" /> </wsdl:operation> </wsdl:portType> [target namespace][delimiter][port type name] [delimiter][input|output name] http://opendata.cz/EntityServices/PublicContract/iface/ PublicContractPortType/GetPublicContract http://opendata.cz/EntityServices/PublicContract/iface/ PublicContractPortType/PublicContract Summer 2013