Course Highlights - COMP2410
Target Population: This course
is designed for web developers, students, and programmers wanting
to learn XML (eXtendable Markup Language) and the supporting
technologies currently used with XML.
This course focuses on XML (eXtendable Markup Language) and the supporting technologies
of XML used in person-to-computer and computer-to-computer communications. Some of
the technologies covered will include using DTDs (Document Type Definitions), Schema, Namespaces,
XPath, DOM, SAX, Data Models, XSLT, SVG, and SOAP as well as web services and the Semantic web.
Here's what you'll learn by taking this course:
- How to create an XML document. It's just like HTML only with customized
tag names.
- Using DTD and Schemas to validate the XML data.
- How XML can be
formatted, filtered, and transformed using a language called XSLT.
- Several common XML technologies including SVG, SMILE, RSS, and SOAP.
- How XML will be used to create the Semantic (intelligent) Web
This course uses up-to-date teaching techniques allowing
you to learn by reading, listening, experimenting, and writing your
own code. Each module has specific Learning Activities designed to
help you learn in an interesting and fun manner as well as Assessment
Activities to help you determine exactly what you've learned.
This course is part of the
Web Programming Certificate
program at South
Central College.
Course Details
Web Programming III - COMP2410 - Spring Semester
2007
Section 01 Room C179 (near door #5 Gold Lot) Monday
3:00 - 5:50
This course can also be taken as an on-line course through special
arrangements with the instructor.
Credits - 2 credits (1 lecture - 1 lab)
Required Text:
Beginning XML 3rd Edition
, by Hunter, Watt,
Rafter, WROX press,
ISBN 0-7645-7077-3.
Required Software:
Hardware: It is recommended that you have at least one flash drive to
store you work and class information. (Please back up your data on
a regular basis!)
For more information contact:
Peter K. Johnson
, Instructor
email:
peter.johnson@southcentral.edu
phone: 507 389-7337
Prerequisites
-
Successful completion of Web Programming
I (COMP1400
with a C or higher), or a working knowledge of XHTML,
CSS, and FTP.
- Minimum typing speed of 35 wpm (60 wpm recommended).
Find out your typing speed at
http://typingtest.com
Improve your typing speed with
TuxType
, a free, open-source typing
program.
IMPORTANT: This course does NOT require Web II.
Learning Objectives
1. Create an XML document.
-- Create custom markup using XML
-- Demonstrate the use of an XML parser.
-- Use elements and attributes to markup data.
-- Determine the difference between markup text and character data.
-- Incorporate Unicode in an XML document.
-- Demonstrate the use of CDATA sections in an XML document.
-- Demonstrate the concept of a well-formed XML document.
3. Create a Document Type Definition (DTD).
-- Illustrate on paper the relationship between HTML, XML, and
DTD files.
-- Create a DTD
-- Incorporate elements and attributes in a DTD.
-- Incorporate a notation in a DTD.
-- Demonstrate the use of an entity with a DTD.
4. Demonstrate how the schemas are used in XML.
-- Describe the function and purpose of schemas.
-- Compare the differences between a DTD and a schema.
-- List the data types that can be used in a schema.
-- Demonstrate defining a range using minOccurs and maxOccurs in a schema.
-- Create a schema based on an existing DTD.
5. Use namespaces as part of a schema and XLS document.
-- Describe the importance of namespaces with XML.
-- Use namespaces in an XML document.
-- Demonstrate namespace scoping.
-- Apply namespaces to elements and attributes.
-- Create an XML schema with a target namespace.
6. Use RelaxNG to validate XML documents
-- Describe the basic RelaxNG patterns
-- Use various patterns in a validating document
-- Compare RelaxNG to Schemas and DTD validation schemes
7. Utilize CSS to control the style of a web page
-- Use an external CSS style sheet to change the appearance of an XML document.
-- Use the basic CSS syntax to create a specific style for XML elements.
-- Use the class attribute to change specific groups of elements.
-- Use the ID attribute to create a style for a unique element.
-- Demonstrate the use of comments in a CSS.
8. Use XPath to extract text blocks from an XML document.
-- Use Regular Expressions to locate text in a document.
-- Write a paragraph describing why XPath (XML Path Language) is useful for information processing.
-- Write an XPath expression to locate different parts of an XML document.
-- Use abbreviated and unabbreviated XPath statements to perform the same task.
9. Demonstrate use of the DOM (Document Object Model ) using JavaScript in a web page.
-- Write a paragraph describing the DOM.
-- Compare using the DOM with XSLT.
-- Describe the strengths of the DOM and the weaknesses
-- Display data from an XML document using JavaScript
10. Demonstrate the use of SAX (Simple API for XML).
-- Write a paragraph comparing the use of DOM and SAX technologies.
-- Explore different SAX implementations such as SAXON and the Java parser.
11. Use XSLT to create HTML pages from XML documents.
-- Create an XHTML web page that utilizes multiple CSS (cascading style sheets).
-- Write a paragraph describing the difference between CSS and XSL style sheets. (eXtensible Style
Sheet Language)
-- Utilize SAXON to explore XSLT functions.
-- Transform an XML document into a XHTML web page using XSLT (XSL Transformation language)
12. Create an animated graphic display using SVG.
-- Write a paragraph describing SVG (Scalable Vector Graphics) and the benefits of this technology.
-- Explore how SVG graphics are being utilized on the Web.
-- Create an animated graphic using SVG commands.
13. Use RSS as a communication tool between your clients and their customers
-- Read RSS feeds to show updates on your web pages
-- Create an RSS feed file for a web site showing what is new
-- Validate the RSS feed.
14. Demonstrate web services.
-- Explain how Web Services extend communications on the Web.
-- Find examples of web services being used on the Web.
-- Describe the main pieces that are required to make web services work and how they relate to XML
technologies.
15. Demonstrate how SOAP is used as an integral part of web services.
-- Analyze how SOAP (Simple Object Access Protocol) works.
-- Visualize SOAP being used on the Web to perform a tasks such as tracking stock prices.
16. Explore the concepts behind the Semantic Web
-- Explore emergence theory.
-- Explore what is meant by the Semantic Web.
-- Discover what will be necessary for the Semantic Web to happen.
-- Analyze how emergence and the Semantic Web relate.
Grading
A 97-100%
A- 90-96
B+ 97-89
B 84-86
B- 80-83
C+ 77-79
C 74-76
C- 70-73
D+ 67-69
D 64-66
D- 60-63
F Below 60%
The grading for this course is performance-based. You will not be
graded a curve. This means that your grade is based on the work you
do and not on what grade others in the class receive.
As your instructor I am the record-keeper of your points. I do not “give
you a grade”; I only keep track of the scores you receive.
You will earn your grade by demonstrating your knowledge of the learning
objectives listed at the bottom of each learning activity page. Complete
the work according to the specifications and you will receive points
accordingly.
One hint: This is a project and participation-based
course. For example, most projects are worth 25 points while a quiz
in the same module might only be worth only 10 points. This focuses
your efforts on demonstrating your knowledge in applying your
learning,
not just knowing the facts or memorized information. (It also makes
the things you learn in this course much more useful in the real
world!)
Course Policies
Be responsible for your own actions.
Respect due dates - No late projects, papers, or quizzes will
be accepted unless you have made prior arrangements in writing with
the instructor and have a valid and documented reason. All late projects
that are accepted will automatically drop one letter grade.
Quizzes - Make-up quizzes must be done on or before the next
class session. 10% will automatically be taken off the total available
points on all make-up exams.
Incomplete - An incomplete is granted due to serious extenuating
circumstances (e.g. a death in the immediate family, hospitalization,
etc.) near the end of the semester when the majority of the coursework
has been successfully completed. An incomplete will not be granted
for failing work.
Cheating - All graded projects must be your own work only. Cheating
or plagiarism is a serious breach of academic ethics and could lead
to sanctions including expulsion from college. When taking tests, protect
your answers from others. If cheating is discovered, all participants
will be penalized.
Special Needs -
If you have a disability and need accommodations to participate in
the course activities, please contact your instructor as soon as possible.
This information will be made available in an alternative format, such
as Braille, large print, or cassette tape, upon request.
Student contributions - Students are expected to:
-- Participate in course discussions and actively participate within
their team.
-- Complete all projects on or before the deadline.
-- Read all assigned material before class or chat sessions.
The Bottom Line -
I am here to help you learn and understand the material presented
in this course. Please let me know if you do not understand any concepts
or projects in this class. Feel free to clarify any questions you may
have during class, at my office, or via email. I am also open to any
suggestions you may have that would make this course more interesting
and/or useful.
Peter K. Johnson