Transformation template
The transformation template accelerator is a template for creating your own transformation. It contains the basic structure for running a transformation. It will do the bare minimum to run a complete transformation as required by the structure of the Content Store and the target connectors. Use it as a starting point for your own transformation and add any additional logic that you need.
Features
-
Basic transformation structure
- Basic structure
- Versions
- Binaries
-
Creation of ROOT documents(s)
-
User and group mapping
-
Permission mapping
note
that the source.created.principal.systemName and source.lastModified.principal.systemName need to exists in order for this flow to work. You can remove the user mapping if you don't need it. :::
- Options to exclude documents and binaries
- Options to limit the number of versions to migrate
Limitations
- Does not support custom metadata
- Does not support ACLs
- Does not support relations
- Will only work correctly as long as all versions of a document share the same extension (including their
BINARY
documents) - Can't be run multiple times on the same Content Store, in order to re-run please restore the Content Store to its state before the transformation
Settings
mongoConnection
The Mongo connection string including the database name to connect to.
rootDocuments
A list of root documents to migrate. Each root document is a JSON object with the following properties:
_id
: The ID of the root document. A unique ID is required for each root document.hierarchy
: The hierarchy of the root document. This is the hierarchy of the target container as it is in the target system.name
: The name of the root document. This is the name of the target container as it is in the target system.contentType
: The content type of the root document. This is the content type of the target container as it is in the target system.targetId
: The ID of the target container as it is in the target system.
{
"_id":"ROOT",
"hierarchy":"/sites/xill4",
"name":"xill4",
"contentType":"documentLibrary",
"targetId":"12345"
}
rootMapping
An object that maps the documents in the Content Store, based on their source.hierarchies
, to the root documents. The key is the hierarchy of the document in the Content Store and the value is the target.id
of the root document.
{
"/sites/xill4/Shared Documents/": "ROOT"
}
the last slash in the hierarchy is required to make sure that only documents in the Shared Documents folder are mapped to the root document. Otherwise any similar hierarchy will be mapped to the root document. For example, /sites/xill4/Shared Documents 2
would also be mapped to the root document.
userAndGroupMappingWorkbookPath
The path to the Excel workbook that contains the user and group mapping. The workbook should contain two sheets named Users
and Groups
with each two columns: *source
and target
. The *source
column contains the user or group names as they are in the Content Store and the target
column contains the user or group names as they are in the target system.
The mapping is applied tot the created.principal.systemName
and lastModified.principal.systemName
fields for containers and records, and to principal.systemName
for acls.
permissionMappingWorkbookPath
The path to the Excel workbook that contains the permission mapping. The workbook should contain a sheet named Permissions
with two columns: *source
and target
. The *source
column contains the permission name as they are in the Content Store and the target
column contains the permission name as they are in the target system.
The mapping is applied tot the permissions
field for acls.
limitVersions
The maximum number of versions to migrate per document. If set to 0
all versions will be migrated. If set to 1
the current and one previous version will be migrated. If set to 2
the current and two previous versions will be migrated, etc.
fallBackUser
The default user to use when a user cannot be mapped. This is the user that will be used for the created.principal.systemName
and lastModified.principal.systemName
fields.