6. What belongs where

Both projects evolve; the map below is where each capability naturally lives as they do. The posture is generous, not territorial — OpenImageIO backfills what files need today, and delegates natively as OpenColorIO grows each capability.

OpenImageIO Shared vocabulary Natural OpenColorIO candidates
File metadata I/O — reading and writing each format’s color signals The color interop ID grammar itself: the published IDs, namespacing, the config-local form, utility tokens Identification by chromaticities or transfer characteristic
The ImageSpec attribute contract — the verdict, descriptors, provenance facts The never-guess rule: resolve to nothing rather than to a guess Transform-comparison identification against the built-in spaces
Format ramps — how each container carries each signal The interchange roles as the anchor for exact conversion Interchange anchoring and cross-config lookup (findColorSpaceForID, LocateBuiltinColorSpace)
Write planning — which signs each format posts, with reasons Context management: config evolution, scoped contexts
The metadata harness around image operations

The dividing line is simple: OpenImageIO owns what touches files and image buffers; OpenColorIO is the natural home for what introspects configs and color spaces; the Forum’s grammar is common ground. The design keeps every OCIO-shaped capability behind a delegate-or-backfill seam, so as each one arrives upstream in OpenColorIO, OpenImageIO’s implementation retires in place — same behavior, better home.


This guide demonstrates the ASWF Color Interop Forum recommendation “An ID for Color Interop” and accompanies a proposed contribution series to OpenImageIO. It is a proof of concept and a presentation aid — not an official Forum or OpenImageIO artifact.