So whatโs the problem with hierarchical keywords in Adobe Lightroom?
Adobe was behind the XMP specification that makes our life easier by allowing different software programs to communicate in the same language and exchange information on the metadata level. For example image annotations entered in Lightroom are visible in Daminion and vice versa.
But the Lightroom development team has invented a new dialect (read: new XMP scheme) to store the common annotation field, named Keywords.
In XMP specification Keywords are stored in a place called โdc:subjectโ. The โdc:โ prefix denotes that this field is a part of the Dublin Core section of the XMP metadata.
Although XMP specification doesnโt permit the storage of hierarchical keywords inside the โdc:subjectโ, there is a magic โ|โ delimiter symbol* that can be used to split different hierarchy levels of keywords and store them inside a single text line. This symbol has been unofficially adopted by many software programs including Microsoft Windows Live Gallery, Lightroom, Expression Media, Daminion, etcโฆ
However, according to a new MWG Specification, the hierarchical path elements of keywords MUST be flattened. This means that each hierarchy node must be stored as a separate keyword entry in the XMP โdc:subjectโ (a dubious decision IMO).
So Lightroom uses a new unofficial Lightroom Scheme that stores keywords with the hierarchy preserved (inside the โlr:HierarchicalSubjectโ field) and the Dublin Core Scheme to store flattened keywords (inside the โdc:subjectโ field).
The MWG consortium offers a complex new way of storing hierarchical fields in XMP, but thatโs another story. It would appear that new specification creators donโt see any point in providing backward compatibility for existing metadata specifications. I dislike MWGโs new method of storing hierarchical keywords mainly because there is no way of determining exactly where the most up to date keywords are: in dc:subject, in โlr:HierarchicalSubjectโ or in โmwg-kw:Keywordsโ.
Most photo software programs, for example GeoSetter, use โdc:subjectโ to store Keywords, which means that hierarchical info that youโve entered in Lightroom will be invisible to these programs.
Although Lightroom developers probably couldnโt care less about other programs (their competitors), this is one of the main reasons that some people prefer to stay with other image cataloging software programs.
Hey Lightroom dev team! Youโve created an excellent product, but why wonโt you make the other software development companies lives a lot easier by letting us save hierarchical info in โdc:subjectโ as well?
โ
* Some people use the โ/โ delimiter, but this isnโt really a big problem because it can be adjusted in program preferences.
How Daminion lives with this issue:
As a temporary solution Daminionโs Keyword mapping list sets the priority of โlr:HierarchicalSubjectโ higher than โdc:subjectโ. This is simply because LR is a widely adopted program so we need to provide good compatibility with it.
[cta-block]