3 Replies Latest reply: Aug 27, 2013 5:24 PM by Carl Rambert RSS

    Enhancing FileInfo Generic Panels

    Jens Krüger Adobe Employee

      Hi,


      the FileInfo SDK offers two approaches to extend the XMP FileInfo dialog found in many Adobe applications.


      1.) A generic panel which can be setup by editing a couple of XML files.

      It offers only limited support for properties defined in XML, it can display only simple XMP properties and comma-separated array lists, with limited layout capabilities (e.g. separators).


      2.) A Flash-based custom panel that offers more possibilities but needs some programming skills to develop.



      The XMP team is currently thinking about enhancing the generic panel approach to make it easier to build complex Metadata UI without programming skills. Planned features are, for example, support for complex properties and more layout capabilities.


      We would like to get feedback from you about enhancing the generic panels and also collect examples of generic panels, as well as flash-based panels.

      Have you developed a generic panel or flash-based panel in the past? Why did you choose one approach over the other? Which features would make a generic panel more valuable to you?


      Please post your experience with FileInfo panels to this thread and, if possible, show us your panel. You can also send us your panel through private forum mail and we will keep it confidential.


      Thanks for your help!

        • 1. Re: Enhancing FileInfo Generic Panels
          Paul Riggott Community Member

          The generic panel would be much better if bags worked.  They do not work with Bridge CS4/5/6 & CC on Windows 7.

          Example code...

           

          <?xml version='1.0' encoding='UTF-8'?>
          <xmp_definitions>
          <xmp_schema prefix="my" namespace="http://ns.adobe.com/MyNamespace/"
          description="The My Schema" label="$$$/xmp/my/mylabel=My" >
          <xmp_property name="mybag" category="external" type="bag"
          label="$$$/xmp/my/mybag=My Bag" element_type="text" />
          </xmp_field>
          </xmp_schema>
          </xmp_definitions>
          

           

          Also Bridge CS6 and Bridge CC share the same folder for the xml files!

          They should be different.

          CS6

          C:\Users\<username>\AppData\Roaming\Adobe\XMP\Custom File Info Panels\4.0\custom

          CC should be...

          C:\Users\<username>\AppData\Roaming\Adobe\XMP\Custom File Info Panels\5.0\custom

          • 2. Re: Enhancing FileInfo Generic Panels
            Carl Rambert Community Member

            Over the years I have built several (generic) File Info panels and 

            Bridge Metadata Panes that can display multi-dimensional XMP arrays, 

            such as those used in IPTC Extension, PLUS , and PRISM Metadata for 

            Images schemas.

             

            These directly index the row and column in the array. Attached is a 

            partial screenshot of a CS4 Bridge Metadata Pane for PRISM Metadata 

            for Images that uses IPTC Extension arrays that have been extended by 

            one sub property: agreementID. With the preference "Hide Empty Fields" 

            this pane is practical for viewing existing complex XMP metadata in a 

            file. There is a version of this pane for old File Info, and one for 

            the newer File Info (XML).

             

            The second attachment is a screen shot of the corresponding (old) File 

            Info Panel (0.0/1.0). The two dimensional arrays are displayed as 

            fixed height tables with column headers: Location, City, State, ... A 

            new ( 2.0+) File Info Generic Panel was constructed, but with a 

            separate line per sub property, it is very, very tall and not 

            practical for use.

             

            The array fields in this pane and this panel are set to be display-only.

            *********

            If the array fields were set to be read/write and the array already 

            contained data when the XMP packet is opened, then File Info is 

            capable to editing/appending to it. However, if the array does not 

            exist when File Info opens the XMP packet, any data entered into these 

            fields will be ignored when the packet is updated. It appears that 

            (generic) File Info cannot generate a new XMP array structure. As a 

            result, these panes and panels were constructed with the array fields 

            as display-only.

             

            I have experimented with directly indexing into 3, 4 and 5 dimensional 

            XMP arrays in File Info. It behaves the same as with 1 and 2 dimensions.

             

            Observation: If File Info could generate new XMP array structures when 

            none previously existed in the packet, like it does for full custom 

            Flash File Info panels, then generic Bridge Metadata Panes and Acrobat 

            Pro (old) File Info panels could support read/write of complex XMP 

            metadata.

             

            Regards,

            Carl Rambert (previously with Pound Hill Software)

            • 3. Re: Enhancing FileInfo Generic Panels
              Carl Rambert Community Member

              Sorry, the screen shots were stripped for display on the forum.

               

              The complete screen shots can be found in the Appendix C of 

              PMIGuide_v1.0.pdf that is part of the PRISM Image_Spec downloaded from:

               

              http://www.idealliance.org/downloads/prism-image-metadata-specification

               

              PMI4 Object(s) (page 38) has an example of a table built with X and Y 

              display reversed in order to display a large number of sub properties 

              for each array entry.

              That might be a general 2D array display geometry that you could adopt 

              with a CS-next "generic" File Info panel without too much disruption.