Manage Learn to apply best practices and optimize your operations.

XHTML-Print: Another new XHTML module

A look at a new XHTML module and some insight into the module approval and development process.

XML Developer Tip
(Receive this column in your inbox,
click Edit your Profile to subscribe.)

XHTML-Print: Another new XHTML module

The biggest change in XHTML from version 1.0 to 1.1 is the adoption of XHTML Modularization, a technique whereby similar markup is encapsulated in individual Schema or DTD definitions. Individual modules are designed to be grabbed and included in XHTML documents on an as-needed basis. One of the design goals of this approach was to enable the definition of a basic XHTML working markup set, to ensure a common core of capability and functionality, and a set of add-on modules to provide necessary functionality.

XHTML-Print is a new candidate recommendation for the growing set of XHTML recommendations, and is designed to work with minimal function printers like those you'd find attached to mobile devices. The candidate recommendation indicates that such "low-cost printers might not have a full-page buffer and […] generally print from top-to-bottom and left-to-right with the paper in portrait orientation. XHTML-Print is also targeted at printing in environments where it is not feasible or desirable to install a printer-specific driver and where some variability in the formatting of the output is acceptable."

Since one of the driving impulses behind XHTML 1.1 and modularization was to create working subsets of XHTML markup for use on mobile phones, PDAs, handheld computers, and other limited-memory, limited-function mobile devices, this new XHTML module looks very much like a natural extension of that impetus into providing minimal but workable print functionality. Interestingly, the original work in this area comes from the Printer Working Group at the IEEE, which drafted the original XHTML-Print specification upon which the W3C's efforts are based.

What happens next when a W3C spec reaches candidate recommendation status? A minimum of two working implementations must demonstrate that they implement all required features in the spec (much like the reference implementation requirements at the IETF), and at least 6 months must elapse to give implementers and early adopters a chance to provide feedback. A test suite will also be created so that implementers can work from a standard set of calls and invocations.

The specification is based on XHTML Basic (the minimal set of XHTML markup that all modularized implementations must support) plus the subset of Cascading Style Sheet markup defined in the CSS Print Profile specification (which includes both CSS2 and CSS3 elements). All in all it's a simple, zippy little print module that should deliver the necessary and basic functionality required. Check it out!

About the Author

Ed Tittel is a VP of Content Development & Delivery at CapStar LLC, an e-learning company based in Princeton, NJ. Ed runs a small team of content developers and project managers in Austin, TX, and writes regularly on XML and related vocabularies and applications. E-mail Ed at

For More Information:

  • Looking for free research? Browse our comprehensive White Papers section by topic, author or keyword.
  • Are you tired of technospeak? The Web Services Advisor column uses plain talk and avoids the hype.
  • For insightful opinion and commentary from today's industry leaders, read our Guest Commentary columns.
  • Hey Codeheads! Start benefiting from these time-saving XML Developer Tips and .NET Developer Tips.

  • Visit our huge Best Web Links for Web Services collection for the freshest editor-selected resources.
  • Visit Ask the Experts for answers to your Web services, SOAP, WSDL, XML, .NET, Java and EAI questions.
  • Choking on the alphabet soup of industry acronyms? Visit our helpful Glossary for the latest industry lingo.
  • Couldn't attend one of our Webcasts? Don't miss out. Visit our archive to watch at your own convenience.
  • Discuss this article, voice your opinion or talk with your peers in the SearchWebServices Discussion Forums.

Dig Deeper on Topics Archive

Start the conversation

Send me notifications when other members comment.

Please create a username to comment.