Summary: | XMP metadata interoperability problem and inconsistency | ||
---|---|---|---|
Product: | [Applications] digikam | Reporter: | Jean-François Rabasse <jean-francois.rabasse> |
Component: | Metadata-Xmp | Assignee: | Digikam Developers <digikam-bugs-null> |
Status: | RESOLVED WORKSFORME | ||
Severity: | minor | CC: | caulier.gilles |
Priority: | NOR | ||
Version: | 2.2.0 | ||
Target Milestone: | --- | ||
Platform: | openSUSE | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | 3.0.0 | |
Sentry Crash Report: |
Description
Jean-François Rabasse
2012-07-26 09:36:22 UTC
I recommand to test with last digikam 2.7.0 and last libkexiv2 from kdegraphics component where we have fixed some code about xmp management Sorry, the dc properties are all lowercase. (in contrast, tiff: properties start uppercase). Please refer to the XMP specification. The XMP specification does not state anything about case sensitivity, so I agree with you that XMP is case sensitive as XML is. Which means the sample image contains an entry which is not defined in the dc namespace. Which software is writing dc.Title? (In reply to comment #2) > Sorry, the dc properties are all lowercase. (in contrast, tiff: properties > start uppercase). Please refer to the XMP specification. > The XMP specification does not state anything about case sensitivity, so I > agree with you that XMP is case sensitive as XML is. Which means the sample > image contains an entry which is not defined in the dc namespace. > > Which software is writing dc.Title? Hello Marcel, Thanks for feedback. I've also investigated and it appears the problem comes from a historical DCMI inconsistency. As they say themselves, (cf. http://dublincore.org/documents/naming-policy/) "In 1998, the Dublin Core element set was published using Names (at the time called Labels) which had a leading uppercase character, e.g. Title and Creator [RFC2413]. In October 2000, the DCMI Advisory Committee decided to change the Names of elements to lowercase in order to bring DCMI practice into line with conventions widely (though not universally) followed in existing Dublin Core applications and in the XML and RDF/XML communities more generally. Unfortunately, this decision was propagated throughout DCMI documentation only after some delay [DC-ELEMENTS]. In the meantime, the Dublin Core Metadata Element Set had progressed through formal standardization channels for recognition first as NISO Z39.85-2001 and CEN Workshop Agreement CWA 13874, then as ISO 15836 -- with element Names starting in uppercase [ISO15836]." So, they started with capitalized elements names, then changed their mind to all lowercase at a moment the ISO standard was already on its way. Too bad. I suggest to close this issue, as it is clearly not an applications issue. I don't know, due to this formal inconsistency, how many images on the earth may embed a xmp.dc.Title instead of xmp.dc.title. As DCMP suggest (IMHO in a somewhat casual way) "In practice, this suggests that applications are well advised to normalize case when parsing terms for identity comparisons", I've fixed my immediate problem, in my reading program, by checking both syntaxes. Something like : - get xmp.dc.title - if non existent or empty, get xmp.dc.Title This solves my problem and I can live with, that way :) Regards Jean-François |