Esko XMP structured tags.

Started by richards, February 14, 2017, 11:27:46 AM

Previous topic - Next topic

richards

I am new to ExifTool and I have had some success editing some of the generic tags but anything within a structure is a challenge.

To be precise I am attempting to remove the dot shape value from the Esko XMP ink structure. See image attached.

Any advice welcome. Thank you in advance.

Phil Harvey

This isn't for the faint of heart.  You need to first create a user-defined tag to be able to write the egInk tags.  After you do this, you should be able to delete the dot shape with a command something like this:

exiftool -inksdotshape= FILE

See the NewXMPxxxStruct definition in the sample config file for an example of how to create a user-defined XMP structure.  Note that your structure is inside a Seq list, so you should add "List => 'Seq'," to the "inks" tag definition.

- 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 ($).

richards

Thank you very much Phil. I will give that a go  :)

richards

Hi Phil

Are saying my command should look something like this?

exiftool -config file.txt -inksdotshape= artwork.pdf

Phil Harvey

Yes.  If you have any problems, attach the config file you are using and the sample XMP and I'll take a look.

exiftool -xmp -b artwork.pdf > sample.xmp

- 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 ($).

richards

Hi Phil

I am failing miserably  :-\. Despite my best efforts I am still encountering the error. Warning: Tag 'inksdotshape' is not defined

Here is my config file. Any help would be greatly appreciated.

Thanks in advance.

%Image::ExifTool::UserDefined::egInk = (
    GROUPS => { 0 => 'XMP', 1 => 'XMP-egInk', 2 => 'Image' },
    NAMESPACE => { 'egInk' => 'http://ns.esko-graphics.com/inkinfo/1.0/' },
    WRITABLE => 'string', # (default to string-type tags)

    Inks => {
              List=> 'Seq',
              struct => {
                            NAMESPACE => { 'egInk' => 'http://ns.esko-graphics.com/inkinfo/1.0/' },
                            name => { },
                            type => { },
                            book => { },
                            egname => { },
                            frequency => { },
                            angle => { },
                            dotshape => { },
                            r => { },
                            g => { },
                            b => { },
                            attribute => { },
                            printingmethod => { },
                           
              },

        },
);

print "LOADED!\n";


And here is the XML


<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="XMP Core 4.4.0">
   <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
      <rdf:Description rdf:about=""
            xmlns:egGr="http://ns.esko-graphics.com/grinfo/1.0/"
            xmlns:egInk="http://ns.esko-graphics.com/inkinfo/1.0/">
         <egGr:nrpages>1</egGr:nrpages>
         <egGr:startlogpage>1</egGr:startlogpage>
         <egGr:units>mm</egGr:units>
         <egGr:vsize>298.740576</egGr:vsize>
         <egGr:hsize>339.0000441</egGr:hsize>
         <egGr:margtop>.001034181786</egGr:margtop>
         <egGr:margbot>0.</egGr:margbot>
         <egGr:margleft>21.50004414</egGr:margleft>
         <egGr:margright>21.50002297</egGr:margright>
         <egGr:vshrink>1.</egGr:vshrink>
         <egGr:hshrink>1.</egGr:hshrink>
         <egGr:readerspread>False</egGr:readerspread>
         <egGr:colorprofloc>Untagged</egGr:colorprofloc>
         <egGr:colorprofname/>
         <egGr:colorprofdesc/>
         <egGr:trapped>False</egGr:trapped>
         <egGr:screenreg>False</egGr:screenreg>
         <egGr:inks>
            <rdf:Seq>
               <rdf:li rdf:parseType="Resource">
                  <egInk:name>White F</egInk:name>
                  <egInk:type>designer</egInk:type>
                  <egInk:book>none</egInk:book>
                  <egInk:egname>White F</egInk:egname>
                  <egInk:frequency>150.</egInk:frequency>
                  <egInk:angle>37.5</egInk:angle>
                  <egInk:dotshape>C</egInk:dotshape>
                  <egInk:r>.6100000143</egInk:r>
                  <egInk:g>.8349999785</egInk:g>
                  <egInk:b>.9700000286</egInk:b>
                  <egInk:attribute>normal</egInk:attribute>
                  <egInk:printingmethod>flexo</egInk:printingmethod>
               </rdf:li>
               <rdf:li rdf:parseType="Resource">
                  <egInk:name>206</egInk:name>
                  <egInk:type>pantone</egInk:type>
                  <egInk:book>pms1000c</egInk:book>
                  <egInk:egname>206</egInk:egname>
                  <egInk:frequency>150.</egInk:frequency>
                  <egInk:angle>67.5</egInk:angle>
                  <egInk:dotshape>C</egInk:dotshape>
                  <egInk:r>.8706981737</egInk:r>
                  <egInk:g>0.</egInk:g>
                  <egInk:b>.2213176653</egInk:b>
                  <egInk:attribute>normal</egInk:attribute>
                  <egInk:printingmethod>flexo</egInk:printingmethod>
               </rdf:li>
               <rdf:li rdf:parseType="Resource">
                  <egInk:name>black</egInk:name>
                  <egInk:type>process</egInk:type>
                  <egInk:book>process</egInk:book>
                  <egInk:egname>black</egInk:egname>
                  <egInk:frequency>150.</egInk:frequency>
                  <egInk:angle>7.5</egInk:angle>
                  <egInk:dotshape>C</egInk:dotshape>
                  <egInk:r>.1870992878</egInk:r>
                  <egInk:g>.1778713106</egInk:g>
                  <egInk:b>.1984996809</egInk:b>
                  <egInk:attribute>normal</egInk:attribute>
                  <egInk:printingmethod>flexo</egInk:printingmethod>
               </rdf:li>
            </rdf:Seq>
         </egGr:inks>
      </rdf:Description>
      <rdf:Description rdf:about=""
            xmlns:egPDFNat="http://ns.esko-graphics.com/pdfnatversion/1.0/">
         <egPDFNat:flexripversion>700</egPDFNat:flexripversion>
         <egPDFNat:version>202</egPDFNat:version>
      </rdf:Description>
      <rdf:Description rdf:about=""
            xmlns:xmp="http://ns.adobe.com/xap/1.0/">
         <xmp:CreateDate>2016-12-29T14:43:30Z</xmp:CreateDate>
         <xmp:CreatorTool>Esko Automation Engine 14.1.1 NT Dec 15 2015, build 598</xmp:CreatorTool>
         <xmp:MetadataDate>2016-12-29T14:43:30Z</xmp:MetadataDate>
         <xmp:ModifyDate>2016-12-29T14:43:30Z</xmp:ModifyDate>
      </rdf:Description>
      <rdf:Description rdf:about=""
            xmlns:stVer="http://ns.adobe.com/xap/1.0/sType/Version#">
         <stVer:modifyDate>2016-12-29T14:43:20Z</stVer:modifyDate>
         <stVer:modifier>SYSTEM</stVer:modifier>
         <stVer:version>0</stVer:version>
      </rdf:Description>
      <rdf:Description rdf:about=""
            xmlns:xmpBJ="http://ns.adobe.com/xap/1.0/bj/"
            xmlns:stLoc="http://ns.adobe.com/xap/1.0/sType/DataLocation#">
         <xmpBJ:JobRef>
            <rdf:Bag>
               <rdf:li rdf:parseType="Resource">
                  <stLoc:name>6216210_CUS053897</stLoc:name>
                  <stLoc:url>file://10.110.128.200/Studio/Esko/Imperial%20Leather/6216210_CUS053897</stLoc:url>
               </rdf:li>
            </rdf:Bag>
         </xmpBJ:JobRef>
      </rdf:Description>
      <rdf:Description rdf:about=""
            xmlns:egJob="http://ns.esko-graphics.com/jobinfo/1.0/">
         <egJob:orderid>6216210</egJob:orderid>
         <egJob:suborderid>CUS053897</egJob:suborderid>
         <egJob:description>IL SH SGNTRFNFR NSTLG 500ML B</egJob:description>
      </rdf:Description>
      <rdf:Description rdf:about=""
            xmlns:egLayL="http://ns.esko-graphics.com/laylist/1.0/"
            xmlns:egLay="http://ns.esko-graphics.com/layer/1.0/">
         <egLayL:layers>
            <rdf:Seq>
               <rdf:li rdf:parseType="Resource">
                  <egLay:name>Layer 4</egLay:name>
                  <egLay:printable>True</egLay:printable>
                  <egLay:locked>False</egLay:locked>
               </rdf:li>
               <rdf:li rdf:parseType="Resource">
                  <egLay:name>Expanded DM Underprint</egLay:name>
                  <egLay:printable>True</egLay:printable>
                  <egLay:locked>False</egLay:locked>
               </rdf:li>
               <rdf:li rdf:parseType="Resource">
                  <egLay:name>Expanded Marks</egLay:name>
                  <egLay:printable>True</egLay:printable>
                  <egLay:locked>False</egLay:locked>
               </rdf:li>
               <rdf:li rdf:parseType="Resource">
                  <egLay:name>SNR Grid</egLay:name>
                  <egLay:printable>True</egLay:printable>
                  <egLay:locked>False</egLay:locked>
               </rdf:li>
            </rdf:Seq>
         </egLayL:layers>
      </rdf:Description>
      <rdf:Description rdf:about=""
            xmlns:egCadL="http://ns.esko-graphics.com/cadlist/1.0/">
         <egCadL:files>
            <rdf:Bag/>
         </egCadL:files>
      </rdf:Description>
      <rdf:Description rdf:about=""
            xmlns:egExtFL2="http://ns.esko-graphics.com/extfileslist/2.0/">
         <egExtFL2:files>
            <rdf:Bag/>
         </egExtFL2:files>
      </rdf:Description>
      <rdf:Description rdf:about=""
            xmlns:egExtFL="http://ns.esko-graphics.com/extfileslist/1.0/">
         <egExtFL:files>
            <rdf:Bag/>
         </egExtFL:files>
      </rdf:Description>
      <rdf:Description rdf:about=""
            xmlns:egBarcL="http://ns.esko-graphics.com/barcodelist/1.0/">
         <egBarcL:barcodes>
            <rdf:Bag/>
         </egBarcL:barcodes>
      </rdf:Description>
      <rdf:Description rdf:about=""
            xmlns:egSrLayout="http://ns.esko-graphics.com/srlayout/1.0/">
         <egSrLayout:repeats>
            <rdf:Bag/>
         </egSrLayout:repeats>
      </rdf:Description>
      <rdf:Description rdf:about=""
            xmlns:egImp="http://ns.esko-graphics.com/impose/1.0/">
         <egImp:surfaces>
            <rdf:Seq/>
         </egImp:surfaces>
      </rdf:Description>
      <rdf:Description rdf:about=""
            xmlns:dc="http://purl.org/dc/elements/1.1/">
         <dc:title>
            <rdf:Alt>
               <rdf:li xml:lang="x-default">6216210_CUS053897_12_GALL900_NX.pdf</rdf:li>
            </rdf:Alt>
         </dc:title>
         <dc:creator>
            <rdf:Seq>
               <rdf:li>BGSYSTEM</rdf:li>
            </rdf:Seq>
         </dc:creator>
      </rdf:Description>
      <rdf:Description rdf:about=""
            xmlns:egFontL="http://ns.esko-graphics.com/fontlist/1.0/"
            xmlns:egFont="http://ns.esko-graphics.com/fontinfo/1.0/">
         <egFontL:fonts>
            <rdf:Bag>
               <rdf:li rdf:parseType="Resource">
                  <egFont:name>ArialMT</egFont:name>
                  <egFont:type>TrueType</egFont:type>
                  <egFont:location>embedded</egFont:location>
                  <egFont:fontfile>N;BG256;E;3;0;0;;JGYQDB+ArialMT</egFont:fontfile>
                  <egFont:protection>False</egFont:protection>
               </rdf:li>
               <rdf:li rdf:parseType="Resource">
                  <egFont:name>ArialMT</egFont:name>
                  <egFont:type>TrueType</egFont:type>
                  <egFont:location>embedded</egFont:location>
                  <egFont:fontfile>N;BG256;E;3;0;0;;YEHETJ+ArialMT</egFont:fontfile>
                  <egFont:protection>False</egFont:protection>
               </rdf:li>
            </rdf:Bag>
         </egFontL:fonts>
      </rdf:Description>
      <rdf:Description rdf:about=""
            xmlns:pdf="http://ns.adobe.com/pdf/1.3/">
         <pdf:Producer>Esko Automation Engine PDFNormalize 14.1.1</pdf:Producer>
         <pdf:Trapped>False</pdf:Trapped>
      </rdf:Description>
      <rdf:Description rdf:about=""
            xmlns:egPagL="http://ns.esko-graphics.com/pagerangelist/1.0/"
            xmlns:egPag="http://ns.esko-graphics.com/pagerange/1.1/">
         <egPagL:pagelist>
            <rdf:Seq>
               <rdf:li rdf:parseType="Resource">
                  <egPag:start>0</egPag:start>
                  <egPag:end>0</egPag:end>
                  <egPag:inks>
                     <rdf:Seq>
                        <rdf:li>1</rdf:li>
                        <rdf:li>2</rdf:li>
                        <rdf:li>3</rdf:li>
                     </rdf:Seq>
                  </egPag:inks>
               </rdf:li>
            </rdf:Seq>
         </egPagL:pagelist>
      </rdf:Description>
      <rdf:Description rdf:about=""
            xmlns:egInkCovL="http://ns.esko-graphics.com/inkcovlist/1.0/">
         <egInkCovL:coverage>
            <rdf:Seq>
               <rdf:li rdf:parseType="Resource"/>
               <rdf:li rdf:parseType="Resource"/>
               <rdf:li rdf:parseType="Resource"/>
            </rdf:Seq>
         </egInkCovL:coverage>
      </rdf:Description>
   </rdf:RDF>
</x:xmpmeta>
                                                                         
<?xpacket end="w"?>

Phil Harvey

#6
Two problems:

1. You needed to add the egInk namespace to the Main XMP table.

2. "Struct" needed to be capitalized.

Here is the fixed version:

%Image::ExifTool::UserDefined::egGr = (
    GROUPS => { 0 => 'XMP', 1 => 'XMP-egGr', 2 => 'Image' },
    NAMESPACE => { 'egGr' => 'http://ns.esko-graphics.com/grinfo/1.0/' },
    WRITABLE => 'string', # (default to string-type tags)

    Inks => {
        List=> 'Seq',
        Struct => {
            NAMESPACE => { 'egInk' => 'http://ns.esko-graphics.com/inkinfo/1.0/' },
            name => { },
            type => { },
            book => { },
            egname => { },
            frequency => { },
            angle => { },
            dotshape => { },
            r => { },
            g => { },
            b => { },
            attribute => { },
            printingmethod => { },
        },
    },
);

%Image::ExifTool::UserDefined = (
    'Image::ExifTool::XMP::Main' => {
        egGr => {
            SubDirectory => {
                TagTable => 'Image::ExifTool::UserDefined::egGr',
            },
        },
    },
);

1; # end


- Phil

Edit:  I just tried this out and it doesn't delete the ink... Hmmm.  I'll try to figure out what is going on.

Ah.  The namespace is egGr for the inks tag, and egInks for the structure elements.  I've fixed this too and updated the config file above.
...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 ($).

richards

#7
Thanks again.

Progress indeed, however it appears have broken XMP.

Please see the resulting XML below. Some strange transformations have occurred .


<?xpacket begin='' id='W5M0MpCehiHzreSzNTczkc9d'?>
<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='Image::ExifTool 10.41'>
<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#'>

<rdf:Description rdf:about=''
  xmlns:dc='http://purl.org/dc/elements/1.1/'>
  <dc:creator>
   <rdf:Seq>
    <rdf:li>BGSYSTEM</rdf:li>
   </rdf:Seq>
  </dc:creator>
  <dc:title>
   <rdf:Alt>
    <rdf:li xml:lang='x-default'>6216210_CUS053897_12_GALL900_NX.pdf</rdf:li>
   </rdf:Alt>
  </dc:title>
</rdf:Description>

<rdf:Description rdf:about=''
  xmlns:egFont='http://ns.esko-graphics.com/fontinfo/1.0/'
  xmlns:egFontL='http://ns.esko-graphics.com/fontlist/1.0/'>
  <egFontL:fonts>
   <rdf:Bag>
    <rdf:li rdf:parseType='Resource'>
     <egFont:fontfile>N;BG256;E;3;0;0;;JGYQDB+ArialMT</egFont:fontfile>
     <egFont:location>embedded</egFont:location>
     <egFont:name>ArialMT</egFont:name>
     <egFont:protection>False</egFont:protection>
     <egFont:type>TrueType</egFont:type>
    </rdf:li>
    <rdf:li rdf:parseType='Resource'>
     <egFont:fontfile>N;BG256;E;3;0;0;;YEHETJ+ArialMT</egFont:fontfile>
     <egFont:location>embedded</egFont:location>
     <egFont:name>ArialMT</egFont:name>
     <egFont:protection>False</egFont:protection>
     <egFont:type>TrueType</egFont:type>
    </rdf:li>
   </rdf:Bag>
  </egFontL:fonts>
</rdf:Description>

<rdf:Description rdf:about=''
  xmlns:egGr='http://ns.esko-graphics.com/grinfo/1.0/'
  xmlns:egInk='http://ns.esko-graphics.com/inkinfo/1.0/'>
  <egGr:Inks>
   <rdf:Seq>
    <rdf:li rdf:parseType='Resource'>
     <egInk:angle>37.5</egInk:angle>
     <egInk:attribute>normal</egInk:attribute>
     <egInk:b>.9700000286</egInk:b>
     <egInk:book>none</egInk:book>
     <egInk:dotshape> </egInk:dotshape>
     <egInk:egname>White F</egInk:egname>
     <egInk:frequency>150.</egInk:frequency>
     <egInk:g>.8349999785</egInk:g>
     <egInk:name>White F</egInk:name>
     <egInk:printingmethod>flexo</egInk:printingmethod>
     <egInk:r>.6100000143</egInk:r>
     <egInk:type>designer</egInk:type>
    </rdf:li>
    <rdf:li rdf:parseType='Resource'>
     <egInk:angle>67.5</egInk:angle>
     <egInk:attribute>normal</egInk:attribute>
     <egInk:b>.2213176653</egInk:b>
     <egInk:book>pms1000c</egInk:book>
     <egInk:egname>206</egInk:egname>
     <egInk:frequency>150.</egInk:frequency>
     <egInk:g>0.</egInk:g>
     <egInk:name>206</egInk:name>
     <egInk:printingmethod>flexo</egInk:printingmethod>
     <egInk:r>.8706981737</egInk:r>
     <egInk:type>pantone</egInk:type>
    </rdf:li>
    <rdf:li rdf:parseType='Resource'>
     <egInk:angle>7.5</egInk:angle>
     <egInk:attribute>normal</egInk:attribute>
     <egInk:b>.1984996809</egInk:b>
     <egInk:book>process</egInk:book>
     <egInk:egname>black</egInk:egname>
     <egInk:frequency>150.</egInk:frequency>
     <egInk:g>.1778713106</egInk:g>
     <egInk:name>black</egInk:name>
     <egInk:printingmethod>flexo</egInk:printingmethod>
     <egInk:r>.1870992878</egInk:r>
     <egInk:type>process</egInk:type>
    </rdf:li>
   </rdf:Seq>
  </egGr:Inks>
  <egGr:colorprofdesc/>
  <egGr:colorprofloc>Untagged</egGr:colorprofloc>
  <egGr:colorprofname/>
  <egGr:hshrink>1.</egGr:hshrink>
  <egGr:hsize>339.0000441</egGr:hsize>
  <egGr:margbot>0.</egGr:margbot>
  <egGr:margleft>21.50004414</egGr:margleft>
  <egGr:margright>21.50002297</egGr:margright>
  <egGr:margtop>.001034181786</egGr:margtop>
  <egGr:nrpages>1</egGr:nrpages>
  <egGr:readerspread>False</egGr:readerspread>
  <egGr:screenreg>False</egGr:screenreg>
  <egGr:startlogpage>1</egGr:startlogpage>
  <egGr:trapped>False</egGr:trapped>
  <egGr:units>mm</egGr:units>
  <egGr:vshrink>1.</egGr:vshrink>
  <egGr:vsize>298.740576</egGr:vsize>
</rdf:Description>

<rdf:Description rdf:about=''
  xmlns:egInkCovL='http://ns.esko-graphics.com/inkcovlist/1.0/'>
  <egInkCovL:coverage>
   <rdf:Seq>
    <rdf:li rdf:parseType='Resource'/>
    <rdf:li rdf:parseType='Resource'/>
    <rdf:li rdf:parseType='Resource'/>
   </rdf:Seq>
  </egInkCovL:coverage>
</rdf:Description>

<rdf:Description rdf:about=''
  xmlns:egJob='http://ns.esko-graphics.com/jobinfo/1.0/'>
  <egJob:description>IL SH SGNTRFNFR NSTLG 500ML B</egJob:description>
  <egJob:orderid>6216210</egJob:orderid>
  <egJob:suborderid>CUS053897</egJob:suborderid>
</rdf:Description>

<rdf:Description rdf:about=''
  xmlns:egLay='http://ns.esko-graphics.com/layer/1.0/'
  xmlns:egLayL='http://ns.esko-graphics.com/laylist/1.0/'>
  <egLayL:layers>
   <rdf:Seq>
    <rdf:li rdf:parseType='Resource'>
     <egLay:locked>False</egLay:locked>
     <egLay:name>Layer 4</egLay:name>
     <egLay:printable>True</egLay:printable>
    </rdf:li>
    <rdf:li rdf:parseType='Resource'>
     <egLay:locked>False</egLay:locked>
     <egLay:name>Expanded DM Underprint</egLay:name>
     <egLay:printable>True</egLay:printable>
    </rdf:li>
    <rdf:li rdf:parseType='Resource'>
     <egLay:locked>False</egLay:locked>
     <egLay:name>Expanded Marks</egLay:name>
     <egLay:printable>True</egLay:printable>
    </rdf:li>
    <rdf:li rdf:parseType='Resource'>
     <egLay:locked>False</egLay:locked>
     <egLay:name>SNR Grid</egLay:name>
     <egLay:printable>True</egLay:printable>
    </rdf:li>
   </rdf:Seq>
  </egLayL:layers>
</rdf:Description>

<rdf:Description rdf:about=''
  xmlns:egPDFNat='http://ns.esko-graphics.com/pdfnatversion/1.0/'>
  <egPDFNat:flexripversion>700</egPDFNat:flexripversion>
  <egPDFNat:version>202</egPDFNat:version>
</rdf:Description>

<rdf:Description rdf:about=''
  xmlns:egPag='http://ns.esko-graphics.com/pagerange/1.1/'
  xmlns:egPagL='http://ns.esko-graphics.com/pagerangelist/1.0/'>
  <egPagL:pagelist>
   <rdf:Seq>
    <rdf:li rdf:parseType='Resource'>
     <egPag:end>0</egPag:end>
     <egPag:inks>
      <rdf:Seq>
       <rdf:li>1</rdf:li>
       <rdf:li>2</rdf:li>
       <rdf:li>3</rdf:li>
      </rdf:Seq>
     </egPag:inks>
     <egPag:start>0</egPag:start>
    </rdf:li>
   </rdf:Seq>
  </egPagL:pagelist>
</rdf:Description>

<rdf:Description rdf:about=''
  xmlns:pdf='http://ns.adobe.com/pdf/1.3/'>
  <pdf:Producer>Esko Automation Engine PDFNormalize 14.1.1</pdf:Producer>
  <pdf:Trapped>False</pdf:Trapped>
</rdf:Description>

<rdf:Description rdf:about=''
  xmlns:stVer='http://ns.adobe.com/xap/1.0/sType/Version#'>
  <stVer:modifier>SYSTEM</stVer:modifier>
  <stVer:modifyDate>2016-12-29T14:43:20Z</stVer:modifyDate>
  <stVer:version>0</stVer:version>
</rdf:Description>

<rdf:Description rdf:about=''
  xmlns:xmp='http://ns.adobe.com/xap/1.0/'>
  <xmp:CreateDate>2016-12-29T14:43:30Z</xmp:CreateDate>
  <xmp:CreatorTool>Esko Automation Engine 14.1.1 NT Dec 15 2015, build 598</xmp:CreatorTool>
  <xmp:MetadataDate>2016-12-29T14:43:30Z</xmp:MetadataDate>
  <xmp:ModifyDate>2016-12-29T14:43:30Z</xmp:ModifyDate>
</rdf:Description>

<rdf:Description rdf:about=''
  xmlns:stLoc='http://ns.adobe.com/xap/1.0/sType/DataLocation#'
  xmlns:xmpBJ='http://ns.adobe.com/xap/1.0/bj/'>
  <xmpBJ:JobRef>
   <rdf:Bag>
    <rdf:li rdf:parseType='Resource'>
     <stLoc:name>6216210_CUS053897</stLoc:name>
     <stLoc:url>file://10.110.128.200/Studio/Esko/Imperial%20Leather/6216210_CUS053897</stLoc:url>
    </rdf:li>
   </rdf:Bag>
  </xmpBJ:JobRef>
</rdf:Description>
</rdf:RDF>
</x:xmpmeta>
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
<?xpacket end='w'?>




Phil Harvey

The XMP looks perfectly fine to me.  Maybe ESKO doesn't like the missing dotshape.

- 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 ($).

richards

Hi Phil

I tried both command options with your config file.

-inksdotshape= - Removes tag entirely
-inksdotshape=" " - Replaces tag value with space.

Forgot to mention there was a minor error after running the commands: Warning: [minor] Ignored empty rdf:Bag list for egCadL:files

Below is en example where I edited the XMP data in Acrobat Pro. The XMP remains valid after deleting the dotshape tag.


<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.6-c015 84.159810, 2016/09/10-02:41:30        ">
   <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
      <rdf:Description rdf:about=""
            xmlns:egGr="http://ns.esko-graphics.com/grinfo/1.0/"
            xmlns:egInk="http://ns.esko-graphics.com/inkinfo/1.0/"
            xmlns:egPDFNat="http://ns.esko-graphics.com/pdfnatversion/1.0/"
            xmlns:xmp="http://ns.adobe.com/xap/1.0/"
            xmlns:stVer="http://ns.adobe.com/xap/1.0/sType/Version#"
            xmlns:egJob="http://ns.esko-graphics.com/jobinfo/1.0/"
            xmlns:pdf="http://ns.adobe.com/pdf/1.3/"
            xmlns:dc="http://purl.org/dc/elements/1.1/"
            xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/"
            xmlns:xmpBJ="http://ns.adobe.com/xap/1.0/bj/"
            xmlns:stLoc="http://ns.adobe.com/xap/1.0/sType/DataLocation#"
            xmlns:egLayL="http://ns.esko-graphics.com/laylist/1.0/"
            xmlns:egLay="http://ns.esko-graphics.com/layer/1.0/"
            xmlns:egCadL="http://ns.esko-graphics.com/cadlist/1.0/"
            xmlns:egExtFL2="http://ns.esko-graphics.com/extfileslist/2.0/"
            xmlns:egExtFL="http://ns.esko-graphics.com/extfileslist/1.0/"
            xmlns:egBarcL="http://ns.esko-graphics.com/barcodelist/1.0/"
            xmlns:egSrLayout="http://ns.esko-graphics.com/srlayout/1.0/"
            xmlns:egImp="http://ns.esko-graphics.com/impose/1.0/"
            xmlns:egFontL="http://ns.esko-graphics.com/fontlist/1.0/"
            xmlns:egFont="http://ns.esko-graphics.com/fontinfo/1.0/"
            xmlns:egPagL="http://ns.esko-graphics.com/pagerangelist/1.0/"
            xmlns:egPag="http://ns.esko-graphics.com/pagerange/1.1/"
            xmlns:egInkCovL="http://ns.esko-graphics.com/inkcovlist/1.0/">
         <egGr:nrpages>1</egGr:nrpages>
         <egGr:startlogpage>1</egGr:startlogpage>
         <egGr:units>mm</egGr:units>
         <egGr:vsize>298.740576</egGr:vsize>
         <egGr:hsize>339.0000441</egGr:hsize>
         <egGr:margtop>.001034181786</egGr:margtop>
         <egGr:margbot>0.</egGr:margbot>
         <egGr:margleft>21.50004414</egGr:margleft>
         <egGr:margright>21.50002297</egGr:margright>
         <egGr:vshrink>1.</egGr:vshrink>
         <egGr:hshrink>1.</egGr:hshrink>
         <egGr:readerspread>False</egGr:readerspread>
         <egGr:colorprofloc>Untagged</egGr:colorprofloc>
         <egGr:colorprofname/>
         <egGr:colorprofdesc/>
         <egGr:trapped>False</egGr:trapped>
         <egGr:screenreg>False</egGr:screenreg>
         <egGr:inks>
            <rdf:Seq>
               <rdf:li rdf:parseType="Resource">
                  <egInk:name>White F</egInk:name>
                  <egInk:type>designer</egInk:type>
                  <egInk:book>none</egInk:book>
                  <egInk:egname>White F</egInk:egname>
                  <egInk:frequency>150.</egInk:frequency>
                  <egInk:angle>37.5</egInk:angle>
                  <egInk:r>.6100000143</egInk:r>
                  <egInk:g>.8349999785</egInk:g>
                  <egInk:b>.9700000286</egInk:b>
                  <egInk:attribute>normal</egInk:attribute>
                  <egInk:printingmethod>flexo</egInk:printingmethod>
               </rdf:li>
               <rdf:li rdf:parseType="Resource">
                  <egInk:name>206</egInk:name>
                  <egInk:type>pantone</egInk:type>
                  <egInk:book>pms1000c</egInk:book>
                  <egInk:egname>206</egInk:egname>
                  <egInk:frequency>150.</egInk:frequency>
                  <egInk:angle>67.5</egInk:angle>
                  <egInk:r>.8706981737</egInk:r>
                  <egInk:g>0.</egInk:g>
                  <egInk:b>.2213176653</egInk:b>
                  <egInk:attribute>normal</egInk:attribute>
                  <egInk:printingmethod>flexo</egInk:printingmethod>
               </rdf:li>
               <rdf:li rdf:parseType="Resource">
                  <egInk:name>black</egInk:name>
                  <egInk:type>process</egInk:type>
                  <egInk:book>process</egInk:book>
                  <egInk:egname>black</egInk:egname>
                  <egInk:frequency>150.</egInk:frequency>
                  <egInk:angle>7.5</egInk:angle>
                  <egInk:r>.1870992878</egInk:r>
                  <egInk:g>.1778713106</egInk:g>
                  <egInk:b>.1984996809</egInk:b>
                  <egInk:attribute>normal</egInk:attribute>
                  <egInk:printingmethod>flexo</egInk:printingmethod>
               </rdf:li>
            </rdf:Seq>
         </egGr:inks>
         <egPDFNat:flexripversion>700</egPDFNat:flexripversion>
         <egPDFNat:version>202</egPDFNat:version>
         <xmp:CreatorTool>Esko Automation Engine 14.1.1 NT Dec 15 2015, build 598</xmp:CreatorTool>
         <xmp:MetadataDate>2017-02-17T15:38:30Z</xmp:MetadataDate>
         <xmp:ModifyDate>2017-02-17T15:38:30Z</xmp:ModifyDate>
         <xmp:CreateDate>2017-02-17T15:38:30Z</xmp:CreateDate>
         <stVer:modifyDate>2016-12-29T14:43:20Z</stVer:modifyDate>
         <stVer:modifier>SYSTEM</stVer:modifier>
         <stVer:version>0</stVer:version>
         <egJob:orderid>6216210</egJob:orderid>
         <egJob:suborderid>CUS053897</egJob:suborderid>
         <egJob:description>IL SH SGNTRFNFR NSTLG 500ML B</egJob:description>
         <pdf:Producer>Esko Automation Engine PDFNormalize 14.1.1</pdf:Producer>
         <pdf:Trapped>Unknown</pdf:Trapped>
         <pdf:Keywords/>
         <dc:format>application/pdf</dc:format>
         <dc:title>
            <rdf:Alt>
               <rdf:li xml:lang="x-default">6216210_CUS053897_12_GALL900_NX.pdf</rdf:li>
            </rdf:Alt>
         </dc:title>
         <dc:creator>
            <rdf:Seq>
               <rdf:li>BGSYSTEM</rdf:li>
            </rdf:Seq>
         </dc:creator>
         <xmpMM:DocumentID>uuid:147e8401-a20d-b44c-bf47-89c19ea5052e</xmpMM:DocumentID>
         <xmpMM:InstanceID>uuid:3b1112a7-438f-f54c-8488-8107f5d62e0b</xmpMM:InstanceID>
         <xmpBJ:JobRef>
            <rdf:Bag>
               <rdf:li rdf:parseType="Resource">
                  <stLoc:name>6216210_CUS053897</stLoc:name>
                  <stLoc:url>file://10.110.128.200/Studio/Esko/Imperial%20Leather/6216210_CUS053897</stLoc:url>
               </rdf:li>
            </rdf:Bag>
         </xmpBJ:JobRef>
         <egLayL:layers>
            <rdf:Seq>
               <rdf:li rdf:parseType="Resource">
                  <egLay:name>Layer 4</egLay:name>
                  <egLay:printable>True</egLay:printable>
                  <egLay:locked>False</egLay:locked>
               </rdf:li>
               <rdf:li rdf:parseType="Resource">
                  <egLay:name>Expanded DM Underprint</egLay:name>
                  <egLay:printable>True</egLay:printable>
                  <egLay:locked>False</egLay:locked>
               </rdf:li>
               <rdf:li rdf:parseType="Resource">
                  <egLay:name>Expanded Marks</egLay:name>
                  <egLay:printable>True</egLay:printable>
                  <egLay:locked>False</egLay:locked>
               </rdf:li>
               <rdf:li rdf:parseType="Resource">
                  <egLay:name>SNR Grid</egLay:name>
                  <egLay:printable>True</egLay:printable>
                  <egLay:locked>False</egLay:locked>
               </rdf:li>
            </rdf:Seq>
         </egLayL:layers>
         <egCadL:files>
            <rdf:Bag/>
         </egCadL:files>
         <egExtFL2:files>
            <rdf:Bag/>
         </egExtFL2:files>
         <egExtFL:files>
            <rdf:Bag/>
         </egExtFL:files>
         <egBarcL:barcodes>
            <rdf:Bag/>
         </egBarcL:barcodes>
         <egSrLayout:repeats>
            <rdf:Bag/>
         </egSrLayout:repeats>
         <egImp:surfaces>
            <rdf:Seq/>
         </egImp:surfaces>
         <egFontL:fonts>
            <rdf:Bag>
               <rdf:li rdf:parseType="Resource">
                  <egFont:name>ArialMT</egFont:name>
                  <egFont:type>TrueType</egFont:type>
                  <egFont:location>embedded</egFont:location>
                  <egFont:fontfile>N;BG256;E;3;0;0;;JGYQDB+ArialMT</egFont:fontfile>
                  <egFont:protection>False</egFont:protection>
               </rdf:li>
               <rdf:li rdf:parseType="Resource">
                  <egFont:name>ArialMT</egFont:name>
                  <egFont:type>TrueType</egFont:type>
                  <egFont:location>embedded</egFont:location>
                  <egFont:fontfile>N;BG256;E;3;0;0;;YEHETJ+ArialMT</egFont:fontfile>
                  <egFont:protection>False</egFont:protection>
               </rdf:li>
            </rdf:Bag>
         </egFontL:fonts>
         <egPagL:pagelist>
            <rdf:Seq>
               <rdf:li rdf:parseType="Resource">
                  <egPag:start>0</egPag:start>
                  <egPag:end>0</egPag:end>
                  <egPag:inks>
                     <rdf:Seq>
                        <rdf:li>1</rdf:li>
                        <rdf:li>2</rdf:li>
                        <rdf:li>3</rdf:li>
                     </rdf:Seq>
                  </egPag:inks>
               </rdf:li>
            </rdf:Seq>
         </egPagL:pagelist>
         <egInkCovL:coverage>
            <rdf:Seq>
               <rdf:li rdf:parseType="Resource"/>
               <rdf:li rdf:parseType="Resource"/>
               <rdf:li rdf:parseType="Resource"/>
            </rdf:Seq>
         </egInkCovL:coverage>
      </rdf:Description>
   </rdf:RDF>
</x:xmpmeta>
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                                                                                                   
                           
<?xpacket end="w"?>

Phil Harvey

Good sleuthing.  The only difference is that ExifTool has deleted some empty lists (besides changing the organization, but this shouldn't make a difference).  Try this in ESKO.  Here I have deleted them by hand, leaving the original organization of the XMP from your last posted unchanged.

- 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 ($).

Phil Harvey

And here is exactly the same XMP, but organized differently (a-la ExifTool).

Please try this too.

- Phil

Edit: If this doesn't work but test1 does, then maybe try trivially editing this file in Acrobat Pro then seeing if the result works in ESKO.
...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 ($).

richards


Phil Harvey

Ah.  Got it. "Inks" needs a lower case "i" in the config file.  It should be "inks".

Details, details.  Gotta mind those details.

- 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 ($).

richards

Brilliant!!! It works!  :D :D :D :D

I literally can't thank you enough.

Final config below.


%Image::ExifTool::UserDefined::egGr = (
    GROUPS => { 0 => 'XMP', 1 => 'XMP-egGr', 2 => 'Image' },
    NAMESPACE => { 'egGr' => 'http://ns.esko-graphics.com/grinfo/1.0/' },
    WRITABLE => 'string', # (default to string-type tags)

    inks => {
        List=> 'Seq',
        Struct => {
            NAMESPACE => { 'egInk' => 'http://ns.esko-graphics.com/inkinfo/1.0/' },
            name => { },
            type => { },
            book => { },
            egname => { },
            frequency => { },
            angle => { },
            dotshape => { },
            r => { },
            g => { },
            b => { },
            attribute => { },
            printingmethod => { },
        },
    },
);

%Image::ExifTool::UserDefined = (
    'Image::ExifTool::XMP::Main' => {
        egGr => {
            SubDirectory => {
                TagTable => 'Image::ExifTool::UserDefined::egGr',
            },
        },
    },
);

1; # end