InfoQ

News

The wide ranging impact of the XML Paper Specification

Posted by Jonathan Allen on Nov 22, 2006

Community
.NET
Topics
Artifacts & Tools ,
Licensing ,
.NET Framework
Tags
Windows Vista ,
PDF ,
XML Paper Specification ,
WPF

XML Paper Specification, or XPS, is a new XML-based format for creating formatted documents. Seen as a direct competitor to Adobe's Portable Document Format (PDF), it is one of the more controversial features in Windows Vista. Because it touches so much of the Windows infrastructure, it is expected to affect all users in one way or another.

XPS shares many of the same features as PDF. Both are positioned, or being positioned, as the de-facto format for documents that need page based layouts. Both can be created by having applications print to a special printer driver. Both offer free readers.

The key difference is that Adobe makes its money from PDF editors, while Microsoft is practically begging developers to build their own editors right into their applications. So if XPS takes off, Adobe stands to lose.

Ken Fisher of Ars Technica reports that Adobe did file a complaint with the European Union over XPS. Rather than ordering it removed from Vista, the EU has obtains assurances from Microsoft that XPS will be handed over to a standards body. The end result is that XPS is in a stronger position to become the new cross-platform standard for documents.

This isn't the first time Adobe went toe-to-toe with Microsoft over open file formats. Earlier this year Adobe forced Microsoft to pull PDF support from Office 2007 under the threat of a lawsuit.

A stand-alone viewer and the XPS print writer is included in Vista. Windows XP users can download these in the Microsoft XPS Essentials Pack. XPS is also supported by Office 2007.

For application developers, Microsoft has included the ability to read and write XPS documents in Windows Presentation Foundation.  Being an XML-based standard, WPF isn't strictly required and developers are free to build their own libraries.

XPS also changes the game for hardware manufacturers. As of Windows Server 2003, kernel mode print drivers were disabled by default. With Vista, they are not available at all. In exchange, users get support for XPS-based printer drivers. These drivers promise improved rendering and spooling capabilities. Inline filters allow for advanced color control, an essential feature for graphic artists. Asynchronous notifications offer the ability to inform the user not only how many pages have been printed so far, but also how far along it has gone through the rendering and filtering stages.

Microsoft is also targeting IT professionals with XPS. One of the touted advantages is that it is a safe format. Unlike Word documents and PDF files, which can contain macros and JavaScript respectively, XPS files are fixed and do not support any embedded code. The inability to make documents that can literally change their own content makes this a preferable archive format for industries where regulation and compliance is a way of life.

Finally there is the HD Photo Specification. This is a "new file format for continuous tone still images that surpasses the limitations of existing image formats." Specifications for both XPS and HD Photo Specification can be found on the Windows Hardware Developer Central.

Was about time by Matthias K. Posted Nov 23, 2006 2:02 AM
Not even on the radar .. by Cameron Purdy Posted Nov 27, 2006 8:23 AM
  1. Back to top

    Was about time

    Nov 23, 2006 2:02 AM by Matthias K.

    Of course there is always scepticism about Microsoft enforcing standards which emerged from the Windows platform. However, with the generally rather poor situation with PDF readers and writers for non-Microsoft platforms, it was about time to introduce a new format based on open standards.

    My biggest gripe with PDF is that in pratice, it's not as portable as it claims. Often enough, I am unable to reformat and/or print PDF documents created using a Windows client properly under Linux.

    XPS sounds like a welcome idea to me.

  2. Back to top

    Not even on the radar ..

    Nov 27, 2006 8:23 AM by Cameron Purdy

    > Because it touches so much of the Windows infrastructure, it is expected to affect all
    > users in one way or another.

    Unless it is adopted widely on Mac and Linux, it won't affect many people at all. For example, I hadn't even heard of it before I saw this article. PDF is an entrenched standard, and the only thing that will disrupt it is a more-standard standard.

    Peace,

    Cameron Purdy
    Tangosol Coherence: Distributed Caching for Java and .NET

Educational Content

Brian Marick on 4 Challenges and 5 Guiding Values of Agile Software Development

Brian Marick takes us through a quick tour of the most important values and challenges to adopting Agile successfully (they aren't the typical challenges and values we hear in the community).

Are You a Software Architect?

The line between development and architecture is tricky. Does it exist at all? Is an ivory tower actually needed? There's a balance in the middle, but how do you move from developer to architect?

Agile – A Way of Life and Pragmatic Use of Authority

The word 'authority' sometimes produces an allergic response in hard-line agilists. Freedom and authority – both are bad if misused and both are good if used in right spirit for a noble cause.

Getting Started with Grails, Second Edition

"Getting Started with Grails" brings you up to speed on this modern web framework. Companies as varied as LinkedIn, Wired, and Taco Bell are all using Grails. Are you ready to get started as well?

Using ITIL V3 as a Foundation for SOA Governance

Those familiar with only ITIL V2 often scoff at the thought that ITIL could serve as a governance framework for SOA. With ITIL V3, the focus of the framework shifted towards service-orientation.

Adrian Colyer on AspectJ, tc Server and dm Server

SpringSource CTO Adrian Colyer discusses AspectJ, SpringSource's dm Server and tc Server products, OSGi and Scrum.

Adam Wiggins on Heroku

Heroku's Adam Wiggins talks about Rails, Background Jobs, Add-Ons, Ruby, and how Heroku manages to work around Ruby's inefficiencies using Erlang and other languages.

SOA as an Architectural Pattern: Best Practices in Software Architecture

For Grady Booch the foundation of a good architecture is patterns, SOA being just one of many patterns. In this Second Life presentation, Booch attempts to bring more clarity on what architecture is.