Infosys 290 - Section 8
XML and Related Technologies
Teaching Assistant
Peter Charles
petefc@sims.berkeley.edu
School of Information Management and Systems
Website: http://www.sims.berkeley.edu/academics/courses/is290-8/s04/
Description:
The purpose of this course is to provide a foundation for the core XML technologies that are used within the document engineering domain. The specifics of XML and related standards will be covered in detail. Also, assignments related to learning to work within these standards will be assigned.
This course will cover XML, XPath, XSLT, XML Schema, CSS and XSL FO. In addition, we will use several "extensions" and addition tools to look at XML Schema's PSVI and pipelines. This will provide a look into the future of XML in relation to schema-based processing and XML processing models.
During approximately the last four weeks of class there will be project work that will encompass all the technologies learnt previously. These projects will be related to the topics covered in this course. While some may be suggested by the instructor, it is also possible for the student to substitute their own projects as long as they relate in the same manner to the course contents.
During the final week of class, a short presentation will be given by each student on their project. A presentation should include a motivation for the project, a technical description of the solution, and possibly a demonstration. In addition, a short paper describing the solution will be submitted and graded. One of the purposes of this paper is to give a flavor of the kind of documentation that should accompany an XML-related project. Also, this project and its paper will be considered the final for the course.
Note: Although Document Engineering (290-4) and this course compliment each other, it is not necessary to take 290-4 concurrently. This course will operate independently of 290-4.
Homework Upload: https://cardea.sims.berkeley.edu/upload/doc-eng-lab/
Project Documentation Format: projects.zip
103B South Hall at Monday 2-3:30pm and Wednesday 2-3:30pm
Recommended Texts:
Definitive XML Schema, Priscilla Walmsley , Prentice Hall, 0-13-065567-8
Learning XSLT, Michael Fitzgerald , O'Reilly & Associates, 0596003277
Suggested: Learning XML (2nd Edition), Eric Ray , O'Reilly & Associates, 0-596-00420-6
Schedule:
Readings:
XML 1.0 (Second Edition) (http://www.w3.org/TR/REC-xml)
Learning XML, pages 113-132, DTD's
Alternate, XML in a Nutshell, Chapter 3, DTD's
The Unicode Standard: A Technical Introduction (http://www.unicode.org/standard/principles.html)
Unicode Code Charts (http://www.unicode.org/charts) - Reference
XML Information Set 1.0 (http://www.w3.org/TR/xml-infoset/)
Lecture Slides:
Course Format: (slides) (printable) Main Lecture: (slides) (printable)
Assignments
Assignment 1 - due on 01/27
Readings:
Definitive XML Schema, Chapter 3
Learning XSLT, Chapter 4
Namespaces in XML 1.0 (http://www.w3.org/TR/REC-xml-names/) - Reference
XML Path Language (XPath) 1.0 (http://www.w3.org/TR/xpath) - Reference
Lecture Slides:
Main Lecture: (slides) (printable)
Assignments
Assignment 2 - due on 02/03
Readings:
XSLT 1.0 (http://www.w3.org/TR/xslt) - Reference
Learning XSLT, Chapters 1, 2, & 6
Lecture Slides:
Main Lecture: (slides) (printable)
Assignments
Assignment 3 - due on 02/10
Readings:
Learning XSLT, Chapters 5, 7, 8, & 12
Lecture Slides:
Main Lecture: (slides) (printable)
Assignments
Assignment 4 - due on 02/17
Readings:
Learning XSLT, Chapters 9,10, 11, 13
Lecture Slides:
Assignments
Assignment 5 - due on 02/24
Readings:
Definitive XML Schema, Chapters 1-2, 3.3, 5,7, 8
XML Schema Part 0: Primer (http://www.w3.org/TR/xmlschema-0/)
Software: XSV - Validation Tool (http://www.ltg.ed.ac.uk/~ht/xsv-status.html)
Lecture Slides:
Schema Concepts: (slides) (printable)
Modeling Elements and Attributes: (slides) (printable)
Getting Started with XML Schema: (slides) (printable)
Assignments
Assignment 6 - due on 03/02
Readings:
Simple Types - Definitive XML Schema, Chapters 4, 6.1-6.2, 9-12
XML Schema Part 1: Structures (http://www.w3.org/TR/xmlschema-1/): Section 5 and Appendix C
Lecture Slides:
Main Lecture: (slides) (printable)
Projects: (slides) (printable)
Assignments
Assignment 7 - due on 03/09
Readings:
Complex Types - Definitive XML Schema, Chapters 13-16
Lecture Slides:
Main Lecture: (slides) (printable)
Assignments
Assignment 8 - due on 03/16
Readings:
Definitive XML Schema, Chapters 20, 21
Lecture Slides:
Best Practices: (slides) (printable)
Demo Application: (slides) (printable)
Assignments
Assignment 9 - due on 03/30
Readings:
Cascading Style Sheets, Level 2 CSS2 Specification (http://www.w3.org/TR/CSS2/) - Read Sections 4-6, 8, 9 - Use the rest as reference (especially Appendix F).
Lecture Slides:
Tomcat & Cocoon: (slides) (printable)
Introduction to CSS2: (slides) (printable)
Assignments
Assignment 10 - due on 04/13
Readings:
XML Pipeline Definition Language Version 1.0 (http://www.w3.org/TR/xml-pipeline/)
JAXP - Java API for XML Processing - (http://java.sun.com/j2ee/1.4/docs/tutorial/doc/JAXPIntro2.html)
Reference - JDK 1.4 Documentation
Lecture Slides:
XML Processing Models & Pipelines: (slides) (printable)
JAXP - Java API for XML Processing: (slides) (printable)
Readings:
See the CDE Website
Lecture Slides:
XML and Graphs: (slides) (printable)
Readings:
The RDF Primer (http://www.w3.org/TR/rdf-primer/)
Lecture Slides:
Authentication & Sessions in Tomcat/Cocoon: (slides) (printable)
RDF & OWL: (slides) (printable)
Readings:
XInclude: http://www.w3.org/TR/xinclude/
XML Base: http://www.w3.org/TR/xmlbase/
Lecture Slides:
XML Base and XML Cocoon: (slides) (printable)
Readings:
Extensible Stylesheet Language (XSL) Version 1.0 (http://www.w3.org/TR/xsl/) - Read Sections 3 & 4 - Use the rest as reference.
Readings: