21
S 331 – Programming Languages Date: 4-30-08 Internet Programming Group Presenter: Aren Ray Topics: Internet Programming XML

CS 331 – Programming LanguagesDate: 4-30-08 Internet Programming Group Presenter: Aren Ray Topics: Internet Programming XML

Embed Size (px)

Citation preview

CS 331 – Programming Languages Date: 4-30-08

Internet Programming Group

Presenter: Aren RayTopics: Internet Programming

XML

CS 331 – Programming Languages Date: 4-30-08

History of the World Wide Web

1990: Sir Tim Berners-Lee – CERN Sharing information among researchers

World Wide Web Conference in 1994 W3C

Commercialization Boom/Bust Where are we now?

CS 331 – Programming Languages Date: 4-30-08

HTTP Hypertext Transfer Protocol

Purpose How it works

Client (user) Request messages and URLs

scheme://name:[email protected]:8042/subdir/file.ext;para=meter?

query=item#fragment

Other common schemes: https, ftp, mailto Server (website)

Process and/or reply

CS 331 – Programming Languages Date: 4-30-08

History of Browser Clients

1991: WorldWideWeb 1992: Unix and Mac browsers appear

1993: Mosaic 1994: Netscape 1.0 1995: IE 1.0 introduced in Win 95

CS 331 – Programming Languages Date: 4-30-08

“Browser Wars”

Netscape dominant, IE challenges Rapid-fire versions IE pulls ahead

Included with Windows (then Macs) More money

1998: Antitrust Lawsuit (US v Microsoft) Settled in 2001

CS 331 – Programming Languages Date: 4-30-08

Markup Languages

Standard Generalized Markup Language Metalanguage

Hypertext Markup Language

CS 331 – Programming Languages Date: 4-30-08

HTML - Elements Types

Structural: <h1> Presentational <b>, <i>, <u> Hypertext:

Attribute: <font color=“green”> Content: <b>Bold Text</b>

CS 331 – Programming Languages Date: 4-30-08

HTML Versions 1993: HTML 1.0 1995: HTML 2.0

Tables Image Maps Internationalization

HTML 3.0 (Never Implemented) Complex Math Elements Text Flow

1997: HTML 4.0 “Flavors”

Strict Transitional Frameset

CS 331 – Programming Languages Date: 4-30-08

HTML – Code Example<html>

<head><title>This is the title of the page.</title>

</head><body>

<p>This is a line of text.</p><p><a href=“http://www.google.com”>This is a URL

link</a></p><p><b>Bold Text</b></p> <ul>

<li>List Item 1</li><li>List Item 2</li>

</ul><table border="1">

<td>Cell 1</td><td>Cell 2</td>

</table></body>

</html>

CS 331 – Programming Languages Date: 4-30-08

HTML – Display Example

CS 331 – Programming Languages Date: 4-30-08

XML - Overview What is XML?

Extensible Markup “Language” Specification User-defined Elements

History Growth of the Web 1996: Jon Bosak

Support from Microsoft 1998: W3C Recommendation Current: XML 1.0 & 1.1

CS 331 – Programming Languages Date: 4-30-08

XML – Purpose

Carry vs. Display XML and HTML Doesn’t “do” anything

CS 331 – Programming Languages Date: 4-30-08

XML – Processing Files

Simple API for XML Extraction

Document Object Model Navigation

Extensible Stylesheet Language Display/Printing

CS 331 – Programming Languages Date: 4-30-08

XML – Documents Well-Formed Documents

Syntax rules<NamE attribute="value">Content</NamE><parent>

<nestedChild>More content</nestedChild></parent><empty />

Valid Documents (User-defined rules) Document Type Definition XML Schema

W3C

CS 331 – Programming Languages Date: 4-30-08

XML – Example (1)

Code<bookstore>

<book category="COOKING"> <title lang="en">Everyday Italian</title> <author>Giada De Laurentiis</author> <year>2005</year> <price>30.00</price>

</book> </bookstore>

CS 331 – Programming Languages Date: 4-30-08

XML – Example (2)

http://www.w3schools.com/xml/nodetree.gif

CS 331 – Programming Languages Date: 4-30-08

XHTML Document

HTML saved in Microsoft Word

<html xmlns:v="urn:schemas-microsoft-com:vml"

xmlns:o="urn:schemas-microsoft-com:office:office"

xmlns:w="urn:schemas-microsoft-com:office:word"

xmlns="http://www.w3.org/TR/REC-html40">…

CS 331 – Programming Languages Date: 4-30-08

XHTML Page

MS Office HTML file size: 2687 B

Notepad HTML file size: 115 B

CS 331 – Programming Languages Date: 4-30-08

XML - Summary Generalization User-Defined Elements & Rules Stores Data Advantages

Text-Based Unicode Support Hierarchical Structure

Disadvantages Content <-> Attributes Verbosity Redundancy/Inefficiency

CS 331 – Programming Languages Date: 4-30-08

XML – Future Directions

Document Authoring

CS 331 – Programming Languages Date: 4-30-08

Sources http://www.w3schools.com/xml/default.asp

http://en.wikipedia.org/wiki/XML

http://www.ibm.com/developerworks/library/x-xml2008prevw.html

http://www.w3.org/People/Berners-Lee/FAQ.html