How the M-Files Intelligent Metadata Layer Will Make Data Capture a Breeze

This document provides an overview of Intelligent Metadata Layer (abbreviated hereafter as IML). IML is a repository-neutral approach to enterprise content management that unifies information across different sources based on context, not on the system or folder in which the information is stored.
IML allows an M-Files user to connect to multiple different external repositories in addition to the traditional M-Files document vaults. By means of special vault applications known as connectors, the user can browse and edit content residing in external sources within the M-Files user interface.

IML provides automatic classification and metadata to your documents with the aid of so-called intelligence services that add a layer of artificial intelligence to M-Files. Intelligence services are vault applications that classify documents for you by determining the class of the document and suggesting metadata values by analysing file content semantically and visually.

This overview offers the reader information on the overall architecture of IML, connectors, intelligence services and the ways in which authentication and access rights are carried out in the IML environment. By reading this document, you will get a comprehensive understanding of what IML is and what it can offer to your organization.

Introduction

This document provides an overview of the M-Files technology called Intelligent Metadata Layer (IML) by explaining what it is, how it works, and how it can improve the information and document management capabilities of your organization.

The architecture of IML is described in more detail further below in this document, but in short, IML unlocks the two following benefits:

  • End users can search, browse, edit, and add metadata to content located in repositories other than the traditional M-Files vaults by using the familiar M-Files user interfaces: M-Files Desktop, M-Files Web, and the M-Files mobile apps. Access to these external repositories is provided by means of special vault applications known as connectors.
  • Categorizing documents and entering object metadata is a lot more effortless thanks to vault applications called intelligence services. These applications are artificial intelligence components that, for instance, provide metadata suggestions on the metadata card by examining documents using natural language processing techniques and text analytics.

Structure of This Document

Following an architectural overview of IML, external repository connectors and information security of the repository connections are examined in further detail. After this, the document explains what intelligence services and their key benefits are. The last chapter, Using IML Features in M-Files, describes how end users can make the most of the advantages provided by Intelligent Metadata Layer.

You need the IML Core Module license to be able to use the capabilities described in this document. Licenses for external repository connectors and intelligence services are sold separately. An M-Files Online subscription includes the IML Core Module license together with licenses for M-Files Network Folder Connector as well as the M-Files Information Extractor and Image Analysis intelligence services.

Microsoft .NET Framework 4.5 or later must be installed on the M-Files server computer.

Some M-Files applications that were released before M-Files 2018 may not be compatible with external repository content. Before taking IML into use, ensure that all your business-critical M-Files applications are compatible with content stored in external repositories.

Architecture of IML

The architecture of IML can be divided into three distinct layers as depicted in the image below: the unified user experience layer on the top, the intelligent metadata layer in the middle, and the multi-repository backend at the bottom. The next three subchapters explain the roles and functions of each layer.

Unified User Experience

The top layer serves to offer a unified user experience regardless of the repository in use. It allows information to be viewed and edited with the familiar and user-friendly M-Files Desktop, M-Files Web and M-Files Mobile user interfaces, no matter where the information resides.

Intelligent Metadata Layer

The middle layer, also known as Intelligent Metadata Layer, is the central component in the IML architecture. It consists of all the essential ECM capabilities, such as a versatile search interface, workflows, version history, checking out documents for editing, and a multi-repository search. The M-Files approach of classifying documents with metadata and categorizing content into metadata-based views allows documents to be found on the basis of what they are about instead of where they reside. The multi-repository search is the M-Files version of an enterprise search, allowing documents to be searched for across repositories.

The middle layer also introduces new type of intelligence into the M-Files system. The so-called intelligence services offer means for automatic metadata suggestions and document classification by performing text and image analytics on content that is added to M-Files, and by applying machine learning on vault user behavior patterns. Intelligence services are vault applications that, when installed, can shoulder the burden of specifying metadata and classifying documents. Additionally, the IML application programming interface allows intelligence services to be developed by third parties so that they can be tailor-made to suit specific needs and environments of diverse organizations and businesses.

Multi-Repository Backend

The bottom layer acts as an interface between M-Files and external repositories. By means of vault applications known as connectors, M-Files users are able to view and modify content in external repositories by using the familiar M-Files user interface. Connectors establish connections between M-Files and external repositories and allow the user to view and edit content from various external sources as though the user was operating within a single document vault.

Connectors

Access to external repositories in IML is made possible via so-called connectors. Connectors are lightweight vault applications that are designed to establish a connection to an outside file source and to map the information from the external source to the metadata structure of the vault.

Practical Benefits

Say your organization has business-critical documents residing in a number of different repositories, such as different SharePoint Online sites and network folders. You can use IML to provide your organization with centralized access to these documents that originate from various different sources. Intelligent Metadata Layer provides a practical way to bundle documents from different sources to the same views and virtual folders by leveraging M-Files metadata. Practical use cases include, for example:

  • Electronic discovery: Create e-discovery sets and bundle evidence data from SharePoint Online and network folders into virtual folders and views. You can find relevant documents for the e-discovery case using the advanced search functionalities such as proximity search, and fuzzy search and the search works across all external repositories. You can then review evidence data using the workflow features in M-Files, and finally, you can share the evidence data with lawyers using the collaboration features in M-Files.
  • Case management: A common challenge in project management is to ensure that information flows smoothly between internal and external stakeholders. With IML, you can organize documents, CAD drawings, and other material with metadata by project, project phase, owner, or any other property. You can also assign workflows for content that does not reside in M-Files to ensure that content gets worked on in time. IML also enables access to all this data via mobile apps: all the files, even the ones in your network folders, are accessible via your phone or tablet anytime and from anywhere.

The users in your organization will have a repository-neutral access to all the documents via the same M-Files user interfaces, including M-Files Mobile, M-Files Web, and M-Files Desktop. They can use the same metadata structure to describe the documents and the same search to locate them based on metadata values and file contents. They can make a cohesive whole of the documents from diverse sources by sorting them into views that rely on metadata-based categorization. And on top of that, they have all the functions of M-Files at their disposal for all the managed objects, including, for instance, the following:

  • Offline access
  • Version history
  • Annotations and redlining
  • Workflows
  • Audit trail
  • Public links

Accessing External File Content with M-Files

Connectors, as the name implies, essentially establish a connection between M-Files and external repositories. They bring external data into the M-Files user interface and allow it to be viewed and modified in the same fashion as information is commonly processed in M-Files. In other words, files in an external repository, such as a network folder, are displayed in M-Files like any other M-Files objects and they can be edited and enriched with metadata in the very same customary manner as any other information residing in an M-Files document vault.

Unmanaged and Managed Objects

External files that are not enriched with M-Files metadata are considered as “unmanaged” files in M-Files. They can be viewed and modified in M-Files, but the changes are saved to the external repository only and M-Files Server will not maintain version history for such files.
When the user enriches an external file with M-Files metadata, the file is “promoted” to a managed external object in M-Files. Managed object files can be edited via the external system or via M-Files, but M-Files maintains version history of only the changes made via the M-Files system. Since the external repository may not support version history, M-Files Server stores old file versions within the M-Files system and only the latest version of the file is maintained in the external system.

Synchronization of Changes Between M-Files and External Repositories

This chapter explains how changes between the external repository and M-Files are synchronized when content is modified, removed, renamed, or moved either in the external repository or M-Files.

Modifying Objects

When files are modified in an external repository, the changes are reflected in the M-Files document vault accordingly – and vice versa. In other words, if a file is edited in the external repository, the same changes are available in M-Files via the connector, and when a document is modified via M-Files, the changes are synchronized to the external repository.

Version history for managed objects.

From the version history point of view, individual modifications made outside M-Files are not recordedin the M-Files version history. For instance, when a file is first edited and saved a number of times in the external repository and then opened and modified in M-Files, a new version is created that includes all the modifications made in the external repository plus the ones made via M-Files. Separate version history records are thus not stored for the individual versions created in the external repository. Note that the object needs to be a managed one to have a version history in the first place.

Removing Objects

When a file is deleted from the external repository, the corresponding object in the M-Files vault is deleted as well. This means that it is no longer visible in listings or searches but can be undeleted later on – provided the file was not permanently deleted in the external repository. Also, if an object with the same identity (such as its path or GUID) is added back to the external repository, the M-Files object is automatically undeleted along with its metadata and version history.

Deleted objects can be removed completely from M-Files either by destroying them (which also requests the connector to remove the corresponding object in the external repository) or by destroying metadata (which only removes the object in M-Files).

What happens when an external repository object is removed via M-Files depends on the connector and possibly its settings. For instance, you can configure the M-Files Network Folder Connector to remove the file from the external repository when you delete the corresponding object in M-Files or to just make the M-Files object to not appear in listings or search results.

Renaming and Moving Objects

Generally, if you rename or move a file in an external repository, the associated object in M-Files is updated accordingly. If you are, however, connected to a network folder, it is strongly recommended to manage all the content via M-Files only as renaming or moving files directly in the network folder may cause managed M-Files objects to disappear.

Available Connectors

Please visit the M-Files Solution Catalog for all the available connectors. New connectors are being continuously developed and in the near future, connectors will be available for the most commonly used ECM systems.

The IML application programming interface also allows third parties to develop their own connectors for other external systems.

Installing a Connector

Do the following steps to add a new connector:
1. Open M-Files Admin.
2. In the left-side tree view, expand a connection to M-Files Server.
3. In the left-side tree view, expand Document Vaults.
4. In the left-side tree view, right-click the document vault of your choice and select Applications from the context menu.
The Applications window is opened.
5. Click the Install… button.
6. Locate the application package stored on your computer and click Open.
7. You are prompted to restart the document vault. Click Yes.
8. If you have open sessions in the selected vault, you are prompted to close any open sessions. Click Yes.
The connector is installed in the selected vault and should be listed in the Applications window.

Configuring a Connector

Once a connector has been installed, it must be configured so that it can properly interact with your vault. A connector configuration includes details related to the connection between M-Files and the external repository, credentials, and mappings between the connector and the vault metadata structure.

Adding a Connection to an External Repository

This section discusses adding a connection to an external repository. If you are planning on adding a large number of connections, you may want to read these performance considerations first. To add and configure a connection to an external repository, do the following steps:

1. Open M-Files Admin.
2. In the left-side tree view, expand a connection to M-Files Server.
3. In the left-side tree view, expand Document Vaults and then expand a document vault of your choice.
4. Still in the left-side tree view, select Configurations.
5. In the gray navigation area, expand External Repositories and then select the connector that you want to configure.
6. Right-click the connector and select Add Connection from the context menu.
7. In the gray navigation area, select the new connection and then open the Configuration tab.
8. Expand the General Settings section and edit the configuration as applicable:
9. Expand the Connector-Specific Settings section and edit the configuration as applicable.
The settings under Connector-Specific Settings vary across connectors. See connector-specific instructions for details.
10. Optional: In the gray navigation area, right-click the connection and select Authenticate Common User from the context menu to add the common user credentials for connecting to the repository (see section “Common Authentication”).
11. Optional: In the gray navigation area, right-click the connection and select Authenticate Indexer User from the context menu to add the credentials that are used for indexing the contents of the repository (see section “Indexer Authentication”).
12. Optional: In the gray navigation area, right-click the connection and select Authenticate Permissions Retriever from the context menu to add the credentials for fetching the external repository object permissions (see section “Permissions Retriever”).
13. Click Save to save your configuration.
Your configuration should now be effective. You can verify the status of the connection in the configuration editor on the Dashboard tab.

Performance Considerations

It is very important to take into consideration that certain choices related to external repository configuration may unnecessarily cause easily avoidable performance issues, which this section attempts to help you avoid. In general, there are two major configuration topics that may significantly impact the overall performance of the system: 1) the number of searchable connections and 2) the property mapping options.

Firstly, each separate connection configured to be searchable strains indexing and search performance. Each connection may result in two additional processes to be started, and searching from these indexes causes additional delay in getting the results. If searches are too slow, you can try to limit the number of connections included in searches, or to turn off either file data or metadata indexing for some of the connections. In addition, whenever possible, you should prefer using a single connection for connecting to multiple locations within one external repository over having multiple connections to the same repository.

Secondly, excessive property mappings may also have a negative impact on performance. The properties returned by the connector are usually mapped to text properties in M-Files, which does not significantly affect the performance of the system. However, mapping many text-based property values to M-Files value list items or objects may cause a visible impact on the overall speed of the system.

For instance, if a connector returns the property value ESTT Corporation, and the vault has a customer with that exact name, it can be mapped so that the reference is visible on the metadata card. For unmanaged objects, resolving these references causes a search to be run in the vault database, which in turn causes a small delay in loading the properties, possibly affecting the overall system responsiveness.

It is therefore usually a good idea to limit the number of properties that are mapped to value list-based properties in M-Files, especially if listings of external views become slow. For managed objects this is not an issue, as their properties are saved to M-Files vaults.

Information Security in External Repository Connections

When M-Files is used for accessing content that is located in a repository outside the safety of an M-Files vault, it is of crucial importance to make sure that unauthorized people do not have access to it by using M-Files. The connector application takes this into account by acting as a mediator of authentication and authorization between the external repositories and M-Files Server.

Authentication

Administrators must specify the type of authentication to be used for each external repository connection via M-Files Admin. The Authentication setting specifies the credentials that are used for accessing the external repository. Administrators can specify that Common, Personal, or Anonymous authentication is used.

Anonymous Authentication

You must set the Authentication setting to Anonymous for repositories that do not support authentication at all. Such repositories are not very common, so this documentation focuses on the other two configuration options.

Common Authentication

The administrator specifies credentials that are stored in the M-Files vault database in encrypted format. These credentials are used for every M-Files user when they access the external repository via M-Files.
Common is the recommended authentication type in two scenarios:

The external repository contains data that can be accessed by every M-Files vault user or a certain subset of vault users. Using this authentication type saves users from having to log in to the repository manually.

The external repository must be made accessible for users that do not have credentials to the external repository.

This might be the case, for example, when an M-Files organization wants to grant external subcontractors access to a network folder that they would otherwise not have access to.

Using common authentication for this purpose may also require that the external users are granted access to the content via an M-Files NACL, as the common authentication only allows the users to access the repository, not the actual content. Alternatively, the vault users that should be able to access the external content can be mapped to the common external user as explained in Mapping M-Files Users with External Users and User Groups.

Complete the following steps to add the shared credentials for common authentication in the connector configuration:

1. Open M-Files Admin.
2. In the left-side tree view, expand a connection to M-Files Server.
3. In the left-side tree view, expand Document Vaults and then expand the document vault of your choice.
4. In the left-side tree view, select Configurations.
The configurations editor is opened.
5. In the grey navigation area, expand External Connectors, and then expand the desired connector.
6. Right-click the connector configuration of your choice and select Authenticate Common User from the context menu.
7. Enter your credentials in the login dialog.

Personal Authentication

When the type of authentication is set to Personal, the user is prompted to provide their credentials in the M-Files client when they access the external repository.
To log out of an external repository that uses personal authentication, perform the following steps:

1. In M-Files Desktop, click the username in the top-right corner of the user interface.
2. Select External Repositories from the context menu.
3. In the External Repositories dialog, you can see the status of each external repository connection. Select the connection that you want to log out of and click Log Out.
4. Click Close to close the External Repositories dialog.

You are now no longer logged in to the external repository. You can use the same dialog to log back in to the external repository using your personal credentials.

Access Rights (ACLs)

Once a user has been authenticated in the external repository, M-Files is authorized to access content in the external repository and the user can be granted access rights to specific external resources such as files and folders. Every internal and external object in M-Files must have an access control list (ACL) associated with it that determines the rights (such as read, modify, or delete) an authenticated user has on the object, if any.

Connectors can obey the ACLs of the external repository, or override the external repository ACLs with a default, M-Files-specific named access control list (NACL). Do note, however, that applying an M-Files NACL for external repository content while using common authentication for accessing the repository may result in too broad access rights to external content. Due consideration of access rights should be taken if these settings are used in parallel.

Access rights to external repository content are configured with the settings found under the Permissions section in the connector configuration

Applying an M-Files NACL for External Repository Content

The Use M-Files NACL setting specifies whether an M-Files-specific NACL is applied to the objects in the external repository.
The configuration options are as follows:

Never: The M-Files NACL is not applied.
As fallback: The M-Files NACL is applied if the connector is not able to provide any ACL for an object.
Always: The M-Files NACL is always applied.

In the M-Files NACL field, you can specify the named access control list that you want to apply to external files obtained via the selected connection. Note that the NACL can be effective only if Use M-Files NACL is set to Always or As fallback. See Specifying Access Rights to External Repository Content for a few examples on how you can use this setting in conjunction with the different Authentication options.

Mapping M-Files Users with External Users and User Groups

When content in the external repository is accessed via M-Files, the users and user groups contained within the external ACLs are imported to M-Files as user groups. These external users and user groups can then be mapped with regular M-Files users via M-Files Admin or via automatic associations for controlling the access rights of M-Files users to content in external repositories. The mappings determine the effective access rights by defining which M-Files vault users are to be associated with which external repository users.

Automatic associations enable external repository users and user groups to be automatically mapped with M-Files users and user groups. Association may be established during login when the user accesses the external repository via M-Files using their personal credentials so that the M-Files user is associated with the user that is logged in to the external repository. Associations may also be formed on the basis of matching usernames or group names in M-Files and the external repository. See Configuring a Connector for automatic association options.

Complete the following steps to associate an M-Files user with an external repository user or user group:

1. Open M-Files Admin.
2. In the left-side tree view, expand a connection to M-Files Server.
3. In the left-side tree view, expand Document Vaults and then expand the document vault of your choice.
4. In the left-side tree view, select either External Repository Users or External Repository User Groups, depending on which type of associations you wish to make.
5. Double-click the external repository user or user group that you want to associate with an M-Files user or user group.
The User Properties dialog is opened.
6. Click Add… to map an M-Files user or user group with the selected external repository user or user group.
The Select Users or User Groups dialog is opened.
7. Select the users or user groups to be added and then click Add.
You can select more than one item at once by holding down the Ctrl key to select multiple individual items or by holding down the ⇧ Shift key to select adjacent items on the list.
8. Click OK to close the User Properties dialog.
When the selected M-Files users now access the external repository via M-Files, they should have access rights equal to those of the selected external repository user or user group.

Indexer Authentication

The M-Files indexer crawls the content of external repositories and builds a full-text search index that is used for delivering fast search results of external objects for users. The indexer must be provided credentials that it uses for crawling contents of the external repository. Typically, it makes sense to provide the indexer user credentials that grant read access to all the documents in the external repository. If the connector uses common authentication, the indexer user can use the common credentials. If anonymous authentication is used, on the other hand, the indexer user need not be authenticated.

The M-Files indexer also stores the ACL information of every external object in the M-Files search index so that search results can be filtered according to the access rights of the user who conducted the search, provided that ACL mappings have been specified one way or the other.

Complete the following steps to authenticate the indexer user for a connector configuration:

1. Open M-Files Admin.
2. In the left-side tree view, expand a connection to M-Files Server.
3. In the left-side tree view, expand Document Vaults and then expand the document vault of your choice.
4. In the left-side tree view, select Configurations.
The configurations editor is opened.
5. In the gray navigation area, expand External Connectors, and then expand the desired connector.
6. Right-click the connector configuration of your choice and select Authenticate Indexer User from the context menu.
7. In the Username field, enter the username of the indexer user account, and in the Password field, enter the password of the account.
8. Click OK to save the authentication information.
The message “The authentication was successful” is displayed.
9. Click OK to close the message dialog.

Permissions Retriever

For some connectors, a dedicated user that has the rights to all object permissions in the external repository must be authenticated for retrieving the permissions from the external repository. M-Files requires these permissions for normal operation, and they are especially important when objects are promoted and indexed for search as these actions make M-Files responsible for some of the access control checks without relying on the external repository to enforce them. The permissions acquired whenever an object is promoted are also stored as part of the managed object and used when checking access rights for any M-Files user. For this reason, it is important that M-Files is able to acquire the same permissions during object promotion independent of which user promoted the object.

The option is displayed in the connector context menu (see step 12 in chapter 3.6) only if the connector requires a permissions retriever to be assigned. Otherwise, only the options for authenticating a common user and an indexer user are shown.

Specifying Access Rights to External Repository Content

As discussed above, the type of authentication defines the credentials that are used when the user accesses the external repository via M-Files. Each file, object, and folder in the external repository has an ACL that defines whether a user can access and edit the object. The indexer user authentication defines whether an external object can be found using the full-text search.

You can configure the type of authentication and ACL settings in multiple ways. This chapter discusses common use cases for the most relevant combinations

Public Repository

If common authentication is used for connecting to the external repository and an M-Files NACL has been set to define the access rights to external content, the external repository is to be regarded as a public repository where the access rights of each object are specified via the same M-Files NACL (such as Full control for HR, read access to all internal users). In other words, the access rights of M-Files users are dictated by the access rights defined in the NACL that is used for all external content obtained via the selected connection.

This use case applies for a situation where public content is to be made available for M-Files users. This configuration allows every vault user to browse the external repository content via M-Files interfaces.
Access to the files is defined by specifying a single named access control list (NACL) as the default ACL in the connector configurator. Below are a few examples of default ACL options.

Public Repository with Varying User Permissions

This use case applies for situations where all M-Files users should have access to the external repository but only some users should be allowed to access a subset of documents. The connection to the external repository grants every user equal access rights because the authentication type is set to Common, but the privileges are refined at the file and folder level within M-Files by leveraging the ACLs of the external repository.

Let us consider an example. The company has a shared network folder structure that contains useful content for all employees. However, access to the Budget.xlsx file and the Management folder and its content should be restricted only to the members of the Managers user group in Active Directory.
When using common authentication, you must specify credentials that have access to all the desired content in the network folder. In other words, the shared login account used for common authentication must be a member of the Managers user group in Active Directory.

You can then specify user mappings between M-Files and the network folder in such a way that, as a result, non-managers cannot access the management files (Budget.xlsx, Salaries.xlsx, and MBO Plan.xlsx). See Mapping M-Files Users with External Users and User Groups for more information on user mapping.

In the example above, non-managers can see the Budget.xlsx file and the Management folder in the listing when browsing the Documents network folder with M-Files, but they cannot access them. This is because the network folders do not check permissions of items when generating listings. If non-managers would browse the Documents network folder directly using File Explorer, they would in fact be able to see the Budget.xlsx file and the Management folder.

If a non-manager user, on the other hand, performs a search in M-Files using “Budget” as a keyword, the Budget.xlsx file referenced above will not appear in the list of search results because the ACLs of the search results are evaluated before passing the search results from M-Files Server to the client.

Repository with Personal Access

The external repository can also be set to allow each user access with their personal set of login credentials. In this scenario, the Use M-Files NACL setting should normally be set to Never as the external repository (for instance SharePoint Online or a network folder) is already controlling the access rights based on each user’s personal credentials.

This type of configuration enables you to bring all the content of the external repository to the M-Files user interface and to let the external repository take care of access rights to files and folders in the repository.

Personal Access in Combination with an M-Files NACL

You also have the option to use a specified M-Files NACL in addition to personal authentication. This type of setting combination would first cause the connector to evaluate the user’s access rights to the content based on their personal credentials, and after this, M-Files would evaluate the user’s access rights a second time (based on the specified NACL) before allowing access to the content. In most cases, this kind of behaviour might be considered unnecessary.

Intelligence Services

Intelligence services are vault applications that are designed to analyze and classify documents and offer metadata suggestions based on file contents, existing metadata, and even user behavior. Intelligence services make use of technologies such as text analytics and machine learning in order to define and maintain document metadata for the user. Please visit the M-Files Solution Catalog for all the available intelligence services.

Inner Workings of Intelligence Services

Intelligence services can operate in many ways and come into play in different situations. They can be tailor-made for M-Files, they can take advantage of a third-party component or an API, or connect to a third-party service to perform content analysis for M-Files.

Intelligence services are at work in the background, for example, when the user drags and drops a new document to M-Files or modifies a specific property value on the metadata card. In such instances, intelligence services analyse the contents of new documents and metadata modifications and offer metadata suggestions based on the analyses that they conduct. See the subchapters below for a more specific description of how intelligence services produce metadata suggestions.

Semantic Analysis

An intelligence service may conduct a semantic analysis of your content in M-Files by identifying word relationships within and between sentences and by dissecting textual content on a morphological and syntactical level. A morphological analysis segments individual words into the smallest possible units that carry a meaning. A syntactic analysis, on the other hand, studies how individual words are combined to form meaningful phrases and sentences.

The result of these analyses is a semantic characterization of textual content, which then can be used to produce metadata suggestions for the user to pick out as metadata values for the document at hand.

Visual Analysis

Another way for an intelligence service to produce metadata suggestions is to analyse visual content added to M-Files and by that process, it can detect visual objects, concepts, and scenes, or identify faces and emotions through facial expressions found in images, among other things. The results of such a visual analysis can be used to automatically generate a textual description for an image or to offer keywords as metadata suggestions.

Machine Learning

An intelligence service may also study the user’s behaviour in the vault and learn from the user’s actions, classifications, and modifications. Metadata suggestions may then be based on the user’s habitual activities in the document vault. For example, if the user has repeatedly added the same metadata values for a specific type of document, the intelligence service may suggest the same values for the document type in the future.

Practical Benefits

If you for instance add a contract to M-Files, the intelligence service may automatically suggest contract to be used as the document class and propose values for customer and contact details, among other metadata fields, by deducing the information from the file contents. Users may then add suggested values as they see fit. This type of automation can significantly speed up the process of adding metadata for M-Files objects.

As another example, when an image is added to M-Files, an intelligence service can conduct a visual analysis on the new image before the user fills in the metadata. The analysis identifies individual objects, concepts and human faces as well as facial features in the image and generates a textual description and subject labels of the image contents. The description and labels are in turn offered as metadata suggestions for the description and keywords fields on the metadata card. The user can then add any suggestions that she deems appropriate as metadata values and optionally edit the added values to further specify the metadata.

Installing an Intelligence Service

Do the following steps to add a new intelligence service:

1. Open M-Files Admin.
2. In the left-side tree view, expand a connection to M-Files Server.
3. In the left-side tree view, expand Document Vaults.
4. In the left-side tree view, right-click the document vault of your choice and select Applications from the context menu.
5. Click the Install… button.
6. Locate the application package stored on your computer and click Open.
7. You are prompted to restart the document vault. Click Yes.
8. If you have open sessions in the selected vault, you are prompted to close any open sessions. Click Yes.

The intelligence service is installed in the selected vault and should be listed in the Applications window.

Configuring an Intelligence Service

Once an intelligence service has been installed, it must be configured so that it can properly interact with your vault. An intelligence configuration includes mappings between the data offered by the service and the metadata structure of the vault

To configure an intelligence service, do the following steps:

1. Open M-Files Admin.
2. In the left-side tree view, expand a connection to M-Files Server.
3. In the left-side tree view, expand Document Vaults and then expand a document vault of your choice.
4. Still in the left-side tree view, select Configurations.
5. In the gray navigation area, expand Intelligence Services and then select the intelligence service that you want to configure.
6. Open the Configuration tab, then expand the General Settings section, and edit the configuration as applicable
7. Expand the Service-Specific Settings section and edit the configuration as applicable.
The settings under Service-Specific Settings vary across intelligence services. See service-specific instructions for details.
8. Click Save to save your changes.

Your configuration should now be effective. You can verify the status of the intelligence service in the configuration editor on the Dashboard tab.

Using IML Features in M-Files

Taking advantage of IML features as a normal end user blends seamlessly into the regular M-Files user experience. Once a document vault has been configured to use connectors and intelligence services, these features are directly available to all vault users. This section details IML features from the perspective of the vault user.

Accessing External Repositories in M-Files

External repositories can be accessed via the M-Files home screen. They are grouped under External Views in the Browse quick view.

Content in external repositories can also be located and accessed via the search like any other M-Files object.

The Source property on the metadata card displays the name of the external repository in which the selected object resides. The Location property contains the path of the selected object in the external repository. Folders in the external repository can be identified by the connector-specific folder icon shown in the search results and other listings.

Converting Objects in External Repositories into M-Files Objects

Objects in external repositories are by default “unmanaged”, meaning that they are not associated with M-Files metadata. The metadata card of an unmanaged object looks something like the following:

The metadata card of an unmanaged object.

Converting an unmanaged object into an M-Files object is as easy as changing the class of the object using the metadata card

Once you have changed the class, you may enrich the object with metadata as you see fit. The class that you select determines the default metadata properties of the object, as is customary in M-Files:
You may add additional properties to the object metadata by clicking Add property on the metadata card.

External folders as M-Files objects.

You can also promote an unmanaged object representing a folder in the external repository the same way you would promote any other unmanaged object. This turns the folder into an object that, in M-Files terms, resembles a multi-file document having its own metadata and containing several items underneath. When you open the object in M-Files, the items that it contains are shown on the listing area.

Forming relationships between unmanaged and managed objects.

You can only establish a relationship from a managed object to an unmanaged object, not the other way around, that is, from an unmanaged object to a managed object. You can form a relationship from a managed object to an unmanaged object via the Relationships dialog of a managed object or by dragging and dropping an unmanaged object on top of a managed object. Note that if you are forming a relationship by dragging and dropping, the object types of the two objects must be different. You can also form these relationships via M-Files API.

Using Metadata Suggestions

When you add an existing document to M-Files, you must first fill in the metadata to describe the document. When intelligence services are in use, metadata suggestions based on document contents and the intelligence service configuration are offered on the metadata card of a new document.

You may click a property value suggestion – such as Intel or Microsoft for the Customer property – to add it as a value for the property. If there is a plus sign (+) preceding the suggested value, it means that the value will be added as a new object or value list item. Depending on the type of the property, you may add one or more of the suggested values. Alternatively, you may also click one of the property suggestions – such as Phone number or E-mail address – to add the property to the metadata card, thus also revealing the available value suggestions for it.

Metadata suggestions may also be provided for existing metadata when a specific property value is changed. This may be enabled with a so-called event-based metadata card configuration. For more information, see the document Configuring the Metadata Card (M-Files 2018).

For more information on how we can help your organisation please email: peter@documentmanagementsoftware.com.au or visit www.documentmanagementsoftware.com.au


Peter Ellyard