Lecture 3 Slides
Lecture 3 Slides
Urgent Qs only in
between!
ICA II - GUC - Dr. Ayman Alserafi 3-2
Outline
1. Running Example: SWIFT Interbank
2. XML Messaging
3. HTML
4. HTTP Protocol Methods for Messaging
5. Conclusion
S.W.I.F.T.
Supports International bank transaction settlement and clearance between banks via
intermediate banks or …
In the context of cross-border transactions, this step often takes place through correspondent banking
accounts that financial institutions have with each other.
“the main messaging network through which international payments are initiated”
(source: Wikipedia)
It also sells software and services to financial institutions, mostly for use on its proprietary "SWIFTNet",
and ISO 9362 Business Identifier Codes (BICs), popularly known as "SWIFT codes“
Has its own middleware messaging software, secured TCP/IP network communication, etc.
HTTP
XML METHODS
Q&A
ICA II - GUC - Dr. Ayman Alserafi 3-12
Structured Data
Has fixed schema for data: structure of
data elements that all data instances must
follow!
BIC SWIFT
Bank Name City Address Code
NBE Cairo Head Office NBEGEGCX001
CIB Cairo GUC Branch CIBEEGCX048
Banque Misr Cairo Cairo Head Office BMISEGCX101
Alex Bank Alexandria Alexandria Head Office ALEXEGCX001
…
ICA II - GUC - Dr. Ayman Alserafi 3-14
Semi-structured Data: e.g., XML
Data has specific identified fields
<?xml version="1.0"?>
Fields can have different flexible
<Banks>
hierarchies and embedded <Bank>
information elements or attributes <Name>NBE</Name>
<City>Cairo</City>
<Location>Head Office</Location>
Fields are not restricted as long
<BIC>NBEGEGCX001</BIC>
as the data file is VALID </Bank>
Multiple XML schemas /
structures might be valid for the <Bank name="CIB">
same data! <Location>Cairo</Location>
<SWIFT>CIBEEGCX048</SWIFT>
<Type>Commercial</Type>
Example: eXtensible Markup
Language (XML) </Bank>
... </Banks>
Schema-less nature of document,
although can define schema with a
schema definition language like
XSD
Q&A
ICA II - GUC - Dr. Ayman Alserafi 3-21
HTML
HyperText Markeup Language
Q&A
ICA II - GUC - Dr. Ayman Alserafi 3-27
HTTP Intro
Hypertext Transfer Protocol (HTTP) is the main
application layer communication protocol in
the TCP/IP WWW network stack
Web
Client Server
HTTP
ICA II - GUC - Dr. Ayman Alserafi Response 3-28
HTTP Overview Example
Web
Client Server
HTTP
Body can include:
Response
HTML, XML,
JSON, etc.
amount=120¤cy=EGP
GET
/transfer?amount=120¤cy=EGP
HTTP/1.1
Host: api.bank.com
Content-Type: application/x-www-
form-urlencoded
<BankTransfer state=”successful”>
<Sender>
<BIC> CIBEEGCX048</BIC>
<account>1022131233</account>
<amount currency=”EGP”>1000</amount>
</Sender>
<Receiver>
<BIC> ALEXEGCX001</BIC>
<account>45992388399</account>
</Receiver>
</BankTransfer>
<BankTransfer state=”successful”>
<Sender>
This is the HTTP
<BIC> CIBEEGCX048</BIC>
response message
<account>1022131233</account>
<amount currency=”EGP”>1000</amount> body. Contains the
</Sender> content of the message,
<Receiver> which is XML in this
<BIC> ALEXEGCX001</BIC> case!
<account>45992388399</account>
</Receiver>
</BankTransfer>
Q&A
ICA II - GUC - Dr. Ayman Alserafi 3-36
DISTRIBUTED COMMUNICATION
ARCHITECTURE A standard message
GET or POST?
format!
GET! As data parameters (WEB HTTP protocol)
given in URL!
CMS