Plugin sequence for the Dynamic Delivery output format
The Dynamic Delivery output format has its DITA-OT transformation type set to ishditadelivery. This transformation type is used as a condition to define a post process sequence in the Publish Plug-ins configuration, found in Organize Space under . The condition defines the list of plugins that need to be executed in a specific order to transform the XML files and images into a format that can be accepted by Dynamic Delivery.
| Name | Handler | Description |
|---|---|---|
ISHREMOVENOTLOCKEDNAVTITLES | IshRemoveNotLockedNavTitles | Removes the "navtitle" elements and attributes from "topicref" elements (or specializations of the "topicref" element) that do not have the "locktitle" attributes set to "yes" from DITA maps (or specializations of DITA maps), to avoid that"DITA-OT" takes them into account. |
ISHCHECKREFERENCES | IshCheckReferences | Checks that the links, hyperlinks, conref, conrefend, keyrefs targets exist and updates the report items with the found status |
ISHSAVEFILESTORUNLEGACYSCRIPTS | IshSaveFilesToRunLegacyScripts | Saves the files required for the legacy publish scripts including job specification and legacy report files (1 per language)
|
ISHRESTOREDOCTYPE | IshRestoreDocType | In order to improve performance the DOCTYPE definition is moved (during publish) into a processing instruction. Since DITA-OT needs the DOCTYPE definition, this plugin will load all xml files and move the ishdoctype processing instruction back into a DOCTYPE definition |
ISHRUNDITAOT | IshRunDITAOT | Runs the DITA-OT transformation process by executing the "ishrunditaot.cmd" command |
ISHDITADELIVERYPREPAREMETADATA | DitaDeliveryPrepareMetadata | Collects all files in the DITA-OT out folder and tries to find a matching [filenamewithoutextension].met file for them in the input folder. When it finds a [filenamewithoutextension].met file, it converts it to a JSON format, adds the title of the publication in When it does not find a [filenamewithoutextension].met file, it creates a JSON file with the title of the publication in For the publication it converts the [PublicationGUID].met file to Publication.json. This plugin also creates the publication_metadata_schema.json, page_metadata_schema.json, binary_metadata_schema.json for the JSON metadata files. |
ISHDITADELIVERYPREPAREOVERALLPACKAGE | DitaDeliveryPrepareOverallPackage | Moves the files needed to be transported to Dynamic Delivery into a folder structure under ...\Data\Publish\Data\[RANDOMFOLDERNAME]\work\TP\ALL, were TP is an abbreviation for Transport Package . Under that folder, subfolders are created with a name that matches group names configured in the The files in the out folder, that match all the configured objects include and exclude pattern of a group will be moved to the corresponding subfolder and will be given a unique The JSON metadata files belonging to the files that are moved, will be moved as well.
Eventually the plugin creates:
|
ISHDITADELIVERYCONVERTPAGEREFS | DitaDeliveryConvertRefs | Parses files of type page in the TP\ALL folder, and replaces <a href=GUID-X>, <img src=GUID-X>, <object data=GUID-X>, etc. elements with tcdl:Link, or tcdl:Image elements with a ref=ish:xxx-yyy-zzz (only if the attribute value matches the OriginalFile in the __packages.xml) and saves the changes to the same filename again. |
ISHDITADELIVERYCONVERTNAVREFS | DitaDeliveryConvertRefs | Parses files of type toc or index in the TP\ALL folder, and replaces ref or target attribute values of the form GUID-X with ish:xx-yy-zz (only if the attribute value matches the OriginalFile in the __packages.xml) and saves the changes to the same filename again. |
ISHDITADELIVERYCONVERTCONDITIONS | DitaDeliveryConvertConditions | Converts remaining conditional attributes to <tcdl:If type="ish:Condition" condition=""> elements. |
ISHDITADELIVERYCONVERTTOC | DitaDeliveryConvertToc | Parses files of type toc in the TP\ALL folder, and converts them from HTML produced by DITA-OT to XML that complies with the format needed for Dynamic Delivery. |
ISHDITADELIVERYCONVERTINDEX | DitaDeliveryConvertIndex | Converts the index.xml produced by DITA-OT to the format defined for Dynamic Delivery. |
ISHDITADELIVERYEXTENDCONDITIONMETADATA | DitaDeliveryExtendConditionMetadata | Extracts remaining conditional attributes from the content, disassembles them, and saves the resulting condition name/values in the corresponding JSON metadata files. It also builds a unique list of all found condition names and values and enriches the condition set (a.k.a product definition) used during publishing and saves them to the publication JSON metadata file. |
ISHDITADELIVERYEXTENDNAVENTRYMETADATA | DitaDeliveryExtendNavEntryMetadata | Adds fields to the page or binary JSON metadata files that reflect which toc and index items refer to them. |
ISHDITADELIVERYDIVIDEPACKAGE | DitaDeliveryDividePackage | Moves the files that need to be transported for Dynamic Delivery to multiple folders based on their type and a maximum size defined for the folder. |
ISHDITADELIVERYCOMPRESSPACKAGES | DitaDeliveryCompressPackages | Zips every package created by DitaDeliveryPrepareOverallPackage and puts the resulting zip files in a TP\Zips folder. |
ISHDITADELIVERYUPLOADPACKAGES | DitaDeliveryUploadPackages | Uploads every package zipped by DitaDeliveryCompressPackages to Dynamic Delivery and signals that the packages should be processed. |
ISHCOMPRESSPUBLISHRESULT | IshCompressPlugin | Compresses the file with the publish result specified in the Items collection. |
ISHUPLOADPUBLISHRESULT | IshUploadPublishResult | Uploads the file specified in the Items collection by the given key as a result to the publication output. |