What types of metadata should I use?

Started by Jom, February 03, 2020, 11:58:19 AM

Previous topic - Next topic

Jom

After uploading a photo from the memory card to the archive, I need to add the following metadata to all photos:

Author name
Original filename
Time offset


In beginning I came to the following set of tags:

-EXIF:Artist="Author"
-EXIF:Copyright="Author"
-IPTC:By-Line="Author"
-IPTC:CopyrightNotice="Author"
-XMP:Creator="Author"
-XMP:Rights="Author"
"-IPTC:ObjectName<Filename"
"-XMP:PreservedFileName<Filename"
"-XMP:CameraFilename<Filename"
"-XMP:OriginalFileName<Filename"
"-XMP:RawFileName<Filename"
-EXIF:OffsetTime="+03:00"
-EXIF:OffsetTimeOriginal="+03:00"
-EXIF:OffsetTimeDigitized="+03:00"


Now I want to clarify this list, but I can't figure out what to do with XMP tags.
XMP doesn't have a standard set of tags like both in EXIF and IPTC, so I can't decide if I need XMP or not.
If I need it, what xmp-tags should I use?

Now I probably use tags from Adobe applications (I just spied them inside the files), but other programs will have their own XMP tags for the same purposes.
Can I opt out of XMP altogether (if necessary, other applications will add values from EXIF and IPTC to XMP themselves)?

StarGeek

Quote from: Andrei Korzhyts on February 03, 2020, 11:58:19 AM
XMP doesn't have a standard set of tags like both in EXIF and IPTC, so I can't decide if I need XMP or not.
If I need it, what xmp-tags should I use?

XMP does have a standard set.  See the IPTC Photo Metadata Standard 2019.1.  This is the group that created the original IPTC IIM/Legacy tags.  It is just that the XMP group is much more expandable and many companies add their own specialty tags to this group.

QuoteCan I opt out of XMP altogether (if necessary, other applications will add values from EXIF and IPTC to XMP themselves)?

This is entirely up to you and what works with the programs you use.

Myself, if I could, I would opt out of the IPTC tags entirely.  They're a much older standard, almost 30 years old at this point.  But several of the programs I regularly use don't read XMP so I end up going through the trouble of trying to keep the tags synchronized.  The moment I can replace these legacy programs, I'll be doing a mass deletion of IPTC tags.
* 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).

Jom

QuoteThis is entirely up to you and what works with the programs you use.

I don't want to solve the problem by depending on the programs.
If IPTC is deprecated, it is correct to opt out of IPTC rather than XMP. Do I understand you correctly? Ideally, I should aim to use only EXIF and XMP tags?
But I think that IPTC can be left now (it doesn't take up much space), because the world hasn't completely abandoned it yet.

Alan Clifford

I started creating this tag in all my photoographs a long time ago

[XMP]           DateTimeOriginal                : 2019:11:20 12:09:14-04:00

Diferent cameras have different ways of storing the time zone.  Or do not store the time zone at all.  So this is now standard in all my photographs.

StarGeek

Quote from: Andrei Korzhyts on February 03, 2020, 01:02:22 PM
QuoteThis is entirely up to you and what works with the programs you use.

I don't want to solve the problem by depending on the programs.

This make no sense to me.  You absolutely must solve the problem by depending upon what programs are used.  You can include all three to make it compatible with the most programs, but if the program you are using can't read a certain group, then it makes no sense to only use a group that can't be read by the programs you are using.

To expand on my previous statement, one program I use (Irfanview) does not read XMP metadata.  XMP is a better, more flexible group, but if I only used it because it's better, than I would never be able to read my metadata using Irfanview.  I'd have to find/use a different tool in order to see the data, which would waste time.
* 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).

Jom

You didn't quite get my needs right.

I build the process not on programs, but on standards.
If the program can't read the metadata that is the standard, this program won't be in my process.
This is why I was looking for a program that specializes in metadata and doesn't have a useless graphical interface for reading and writing metadata, only excellent command line.
And I found such a program — it's ExifTool (frankly, I did not expect to find such a software, which is clean from the shit of marketers).
In General, for metadata that is more complex than the date and file size, I use ExifTool.
For organize my archive — I use ExifTool.
I use ExifTool.

My task is that I have a poor understanding of the nature of XMP, which prevents me defining set of XMP tags for Author, Original file name and Time zone in parallel with EXIF and IPTC.
If EXIF and IPTC have a standard list of tags and everything is clear here, then in the case of XMP, I can't find this list.
There is nothing detailed in Russian, but it is very difficult for me to read large specifications in English.
I need help with how metadata tags are created in XMP.
I know that there are some common tags (Dublin Core?), but other different programs make whatever they want for themselves.
It will be much easier for me to read the specifications if I understand the essence of creating tags in XMP (i.e. the essence of its application).
It turns out that I can also create my own tags in XMP, but then how will other programs understand them?

That's what's really bothering me right now.

Jom

Tried to read here all 3 parts — https://www.adobe.com/devnet/xmp.html

If I understand correctly, XMP was invented in order to present all metadata in a single XML-based format.
But for backward compatibility with EXIF and IPTC and for extensibility, was added namespaces.

Examoles:
IPTC tag -> xmp:iptc:tagname
EXIF tag -> xmp:exif:tagname
XMP tag -> xmp:xmp:tagname
Dublin Core tag -> xmp:dc:tagname
MY tag -> xmp:mynamespace:mytagname


Plese, correct me if I'm wrong.

Phil Harvey

...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

Jom

#8
Can I get to terminal (or to text file) a list of XMP tags from the file with the namespace?
Example like this
[xmp:namespace]      Tag      :Value

StarGeek

There's almost certainly some translation miscommunication here.

Quote from: Andrei Korzhyts on February 03, 2020, 11:43:34 PM
My task is that I have a poor understanding of the nature of XMP, which prevents me defining set of XMP tags for Author, Original file name and Time zone in parallel with EXIF and IPTC.

See the IPTC standard I linked above.  That gives you a description of what the various tags are and the appropriate location in IPTC IIM and XMP.  To address the specific ones you list here.

Author - IPTC Creator Specs - This would map to EXIF:Artist, IPTC:By-Line, and XMP:Creator.  There are the XMP-xmp:Author and XMP-pdf:Author.  The XMP-xmp namespace is rarely used and that tag in particular is non-standard (see XMP-xmp tags).  The second one is basically the XMP version of the author tag in PDFs.

Original file name - IPTC Title Specs - According to the specs, this would possibly go in the IPTC:ObjectName and XMP:Title.  But because Adobe decided otherwise, it often isn't filled as such.  Adobe created their own tag for that.

Time zones - The EXIF spec originally didn't keep track of time zones, but now has them in a separate tag.  The appropriate IPTC tags are split between day and time and the time zone is required as part of the time tag.  XMP tags are flexible and allow for time zones to be included in the tag.

Quotethen in the case of XMP, I can't find this list.

The problem here is that the basic XMP tags are split across several XMP namespaces, such as the XMP-photoshop, the XMP-dc (Dublin Core), the IPTC Core, XMP-iptcExt and a few others.

You might try looking at the exiftool Arg Files to see how exiftool will translate between the various tag groups.  Also the MWG tags which write certain values to the appropriate places in EXIF, IPTC, and XMP.

QuoteThere is nothing detailed in Russian, but it is very difficult for me to read large specifications in English.

Unfortunately, I couldn't find any translations. The specs are hard enough in English.

QuoteI need help with how metadata tags are created in XMP.
I know that there are some common tags (Dublin Core?), but other different programs make whatever they want for themselves.
It will be much easier for me to read the specifications if I understand the essence of creating tags in XMP (i.e. the essence of its application).

There is something being lost in the translation here.  I don't understand how knowing the inner workings of XMP will help. I have a faint idea of how the EXIF and IPTC tags are created, but I couldn't explain it in detail and that doesn't stop me from using them.

QuoteIt turns out that I can also create my own tags in XMP, but then how will other programs understand them?

They won't.  Any tags you create will most likely not be read by other programs

Quote from: Andrei Korzhyts on February 04, 2020, 10:35:39 AM
Tried to read here all 3 parts — https://www.adobe.com/devnet/xmp.html

I wouldn't try to deal with the texts there.  They are more about the nature and structure of the XMP format, with details on how to program it rather than actually using them.

QuoteIf I understand correctly, XMP was invented in order to present all metadata in a single XML-based format.
But for backward compatibility with EXIF and IPTC and for extensibility, was added namespaces.

Well, to a degree.  It was used to replace the IPTC IIM tags, but not as a replacement for EXIF.  There are EXIF tags that are equivalent, but they are rarely used.  Adobe Lightroom will even delete some of them, such as the XMP-exif GPS tags, adding the data to the EXIF block.

QuoteExamoles:
IPTC tag -> xmp:iptc:tagname
EXIF tag -> xmp:exif:tagname
XMP tag -> xmp:xmp:tagname
Dublin Core tag -> xmp:dc:tagname
MY tag -> xmp:mynamespace:mytagname

This I'm not quite understanding you at all.  As mentioned, the IPTC tags will translate into multiple XMP groups.



My one other piece of advice is to not worry about the group namespace, such as XMP-photoshop, XMP-dc, XMP-iptcCore, etc.  Just keep it simple, like XMP:TAGNAME and let exiftool figure out the proper place to put it.
XMP-iptcExt
* 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).

Phil Harvey

Quote from: Andrei Korzhyts on February 04, 2020, 04:11:22 PM
Can I get to terminal (or to text file) a list of XMP tags from the file with the namespace?
Example like this
[xmp:namespace]      Tag      :Value

exiftool -G1 -a FILE
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

Jom

Thanks, StarGeek for big answer.
Also I was read here — https://photometadata.org
I drew what I understand to be a hierarchy of metadata.
Tell me, do I understand correctly?

Jom

I wrote a lot of text specifically so that translation errors in certain places do not damage the overall meaning.

Quote from: StarGeek on February 04, 2020, 05:46:51 PM
QuoteI need help with how metadata tags are created in XMP.
I know that there are some common tags (Dublin Core?), but other different programs make whatever they want for themselves.
It will be much easier for me to read the specifications if I understand the essence of creating tags in XMP (i.e. the essence of its application).

There is something being lost in the translation here.  I don't understand how knowing the inner workings of XMP will help. I have a faint idea of how the EXIF and IPTC tags are created, but I couldn't explain it in detail and that doesn't stop me from using them.

I didn't meant the internal structure of XMP, but the system by which XMP interacts with other metadata standards and how it combines them.
I was referring to the principle that all existing metadata standards are consistent using XMP.
I want to clearly understand how XMP schemas are formed.
I saw an XMP-xmp schema next to the metadata standards schemas (XMP-iptc, XMP-exif...), but I couldn't find a list of these (XMP-xmp) tags.
I want to understand the logic of relationship of all this madness of existing standards. Don't just use ExifTool.
This can all be explained in one paragraph of the text (in Russian, this word is — суть), but no one writes it anywhere, and therefore it is impossible to imagine the whole picture.
I couldn't even find an infographic that shows all the intersections of subsets of metadata.
I have to read a lot of text to see a single sentence that describes the relationship of a single small part of this mess. And so bit by bit to build a system of all this in the mind. to be able to use it all consciously, and not superficially.
I have to delve into the history of metadata to recreate all the current relationships of standards.
Adobe wrote a bunch of text about cans of beans to explain what metadata is. Who are they writing this for? This is the child's intelligence level. Do they write for children? I had to translate this nonsense, in the hope that somewhere inside the text the essence (суть) of XMP will be revealed. No, they were just talking about metadata with beans.
Their entire poem about beans can be described in a couple of lines:
Can of beans with label = File of photo with metadata
can = file
beans = binary code of image
label = metadata

This is called суть.

Quote from: StarGeek on February 04, 2020, 05:46:51 PM
QuoteExamoles:
IPTC tag -> xmp:iptc:tagname
EXIF tag -> xmp:exif:tagname
XMP tag -> xmp:xmp:tagname
Dublin Core tag -> xmp:dc:tagname
MY tag -> xmp:mynamespace:mytagname

This I'm not quite understanding you at all.  As mentioned, the IPTC tags will translate into multiple XMP groups.

I've already noticed that, but why is that? I'm assuming an answer, but need an additional answer to clarify my answer. I may be linking some details incorrectly.

Quote from: StarGeek on February 04, 2020, 05:46:51 PM
My one other piece of advice is to not worry about the group namespace, such as XMP-photoshop, XMP-dc, XMP-iptcCore, etc.  Just keep it simple, like XMP:TAGNAME and let exiftool figure out the proper place to put it.
XMP-iptcExt

Unfortunately, I can't do that. I have to understand absolutely everything about photo metadata. This is what I need to create my own workflow standard and there should be no "black boxes" for this.
I think about the future of my workflow and unforeseen situations that should not break it or immobilize it. To do this, I need to know everything myself and write it down in my standard, relying solely on standards and not on blind skills.

I mostly hope for answers from living people, as individual questions often arise about details that are not described in the standards or other sources.
Sometimes the answer is very close, but you don't even know that you can read it in the FAQ. Only a living person can help with this.
Thanks for all.

Phil Harvey

I'm staying out of this conversation because I focus on the mechanics of metadata storage formats, and don't worry so much about what it is used for.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

Jom

Quote from: Phil Harvey on February 08, 2020, 09:22:44 AM
I'm staying out of this conversation because I focus on the mechanics of metadata storage formats, and don't worry so much about what it is used for.

- Phil

When I created this theme, I knew almost nothing about metadata. I only used Adobe Bridge to fill in the name, description, and keywords.
Now I already know a lot and see that the topic name does not quite meet my needs. Out of ignorance, I incorrectly asked the question (named the topic).
I can determine which metadata to use myself, but to do this, I need to understand the intersections of subsets of metadata standards associated with a photo.
This is what I really care about.
It is very difficult and time-consuming to build a tag matching structure from different subsets of metadata standards, especially in a foreign language.
I learned a lot on this site — https://photometadata.org
And I drew the structure that I was able to build bit by bit by collecting information about the relationship between subsets of metadata standards and how they are represented.
I just need someone to comment on how well I understand everything.
I will re-attach my drawing of the intersection structure of subsets of metadata standards and add the statements that I drew it for.


Statements for which I drew the interaction structure of subsets of metadata standards.

1. First there was IPTC-IIM.
2. Adobe came up with a way to embed IPTC-IIM in TIFF, JPG, and PSD files and called this method IRB "IPTC Headers". Adobe also came up with some of their tags for their programs (into IRB).
3. Exif is still a separate standard and is recorded by the camera in a file not as XMP, but as binary data.
3. XMP is not a metadata standard, but a standard for how metadata is represented based on an XML.
4. Dublin Core is a separate standard that partially overlaps with IPTC Core.
5. PLUS is a separate standard that partially overlaps with IPTC Extension.
6. In order to use XMP to represent existing standards and avoid conflicts and losses of tags that are similar in meaning (but different in spelling), Adobe came up with schemes (namespaces) for each individual standard.
7. IPTC Core and IPTC Extension replaced IPTC-IIM and are stored as XMP in RAW-file.
8. XMP also allows you to create your own tags, but other programs will not be able to write them (you need to write your own tools), but they will be able to read them.

There are also questions.

1. I noticed that XMP is used to write the xmp namespace (-XMP-xmp:...), but I couldn't find a list of these tags from the xmp namespace. I think I understand something wrong about the xmp namespace. Please help me deal with this.


Please tell me where I am wrong or do I understand everything correctly at this stage of studying metadata?