David J. Malan, Instructor
malan@harvard.edu
http://www.cs.harvard.edu/malan/

Harvard Extension School

This course introduces XML as a key enabling technology in Java-based applications. Students learn the fundamentals of XML and its derivatives, including DTD, SVG, XML Schema, XPath, XQuery, XSL-FO, and XSLT. Students also gain experience with programmatic interfaces to XML like SAX and DOM, standard APIs like JAXP and TrAX, and industry-standard software like Ant, Tomcat, Xerces, and Xalan. The course acquaints students with J2EE, including JavaServer Pages (JSP) and Java Servlet, and also explores HTTP, SOAP, web services, and WSDL. The course's projects focus on the implementation and deployment of these technologies.

Loading...

These lectures were filmed in Maxwell Dworkin.

If you have questions or would like to discuss the material with others, you may want to join the Google Group at right.

Lecture 1: Introduction ▶ play ▾ expand all
Lecture 2: XML 1.1 and SAX 2.0.2 ▶ play ▾ expand all
Lecture 3: DOM Level 3 ▶ play ▾ expand all
Lecture 4: XPath 1.0 (and 2.0) and XSLT 1.0 (and 2.0) ▶ play ▾ expand all
Lecture 5: XPath 1.0 (and 2.0) and XSLT 1.0 (and 2.0), Continued ▶ play ▾ expand all
Lecture 6: Namespaces in XML 1.1 (Second Edition), SVG 1.1, and XSL (XSL-FO) 1.1 ▶ play ▾ expand all
Lecture 7: HTTP 1.1, JavaServer Pages 2.1, and Java Servlet 2.5 ▶ play ▾ expand all
Lecture 8: XQuery 1.0 and DTD ▶ play ▾ expand all
Lecture 9: XML Schema (Second Edition) ▶ play ▾ expand all
Lecture 10: XML Schema (Second Edition), Continued ▶ play ▾ expand all
Lecture 11: Web Services, SOAP 1.2, and WSDL 1.1 ▶ play ▾ expand all
Lecture 12: Ajax ▶ play ▾ expand all
Lecture 13: Conclusion ▶ play ▾ expand all

Below are projects (i.e., homework assignments). Included at the end of each specification are instructions for configuring your own computer just like nice.fas.harvard.edu (a server on which Harvard students have accounts).

If you have questions or would like to discuss the material with others, you may want to join the Google Group at right.

Project 1: My First XML Parser ▾ expand all

An opportunity for hands-on experience with the SAX and DOM APIs, this project will challenge you to implement a simplified XML parser, the foundation of which will be developed in lecture. The project will also allow you to employ an industry-standard XML parser to manipulate and transform XML input.

Project 2: XTube ▾ expand all

Not only will this project will afford you a chance to develop skills with SVG, XPath, and XSLT, it will also have you solve some real-world problems in London's Underground!

Project 3: Wahoo! ▾ expand all

The challenge of this project will be to implement a web-based portal (called, cough cough, Wahoo!) that aggregates data from a variety of sources. Not only will your application ultimately retrieve newsfeeds as XML streams from an external source, it will also support customizable display of this information and authentication of users.

Project 4: Scamazon.com ▾ expand all

Upon completion, your project will be theplace (not) to shop. Visitors will be able to browse your project's dynamically generated aisles, add items to your project's shopping cart, and then check out, their order (never to be) fulfilled by your project's fulfillment partner, a web service!