2.90:CMIS Export
CMIS Export is one of the Export Providers available to the Document Export activity. It exports content over a CMIS Connection, allowing users to export documents and their metadata to various on-premise and cloud-based storage platforms.
CMIS Exports can be either "Mapped" or "Unmapped".
- Unmapped Export is a simple export of files to folders. Metadata (such as data extracted from documents used to populate a Data Model) must be exported as a "buddy file", such as an XML or JSON file. This is appropriate for simple storage platforms such as the Windows NTFS file system.
- Mapped Export allows you to export files and their metadata to a repository that allows for metadata storage as well. Many content management systems allow for document storage as well as storing metadata in fields in the storage platform. This is done by pointing the extracted and available document metadata from Grooper to corresponding locations within the content management system. This is set up using the CMIS Content Type objects in the CMIS Repository object, mapping a connection between objects in a Content Model within Grooper (such as Data Fields in a Data Model) and their corresponding locations in the content management system (such as a column in a SharePoint site).
About CMIS
CMIS stands for "Content Management Interoperability Services". It is an open standard that allows different content management systems to inter-operate over the Internet. This standard protocol allows Grooper to use many different platforms for importing and exporting documents and their contents. Once a CMIS Connection object is created, Grooper can exchange documents with these platforms. "Interoperability " means Grooper has the same access to control the system as a human being does. It is a "one-to-one" connection to the platform, allowing full and total control.
Upon connecting to an external content management system, Grooper will be able to see the "repositories" associated with it. A repository, in computer science, is a general term for a location where data lives. Different systems refer to "repositories" in different ways. An email inbox could be a repository. A folder in Windows could be a repository. A cabinet in ApplicationXtender could be a repository. It's a place to put things. We standardize the various terms used by various storage platforms to simply "repository".
These repositories are "imported" into Grooper as a CMIS Repository object, as a child of the CMIS Connection object. This doesn't import data into Grooper in the traditional sense of importing documents into a batch. "Importing" here is more like bringing the repository into a framework Grooper can use (creating the CMIS Connection object). Upon importing the repository Grooper has full file access to that location in the storage platform.
For our purposes, repositories are like filing cabinets full of documents. Once a connection is established, it's like giving Grooper a key to that cabinet. You can open the various drawers of that cabinet. You can pull out files and put files into. The storage platform or content management system is like the cabinet. The CMIS Connection object is like the key. The CMIS Repository object is like a drawer in the cabinet. You "connect" to the cabinet by turning the key. You "import" the repository by opening the drawer. Now you can see there are documents in there! You can take them out. You can read them and put them back in. You can put new ones in. You can use this "open" connection to the "drawer" however you need.
CMIS+ Architecture
Grooper expanded on this idea in version 2.72 to create our CMIS+ architecture. CMIS+ unifies all content platforms under a single framework as if they were traditional CMIS endpoints. Prior to version 2.72, there was only one type of CMIS Connection, a true CMIS connection using CMIS 1.0 or CMIS 1.1 servers. Now, connections to additional non-CMIS document storage platforms can be made via "CMIS Bindings". This provides standardized access to document content and metadata across a variety of external storage platforms.
Using this architecture, Grooper is able to create a simpler and more efficient import and export workflow, using a variety of storage platforms. You now use the CMIS Import and CMIS Export providers, regardless of the storage platform. They connect to a CMIS Repository imported from a CMIS Connection and use that as Grooper's import or export path.
How you create a CMIS Connection only differs from CMIS Binding to CMIS Binding, as each binding has a different way of connecting to it. You don't connect to an Outlook inbox the same way you connect to a Windows file folder, for example.
CMIS Bindings
A CMIS Binding provides connectivity logic for external storage platforms, allowing CMIS Connection objects to import and export content. Grooper's CMIS+ architecture expands connectivity from traditional CMIS servers to a variety of on-premise and cloud-based storage platforms by exposing connections to these platforms as CMIS Bindings. Each individual CMIS Binding contains the settings and logic required to exchange documents between Grooper and each distinct platform. For example, the AppXtender Binding contains all the information Grooper uses to connect to the ApplicationXtender content management system.
CMIS Bindings are used when creating a CMIS Connection object. The first step to creating a CMIS Connection is to configure the Connection Type property. Which binding you use (and therefore which platform you connect to) is set here. First, the user selects which CMIS Binding they want to use, selecting which storage platform they want to connect to. The second step is to enter the connection settings for that binding, such as login information for many bindings.
Current CMIS Bindings
Grooper can connect to the following storage platforms using below using CMIS Bindings:
- The ApplicationXtender document management platform.
- The Box cloud storage platform.
- The FileBound document management platform.
- Content management systems using CMIS 1.0 or CMIS 1.1 servers.
- The following Microsoft content platforms
- The Microsoft Exchange mail server platform.
- The Microsoft OneDrive cloud storage platform.
- Microsoft SharePoint sites.
- FTP (File Transfer Protocol) and SFTP (SSH File Transfer Protocol) servers.
- IMAP mail servers
- The Microsoft Windows NTFS file system.
About CMIS Export
Unmapped Export

Unmapped Export is the simpler of the two. Both Unmapped and Mapped Exports will connect to CMIS Repositories imported from a CMIS Connection. However, Unmapped Export exports content as simple files and folders. You cannot utilize your Content Model to map metadata values to files and folders. This is a much more "raw" export. However, you can still export metadata "buddy files" along with your documents. If you're wanting to export a JSON, XML, or CSV file of a document's extracted fields, you'll need to use Unmapped Export to get this file.
Generally, Unmapped Export is designed for use with CMIS Repositories using a hierarchical file system (HFS), where folders and files are represented by simple object types. The Microsoft Windows file system, NTFS, is an example of an HFS. These are basic folder and file structures.
The following CMIS Bindings utilize simple HFS repositories.
- NTFS
- FTP
- SFTP
- OneDrive
However, you can still use Unmapped Export to export documents to the other more robust CMIS Bindings as well. It's just not very commonly done. It's much more typical to use Mapped Export for non-HFS platforms, taking full advantage of the metadata mapping capabilities available to those content storage platforms.
Furthermore, you can use Mapped Export with HFS repositories to perform simple mappings, such as renaming exported files and folders using extracted fields in a Content Model's Data Model. Unmapped Export will simply name the exported document according to its Grooper folder name (ie "Document (1)" or if it's classified, "Document Type Name (1)") or, if a native file exists on the document folder, according to the native file's name (ie "imported document 123.pdf")
How To: Configure Document Export with Unmapped Export
Establish the CMIS Connection and CMIS Repository
|
Before configuring the Document Export activity, you must have created a CMIS Connection and imported a CMIS Repository. For more information on how to create a CMIS Connection and import a CMIS Repository refer to the CMIS Connection article. For this example, we will simply export to a Windows folder on a local drive.
|
Assign the Export Provider
|
The Document Export activity uses Export Providers to control where and how processed documents are exported from Grooper. Unmapped Export is one of these Export Providers. For this example, we will configure a Document Export activity in a Batch Process (However, these Document Export configuration steps would apply for other more ad-hoc methods of executing the activity as well). This is a simple Batch Process used to import purchase order documents, recognize their text, and extract some basic data from them. The last step in this Batch Process is a Document Export step.
|
Configure Unmapped Export
From here, you will configure the Unmapped Export of your documents. |
|
|
The most important part of Unmapped Export is telling Grooper where you want your documents to go. This is what the CMIS Repository property is for. Here, you will point to the CMIS Repository you've established earlier.
|
|
|
|
|
At this point, this is all you need to do to meet the bare minimum requirements of performing an Unmapped Export. The remaining property configurations are present to customize your export. The Content Type property will typically be set to File as you are exporting processed documents as files. The Update Link property will create a connection link between the exported document in its exported location and the document in the Batch in Grooper. You can disable this if you desire. The Content Format property allows you to customize what file format the exported document takes (for example exporting as a TIF or PDF document).
Metadata Export allows you to export a metadata "buddy file" with the document, such as an XML or CSV file. Path Cloning allows you to use part or all of the imported path as the output path. This can be useful for duplicating an imported folder structure upon output. Ignore Mapped Items allows you to skip over any documents who have their Document Types mapped for Mapped Export (more on how to do this in the Mapped Export section of the article). Press "Ok" when finished configuring the export. |
Reviewing the Export
Because nothing is mapped in an Unmapped Export, you have no control over what the document is named. Unmapped Export is a very simple or "raw" form of exporting to a storage platform. How the document is named will differ somewhat according the original content exported from Grooper.
- In this Batch the documents were imported from a PDF file. They contain a native PDF file version of the document on the document's Batch Folder object.
- Upon execution of the Document Export activity using Unmapped Export, the documents are exported to this folder location according the the settings we configured previously.
- Because these documents had a native PDF version, they were named according to whatever that native version's file name is.
- Note: We also set the Content Format property to Native. Because these documents have a native PDF version, that is the content that is exported, resulting in an exported PDF document.
- In this Batch, no such native PDF file exists.
- Upon execution of the Document Export activity using Unmapped Export, the documents are exported to this folder location according the the settings we configured previously.
- Because no native file exists, the document is named according to the Batch Folder's name, which is the classified Document Type followed by it's number in the batch.
- Note: With the Content Format property set to Native and no native file version, these documents exported as a multipage TIFF image file. If we wanted to export these documents as a PDF, we should have set the Content Format to PDF.
Mapped Export

Mapped Export is much more powerful. Mapped Export creates a document in a CMIS Repository for each Batch Folder in your Batch. Using this export provider, you can copy all the relevant data you've collected to wherever you want your documents to go. Or in other words, you can map properties from your Content Model, such as data fields, to an external CMIS repository.
Similar to the pre-2.72 CMIS Export, Mapped Export uses pre-defined mappings. These mappings are set on the CMIS Content Type object. Here, we will match fields from the outside content management provider with the associated fields, variables and values from our Content Type in Grooper. The Grooper Content Type assigned to the Batch Folder determines the rules for exporting each item. Because of this, all documents processed through Mapped Export must be classified. You can't get a Content Type without classifying the batch. So, Grooper wouldn't have any information on how to map the documents.
To perform a Mapped Export, you must enable exporting on the repository's CMIS Content Type. Below shows you to set up the CMIS Content Type object to map values when exporting.
How To: Set Up the Repository's Export Settings
In the node tree, navigate to the repository you want to export to under your CMIS connection established in the "CMIS Connections" folder under the "Infrastructure" folder.

By default, the "Export Enabled" property is set to "False". Change this to "True" in order to export to the repository.

The "Export Content Type" property is where you assign the Content Type. This can be any element of a Content Model or the whole model itself. Be careful. If you choose a content model not associated with the batch you want to export, you won't actually export any documents. The Content Type you assign on the export step must match the Content Type you assign here. Otherwise, Grooper is going to get real confused. It will probably act like it exported your documents without actually populating anything in the content management system.

Select the "Export Field Mappings" property to assign your mappings.

The "Property Mapping Control" window will pop up. This list will automatically appear based on how you set up your repository in whichever content management system you are using. The example below is an ApplicationXtender connection. It has just one field from our data model tied to it. Document Type can be assigned according to how these documents were classified. Date Created is a read-only value that will be populated in ApplicationXtender when the documents are imported.


Once you've set this up, you can export to the CMIS repository during the Document Export activity using the Mapped Export provider. You will select the CMIS Repository you wish to connect to using the "Export Settings" properties of Document Export.
Once the Document Export activity runs, your documents' extracted data will be mapped to their corresponding locations in whichever content management system you choose, according to how you defined it on the CMIS Content Type.
Furthermore, Grooper now supports transfer of multi-level objects between Grooper and CMIS. If your content management system is set up as folders with documents inside, Grooper will import and export seamlessly. If you have a repository with folders A, B, and C with their own levels of foldering and documents inside, Grooper will retain the hierarchical structure when exporting. This is common with student records, personnel files, case files, and well records.
Export Settings

After you have your field mappings set up, you will further configure the export using the properties in the Export Settings properties of the Document Export activity.
| Property | Default Value | Information |
| General Properties | ||
| CMIS Repository | Select a CMIS repository you have imported already from your CMIS Connections.
Once you select the repository, an additional property will populate to choose the "Target Folder". If nothing is selected, this will be the "Default Base Folder" of the CMIS Content Type. | |
| Update Link | True | If true, the Content Link on the document will be updated to the point at the exported content. It will change from whatever source it was imported from to whatever it was exported to. |
| Export Options | ||
| Content Format | Native | Here you can change the format of the document upon export, such as exporting it as a PDF. The default property is "Native". However, if no native file version exists Grooper will export a PDF version if possible. If neither a native file version or a PDF version exists, a TIFF file is created. Each Content Format selection has its own editable properties as well. |
| Metadata Export | (none) | Adjusting this property will allow you to export a metadata "buddy file" with your documents. It can be one of three values.
|
| Path Cloning | Disabled | Enables or disables path cloning. Refer to the Path Cloning article for more information. |
| Ignore Mapped Items | False | A Batch Folder object is "unmapped" both if no Content Type is assigned or if the Content Type is assigned but it has no export mappings defined.
If true, the export process will ignore mapped items. If false, mapped items will be exported along with unmapped ones. |
Version Differences
Box Integration (2.90)
Grooper 2.9 sees the addition of the Box.com document storage platform into the CMIS fold via the Box (CMIS Binding).
Legacy Providers (2.72)
Old import and export providers should be replaced with this new functionality. While Grooper's older import and export providers are available as "Legacy Import" and "Legacy Export" providers, these components are depreciated. They will still function but will no longer be upgraded in future versions of Grooper.
Grooper can import documents using CMIS Connections via Import Descendents and Import Query Results. Grooper can export via the CMIS Export providers, Mapped Export and Unmapped Export.
New Connection Types (2.72)
By creating the CMIS+ architecture, we have been able to create new connections between Grooper and content management systems. Grooper can now connect to Microsoft OneDrive, SharePoint, and Exchange via new CMIS Bindings. Since these were created as CMIS Bindings, they can be used by the CMIS Import and CMIS Export providers. Instead of having to create three new import providers and three new export providers for a total of six brand new components, we can use the already established CMIS import and export providers in the CMIS+ framework. A user can create a CMIS Connection using the OneDrive, SharePoint or Exchange bindings, and use the same import and export providers for them as any of the other CMIS Bindings.
This will also allow Grooper to create CMIS Bindings to connect to currently unavailable content management systems in the future much quicker and easier.
Link Expression (2.72)
New to 2.72, the "Link" object can expose several new CMIS properties to field expressions.
- Link.Name - Returns cmis:name
- Link.CreatedBy - Returns cmis:createdBy
- Link.CreatedTime - Returns cmis:creationDate
- Link.LastModifiedBy - Returns cmis:lastModifiedBy
- Link.LastModifiedTime - Returns cmis:lastModificationDate
- Link.AsDocument.MimeType - Returns cmis:contentStreamMimeType
- Link.AsDocument.Filename - Returns cmis:contentStreamFilename
There is also a new method available to return CMIS properties in field expressions:
- Link.GetCustomValue (Name)
- Returns the value of a CMIS property
- "Name" can be the ID, query name, or display name of a property
- Ex: Link.GetCustomValue ("invoice_no")









