The Metadata Working Group (MWG) recommends techniques to allow certain
overlapping EXIF, IPTC and XMP tags to be reconciled when reading, and
synchronized when writing. The MWG Composite tags below are designed to aid
in the implementation of these recommendations. As well, the MWG defines
new XMP tags which are listed in the subsequent tables below. See
https://web.archive.org/web/20180919181934/http://www.metadataworkinggroup.org/pdf/mwg_guidance.pdf
for the official MWG specification.
The table below lists special Composite tags which are used to access other
tags based on the MWG 2.0 recommendations. These tags are only accessible
when explicitly loaded, but this is done automatically by the exiftool
application if MWG is specified as a group for any tag on the command line,
or manually with the -use MWG option. Via the API, the MWG Composite
tags are loaded by calling "Image::ExifTool::MWG::Load()".
When reading, the value of each MWG tag is Derived From the specified
tags based on the MWG guidelines. When writing, the appropriate associated
tags are written. The value of the IPTCDigest tag is updated automatically
when the IPTC is changed if either the IPTCDigest tag didn't exist
beforehand or its value agreed with the original IPTC digest (indicating
that the XMP is synchronized with the IPTC). IPTC information is written
only if the original file contained IPTC.
Loading the MWG module activates "strict MWG conformance mode", which has
the effect of causing EXIF, IPTC and XMP in non-standard locations to be
ignored when reading, as per the MWG recommendations. Instead, a "Warning"
tag is generated when non-standard metadata is encountered. This feature
may be disabled by setting $Image::ExifTool::MWG::strict = 0 in the
ExifTool config file (or from your Perl script when using the API). Note
that the behaviour when writing is not changed: ExifTool always creates new
records only in the standard location, but writes new tags to any
EXIF/IPTC/XMP records that exist.
Contrary to the EXIF specification, the MWG recommends that EXIF "ASCII"
string values be stored as UTF-8. To honour this, the exiftool application
sets the default internal EXIF string encoding to "UTF8" when the MWG module
is loaded, but via the API this must be done manually by setting the
CharsetEXIF option.
A complication of the MWG specification is that although the MWG:Creator
property may consist of multiple values, the associated EXIF tag
(EXIF:Artist) is only a simple string. To resolve this discrepancy the MWG
recommends a technique which allows a list of values to be stored in a
string by using a semicolon-space separator (with quotes around values if
necessary). When the MWG module is loaded, ExifTool automatically
implements this policy and changes EXIF:Artist to a list-type tag.
(RegionsRegionListFocusUsage) 'EvaluatedNotUsed' = Evaluated, Not Used
'EvaluatedUsed' = Evaluated, Used
'NotEvaluatedNotUsed' = Not Evaluated, Not Used
RegionName
string_+
(RegionsRegionListName)
RegionRotation
real_+
(RegionsRegionListRotation; not part of MWG 2.0 spec)
RegionSeeAlso
string_+
(RegionsRegionListSeeAlso)
RegionType
string_+
(RegionsRegionListType) 'BarCode' = BarCode
'Face' = Face
'Focus' = Focus
'Pet' = Pet
This structure may contain any top-level XMP tags, but none have been
pre-defined in ExifTool. Since no flattened tags have been pre-defined,
RegionExtensions is writable only as a structure (eg.
{xmp-dc:creator=me,rating=5}). Fields for this structure are identified
using the standard ExifTool tag name (with optional leading group name,
and/or trailing language code, and/or trailing # symbol to disable print
conversion).
Field Name
Writable
Values / Notes
[no tags known]
(This document generated automatically by Image::ExifTool::BuildTagLookup)
Last revised Sep 22, 2025