FCPXML is defined by a document type definition (DTD) that Apple publishes. Final Cut Pro rejects a whole import if the document does not match the DTD. These pages follow the DTD for version 1.10, and list what later versions add.
fcpxml, the root element
Content: optional import-options, optional resources, then
one of: a library, any number of event elements, or any number
of event items (clip, audition, mc-clip,
ref-clip, sync-clip, asset-clip, the
collection items
and project).
| Attribute | Type | Meaning |
|---|---|---|
version | fixed text | The version of the DTD, such as 1.10. Each DTD fixes this to its own number. |
import-options and option
import-options holds option elements, each with required
key and value attributes. Apple documents four keys.
| Key | Value | Meaning |
|---|---|---|
copy assets | 1 copy, 0 link | Whether to copy or link the assets the document refers to. |
library location | URL | The library to add the event or project to. A directory URL takes the default library name; a library that does not exist is created. |
suppress warnings | 1 or more suppresses, 0 shows | Whether warnings during import are shown. |
base url | URL | Base for a relative src in the resources. |
library
Content: any number of event and smart-collection
elements.
| Attribute | Values | Meaning |
|---|---|---|
location | text | Location of the library. |
colorProcessing | standard, wide, wide-hdr | The library’s colour processing. |
event
Content: any number of event items, as listed for the root element.
| Attribute | Meaning |
|---|---|
name | The event’s name. |
uid | A unique identifier. |
project
Content: exactly one sequence.
| Attribute | Meaning |
|---|---|
name | The project’s name. |
uid | A unique identifier. |
id | XML ID, for references such as media/@projectRef. |
modDate | Modification date. |
Time values
Attributes of type time hold a rational number of seconds, with a 64-bit
numerator and a 32-bit denominator: 1001/30000s is one frame at 29.97
frames a second. A whole number of seconds can be written as 5s.
The .fcpxmld bundle
Since version 1.10, Final Cut Pro can export a bundle: a folder with the extension
.fcpxmld. The simplest bundle has one file, Info.fcpxml, at
its root, in the format of this DTD. Apple’s pages do not describe how other files are
arranged inside the bundle.
Versions
Apple archives the DTDs from version 1.0. The table lists the Final Cut Pro release that introduced the version, where Apple’s release notes say so, and what changed compared with the DTD before it.
| Version | Final Cut Pro | Changes |
|---|---|---|
| 1.0 to 1.8 | Not confirmed | Earlier DTDs, archived by Apple. Not compared here. |
| 1.9 | 10.4.9 or later | Not compared here. |
| 1.10 | 10.6 (October 2021) | Adds the bundle format. These pages describe this DTD. |
| 1.11 | Not confirmed | Adds keyframe/@auxValue, param/@auxValue, adjust-colorConform, adjust-voiceIsolation and live-drawing. |
| 1.12 | 10.8 (June 2024) | Adds nameOverride on filter-video and filter-audio, the frame sampling value optical-flow-frc, and the rules startsWith and endsWith on match-text and match-property. |
| 1.13 | 11.0 (November 2024) | Adds format/@heroEye, asset/@heroEyeOverride, adjust-stereo-3D and hidden-clip-marker, and the frame rates 90, 100, 119.88 and 120 on conform-rate. |
| 1.14 | 12.0 (January 2026) | Adds match-analysis-type, the isRelatedTo rule, and the scopes transcript, visual and all-text on match-text. |
The changes in versions 1.11 to 1.14 come from comparing the DTD files published by the CommandPost project with each other, because Apple’s page shows only 1.10.