An XML Introduction - PowerPoint PPT Presentation

1 / 32
About This Presentation
Title:

An XML Introduction

Description:

Need extra instructions (a 'style sheet' document) to define how things should look ... Explorer 5 -- shows a tree of elements. Navigator 4, Internet Explorer 4 ... – PowerPoint PPT presentation

Number of Views:27
Avg rating:3.0/5.0
Slides: 33
Provided by: iansg
Category:

less

Transcript and Presenter's Notes

Title: An XML Introduction


1
An XML Introduction
  • Next Generation Web Data
  • Ian GRAHAM
  • Centre for Academic Technology
  • Tel 978-4548
  • Email ltian.graham_at_utoronto.cagt
  • Talk http//www.utoronto.ca/ian/talks/

2
Overview
  • An XML example
  • -- so whats so special about XML?
  • The birth of the Web -- HTML
  • HTML is not enough -- why?
  • XML for universal data
  • Common uses and applications

3
XML Example test.xml
  • lt?xml version"1.0" encoding"iso-8859-1 ?gt
  • lthtml xmlns"http//www.w3.org/TR/xhtml1" gt
  • ltheadgt
  • lttitlegt Title of text XHTML Document lt/titlegt
  • lt/headgt
  • ltbodygt
  • ltdiv class"myDiv"gt
  • lth1gt Heading of Page lt/h1gt
  • ltpgt here is a paragraph of text. I will
    include inside this paragraph a bunch of
  • wonky text so that it looks fancy.
    lt/pgt
  • ltpgtHere is another paragraph with
    ltemgtinline emphasizedlt/emgt text, and
  • ltbgt absolutely nolt/bgt sense of humor.
    lt/pgt
  • ltpgtAnd here is another paragraph, this one
    containing an ltimg src"image.gif"
  • alt"waste of time" /gt inline image,
    and a ltbr /gt line break. lt/pgt
  • lt/divgt
  • lt/bodygtlt/htmlgt

4
It Looks Like HTML .
  • Sort of .
  • Tags look just like HTML tags (although XML lets
    you create your own)
  • The red bits are special XML stuff (we will
    discuss them later)
  • Its got .xml at the end

5
The Birth of the Web
  • The HyperText Markup Language
  • A simple language for distributing text
  • All that other stuff
  • URLs, HTTP, CGI ...

6
HTML Evolution
  • Started with very few tags
  • Language evolved, as more tags were added
  • forms
  • tables
  • fonts
  • frames

7
HTML Problems
  • Desire for personalized tags
  • Want to put data into HTML form
  • mathematics, database entries, literary text,
    poems, purchase orders .
  • HTML just isnt designed for that!

8
HTML Problems (2)
  • Software processing
  • Server management of data
  • But -- HTML is so ill-formed, this is hard!

HTML
HTML
HTML
HTML
HTML
9
Idea Back to the Basics
  • HTML was defined using SGML
  • Standard Generalized Markup Language
  • A meta-language for defining languages.
  • Complex, sophisticated, powerful
  • Idea Use SGML

10
Languages based on SGML
HTML
TEI
DocBook
. . .
SGML
11
Problems with SGML
  • Too complicated a language
  • Rules are too strict
  • Cant distribute loosely formatted text (like
    HTML)
  • Not good in a distributed environment
  • Cant mix different data together
  • Cant add arbitrary tags

12
Idea (2) Webified SGML
  • New eXtensible Markup Language XML
  • Can use XML to define new languages
  • Distributes easily on the Web
  • Can mix different types of data together
  • can easily add new tags, and tell a browser what
    to do with them.

13
Basic XML Rules
  • Tags like in HTML, but ...
  • Technical details
  • Tag names are case-sensitive
  • Always need end tags
  • Special empty-element tags
  • Always quote attribute values

14
Like this example ..
lt?xml version"1.0" encoding"iso-8859-1"?gt lthtml
xmlns"http//www.w3.org/TR/xhtml1" gt ltheadgt
lttitlegt Title of text XHTML Document
lt/titlegt lt/headgtltbodygt ltdiv class"myDiv"gt
lth1gt Heading of Page lt/h1gt .. ltpgtAnd
here is another paragraph, this one containing
an ltimg src"image.gif" alt"waste
of time" /gt inline image, and a ltbr
/gt line break. lt/pgt lt/divgt lt/bodygtlt/htmlgt
15
XML Things
  • lt?xml version1.0 encodingiso-8859-1 ?gt
  • Says that this is an XML document
  • lthtml xmlnshttp//www.w3.org/TR/xhtml1gt
  • Says that the meaning of the tags inside (and
    including) the html element are defined here.

16
Evolution of XML
  • Many XML languages, optimised for different roles
  • MathML -- for mathematics
  • SMIL -- for synchronised multimedia
  • RDF -- for describing things
  • XUL -- for describing the Navigator 5 user
    interface

17
MathML
  • Designed to express semantics of maths
  • Also can express layout
  • Cut paste into Maple, Mathematica
  • x2 4x 4 0
  • ltmrowgt
  • ltmrowgt
  • ltmsupgt ltmigtxlt/migt ltmngt2lt/mngt lt/msupgt
    ltmogtlt/mogt
  • ltmrowgt
  • ltmngt4lt/mngt
  • ltmogtinvisibletimeslt/mogt
  • ltmigtxlt/migt
  • lt/mrowgt
  • ltmogtlt/mogt
  • ltmngt4lt/mngt
  • lt/mrowgt
  • ltmogtlt/mogt
  • ltmngt0lt/mngt
  • lt/mrowgt

18
SMIL
  • Synchronised Multimedia Integration Language
  • Integration of multimedia with text, audio, video
  • Support in RealPlayer G2

19
SMIL Example
ltsmilgt ltheadgt ltmeta name"title"
content"Online Teaching Services promo" /gt
ltmeta name"author" content"Jay Moonah, CAT" /gt
ltlayout type"text/smil-basic-layout"gt
ltroot-layout width"280" height"316"
background-color"white"/gt ltregion
id"AnimChannel1" title"AnimChannel1"
left"0" top"0" height"265" width"280"
fit"hidden"/gt lt/layoutgt lt/headgt ltbodygt ltpar
title"Online Teaching Services promo"
author"Jay Moonah, CAT" gt ltaudio
src"final.rm" id"Soundtrack"
title"Soundtrack"/gt ltanimation
src"otscompfin.swf" id"Animation"
region"AnimChannel1" title"Animation"
fill"freeze"/gt lttext src"cc.rt"
id"caption" region"cc" title"cc"
fill"freeze"/gt lt/pargt lt/bodygtlt/smilgt
20
XHTML NextGen HTML
  • lt?xml version"1.0" encoding"iso-8859-1"?gt
  • lthtml xmlns"http//www.w3.org/TR/xhtml1" gt
  • ltheadgt
  • lttitlegt Title of text XHTML Document lt/titlegt
  • lt/headgt
  • ltbodygt
  • ltdiv class"myDiv"gt
  • lth1gt Heading of Page lt/h1gt
  • ltpgt here is a paragraph of text. I will
    include inside this paragraph
  • a bunch of wonky text so that it
    looks fancy. lt/pgt
  • ltpgtHere is another paragraph with
    ltemgtinline emphasizedlt/emgt
  • text, and ltbgt absolutely nolt/bgt sense
    of humor. lt/pgt
  • ltpgtAnd another paragraph, this one with an
    ltimg src"image.gif"
  • alt"waste of time" /gt image, and a
    ltbr /gt line break. lt/pgt
  • lt/divgt
  • lt/bodygtlt/htmlgt

21
XHTML
  • Just like HTML, but based on XML rules
  • Will support integration of different data into a
    single document

22
XHTML and other Data
  • lt?xml version"1.0" encoding"iso-8859-1"?gt
  • lthtml xmlns"http//www.w3.org/TR/xhtml1" gt
  • ltheadgt
  • lttitlegt Title of XHTML Document lt/titlegt
  • lt/headgtltbodygt
  • ltdiv class"myDiv"gt
  • lth1gt Heading of Page lt/h1gt
  • ltmathml xmlnshttp//www.w3.org/TR/mathmlgt
  • MathML markup
  • lt/mathmlgt
  • ltpgt more html stuff goes here lt/pgt
  • ltsmil xmlnshttp//www.w3.org/TR/smil1gt
  • SMIL markup
  • lt/smilgt
  • lt/divgt
  • lt/bodygtlt/htmlgt

23
Displaying XML
  • More complicated than HTML
  • XML represents data only, not how it looks
  • Need extra instructions (a style sheet
    document) to define how things should look

24
What Browsers Do Now?
  • Netscape 5 -- ignores the tags ... or so it seems
    ...
  • Internet Explorer 5 -- shows a tree of elements
  • Navigator 4, Internet Explorer 4
  • Uggh (cant handle it)

25
Other Use Data Abstraction
  • XML as a universal format for data interchange
  • Machines exchange data as XML-format messages
  • Eliminates proprietary data formats
  • Lots of XML processing software available

26
XML Messaging
27
XML Messaging
Other DB
Request/send data
Database
Other DB
Other DB
Request/send data
28
Example Message
  • ltpartorders xmlnshttp//myco.org/Spec/partorders
    .descgt
  • ltorder refx23-2112-2342 date25aug1999-1234
    23hgt
  • ltdescgt Gold sprockel grommets, with
    matching hamsterlt/descgt
  • ltpart number23-23221-a12 /gt
  • ltquantity unitsgrossgt 12 lt/quantitygt
  • ltdelivery-date date27aug1999-1200hgt
  • lt/ordergt
  • ltorder refx23-2112-2342 date25aug1999-123
    423hgt
  • . Order something else ..
  • lt/ordergt
  • lt/partordersgt

29
The XML Family Tree
HTML
TEI
. . .
. . .
XML
SGML
30
Other Examples
  • XUL XML User Interface Language
  • How Navigator 5 configures its interface
  • RDF Resource Description Framework
  • For describing things
  • Used by Netscape Open Catalog project to define
    Web accessible resources

31
Summary
  • a framework for distributing data on the Web
  • an integration tool for mixing different types of
    data
  • a universal format for exchanging data between
    machines

32
An XML Introduction
  • Next Generation Web Data
  • Ian GRAHAM
  • Centre for Academic Technology
  • Tel 978-4548
  • Email ltian.graham_at_utoronto.cagt
  • Talk http//www.utoronto.ca/ian/talks/
Write a Comment
User Comments (0)
About PowerShow.com