Web Services
Web services are self-contained, modular, distributed, dynamic applications that can be described, published,
located, and invoked over the network to create products, processes, and supply chains. These applications can be local, distributed, or Web-based
Benefits of using standardized Web technologies (XML, HTTP)
Hypertext Transfer Protocol (HTTP)
HTTP is a stateless application level protocol for distributed, collaborative, hypertext information systems
HTTP Protocols are used for:
Structure of HTTP Message (parts) (3)
-> text-based request-response protocol for distributed information systems
HTTPS
HTTP messages, that are encrypted for security
- Transport Layer Security (TLS) is used for encryption
HTTP - Process
HTTP - Request Message
Request Methods:
HTTP - Response Message
The starting line of an HTTP Response contains:
HTTP status codes
HTTP - Caching
Functionality:
XML
Extensible Markup Language, commonly abbreviated XML, describes a class of data objects called XML documents and partially describes the behavior of the computer programs which process them.
XML Basic Document Structure
XML document forms a hierarchical tree structure consisting of XML nodes:
XML Element
Markup or content enclosed by a starting and ending tag (Only node that can have childnodes. They start with < and end with >)
Start- and Endtag: . . .
XML Attribute
Optional key-value pairs embedded in element tags
XML Comment
Text ignored by software processing XML documents
Plain text file
Binary data must be additionally encoded.
XML Document is well-formed if: (5)
XML Tree: Parent, Child, and Sibling
XML Schema Definition (XSD)
XSD schema aims at defining and describing a class of XML documents via schema components to constrain and document the meaning, usage, and relationships of their constituent parts: datatypes, elements, as well as their content, attributes and values
Function of XSD
Web Service Architecture - Example of a Service
Credit Card company’s service that checks a credit card number’s validity
-> repeatable business activity
The outcome is the assessment of the credit card
-> specific outcome, self contained
There is no information about which databases are accessed
-> black box
Service Oriented Architecture (SOA)
Service Oriented Architecture (SOA) represents a set of principles and methodologies for designing and developing software in the form of interoperable
services. These services are well defined business functions that are built as software components i.e., discrete pieces of code and/or data structures that can
be reused for different.
Service Provider
Hosts services, provides interfaces, allows service requester to access the service