SlideShare a Scribd company logo
SAFWAN HASHMI
Introduction to SOAP
2
Where did it come from?
• Microsoft, UserLand, DevelopMentor, IBM, Ariba,
Commerce One, Compaq, HP, IONA, Lotus, SAP
~ Submitted to W3C May 2000.
• XML based protocol
• Intended to be a simple wire-protocol for exchange of
info. Largest use may be over Internet HTTP.
3
Motivation
• Many Distributed applications communicate using remote
procedure calls (RPC) between distributed objects like
DCOM and CORBA.
• HTTP isn’t designed for those objects, so RPC calls aren’t
easily adapted to the Internet.
• Security problems exist for those methods of RPC, so
most firewalls and proxy servers are set to block this
traffic.
• HTTP is supported by all Internet browsers and servers,
so SOAP presents a nice protocol for doing RPC.
4
What is SOAP?
SOAP IS:
• Lightweight communication protocol
• For communication between applications
one-way, request/response, multicast, etc..
• Designed to communicate via HTTP
• Not tied to any component technology
• Not tied to any programming language
• Based on XML
• Simple and extensible
5
Basic Structure of Soap
• Envelope
Defines the content of the message
• Header (optional)
contains header information
• Body
contains call and response information
6
SOAP Contains Four Parts:
• An extensible envelope expressing (mandatory)
• what features and services are represented in a message;
• who should deal with them,
• whether they are optional or mandatory.
• A set of encoding rules for data (optional)
• Exchange instances of application-defined data types and directed
graphs
• Uniform model for serializing abstract data models that can not
directly be expressed in XML schema
• A Convention for representation RPC (optional)
• How to make calls and responses
• A protocol binding to HTTP and HTTP-EF (optional)
7
SOAP Envelope
SOAP Example in HTTP
HTTP Request
SOAP-HTTP Binding
SOAP Header
SOAP Body
POST /Accounts/Henrik HTTP/1.1
Host: www.webservicebank.com
Content-Length: nnnn
Content-Type: text/xml; charset="utf-8"
SOAPAction: "Some-URI"
<SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/"
SOAP:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP:Header>
<t:Transaction xmlns:t="some-URI" SOAP:mustUnderstand="1">
5
</t:Transaction>
</SOAP:Header>
<SOAP:Body>
<m:Deposit xmlns:m="Some-URI">
<m:amount>200</m:amount>
</m:Deposit>
</SOAP:Body>
</SOAP:Envelope>
8
SOAP Example in SIP
SOAP Envelope
SIP Request
SOAP-SIP Binding
SOAP Body
SERVICE sip:broker.ubiquity.net SIP/2.0
To: sip:broker.ubiquity.net
From: sip:proxy.ubiquity.net
Call-ID:648324@193.195.52.30
CSeq: 1 SERVICE
Via: SIP/2.0/UDP proxy.ubiquity.net
Content-Type: text/xml
Content-Length: 381
<SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope”
SOAP:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP:Body>
<m:SetCreditStatus xmlns:m="http://www.ubiquity.net/sipservices">
<m:user>sip:jo@ubiquity.net</m:user>
<m:status>super</m:status>
</m:SetCreditStatus>
</SOAP:Body>
</SOAP:Envelope>
9
… or SOAP by Itself…
<SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope”
SOAP:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP:Header>
<m:MessageInfo xmlns:m="http://www.info.org/soap/message">
<m:to href="mailto:you@your.com"/>
<m:from href="mailto:me@my.com"/>
<m:contact href="mailto:someone@my.com">
</m:MessageInfo>
</SOAP:Header>
<SOAP:Body>
<msg:Message xmlns:m="http://www.info.org/soap/message">
<msg:subject>Your house is on fire!</msg:subject>
<msg:feed href="ram://livenews.com/yourhouse"/>
</msg:Message>
</SOAP:Body>
</SOAP:Envelope>
10
Note Again: SOAP is a Protocol!
• What does this mean?
• It is not a distributed object system
• It is not an RPC system
• It is not even a Web application
• Your application decides what your application is!
• You can build a tightly coupled system
…or…
• You can build a loosely coupled system
11
Why Not Roll My Own XML Protocol?
• SOAP allows you to define your particular feature or
service in such a way that it can co-exist with other
features and services within a SOAP message
• What is a feature or a service?
• Authentication service
• Payment service
• Security service
• Transaction management service
• Privacy service
• Not owning the message means easier deployment and
better interoperability
12
Syntax Rules
• MUST be encoded using XML
• MUST have a SOAP Envelope
• CAN have a SOAP header
• MUST have a SOAP Body
• MUST use the SOAP Envelope namespace
• MUST use the SOAP Encoding namespace
• Must NOT contain a DTD reference
• Must NOT contain XML Processing
13
SOAP Fault Element
• Error messages from a SOAP application are carried inside a Fault element.
• Must appear as an element w/in the <Body> element and can only appear once in a SOAP
message.
• Fault sub elements:
<faultcode> MUST: --code identifying the error, for use by the software
<faultstring> MUST: --error as a string
<faultactor> MUST(Apps not acting as ultimate destination of SOAP message)
--who caused the error
<detail> MUST(if contents of Body could not be successfully processed)
--specific error information
• Fault Codes:
VersionMismatch Invalid namespace for the SOAP Envelope Element
MustUnderstand A child element of the Header element, with the mustUnderstand attribute
set to “1”, was not understood
Client The message was incorrectly formed or contained incorrect information.
Server There was a problem with the server so the message could not be process
• Example: <env:Fault>
<faultcode>env:MustUnderstand</faultcode>
<faultstring>SOAP Must Understand Error</faultstring>
</env:Fault>
14
CORBA vs. SOAP
CORBA
(Common Object Request Broker
Architecture)
SOAP
(Simple Object Access Protocol)
CORBA provides a true object-oriented
component architecture.
Web services like (UDDI/WSDL/SOAP)
are not providing true object-oriented
component architecture.
Fast Compared to SOAP Because of the verbose XML format,
SOAP can be considerably slower than
CORBA
Can be difficult to use if server and/or
client is behind a firewall or if network
address translation is being used
HTTP works well with network
firewalls
Problems with implementations It is XML based implementation
compare to
CORBA,SOAP Implementation is easy.
It uses IIOP (Internet Inter ORB
Protocol)
Simple XML-based protocol to let
applications exchange information
over HTTP
15
Advantages of SOAP are:
• Portability
• Firewall friendliness
• Use of open standards
• Interoperability
• Universal acceptance.
Language neutrality:
SOAP can be developed using any language.
• Interoperability and Platform Independence:
SOAP can be implemented in any language and can be
executed in any platform.
SOAP messages are in very simple XML format.
• Scalability:
SOAP uses HTTP protocol for transport due to which it
becomes scalable.
16
Disadvantages of SOAP
• – Too much reliance on HTTP
• – Statelessness
• – Serialization by value and not by reference
17
Summary
• SOAP envelope provides
• SOAP can be used with many protocols
• Easy to deploy with existing infrastructure
• SOAP is fundamentally a one-way message
• Supports request/response, RPC etc.
• Your application decides what it is!

More Related Content

What's hot

Web services - A Practical Approach
Web services - A Practical ApproachWeb services - A Practical Approach
Web services - A Practical Approach
Madhaiyan Muthu
 
PHP and Web Services
PHP and Web ServicesPHP and Web Services
PHP and Web Services
Bruno Pedro
 
Web Server-Side Programming Techniques
Web Server-Side Programming TechniquesWeb Server-Side Programming Techniques
Web Server-Side Programming Techniques
guest8899ec02
 
Excellent rest using asp.net web api
Excellent rest using asp.net web apiExcellent rest using asp.net web api
Excellent rest using asp.net web api
Maurice De Beijer [MVP]
 
WCF tutorial
WCF tutorialWCF tutorial
WCF tutorial
Abhi Arya
 
Connecting Applications Everywhere with ActiveMQ
Connecting Applications Everywhere with ActiveMQConnecting Applications Everywhere with ActiveMQ
Connecting Applications Everywhere with ActiveMQ
Rob Davies
 
Enjoying the Move from WCF to the Web API
Enjoying the Move from WCF to the Web APIEnjoying the Move from WCF to the Web API
Enjoying the Move from WCF to the Web API
Kevin Hazzard
 
Web services soap and rest by mandakini for TechGig
Web services soap and rest by mandakini for TechGigWeb services soap and rest by mandakini for TechGig
Web services soap and rest by mandakini for TechGig
Mandakini Kumari
 
Overview of Rest Service and ASP.NET WEB API
Overview of Rest Service and ASP.NET WEB APIOverview of Rest Service and ASP.NET WEB API
Overview of Rest Service and ASP.NET WEB API
Pankaj Bajaj
 
Enterprise Integration Patterns
Enterprise Integration PatternsEnterprise Integration Patterns
Enterprise Integration Patterns
Sergey Podolsky
 
WCF
WCFWCF
WCF And ASMX Web Services
WCF And ASMX Web ServicesWCF And ASMX Web Services
WCF And ASMX Web Services
Manny Siddiqui MCS, MBA, PMP
 
1. WCF Services - Exam 70-487
1. WCF Services - Exam 70-4871. WCF Services - Exam 70-487
1. WCF Services - Exam 70-487Bat Programmer
 
Messaging for Web and Mobile with Apache ActiveMQ
Messaging for Web and Mobile with Apache ActiveMQMessaging for Web and Mobile with Apache ActiveMQ
Messaging for Web and Mobile with Apache ActiveMQdejanb
 
Web Server Technologies I: HTTP & Getting Started
Web Server Technologies I: HTTP & Getting StartedWeb Server Technologies I: HTTP & Getting Started
Web Server Technologies I: HTTP & Getting Started
Port80 Software
 
Enterprise Integration Patterns
Enterprise Integration PatternsEnterprise Integration Patterns
Enterprise Integration Patterns
Oleg Tsal-Tsalko
 
Wcf Transaction Handling
Wcf Transaction HandlingWcf Transaction Handling
Wcf Transaction Handling
Gaurav Arora
 

What's hot (20)

Web services - A Practical Approach
Web services - A Practical ApproachWeb services - A Practical Approach
Web services - A Practical Approach
 
PHP and Web Services
PHP and Web ServicesPHP and Web Services
PHP and Web Services
 
Web Server-Side Programming Techniques
Web Server-Side Programming TechniquesWeb Server-Side Programming Techniques
Web Server-Side Programming Techniques
 
Excellent rest using asp.net web api
Excellent rest using asp.net web apiExcellent rest using asp.net web api
Excellent rest using asp.net web api
 
WCF tutorial
WCF tutorialWCF tutorial
WCF tutorial
 
Web Services
Web ServicesWeb Services
Web Services
 
Connecting Applications Everywhere with ActiveMQ
Connecting Applications Everywhere with ActiveMQConnecting Applications Everywhere with ActiveMQ
Connecting Applications Everywhere with ActiveMQ
 
Enjoying the Move from WCF to the Web API
Enjoying the Move from WCF to the Web APIEnjoying the Move from WCF to the Web API
Enjoying the Move from WCF to the Web API
 
Web services soap and rest by mandakini for TechGig
Web services soap and rest by mandakini for TechGigWeb services soap and rest by mandakini for TechGig
Web services soap and rest by mandakini for TechGig
 
Overview of Rest Service and ASP.NET WEB API
Overview of Rest Service and ASP.NET WEB APIOverview of Rest Service and ASP.NET WEB API
Overview of Rest Service and ASP.NET WEB API
 
Enterprise Integration Patterns
Enterprise Integration PatternsEnterprise Integration Patterns
Enterprise Integration Patterns
 
Windows Communication Foundation (WCF) Best Practices
Windows Communication Foundation (WCF) Best PracticesWindows Communication Foundation (WCF) Best Practices
Windows Communication Foundation (WCF) Best Practices
 
WCF
WCFWCF
WCF
 
WCF And ASMX Web Services
WCF And ASMX Web ServicesWCF And ASMX Web Services
WCF And ASMX Web Services
 
1. WCF Services - Exam 70-487
1. WCF Services - Exam 70-4871. WCF Services - Exam 70-487
1. WCF Services - Exam 70-487
 
Messaging for Web and Mobile with Apache ActiveMQ
Messaging for Web and Mobile with Apache ActiveMQMessaging for Web and Mobile with Apache ActiveMQ
Messaging for Web and Mobile with Apache ActiveMQ
 
Web servers
Web serversWeb servers
Web servers
 
Web Server Technologies I: HTTP & Getting Started
Web Server Technologies I: HTTP & Getting StartedWeb Server Technologies I: HTTP & Getting Started
Web Server Technologies I: HTTP & Getting Started
 
Enterprise Integration Patterns
Enterprise Integration PatternsEnterprise Integration Patterns
Enterprise Integration Patterns
 
Wcf Transaction Handling
Wcf Transaction HandlingWcf Transaction Handling
Wcf Transaction Handling
 

Viewers also liked

SOAP Overview
SOAP OverviewSOAP Overview
SOAP Overview
elliando dias
 
600.412.Lecture06
600.412.Lecture06600.412.Lecture06
600.412.Lecture06
ragibhasan
 
Soap
SoapSoap
Soap
Eri Alam
 
Simple Object Access Protocol
Simple Object Access ProtocolSimple Object Access Protocol
Simple Object Access ProtocolSaatviga Sudhahar
 
12 adversal search
12 adversal search12 adversal search
12 adversal search
Tianlu Wang
 
SOAP--Simple Object Access Protocol
SOAP--Simple Object Access ProtocolSOAP--Simple Object Access Protocol
SOAP--Simple Object Access Protocol
Masud Rahman
 
Adversarial search with Game Playing
Adversarial search with Game PlayingAdversarial search with Game Playing
Adversarial search with Game Playing
Aman Patel
 
Alpha beta pruning
Alpha beta pruningAlpha beta pruning
Alpha beta pruning
Nilesh Bandekar
 
Alpha beta prouning
Alpha beta prouningAlpha beta prouning
Alpha beta prouning
Safwan Hashmi
 
Minimax
MinimaxMinimax
Minimax
Nagarajan
 
Game playing in artificial intelligent technique
Game playing in artificial intelligent technique Game playing in artificial intelligent technique
Game playing in artificial intelligent technique
syeda zoya mehdi
 
Web Services (SOAP, WSDL, UDDI)
Web Services (SOAP, WSDL, UDDI)Web Services (SOAP, WSDL, UDDI)
Web Services (SOAP, WSDL, UDDI)
Peter R. Egli
 
Best topics for seminar
Best topics for seminarBest topics for seminar
Best topics for seminarshilpi nagpal
 

Viewers also liked (15)

SOAP Overview
SOAP OverviewSOAP Overview
SOAP Overview
 
600.412.Lecture06
600.412.Lecture06600.412.Lecture06
600.412.Lecture06
 
Soap
SoapSoap
Soap
 
Simple Object Access Protocol
Simple Object Access ProtocolSimple Object Access Protocol
Simple Object Access Protocol
 
12 adversal search
12 adversal search12 adversal search
12 adversal search
 
SOAP--Simple Object Access Protocol
SOAP--Simple Object Access ProtocolSOAP--Simple Object Access Protocol
SOAP--Simple Object Access Protocol
 
Adversarial search
Adversarial search Adversarial search
Adversarial search
 
Alphabeta
AlphabetaAlphabeta
Alphabeta
 
Adversarial search with Game Playing
Adversarial search with Game PlayingAdversarial search with Game Playing
Adversarial search with Game Playing
 
Alpha beta pruning
Alpha beta pruningAlpha beta pruning
Alpha beta pruning
 
Alpha beta prouning
Alpha beta prouningAlpha beta prouning
Alpha beta prouning
 
Minimax
MinimaxMinimax
Minimax
 
Game playing in artificial intelligent technique
Game playing in artificial intelligent technique Game playing in artificial intelligent technique
Game playing in artificial intelligent technique
 
Web Services (SOAP, WSDL, UDDI)
Web Services (SOAP, WSDL, UDDI)Web Services (SOAP, WSDL, UDDI)
Web Services (SOAP, WSDL, UDDI)
 
Best topics for seminar
Best topics for seminarBest topics for seminar
Best topics for seminar
 

Similar to Soap xp-wg

Intro to web services
Intro to web servicesIntro to web services
Intro to web servicesNeil Ghosh
 
Introduction to SOAP
Introduction to SOAPIntroduction to SOAP
Introduction to SOAP
Safwan Hashmi
 
Lecture 3 soap
Lecture 3 soapLecture 3 soap
Lecture 3 soap
Aravindharamanan S
 
C# ASP.NET WEB API APPLICATION DEVELOPMENT
C# ASP.NET WEB API APPLICATION DEVELOPMENTC# ASP.NET WEB API APPLICATION DEVELOPMENT
C# ASP.NET WEB API APPLICATION DEVELOPMENT
Dr. Awase Khirni Syed
 
WebServices.ppt
WebServices.pptWebServices.ppt
WebServices.ppt
Iftikhar70
 
SOAP WEB TECHNOLOGIES
SOAP WEB TECHNOLOGIESSOAP WEB TECHNOLOGIES
SOAP WEB TECHNOLOGIES
tamilmozhiyaltamilmo
 
Web-Services!.pptx
Web-Services!.pptxWeb-Services!.pptx
Web-Services!.pptx
ssuserae0316
 
jkljklj
jkljkljjkljklj
jkljklj
hoefo
 
Soap Standard
Soap StandardSoap Standard
Soap Standard
Kumar
 
SOA and web services
SOA and web servicesSOA and web services
SOA and web services
Sreekanth Narayanan
 
Web technology-guide
Web technology-guideWeb technology-guide
Web technology-guide
Srihari
 
web programming
web programmingweb programming
web programming
shreeuva
 
D1-3-Signaling
D1-3-SignalingD1-3-Signaling
D1-3-SignalingOleg Levy
 
Java Web Services [2/5]: Introduction to SOAP
Java Web Services [2/5]: Introduction to SOAPJava Web Services [2/5]: Introduction to SOAP
Java Web Services [2/5]: Introduction to SOAP
IMC Institute
 
WebServices SOAP WSDL and UDDI
WebServices SOAP WSDL and UDDIWebServices SOAP WSDL and UDDI
WebServices SOAP WSDL and UDDI
Rajkattamuri
 
WebServices introduction in Mule
WebServices introduction in MuleWebServices introduction in Mule
WebServices introduction in Mule
F K
 
SOAP, WSDL and UDDI
SOAP, WSDL and UDDISOAP, WSDL and UDDI
SOAP, WSDL and UDDI
Shahid Shaik
 

Similar to Soap xp-wg (20)

Intro to web services
Intro to web servicesIntro to web services
Intro to web services
 
Introduction to SOAP
Introduction to SOAPIntroduction to SOAP
Introduction to SOAP
 
Lecture 3 soap
Lecture 3 soapLecture 3 soap
Lecture 3 soap
 
C# ASP.NET WEB API APPLICATION DEVELOPMENT
C# ASP.NET WEB API APPLICATION DEVELOPMENTC# ASP.NET WEB API APPLICATION DEVELOPMENT
C# ASP.NET WEB API APPLICATION DEVELOPMENT
 
WebServices.ppt
WebServices.pptWebServices.ppt
WebServices.ppt
 
what is soap
what is soapwhat is soap
what is soap
 
SOAP WEB TECHNOLOGIES
SOAP WEB TECHNOLOGIESSOAP WEB TECHNOLOGIES
SOAP WEB TECHNOLOGIES
 
Web-Services!.pptx
Web-Services!.pptxWeb-Services!.pptx
Web-Services!.pptx
 
jkljklj
jkljkljjkljklj
jkljklj
 
Soap Standard
Soap StandardSoap Standard
Soap Standard
 
soap toolkit
soap toolkitsoap toolkit
soap toolkit
 
SOA and web services
SOA and web servicesSOA and web services
SOA and web services
 
Web technology-guide
Web technology-guideWeb technology-guide
Web technology-guide
 
web programming
web programmingweb programming
web programming
 
D1-3-Signaling
D1-3-SignalingD1-3-Signaling
D1-3-Signaling
 
Soap
SoapSoap
Soap
 
Java Web Services [2/5]: Introduction to SOAP
Java Web Services [2/5]: Introduction to SOAPJava Web Services [2/5]: Introduction to SOAP
Java Web Services [2/5]: Introduction to SOAP
 
WebServices SOAP WSDL and UDDI
WebServices SOAP WSDL and UDDIWebServices SOAP WSDL and UDDI
WebServices SOAP WSDL and UDDI
 
WebServices introduction in Mule
WebServices introduction in MuleWebServices introduction in Mule
WebServices introduction in Mule
 
SOAP, WSDL and UDDI
SOAP, WSDL and UDDISOAP, WSDL and UDDI
SOAP, WSDL and UDDI
 

More from Safwan Hashmi

MODERAN BLOCK CIPHER
MODERAN BLOCK CIPHER MODERAN BLOCK CIPHER
MODERAN BLOCK CIPHER
Safwan Hashmi
 
Dark web
Dark webDark web
Dark web
Safwan Hashmi
 
CEASER & VIGENERE CIPHER IMPLEMENTATION
CEASER & VIGENERE CIPHER IMPLEMENTATIONCEASER & VIGENERE CIPHER IMPLEMENTATION
CEASER & VIGENERE CIPHER IMPLEMENTATION
Safwan Hashmi
 
Incident managment plan
Incident managment planIncident managment plan
Incident managment plan
Safwan Hashmi
 
Business continuity plan
Business continuity planBusiness continuity plan
Business continuity plan
Safwan Hashmi
 
Sql injection
Sql injectionSql injection
Sql injection
Safwan Hashmi
 
Sql security
Sql securitySql security
Sql security
Safwan Hashmi
 
Database design
Database designDatabase design
Database design
Safwan Hashmi
 
Color and color models
Color and color modelsColor and color models
Color and color models
Safwan Hashmi
 

More from Safwan Hashmi (14)

MODERAN BLOCK CIPHER
MODERAN BLOCK CIPHER MODERAN BLOCK CIPHER
MODERAN BLOCK CIPHER
 
Dark web
Dark webDark web
Dark web
 
CEASER & VIGENERE CIPHER IMPLEMENTATION
CEASER & VIGENERE CIPHER IMPLEMENTATIONCEASER & VIGENERE CIPHER IMPLEMENTATION
CEASER & VIGENERE CIPHER IMPLEMENTATION
 
Incident managment plan
Incident managment planIncident managment plan
Incident managment plan
 
Business continuity plan
Business continuity planBusiness continuity plan
Business continuity plan
 
Sql injection
Sql injectionSql injection
Sql injection
 
Sql security
Sql securitySql security
Sql security
 
Database design
Database designDatabase design
Database design
 
Color and color models
Color and color modelsColor and color models
Color and color models
 
Democracy.s
Democracy.sDemocracy.s
Democracy.s
 
Democracy01
Democracy01Democracy01
Democracy01
 
Democracy.ppt
Democracy.pptDemocracy.ppt
Democracy.ppt
 
Calunization
CalunizationCalunization
Calunization
 
Development
DevelopmentDevelopment
Development
 

Recently uploaded

block diagram and signal flow graph representation
block diagram and signal flow graph representationblock diagram and signal flow graph representation
block diagram and signal flow graph representation
Divya Somashekar
 
power quality voltage fluctuation UNIT - I.pptx
power quality voltage fluctuation UNIT - I.pptxpower quality voltage fluctuation UNIT - I.pptx
power quality voltage fluctuation UNIT - I.pptx
ViniHema
 
space technology lecture notes on satellite
space technology lecture notes on satellitespace technology lecture notes on satellite
space technology lecture notes on satellite
ongomchris
 
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdfHybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
fxintegritypublishin
 
Railway Signalling Principles Edition 3.pdf
Railway Signalling Principles Edition 3.pdfRailway Signalling Principles Edition 3.pdf
Railway Signalling Principles Edition 3.pdf
TeeVichai
 
Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024
Massimo Talia
 
Immunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary AttacksImmunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary Attacks
gerogepatton
 
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
AJAYKUMARPUND1
 
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
Amil Baba Dawood bangali
 
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
bakpo1
 
Architectural Portfolio Sean Lockwood
Architectural Portfolio Sean LockwoodArchitectural Portfolio Sean Lockwood
Architectural Portfolio Sean Lockwood
seandesed
 
road safety engineering r s e unit 3.pdf
road safety engineering  r s e unit 3.pdfroad safety engineering  r s e unit 3.pdf
road safety engineering r s e unit 3.pdf
VENKATESHvenky89705
 
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
H.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdfH.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdf
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
MLILAB
 
J.Yang, ICLR 2024, MLILAB, KAIST AI.pdf
J.Yang,  ICLR 2024, MLILAB, KAIST AI.pdfJ.Yang,  ICLR 2024, MLILAB, KAIST AI.pdf
J.Yang, ICLR 2024, MLILAB, KAIST AI.pdf
MLILAB
 
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdfAKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
SamSarthak3
 
Gen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdfGen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdf
gdsczhcet
 
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Dr.Costas Sachpazis
 
AP LAB PPT.pdf ap lab ppt no title specific
AP LAB PPT.pdf ap lab ppt no title specificAP LAB PPT.pdf ap lab ppt no title specific
AP LAB PPT.pdf ap lab ppt no title specific
BrazilAccount1
 
Standard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - NeometrixStandard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - Neometrix
Neometrix_Engineering_Pvt_Ltd
 
Planning Of Procurement o different goods and services
Planning Of Procurement o different goods and servicesPlanning Of Procurement o different goods and services
Planning Of Procurement o different goods and services
JoytuBarua2
 

Recently uploaded (20)

block diagram and signal flow graph representation
block diagram and signal flow graph representationblock diagram and signal flow graph representation
block diagram and signal flow graph representation
 
power quality voltage fluctuation UNIT - I.pptx
power quality voltage fluctuation UNIT - I.pptxpower quality voltage fluctuation UNIT - I.pptx
power quality voltage fluctuation UNIT - I.pptx
 
space technology lecture notes on satellite
space technology lecture notes on satellitespace technology lecture notes on satellite
space technology lecture notes on satellite
 
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdfHybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
 
Railway Signalling Principles Edition 3.pdf
Railway Signalling Principles Edition 3.pdfRailway Signalling Principles Edition 3.pdf
Railway Signalling Principles Edition 3.pdf
 
Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024
 
Immunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary AttacksImmunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary Attacks
 
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
 
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
 
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
 
Architectural Portfolio Sean Lockwood
Architectural Portfolio Sean LockwoodArchitectural Portfolio Sean Lockwood
Architectural Portfolio Sean Lockwood
 
road safety engineering r s e unit 3.pdf
road safety engineering  r s e unit 3.pdfroad safety engineering  r s e unit 3.pdf
road safety engineering r s e unit 3.pdf
 
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
H.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdfH.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdf
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
 
J.Yang, ICLR 2024, MLILAB, KAIST AI.pdf
J.Yang,  ICLR 2024, MLILAB, KAIST AI.pdfJ.Yang,  ICLR 2024, MLILAB, KAIST AI.pdf
J.Yang, ICLR 2024, MLILAB, KAIST AI.pdf
 
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdfAKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
 
Gen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdfGen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdf
 
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
 
AP LAB PPT.pdf ap lab ppt no title specific
AP LAB PPT.pdf ap lab ppt no title specificAP LAB PPT.pdf ap lab ppt no title specific
AP LAB PPT.pdf ap lab ppt no title specific
 
Standard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - NeometrixStandard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - Neometrix
 
Planning Of Procurement o different goods and services
Planning Of Procurement o different goods and servicesPlanning Of Procurement o different goods and services
Planning Of Procurement o different goods and services
 

Soap xp-wg

  • 2. 2 Where did it come from? • Microsoft, UserLand, DevelopMentor, IBM, Ariba, Commerce One, Compaq, HP, IONA, Lotus, SAP ~ Submitted to W3C May 2000. • XML based protocol • Intended to be a simple wire-protocol for exchange of info. Largest use may be over Internet HTTP.
  • 3. 3 Motivation • Many Distributed applications communicate using remote procedure calls (RPC) between distributed objects like DCOM and CORBA. • HTTP isn’t designed for those objects, so RPC calls aren’t easily adapted to the Internet. • Security problems exist for those methods of RPC, so most firewalls and proxy servers are set to block this traffic. • HTTP is supported by all Internet browsers and servers, so SOAP presents a nice protocol for doing RPC.
  • 4. 4 What is SOAP? SOAP IS: • Lightweight communication protocol • For communication between applications one-way, request/response, multicast, etc.. • Designed to communicate via HTTP • Not tied to any component technology • Not tied to any programming language • Based on XML • Simple and extensible
  • 5. 5 Basic Structure of Soap • Envelope Defines the content of the message • Header (optional) contains header information • Body contains call and response information
  • 6. 6 SOAP Contains Four Parts: • An extensible envelope expressing (mandatory) • what features and services are represented in a message; • who should deal with them, • whether they are optional or mandatory. • A set of encoding rules for data (optional) • Exchange instances of application-defined data types and directed graphs • Uniform model for serializing abstract data models that can not directly be expressed in XML schema • A Convention for representation RPC (optional) • How to make calls and responses • A protocol binding to HTTP and HTTP-EF (optional)
  • 7. 7 SOAP Envelope SOAP Example in HTTP HTTP Request SOAP-HTTP Binding SOAP Header SOAP Body POST /Accounts/Henrik HTTP/1.1 Host: www.webservicebank.com Content-Length: nnnn Content-Type: text/xml; charset="utf-8" SOAPAction: "Some-URI" <SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> <SOAP:Header> <t:Transaction xmlns:t="some-URI" SOAP:mustUnderstand="1"> 5 </t:Transaction> </SOAP:Header> <SOAP:Body> <m:Deposit xmlns:m="Some-URI"> <m:amount>200</m:amount> </m:Deposit> </SOAP:Body> </SOAP:Envelope>
  • 8. 8 SOAP Example in SIP SOAP Envelope SIP Request SOAP-SIP Binding SOAP Body SERVICE sip:broker.ubiquity.net SIP/2.0 To: sip:broker.ubiquity.net From: sip:proxy.ubiquity.net Call-ID:648324@193.195.52.30 CSeq: 1 SERVICE Via: SIP/2.0/UDP proxy.ubiquity.net Content-Type: text/xml Content-Length: 381 <SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope” SOAP:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> <SOAP:Body> <m:SetCreditStatus xmlns:m="http://www.ubiquity.net/sipservices"> <m:user>sip:jo@ubiquity.net</m:user> <m:status>super</m:status> </m:SetCreditStatus> </SOAP:Body> </SOAP:Envelope>
  • 9. 9 … or SOAP by Itself… <SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope” SOAP:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> <SOAP:Header> <m:MessageInfo xmlns:m="http://www.info.org/soap/message"> <m:to href="mailto:you@your.com"/> <m:from href="mailto:me@my.com"/> <m:contact href="mailto:someone@my.com"> </m:MessageInfo> </SOAP:Header> <SOAP:Body> <msg:Message xmlns:m="http://www.info.org/soap/message"> <msg:subject>Your house is on fire!</msg:subject> <msg:feed href="ram://livenews.com/yourhouse"/> </msg:Message> </SOAP:Body> </SOAP:Envelope>
  • 10. 10 Note Again: SOAP is a Protocol! • What does this mean? • It is not a distributed object system • It is not an RPC system • It is not even a Web application • Your application decides what your application is! • You can build a tightly coupled system …or… • You can build a loosely coupled system
  • 11. 11 Why Not Roll My Own XML Protocol? • SOAP allows you to define your particular feature or service in such a way that it can co-exist with other features and services within a SOAP message • What is a feature or a service? • Authentication service • Payment service • Security service • Transaction management service • Privacy service • Not owning the message means easier deployment and better interoperability
  • 12. 12 Syntax Rules • MUST be encoded using XML • MUST have a SOAP Envelope • CAN have a SOAP header • MUST have a SOAP Body • MUST use the SOAP Envelope namespace • MUST use the SOAP Encoding namespace • Must NOT contain a DTD reference • Must NOT contain XML Processing
  • 13. 13 SOAP Fault Element • Error messages from a SOAP application are carried inside a Fault element. • Must appear as an element w/in the <Body> element and can only appear once in a SOAP message. • Fault sub elements: <faultcode> MUST: --code identifying the error, for use by the software <faultstring> MUST: --error as a string <faultactor> MUST(Apps not acting as ultimate destination of SOAP message) --who caused the error <detail> MUST(if contents of Body could not be successfully processed) --specific error information • Fault Codes: VersionMismatch Invalid namespace for the SOAP Envelope Element MustUnderstand A child element of the Header element, with the mustUnderstand attribute set to “1”, was not understood Client The message was incorrectly formed or contained incorrect information. Server There was a problem with the server so the message could not be process • Example: <env:Fault> <faultcode>env:MustUnderstand</faultcode> <faultstring>SOAP Must Understand Error</faultstring> </env:Fault>
  • 14. 14 CORBA vs. SOAP CORBA (Common Object Request Broker Architecture) SOAP (Simple Object Access Protocol) CORBA provides a true object-oriented component architecture. Web services like (UDDI/WSDL/SOAP) are not providing true object-oriented component architecture. Fast Compared to SOAP Because of the verbose XML format, SOAP can be considerably slower than CORBA Can be difficult to use if server and/or client is behind a firewall or if network address translation is being used HTTP works well with network firewalls Problems with implementations It is XML based implementation compare to CORBA,SOAP Implementation is easy. It uses IIOP (Internet Inter ORB Protocol) Simple XML-based protocol to let applications exchange information over HTTP
  • 15. 15 Advantages of SOAP are: • Portability • Firewall friendliness • Use of open standards • Interoperability • Universal acceptance. Language neutrality: SOAP can be developed using any language. • Interoperability and Platform Independence: SOAP can be implemented in any language and can be executed in any platform. SOAP messages are in very simple XML format. • Scalability: SOAP uses HTTP protocol for transport due to which it becomes scalable.
  • 16. 16 Disadvantages of SOAP • – Too much reliance on HTTP • – Statelessness • – Serialization by value and not by reference
  • 17. 17 Summary • SOAP envelope provides • SOAP can be used with many protocols • Easy to deploy with existing infrastructure • SOAP is fundamentally a one-way message • Supports request/response, RPC etc. • Your application decides what it is!

Editor's Notes

  1. SIP (Session Initiation Protocol) is a text-based signaling protocol used to establish multimedia sessions on the Internet