What XMP is
The Extensible Metadata Platform (XMP) is a way to store metadata as a small XML document, called a packet, inside a file or beside it. Adobe introduced it in 2001, and it became an ISO standard, ISO 16684-1, in 2012.
A packet can sit in several places:
- in a JPEG, an APP1 segment marked with the XMP namespace;
- in a TIFF, tag 700;
- in a PNG, an
iTXtchunk namedXML:com.adobe.xmp; - in a HEIC file, a metadata item of its own;
- beside a RAW file, as an .xmp sidecar.
XMP is Unicode throughout and has none of IIM's small byte limits. Properties belong to namespaces, written as prefixes such as dc: or xmpRights:.
Because XMP is extensible, anyone can define a namespace. The rights properties on this page come from three that nearly every reader understands: Dublin Core (dc:), XMP Rights Management (xmpRights:) and Photoshop's (photoshop:).
The rights properties
These are the properties that describe authorship and rights, with the names the IPTC Photo Metadata Standard gives them:
dc:rights: Copyright Notice. The same notice as EXIF Copyright and IPTC 2:116.dc:creator: Creator. An ordered list of names, matching IPTC 2:80 By-line and EXIF Artist.photoshop:Credit: Credit Line, matching IPTC 2:110.xmpRights:UsageTerms: Rights Usage Terms. Free text about how the image may be used.xmpRights:WebStatement: Web Statement of Rights. A link to a page about the image's rights.xmpRights:Marked: shown as Copyright Status in Adobe apps.xmpRights:Owner: a list of the rights owners' names.plus:CopyrightOwner: a structured owner record from the IPTC Extension, with a name and an identifier.
IPTC Core and IPTC Extension
In the mid-2000s the IPTC moved its IIM fields onto XMP as IPTC Core. Where a suitable property already existed, IPTC Core reused it: the Copyright Notice became dc:rights and the Credit Line became photoshop:Credit. Fields with no existing home got the Iptc4xmpCore namespace, for example the creator's contact details.
The IPTC Extension came later and adds richer fields, including licensing properties taken from the PLUS coalition's vocabulary. Together, IPTC Core, IPTC Extension and the IIM form make up the IPTC Photo Metadata Standard.
Language alternatives
dc:rights and xmpRights:UsageTerms are language alternatives: each can hold one value per language, with a default marked x-default. Most readers show the default and ignore the rest. If you write one language, write it as the default.
dc:creator is an ordered list. Two photographers who share credit appear as two entries, in the order you give them.
Marked: copyrighted, public domain or unknown
xmpRights:Marked is a Boolean with three practical states:
- True: the image is protected by copyright. Adobe apps show Copyrighted.
- False: the image is in the public domain. Adobe apps show Public Domain.
- Absent: the status is unknown.
Photoshop's File Info and Lightroom Classic's IPTC panel both offer this menu. Some software also shows a © beside the file name when the property is True. Setting it to True alongside a notice keeps the file's statement consistent.
Embedded packets and sidecars
For JPEG, HEIC, PNG and TIFF, the XMP packet lives inside the file, and it travels wherever the file goes unless a tool strips it. For RAW files, most software writes a separate .xmp sidecar with the same base name, because it avoids writing into a proprietary format.
Some software also keeps metadata in its own catalogue and writes it into files only when you ask. In Lightroom Classic, for example, metadata you add stays in the catalogue until you save it to the files or export them. Until then, other programs can't see it.
To read a packet yourself, exiftool -XMP:All photo.jpg lists every XMP property, grouped by namespace. It is a quick way to see whether dc:rights and the IPTC notice match.
Keeping XMP in step with EXIF and IPTC
Because XMP repeats fields that EXIF and IIM already have, a photo can say one thing in XMP and another elsewhere. The Metadata Working Group's guidance asks writers to update all of them together, and gives readers rules for deciding which one to trust when they disagree. A photo whose layers disagree is conflicting, and you can see which layer says what with the copyright checker.
Copyrighted writes these properties from a Rights Profile: notice, creator, credit, usage terms, web statement, owner and copyright status, together with their EXIF and IPTC equivalents where they exist. For a RAW file, the XMP goes into a sidecar.
Questions
What is dc:rights?
It is the Dublin Core rights property that XMP uses for the copyright notice. The IPTC Photo Metadata Standard maps its Copyright Notice to it, so it should hold the same text as EXIF Copyright and IPTC 2:116.
What does xmpRights:Marked do?
It records the copyright status: True for copyrighted, False for public domain, and absent for unknown. Adobe apps show it as the Copyright Status menu.
Where is XMP stored in a JPEG?
In an APP1 segment that starts with the XMP namespace identifier. Very large packets can continue in extended XMP segments. RAW files usually keep their XMP in a separate .xmp sidecar file instead.