InfoQ

News

The wide ranging impact of the XML Paper Specification

Posted by Jonathan Allen on Nov 22, 2006 06:20 AM

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

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

Bindings, Platforms, and Innovation

This presentation focuses on the Internet and separating myth from fact, history from the future, and the mundane from the imaginative. Bob Frankston presents a vision of what could and should be.

Orchestrating Long Running Activities with JBoss / JBPM

This article explores the use of JBoss and jBPM to implement design solutions that effectively address the issue of orchestrating long running activities.

Neo4j - The Benefits of Graph Databases

This presentation covers the use of graph databases as an optimal solution for data that is difficult to fit in static tables, rapidly evolving data or data that has a lot of optional attributes.

Realistic about Risk: Software development with Real Options

This session introduces Real Options and shows how it can help in running your project. Real Options is a decision-making process that can be used to manage risk.

Communication Flexibility Using Bindings

This article discusses the use of bindings on services and references (including the instance of non-configured bindings) as the means to implement SCA communications in a Web and SOA environment.

Writing DSLs in Groovy

After a short introduction to DSLs, Scott Davis plays with the keyboard showing how to approach the creation of a DSL by typing working snippets of Groovy code that get executed.

Scaling Agile with C/ALM (Collaborative Application Lifecycle Management)

IBM Rational and InfoQ present, Scaling Agile with C/ALM, an eBook showing organizations how to become “finely tuned software delivery machines” by enabling team integration and scaling.

Concurrent Programming with Microsoft F#

Amanda Laucher presents a real life enterprise application written in F#. She shows actual code snippets, explaining design decisions and suggesting how to use some of the F# constructs.