A-Z glossary of PageSeeder concepts


The overheads of managing duplicated data are well known and in general, duplication is something to be avoided. Many of the requirements that have traditionally required data to be duplicated can be met through standard PageSeeder functionality such as  cross references (xrefs), shared documents and labels. These include the following:

  • two parties that want to privately review the same document (use sharing),
  • a publisher delivering student and teacher versions of a text book to multiple formats (use xrefs to configure different views and labels to filter the content),
  • show links on to users when they have permission to traverse to the link destination, otherwise display the link as plain test (use the group permission model).

Even still, there are legitimate use cases where duplicating documents and the purpose of this page is to explain some of the issues to consider when choosing to duplicate data in PageSeeder. 

Patterns of duplication

Publish duplicate

(also known as a Filter duplicate) – is the safest and easiest way to manage duplicate content. This pattern maintains a single copy of the data for editing and only copies the content when the document is published. By using markup to identify the content that is unique to each deliverable, developers can use code to determine which content should be duplicated. Once this is resolved the content in the publish, the content can be transformed into output formats (PDF, HTML, docx et al) using the standard formatting libraries. 

This approach works well where differences in the content can be identified using inline, block or fragment labels.  that can be For  and use features such as making the new group read only in order to prevent the duplicated data being edited.

Another application of this pattern is to publish content to another group. 

Shallow Duplicate

With this pattern, only the file being processed is duplicated. With a shallow duplicate, links that terminates outside the document are copied but not the destination. In other words, any link from both the source document and the duplicated document will reference the same location (to copy the files at both ends of the link, see collection duplicate). 

Collection Duplicate

Essentially this pattern replicates an entire collection of content and then updates the path references to reflect the new location. Objects supported through this pattern include xrefs, image references and sub-folders.  

Created on , last edited on