0% found this document useful (0 votes)
16 views9 pages

SimpleObjectAccessProtocol (SOAP) PG50635

The document discusses the Simple Object Access Protocol (SOAP), an XML-based communication protocol used in healthcare information systems. SOAP allows for secure exchange of various data types and is compatible with different platforms. The document describes SOAP's structure, implementation process, and role in enabling communication between healthcare applications and systems.

Uploaded by

Mariana Oliveira
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
16 views9 pages

SimpleObjectAccessProtocol (SOAP) PG50635

The document discusses the Simple Object Access Protocol (SOAP), an XML-based communication protocol used in healthcare information systems. SOAP allows for secure exchange of various data types and is compatible with different platforms. The document describes SOAP's structure, implementation process, and role in enabling communication between healthcare applications and systems.

Uploaded by

Mariana Oliveira
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

Simple Object Access Protocol (SOAP)

Mariana Rodrigues Oliveira, PG50635


Escola de Engenharia, Universidade do Minho
Braga, Portugal

The article presents the Simple Object Access Protocol (SOAP), an


XML-based communication protocol widely used in healthcare infor-
mation systems. SOAP is highly flexible and secure, allowing for the
exchange of a wide variety of data types, including HIPAA-protected
health information. The article describes the structure of SOAP, high-
lighting the Envelope, Header, and Body elements, and its implemen-
tation, which involves several steps. Additionally, the article presents
SOAP’s target area in the hospital ecosystem, identifying healthcare
systems and applications that need to communicate with each other.
SOAP is compatible with various platforms and operating systems,
making it popular for software system integration in different IT en-
vironments. However, the article also highlights some limitations of
SOAP, such as the fact that it is highly XML-based, which can make it
less efficient than newer communication protocols. In summary, SOAP
continues to be a widely used communication protocol in healthcare
information systems, offering flexibility and security, although it also
has some limitations.

Keywords: Simple Object Access Protocol; SOAP; information sys-


tems; XML; messages; interoperability.

1. Introduction

In today’s world, the exchange of information between systems and


applications is a vital necessity in various fields, including healthcare.
In this regard, the Simple Object Access Protocol (SOAP) has become
a widely used solution for message exchange in distributed systems.
SOAP is an XML-based protocol that provides a framework for com-
munication between applications in computer networks. This article
aims to present a detailed description of SOAP, including its message
exchange structure, as well as discuss its application in the hospital
ecosystem. Additionally, the state of the art of SOAP, anticipated in-
teroperabilities, and existing limitations along with possible solutions
to overcome them will be addressed. Knowledge of SOAP is critical to
understanding its application and impact in healthcare, enabling the
development of more efficient and secure solutions.
Interoperability standards (SOAP) are essential to ensure that health-
care systems can communicate effectively and securely, allowing health-
Processamento Clı́nico Eletónico
2 Simple Object Access Protocol

care professionals to have quick and easy access to accurate and up-to-
date patient information. This can help improve the quality of health-
care, reduce errors, and increase the efficiency of the healthcare system
as a whole. SOAP is an open standard, drafted by several companies
including Microsoft, IBM, HP, and SAP. Microsoft is one of the biggest
advocates of SOAP and has incorporated SOAP as a standard interface
in the .NET architecture.
SOAP is compatible with a wide variety of platforms and operating
systems, making it a popular choice for software system integration in
different IT environments. Despite its limitations, SOAP continues to
be a widely used protocol in healthcare information exchange.

2. State of the Art

The main advantage of SOAP is that it is highly flexible and can be


used to exchange a wide variety of data types, including text, images,
and other types of media. This makes SOAP ideal for exchanging
health information, which can include structured data such as diag-
noses and test results, as well as unstructured information such as
medical notes and images. SOAP is not Microsoft-based technology.
It is an open standard drafted by UserLand, Ariba, Commerce One,
Compaq, Developmentor, HP, IBM, IONA, Lotus, Microsoft, and SAP.
SOAP 1.1 was submitted to the W3C in May 2000 as an official internet
standard. Microsoft is one of the biggest proponents of SOAP and has
incorporated SOAP as a standard interface in the .NET architecture.
SOAP is compatible with a wide variety of platforms and operating
systems, making it a popular choice for integrating software systems
in different IT environments [1].

3. Product Description

The Simple Object Access Protocol (SOAP) is an XML-based com-


munication protocol that enables the exchange of information between
software systems. SOAP is used in healthcare information systems.
SOAP enables software systems to communicate with each other, re-
gardless of the platform or operating system on which they are exe-
cuted. The software uses an XML-based structure to define commu-
nication messages that include information about the exchanged data
and how this data should be interpreted [1].
SOAP is highly flexible and can be used to exchange a wide variety
of data types, including text, images, and other media types. It is also
highly secure and can be used to transmit sensitive health information
protected by HIPAA (Health Insurance Portability and Accountability
Act) securely [2].
The implementation of SOAP involves several steps, including cre-

Processamento Clı́nico Eletónico


Simple Object Access Protocol 3

ating a Web service definition, coding the business logic, generating a


Web Services Description Language (WSDL) file, and implementing a
Web service that can be accessed by other systems [3].

3.1 Structure
The Simple Object Access Protocol (SOAP) is a way of passing infor-
mation between applications in an XML format. SOAP messages are
transmitted from the sending application to the receiving application,
typically through an HTTP connection. The SOAP message itself is
composed of the Envelope element, which contains a Body element and
an optional Header element [4].
Envelope: This mandatory element is the root of the SOAP message,
identifying the transmitted XML as a SOAP package. An envelope
contains a body section and an optional header section;
Header: This optional element provides an extension mechanism in-
dicating processing information for the message. For example, if the
operation that uses the message requires security credentials, those
credentials should be part of the envelope header;
Body: This element contains the message payload, the raw data that
is transmitted between the sender and receiver applications. The body
itself can consist of multiple child elements, with an XML schema
typically defining the structure of this data.
A SOAP message and its corresponding XML are structured as follows
[5]:

Processamento Clı́nico Eletónico


4 Simple Object Access Protocol

Figure 1: SOAP message structure

3.2 Message Exchange

The Simple Object Access Protocol (SOAP) is a lightweight proto-


col used for exchanging information in decentralized and distributed
application environments. SOAP messages can be transmitted in the
manner required by the applications, provided that both the client and
server use the same method. The current specification describes only
a single transport protocol, which is HTTP. SOAP fits perfectly into
the world of Internet applications and promises to improve Internet
interoperability for application services in the future. In brief, SOAP
encapsulates method calls in XML strings and delivers them to com-
ponent instances via HTTP. SOAP XML documents are structured
around root elements, child elements with values, and other specifi-
cations. First, an XML document containing a request (a method to
be invoked and parameters) is sent. The server responds with a cor-
responding XML document that contains the results. A set of SOAP
implementations, called a stack, on the client side is composed of li-
braries and classes that provide auxiliary functions. A major challenge
in testing web services is that there are several SOAP stack implemen-
tations that are not compatible with each other. So, although SOAP
is intended to be platform and technology independent, it is not. Web
services written in .NET, however, are always compatible with .NET
clients – they use the same SOAP stack or library. When testing a
.NET web service, however, it is necessary to confirm whether the ser-
vice is compatible with other SOAP stack implementations, such as
the Java SOAP stack, to avoid interoperability issues. SOAP client
requests are encapsulated in HTTP POST or M-POST packages. Ex-
ample of a sample call:

Processamento Clı́nico Eletónico


Simple Object Access Protocol 5

Figura 2: Sample Call

The first four lines of the code are the HTTP standard. POST is the
HTTP request type. The Content-Type and Content-Length fields are
required for all HTTP messages that contain payloads. The content-
type text/xml indicates that the payload is an XML message for the
server or a firewall capable of parsing application headers. The addi-
tional SOAPAction HTTP header is required for HTTP-based SOAP
messages and can be used to indicate the intention of an HTTP SOAP
request. The value is a URI that identifies the intention. The con-
tents of the SOAPAction header field can be used by servers, such as
firewalls, to appropriately filter SOAP request messages over HTTP.
An empty string (””) as the header field value indicates that the in-
tention of the SOAP message is provided by the HTTP Request-URI.
No value means there is no indication of the message’s intention. The
XML code is simple. The Envelope and Body elements offer a generic
payload packaging mechanism. The GetLastTradePrice element con-
tains an element called symbol, which contains a stock ticker symbol.
The purpose of this request is to obtain the last trading price of a
specific stock. The program that sends this message only needs to un-
derstand how to frame a request in an XML message compatible with
SOAP and how to send it through HTTP. In the following example, the
program knows how to format a stock price request. The HTTP server
that receives the message knows that it is a SOAP message because it
recognizes the SOAPAction HTTP header. The server then processes
the message [6].

Processamento Clı́nico Eletónico


6 Simple Object Access Protocol

SOAP defines two types of messages, requests and responses, to


allow clients to request remote procedures and allow servers to respond
to that request. The previous example is an example of a request. The
following example is a response to the request.

Figure 3: Sample Response

The first three lines of code are standard HTTP. The first line in-
dicates a response code for the previous POST request, the second
and third lines indicate the content type, and the fourth line indicates
the length of the response. The XML headers wrap the actual SOAP
payloads. The GetLastTradePriceResponse XML element contains a
response to the trading price request. The child element is Price, which
indicates the value that is returned for the request [7].

4. Target Area in the Hospital Ecosystem

Identifying the target area within the SOAP hospital ecosystem in-
volves identifying health systems and applications that need to com-
municate with each other to enable the exchange of health information.
This may include electronic health record (EHR) systems, medical
management systems, patient management systems, billing systems,
and other systems that manage health information. Once the target
areas are identified, it is necessary to define which health information
needs to be shared between the systems and how this information will
be structured and transmitted. This typically involves the use of inter-
operability standards, such as SOAP itself, that define a common set
of rules and formats for exchanging health information [8].
Processamento Clı́nico Eletónico
Simple Object Access Protocol 7

5. Limitations and Solutions

SOAP (Simple Object Access Protocol) is a protocol used in exchang-


ing messages between distributed applications. Although widely used,
it has some limitations that can impact its performance. Some of its
limitations are in relation to other more recent protocols, such as JSON
and gRPC. SOAP can be slower and less efficient than these more re-
cent protocols, and it can also be more difficult to implement [1][3].
Another limitation is related to the high overhead of SOAP, which
can affect performance in high-load scenarios. SOAP is based on XML,
which means that SOAP messages tend to be larger than other message
formats, such as JSON. This can lead to higher latency and excessive
use of network resources, especially on low-bandwidth networks. One
possible solution to this limitation would be to adopt other communi-
cation technologies, such as REST (Representational State Transfer),
which is known to have lower overhead compared to SOAP. Another
solution would be to use data compression to reduce the size of SOAP
messages, which can be particularly useful on low-bandwidth networks.
A disadvantage of SOAP is also its complexity. SOAP is highly config-
urable and can be customized to meet various communication needs.
However, this flexibility can also make the protocol harder to use. In
addition, SOAP can be affected by compatibility issues between differ-
ent software implementations. One solution to this limitation would
be to adopt simpler communication standards, such as REST. REST
is based on simple and well-defined principles, which makes its im-
plementation and debugging easier. Additionally, REST is generally
compatible with most platforms and programming languages, which
can reduce the risk of compatibility issues [9].

6. Interoperability

There are several types of interoperability features provided by SOAP


(Simple Object Access Protocol). Some of the main types include:
Platform interoperability: SOAP is designed to enable interoper-
ability between different platforms, allowing software systems on differ-
ent platforms and operating systems to communicate with each other;

Programming language interoperability: SOAP is independent


of the programming language used to implement the software system.
This means that software systems written in different programming
languages can communicate with each other using SOAP;

Organization interoperability: SOAP is designed to enable inter-


operability between different organizations, allowing software systems
of different organizations to communicate with each other;

Processamento Clı́nico Eletónico


8 Simple Object Access Protocol

Interoperability with other standards: SOAP is compatible with


other communication standards, such as REST (Representational State
Transfer) and WSDL (Web Services Description Language), allowing
software systems to communicate using different communication pro-
tocols;

Interoperability with other web services technologies: SOAP


is a web services technology that can be used in conjunction with
other technologies, such as XML, HTTP, and HTTPS, to enable the
exchange of information between software systems.

In summary, SOAP is designed to enable interoperability between


software systems on different platforms, operating systems, program-
ming languages, organizations, and communication protocols. This
makes it a versatile technology for integrating software systems in dif-
ferent IT environments [1][8].

7. Conclusion

In summary, SOAP is a highly flexible and secure communication pro-


tocol widely used in health information systems. The article presented
the basic structure of SOAP, including how messages are exchanged.
Then, the use of SOAP in the hospital sector and the state of the art in
system interoperability in this sector were discussed. Although SOAP
has some limitations compared to more recent protocols, it remains
a popular choice for integrating software systems in different IT envi-
ronments. To address these limitations, it is possible to adopt other
communication technologies, such as REST. Additionally, it is impor-
tant to carefully evaluate communication needs and choose the most
appropriate network protocols for each specific case. SOAP is highly
flexible and secure, capable of transmitting sensitive health information
protected by HIPAA with security and remains an important technol-
ogy for the interoperability of distributed systems, but it is important
to recognize its limitations and seek appropriate solutions to deal with
these challenges. SOAP interoperability can help improve the quality
of healthcare, reduce errors, and increase the efficiency of the health-
care system as a whole, allowing healthcare professionals to have quick
and easy access to accurate and up-to-date patient information.

Processamento Clı́nico Eletónico


Simple Object Access Protocol 9

References

[1] Gudgin, M., Hadley, M., Mendelsohn, N., Moreau, J., Nielsen, H. F.,
Karmarkar, A. (2000). Simple object access protocol (SOAP) 1.1. W3C
recommendation, 08, 2000.

[2] Towards an integrated privacy framework for HIPAA-compliant Web


services. Cheng, V.S.Y.; Hung, P.C.K.. (2005). Seventh IEEE Interna-
tional Conference on E-Commerce Technology (CEC’05). Available at:
https://ieeexplore.ieee.org/document/1524092

[3] Advantages of the Simple Object Access Protocol (SOAP) compar-


ing with RPC Protocol. Kiatisevi, P. INFOTECH. (2001). Semi-
nar High Performance Network Architecture (HPNA). Available at:
https://linux.thai.net/ ott/docs/soap.pdf

[4] Stallemo, Ø., Vatne, K.(2003). An evaluation of compression and


streaming techniques for efficient transfer of XML documents with Sim-
ple Object Access Protocol (SOAP). From University of Agder. Avail-
able at: https://uia.brage.unit.no/uia-xmlui/handle/11250/137276

[5] Simple object access protocol (no date) IBM. Available at:
https://www.ibm.com/docs/en/sc-and-ds/8.1.0?topic=stack-simple-
object-access-protocol (Accessed: April 25, 2023).

[6] Halili, F., Ramadani, E. (2018). Web Services: A


Comparison of Soap and Rest Services. Available at:
https://doi.org/10.5539/mas.v12n3p175

[7] Simple object access protocol (SOAP) (no date) Digital Trans-
formation and Enterprise Software Modernization. Avail-
able at: https://www.microfocus.com/documentation/silk-
performer/205/en/silkperformer-205-webhelp-en/GUID-FEFE9379-
8382-48C7-984D-55D98D6BFD37.html (Accessed: April 25, 2023).

[8] Efficient Enterprise Integration Solutions Using Web Ser-


vices for Hospital Management System. Bevinakoppa, S.,
Hegde, K.. (2005). School of Computer Science and In-
formation Technology, RMIT University. Available at:
https://staff.itee.uq.edu.au/lovell/aprs/anziis2003/Papers/paper52.pdf

[9] Simple Object Access Protocol. A basic overview.


Wennerstrom, T., Jespersen, J., Lundquist, M.
(2002). Distributed Systems Fall 2002. Available at:
https://user.it.uu.se/ hsander/Courses/DistributedSystems/Reports

Processamento Clı́nico Eletónico

You might also like