Hands-on Digital Publishing with XSLT 2019

 

Overview

Do you have some Word, ODF, or XML documents that you want to publish to the web or publish as an ePub? Do you want to learn more XSLT in a hands-on format, learning from people who use XSLT in their daily jobs? This course will show you how to use XSLT2 to make a good-looking website or ePub from your Word or XML documents. This is a hands-on course that follows on from the Hands-on Introduction to XML course.

We'll use XSLT 2 to transform sample Word files into JATS (the Journal Article Tag Suite format), learning lots of techniques along the way. We'll then show you how to further convert that XML into HTML5, and how to style the pages to look good using CSS. We'll show you how to create an ePub from the HTML and CSS and how to use Ruby as a scripting language to automate the process, so you can easily make changes and create new versions of the final product. We will supply computers with the software installed, and you can take the code you develop home with you.

Prerequisites: You should know at least as much XSLT as is taught in the Hands-on Introduction to XML, but advanced XSLT knowledge is not necessary. We do not expect you to know any scripting languages, although experience in Perl, Python, Ruby, or some other scripting language is an advantage. We'll teach you enough to give you a good introduction to how powerful even a small amount of scripting can be.

This course is chaired by Dr Lauren Wood and taught by Dr Lauren Wood, Matt Patterson, Norm Walsh, and Dr Peter Flynn.

Classes for 2019

The Hands-on Digital Publishing With XSLT course runs on and .

Introduction to JATS

Taught by Lauren Wood.

The Journal Article Tag Suite set of tags is the format of choice for most scientific journals. We will give you an introduction to JATS, just enough to understand most commonly used elements and attributes.

Exercise: on paper, you’ll mark up a sample document in JATS, ready for use in the following hands-on sessions.

Creating JATS from Word and other sources of information

Taught by Peter Flynn.

Word and Libre Office files are often inputs to the publishing process, but by default they are intended to be read by humans, not programs. Both of them use largely ‘flat’ XML to store the content and appearance, without much of the hierarchy or containment needed for a production environment. But both systems have Named Styles available which authors and editors can use to provide both formatting and functional identity.

The first part of the class uses the XML features of Word and Libre Office to present some guidelines for optimising the document styling with minimal editorial intervention. A worked example is combined with exercises to create a styled document ready for input.

The second part explains some of the techniques for transforming styled word processor files with XSLT2 into JATS. Techniques covered include the imposition of containment, getting the most out of the document content, and the use of intermediate formats. The final exercise is to write some XSLT2 to transform the example document from the earlier exercise.

We provide some helper functions and model solutions.

HTML and CSS

Taught by Lauren Wood.

HTML is used for most websites and is also the basis of ePubs, while CSS is used as the basis for styling both modern websites and ePubs. CSS has features to enable designs that look good on a desktop browser, your smartphone, or another mobile device. This class will cover many of the useful features in CSS3, in particular the design principles used in creating sites that look good on multiple screen sizes, in the context of semantic HTML.

Converting JATS to HTML

Taught by Norm Walsh.

There are certain things to watch for when converting XML (in this case, JATS) to HTML. For standard schemas there are often existing transformation stylesheets that are far more than you need for your website or your ePub. This class will present guidelines for converting from a standard XML format to the HTML that you need.

Exercise: We will provide some XML sample files for you to convert to HTML using XSLT, and the basic stylesheet to get you started.

Creating ePubs

Taught by Peter Flynn.

The core (preferred) ePub syntax has a substantial overlap with XHTML, but the features available are restricted by the limitations of reader devices and apps. Recent changes have simplified some of the ePub structure, but there are still many users requiring older systems, which presents challenges for the publisher.

This class explains how to get around some of the restrictions, and how to use XSLT2 to create the different files needed It also looks at some of the additional features and the ancillary structures which make an ePub work, and provides enough information to let you create an ePub in the hands-on exercise.

Automate, script, and unzip

Taught by Matt Patterson.

There are lots of steps involved with creating a website or ePub. Many of these can be automated using a scripting language. This class will show you how to use Ruby to automate those small tasks such as pulling the actual XML out of a Word XML file (which is really a zip file), copy the file to another directory, and run the XSLT transformation.