COAP:COAP-2180/week6
Week 6
Week six will focus on introducing some popular XML applications
Main topics:
- Discussion of the exam
- Discussion of the term project
- XML namespaces (short recall)
- Introduction to static SVG and SMIL animations
- Discussion of the ePUB format: Quick mention of Calibre, a ePUB generating software and demonstration of Sigil (an ePub editor)
Monday
Discussion of the mid-term
Short discussion of the mid-term.
Discussion of the term project / DTD refinement
The term project will include:
- A DTD that models a "domain of your choice". This domain should be somewhat text-centric, i.e. one must be able to display the data in a meaningful way with an XSLT stylesheet.
- An extensive XML test file
- Rendering in HTML via XSLT + CSS, therefore an .xsl and a .css file for the resulting HTML
- A second rendering in HTML via XSLT + CSS that will filter and (optionally) rearrange some data.
- An XML Schema (week 7) that adds some data constraints
- A report/documentation in HTML, PDF or Word format (at least 1/2 page, but more if you aim for a top grade)
Other constraints
- All elements can be revisions of prior homework
- Prior to turning in the project, the instructor must validate a draft DTD if the project is different from one of the prior homework. This is to prevent both failure and cheating...
On Wednesday, the instructor may discuss with each student if modifications ought to be made to DTDs made for prior homework (ask !)
Due:
- Presentation/demo on Monday week 8
- Final version on Wednesday week 8
SVG
- Static SVG tutorial
- SVG/SMIL animation tutorial, Interactive SVG-SMIL animation tutorial
- XSLT to generate SVG tutorial
- Tools
- http://svg-edit.googlecode.com/svn/branches/stable/editor/svg-editor.html (Online editor)
- Inkscape (should be installed on your computer)
- Resources
- http://openclipart.org (largest open source clipart collection)
- http://thenounproject.com/ (huge collection of icons)
Wednesday
- SVG (continued ...): Adding an animation to a clipart object.
- Electronic books with Epub
- Time for work on individual projects
Electronic books
- Ebooks and ebook formats
- E-book and E-book reader (Overview pages with links, both need some updating)
- ePub (overview page for the popular e-book format)
- ePub tools
- Calibre (ePub converter)
- E-book conversion with Calibre (this wiki, but not complete)
- calibre help. The main video only explains how to manage books, readers and news, but does not explain conversion. There are several help texts that do....
- Sigil (ePub editor)
Documentation
- Each tool (Calibre, Sigil) has extensive help + tutorials in various forms ....
Integration of XML languages with namespaces
Textbook chapters
- Harold, XML in a Nutshell, Chapter 4 Namespaces (more informative)
- Learning XML, Chapter "Markup and Core Concept". Namespace are shortly explained in the Elements Section
Homework
Unless you are behind with homework, pick only one.
Homework 6 (SVG)
Due:
- Before start of class, Monday week 7
Target population
- CS students who would like to learn SVG
Task (2 options)
- Option A
- Create some HTML5 contents that include an interesting SVG animation. There should be a least one interactive elements (e.g. a start "button").
- Option B
- Alternatively, create an SVG data visualization made with XSLT.
- Start from a data-rich XML file. There is not need to create a DTD, a well-formed XML file with meaningful tags is enough.
- For the SVG generation you can either use XSLT or use a PHP XML parser (sax, dom or simple) or E4X (Javascript)
- Resources
- Wiki pages: SVG (links), Static SVG tutorial
Upload: all files
Homework 7 (EPub)
Due:
- Before start of class, Wednesday week 7
Target population
- This homework is ideal for students who aim to explore an XML application in depth that did become very popular in the recent years.
- Prerequisite: Some XHTML knowledge
Task
(1) Create an e-book in ePub format
- We suggest using the Calibre converting tool (or similar), but you also can "handcraft" the e-pub file or use an authoring tool like Sigil i.e. write a text from start (including some copy/paste of prior work).
- Content suggestion: A term paper you wrote for a non technical class, a technical manual made from open-content tutorials found on the web. A compilation of interesting News. Avoid creating e-books from "complex" HTML pages.
- You can take contents that you didn't create yourself, but in this case your name must appear in the e-book, e.g. as the creator of e-book version and you should write a short foreword for this edition (1-2 sentences is enough)
(2) If you aim for a high grade, turn in an optional report that describes the intended audience of the e-book, its making (shortly) and other useful comments you may have.
Tips
Prior to creating an e-book, download an e-book in ePub format and display it with a reader. You also can unzip the file and study its contents.
Calibre's help should include enough information to get you started. Before picking up one tutorial, you also can have look at the The official "Grand Tour Video"
EduTechWiki also includes a shortE-book conversion with Calibre article. The only useful information so far concerns cleaning up HTML, how to deal with multiple files (i.e. creating a "tables of content file") and there are some links.
If you use other tools, you are on your own for finding help and other useful information. If you want to start from scratch, Sigil is supposed to be a fairly easy to learn/use tool. It's basically a specialized HTML editor that will package files, images and meta-information into an epub file.
Upload
- Only turn in the ePUB file (no need to upload any source materials