OpenRaster MIME Type
image/openraster files contain, how to open and convert .ora artwork, and what Poly currently supports. MIME type details for image/openraster
In active use| MIME type | image/openraster |
|---|---|
| Extensions | .ora |
| First standardized | 2006 |
| Created by | Boudewijn Rempt and Cyrille Berger |
| Browser support | No native support in current major browsers |
| Example applications | Krita, GIMP, MyPaint, Scribus |
| Poly support | Partial. Poly recognizes `image/openraster` and `.ora` filenames as images, but its image decoder does not unpack the OpenRaster ZIP container. |
| Indexed by Poly | Partial. OpenRaster files are searchable by filename, but Poly does not index their layer names, embedded pixels, XML, or visual content. |
| Preview in Poly | No. The image pipeline cannot decode `.ora`, so it does not generate thumbnails or an image-viewer preview. |
| Poly agent | No. Without a generated thumbnail, Poly does not provide the layered artwork or its flattened composite to the agent. |
What does image/openraster mean?
The image/openraster media type identifies an OpenRaster document, normally stored with the .ora extension. OpenRaster is an interchange format for layered raster artwork. It gives painting and image-editing applications a shared alternative to using one application's native project format.1
An .ora file is a ZIP archive, not a single bitmap. Its stack.xml file describes the canvas, nested layer groups, layer order, visibility, opacity, offsets, and compositing operations. Raster layers are normally stored as separate PNG files. The format can also reference SVG layer data.23
Every conforming archive includes these important entries:2
| Entry | Purpose |
|---|---|
mimetype | The first, uncompressed ZIP entry. Its exact contents are image/openraster. |
stack.xml | The UTF-8 XML layer-stack description. |
data/ | The image data referenced by stack.xml, usually one PNG per raster layer. |
Thumbnails/thumbnail.png | A non-interlaced, 8-bit-per-channel thumbnail no larger than 256 by 256 pixels. |
mergedimage.png | The final composited image as an 8-bit or 16-bit-per-channel PNG. |
50 4B 03 04, is not unique to OpenRaster. To identify the format reliably, inspect the first ZIP entry and verify that the uncompressed mimetype file contains exactly image/openraster, with no whitespace or newline.2The OpenRaster specification defines the media type inside the container, but image/openraster does not appear in IANA's current media-type registry.4 In practice, applications still use this identifier and the .ora extension consistently.
Why OpenRaster was created
Boudewijn Rempt and Cyrille Berger proposed OpenRaster in 2006 as a way to exchange layered images between editors.1 The format deliberately borrows the transparent, ZIP-and-XML structure used by OpenDocument. Its current published specification is version 0.0.6.1
The design has two complementary goals. A full-baseline reader can load and edit the layer stack, while a viewing-baseline reader can show the required mergedimage.png even if it cannot reproduce every editable feature.3 That flattened composite is a useful compatibility fallback, but it does not turn a basic image viewer into a layered editor.
OpenRaster remains an interchange format rather than an ideal final-delivery format. Krita's documentation notes that separate PNG layers can make .ora files relatively large and unsuitable for ordinary web publishing.5
How to open an .ora file
Use a graphics application with explicit OpenRaster support:
- Krita opens and saves
.oraas a layered interchange document.5 - GIMP supports both OpenRaster import and export.6
- MyPaint and Scribus are also listed by the OpenRaster project as supporting applications.1
Current browsers do not natively display OpenRaster documents. MDN's browser image guide covers the formats browsers decode and does not include OpenRaster.7 Serving an .ora file from a website will generally result in a download rather than an inline layered image.
.ora to .zip, and extract mergedimage.png. Changing the extension only exposes the archive; it does not convert or repair the document.Support in Poly
Poly recognizes image/openraster as an image type and maps .ora filenames to it. That recognition is visible in the shared MIME schema and the client MIME map. Format-specific processing stops there.
The image indexer sends recognized images to Poly's image loader. That loader has dedicated paths for HEIF, PSD, JPEG XL, and SVG, then sends other image types to a general decoder. OpenRaster has no dedicated unpacking path, and the general decoder cannot treat its ZIP container as a bitmap. As a result:
- Poly stores and manages the file, and filename search still works.
- It does not extract
mergedimage.png,thumbnail.png,stack.xml, layer names, dimensions, or embedded metadata. - It does not generate WebP thumbnails or visual-similarity embeddings.
- The image viewer and Poly agent do not receive a rendered composite.
This is a decoder limitation, not a limitation of OpenRaster itself. The file already contains both a thumbnail and a merged PNG, but Poly does not currently extract either one.
Converting OpenRaster without losing the wrong thing
Choose the output based on whether editable layers matter:
- Another layered editor format: Open the file in Krita or GIMP, review the result, then save in the target editor's native project format. Unsupported blend modes or extensions may render differently, so compare the composite before discarding the
.orasource. - PNG: Export the merged image for lossless pixels and transparency. PNG does not preserve OpenRaster's editable layer stack.
- JPEG: Use it for a smaller photograph-like final image when transparency and layers are no longer needed. JPEG encoding is lossy.
- WebP or AVIF: Use these for web delivery after flattening. They are delivery formats, not substitutes for an editable OpenRaster project.
Extracting mergedimage.png is the safest quick conversion when the supplied composite is trustworthy. Rebuilding the image by combining individual layer PNGs requires honoring the order, offsets, opacity, visibility, groups, isolation, and compositing operations in stack.xml.3
OpenRaster compared with PSD and native project files
| Property | OpenRaster (.ora) | Photoshop document (.psd) | Editor-native project file |
|---|---|---|---|
| Primary role | Cross-application layer exchange | Adobe Photoshop document and interchange | Preserve one editor's complete working state |
| Container transparency | ZIP, XML, PNG, and optional SVG data | Binary documented format | Depends on the application |
| Flattened fallback | Required mergedimage.png | Commonly includes a composite image | Depends on the format |
| Advanced editor features | Limited to shared baseline features and extensions | Broad Photoshop feature model | Usually the richest option for that editor |
| Best use | Moving layered raster art between supporting applications | Photoshop-centered workflows | Continuing work in the originating editor |
OpenRaster's simplicity makes it approachable, but interchange always involves a lowest-common-denominator tradeoff. The baseline specification defines a focused set of compositing modes and permits extensions. An application that does not understand an extension may preserve the flattened appearance while losing editability or feature semantics.38
Security and privacy considerations
Treat an .ora file as an untrusted archive. A safe reader should limit expanded size and entry count, reject paths that escape the extraction directory, validate stack.xml, and impose sensible image-dimension and XML-complexity limits. The outer ZIP header alone does not establish that the required entries are present or valid.
OpenRaster can also contain material that is invisible in the flattened result, including hidden layers, layer names, discarded sketches, and application-specific extension data. Review the complete layer stack before sharing an editable source file. Exporting a clean flattened PNG is often better when recipients only need the finished artwork.
Footnotes
- OpenRaster project. Open Raster Specification version 0.0.6. The project describes the format, its 2006 proposal, creators, and supporting applications. ↩ ↩2 ↩3 ↩4
- OpenRaster project. File Layout Specification. Defines the
.oraZIP wrapper, required entries, embedded media-type string, thumbnail, and merged image. ↩ ↩2 ↩3 - OpenRaster project. Layer Stack Specification. Defines the XML layer model, baseline support classes, properties, and compositing behavior. ↩ ↩2 ↩3 ↩4
- Internet Assigned Numbers Authority. Media Types Registry. The current image registry does not list
openraster. ↩ - Krita project. OpenRaster (
.ora) format. Describes.oraas a layered interchange format based on ZIP, XML, and PNG data. ↩ ↩2 - GIMP project. Image File Formats: OpenRaster. Lists OpenRaster import and export support. ↩
- MDN Web Docs. Image File Type and Format Guide. Documents image formats supported by web browsers. ↩
- OpenRaster project. Baseline Intent. Defines baseline interchange and permits custom extensions. ↩