perldoc > Image::ExifTool::TagInfoXML

🖥️ NAME

Image::ExifTool::TagInfoXML - Read/write tag information XML database

🚀 Quick Reference

Use CaseCommandDescription
📝 Generate full tag database XMLImage::ExifTool::TagInfoXML::Write('dst.xml')Save complete tag information to XML file
🔍 List specific group tagsImage::ExifTool::TagInfoXML::Write(undef, 'IPTC', Flags => 1)Output IPTC tags to console with flags
📂 Write EXIF camera tags to fileImage::ExifTool::TagInfoXML::Write($outfile, 'exif:camera')Export camera-related EXIF tags
🛠️ Build language modules from XMLImage::ExifTool::TagInfoXML::BuildLangModules('src.xml')Reconstruct language modules from edited XML

📖 DESCRIPTION

This module is used to generate an XML database from all ExifTool tag information. The XML database may then be edited and used to re-generate the language modules (Image::ExifTool::Lang::*).

⚙️ METHODS

✍️ Write

Print complete tag information database in XML format.

# save list of all tags
$success = Image::ExifTool::TagInfoXML::Write('dst.xml');

# list all IPTC tags to console, including Flags
Image::ExifTool::TagInfoXML::Write(undef, 'IPTC', Flags => 1);

# write all EXIF Camera tags to file
Image::ExifTool::TagInfoXML::Write($outfile, 'exif:camera');

Inputs:

  1. [optional] 📄 Output file name, or undef for console output. Output file will be overwritten if it already exists.
  2. [optional] 🔖 String of group names separated by colons to specify the group to print. A specific IFD may not be given as a group, since EXIF tags may be written to any IFD. Saves all groups if not specified.
  3. [optional] ⚙️ Hash of options values:
    • Flags - Set to output 'flags' attribute
    • NoDesc - Set to suppress output of descriptions
    • Lang - Select a single language for output

Return Value: ✅ True on success.

Sample XML Output:

<?xml version='1.0' encoding='UTF-8'?>
<taginfo>

<table name='XMP::dc' g0='XMP' g1='XMP-dc' g2='Other'>
 <desc lang='en'>XMP Dublin Core</desc>
 <tag id='title' name='Title' type='lang-alt' writable='true' g2='Image'>
  <desc lang='en'>Title</desc>
  <desc lang='de'>Titel</desc>
  <desc lang='fr'>Titre</desc>
 </tag>
 ...
</table>

</taginfo>

🚩 Flags (if selected and available) are formatted as a comma-separated list of the following possible values: Avoid, Binary, List, Mandatory, Permanent, Protected, Unknown and Unsafe. See the tag name documentation and lib/Image/ExifTool/README for a description of these flags. For XMP List tags, the list type (Alt, Bag or Seq) is also output as a flag if applicable.

🔧 BuildLangModules

Build all Image::ExifTool::Lang modules from an XML database file.

Image::ExifTool::TagInfoXML::BuildLangModules('src.xml');

Inputs:

  1. 📄 XML file name
  2. 🔢 Update flags:
    • 0x01 = preserve version numbers
    • 0x02 = update all modules, even if they didn't change
    • 0x04 = update from scratch, ignoring existing definitions
    • 0x08 = override existing different descriptions and values

Return Value: 🔢 Number of modules updated, or negative on error.

👤 AUTHOR

Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

📚 SEE ALSO

Image::ExifTool(3pm), Image::ExifTool::TagNames(3pm)

Image::ExifTool::TagInfoXML
🖥️ NAME 🚀 Quick Reference 📖 DESCRIPTION ⚙️ METHODS
✍️ Write 🔧 BuildLangModules
👤 AUTHOR 📚 SEE ALSO

Generated by phpman v4.9.26-1-g511901d · Markdown · JSON · MCP Author: Che Dong Under GNU General Public License
2026-07-27 17:47 @216.73.216.199
CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Valid XHTML 1.0 Transitional!Valid CSS!
Enhanced by LLM: deepseek-v4-flash / taotoken.net / www.chedong.com - original format

^_top_^