XML News from Sunday, September 26, 2004

One more time. I've got a new CSS laid out version of this page to check out. This one returns to absolute positioning instead of floats. However, it uses relative measurements in ems and exs instead of absolute pixel counts. This makes it more flexible in the face of changing font sizes. This pretty much seems to work across all the browsers I tried including Firefox, Safari, Mozilla, Internet Explorer 5 for Mac OS 9, Internet Explorer 5.5 for Mac OS X, and Netscape 4.7 for Mac OS 9. I haven't tested IE for Windows yet. As usual, please check it out and let me know if anything looks too funky to live with. If so, please let me know what browser on what platform you're using.

It does seem apparent to me that CSS is missing some crucial features needed for truly dynamic, flexible layouts. The most important is that there's no way to set the width, height, or position of one element to be a function of the width, height, or position of another element. All I'm really trying to do here is say that the navbar on the right starts about 1.2 times the height of the header below the header, regardless of font size, window size, and the number of characters in the header. For example,

top: 1.2*height(#header)

or perhaps

top: bottom(#header) + 20px


Michael Kay has released Saxon 8.1, an implementation of XSLT 2.0, XPath 2.0, and XQuery in Java. Saxon 8.1 is published in two versions for both of which Java 1.4 is required. Saxon 8.1B is an open source product published under the Mozilla Public License 1.0 that "implements the 'basic' conformance level for XSLT 2.0 and XQuery." Saxon 8.1SA is a £250.00 payware version that "allows stylesheets and queries to import an XML Schema, to validate input and output trees against a schema, and to select elements and attributes based on their schema-defined type. Saxon-SA also incorporates a free-standard XML Schema validator. In addition Saxon-SA incorporates some advanced extensions not available in the Saxon-B product. These include a try/catch capability for catching dynamic errors, improved error diagnostics, support for higher-order functions, and additional facilities in XQuery including support for grouping, advanced regular expression analysis, and formatting of dates and numbers." Version 8.1 incorporates various recent changes in the XQuery/XSLT 2.0/XPath 2.0 family of specs, including some that have not been published yet. Upgrades from 8.0 are free.