Skip to main content
Participant
December 5, 2008
Question

List of Namespace schemas

  • December 5, 2008
  • 3 replies
  • 685 views
I'm working on one of these scripts that is reading/writing metadata to image files. Reading from a tab-delimited text file and spitting that data into the image meta data. I have worked a script up that is working, but what I need to find out is how to access all the different fields of data available. I need to go through and check to see if there's data in certain fields that shouldn't be there. I can see the fields in Bridge, but don't know how to access them in the script.

For example, I am using this schema for "Author":

md.namespace = "http://ns.adobe.com/photoshop/1.0/";
md.Author = author;

That put data into what displays as "Creator" under the IPTC Core section in Bridge for the image.

Is there a master list of all the schemas and what they access? I have been reading this:

http://www.adobe.com/devnet/xmp/pdfs/XMPSpecificationPart2.pdf

Which helps, but seems to be missing some of the fields I need to access - like keywords, copyright and such.

Thanks. I tried searching the forums for an answer to this already, but didn't find anything, so forgive me if it's already been discussed.

scott
This topic has been closed for replies.

3 replies

Participant
December 8, 2008
I should also add, that when I do this:

md.namespace = "http://iptc.org/std/Iptc4xmpCore/1.0/xmlns/";
md.Description = "someting";

It doesn't break. I am looking at the file metadata tab in Bridge under IPTC Core and there is a "Description" in there. While the above code seems to actually change some "description" it does not affect the one in IPTC Core. So that is the info I am trying to modify. In IPTC Core.

thanks

UPDATE...

So apparently the Dublin Core namespace controls the "description" field I am trying to edit. I can do this:

md.namespace = "http://purl.org/dc/elements/1.1/";
alert("DC: " + md.description); // this successfully reads the desc
md.description = "something"; // this kills the script
Participant
December 8, 2008
Thanks x. I don't know if I'm any closer, though. I thought this was going to be easy, but I can't seem to figure out how to access certain metadata. Basically, I am trying something, running it and trying something else. Here's an example:

From what I've read here:
http://www.iptc.org/std/Iptc4xmpCore/1.0/documentation/Iptc4xmpCore_1.0-doc-CpanelsUserGuide_13.pdf

I can access the "Description" field either by doing this:

md.namespace = "http://iptc.org/std/Iptc4xmpCore/1.0/xmlns/";
md.Description = "some description";

or by doing this:

md.namespace = "http://ns.adobe.com/photoshop/1.0/";
md.Description = "some description"

I've also seen examples using the Dublin Core namespace:

md.namespace = "http://purl.org/dc/elements/1.1/";
md.description = "some description";

None of these work. Believe, I have tried them all. Now, I don't know how to check why they did not work. I'm not very skilled with the debugger (ExtendScript Toolkit 2) and don't know what to look for. Basically, I am reading countless .pdf documents describing the schemas and I guess I am not understanding them. This is my first Bridge Script.

What I don't get is... this works:

md.namespace = "http://iptc.org/std/Iptc4xmpCore/1.0/xmlns/";
md.CiAdrCity = "some city"; // works
md.Description = "someting"; // does not work

Yet in their doc, they state that they both should work.

I was hoping to bang this script out for a friend in a couple days, but I've been hung up on this stuff.

thanks

scott
Known Participant
December 5, 2008
> Thanks. I tried searching the forums for an answer to this already, but didn't find anything, so forgive me if it's already been discussed.
>

I constructed this for my scripting work. It auto-resolves aliases, amongst
other things.

http://ps-scripts.cvs.sourceforge.net/viewvc/*checkout*/ps-scripts/xtools/xlib/XMPNameSpaces.jsx

Another good source is exiftool:
http://www.sno.phy.queensu.ca/~phil/exiftool/

And you already have the XMP Spec from Adobe.

-X