Introduction to XML

 

 

Purpose

This will not be a comprehensive guide for XML ... but I will probably put a complete tutorial later on the web site. This introduction will introduce students on what XML is and how to do simple XML application. Since XML is changing all the time, there is no end to the learning of it ... (Aug 23, 1999)

 

 

Background

XML is eXtensible Markup Language

XML is in the process of turning the Web into the world's commerical and finanical hub

XML and HTML are similar because both  are based on SGML which is the International Standard for structured information

XML allow "data" to say what the data means ... and this smart data (meta data) is powering the electronic commerce revolution

XML buzz includes "web business transaction", "open financil exchange", and "open trading protocol"

 

 

Document

There are three parts in a document:

Data content - the words/content of the document

Structure - the document type and the organization of its elements (ordered by rules). Rules on what kind of elements it can contain and in what order they can occur

Presentation - the way the information is presented to the reader, on a piece of paper, a browser screen or via MPEG, etc. Also, what kind of fonts and effects are used, etc

 

 

Overview

XML preserve the meaning of data. These meta data can be used to allow computers to be more intelligent about what they do with our data

Compare HTML with XML documents

HTML:

<h1>Invoice</h1>
<p>From: Richard Sinn
<p>To: Robert Liu
<p>Item: Tekken 3
<p>Description: Playstation Game
<p>Amount: $30.00

XML:

<!-- XML doc -->
<Invoice>
<From>Richard Sinn</From>
<to>Robert Liu</to>
<item type='Playstation' >Tekken 3</item>
<Amount currency = 'US'>30.00</Amount>
</Invoice>

In different fields, people use different standard of XML grammer.

XML thus provides a standard approach for describing, capturing, processing and publishing information

XML does not have fixed tag (compared with HTML), it provides a standardized framework with which to define your own, or to use those defined by others that best fit your needs

 

 

"XML Helper"

Short Name Full Name Description
DTD Document Type Definitions A set of rules (element types) serves to define types of documents. (E.g. CDF DTD, OTP DTD, MML DTD, etc)
XSL XML Style Language It is used to capture details ab0out how the various elements in a document should look and then to store them in a separate document (XSL). So, the main document contains data + meaning but not formatting. (Other e.g. Cascading Style Sheets (CCS) for HTML)
XLL eXtensible Link Language XML does not predefine any elements, so it uses XLL to define hyperlinks ... XLL captures hypertext information to this subsidiary standard

 

 

Advantages of XML

By keeping meta data information (meaning of data), you can achieve the following:

 

 

Who is Behind ?

Big users of XML:

Big XML applications:

 

 

Example XML Applications

Push Technology with Microsoft Active Channels

Pull Publishing:

Customer request a piece of information

Information source provides the info

Customer request another piece

Information source provides another piece of info ...

Push Publishing:

Customer subscribes to information source

Information source send out info to customer (according to preference ... once a day, etc)

 

To achieve push technology, we need an open data representation

And XML comes in handy

Browse will follow CDF (Channel Definition Format) standard to allow users to browse/subscribe to interesting channels

A document likes like the following will be sent:

<CHANNEL>
	<TITLE>OpenLoop News Channel</TITLE>
	<LOGO HERF = "www.openloop.com/logo.gif"/>
	<ABSTRACT>Software Engineering News</ABSTRACT>
	<SCHEDULE>
		<INTERVALTIME DAY = "1"/>
	</SCHEDULE>
</CHANNEL>

 

Logic Flows:

Web Browsers subscribe to Web Site with Channels

Channel site send back CDF file with Channel Content

Web Browsers check for "changes"

Changed Content send back from Channel Site to Browser

...

Online Banking

We need an interchange data representation for financial data

Users want to purchase goods anywhere on the web with funds drawn from institutions anywhere on the web ... how does the bank talk to the vendors and to the customers ?

Use XML !

A statement request might looks as follows:

<StatementRequest>
	<BankAccount>
		<BankID>1234567</BankID>
		<AccountID>9999</AccountID>
		<AccountType>CHECKING</AccountType>
	</BankAccount>
</StatementRequest>

The standard used is called OFX (Open Financial Exchange) specification developed by Microsoft, Intuit, and Checkfree (Used in Microsoft Money)

 

 

Commercial Benefits of XML