Inasmuch as if any book is going to exemplify the ideal that “printing should be invisible”, it would be a printing of “Printing should be invisible” by Beatrice L. Warde, so I found a copy of the 1937 printing by the Marchbanks Press just to see how invisible it really was. And, yes, also to have something close to an original of a well-known speech and article about typography, though possibly the 1955 version, produced by Warde herself, counts as more of an original even though it came out 25 years after the speech. Continue reading “Printing should be invisible”
Printing Design and Layout
Inasmuch as it was written in 1948, “Printing Design and Layout” by Vincent Steer could never be one of those ‘typography’ books that explain everything in terms of dialog boxes for a particular program, and I like that. There’s a wealth of detail (only some of which is dated), and I don’t know if it’s indicative of the author or the time and place where it was written, but the text also has a wonderful tone that I like.
For example, since Dave Cramer, author of the “Requirements for Latin Text Layout and Pagination” document from the “Latinreq” task force of the W3C Digital Publishing Interest Group, was most recently working on initial capitals, that was one of the sections of “Printing Design and Layout” that I looked at when I got my copy last Friday, where I found this gem:
Multi-stage XSLT in Ant
Inasmuch as Ant is good at re-running an XSLT transformation or a series of transformations when the XML source changes but not so good at re-running when one of the transformations’ stylesheets’ sub-modules changes, it’s a simple thing to generate on-the-fly a temporary build file containing path
s listing the dependencies of each stylesheet so Ant can do the right thing. Continue reading “Multi-stage XSLT in Ant”
XSL 1.1 properties
Inasmuch as I find it useful and 50% of the people that I’ve shown it to find it useful, the XSL 1.1 Properties quick reference is now available at http://www.mentea.net/resources/xsl11-properties.pdf. It crams all the properties, their values, and their defaults into two A4 pages for when you just want to know the allowed value of a particular property. When printed, it works best when the pages flip along the long edge, and when viewed online, the property names link to their definitions in the XSL 1.1 spec. Continue reading “XSL 1.1 properties”
Map of functions compared to xsl:attribute-set
Inasmuch as I’m trying out XSLT 3.0 techniques, I’ve been looking at using a map of functions that return attributes as an alternative to using xsl:attribute-set
. However, in the work so far, neither is significantly better than the other IMO. Continue reading “Map of functions compared to xsl:attribute-set”
Oxygen add-on hosted on GitHub
Inasmuch as I’m going to be authoring test files for the XSLT 3.0 testbed, I wanted an easy way to use Wendell’s oXygenJATSFramework. The easiest way would have been as an Oxygen framework add-on, but there wasn’t yet one. Since (unsigned) framework add-ons can be Zip archives and I’d recently downloaded archived releases from other GitHub projects, I did some experimenting and got GitHub to host the framework descriptor and the framework add-on itself. Continue reading “Oxygen add-on hosted on GitHub”
XSLT 3.0 testbed
Inasmuch as few people yet have much (or any) experience using XSLT 3.0 on more than toy examples, https://github.com/MenteaXML/xslt3testbed is a public, medium-sized XSLT 3.0 project where people could try out new XSLT 3.0 features on the transformations to (X)HTML(5) and XSL-FO that are what we do most often and, along the way, maybe come up with new design patterns for doing transformations using the higher-order functions, partial function application, and other goodies that XSLT 3.0 gives us. Continue reading “XSLT 3.0 testbed”
Is there life after libXSLT 1?
Inasmuch as I was talking at Balisage about adapting the Saxon-CE event model to XSL-FO, I ended up talking with Lauren Wood and Matt Patterson about the general case for a XSLT 2.0 processor, or a processor for a subset of XSLT 2.0, that could be used in language bindings and web browsers as a replacement for the stuck-at-XSLT-1.0 libXSLT processor.
Since we were going to talk about it more at the XML Summer School anyway, I did a five-minute lightning talk (slides) at the “unconference sessions”. Happily, it got more people at the Summer School trying things. Michael Kay of Saxonica was at the presentation, and not only did he welcome the idea of compiling Saxon to C, Saxonica now state that they’re looking at the possibility.
XML Summer School 2013
Inasmuch as the offer’s open a bit longer, you can still use the XML13 discount code for a 10% discount on your fees for this year’s XML Summer School.
This year, with Patricia Walmsley, I’m teaching Improving stylesheets through the use of advanced features in the XSLT and XQuery track:
Most XSLT developers stick to a familiar core set of XPath and XSLT instructions and functions. There are a number of advanced features, many of them introduced in version 2.0, that appear only rarely in stylesheets even though they can be very useful in certain situations. In this course, we will explore some of these less-used features, showing interactively how they can be applied to improve existing XSLT stylesheets. XPath features covered will include operators like
intersect
andexcept
,<<
and>>
, quantified expressions, and 2.0 functions that can significantly simplify your stylesheets. XSLT features covered will include grouping, regular expression matching and advanced modularization using modes and instructions likexsl:apply-imports
andxsl:next-match
.
Other sessions in the track are XSLT Efficiency and Effectiveness taught by Michael Kay, Querying XML Databases with XQuery taught by Adam Retter, and Trends in XSLT/XQuery taught by Florent Georges, while the other tracks during the week are XML Primer, Hands-on Introduction to XML, Publishing With XML, Semantic Technologies, Trends and Transients, and Hands-on Web Publishing. There's also the evening events, such as punting, the formal dinner, and the unconference session, where I'm lined up to present a lightning talk.
Wiki for weighty subjects
Inasmuch as I’ve been using it for a while, here’s a shot of a Wiki that’s been in use around the world for making decisions about weighty subjects and that’s being used a lot now that I’m changing countries again: Continue reading “Wiki for weighty subjects”