EXIF: DateTimeDigitized and CreateDate

Started by Jom, February 22, 2020, 07:08:35 AM

Previous topic - Next topic

Jom

I can't understand why there is a DateTimeDigitized tag in the exif-specification, but in practice CreateDate is used?
I understand about consistency and all that, but I can't find what standard allows to make this consistency.
If I have formulated the question not very clearly or think in the wrong direction, then correct me, I will ask the question in other words.

StarGeek

Your confusing the Standard with the Interface.  Exiftool is just the interface to write the metadata.  It uses the actual tag names more often than most programs, but it is still just the interface.

Almost every other program out there uses different names for various pieces of metadata.  This is all done to make things easier to use for people who don't really care about the standards, they just want things to work.

Using Windows as an example, if you right click on an image, select properties, then the Details tab, it will list a lot of metadata, a lot of which doesn't even resemble the actual tag names.  And it will fill those properties with data from a bunch of different tags and write to multiple tags.  It displays the Subject in that window.  But this has nothing to do with the Subject, which holds keywords. Instead, it will read the XPSubject tag or the EXIF:ImageDescription tag.  But then there's the Title, which will also display the EXIF:ImageDescription tag, as well as four other tags, depending upon the order it reads the data.  It displays Tags, which is actually the combination of IPTC:Keywords and XMP:Subject.
* Did you read FAQ #3 and use the command listed there?
* Please use the Code button for exiftool code/output.
 
* Please include your OS, Exiftool version, and type of file you're processing (MP4, JPG, etc).

milchtaich

Quote from: Andrei Korzhyts on February 21, 2020, 11:45:13 AM
So this XMP-exif:DateTimeDigitized tag is now deprecated?
It should not be used for new metadata?

Yes. The DateTimeDigitized tag defined by the Exit standard is now mapped to XMP as the XMP-xmp:CreateDate tag. Sensibly, ExifTool refers to both tags as Create Date. Originally, the XMP SPECIFICATION PART 2 (2008) indicated a different mapping of DateTimeDigitized, to an XMP tag with the same name. However, in 2009, version 1.0.1 of the Metadata Working Group guidelines changed an earlier recommendation and recommended a mapping to CreateDate. Adobe adopted that recommendation in later versions of their specification and in practice, and so did the CIPA Exif 2.3* Metadata for XMP standard. This made XMP-exif:DateTimeDigitized deprecated.

Interestingly, the WMG's other recommendation, to identify Exif's DateTimeOriginal with XMP's DateCreated, was not adopted by Adobe's specification or the CIPA standard, which both still indicate a mapping of the Exif tag to an XMP tag with the same name. The reason, I presume, is that the XMP-photoshop:DateCreated tag is used by the IPTC Core standard to store the Date Created metadata property. While the semantics of this property and XMP-exif:DateTimeOriginal are similar, the latter belongs to the XMP category of internal properties, as the value is typically set by the camera, and the latter is external, in that it must be set by a user. In practice, Adobe's software (and any other software using Adobe's XMP Core), initially copies exif:DateTimeOriginal to both XMP-exif:DateTimeOriginal and XMP-photoshop:DateCreated. However, while the first XMP tag is always kept synchronized with the DateTimeOriginal Exif tag, the latter can be independently changed by the user at any point.

Jom

#3
Quote from: StarGeek on February 22, 2020, 10:52:43 AM
Your confusing the Standard with the Interface.  Exiftool is just the interface to write the metadata.  It uses the actual tag names more often than most programs, but it is still just the interface.

Almost every other program out there uses different names for various pieces of metadata.  This is all done to make things easier to use for people who don't really care about the standards, they just want things to work.

Thank you for explaining the point (essence, суть), this is exactly what I was wanting to find out (I did not hope that I would be understood).
I started digging deeper myself and found 0x9004 for CreateDate in ExifTool and 0x9004 for DateTimeDigitized in Exif-specification.

0x9004 — this is exactly the common detail that I was looking for and without which my understanding fell apart.
+
your constructive explanation. Thanks.

This should be mentioned at the beginning of the ExifTool documentation. Reading tag lists without understanding the entire system is pointless. I wanted to understand exactly the system by which standards and software are linked. This is about it all my questions, not just about names of tags.

Jom

#4
Quote from: milchtaich on February 22, 2020, 12:31:51 PM
Quote from: Andrei Korzhyts on February 21, 2020, 11:45:13 AM
So this XMP-exif:DateTimeDigitized tag is now deprecated?
It should not be used for new metadata?

Yes. The DateTimeDigitized tag defined by the Exit standard is now mapped to XMP as the XMP-xmp:CreateDate tag. Sensibly, ExifTool refers to both tags as Create Date. Originally, the XMP SPECIFICATION PART 2 (2008) indicated a different mapping of DateTimeDigitized, to an XMP tag with the same name. However, in 2009, version 1.0.1 of the Metadata Working Group guidelines changed an earlier recommendation and recommended a mapping to CreateDate. Adobe adopted that recommendation in later versions of their specification and in practice, and so did the CIPA Exif 2.3* Metadata for XMP standard. This made XMP-exif:DateTimeDigitized deprecated.

Interestingly, the WMG's other recommendation, to identify Exif's DateTimeOriginal with XMP's DateCreated, was not adopted by Adobe's specification or the CIPA standard, which both still indicate a mapping of the Exif tag to an XMP tag with the same name. The reason, I presume, is that the XMP-photoshop:DateCreated tag is used by the IPTC Core standard to store the Date Created metadata property. While the semantics of this property and XMP-exif:DateTimeOriginal are similar, the latter belongs to the XMP category of internal properties, as the value is typically set by the camera, and the latter is external, in that it must be set by a user. In practice, Adobe's software (and any other software using Adobe's XMP Core), initially copies exif:DateTimeOriginal to both XMP-exif:DateTimeOriginal and XMP-photoshop:DateCreated. However, while the first XMP tag is always kept synchronized with the DateTimeOriginal Exif tag, the latter can be independently changed by the user at any point.

Thanks for explanation. Knowing history gives a lot to understand the present.
It's not standards, it's https://en.wikipedia.org/wiki/Santa_Barbara_(TV_series).

Jom

#5
If tag names that are specified in the standard can be replaced by "more convenient" ones by different manufacturers, then why does tag name appear in standard at all?
It was possible to specify just 0x9004 and description.
Or tag name in standard not mandatory, but just recommended?

-------- in some hours ------------------------------------------------------------------------

After some experiments with xmp-file, I think I understood.

I write this:
f:\>exiftool -OwnerName="654" 20130730_152454.xmp
    1 image files updated

And I get this:
<exifEX:CameraOwnerName>654</exifEX:CameraOwnerName>

ExifTool has some of its own tag names for internal use (for convenience), but still records the names according to the specification for all cases (xmp, cr2, jpg...).
Tag names in the standard are necessary for compatibility between applications.
Am I correct?