Excire creates hierarchical keyword tags that when reading show up in these groups (example):
[XMP-dc] Subject : Architecture, Building, Tower, Cliff, Nature
[XMP-excire] Hierarchical Subject : excire|content|architecture, excire|content|architecture|building, excire|content|architecture|building|tower, excire|content|nature|cliff, excire|content|nature
When trying to overwrite these by using something like
-XMP-excire:keywords+=[Keyword] -overwrite_original
I only get
XMP-excire:Keywords doesn't exist or isn't writable
(Same with XMP-dc. ) Is there a way to add to or overwrite keywords in such a group?
XMP-excire is a new one to me. Phil's comment about ACDSee tags (https://exiftool.org/TagNames/XMP.html#acdsee) is relevant. XMP-lr:HierarchicalSubject is the already existing standard, why create their own?
The name of the tag is XMP-excire:HierarchicalSubject, not keywords. It helps to use the command in FAQ #3 (https://exiftool.org/faq.html#Q3) to see the name and not the description.
By default, exiftool won't write XMP-excire:HierarchicalSubject. A definition would need to be made. It looks like @herb previously posted an example xmp file (https://exiftool.org/forum/index.php?topic=12288.0). Give me a couple days and I'll see if I can put together a config file to use. Or if you can't wait, you can take a look at the example config file (https://exiftool.org/config.html) and try to make your own.
I can wait and will much appreciate your help. The fact that several of these editors use their own tag names, Adobe probably being the one who started it, is indeed annoying.
Test this out to make sure it works correctly with excire. My quick test gave back the same format as in the example XMP file in herb's post I linked above. It will require the -Config option (https://exiftool.org/exiftool_pod.html#config-CFGFILE) unless you add it to your .exiftool_config. Adding it to an existing .exiftool_config file would be a little tricky, see the above example config file link.
#------------------------------------------------------------------------------
# File: excire.config
#
# Description: Config file to allow writing of the excire HierarchicalSubject tag
#
# Example command:
# exiftool -config excire.config -XMP-excire:HierarchicalSubject="excire|content|architecture|building|tower" file.jpg
#
# Revisions: 2022/04/18 - Bryan K. Williams (aka StarGeek) Created
#
%Image::ExifTool::UserDefined = (
# new XMP namespaces (eg. xxx) must be added to the Main XMP table:
'Image::ExifTool::XMP::Main' => {
# namespace definition for examples 8 to 11
excire => { # <-- must be the same as the NAMESPACE prefix
SubDirectory => {
TagTable => 'Image::ExifTool::UserDefined::excire',
# (see the definition of this table below)
},
},
},
);
# This is a basic example of the definition for a new XMP namespace.
# This table is referenced through a SubDirectory tag definition
# in the %Image::ExifTool::UserDefined definition above.
# The namespace prefix for these tags is 'xxx', which corresponds to
# an ExifTool family 1 group name of 'XMP-xxx'.
%Image::ExifTool::UserDefined::excire = (
GROUPS => { 0 => 'XMP', 1 => 'XMP-excire', 2 => 'Image' },
NAMESPACE => { 'excire' => 'http://ns.excire.com/foto/1.0/' },
#----
# This probably should be set to AVOID by default so as to avoid confusion with
# XMP-lr:HierarchicalSubject. Remove the hashtag to set it to avoid.
#----
# AVOID => 1,
WRITABLE => 'string', # (default to string-type tags)
hierarchicalSubject => { List => 'Bag' },
);
#------------------------------------------------------------------------------
1; #end
Will do. Thanks! In the middle of a busy period right now, so won't happen this week...
I'm way overdue with this but just wanted to confirm that it indeed works as intended. Thanks a bunch!