1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy,...

37
1 <XML> and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: <[email protected]> or <[email protected]> T: (416) 513.5656 / F: (416) 513.5590 Web: http://www.utoronto.ca/ian/talks/ Emerging Business Strategy, IBS [email protected] / 416.513.5656
  • date post

    21-Dec-2015
  • Category

    Documents

  • view

    216
  • download

    0

Transcript of 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy,...

Page 1: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

1

<XML> and the Future of Internet-based Computing

11 March 2002

Ian GRAHAM

Emerging Business Strategy, Bank of Montreal

E: <[email protected]> or <[email protected]>

T: (416) 513.5656 / F: (416) 513.5590

Web: http://www.utoronto.ca/ian/talks/

Emerging Business Strategy, IBS [email protected] / 416.513.5656

Page 2: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

2

Overview

A history lesson– The Web and the birth of XML – when, why, and who

What does XML give us?

Examples, illustrations, and applications

The future

Page 3: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

3

In The Beginning .....

…. was the birth of the Web (Tim Berners-Lee, 1992)

Internetcommunication

protocols

EmailNewsFtp

HTML(data/display)

Hello ThereHere’s a zippy HTML page, with lots of Colors and Links ...!!!Fun, Eh?

• HTMLWeb

Server

HTTP(transfer)

Db & other

software

• HTTP

URLs(location

e.g -- http://www.foo.org/boo.html )

• URL

Page 4: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

4

Three Core Concepts

HTTP -- HyperText Transfer Protocol– A protocol for transferring data between machines on the Internet

URL -- Uniform Resource Locator– A scheme for referencing, using a simple text string, the specific

location of a resource (Web page, audio file, program) somewhere on the Internet (e.g. http://www.utoronto.ca/ian/talks/ )

HTML -- HyperText Markup Language– a markup language for encoding information to be read / viewed by

people

HTTP and URLs have pretty-well stood the test of time.

But by 1996, HTML was already showing signs of age ....

Page 5: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

5

Simple HTML Example

HTML (not XML) Markup

<HTML>

<HEAD>

<TITLE>The XML Specification Guide -- Website Home Page </TITLE>

<LINK REL="stylesheet" HREF="style.css">

</HEAD>

<BODY BGCOLOR="#FFFFFF"

TEXT="black" LINK="#0066CB"

ALINK="#00A000" VLINK="#808080" >

<TABLE WIDTH="100%" CELLPADDING="0" CELLSPACING="0" BORDER="0">

<TR>

<TD VALIGN="top" ALIGN="left"><FONT CLASS="toolbar"

FACE="arial,helvetica" SIZE="-1">The XML Specification Guide

</FONT></TD>

…….. More tags and text ….

Browser Rendering

Page 6: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

6

The Problems with HTML

HTML designed to serve one role - simple hypertext documents, with simple user interaction (forms, etc.). But people soon wanted to display other types of data:

– mathematical expressions, literary text– graphics, multimedia, interactive content ...– commercial forms, purchase orders, generic data

... and “connect” these parts together (so they can interact)

... and dynamically mix/edit chunks of data together

... and build dynamic networks that exchange information

... and make sure this works reliably, anywhere.

Page 7: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

7

HTML Scope was Too Limited

– Single model for data (hypertext text)– Syntax too lenient ... It’s easy to create HTML that can be mis-

processed by other systems – Result:

• can’t create arbitrary custom data that can be universally understood

HTML

presentationof different

types of data

modelingdifferent types

of data

interchangedata between

machines

Evolution

Web

Page 8: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

8

The Birth of XML...

..happened in 1996, when a group of experts assembled to try and find a way out of the problem.

First draft came out in late 1996 ... Final version of the XML 1.0 specification came out in February 1998

– Large Canadian contribution -- 3 out of 18 WG members, plus 1/3 editors [Tim Bray]

– Followed in 1999 by a second ‘core’ XML specification (Also with Tim Bray as co-editor)

Core Principles– Simple

• But not as simple as HTML, in particular with stricter formal syntax

– Extensible• So you can create your own tags, or elements

– Distributed environment -friendly• like HTML, but better

Page 9: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

9

An XML Example

<?xml version=“1.0” ?><partorders xmlns=“http://myco.org/Spec/partorders” > <order ref=“x23-2112-2342” date=“25aug1999-12:34:23h”> <desc> Gold sprockel grommets, with matching hamster </desc> <part number=“23-23221-a12” /> <quantity units=“gross”> 12 </quantity> <deliveryDate date=“27aug1999-12:00h” /> </order> <order ref=“x23-2112-2342” date=“25aug1999-12:34:23h”> . . . Order something else . . . </order></partorders>

Page 10: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

10

Specification of a syntax for “encoding” text-based data (words, phrases, numbers, ...), with strict syntax rules about how to do so.

A text-based syntax -- written using printable characters (no explicit binary data)

Extensible -- you can define your own tags (essentially data types), within the constraints of the syntax rules

Universal -- the syntax rules ensure that all XML processing software MUST identically handle a given piece of XML.

If you can read and process it, so can anybody else

What is XML?

Page 11: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

11

Example Revisited

<partorders xmlns=“http://myco.org/Spec/partorders” > <order ref=“x23-2112-2342” date=“25aug1999-12:34:23h”> <desc> Gold sprockel grommets, with matching hamster </desc> <part number=“23-23221-a12” /> <quantity units=“gross”> 12 </quantity> <deliveryDate date=“27aug1999-12:00h” /> </order> <order ref=“x23-2112-2342” date=“25aug1999-12:34:23h”> . . . Order something else . . . </order></partorders> Hierarchical, structured information

tags attribute of thisquantity element

element

Page 12: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

12

Processing XML -- creating data structures

text

partorders

order

order

desc

part

quantity

delivery-date

date=

ref=

date=

ref=

xmlns=

<partorders xmlns="...">

<order date="..."

ref="...">

<desc> ..text..

</desc>

<part />

<quantity />

<delivery-date />

</order>

<order ref=".." .../>

</partorders>

text

XML syntax rules guarantees the same result, always

Page 13: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

13

XML: Why it's this way

Simple (like HTML)– But not quite so simple– Stricter syntax rules, to eliminate processing errors– syntax defines structure (hierarchically), and names structural parts

(element names) -- it is self-describing data

Extensible (unlike HTML, vocabulary is not fixed)– Can create your own language of tags/elements, with rules – Strict syntax ensures that custom tags can be reliably processed

Designed for a distributed environment (like HTML)– Can have data all over the place: can retrieve and use it reliably

Can mix different data types together (unlike HTML)– Can mix one set of tags with another set: resulting data can still be

reliably processed

Page 14: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

14

Mixing dialects together: name spaces

<?xml version="1.0" encoding="iso-8859-1"?><html xmlns="http://www.w3.org/1999/xhtml1" xmlns:mt=“http://www.w3.org/1998/mathml” ><head> <title> Title of XHTML Document </title></head><body><div class="myDiv"> <h1> Heading of Page </h1> <mt:mathml> <mt:sup> ...… MathML markup … </mt:mathml> <p> more html stuff goes here </p></div> </body></html>

mt: prefix indicates'type' mathml (a differentlanguage)

Default ‘type’is xhtml

Page 15: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

15

XML Specification(s) Chart

XML 1.0 XML names

W3C rec

Page 16: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

16

Classes of XML Dialects

XML gives us a tool for expressing data in a universally shareable way.

Many XML 'dialects,' optimised for different roles.

Can roughly break these down into five categories

– presentation & data stuff people read, look at, or exchange– metadata for describing things; for use by other

software– distributed apps data delivery; distributed applications, Web

services– XML utilities XSLT, Schemas,…– software utilities variety of things …

We’ll now look at some examples from the first three categories.

Page 17: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

17

Classes of XML Dialects

1) Presentational Language (for people/applications)

– SMIL -- for multimedia (RealPlayer Multimedia players) – WML -- Wireless WAP-phones – XUL -- user interface (Netscape 6)– VoiceXML -- voice interfaces (telephone-based ...)– XHTML -- XMLized version of HTML– …

Some language with specific academic relevance:– TEI -- Text encoding http://www.tei-c.org/ – MathML -- for mathematics http://www.w3.org/Math– XHTML -- new HTML http://www.w3.org/MarkUp– SVG -- for graphics http://www.w3.org/Graphics/SVG– HEML -- historical events http://www.heml.org

Page 18: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

18

TEI -- Text Encoding Initiative

... represent all kinds of literary and linguistic texts for online research and teaching, using an encoding scheme that is maximally expressive and minimally obsolescent. †

Recently migrated to be compatible with XML (TEI-Lite)– Namespaces let you re-use XHTML ‘links’

– XML also has its own more expressive linking/pointing mechanisms

Some online examples via .... [ www.utoronto.ca/ian/talks/11mar02/examples.html ]

Gain: universally accessible literary/academic texts, with networked capabilities

† From: TEI home page, http://www.tei-c.org, 16 Jan 2002

Page 19: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

19

MathML, SVG: for Mathematics and Graphics

XML dialects that model essential “types” of data for presentations and display.

“Namespace” mechanism let you mix these different types of information together, and with other dialects (like XHTML)

Some online examples ....[ www.utoronto.ca/ian/talks/11mar02/examples.html ]

Advantages: Can communicate both structural and semantic information (how it looks and what it means)

– Interactive mathematical example documents

– Interfaces with tools like Mathematica, Maple

– Non-proprietary languages, interfaces

Page 20: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

20

HEML: Historical Event Markup and Linking

... elements that are flexible enough to represent most known events in the past while working well with existing document encoding schemes, such as XHTML, TEI-Lite and Docbook. †

Online examples at ... [ www.utoronto.ca/ian/talks/11mar02/examples.html ]

A “web” of historical events, cross-linking documents with resources, timelines, etc.

† From: HEML home page, http://www.heml.org, 16 Jan 2002

Page 21: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

21

And others

CML - Chemical Markup Lang

CellML - biological models

BSML - bioinformatic sequences

MAGE-ML - Microarray Gene Expression

XSTAR - for archaeological research

XMLMARC - MARC in XML

AML - astronomy markup language

... many (dozens and dozens) more ...

There has been an explosion of activity towards developing “universal” XML formats for encoding, exchanging and linking information.

“Evolutionary” forces still at play (many languages are born, but only a few will survive)

Prediction -- this will lead to a big change in how academic information is created, shared, and stored.

Page 22: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

22

Informational Data: Metadata and Packages

Can use XML to encode information about data – Indexes, catalog records, etc.– data about non-text resources (images, people, whatever)

Can also use XML to package up information (data + catalog)

Example: IMS Content packaging– A standard for “packaging” Web content relevant to Web based

instructional applications– Will allow for interoperable content -- so it can be moved between

different IMS-compliant learning systems.– A growing number of learning systems, including WebCT, support

this standard

One of the core components for creating learning objects

Page 23: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

23

Distributed Data

The networking of the data is becoming more important that the data itself

XML is becoming the tool for creating such networks, and for transporting data from place to place in that network.

The preceding example languages can sometimes do this sort of thing, but there are also specific XML languages aimed at this role.

These ideas -- and some of the existing tools -- can be used in Portal / Website development, creation of distributed databases, etc.

Page 24: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

24

RDF -- Resource Description Framework– A language for encoding metadata about resources– Used by the Open Directory Project to create an open, shareable

directory of Web resources – Can search the directory site (like Yahoo), or download the entire

directory and integrate it into your own.

Current directory has: – 46,000 human editors– 45,000 categories– millions or ‘resources’ catalogued – re-used by ~290 sites around the world

Online examples from ... [ www.utoronto.ca/ian/talks/11mar02/examples.html ]

Distributed data application: Open Directory

Page 25: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

25

Open Directory Model

dmoz.org

infospace

infospace

Google

Ask Jeeves

Labour partyUK

RDF RDF data data feeds:feeds: <XML><XML>

Downloading XML datafrom well-known location

Page 26: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

26

Distributed data application: RSS

RSS -- Rich/Resource/RDF Site Summaries– A language for encoding summary data about Web pages/sites, and

related metadata (update interval, etc.)– Designed for syndicated distribution of information about pages – Rather like headlines for newspapers

There are currently 850+ syndicators of such data, and several thousand RSS ‘feeds’

– News agencies– Web sites with updated content– individuals with ‘blogs’

Online examples from ... [ www.utoronto.ca/ian/talks/11mar02/examples.html ]

Page 27: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

27

RSS Syndication Model

RSSaggregator

Black lines: <XML>

sites ...

RSSconsumers

Website

Desktopapp (e.g.,HeadlineViewer)

JavaScriptcomponent

Other ...(aggregator, ...)

‘one-way’ XML --Simple queryingof ‘aggregator’via URLs:http://ag.org/?news

Page 28: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

28

open, XML-based protocol for instant messaging and presence. Jabber-based software is deployed on thousands of servers across the internet and is used by over a million people worldwide.

A complete XML-based distributed application toolset.

Distributed data application: Jabber

† From: TEI home page, http://www.tei-c.org, 16 Jan 2002

Page 29: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

29

Jabber:

Jabberserver

Jabberserver

Jabber clients

• Presence• User directory• Proxys to Yahoo, ICQ• Other services

Page 30: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

30

Jabber Example

Jabberserver

Jabberserver

Jabber client

• Connect register presence

• Lookup user contact database

• Send text message contact database

Jabber client

Requests and responses all sent in XML

Generic XML protocol for exchanging messages, plus some services.

Can be extended to non-text messaging applications

Page 31: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

31

XML for networked applications

XML for encoding data

XML for transporting information between applications

XML for encoding instructions to send to another application– XML interfaces to other applications

Creation of Web Services– Software made available to others via a generic XML interface, with

supporting facilities (directory service for ‘finding’ them, etc.)

XML is becoming the core tool for building distributed, dynamically configured applications

Page 32: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

32

• Web content distribution• Calendar aggregation• Portlets for Web sites• Distributed catalogs / db’s

How can this be used?

IntegratedApplication

Web site

News Feeds

Jabber/chat

Banking

XML interface(SOAP, XML-RPC, other...)

Page 33: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

33

The result of all this activity

Enormous drive to create all the XML technologies needed behind the scenes

Many “core” XML languages, plus many supporting standards

Evolution has been very quick, as the new Web model is not that n

Page 34: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

34

XML (and related) Specifications

XML 1.0 XML names

‘Open’ std

W3C rec

W3C draft

industry std

XML Core

APIs

Style Protocols Web Services Application areas Data/presentaion

XHTMLbasic

Xlink …...

SAX 1

Xpath

XSLT

XSL

DOM 1

Modularized XHTML

Xforms

Canonical

XMLsignature

XML baseXpointer

XML query ….

Infoset

XML schema

Xfragment

XHTMLevents

UDDI

XML-RPC100's

more ....

SAX 2

DOM 2

DOM 3

CSS 1

CSS 2

CSS 3

JDOM

JAXP

WSDL ...

ebXML

Biztalk

WDDXXMI ...

...

IFX

Docbook

...

MathML

SMIL 1 & 2

VoiceXML

XHTML 1.0

RDF

SOAP RSS

CellML

IMS

SVG

HEML

TEI

XULJabber

Page 35: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

35

In Conclusion

XML is changing the way we think about ‘raw’ information– Open,– Universal– Shareable– Distributable– Collective, complex, and emergent

.. and with the Internet model is changing the way we think about applications

– Networked (via XML) collections of individually simple apps.– Value in aggregation, not the individual parts

Page 36: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

36

Conclusion II

“A large part of how we think about music is influenced by the methods by with which it has conventionally been distributed. We think of pop songs as being three or four minutes long because 40 years ago that was all that could fit on one side of a vinyl single.”

Moby

We think of Internet-based computing is the same way -- in terms of what we know or knew -- not what it can be, or will become

Our great opportunity is to help define this future

Page 37: 1 and the Future of Internet- based Computing 11 March 2002 Ian GRAHAM Emerging Business Strategy, Bank of Montreal E: or T: (416) 513.5656 / F: (416)

37

<XML> and the Future of Internet-based Computing

11 March 2002

Ian GRAHAM

Emerging Business Strategy, Bank of Montreal

E: <[email protected]> or <[email protected]>

T: (416) 513.5656 / F: (416) 513.5590

Web: http://www.utoronto.ca/ian/talks/

Emerging Business Strategy, IBS [email protected] / 416.513.5656