Instructor: Bruce Donald Campbell

Faculty, Continuing Education - RISD
Providence, RI

Director, Watersheds Project
Providence, RI

Email: bcampbel01@risd.edu

Prerequisites: None


XML - Extensible Markup Language - is currently one of the most popular industry formats for document publishing and web application development. It is an extensible and elegant solution that is being rapidly incorporated in next-generation document, web and eBusiness application strategies. Moreover, XML fluency is a requirement among progressive web masters, programmers, technical writers, and progressive print publishers. This class begins with the essential characteristics of an XML document and continues with students creating valid XML publications with an XML editor. Ultimately, students become acquainted with Document Type Definitions (DTDs) and Cascading Style Sheets (CSS). Equally important, they come to understand their relevance and application to anticipated guidelines for publishing XML authored documents on the world wide web.

Prerequisite: HTML I: The Language of the Web
Applies to the following certificate program (36 contact hours): WE-E


Class participation - 20%
Written project - 60%
Homework assignment - 20%



The recommended book for this class is the book XML for the World Wide Web: Visual QuickStart Guide — ISBN 0-201-71098-6. (October 2000) but you might be able to get along OK without it if you are comfortable finding reference materials on the Web.

Course Handouts and On-line Readings as identified below and in class.




welcome to xml

Goal: To become familiar with extensible markup language theory and look at some popular XML-based languages.

We'll write some XML to reinforce syntax and semantic requirements of any XML language and validate the examples we write. We'll talk about the process of data modeling that is critical to encoding a data specification intelligently.

We'll look at the rules of XML syntax, the XML Wikipedia page, and do Chris' XML exercises together in class.


  • Read the Introduction to Elizabeth Castro's XML For The World Wide Web book.
  • Read the XML Primer I provide you on our class website.
  • Begin to pick your way through Wikipedia's Page on XML
  • Chapter 1, Writing XML, in our class book.


  • Pre-test: Please write a 1000 word essay of your current understanding of XML and how marked up data pages enable the information age. E-mail me your thoughts.
  • Introduce yourself on our class RISD CE Forum.


xml extensibility

XML Language Example and Use

Goal: To write our own XML-based documents that follow an XML-based language specification. We'll look at useful XML documents, attempt to write DTDs to validate them, consider popular interfaces to XML documents, and answer questions from Chris Bates' book.




data table definitions

Goal: To understand how to write DTD's and use them to validate XML documents. We'll review our first workbooks, discuss the data modeling process for a language, continue our PHP and JavaScript XML interface investigation, and start to compare XML Schema to Document Type Definition as an XML-based language validation technique.


  • Recommended: Read the Data Modeling Overview I've provided
  • Chapter 2, Creating a DTD, in our class book.
  • Chapter 3, Defining Elements and Attribute in a DTD, in our class book.
  • Chapter 4, Entities and Notations in DTDs, in our class book.
  • Review the DTD worksheet answers we reviewed in class
  • Perform a data modeling session with your target project data domain.


xml schema

Goal: To understand how to write an XML Schema and use it to validate XML documents.


  • Complete the second workbook as assigned in class
  • Work on your class project.


types and namespaces

Goals: To understanding Types, Namespaces, and their Value in XML-based Languages (and translation with XSLT).
Gain exposure to designing and writing your own XML types (both simple and complex types) with or without the use of namespaces to identify scope. Gain exposure to writing XSLT documents for translating between XML languages.


  • Chapter 7, Defining Complex Types, in our class book.
  • Chapter 8, Using Namespaces, in our class book.
  • Chapter 9, Namespaces, Schema, and Validation, in our class book.
  • Chapter 10, XSLT, in our class book.
  • The XSLT Primer
  • An example: Sitemaps with Validation
  • If interested, take a look at the SAXON User Documentation.


xpath and xml databases

Goal: Gain exposure to XPath for accessing nested components in an XML document. Explore XML-based databases.


  • Work on your class project in order to turn in by May 30th at 11:59pm.
  • Check out our final project submissions! Nice work, all!

Turn in your project by 11:59pm on February 17th.