Division of Graduate Professional Studies s1

Brandeis University

Division of Graduate Professional Studies

Rabb School of Continuing Studies

Course Syllabus

I. Course Information

XML and Related Languages

RSEG-151

Jan 22 – April 5, 2014.

Instructor’s Name and Contact Information

·  Leo Malkenson

·  E-mail mailto:

·  Phone: 781.736.8787

·  Office hours – by appointment

Document Overview

This syllabus contains all relevant information about the course: its objectives and outcomes, the grading criteria, the texts and other materials of instruction, and of weekly topics, outcomes, assignments, and due dates.

Consider this your roadmap for the course. Please read through the syllabus carefully and feel free to share any questions that you may have. Please print a copy of this syllabus for reference.

Course Description

This course surveys the open standards that are making data representations and documents increasingly interchangeable, searchable, dynamic, and customizable. Students will learn how to design application-specific markup grammars using XML rules; how to validate the XML files with DTDs and XML Schemas; how to transform them using XSLT/XPath/FO; and how to parse XML documents with DOM and SAX programming interfaces. The in-class discussions will play an important role in this course, as the students bring the wealth of experience and knowledge to the class and sharing it would be extremely important for everybody. Please see Class Participation section for details.

Prerequisites

The students are expected to have a working knowledge of HTML. Some knowledge of JavaScript and Java (towards the end of the course) will be helpful.

Relevant Programs

Master of Software Engineering (elective)
Master of Science in Bioinformatics (elective)
Graduate Certificate in Software Engineering

Materials of Instruction

Recommended Text: / XML In A Nutshell, E.R. Harold & W.S. Means, 3rd edition.
O’Reilly.
Related examples can be found at http://www.cafeconleche.org/books/xian3
Suggested software: / An XML parser - the Microsoft XML Parser will be used in the example code.
IDEs:
·  Visual Studio .Net. See Week 1 notes for details. You would still need a Java IDE to run the examples of Week 10.
·  NetBeans. – download just Netbeans if you already have a Java SDK installed on your computer. If not, you’ll need to install a Netbeans/Java bundle.
·  Any other IDE the you like.

Online Course Content

Materials for this course will be available online at https://moodle2.brandeis.edu/course/view.php?id=761. The site contains the course syllabus, assignments, our Discussions bulletin board, links/resources to course-related professional organizations and sites, and weekly checklists, objectives, outcomes, topic notes, and discussion questions. Access information is emailed to enrolled students before the start of the course.

Overall Course Objectives

As XML has become the lingua franca of the data storage, exchange and presentation world, this course is designed to enable the students to navigate thought this world with confidence and to be armed with right knowledge and the right tools.

Overall Course Outcomes

The students will be able to

-  Create and read documents that conform to the XML syntax rules.

-  Define the XML structure using either Document Type Definition language of Schema.

-  Validate XML documents against these definitions.

-  Visualize the XML content in either HTML of PDF format by applying transformations that are also defined in XML.

-  Utilize the latest parsing technologies to programmatically read, transform, update, and validate XML documents.

The students will be able to choose and use the right technologies for any given task.

Online Participation

Given the lack of the traditional classroom environment, all participation for the online course will be done via LATTE. Each weekly Module has a page that includes "Discussion Topics". These are a series of questions or points to consider regarding the course materials posted that week.

To earn full credit for the Participation component of the grade, participants will be expected to post responses to the Discussion Topics each week by the end of the week and to comment on at least 2 other postings. The comments should be substantive, not just “Good job!”.

On-line Quizzes will become available as we progress through the course.

Keep in mind that these postings to the Discussions bulletin board will be as rich as we make them; not having a traditional classroom in which to discuss topics, we can have some interesting discussions and share our experiences during the 10 weeks. They are required to encourage you to share your knowledge and ideas while gaining from the experiences of your peers as well.
In this course, the weeks start on Wednesday. There are 2 deadlines for the discussions postings: the initial response should be posted by end of day Saturday and the comments to other students’ postings – by end of day Tuesday.
To receive the full credit for each week, original postings should answer the instructor’s questions and the replies should be substantive.

Course Grading Criteria

Percent / Component
30% / Weekly on-line participation
20% / 5 Quizzes
50% / Homework projects:
Homework 1 – 10% (of the total grade)
Homework 2 – 15%
Homework 3 – 25%

II. Weekly Information

Week / Starts / Topics / Suggested Reading
1 / 1/22 / Introduction to XML and Related Languages. Overview of some XML tools. XML Essentials (part 1).
Outcome: be able to create well-formed XML documents. Be able to check XML documents for being well formed. Be able to use XML elements and attributes.
Assessment: Quiz 1 - XML syntax. / XML In A Nutshell. (XIAN 3rd), chap. 1-2.
2 / 1/29 / Document Type Definition (DTD) and Validating XML.
Quiz 1 due.
Outcome: be able to define XML structure with DTD; validate XML documents against a DTD.
Assessment: Quiz 2 – DTD, Homework 1. / XIAN, chap. 3.
3 / 2/05 / Namespaces in XML .
XSLT and XPath (pt. 1).
Outcome: be able to write and apply XSL transformations to HTML format of the data stored in an XML document. Be able to use XPath syntax to search for elements and attributes in an XML document and set up template matching in XSLT. Be able to use namespaces in XML.
Assessment: Quiz 3, Homework 2.
Quiz 2- DTD due / XIAN, chap. 4,8,9.
4 / 2/12 / XSLT and XPath (pt. 2).
Homework 1 due.
Outcome: be able to use advanced XSLT techniques, e.g. conditional statements, includes, use of parameters.
Assessment: Quiz 3, Homework 2 / XIAN, chap. 8,9.
5 / 2/19 / XSLT and XPath (pt. 3).
Styling XML XSL-FO.
Outcome: be able convert XML data to pdf format using XSL-FO language.
Assessment: Homework 2 / XIAN, chap. 14.
6 / 2/26 / XML Schema (pt. 1).
Quiz 3 - XSL due.
Outcome: be able to create simple Schemas and validate XML documents against them.
Assessment: Quiz 4, Homework 3. / XIAN, chap. 17.
7 / 3/05 / XML Schema (pt. 2).
Homework 2 due.
Outcome: be able to create user defined simple data types; use regular expressions.
Assessment: Quiz 4, Homework 3. / XIAN, chap. 17.
8 / 3/12 / XML Schema (pt. 3).
Outcome: be able to create user defined complex data types; set up keys and key references; use multiple schema documents; handle XML documents that use multiple namespaces.
Assessment: Quiz 4, Homework 3. / XIAN, chap. 17.
9 / 3/19 / Programming with DOM (Document Object Model).
Quiz 4 - Schema is due
Homework 3 proposal is due.
Outcome: be able to write JavaScript code to:
load XML files, apply XSLT and display the results,
use XPath to search for elements and attributes, modify XML documents. / XIAN, chap. 19.
10 / 3/26 / Programming with SAX (Simple API for XML).
Outcome: be able to use SAX to parse XML documents. / XIAN, chap. 20.
4/05 / Due: Homework 3, Quiz 5 - a bit of everything.

III. Course Policies and Procedures

Late Policies

Late penalty is 10% for every 3 days of lateness.

Feedback

The assignments will be graded within a week from the due date.

IV. University and Division of Continuing Studies Standards

Please review the policies and procedures of Continuing Studies, found at http://www.brandeis.edu/continuing/students/policies.php. Among them, we would like to highlight the following.

Learning Disabilities

If you are a student with a documented disability on record at Brandeis University and wish to have a reasonable accommodation made for you in this course, please contact me immediately.

Academic Honesty and Student Integrity

Academic honesty and student integrity are of fundamental importance at Brandeis University and we want students to understand this clearly at the start of the term. As stated in the Brandeis Rights and Responsibilities handbook, “Every member of the University Community is expected to maintain the highest standards of academic honesty. A student shall not receive credit for work that is not the product of the student’s own effort. A student's name on any written exercise constitutes a statement that the work is the result of the student's own thought and study, stated in the students own words, and produced without the assistance of others, except in quotes, footnotes or references with appropriate acknowledgement of the source." In particular, students must be aware that material (including ideas, phrases, sentences, etc.) taken from the Internet and other sources MUST be appropriately cited if quoted, and footnoted in any written work turned in for this, or any, Brandeis class. Also, students will not be allowed to collaborate on work except by the specific permission of the instructor. Failure to cite resources properly may result in a referral being made to the Office of Student Development and Judicial Education. The outcome of this action may involve academic and disciplinary sanctions, which could include (but are not limited to) such penalties as receiving no credit for the assignment in question, receiving no credit for the related course, or suspension or dismissal from the University.
Further information regarding academic integrity may be found in the following publications: "In Pursuit of Excellence - A Guide to Academic Integrity for the Brandeis Community", "(Students') Rights and Responsibilities Handbook" AND "Continuing Studies Student Handbook". You should read these publications, which all can be accessedfrom the Continuing Studies Web site. A student that is in doubt about standards of academic honesty (regarding plagiarism, multiple submissions of written work, unacknowledged or unauthorized collaborative effort, false citation or false data) should consult either the course instructor or other staff of the Rabb School for Continuing Studies.

University Caveat

The above schedule, content, and procedures in this course are subject to change in the event of extenuating circumstances.

4