3 Replies Latest reply on Jul 3, 2013 4:29 AM by mhandze

    InDesign 5.5 changes Stories IDs on export document

    mhandze

      I'm working on a project where part of the work involve InDesign templates. The rest of code calling elements from the InDesign templates refence them using IDs (IDML component name) - including files from /Stories subfolder of template and then reading content.

       

      One of the options that I want to give for my customers is ability to modify some of the template elements and then re-render template using these modifications.

      Unfortuntely I just realized that when I open .IDML document via InDesign and the export again as .IDML it doesn't keep the same component names (IDS) for elements like Stories. Everytime on export all is changed - including file names in /Stories subfolder. It's the same behavion using export in InDesign app and calling open/export metthods via Applescript.

       

      Is there a way to force InDesign to not change IDs (IDML component names) when I open and export .idml document ?

       

      I've tried all the options of "Open" dialog (open normal, open original, open copy) without success.

       

       

      Thanks for any advices or suggestions.

        • 1. Re: InDesign 5.5 changes Stories IDs on export document
          Eugene Tyson Adobe Community Professional & MVP

          IDML is not for utilising as a template manager.

           

          IDML was introduced for

           

          1. As a method to save files from later versions of Indesign to be opened in previous versions

          2. For problematic old files not opening correctly in a newer version of Indesign

          3. General corruption clearing of a file when it misbehaves unexpectedly.

           

           

          For Templates you should save as an InDesign Template

          http://help.adobe.com/en_US/indesign/cs/using/WSa285fff53dea4f8617383751001ea8cb3f-6d5ea.h tml

           

           

          This will allow you to use the Open commands as you want to.

           

          Open Normal - will open the Template in InDesign ready for Editing

          Open Original - will open the Template in InDesign to edit the Template file and resave

          Open Copy - opens a copy of the original file to be edited.

          • 2. Re: InDesign 5.5 changes Stories IDs on export document
            Laubender Adobe Community Professional & MVP

            @mhandze – No.


            IDs are built anew every time you open an IDML in InDesign.
            Or if you use IDMS it's the same, if you place the snippets.

             

            One way could be to label the components by scripting (JavaScript [ExtendScript]) with:

             

             myObject.insertLabel("KeyString","ValueString");
            

             

            method and extract the values in InDesign with:

             

            myValueString = myObject.extractLabel("KeyString");
            

             

            You can see the labels in IDML or IDMS and could retrieve the labels directly from IDML or IDMS.

            Or use advanced editing methods to insert the labels directly in IDML and IDMS.

             

            Uwe

            • 3. Re: InDesign 5.5 changes Stories IDs on export document
              mhandze Level 1

              Ok, it seems like there is no way to force InDesign to not create new IDs for objects on opening .IDML file.

               

              My other idea was to mark Stories with my custom property, so I can reference using that one instead of IDML component name.

              For example:

               

              <Story Self="u2f98" AppliedTOCStyle="n" TrackChanges="false" StoryTitle="$ID/" AppliedNamedGrid="n" CustomName="customValue">

               

              However, when I put this change into .IDML and open it with InDesign (or with Applescript) and print all properties for this "Story" I can't see that CustomName in here.

              Is it possible that InDesign will ignore all properties not defined in specification ?

               

              So, another question came. How can I add new property for .IDML tags ?

               

              thanks!