Fundamentals of XML

University at Albany, State University of New York
College of Computing and Information
Department of Information Studies


Course: IST 538 / 3 Credits / Spring 2013
Meeting times: Thursdays 4:15 – 7:05 PM
Location: Husted Hall Room 004
Instructor: Mark Wolfe
Office: SL355
Office Hours: By appointment
Email: mwolfe@albany.edu
Textbook: XML: Visual QuickStart Guide (2nd Edition) by Kevin Howard Goldberg, Peachpit Press, 2008 [available in University Bookstore]
Prerequisites: None
ERes Password: [ask instructor]

Course Description:

This course introduces students to Extensible Markup Language or XML. Topics will include: separation of digital content from presentation; markup standards for XML documents; XML technologies such as DTD, Schema, XSLT, XPath, and DOM. For the final project, an archival finding aid will be marked up using a professional encoding standard, which will reinforce fundamental concepts and principles of XML.

Learning Outcomes

Upon completion of this course, students will:

Grading

 In-class participation & exercises    10% 
 4 Homeworks   40% 
 2 Tests   30% 
 1 Final Project  20%

Software

We will use Notepad++ to create and edit XML documents. While this application is installed on all University ITS computers, we will make a seperate installation on your "S:Drive." This installation will feature additional capability using XML Tools for working with XML not found on the ITS version. Students who want to work on Macintosh computers may consider using JEdit, which is a comparable editing program and freely available. Here is a list of other XML editing applications available to consider.

Readings

The textbook readings present technical aspects of XML. The majority of the supplementary readings explore topical issues related to XML and the information professions. The textbook author has made all of the XML: Visual QuickStart Guide examples available online. Bring the textbook to every class meeting. Complete assigned readings before class. Class lectures are delivered with the assumption you have completed the assigned reading. While the chapters are short, they may require multiple readings in order to make sense of the concepts and technologies. You may increase the speed in which you master the material by working through the textbook examples using your XML editor before each class meeting.

In-class participation & exercises

The success of this class will be greatly enhanced by active participation from all students. Questions, comments, and useful information for fellow students and the instructor are welcome. Students are encouraged (but not required) to work in groups for in-class exercises; groups of two or three usually work the best.

Homeworks & Final Project

To excel in this class, students must demonstrate the ability to use various XML related technologies in four homework assignments and a final project assignment. Hand in assignments on time! Students who fall behind will most likely suffer on the following assignments and tests.

Submission Process

Submit homework assignments and the final project as an attachment in an email. Homework submissions and questions to the instructor should include a subject heading like the following, "IST 538 / Homework 1 submission" or "IST 538 / Homework 1 question." The majority of the assignments must be submitted as an "archived" file using the .zip format so as not to be deemed a virus by Outlook.

Academic Integrity

The class follows the University's policy on Academic Integrity.

Course Schedule

The course schedule is subject to change based on the instructor's discretion.


January 24
1.)  Course Introduction and XML Syntax (Part 1)
Topics:  Introduce the course, review syllabus, discuss the significance XML has for how we represent our data, and basic XML syntax overview
Readings:
Presentation:   
In-class Exercise:   
Sample files:

January 31
2.)  XML (Part 2)
Topics:   Elements, attributes, and well-formedness
Readings:
Presentation:
Sample files:

February 7
3.)  DTDs (Part 1)
Topics:   Document type definitions, declarations, and data structuring issues
Assignment 1   DUE
Readings:
Presentation:
In-class Exercise:    Create a DTD for sales_directory_ex3.xml following these guidelines.
Sample files:    directories.dtd    directories.xml

February 14
4.)  DTDs (Part 2)
Topics:   Validation and data content models
Readings:
Presentation: 
Sample files:

Feburary 21 **CLASS CANCELLED**

February 28
5.)  Schema (Part 1)
Topics:   Simple types, facets, patterns (regular expressions), data types, and entities
Assignment 2   DUE hw2.doc   tomato.xml  catalog.pdf (due 2/21)
Readings:
    Chapter 9 & 10 (Goldberg)
Presentation:  
Sample files:

March 7
6.)  Schema (Part 2)
Topics:  Complex types, cardinality, references, and local & global elements.
Readings:
    Chapter 11(Goldberg)
Presentation:    Schema presentation
In-class Exercise:     Create an XMLSchema for directory.xml following these guidelines.   Here is the solution.
Sample files:

March 14
7.)   Namespaces & Markup Standards
Topics:   Namespaces and how they relate to XML standards (i.e., EAD, TEI, and MARCXML)
Assignment 3   DUE
**TEST 1** (XML, DTD, & Schema)
Readings:
    Chapter 12 & 13 (Goldberg)
Presentation:    XML Namespaces Video
Sample files:

March 21 **CLASSES SUSPENDED**

March 28
8.) Encoded Archival Description (EAD) & Final Project Assignment
Topics:   Guest Lecturer from Special Collections & Archives Department
Readings:
    Chapter 2 Roy Tennant’s “MARC Must Die”, Library Journal October 15, 2002  ERes
Presentation:
    "Practical Use of EAD" ERes
Sample files:

April 4
9.)  XSLT
Topics:   Discuss XSLT basics, transformations, templates, processing nodes
Readings:
    Chapter 2 (Goldberg)
Presentation:   XSLT Introduction
In-class Exercise:   Create an XSLT document for full_directory.xml following these guidelines.
Sample files:   XSLT examples from Goldberg

April 11
10.)  XPath
Topics:  Using XPath to select particular nodes and execute functions
Readings:
    Chapter 3 & 4 (Goldberg)
Presentation:    XPath
In-class Exercise:
Sample files: context node example

April 18
11.) In-class Review & work on Final Project
Topics:  Review XML concepts and work on final project 
Readings:
Presentation:
Sample files:

April 25
12.)  Document Object Model (DOM) and Ajax
Topics:   Discuss DOM and practical applications of Ajax technologies
Assignment 4  DUE

Optional Readings:   

Presentation:   DOM and Ajax
Sample files:  Walking the DOM with JavaScript

  The Javascript and HTML file (must view in IE)  lesson12.html

  Data file  full_directory

May 2
13.)  Test
Topics:  After the test will be open class to complete final project
**TEST 2** (XSLT, XPath, & Namespaces)
Readings:  
Presentation:
Sample files: