Publisher Package
A CHILI Package is a standalone file format used to represent a Publisher Document for import across different environments or servers. These packages contain the document XML, font files, and assets applied to frames, enabling seamless transfer and reproduction of CHILI Documents.
Contents and Limitations
CHILI Packages include:
Document XML
Font files (both assigned and unassigned)
Assets applied to frames
CHILI Packages do not include:
Changes to image assets via actions
Assets stored in variables but not assigned to frames
Barcodes Types
PDF Export Settings or any output settings
Dynamic Asset Providers settings
DataSources Settings
Note: The object IDs of exported fonts and assets found in the BackOffice are not maintained after package import.
Size Limitations
While you can output a package of any size, CHILI GraFx supports a maximum of 1 GB package size when you import it back into Publisher.
Package Structure
The CHILI Package is a zip file with a customizable extension. You can change the extension in the System → GraFx Publisher Management settings.
Warning: Never modify or rely on this structure directly, as the behaviors may change without notice.
The structure typically includes:
package_name.zip/ ├── assets.xml ├── document.xml ├── fonts.xml ├── meta.xml ├── Assets/ └── Fonts/
assets.xml
This file is a manifest for all assets in the Assets
folder. Example:
<assets defaultLocation="Assets\Imported\example doc"> <item id="836abf47-4f62-4f0d-a2c7-a402a295b6fe" oldID="5536ff25-2a77-434a-865e-065d5371fdb7" file="Assets\Imported\example doc\example.jpg" /> </assets>
Key points:
Asset names are changed to random GUIDs with a ".asset" extension during packaging.
The
document.xml
is modified to use the new GUID.The
id
property matches theexternalID
property in the modifieddocument.xml
.The
oldID
is the original Asset file ID in the BackOffice.The
file
property indicates where the asset will be uploaded in the BackOffice if no other value is provided during import. This value is hardcoded to beImported\{document name}\{file name}
fonts.xml
This file is a manifest for all fonts in the Fonts
folder. Example:
<fonts defaultLocation="General\FromInDesign"> <item id="700b444b-6941-464f-bff8-8028cac221a9" file="Fonts\General\FromInDesign\AkzidGroProBol.otf" /> <item id="3a229c16-0c81-46fb-8ebd-d5ea5cd67f41" /> </fonts>
Key points:
Font files are renamed to match the font element ID in the
document.xml
with a ".font" extension.The
id
property is the ID of the font element in thedocument.xml
and the name of the renamed font file.The
file
property indicates where the font will be uploaded in the BackOffice if no other value is provided during import. This value is hardcoded to beGeneral\FromInDesign\{file name}
An
item
element with nofile
property represents the default Arial font.
document.xml
This file contains the actual document XML, slightly modified from the original. Specifically, the externalID
property of image frames is changed to match the new asset GUIDs.
meta.xml
This file is used for transporting metadata, most commonly the name of the document.
Managing Packages
Packages can be uploaded via:
BackOffice
Adobe® plugin or extensions
DocumentCreateFromChiliPackage API
When uploading a package, you can define the folder location for uploaded Assets or Fonts.
If you don't define a location, default locations will be used as defined in the fonts.xml
and the assets.xml
files.
Fonts:
General\FromInDesign\{file name}
Assets:
Imported\{document name}\{file name}
Note: If the default path contains a file with the same name, the new file will not be uploaded.
Best Practices
Font Management
It's strongly recommended to:
Change the font location to the same staic folder path when importing packages.
Benefits:
Prevents duplicate fonts
Saves storage space
Ensures use of verified, working fonts - as it is possible for someone to upload a corrupt font or for the font to become corrupt during unzipping
Asset Management
It's strongly recommended to:
Change asset location to a unique folder path when importing packages
This approach prevents accidental overriding of assets with the same name that are supposed to be unique.