Acolada - Content Language Data ManagementAcolada - Content Language Data Management
Home> Sirius CMS> InDesign and XML

XML and Adobe InDesign

Import and export of XML with Adobe InDesign

Importing XML into Adobe InDesign

Importing XML into Adobe InDesign is one of the most interesting of its features and has been continually extended and optimized since Adobe InDesign CS2 up to the latest release Adobe InDesign CC 2014.

Users can import XML via a simple menu entry. Adobe InDesign imports the XML into the current document or into a template and thus makes the XML editable. In Adobe Indesign, users can assign frames to the XML via drag-and-drop or assign paragraph- and character styles to the elements. Starting with Adobe InDesign CS4, CALS tables are recognized and rendered as InDesign tables.

This way of dealing with XML is very easy and is apt for simple operations and one-shots.

Automating XML import into Adobe InDesign – the standard way

In addition to the manual way of assigning formats, defining tables or inserting pictures, Adobe supports two XML namespaces of its own, aid and aid5 (starting from Adobe InDesign CS4): If the XML contains elements that have an attribute aid:pstyle, InDesign reads this attribute and, during import, assigns a paragraph style according to the attribute´s value.

There are other such attributes available within the two namespaces, such as aid:cstyle for assigning character formats or aid:table for specifying a table. The attribute href is different, as it is used for inserting pictures.

XSLT, XML and Adobe InDesign

Attributes like aid:pstyle, aid:cstyle a.s.o can easily be introducted into XML by using an XSLT stylesheet. Such an XSLT stylesheet can both be run as part of an import process by specifying the stylesheet in InDesign´s import dialogue or on-demand for a document that’s already open. This way, the assignments occur automatically and based on context.

By importing XML with automations such as those described, manual assignment of formats is no longer necessary. Unfortunately, the end result of such an import is nevertheless disappointing, as the automatic assignment does not assign frames to content, does not add new pages, does not check for overset, does not scale pictures a.s.o.

Automating XML import into Adobe InDesign – the Acolada way

Yet, Adobe InDesigns way of automating the import of XML has some strong points: Firstly, it allows very flexible processing of XML structures. Secondly, the structure is kept separately from design. Acolada picked these concepts up and elaborated on them.

Today, Acoladas work has made available many new features that make processing of XML with Adobe InDesign a breeze.

These features include automatically rendering text or a picture into a frame, setting the frame´s or picture´s size and assigning an object style. For things such as these, Acolada has introduced its own XML namespace ac: if an image has an attribute ac:layer=“image“, the image is placed onto the InDesign layer „image“.

Controlling the flow of text has also been made possible: Acoladas extension of InDesigns way of importing XML checks whether frames have overset and lets such frames overflow onto the next page, automatically linking both frames.

Additional features for controlling the flow of text

The most important feature of Adobe InDesign for importing XML is controlling the flow of content on a single page or from page to page.

It is not only possible to check for overset, but also to take into account the properties of all frames on a page. Acolada calls this feature “dynamic frames”. The size of dynamic frames is determined according to the positions and sizes of other frames on the same page. This way, a picture´s size can vary but its caption will always be placed underneath the picture or a table of technical product data can always be made to appear underneath the picture of the product.

Dynamical frames make such automations possible by checking their own content and the necessary size during XML import.

Dynamically control table layout

For tables, Acolada´s extension offers features to set the width of columns according to the content of certain cells. Column widths can be fixed or dynamic. They can be set choosing from an interval or based on the number of lines that the content shall have. This way, tables can adapt to their environment and optimize their layout automatically based on layout and base frame´s width. Dynamic table layout saves a lot of time fine-tuning.

Using the extended features in Adobe InDesign

What do i need?

To use the features that have been described (and others), an InDesign-Plug-In developed by Acolada is necessary. Acolada offers the plugin for InDesign releases CS4, CS5, CS5.5, CS6, CC and CC2014. The Plug-In also enables users to export XML from InDesign, e.g. for translation purposes or for publishing a changed or revised edition.

Of course, the Plug-In is also usable in a fully integrated way within Acoladas own XML content management system Sirius CMS.

Catalogs, technical documentation, schoolbooks, magazines with Adobe InDesign

Ways of using Acoladas XML-plugin for extended import of XML into Adobe InDesign

Originally, the Plug-In has been developed for producing catalogs and satisfies highest demands for automation and flexibility. Yet, the Plug-In can also be used to build and optimize systems for automatically publishing data from product information management systems (PIM) or data management systems (SAP, MDM). A lot of databases offer exporting their data as XML so it can be imported into Adobe InDesign.