SlideShare une entreprise Scribd logo
1  sur  22
WEB SERVICES
ADVANCED WEB TECHNOLOGY
MODULE 3
DIVYA TIWARI
MEIT
TERNA ENGINEERING COLLEGE
INDEX
• Introduction of Web Services
• Extensible Markup Language (XML)
• Web Service Description Language (WSDL)
• Simple Object Access Protocol (SOAP)
• Universal Description, Discovery, and Integration (UDDI)
• Transactions
• Business Process Execution Language for Web Services
• WS-Security and Web Services Security specifications
• WS-Reliable Messaging
• WS-Policy
• WS-Attachments
• REST-ful web services
• Comparison of REST and SOAP
Introduction of Web Services
• Web services are self-contained, modular, distributed, dynamic applications that can be
described, published, located, or invoked over the network to create products, processes,
and supply chains.
• These applications can be local, distributed, or web-based. Web services are built on top
of open standards such as TCP/IP, HTTP, Java, HTML, and XML.
web service is, therefore, any service that −
• Is available over the Internet or private (intranet) networks
• Uses a standardized XML messaging system
• Is not tied to any one operating system or programming language
• Is self-describing via a common XML grammar
• Is discoverable via a simple find mechanism
Extensible Markup Language (XML)
XML is a simple tag-based language for describing information in a structured way.
Basic elements:
• Tags
• Attributes
• Text
Web Service Description Language
(WSDL)
• Web Service Description Language is a document written in XML, which contains the
description of Web services.
• It specifies the location of the service and the methods the service exposes.
• WSDL describes the services as a collection of communication endpoints capable of
exchanging messages.
• A WSDL document consists of the following six elements:
• Definition
• Data type
• Message
• Port type
• Binding
• Service
Simple Object Access Protocol (SOAP)
• SOAP is a technology to support the exchange of XML-coded messages over a
transport protocol, such as HTTP and SMTP. (wire stack)
• A SOAP message is a simple well-structured XML document, which always contains a
mandatory envelope and Body element.
• It can also contain a few optional elements, such as the Header element, which contains
the application-specific information, and the fault element, which contains the error and
status of the messages.
• The SOAP message inherits all features of XML, such as platform independence and self
documenting format.
• Elements of SOAP message are:
• Envelope
• Header
• Body
• Fault
Universal Description, Discovery, and
Integration (UDDI)
• UDDI refers to a centralized directory where the Web services offered by different
organizations are published.
• UDDI stores information about Web services and communicates with those Web services
using SOAP.
• UDDI also defines how to enable transactions between customers and reach new
customers.
• UDDI Application Programming Interface (API) has the get_businessDetail() method to
retrieve the details of a business. This method is redundant and can be removed from
API.
• UDDI has many get_methods that work on data objects, such as business services. These
data objects can be represented by XML documents.
• When a business changes its information, it registers that change in UDDI. In addition to
the get_businessDetail() method, other methods of UDDI can also be removed from the
UDDI API.
• These methods are the delete_business() method that is used to remove a business, the
save_business() method that is used to upload new businesses, and the find_business()
method that is used to search a particular business.
• All methods in UDDI API can be implemented by HTTP-based URIs. This produces
another type of architecture for representing Web services of businesses, called REST.
Transactions
• Transaction context management resides in the WS-Coordination (WS-C) (Microsoft,
BEA, IBM,`Web Service Coodination’, 2005), WSAtomicTransaction (WS-AT)
(Microsoft, BEA, IBM, `Web Service Atomic Transaction’, 2005) and WS-
BusinessActivity (WS-BA) (Microsoft, BEA, IBM,`Web Service Business Activity’,
2005) specifications.
• WS-C defines a coordination context, which represents an instance of coordinated
effort, allowing participant services to share a common view.
• WS-AT targets existing transactional systems with short interactions and full ACID
properties.
• WS-BA, on the other hand, is intended for applications involved in business processes
of long duration, whose relaxed properties increase concurrency and suit a wider range
of applications.
• Neither the Web services architecture nor any specifications prescribe explicit ways to
implement transactional capabilities, although it is clear that delivering such features
should minimally impact existing applications.
• Some propose approaching the problem of transaction monitoring and support by means
of intermediary (proxy) services (Mikalsen, 2002), while others by providing a
lightweight programming interface requiring minimal application code changes
(Vasquez, Miller, Verma, & Sheth, 2005). Whichever the case, protocol-specific
messages should also be embedded in exchanged messages and propagated though all
participants.
Business Process Execution Language for
Web Services
• Business Process Execution Language (BPEL) defines a notation for specifying
business process behavior based on Web Services.
• Business processes can be described in two ways:
• Executable business processes model actual behavior of a participant in a business
interaction.
• Business protocols, in contrast, use process descriptions that specify the mutually
visible message exchange behavior of each of the parties involved in the protocol,
without revealing their internal behavior. The process descriptions for business
protocols are called abstract processes.
• BPEL is used to model the behavior of both executable and abstract processes. The
scope includes:
• Sequencing of process activities, especially Web Service interactions
• Correlation of messages and process instances
• Recovery behavior in case of failures and exceptional conditions
• Bilateral Web Service based relationships between process roles
WS-Security and Web Services Security
specifications
• The WS-Security specification provides a framework and vocabulary for requesters and
providers to secure messaging as well as communicate information regarding security
and privacy.
• There are other security related specifications like:
• XML-Encryption specifies the process of encrypting data and messages.
• XML-Signature provides a mechanism for messages integrity and authentication,
and signer authentication.
• XACML (Extensible Access Control Markup Language) is an XML representation
of the Role-Based Access Control standard (RBAC). XACML plays an important
function in Web services authorization.
• Security Assertion Markup Language, or SAML, is an OASIS framework for
conveying user authentication and attribute information through XML assertions.
WS-Reliable Messaging
• Communication over a public network such as the Internet imposes physical limitations
to the reliability of exchanged messages.
• Even though failures are inevitable and unpredictable, certain techniques increase
message reliability and traceability even in the worst cases.
• At a minimum, senders are interested in determining whether the message has been
received by the partner, that it was received exactly once and in the correct order.
• It is necessary to determine the validity of the received message:
• Has the message been altered on its way to the receiver?
• Does it conform to standard formats?
• Does it agree with the business rules expected by the receiver?
• WS-Reliability and WS-Reliable Messaging have rules that dictate how and when
services must respond to other services concerning the receipt of a message and its
validity.
Messaging model
WS-Policy
• WS-Policy is a specification of a framework for defining the requirements and
capabilities of a service.
• In short, a policy is a set of assertions that express the capabilities and requirements of a
service.
• The specification WS-Policy (http://www128.ibm.com/developerworks/library/
specification/ws-polfram/) defines terms that can be used to organize a policy.
• Once a provider has a policy defined in XML, then he must publish that information by
referencing it in the description of the service.
WS-Attachments
• It is a method for attaching a policy to a WSDL file so that it can be published to the
UDDI and thus used in deciding on services.
• There are several mechanisms defined for accomplishing this task.
• The simplest method is to write the policy directly into the WSDL file.
• A more complex, and more powerful method is to construct the policy as a stand alone
file that is referenced in the WSDL file as a URI.
• WS-Policy and WS-PolicyAttachment together give us hierarchy based on to which
element the policy is attached and direction for merging policies together to create an
effective policy for an element (WS-PolicyAttachment, 2005).
REST-ful web services
• REST stands for Representational State Transfer. REST is an architectural style not a
protocol.
Advantages of RESTful Web Services:
• Fast: RESTful Web Services are fast because there is no strict specification like SOAP.
It consumes less bandwidth and resource.
• Language and Platform independent: RESTful web services can be written in any
programming language and executed in any platform.
• Can use SOAP: RESTful web services can use SOAP web services as the
implementation.
• Permits different data format: RESTful web service permits different data format
such as Plain Text, HTML, XML and JSON.
Comparison of REST and SOAP
MU Exam Questions
May 2017
• Describe SOAP protocol and message structure briefly. 10 marks
Dec 2018
• Describe SOAP protocol and message structure briefly. 10 marks
May 2019
• Explain in detail WS-Reliable Messaging. 10 marks
• SN: SOAP. 5 marks
• SN: REST-ful web services. 5 marks
Web services

Contenu connexe

Tendances

Web servers – features, installation and configuration
Web servers – features, installation and configurationWeb servers – features, installation and configuration
Web servers – features, installation and configuration
webhostingguy
 
CLIENT SERVER IN OS.ppt
CLIENT SERVER IN OS.pptCLIENT SERVER IN OS.ppt
CLIENT SERVER IN OS.ppt
suman yadav
 

Tendances (20)

Virtualization.ppt
Virtualization.pptVirtualization.ppt
Virtualization.ppt
 
Apache ppt
Apache pptApache ppt
Apache ppt
 
Introduction to vb.net
Introduction to vb.netIntroduction to vb.net
Introduction to vb.net
 
ASP.NET Presentation
ASP.NET PresentationASP.NET Presentation
ASP.NET Presentation
 
Firewall in Network Security
Firewall in Network SecurityFirewall in Network Security
Firewall in Network Security
 
Introduction to .NET Framework
Introduction to .NET FrameworkIntroduction to .NET Framework
Introduction to .NET Framework
 
Web Servers (ppt)
Web Servers (ppt)Web Servers (ppt)
Web Servers (ppt)
 
Virtual Machine Concept
Virtual Machine ConceptVirtual Machine Concept
Virtual Machine Concept
 
Web servers – features, installation and configuration
Web servers – features, installation and configurationWeb servers – features, installation and configuration
Web servers – features, installation and configuration
 
Windows Server 2008 Active Directory
Windows Server 2008 Active DirectoryWindows Server 2008 Active Directory
Windows Server 2008 Active Directory
 
Virtualization and cloud Computing
Virtualization and cloud ComputingVirtualization and cloud Computing
Virtualization and cloud Computing
 
C#.NET
C#.NETC#.NET
C#.NET
 
CLIENT SERVER IN OS.ppt
CLIENT SERVER IN OS.pptCLIENT SERVER IN OS.ppt
CLIENT SERVER IN OS.ppt
 
Introduction to Web Services
Introduction to Web ServicesIntroduction to Web Services
Introduction to Web Services
 
API Presentation
API PresentationAPI Presentation
API Presentation
 
Lecture5 virtualization
Lecture5 virtualizationLecture5 virtualization
Lecture5 virtualization
 
Visula C# Programming Lecture 1
Visula C# Programming Lecture 1Visula C# Programming Lecture 1
Visula C# Programming Lecture 1
 
WEB I - 01 - Introduction to Web Development
WEB I - 01 - Introduction to Web DevelopmentWEB I - 01 - Introduction to Web Development
WEB I - 01 - Introduction to Web Development
 
Namespaces in C#
Namespaces in C#Namespaces in C#
Namespaces in C#
 
ASP.NET MVC 3.0 Validation
ASP.NET MVC 3.0 ValidationASP.NET MVC 3.0 Validation
ASP.NET MVC 3.0 Validation
 

Similaire à Web services

SOA UNIT-IV.pdfSOA UNIT-IV.pdfSOA UNIT-IV.pdf
SOA UNIT-IV.pdfSOA UNIT-IV.pdfSOA UNIT-IV.pdfSOA UNIT-IV.pdfSOA UNIT-IV.pdfSOA UNIT-IV.pdf
SOA UNIT-IV.pdfSOA UNIT-IV.pdfSOA UNIT-IV.pdf
NKannanCSE
 

Similaire à Web services (20)

WSstandards.ppt
WSstandards.pptWSstandards.ppt
WSstandards.ppt
 
SOA standards
SOA standardsSOA standards
SOA standards
 
Applying xml
Applying xmlApplying xml
Applying xml
 
Week2 cloud computing week2
Week2 cloud computing week2Week2 cloud computing week2
Week2 cloud computing week2
 
nptl cc video.pptx
nptl cc video.pptxnptl cc video.pptx
nptl cc video.pptx
 
Unit iii soa
Unit iii soaUnit iii soa
Unit iii soa
 
Web service implementation
Web service implementationWeb service implementation
Web service implementation
 
Unit-5_2 PPT on Distributed Web based System.pdf
Unit-5_2 PPT on Distributed Web based System.pdfUnit-5_2 PPT on Distributed Web based System.pdf
Unit-5_2 PPT on Distributed Web based System.pdf
 
Introduction to SOAP/WSDL Web Services and RESTful Web Services
Introduction to SOAP/WSDL Web Services and RESTful Web ServicesIntroduction to SOAP/WSDL Web Services and RESTful Web Services
Introduction to SOAP/WSDL Web Services and RESTful Web Services
 
Wt unit 6 ppts web services
Wt unit 6 ppts web servicesWt unit 6 ppts web services
Wt unit 6 ppts web services
 
Java web services
Java web servicesJava web services
Java web services
 
Xml.ppt
Xml.pptXml.ppt
Xml.ppt
 
SOA UNIT-IV.pdfSOA UNIT-IV.pdfSOA UNIT-IV.pdf
SOA UNIT-IV.pdfSOA UNIT-IV.pdfSOA UNIT-IV.pdfSOA UNIT-IV.pdfSOA UNIT-IV.pdfSOA UNIT-IV.pdf
SOA UNIT-IV.pdfSOA UNIT-IV.pdfSOA UNIT-IV.pdf
 
Web service
Web serviceWeb service
Web service
 
Web services concepts, protocols and development
Web services concepts, protocols and developmentWeb services concepts, protocols and development
Web services concepts, protocols and development
 
Introduction to Service Oriented Architectures, SOAP/WSDL Web Services and RE...
Introduction to Service Oriented Architectures, SOAP/WSDL Web Services and RE...Introduction to Service Oriented Architectures, SOAP/WSDL Web Services and RE...
Introduction to Service Oriented Architectures, SOAP/WSDL Web Services and RE...
 
Soa
SoaSoa
Soa
 
Service Oriented Architecture
Service Oriented ArchitectureService Oriented Architecture
Service Oriented Architecture
 
Mini-Training: Let's have a rest
Mini-Training: Let's have a restMini-Training: Let's have a rest
Mini-Training: Let's have a rest
 
SOA - Unit 1 - Introduction to SOA with Web Services
SOA - Unit   1 - Introduction to SOA with Web ServicesSOA - Unit   1 - Introduction to SOA with Web Services
SOA - Unit 1 - Introduction to SOA with Web Services
 

Plus de Divya Tiwari

Plus de Divya Tiwari (13)

Digital stick by Divya & Kanti
Digital stick by Divya & KantiDigital stick by Divya & Kanti
Digital stick by Divya & Kanti
 
Predicting house price
Predicting house pricePredicting house price
Predicting house price
 
Testing strategies -2
Testing strategies -2Testing strategies -2
Testing strategies -2
 
Testing strategies part -1
Testing strategies part -1Testing strategies part -1
Testing strategies part -1
 
Performance measures
Performance measuresPerformance measures
Performance measures
 
Programming using MPI and OpenMP
Programming using MPI and OpenMPProgramming using MPI and OpenMP
Programming using MPI and OpenMP
 
IoT applications and use cases part-2
IoT applications and use cases part-2IoT applications and use cases part-2
IoT applications and use cases part-2
 
Io t applications and use cases part-1
Io t applications and use cases part-1Io t applications and use cases part-1
Io t applications and use cases part-1
 
Planning for security and security audit process
Planning for security and security audit processPlanning for security and security audit process
Planning for security and security audit process
 
Security management concepts and principles
Security management concepts and principlesSecurity management concepts and principles
Security management concepts and principles
 
Responsive web design with html5 and css3
Responsive web design with html5 and css3Responsive web design with html5 and css3
Responsive web design with html5 and css3
 
Mac protocols for ad hoc wireless networks
Mac protocols for ad hoc wireless networks Mac protocols for ad hoc wireless networks
Mac protocols for ad hoc wireless networks
 
Routing protocols for ad hoc wireless networks
Routing protocols for ad hoc wireless networks Routing protocols for ad hoc wireless networks
Routing protocols for ad hoc wireless networks
 

Dernier

1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
AldoGarca30
 
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments""Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
mphochane1998
 
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
HenryBriggs2
 

Dernier (20)

data_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfdata_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdf
 
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptxHOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
 
DC MACHINE-Motoring and generation, Armature circuit equation
DC MACHINE-Motoring and generation, Armature circuit equationDC MACHINE-Motoring and generation, Armature circuit equation
DC MACHINE-Motoring and generation, Armature circuit equation
 
Learn the concepts of Thermodynamics on Magic Marks
Learn the concepts of Thermodynamics on Magic MarksLearn the concepts of Thermodynamics on Magic Marks
Learn the concepts of Thermodynamics on Magic Marks
 
Computer Networks Basics of Network Devices
Computer Networks  Basics of Network DevicesComputer Networks  Basics of Network Devices
Computer Networks Basics of Network Devices
 
School management system project Report.pdf
School management system project Report.pdfSchool management system project Report.pdf
School management system project Report.pdf
 
AIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech studentsAIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech students
 
Double Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torqueDouble Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torque
 
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
 
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
 
Work-Permit-Receiver-in-Saudi-Aramco.pptx
Work-Permit-Receiver-in-Saudi-Aramco.pptxWork-Permit-Receiver-in-Saudi-Aramco.pptx
Work-Permit-Receiver-in-Saudi-Aramco.pptx
 
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced LoadsFEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
 
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
 
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
COST-EFFETIVE  and Energy Efficient BUILDINGS ptxCOST-EFFETIVE  and Energy Efficient BUILDINGS ptx
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
 
PE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and propertiesPE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and properties
 
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments""Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
 
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
 
457503602-5-Gas-Well-Testing-and-Analysis-pptx.pptx
457503602-5-Gas-Well-Testing-and-Analysis-pptx.pptx457503602-5-Gas-Well-Testing-and-Analysis-pptx.pptx
457503602-5-Gas-Well-Testing-and-Analysis-pptx.pptx
 
💚Trustworthy Call Girls Pune Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top...
💚Trustworthy Call Girls Pune Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top...💚Trustworthy Call Girls Pune Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top...
💚Trustworthy Call Girls Pune Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top...
 
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
 

Web services

  • 1. WEB SERVICES ADVANCED WEB TECHNOLOGY MODULE 3 DIVYA TIWARI MEIT TERNA ENGINEERING COLLEGE
  • 2. INDEX • Introduction of Web Services • Extensible Markup Language (XML) • Web Service Description Language (WSDL) • Simple Object Access Protocol (SOAP) • Universal Description, Discovery, and Integration (UDDI) • Transactions • Business Process Execution Language for Web Services • WS-Security and Web Services Security specifications • WS-Reliable Messaging • WS-Policy • WS-Attachments • REST-ful web services • Comparison of REST and SOAP
  • 3. Introduction of Web Services • Web services are self-contained, modular, distributed, dynamic applications that can be described, published, located, or invoked over the network to create products, processes, and supply chains. • These applications can be local, distributed, or web-based. Web services are built on top of open standards such as TCP/IP, HTTP, Java, HTML, and XML. web service is, therefore, any service that − • Is available over the Internet or private (intranet) networks • Uses a standardized XML messaging system • Is not tied to any one operating system or programming language • Is self-describing via a common XML grammar • Is discoverable via a simple find mechanism
  • 4. Extensible Markup Language (XML) XML is a simple tag-based language for describing information in a structured way. Basic elements: • Tags • Attributes • Text
  • 5. Web Service Description Language (WSDL) • Web Service Description Language is a document written in XML, which contains the description of Web services. • It specifies the location of the service and the methods the service exposes. • WSDL describes the services as a collection of communication endpoints capable of exchanging messages. • A WSDL document consists of the following six elements: • Definition • Data type • Message • Port type • Binding • Service
  • 6. Simple Object Access Protocol (SOAP) • SOAP is a technology to support the exchange of XML-coded messages over a transport protocol, such as HTTP and SMTP. (wire stack)
  • 7. • A SOAP message is a simple well-structured XML document, which always contains a mandatory envelope and Body element. • It can also contain a few optional elements, such as the Header element, which contains the application-specific information, and the fault element, which contains the error and status of the messages. • The SOAP message inherits all features of XML, such as platform independence and self documenting format. • Elements of SOAP message are: • Envelope • Header • Body • Fault
  • 8. Universal Description, Discovery, and Integration (UDDI) • UDDI refers to a centralized directory where the Web services offered by different organizations are published. • UDDI stores information about Web services and communicates with those Web services using SOAP. • UDDI also defines how to enable transactions between customers and reach new customers. • UDDI Application Programming Interface (API) has the get_businessDetail() method to retrieve the details of a business. This method is redundant and can be removed from API. • UDDI has many get_methods that work on data objects, such as business services. These data objects can be represented by XML documents.
  • 9. • When a business changes its information, it registers that change in UDDI. In addition to the get_businessDetail() method, other methods of UDDI can also be removed from the UDDI API. • These methods are the delete_business() method that is used to remove a business, the save_business() method that is used to upload new businesses, and the find_business() method that is used to search a particular business. • All methods in UDDI API can be implemented by HTTP-based URIs. This produces another type of architecture for representing Web services of businesses, called REST.
  • 10. Transactions • Transaction context management resides in the WS-Coordination (WS-C) (Microsoft, BEA, IBM,`Web Service Coodination’, 2005), WSAtomicTransaction (WS-AT) (Microsoft, BEA, IBM, `Web Service Atomic Transaction’, 2005) and WS- BusinessActivity (WS-BA) (Microsoft, BEA, IBM,`Web Service Business Activity’, 2005) specifications. • WS-C defines a coordination context, which represents an instance of coordinated effort, allowing participant services to share a common view. • WS-AT targets existing transactional systems with short interactions and full ACID properties. • WS-BA, on the other hand, is intended for applications involved in business processes of long duration, whose relaxed properties increase concurrency and suit a wider range of applications.
  • 11. • Neither the Web services architecture nor any specifications prescribe explicit ways to implement transactional capabilities, although it is clear that delivering such features should minimally impact existing applications. • Some propose approaching the problem of transaction monitoring and support by means of intermediary (proxy) services (Mikalsen, 2002), while others by providing a lightweight programming interface requiring minimal application code changes (Vasquez, Miller, Verma, & Sheth, 2005). Whichever the case, protocol-specific messages should also be embedded in exchanged messages and propagated though all participants.
  • 12. Business Process Execution Language for Web Services • Business Process Execution Language (BPEL) defines a notation for specifying business process behavior based on Web Services. • Business processes can be described in two ways: • Executable business processes model actual behavior of a participant in a business interaction. • Business protocols, in contrast, use process descriptions that specify the mutually visible message exchange behavior of each of the parties involved in the protocol, without revealing their internal behavior. The process descriptions for business protocols are called abstract processes.
  • 13. • BPEL is used to model the behavior of both executable and abstract processes. The scope includes: • Sequencing of process activities, especially Web Service interactions • Correlation of messages and process instances • Recovery behavior in case of failures and exceptional conditions • Bilateral Web Service based relationships between process roles
  • 14. WS-Security and Web Services Security specifications • The WS-Security specification provides a framework and vocabulary for requesters and providers to secure messaging as well as communicate information regarding security and privacy. • There are other security related specifications like: • XML-Encryption specifies the process of encrypting data and messages. • XML-Signature provides a mechanism for messages integrity and authentication, and signer authentication. • XACML (Extensible Access Control Markup Language) is an XML representation of the Role-Based Access Control standard (RBAC). XACML plays an important function in Web services authorization. • Security Assertion Markup Language, or SAML, is an OASIS framework for conveying user authentication and attribute information through XML assertions.
  • 15. WS-Reliable Messaging • Communication over a public network such as the Internet imposes physical limitations to the reliability of exchanged messages. • Even though failures are inevitable and unpredictable, certain techniques increase message reliability and traceability even in the worst cases. • At a minimum, senders are interested in determining whether the message has been received by the partner, that it was received exactly once and in the correct order. • It is necessary to determine the validity of the received message: • Has the message been altered on its way to the receiver? • Does it conform to standard formats? • Does it agree with the business rules expected by the receiver? • WS-Reliability and WS-Reliable Messaging have rules that dictate how and when services must respond to other services concerning the receipt of a message and its validity.
  • 17. WS-Policy • WS-Policy is a specification of a framework for defining the requirements and capabilities of a service. • In short, a policy is a set of assertions that express the capabilities and requirements of a service. • The specification WS-Policy (http://www128.ibm.com/developerworks/library/ specification/ws-polfram/) defines terms that can be used to organize a policy. • Once a provider has a policy defined in XML, then he must publish that information by referencing it in the description of the service.
  • 18. WS-Attachments • It is a method for attaching a policy to a WSDL file so that it can be published to the UDDI and thus used in deciding on services. • There are several mechanisms defined for accomplishing this task. • The simplest method is to write the policy directly into the WSDL file. • A more complex, and more powerful method is to construct the policy as a stand alone file that is referenced in the WSDL file as a URI. • WS-Policy and WS-PolicyAttachment together give us hierarchy based on to which element the policy is attached and direction for merging policies together to create an effective policy for an element (WS-PolicyAttachment, 2005).
  • 19. REST-ful web services • REST stands for Representational State Transfer. REST is an architectural style not a protocol. Advantages of RESTful Web Services: • Fast: RESTful Web Services are fast because there is no strict specification like SOAP. It consumes less bandwidth and resource. • Language and Platform independent: RESTful web services can be written in any programming language and executed in any platform. • Can use SOAP: RESTful web services can use SOAP web services as the implementation. • Permits different data format: RESTful web service permits different data format such as Plain Text, HTML, XML and JSON.
  • 20. Comparison of REST and SOAP
  • 21. MU Exam Questions May 2017 • Describe SOAP protocol and message structure briefly. 10 marks Dec 2018 • Describe SOAP protocol and message structure briefly. 10 marks May 2019 • Explain in detail WS-Reliable Messaging. 10 marks • SN: SOAP. 5 marks • SN: REST-ful web services. 5 marks