Open XML Paper Specification

From HandWiki
Revision as of 13:43, 6 February 2024 by John Marlo (talk | contribs) (update)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Short description: XML-based document format
Open XML Paper Specification (OpenXPS)
XPSIcon.png
Filename extension.oxps,[1] .xps
Internet media typeapplication/oxps, application/vnd.ms-xpsdocument
Developed byMicrosoft, Ecma International
Initial releaseOctober 2006; 18 years ago (2006-10)
Latest release
First Edition
(June 16, 2009; 15 years ago (2009-06-16))
Type of formatPage description language, document file format
Contained byOpen Packaging Conventions
Extended fromZIP, XML, XAML
StandardECMA-388
Websitewww.ecma-international.org/publications/standards/Ecma-388.htm

Open XML Paper Specification (also referred to as OpenXPS) is an open specification for a page description language and a fixed-document format. Microsoft developed it as the XML Paper Specification (XPS). In June 2009, Ecma International adopted it as international standard ECMA-388.[2]

It is an XML-based (more precisely XAML-based) specification, based on a new print path (print processing data representation and data flow) and a color-managed vector document format that supports device independence and resolution independence. In Windows 8 .xps was replaced with the ECMA standard .oxps format which is not natively supported in older Windows versions.[1]

OpenXPS was introduced by Microsoft as an alternative to Portable Document Format (PDF). However, PDF remained the standard choice, and support for and user familiarity with XPS files is limited. It has been described as neglected technology, which may cause difficulties to recipients of documents in a format they are not familiar with.[3]

Format

The XPS document format consists of structured XML markup that defines the layout of a document and the visual appearance of each page, along with rendering rules for distributing, archiving, rendering, processing and printing the documents. Notably, the markup language for XPS is a subset of XAML, allowing it to incorporate vector elements in documents.

An XPS file is a ZIP archive using the Open Packaging Conventions, containing the files which make up the document. These include an XML markup file for each page, text, embedded fonts, raster images, 2D vector graphics, as well as the digital rights management information. The contents of an XPS file can be examined by opening it in an application which supports ZIP files.

There are two incompatible XPS formats available. The original document writer printed to .xps in Windows 7 and Windows Vista. Beginning with Windows 8, the document writer defaults to the .oxps format.[1]

Microsoft provides two free converters. XpsConverter converts documents between .xps and .oxps format,[4] while OxpsConverter converts documents from .oxps to .xps format.[5]

Features

XPS specifies a set of document layout functionality for paged, printable documents. It also has support for features such as color gradients, transparencies, CMYK color spaces, printer calibration, multiple-ink systems and print schemas. XPS supports the Windows Color System color management technology for color conversion precision across devices and higher dynamic range. It includes a software raster image processor (RIP) (downloadable separately).[6] The print subsystem supports named colors, simplifying color definition for images transmitted to printers supporting those colors.

XPS supports HD Photo images natively for raster images.[7] The XPS format used in the spool file represents advanced graphics effects such as 3D images, glow effects, and gradients as Windows Presentation Foundation primitives, which printer drivers could offload their rasterization to the printer in order to reduce computational load if the printer is capable of rasterizing those primitives.[citation needed]

Comparison with PDF

Like Adobe Inc.'s PDF, XPS is a page description language using fixed-layout document format designed to preserve document fidelity,[8] providing device-independent document appearance. PDF is a database of objects that may be created from PostScript or generated directly from applications, whereas XPS is based on XML. Both formats are compressed, albeit using different methods. The filter pipeline architecture of XPS is also similar to the one used in printers supporting the PostScript page description language. PDF includes dynamic capabilities purposely not supported by the XPS format.[9][failed verification] There are many resources for converting from XPS to PDF and some for converting from PDF to XPS. A method often suggested is to open an XPS file in a program with printing capability, and then "print" to a virtual PDF printer such as Microsoft Print to PDF,[10] with a similar procedure to convert from PDF to XPS.

Comparison between OXPS and PDF
File format OpenXPS PDF
Original author Microsoft Adobe Systems
Standardized by Ecma International[11] ISO
First public release date 2006[12] 1993[13]
Latest stable version Ecma International Standard ECMA-388 — Open XML Paper Specification — 1st Edition ISO 32000-1:2008 — Document management — Portable document format — Part 1: PDF 1.7
Latest standardised version Ecma International Standard ECMA-388 — Open XML Paper Specification — 1st Edition ISO 32000-2:2017 — Document management — Portable document format — Part 2: PDF 2.0
Language type Markup language (XML)[14][15] PDF is a database of objects that may be created from PostScript or generated directly by an application.
XML schema representation XML Schema (W3C) (XSD) and RELAX NG (ISO/IEC 19757-2)[2] N/A
Compression format Container: ZIP[14][15][16] (Although flate(should be Deflate) is mentioned in third-party document, no specific compression method is mandated for the container.)[17]
Payload: JPEG, PNG, TIFF, JPEG XR are compressed based on their file types.[18]
LZW for both text and images; JPEG, JPEG 2000, and RLE for images only[19]
Container structure Open Packaging Conventions (ISO/IEC 29500-2:2008)[14][15]
3D graphic content X3D (ISO/IEC 19775/19776)[2] U3D (Standard ECMA-363),[20][21] PRC (Product Representation Compact, ISO 14739-1:2014)[22]
Full file content compression Yes[22] Compression of collections of objects[23]
Fast page by page download from web servers Yes[22] Yes[22]
Multiple documents in one file Yes[22] Yes[24]
Document bookmarks and outline Yes[22][25] Yes[22][26]
Reflowable No[27] With PDF tagging[28]
Hyperlinks Yes[22][29][30] Yes[22][26]
Page thumbnails Yes[22][29] Yes[22][31]
Annotations Yes[29] Yes[22][26]
Image transparencies Yes[22] Yes[22]
Gradient fills Yes[22][30] Yes[22]
Alpha channel in color definitions Yes[22] Yes[22]
Support for multiple transparency blending modes ? Yes[23]
Change tracking No[22] No[22]
Password protection Yes[22] Yes[22][26]
Digital signatures Yes[15][16][22][29] Yes[26][32]
JPEG (RGB and CMYK) (ISO/IEC 10918-1) Yes[16][22] Yes[32]
JPEG 2000 (ISO/IEC 15444-1) No[22] Yes[32]
JBIG2 for bi-level images No[22] Yes[23]
PNG Yes[22] Yes[22]
TIFF (RGB and CMYK) Yes[22] No[22]
JPEG XR (ISO/IEC 29199-2:2009) Yes[14] No[22]
Gray support Yes[22] Yes[22]
RGB support Yes[22] Yes[22]
CMYK support Yes[22] Yes[22]
Spot color support Yes[22] Yes[22]
Filename extensions oxps[2] pdf[33]
Internet media types application/oxps[2] application/pdf[34]
Standard licensing Non-free content, downloaded free-of-charge from Ecma
File format OpenXPS PDF

Viewing and creating XPS documents

Windows Vista and later supports both creating and viewing XPS.[35] In addition, the printing architecture of Windows Vista uses XPS as the spooler format.[8]

Apps can create XPS documents by printing to XPS Document Writer, a virtual printer that comes bundled with Windows. These files open in XPS Viewer, an optional component that comes with Windows Vista and later. In Windows Vista, XPS is hosted within Internet Explorer, but in subsequent versions, it is a standalone app. Both versions support digital rights management and digital signatures. Windows 8 also comes with an app called "Reader", which reads XPS and PDF files.[36][failed verification]

The .NET Framework 3.0 installer for Windows XP also adds the IE-hosted XPS Viewer, as well as XPS Document Writer. Since then, Microsoft released the XPS Essentials Pack for Windows XP, Server 2003, and Vista,[36][37] which includes the standalone viewer, an IFilter plug-in that helps Windows Desktop Search index the contents of XPS files, and another plug-in for Windows Explorer to help generate thumbnails for XPS files.[36] Installing this pack enables operating systems prior to Windows Vista to use the XPS print spooler[38] instead of the older GDI-based spooler.[39] The XPS print spooler can produce better quality prints for printers that directly consume the XPS format.[40]

Third-party software

Name Platform Function
Evince Linux A document viewer for multiple document format; can display XPS documents thanks to libgxps.[41]
MuPDF Linux, Windows, Android, iOS A lightweight PDF, XPS and OpenXPS viewer; licensed under the terms of AGPL v3
Harlequin RIP Windows, Mac OS, Linux, ThreadX Renders XPS files for print or display; used in desktop printers, digital production presses, prepress and software[42]
Okular Linux, FreeBSD, Windows, Solaris The document viewer of the KDE project; can display XPS documents[43]
STDU Viewer Microsoft Windows Can display XPS documents as well as other electronic document formats. Other STDU applications may handle organizing/browsing, conversion, and extraction.[44]
Sumatra PDF Windows Can display XPS documents, among other formats, since version 1.5, thanks to MuPDF[45]
Xara Designer Pro Windows Vector graphics app with XPS support
XPS Annotator Windows Standalone XPS viewer which can digitally sign and annotate XPS documents, and convert XPS documents to common picture formats.[46]
XPS Viewer Windows Free app from Software Imaging Ltd. for viewing XPS files[47]

Hardware

XPS had the support of printing companies such as Konica Minolta, Sharp,[48] Canon, Epson, Hewlett-Packard,[49] and Xerox[50] and software and hardware companies such as CSR (formerly Zoran),[51] and Global Graphics.[52] Native XPS printers were introduced by Canon, Konica Minolta, Toshiba, and Xerox.[53] Devices at the Certified for Windows level of Windows Logo conformance certification were required to have XPS drivers for printing since 1 June 2007.[54]

Licensing

Microsoft released XPS under a royalty-free patent license called the Community Promise for XPS,[55][56] allowing users to create implementations of the specification that read, write and render XPS files as long as they included a notice within the source that technologies implemented may be encumbered by patents held by Microsoft. Microsoft also required that organizations "engaged in the business of developing (i) scanners that output XPS Documents; (ii) printers that consume XPS Documents to produce hard-copy output; or (iii) print driver or raster image software products or components thereof that convert XPS Documents for the purpose of producing hard-copy output, [...] will not sue Microsoft or any of its licensees under the XML Paper Specification or customers for infringement of any XML Paper Specification Derived Patents (as defined below) on account of any manufacture, use, sale, offer for sale, importation or other disposition or promotion of any XML Paper Specification implementations." The specification itself was released under a royalty-free copyright license, allowing its free distribution.[57]

On September 13, 2011, Monotype Imaging announced it had licensed its XPS-to-PCL 6 and XPS-to-PostScript vector conversion filters to Microsoft for use in the next version of Windows.[58][59]

History and standardization

In 2003, Global Graphics was chosen by Microsoft to provide consultancy and proof of concept development services on XPS and worked with the Windows development teams on the specification and reference architecture for the new format.[60] Microsoft submitted the XPS specification to Ecma International.[61] In June 2007 Ecma International Technical Committee 46 (TC46) was set up to develop a standard based on the Open XML Paper Specification (OpenXPS).[62]

At the 97th General Assembly held in Budapest, June 16, 2009, Ecma International approved Open XML Paper Specification (OpenXPS) as an Ecma standard (ECMA-388).[63] TC46's members included:



Malware vulnerability

XPS files can be infected with malware.[64][65]

See also

References

  1. 1.0 1.1 1.2 Prince, Mitch. "XPS and OXPS file support in Windows 7 and Windows 8". Mitch Prince's Blog. Microsoft. http://blogs.msdn.com/b/mitchp/archive/2012/09/25/xps-and-oxps-file-support-in-windows-7-and-windows-8.aspx. 
  2. 2.0 2.1 2.2 2.3 2.4 Standard ECMA-388: Open XML Paper Specification (OpenXPS®) (1st ed.). Ecma International. June 2009. https://www.ecma-international.org/wp-content/uploads/ECMA-388_1st_edition_june_2009.pdf. 
  3. Hoffman, Chris (5 July 2017). "What Is an XPS File and Why Does Windows Want Me to Print to One?". https://www.howtogeek.com/148499/what-is-an-xps-file-and-why-does-windows-want-me-to-print-to-one/. 
  4. "XpsConverter". 2021-12-15. https://docs.microsoft.com/en-us/windows-hardware/drivers/devtest/xpsconverter. 
  5. "You cannot open an .oxps file in Windows 7 or in Windows Server 2008 R2". http://support.microsoft.com/kb/2732059/en-us. 
  6. "Reference Raster Image Processor (RIP)". 2007-01-09. https://learn.microsoft.com/en-us/previous-versions/gg463352(v=msdn.10). 
  7. "HD Photo". Microsoft. 12 Mar 2007. http://blogs.msdn.com/b/pix/archive/2007/03/12/hd-photo.aspx. 
  8. 8.0 8.1 Foley, Mary Jo (2005-04-25). "Microsoft Readies New Document Printing Specification". Seattle: Ziff Davis. http://www.microsoft-watch.com/content/operating_systems/microsoft_readies_new_document_printing_specification.html. 
  9. "Comparison of PDF, XPS and ODF by an ISV providing PDF solutions". Amyuni. http://www.amyuni.com/blog/?p=8. 
  10. "Easy steps for converting XPS files to PDF". n.d.. Archived from the original on 2022-07-14. https://web.archive.org/web/20220714091150/https://www.adobe.com/acrobat/hub/how-to/steps-to-convert-xps-to-pdf. 
  11. Nias, Simon (2007-08-02). "XPS format passes first standardisation test". Haymarket Media. http://www.printweek.com/news/674714/XPS-format-passes-first-standardisation-test/. 
  12. "XML Paper Specification". Microsoft. 2006-10-24. http://www.microsoft.com/whdc/xps/xpsspec.mspx. 
  13. Beal, Vangie (2021-05-24). "All About Adobe PDF". TechnologyAdvice. https://www.webopedia.com/insights/pdf/. 
  14. 14.0 14.1 14.2 14.3 "XPS FAQ". Global Graphics Software Limited. January 2008. http://www.globalgraphics.com/xps/faq.pdf. 
  15. 15.0 15.1 15.2 15.3 "XML Paper Specification (XPS)". VeryDOC.com. https://www.verydoc.com/xps.html. 
  16. 16.0 16.1 16.2 "ZDNet Definition for: XML Paper Specification". CNET. http://dictionary.zdnet.com/definition/XML+Paper+Specification.html. 
  17. ECMA-388 1st Edition / June 2009, 8.2 Package
  18. ECMA-388 1st Edition / June 2009, 9.1.5 Image Parts
  19. "PDF Reference". Adobe. November 2006. p. 39. Archived from the original. Error: If you specify |archiveurl=, you must also specify |archivedate=. https://web.archive.org/web/20080624230300/http://www.adobe.com/devnet/acrobat/pdfs/pdf_reference_1-7.pdf. 
  20. "Acrobat 3D Developer Center". Adobe. https://www.adobe.com/devnet/acrobat3d/. 
  21. Ferris, Sara (February 2005). "U3D format debuts in Acrobat 7". CADalyst. http://findarticles.com/p/articles/mi_m0BLL/is_2_22/ai_n13487390/. 
  22. 22.00 22.01 22.02 22.03 22.04 22.05 22.06 22.07 22.08 22.09 22.10 22.11 22.12 22.13 22.14 22.15 22.16 22.17 22.18 22.19 22.20 22.21 22.22 22.23 22.24 22.25 22.26 22.27 22.28 22.29 22.30 22.31 22.32 22.33 22.34 22.35 22.36 22.37 22.38 Amiouny, Dany. "PDF or XPS: Choose the Right Document Format for your Applications". Amyuni. https://www.amyuni.com/downloads/Amyuni%20Whitepaper%20-%20PDF%20vs%20XPS.pdf. 
  23. 23.0 23.1 23.2 ISO 32000-1:2008 Document management – Portable document format – Part 1: PDF 1.7, https://www.iso.org/standard/51502.html 
  24. https://admin.adobe.acrobat.com/_a295153/p81291074/ A9 PDF Binders]
  25. Fluckinger, Don (2006-06-01). "Look Out, Acrobat: Microsoft XPS is on Your Tail". Ziff Davis. http://www.pdfzone.com/c/a/Authoring/Look-Out-Acrobat-Microsoft-XPS-Is-on-Your-Tail/. 
  26. 26.0 26.1 26.2 26.3 26.4 Thomas, Kas (1999). "Portable Document Format: An Introduction for Programmers". MacTech (Xplain) 15 (9). http://www.mactech.com/articles/mactech/Vol.15/15.09/PDFIntro/. 
  27. Sklar, David F.; van Dam, Andy (2010-11-05). "An Introduction to Windows Presentation Foundation". https://learn.microsoft.com/en-us/previous-versions/dotnet/articles/aa480192(v=msdn.10). 
  28. Rutter, Richard; Lauke, Patrick H.; Waddell, Cynthia et al. (2007-03-19). Web Accessibility: Web Standards and Regulatory Compliance. Apress. p. 379. ISBN 978-1-59059-638-8. https://books.google.com/books?id=dlJ94KZqwqcC&pg=PA379. Retrieved 2022-11-04. "The Reflow feature depends on tags in order to redraw the PDF page to fit the existing window width, but reflows content withon only a single page at a time." 
  29. 29.0 29.1 29.2 29.3 "XPS Annotator". http://www.xpsdev.com/xps-annotator. 
  30. 30.0 30.1 Keizer, Gregg (2005-10-28). "Microsoft Adds XPS In Office 12 To Fight Adobe". TechWeb News. http://www.informationweek.com/news/software/enterpriseapps/showArticle.jhtml?articleID=172901469. 
  31. Brailsford, David F. (May 1994). "Adobe's Acrobat – providing the missing link?". University of Nottingham. http://eprints.nottingham.ac.uk/219/1/meckler94.pdf. 
  32. 32.0 32.1 32.2 Blonce, Aexandre; Filiol, Eric; Frayssignes, Laurent. "Portable Document Format (PDF) Security Analysis and Malware Threats". https://www.blackhat.com/presentations/bh-europe-08/Filiol/Presentation/bh-eu-08-filiol.pdf. 
  33. "explaining PostScript". University of Colorado. http://amath.colorado.edu/documentation/postscript/WhatIs.html. 
  34. Hardy, M.; Masinter, L.; Markovic, D.; Adobe Systems Incorporated; Johnson, D.; PDF Association; Bailey, M.; Global Graphics (March 2017), The application/pdf Media Type, IETF, doi:10.17487/RFC8118, RFC 8118, ISSN 2070-1721, https://tools.ietf.org/html/rfc8118 
  35. "XPS Documents". http://www.microsoft.com/windows/windows-vista/features/xps.aspx. 
  36. 36.0 36.1 36.2 "View and Generate XPS". Microsoft. http://www.microsoft.com/whdc/xps/viewxps.mspx. 
  37. "Microsoft XML Paper Specification Essentials Pack". 2008-11-04. http://www.microsoft.com/downloads/details.aspx?FamilyID=b8dcffdd-e3a5-44cc-8021-7649fd37ffee&displaylang=en. 
  38. "Microsoft XML Paper Specification Essentials Pack". 2010-02-12. http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=11816. 
  39. "XPS and Color Printing Enhancements in Windows Vista". 2007-12-17. http://msdn.microsoft.com/en-us/windows/hardware/gg463397.aspx. 
  40. "XPSDrv Filter Pipeline: Implementation and Best Practices" (DOCX). Microsoft. 2008-02-07. http://download.microsoft.com/download/9/c/5/9c5b2167-8017-4bae-9fde-d599bac8184a/XPSDrv_FilterPipe.docx. 
  41. "Apps/Evince". http://projects.gnome.org/evince/. 
  42. "Native Interpretation in the Harlequin RIP". Global Graphics Software. October 2021. https://www.globalgraphics.com/application/files/1816/3532/4907/white-paper-native-interpetation-in-the-harlequin-rip.pdf. 
  43. "Okular Document Format Handlers Status". http://okular.kde.org/formats.php. 
  44. "Scientific and technical documentation utility products features". 2017-06-22. http://www.stdutility.com/. 
  45. "News about Sumatra PDF reader". 2012-01-06. http://blog.kowalczyk.info/software/sumatrapdf/news.html. 
  46. "XPS Annotator". 2012-01-28. http://www.xpsdev.com/xps-annotator. 
  47. XPS viewer
  48. "Sharp Open Systems Architecture supports XPS in multi-function printers". Sharpusa.com. http://www.sharpusa.com/products/FunctionPressReleaseSingle/0,1080,650-5,00.html#. 
  49. Monckton, Paul. "IT Week 10 November 2006, Canon, Epson and HP support for XPS". Itweek.co.uk. http://www.itweek.co.uk/personal-computer-world/features/2167665/photo-printing-under-windows. 
  50. "Fuji Xerox and Microsoft Collaborate in Document Management Solutions Field". Fujixerox.co.jp. 2006-11-28. http://www.fujixerox.co.jp/eng/headline/2006/1128_withms.html. 
  51. "Ips Xps". Zoran.com. http://www.zoran.com/IPS-XPS. 
  52. "Solutions for XPS document sharing and native XPS printing". Globalgraphics.com. http://www.globalgraphics.com/xps/index.html. 
  53. "XPS Technology Showcase". Microsoft.com. 2007-04-19. http://www.microsoft.com/whdc/xps/showcase.mspx. 
  54. "Windows Logo Program Requirements and Policies". Microsoft.com. http://www.microsoft.com/whdc/winlogo/hwrequirements.mspx. 
  55. "Community Promise for XPS". Microsoft. 2007-01-31. https://msdn.microsoft.com/en-us/library/windows/hardware/Dn653988.aspx. 
  56. "Community Promise for XPS FAQs". Microsoft.com. 2007-01-31. http://www.microsoft.com/whdc/xps/xpscommunitypromisefaq.mspx. 
  57. "XML Paper Specification Licensing". Microsoft. 2005-09-02. http://www.microsoft.com/whdc/xps/xpslicense.mspx#EEB. 
  58. "Monotype Imaging Licenses XPS Printer Driver Solution to Microsoft". http://ir.monotypeimaging.com/releasedetail.cfm?ReleaseID=605039. 
  59. "Monotype Imaging Licenses XPS Printer Driver Solution to Microsoft". http://globeinvestor.sympatico.ca/servlet/WireFeedRedirect?cf=vtgam/realtime/SLI/ginews/config_print&date=20110913&archive=bwire&slug=20110913005095. 
  60. "Global Graphics XPS reference". Redorbit.com. 2006-09-21. http://www.redorbit.com/news/technology/665662/global_graphics_xps_reference_rip_available_from_microsoft/index.html. 
  61. Reimer, Jeremy (2007-07-01). "War and PDF: Microsoft submits XPS to standards body". Arstechnica.com. https://arstechnica.com/news.ars/post/20070701-microsoft-submits-pdf-competitor-to-standards-body.html. 
  62. "TC46 - XML Paper Specification (XPS)". Ecma-international.org. http://www.ecma-international.org/memento/TC46.htm. 
  63. Steve McGibbon (Microsoft) (2009-06-17). "OpenXPS - OpenXML Paper Specification". http://notes2self.net/archive/2009/06/17/openxps-openxml-paper-specification.aspx. 
  64. "CVE-2022-42397 detail". NIST. 27 January 2023. https://nvd.nist.gov/vuln/detail/CVE-2022-42397. 
  65. "Analysis of CVE-2020-0605 – Code Execution using XPS Files in .NET". 10 May 2020. https://www.mdsec.co.uk/2020/05/analysis-of-cve-2020-0605-code-execution-using-xps-files-in-net/. 

External links