Академический Документы
Профессиональный Документы
Культура Документы
Talend
Master Data Management
4.X
Administrator Guide
Intentionally
Blank
Adapted for the Talend MDM Studio v4.2 Administrator Guide release.
Copyright
Copyright © 2009-2011
Preface ..........................................................................................................................................................................xi
Purpose ....................................................................................................................................................................xi
Audience ..................................................................................................................................................................xi
Typographical conventions .....................................................................................................................................xi
History of changes .......................................................................................................................................................xi
Feedback and Support ..............................................................................................................................................xiv
CHAPTER 1
Talend MDM: Concepts & Principles ........................................................................................1
1.1 Introducing Master Data Management ...............................................................................................................2
1.2 General concepts ....................................................................................................................................................2
1.2.1 Master data ......................................................................................................................................................2
1.2.2 Transactional data ............................................................................................................................................2
1.3 Master Data Management by Talend ...................................................................................................................3
1.3.1 Overview of Talend MDM ..............................................................................................................................3
1.3.2 User interfaces for data governance and data stewardship ..............................................................................4
1.3.3 A comprehensive set of tools ..........................................................................................................................5
Integration with Talend Integration Suite Studio ..............................................................................................6
Integration with Talend Data Quality Studio .....................................................................................................6
Integration with a workflow graphical editor .......................................................................................................6
1.4 Talend MDM functional architecture ..................................................................................................................6
1.5 Example of a functional workflow through Talend MDM ................................................................................7
CHAPTER 2
Getting started with Talend MDM Studio .................................................................................9
2.1 Important terms in Talend MDM Studio ..........................................................................................................10
2.2 Launching Talend MDM Studio and connecting to the MDM server ............................................................11
2.3 Managing licenses ................................................................................................................................................16
2.3.1 Checking/changing the license for the Studio ...............................................................................................16
2.3.2 Licenses and perspectives in the Studio ........................................................................................................17
2.4 Migrating data objects .........................................................................................................................................18
2.5 Data migration from eXist to Qizx .....................................................................................................................19
2.6 Using eXist with the MDM server ......................................................................................................................20
2.7 Main window and navigation principles ............................................................................................................22
2.8 Multi-perspective approach ................................................................................................................................23
2.8.1 Switching between different perspectives .....................................................................................................23
2.8.2 Managing quick access icons for different perspectives ...............................................................................26
CHAPTER 3
Setting data governance rules ....................................................................................................27
3.1 MDM working principles ....................................................................................................................................28
3.2 Data Models ..........................................................................................................................................................28
CHAPTER 4
Advanced subjects .....................................................................................................................183
4.1 Versions ...............................................................................................................................................................184
4.1.1 Creating a new Version of master data .......................................................................................................184
4.1.2 Connecting to different Versions of master data .........................................................................................187
4.1.3 Managing Versions ......................................................................................................................................189
How to export Versions ....................................................................................................................................189
How to import Versions ....................................................................................................................................189
How to edit a Version .......................................................................................................................................189
How to copy/paste a Version ............................................................................................................................189
How to duplicate a Version ...............................................................................................................................190
How to delete a Version ....................................................................................................................................191
4.2 Versioning ..........................................................................................................................................................191
4.2.1 Configuring the SVN server ........................................................................................................................192
4.2.2 Creating a revision of a data object .............................................................................................................192
4.2.3 Reverting to a previous object revision .......................................................................................................193
4.2.4 Creating/restoring a revision of a data record .............................................................................................194
4.3 Synchronization Plans .......................................................................................................................................198
4.3.1 Creating a synchronization plan ..................................................................................................................198
4.3.2 Managing synchronization plans .................................................................................................................202
How to export synchronization plans ................................................................................................................202
How to import synchronization plans ...............................................................................................................202
How to edit a synchronization plan ...................................................................................................................202
How to copy/paste a synchronization plan .......................................................................................................202
How to duplicate a synchronization plan ..........................................................................................................203
How to delete a synchronization plan ...............................................................................................................204
4.4 Stored Procedures ..............................................................................................................................................205
4.4.1 Creating a stored procedure .........................................................................................................................205
4.4.2 Managing stored procedures .......................................................................................................................208
CHAPTER 5
Security ......................................................................................................................................265
5.1 Security principle in Talend MDM .................................................................................................................. 266
5.2 By-default system roles ...................................................................................................................................... 266
5.2.1 Administrator users ..................................................................................................................................... 267
5.2.2 Interactive Users ......................................................................................................................................... 267
5.2.3 Web users .................................................................................................................................................... 267
5.3 Roles and access control .................................................................................................................................... 267
5.3.1 Creating a user role ..................................................................................................................................... 268
5.3.2 Managing user roles .................................................................................................................................... 271
How to export user roles ................................................................................................................................... 271
How to import user roles .................................................................................................................................. 271
How to browse a role version ........................................................................................................................... 271
How to edit a user role ...................................................................................................................................... 272
How to copy/paste a user role ........................................................................................................................... 273
How to duplicate a user role ............................................................................................................................. 274
How to delete a user role .................................................................................................................................. 275
APPENDIX A
Talend MDM Studio management GUI .................................................................................277
A.1 Main window of Talend MDM Studio ............................................................................................................ 278
A.2 Menu bar of Talend MDM Studio ................................................................................................................... 279
A.3 Toolbar of Talend MDM Studio ...................................................................................................................... 281
Purpose
This Administrator Guide explains how to manage Talend MDM functions in a normal operational
context. It describes how to administrate and set the parameters for Talend MDM through a single
console.
Information presented in this document applies to Talend MDM Studio releases beginning with 4.2.x.
Audience
This guide is for users and administrators involved in administrating and customizingTalend MDM.
The layout of GUI screens provided in this document may vary slightly from your actual GUI.
Typographical conventions
• The icon indicates an item that provides additional information about an important point. It
is also used to add comments related to a table or a figure,
• The icon indicates a message that gives information and recommendations about the
execution requirements. It is also used to refer to situations or information the user need to be aware
of or pay special attention to.
History of changes
The table below lists the changes made in the 3.2 release of the Talend MDM Studio Administrator Guide.
Your feedback is valuable. Do not hesitate to give your input, make suggestions or requests regarding this
documentation or product and find support from the Talend team, on Talend’s Forum website at:
http://talendforge.org/forum
This chapter introduces Master Data Management as the means to manage shared data in an
enterprise.
It also describes how Talend MDM Studio, Talend Integration Suite Studio and Talend Data
Quality Studio are integrated together to provide the first complete Master Data Management
solution that combines data stewardship, data profiling and quality, data integration and master data
functionalities on a single platform.
Talend MDM: Concepts & Principles
Introducing Master Data Management
Most large enterprises have a heterogeneous application portfolio, with fragments of often inaccurate,
incomplete and inconsistent data residing in various application silos. Companies wanting a consistent view
of their customer base often struggle to reconcile data across numerous operational systems. These issues cause
intelligent decision making to be difficult. The heart of these problems lies in the handling of shared data.
Master Data Management (MDM) is a comprehensive method of enabling an enterprise to link all of its critical
data to one "master file" that provides a common point of interest. Examples of master data include customer,
product, asset, location, employee, organizational unit. Data that is not shared between functions within an
organization is not master data.
MDM has emerged as a means to more efficiently manage shared data, eliminate redundancy, and create the
elusive "single version of the truth”. Unlike most Enterprise Resource Planning (ERP) systems which are often
monolithic, expensive and rigid, MDM is able to offer both consistency and agility, therefore providing a major
competitive advantage and return on investment (ROI).
As businesses strive to dramatically reduce costs, meet compliance reporting mandates, deliver increased
sales, and provide superior service to customers and suppliers, analysts have declared MDM as a solution
which will significantly contribute to these business priorities.
Master data is data describing a physical or virtual object and its properties. Master data is usually
described with nouns.
Typical master data can be:
• Physical: products, material, assets, customers, locations etc.
• Virtual: cost centers, planned buildings etc.
Transaction data is data describing an event (the change as a result of a transaction) and is usually described
with verbs. Transaction data always has a time dimension, a numerical value and refers to one or more
objects.
Talend MDM is a model-drive, non intrusive solution easily adaptable to specific business needs and quick
to implement. It has been specifically developed to address the challenges of creating and managing master
data for all types of organizations where data is hosted under various formats in various systems and can be
extremely volatile.
Talend MDM groups all master data of the company in a central hub. This standardized repository provides,
through using Data Models, the prerequisites against which data and updates are validated.
Talend MDM Studio presents a single platform that bundles data integration, data profiling and mastering and
governing data in the same Studio.
Talend MDM has all the core features a user needs for an MDM application: advanced modeling,
model-driven dynamic web interface, full-text search, event triggering, role-based security, etc.
Talend MDM is a model-driven, non intrusive solution easily adaptable to specific business needs and it
is quick to implement. It provides a complete set of features for mastering, governing and integrating data
throughout the enterprise.
Talend MDM groups all master data of the company in a central hub. This standardized repository
provides, via the use of Data Models, the prerequisites against which data and updates are validated
The chart below illustrates the main building blocks of Talend MDM.
The list below describes the main building blocks of Talend MDM:
• The MDM Studio - where administrators can setup and operate a centralized master data repository.
They can build data models that employ the necessary business and data rules to create single
master copy of the master data. This master data will be propagated back to target and source
systems.
• Central XML repository - where the master data is stored with the ability to index any XML
document.
• Shared repository - based on an SVN server, this is where project metadata is stored.
• The web-based interface - where business users and data stewards can search, display or edit master
data handled by the MDM Studio.
Building blocks available to your use differ depending on the MDM edition you have,
Community or Enterprise.
Talend MDM Studio provides the processing layers that ensure the right people have the right tools to
centrally model and manipulate master data. This key capability comprises the relevant features involved
in master data governance and stewardship.
Data governance is the process of defining the rules that master data has to follow. Data stewardship is the
process of making sure that the data follows those rules. This means that it is necessary to have both a
governance function, to demonstrate that the right controls are in place, and a stewardship function, to
ensure that the controls are enforced.
In Talend MDM, the governance and stewardship processes are available through two different user
interfaces. The first is an administration tool called Talend MDM Studio. The second is a web-based
interface called Talend MDM Web User Interface.
Users of Talend MDM Studio can set the governance rules that include who can read, create, update,
and delete data; which validity models are required for data; which privacy policies are enforced; and
which recovery provisions are required, to name a few. For more information about available
administration tasks, see Setting data governance rules on page 27, Advanced subjects on page 183 and
Security on page 265.
Users of Talend MDM Web User Interface, can carry out any manual interventions necessary to make
sure that the master data is clean, consistent, and accurate. Talend MDM Web User Interface also gives
access to a Data Stewardship Console that will allow the dedicated user to manually resolve data issues
that results from the matching and integration operations on the master data. For more information, see
Talend MDM Web User Interface User Guide.
The MDM solution offered by Talend is divided into various key capabilities. A comprehensive set of
tools and functions are available to fulfill these key capabilities. And the available tools and functions are
ALL accessible from one single interface called Talend MDM Studio.
Inside Talend MDM Studio the user will find:
• Data integration mechanisms: to insure that master data can be integrated from a wide range of
sources,
• Data profiling and quality mechanisms: that allows the profiling and cleansing of the source data
before loading it into the MDM hub.
• Master data management mechanisms: to build data models that employ the necessary business and
data rules to create one single master copy of the data which will be propagated back to the source
and target systems.
• Data resolution mechanism provided within Talend MDM Web User Interface through the Data
Stewardship Console: to deal with records that arrive, after the match operation, from different
data sources where a decision is necessary to be taken to come up with the golden master data
record. For more information, see Resolving data conflicts and data problems in Talend Data
Stewardship Console User Guide.
• Workflow editor: to design workflows using graphic tools. For information on how to create and
manage workflows, see Workflows on page 211.
Talend MDM Studio bundles Data Integration, Data Profiling and Data Quality and Master Data
Management in a single platform to enable the management of the complete data life cycle: from data
integration to quality assurance, through to the identification of master data and its governance.
For more information about accessing different key capabilities perspectives, see Multi-perspective
approach on page 23.
Talend MDM architecture can be broken down into functional blocks that enable interaction between users
and the MDM hub and their corresponding IT needs.
The diagram below illustrates the main architectural functional blocks within Talend MDM Studio.
• A business user creates or modifies a master data record from Talend MDM Web User Interface,
• A Trigger that matches the conditions set on the data validated against a data model kicks in to initialize
a service. Various services can be initialized including Processes (callprocess) such as data validation
or a human validation process, an enrichment process, a data integration process, etc.
• A Process may use one or more plug-ins. Each plug-in performs certain tasks on master data. The most
important plug-ins used by a given Process are CallJob, WorkflowTrigger and XSLT.
This chapter introduces Talend MDM Studio. It provides a short description of the Graphical User
Interface (GUI) and gives definitions of basic terms.
This chapter guides you through the basics for launching Talend MDM Studio and emphasizes the
use of multiple perspectives, those of data integration, data quality and Master Data Management,
in the same Studio.
Getting started with Talend MDM Studio
Important terms in Talend MDM Studio
When working with Talend MDM Studio and in order to understand its functional mechanism, it is important
to understand some basic vocabulary.
The following table defines the most essential terminology.
Term Description
Advanced Validation Extension to standard XML Schema to provide more advanced validation rules without
Rules programming.
Annotation Gives a description about the metadata that the administrator “attached” to an Entity in
the data model.
Consumer Consumes data FROM the MDM hub. A consumer may also be a provider.
Data Container Holds data of one or several business entities. Data containers are typically used to
separate master data domains.
Data governance The process of defining the rules that data has to follow within an organization.
Data Model Defines the attributes, validation rules, user access rights and relationships of entities
mastered by the MDM hub. The data model is the central component of Talend MDM.
A data model maps to a single entity that can be explicitly defined. Any concept can be
defined by a data model.
Data stewardship The process of validating master data against the rules (data models) that are set in the
MDM Studio.
Domain A collection of data models that define a particular concept. For instance, the customer
domain may be defined by the organization, account, contact and opportunity data
models. A product domain may be defined by a product, product family and price list.
Ultimately, the domain is the collection of all entities (data models) that relate to a
concept. Talend MDM can model any and many domains within a single hub. It is a
generic multi-domain MDM solution.
Entity Describes the actual data, its nature, its structure and its relationships. A data model can
have multiple entities.
Event Manager A service of the MDM Hub responsible for routing events thrown by the MDM hub to
trigger, evaluate their conditions, execute Processes, and trace active / completed / failed
actions for monitoring purpose.
MDM hub Defines a complete Talend MDM implementation. It consists of components for
Integration, Quality, Master Data Model, an XML DB interface and operational database,
Web Services, Roles Based Access Control, Workflow Engine, the Data Stewardship
components and MDM Web Interface and . The MDM hub is configured to meet different
business needs.
Process A Process is executed when the condition specified by the corresponding Trigger is
verified. A Process may have several "steps", each step performs a specific task such as:
update a record in the hub, run a Talend job, instantiate a workflow etc.
Provider Feeds data IN to the MDM hub.
Term Description
Record An instance of data defined by a data model in the MDM hub. Two records may be
compared and considered similar or a close match, in which case the records may be
linked and one may or may not survive.
Roles Based Access Defines rules for accessing tasks or hub data depending on the role of the person, system
Control (RBAC) or function accessing it.
Talend Studio The administration user interface built from Eclipse. It allows the administrator of the
system to manage and maintain the MDM hub and all associated Data Integration jobs
through a single console.
Triggers Condition for a Process to be executed, based on events thrown by the MDM hub.
Example of a Trigger condition: Agency created and Agency/Revenue > 100. An event
may cause more than one Trigger conditions to be true, which will result in several
Processes to be executed. Triggers are used to specify when specific Processes such as
notifications, duplicate checking, records enrichment, propagation to back end systems,
approval workflows etc. should be executed.
Version Partition of the MDM hub where part, or all, objects may be modified separately. The
MDM hub has at least one Version shared by all users, which is considered as the "main"
Version. Users typically create additional Versions for sandboxing modifications before
they are made available in the main Version. This may also be used to isolate a derived
Version of the MDM hub for a specific group of users. A Version can have its own copy
of models, entities, views, roles etc., or it may share objects with other Versions - for
instance it may have a specific Version of the Product entity but still share the same
model, roles and views of the main Version.
Versioning The ability to create and maintain successive revisions of any object manipulated by the
MDM Hub (entities, views, roles…), to trace changes and provide easy and safe recovery.
Each revision, or version, of an object can be perceived as a snapshot of the object at a
given time. It is possible to rollback to any version revision of the object in the past.
View A complete or a subset view of a record. A complete view shows all elements or columns
in an entity, while a subset view shows some of the elements or columns in an entity. A
View may restrict access to attributes of a record depending on who or what is asking for
the data.
...
2.2 Launching Talend MDM Studio and connecting to the MDM server
If you are using the standalone Talend MDM Studio, the steps to launch the MDM Studio
will slightly differ from the procedure below. This is due to the fact that you will not have access
to the data integration and data quality tools integrated in the MDM platform.
Talend MDM Studio is the administration and parameter setting tool for the MDM platform. It is the
Graphical User Interface for administrators and it is run as an Eclipse plug-in.
Prerequisite(s): Make sure to install JBoss and the MDM server before launching Talend MDM Studio.
For further information on the installation procedure using the .jar file, see Installing the MDM server
Installation Guide. For further information on the installation procedure using the .exe file, see Talend
• If required, follow the instructions provided to join the Talend community or click Register later to
proceed to the next step.
The MDM Studio login window opens prompting you to set a connection.
The launching procedures for Talend MDM Studio are the same as those for Talend
Integration Suite Studio. For more detailed information about launching the Studio, check
Talend Integration Suite Studio User Guide.
• Click the three-dot button and set a connection to a local or remote repository and then click OK to
proceed to the next step.
This repository will store all the derived data and metadata associated with the projects and items in the
project you create in the Data Integration perspective. It will also store different versions of project
items. For further information about connecting to a repository, see How to access one or multiple
Repositories in Talend Integration Suite Studio User Guide.
Option To...
Import demo project import the Demo project that includes numerous samples of
ready to use Jobs. This Demo project can help you understand
the functionalities of different Talend components.
Create a new local project create a local project where you can store all the Jobs and
business models you create in the Studio.
Import existing project(s) import any project you have locally.
as local
Delete local projects open a dialog box where you can delete any of the listed local
projects that you already created or imported and that you do not
need any more.
• Click Go to proceed to the next step that varies according to the option you select.
In this procedure, you want to create a new local project.
• In the [New project] dialog box, enter a name for the project, select a generation language and then
click Finish to close the dialog box.
The name of the new project displays in the Project field.
• Click Open.
A progress information bar displays. A welcome page displays from which you have direct links to user
documentation, tutorials, Talend forum, Talend exchange and Talend latest news.
• Click Start now to close the welcome page and open the main window of Talend MDM Studio.
Talend MDM Studio main window opens on the MDM perspective. For further information, see
Multi-perspective approach on page 23 and Switching between different perspectives on page 23.
• From the Studio main window, click the server login icon in the upper left corner to open the login
dialog box and connect to the MDM server.
You can have more than one active connection to the MDM server using different authentication
information or connecting to different master data Versions. For further information, see
Connecting to different Versions of master data on page 187.
• In the Description field, enter a description (or alias) for the MDM server to which you want to connect.
You can then choose this description or alias from different points within the Studio. This simplifies
deployment of MDM related integration and quality jobs. For further information, see Deploying Jobs
automatically on the MDM server on page 173.
• In the Server field, type in the address of the Talend MDM server to which you want to connect.
The server address is structured as follows:
-http://[server address]:[server port]/talend/TalendPort
• Enter respectively in the corresponding fields admin and talend as the user name and password.
When you connect to the Studio as a Talend administrator, you have only the rights to manage
roles and access control in the Studio, but you do not have any of the rights of the System-Admin.
For further information on user roles and access rights, see Security on page 265.
• In the Version list, if more than one exists, select the Version you want to connect to.
For more information about Versions, see Versions on page 184.
When you launch the Studio for the first time, there are no Versions in this list since none is yet
created. This way, you connect to the default Version that uses the[HEAD] objects and entities.
Any changes done through this connection will be reflected in the main MDM Version in the XML
repository.
When other master data versions are created on the MDM server, you still need to connect to the server
(default main version) first in order to have access to the version list in a second simultaneous connection.
• Click OK to close the dialog box and log in to the MDM server.
A progress bar indicates the progress of the loading operation of the objects on the MDM server. All
loaded objects display in the main window tree view.
You can repeat the last four steps in the above procedure to access as many MDM servers/Versions
as needed.
From this window, you can access both Data Integration and Data Profiler perspectives as well
as other applications integrated within Talend MDM Studio. For more information, see
Multi-perspective approach on page 23.
When you subscribe to Talend MDM Studio, you receive a license that will authorize you to use the Studio.
You can check the expiration date of the license you are using at any time in the Studio, and replace it with
a new one, if needed. Proceed as follows:
• From the Studio menu bar, select Help > About License.
The [About License] dialog box appears, showing the license expiration data and license text
content.
• To change the license, click Update the license and browse to your new license file, then click OK.
• In the [Confirm] dialog box that appears, click OK to restart the Studio so that your new license
takes effect.
The license file is automatically updated in the root directory of the Studio.
When you are working in local project, the perspectives available in your Studio depend on the license you
are using:
• If you are using a Master Data Management license, you have access to the MDM, Data Profiler
and Data Integration perspectives.
• If you are using a Data Quality license, you have access to the Data Profiler and Data Integration
perspectives.
• If you are using a Data Integration license, you have access to the Data Integration perspective.
When you connect to a remote project, the available perspectives depend on the type of the remote project:
• When you connect to a Master Data Management project, you have access to the MDM, Data
Profiler and Data Integration perspectives.
• When you connect to a Data Quality project, you have access to the Data Profiler and Data
Integration perspectives.
• When you connect to a Data Integration project, you have access to the Data Integration
perspective.
For more information about how to open a remote project, see How to connect to a remote repository in
Talend Integration Suite Studio User Guide. For more information about project types, see User and
project types in Talend Integration Suite Administration Center User Guide.
The MDM repository and master-records are both stored in the database. On startup, MDM compares the
initial database version - the version that was set when you first launched the software - with the current version
of the software, and applies all the migration tasks to upgrade the database to the correct version, if necessary.
However, not everything is in the database. What is not in the database must be copied or redeployed manually:
• Jobs,
• workflows,
• pictures,
• web resources.
You must delete your web browser cache and cookies whenever you change the version, or the Studio edition (CE
/ EE) of Talend MDM. Unpredictable behavior or display errors will occur if you do not.
Prerequisite(s): Make sure that both MDM servers are not running.
To migrate the eXist database to a newer MDM version, complete the following:
• In the Jboss folder of the old MDM version, browse to: jboss-4.2.2.GA >server > default > deploy >
exist-1.4.0-rev11706-TalendPatch.war > WEB-INF > data.
• Copy the data folder of the old MDM version and paste it in the same path in the new MDM version.
if you have pictures in your model, make sure to copy
jboss-4.2.2.GA/server/default/deploy/zz.50.ext.imageserver.war/upload to the same path on the
new server.
• Launch the MDM server and then Talend MDM Studio of the new MDM version as usual and you
should have access to the migrated data objects.
To migrate the Qizx database to a newer MDM version, complete the following:
• In the Jboss folder of the old MDM version, browse to: jboss-4.2.2.GA/server/default/data/Qizx.
• Copy all the files in the folder of the old MDM version and paste them in the same folder in the new
MDM version.
• Launch the MDM server and then Talend MDM Studio of the new MDM version as usual and you
should have access to the migrated data objects.
If you have Talend Jobs in your old MDM application, complete the following to migrate your Jobs:
• Switch to the Data Integration perspective and import the old workspace to retrieve the Jobs. For
further information, see How to import items from the remote repository in the Talend Integration
Suite Studio User Guide.
You can simply import your Jobs if they are exported in archive files from older MDM Studios.
For further information, see Importing/exporting items or Jobs in the Talend Integration
Suite Studio User Guide.
• Deploy the Jobs to the new MDM server one by one. For further information, see Deploying Jobs
automatically on the MDM server on page 173 or Deploying Jobs manually on the MDM server on
page 171.
You can also copy/paste the job scripts (.war or.zip) from their corresponding folder in the old
application to the same folder in the new application: jboss-4.2.2.GA/server/default/deploy for
wars and jboss-4.2.2.GA/jobox/deploy for zips. But this will not import the job design that you
may need at some point. Another limitation with this copy/paste mode is that it is recommended only
between two MDM servers that have the same major version (first number of the unique identifier of the
version). If the major versions differ, it is very likely that the MDM components will not work with the
new MDM Server. If you are migrating between 2 identical versions or 2 versions where only the minor
version differs, however, copying the wars or zips will be a lot faster than redeploying the jobs.
If you have one or several workflows in your old MDM application, you must re-import and redeploy the
workflow “.bar” files manually in your new MDM application. For further information, see Deploying a
workflow on the MDM server on page 234.
You can also move your data models, data containers, etc. to the new MDM server through simple
export/import operations available for each data object on the MDM server. For further information, see the
export/import sub-sections in the sections dedicated to different data objects.
When you install the MDM server, the database used with it is Qizx by-default; but you can always replace it
with the eXist database. For further information, see Using eXist with the MDM server on page 20.
You can also migrate your eXist master data objects from one MDM server to a Qizx database on another
MDM server.
Prerequisite(s): Make sure that both MDM servers are up and running. Both servers should have the same
release version.
To migrate master data objects from an eXist database to a Qizx database, complete the following:
• In the Jboss folder of any of the two MDM servers, browse to: jboss-4.2.2.GA > bin > dbtools >
migration.
• Save a copy of the dbmigration.properties.template file giving it the name dbmigration.properties, for
example.
• In the “from” list, set the connection information to the server that embeds the eXist database.
• In the “to” list, set the connection information to the server that embeds the Qizx database.
• On Windows, run dbmigration.bat and on Linux run dbmigration.sh giving to the command-line the
file name as a parameter: dbmigration.bat dbmigration.properties and
dbmigration.sh dbmigration.properties respectively.
This will migrate the data object from the first server to the second server according to the connection
information set in the file.
When you install the MDM server, the database used with it is Qizx by-default. You can still choose to replace
the Qizx database with the eXist database.
Prerequisite(s): Make sure that the MDM server is not running.
To use the eXist database with the MDM server, complete the following:
• In the Jboss folder of the MDM server, browse to: jboss-4.2.2.GA > bin.
This folder has few files including mdm.conf and mdm.conf.template.
• Save a copy of the mdm.conf file giving it the name mdm.conf.Qizx, for example.
This file will serve as a backup for your Qizx database settings which were automatically set when you
first launched your MDM server.
• Copy the content of the mdm.conf.template file and paste it in the mdm.conf file.
The mdm.conf.template file can serve as a backup for all system and database configuration
information.
• In the eXist DB Setting section, uncomment all the settings of the eXist database so that it will no longer
be ignored by the server.
• In the Qizx xml db settings section, comment all the settings of the Qizx database so that it will be
ignored by the server.
• Save this MDM configuration file.
• Relaunch your MDM server that the eXist database settings are taken in account.
Talend MDM Studio is a user interface for designing and administrating Talend MDM.
In the Talend MDM Studio main window, all data objects on the MDM server are listed in a tree view on the
left hand side of the window.
Below is an example of a Talend MDM Studio main window.
The table below describes available management options for MDM objects and items.
Option Description
Export Exports one or multiple data objects from Talend MDM Studio
to a specified folder.
Import Imports one or multiple data objects from a specified folder to the
current Talend MDM Studio.
Browse Browses the selected data object.
New Creates a new data object.
New Category Creates a new folder.
Versioning Creates subsequent Versions of the selected data object on svn.
Rename Modifies the name of the data object.
Edit Edits the selected data object.
Delete Deletes the selected data object.
Copy Copies the selected data object.
Paste Pastes the selected object(s).
Go Home Displays the main view of the tree view.
Go Back Restores the preceding view of the three view.
Go Into Displays in the tree view only the items of the selected object.
For more information about Talend MDM Studio Graphical User Interface, see Talend MDM Studio
management GUI on page 277.
If you are using the standalone MDM Studio, you will not have access to all integrated tools
including those of data integration, data profiling and data quality.
Talend MDM Studio offers a comprehensive set of tools and functions for all its key capabilities including
data integration, data profiling and data quality and master data management. These tools are ALL accessible
in different perspectives from one single platform.
The availability of perspectives in your Studio depeneds either on the license you have when you
are working in a local project, or on the type of the remote project itself when you are working in
remote projects. For further information, see Licenses and perspectives in the Studio on page 17.
There are different ways to switch between the data integration, data profiling or master data management
perspectives.
The options are as follows:
• In the upper right corner of the Talend MDM Studio main window, click the icon and then
select Other... to display the [Open Perspective] dialog box.
• Select the perspective you want to access, Data Integration for example, and then click OK to
close the dialog box. The Talend Integration Suite Studio main window displays.
It is also possible, using the Window - Show view... combination, to show views from other perspectives
in the open perspective.
Alternatively, you may also switch between different perspectives by doing the following:
• On the menu bar, click Window > Perspective to display a list from which you can select the
perspective to open.
Finally, you can also switch between available perspectives by simply clicking the corresponding icon on
the upper right corner of the main window.
For more information on how to manage the display of these icons, see Managing quick access icons for
different perspectives on page 26.
Every time you open a perspective in Talend MDM Studio, a corresponding icon is docked on the upper
right corner of the main window.
To manage the display of these quick access icons, do the following:
• Right-click the icon of the open perspective to display a contextual menu.
Option Description
Customize Opens a dialog box where you can
-customize shortcuts in the current perspective
-add command groups to the current perspective
Save As... Changes the text that displays next to the icon as a title for the current
perspective
Reset Puts back the current perspective to its default
Close Closes the current perspective
Dock on Places the icons of the open perspectives:
Top right: in the upper right corner of the Studio
Top left: in the upper left corner of the Studio
Left: to the left of the Studio
Show text Displays/hides text next to the icon
This chapter provides the information you need to define the rules master data has to follow. These
rules include how to partition data; what validity models are required for data; who can read, create,
update, and delete data and what services to be taken on data, to name a few.
Before starting any of the MDM management procedures included in this chapter, you need to be
familiar with the Talend MDM Studio Graphical User Interface (GUI). For more information,
see Getting started with Talend MDM Studio on page 9 and Talend MDM Studio management GUI
on page 277.
Setting data governance rules
MDM working principles
From Talend MDM Studio, you can define the rules that master data has to follow.
A typical sequence of setting governance rules in Talend MDM Studio involves the following steps:
• creating a data model containing one or multiple business entities. A business entity can be a supplier,
a country, a customer, etc. For more information, see Setting up a data model on page 29.
• defining a data container in the MDM hub (XML repository) where the master data is to be persist. For
more information, see Creating a data container on page 82.
• designing one or more Processes that perform transformations, data validation and other tasks.
Processes usually call a sequence of available plug-ins to project data from the source system to a
defined data container (XML repository). During projection, the data is transformed, cross-referenced
if needed and validated against the entity model. For more information on Processes, see How to create
a Process on page 130.
• designing one or more Triggers, rules for transforming data, that enable the event-based Processes to
be undertaken on specific data records. For more information, see Creating a Trigger on page 161.
After projection, the MDM hub holds valid data (i.e. model compliant data) that a data steward or a business
user can query and/or extract via Talend MDM Web User Interface. For more information, see the Talend
MDM Web User Interface User Guide.
Before a given business user is able to extract and query valid master data via the web-based User Interface,
you need to carry out the following step from Talend MDM Studio:
• creating one or more Views that specify:
-which records of an entity a business user has the right to search,
-which records of an entity a business user has the right to view,
-optionally which conditions should the content meet to be delivered as the result of a search (content
filters).
For more information on Views, see Creating a View on page 92.
Data models are the central component of Talend MDM Studio. They only define the master entities you want
to manage while master data records themselves are stored in data containers. For further information about
data containers, see Data Containers on page 81.
Data models contain entities which are master data objects (or business entities) such as a Person, a Product,
an Organization, etc. Each entity is defined by its attributes which are the entity characteristics, for example,
for the Person entity, the attributes could be name, date of birth, address, etc.
When creating a data model from Talend MDM Studio, you compartmentalize records and data to create the
most efficient data model possible. In addition, you can define the attributes, validation rules, user access rights
and relationships of entities mastered by the MDM hub.
Authorized users can create, import/export, edit, copy/paste and delete data models. For more information
about role management in Talend MDM Studio, see Security on page 265.
The following sections detail the procedural steps to carry out each of the above management options.
If you have the appropriate user authorization, you can create one or multiple data models for any domain
and store them in the MDM hub.
Once created, an authorized user of Talend MDM Web User Interface can validate hub data against these
data models. For more information, see Browsing a single entity (simple view) in a data container in
Talend MDM Web User Interface User Guide.
Few steps are necessary to complete the creation of a data model:
• creating business entities in the model,
• adding attributes in each of the created business entities,
• setting annotations to entities or attributes regarding access control, display issues, role
authorization, foreign key, etc.
You can as well define reusable types for any data model. These reusable types are sets of attributes that
can be used in one or more entities of the data model. Using reusable types is a way of factoring the data
model and managing the impact of changes since any modification on a reusable type will have an impact
on every entity that uses this type.
Once the data model is created, you can easily create Views over one or multiple business entities held in
this data model. Creating a View on a business entity allows a business user inside Talend MDM Web
User Interface to visualize specific records in this entity according to the defined criteria.
Once the data model is created, you can right-click any of the entities held in this data model
and automatically generate a default View for the selected entity.
For more information, see Views on page 91.
Once the creation of the data model is complete, you may need to design one or more Processes and create
a View to define search parameters on business entities and data records in the created data model.
For more information on Processes and Triggers, see Processes on page 116 and Triggers on page 161
respectively.
For more information on Views, see Views on page 91.
No spaces are allowed in the data model name. The OK button in the dialog box will be unavailable as long as
there is a space in the instance name.
• From the Role Name list, select the user role to which you want to grant access to this data
model.
Later when the System_Web and/or Order_Admin user roles are assigned to a specific user or
data steward through Talend MDM Web User Interface, such a user will have access to the
Location data model through the web application.
• From the Access list, select the access type you grant the selected user role, Read Only or
Read & Write.
• Click the button to add the role name and the access type to the list below and then click
OK to validate your changes and close the dialog box.
An editor displays in the Studio workspace where you can set up the parameters for the new
data model.
You can define your business entities, attributes, annotations, etc. in the upper part of the editor; while
the lower part will display the properties of any of the elements you select in the editor.
The editor also enables you to switch to the XML schema design and XML schema source through
clicking the Schema Design and Schema Source tabs respectively.
You can create the data model directly in the schema source, XML document, if you click
the Schema Source tab at the bottom of the editor.
Each time you create a new business entity, a default Primary Key record, called
subelement, and a Unique Key record that holds the entity’s name are automatically
created.
A Primary Key can be an integer but a Foreign key must always be a string. The server surrounds
Foreign Keys with square brackets to support compound keys.
• Repeat the above steps to create as many business entities as you need in your data model.
All business entities you create are listed in the Data-model panel.
To complete defining the business entities in your data model, you must create attributes in these
business entities. These attributes represent the characteristics of each of the business entities.
• Change the name to Id and set the minimum and maximum occurrences to 1 and then click OK
to close the dialog box.
• Right-click Id then select Add Element (after) from the contextual menu.
A dialog box displays.
• Enter a name and a minimum and maximum number of occurrences for the new attribute in the
corresponding fields.
Talend MDM Studio supports the definition of multi-occurrence attributes. You
can set the Maximum Occurrence value to a specific number or leave it blank, which
means the maximum number of occurrences is not bounded: in this case, the cardinality
will be [1..many] or [0..many].
The data model editor includes a Properties view that displays all the properties of the
selected entity/attribute in the data model. You can use this detail view to edit
dynamically any of the entity or attribute listed in the data model. For further
information, see How to use the Properties view in the data model editor on page 63.
• If required, right-click any of the listed element and select Edit element to open a dialog box
where you can change the parameters for the selected element.
You can switch to the XML schema design or XML schema source through clicking the Schema
Design and Schema Source tabs respectively.
Below is an example of an XML schema design:
The XML schema design presents the data model in a graphical format. This format shows related
entities in a graphical format and also implements an XSD editor.
• Double-click any of the items in the Types panel in the XML schema design.
A graphical format of the selected data model type displays.
• Click the icon in the upper left corner of the editor to go back to the XML schema index
view.
Because Talend MDM uses XSD as the language to support data modeling and to make it easier to
import existing XML schemas, you can use any of the XSD capabilities in any of the XML schema
views. Some management options are accessible from the XML schema design or XML schema
source if you right-click any of the entities/attributes listed in the view, or if you right-click in the view
itself.
You can also select any of the elements or types in the XML schema design to display its properties
in the Properties view. Then you can modify any of the listed properties in the view and reflect the
modification directly in the XML schema design.
Below is an example of an XML schema source:
You can carry out any modifications on the business entities or attributes directly in the
XML schema source.
After defining business entities and attributes in your data model, you must set annotations to these
entities or attributes regarding access control, display issues, role authorization, foreign keys, etc. The
following sections explain this in detail.
Option Description
Add Key To add a unique or a simple key to the selected entity.
Set the Labels To have labels in different languages for any business entity in the data model.
You can automatically generate the labels for new entities in any of the listed
languages. To generate a label automatically, select a language from the
Language list in the upper right corner of the data model editor and then
click the plus button.
Set the To have multilingual descriptions for different business entities in the data model.
Descriptions
Option Description
Set Lookup Fields To look up fields in the source system through a Process attached to a specific view
in order to enrich data on the fly. For example, when an interaction is done on a
business entity that is not persisted or not totally persisted in the XML repository. For
further information, see Running the view result through a Process (registry style
lookup) on page 105.For example,
Set the Primary To display specific data related to the business entity when accessing any data record
Key Infos in the business entity through Talend MDM Web User Interface.
Set the Roles with To grant one or several roles a Write access to the selected entity. For further
Write Access information, see How to define access control at the entity level (access control
annotation) on page 45.
Set the Roles with To prevent one or several roles from accessing the selected business entity through
No Access Talend MDM Web User Interface.
Set the Roles with To prevent one or more specific roles from creating data records in the selected entity
No Create Access through Talend MDM Web User Interface.
Set the Roles with To prevent one or more specific roles from sending data records to the trash can in
No Logical Delete the selected entity through Talend MDM Web User Interface.
Access
Set the Roles with To prevent one or more specific roles from deleting the data records definitely from
No Physical the selected entity through Talend MDM Web User Interface.
Delete Access
Set the Workflow To grant access, through Talend MDM Web User Interface, for one or
Access several roles to intervene in a workflow task associated with the selected business
entity. For further information about workflows, see Workflows on page 211.
Generate Generates a workflow on a specific business entity through a workflow wizard. For
Workflow further information, see Designing a workflow using the workflow wizard on page
211.
Set the Validation To set advanced rules that you can use to define constraints between attributes within
Rule an entity. For further information, see How to add validation rules on page 52.
Delete All To delete all validation rules from the entity.
Validation Rule
When you add any of the above annotation to a business entity, an Annotations node is added to the
business entity in the Data-model panel. This node lists all the annotations added to the business
entity.
As an example of how to set up an annotation to a business entity, the below procedure gives detail
information about how to add the Set the Primary Key Infos annotation.
• Right-click the business entity to which you want to add the annotation.
• In the contextual menu, select the annotation you want to apply to the selected business entity,
Set the Primary Key Infos in this example.
A dialog box corresponding to the annotation option you have selected displays.
• Click and select from the list the primary key information you want to display in Talend
MDM Web User Interface when a user access any of the records of the selected business
entity. In this example, you want each agency record to be headed with the agency name.
• Click the button in the upper right corner to add the selected xpath to the xpaths list and
then click OK to validate your changes and close the dialog box.
The set annotation displays under the selected business entity.
• Click the save icon on the toolbar or press Ctrl + S on your key board to save your
modifications.
When a business user access the data model holding this entity through Talend MDM Web User
Interface and browse for any of the data records in this entity, the detailed view of the data record will
have the agency name as its heading as defined in the above procedure.
Sections How to define access control at the entity level (access control annotation) on page 45 gives
a detail example about how to Set the Role with Write Access annotation at the entity level.
Option Description
Set the To have multilingual descriptions for different attributes in business entities.
Descriptions
Set the Labels To have labels in different languages for any attribute within a business entity in the
data model.
You can automatically generate the labels for new attributes in any of the
listed languages. To generate a label automatically, select a language from
the Language list in the upper right corner of the data model editor and then
click the plus button.
Option Description
Set the Foreign To link one attribute to another attribute or to a business entity. For further
Key information, see How to add a foreign key: linking entities together on page 55.
A Primary Key can be an integer but a Foreign key must always be a string.
The server surrounds Foreign Keys with square brackets to support
compound keys.
Set the Foreign To filter foreign keys by values extracted from the current record through using the
Key Filter standard xpath predicate of the relevant element. For further information, see How to
add a foreign key filter on page 56.
Set the Foreign To display the data related to the foreign key.
Key Infos
Set the Roles with To grant one or several roles a Write access to the selected entity. For further
Write Access information, see How to define access control at the attribute level (access control
annotation) on page 48.
Set the Roles with To deny access to the selected attribute for one or several roles.
No Access
Set the Visible To define whether to hide/show the selected attribute from a data record in Talend
Rule MDM Web User Interface for a specific role.
Set the Default To define a default value of the selected attribute in order to display it automatically
Value Rule when a business user creates a new record through Talend MDM Web User
Interface.
Set the Workflow To grant access for one or several roles to intervene in a workflow associated with the
Access selected attribute. For further information about workflows, see Workflows on page
211.
Set the Facet To set multilingual facet error messages.
Message
Set the display To decide the format according to which you want to display/insert, in a specific
format language, dates or numbers in master data records in Talend MDM Web User
Interface.
To define the date/number format, you must use a syntax that is based on the
java.util.Formatter class. For further information on this calss, see
http://download.oracle.com/javase/6/docs/api/java/util/Formatter.html.
For an example on how to set the display format, see How to set the display format
of dates and numbers on page 60.
When you add any of the above annotation to an attribute in a business entity, an Annotations node
is added to the attribute in the Data-model panel. This node lists all the annotations added to the
selected attribute.
To set up an annotation to any of the attributes you create in a business entity, do the following:
• In the Data-model panel, right-click the attribute to which you want to add the annotation.
• In the contextual menu, select the annotation you want to apply to the selected attribute.
A dialog box corresponding to the annotation option you have selected displays.
For example, if you select Set the Labels to have labels in different languages for a selected attribute,
the following dialog box displays.
• From the list to the left, select a language and then enter a label in the field to the right.
• Click the icon in the upper right corner to add the defined label to the Language/Label list
and then click OK to validate your changes and close the dialog box.
The set annotation displays under the selected attribute.
• Click the save icon on the toolbar or press Ctrl + S on your key board to save your
modifications.
You can automatically generate the labels for new attributes in any of the listed
languages. To generate a label automatically, select a language from the Language list
in the upper right corner of the data model editor and then click the plus button.
Section How to define access control at the attribute level (access control annotation) on page 48 give
detail examples about how to Set the Role with Write Access annotation.
How to define access control at the entity level (access control annotation)
Talend MDM offers granular security for entities. This access control is done inside the data model
through setting up specific annotations.
Prerequisite(s): You have already created a data model and the business entities and attributes in the
data model. For further information, see How to create a data model on page 29 and How to create
business entities in the data model on page 31.
Consider as an example that your data model holds the following entities: Agency and Agent and that
you have created a new role called General_Manager; for further information about roles, see
Creating a user role on page 268. You want to grant the General_Manager role a write access to the
Agency entity and all its attributes.
To define access control on a business entity, complete the following:
• In the data model editor, right-click the Agency entity and select Set the Roles with Write
Access.
• Click the arrow in the upper right corner of the dialog box to display a list of the roles defined
in the Studio.
• Select from the list the role, General_Manager in this example, to which you want to grant a
write access to the selected business entity.
• Click the icon to add the selected role to the Roles list.
The set role recursively check box is selected by default. This will propagate the security
setting to all subelements of the selected node: in this case, all attributes in the Agency
entity. The security is set at the entity and attributes levels. For further information on
how to set security only on the attributes level, see How to define access control at the attribute
level (access control annotation) on page 48.
• If required, do the same to grant access to as many roles as needed and then click OK to validate
your changes and close the dialog box.
The Annotation node below the Agency entity expands to show the role(s) that have access to
the selected entity.
The Annotation nodes below each attribute of the Agency entity will also list the defined role(s) since
the set role recursively check box is selected.
Later, when a user is assigned one of these listed roles through Talend MDM Web User Interface,
he/she can have a write access to the Agency entity and all its attributes.
If you do not want to give the General_Manager role access to all attributes in the Agency entity,
complete the following:
• In the data model editor, expand Agency and browse to the attribute to which you do not want
to give write access for the General_Manager role, the City attribute in this example.
• Right-click City and select Set the Roles with Write Access to open the corresponding dialog
box.
• Select General_Manager from the list and then click the button.
The role is deleted from the Roles list.
• Click OK to validate your changes and close the dialog box.
The Annotation node below the City attribute expands to show the role(s) that have access to
the selected attribute. The General_Manager role has already been removed from the list.
• If required, do the same to block the General_Manager access to as many attributes as needed.
This way the General_Manager role will have access to all attributes in the Agency entity except the
City attribute.
How to define access control at the attribute level (access control annotation)
Talend MDM offers granular security down to the attribute level. This access control is done inside
the data model through setting up specific annotations.
Prerequisite(s): You have already created a data model and the business entities and attributes in the
data model. For further information, see How to create a data model on page 29, How to create
business entities in the data model on page 31 and How to add attributes to the business entity on page
33.
Consider as an example that your data model holds the following entities: Agency and Agent and that
you have created a new role called General_Manager. For further information about roles, see
Creating a user role on page 268. You want to grant this role a write access only to the
CommissionCode attribute in the Agent entity.
To define access control on a specific attribute in a business entity, complete the following:
• In the data model editor, expand the Agent entity and browse to the CommissionCode attribute.
• Right-click CommissionCode and select Set the Roles with Write Access.
• Click the arrow in the upper right corner of the dialog box to display a list of the roles defined
in the Studio.
• Select from the list the role, General_Manager in this example, to which you want to grant a
write access to the CommissionCode attribute.
This way, the General_Manager role has a write access only to the CommissionCode attribute of the
Agent business entity.
reference to the agency rating (list of values) in a workflow process. For further information on
workflows, see Workflows on page 211.
To add a simple rule to a business entity, complete the following:
• In the data model editor, right-click the Rating attribute and select Change to a Simple
Type.
A dialog box displays.
• Select the Custom option and then enter RatingType in the Type field.
• Click OK to validate your changes and close the dialog box.
The RatingType simple rule displays under the selected attribute in the data model editor
and a reusable type of the same simple rule is created in the Reusable types list.
• Right-click the simple rule in the Reusable types panel and select Edit Enumeration.
A dialog box displays.
• In the New Item field, enter the first agency rating value and then click the plus button to
clear the text field and add the value to the list.
• Repeat the operation to add as many values as needed and then click OK to close the dialog
box.
The added values display under the simple rule in the data model editor.
• Enter a name for the validation rule, CheckId in this example, and then click OK to close
the dialog box.
The validation rule displays under the Annotations node of the Agent attribute.
• Double-click the validation rule to open the [Set the Validation Rules] dialog box where
you can set the parameters of the validation rule.
• Click the icon to add a line in the table and then click in the Type column and select
from the list assert or report according to what type of rule you want to set.
• Click in the Context XPath column and set the Xpath to the attribute for which you want
to create a validation rule, Id in this example.
• Click in the Expression column and then click the three-dot button to open the expression
editor.
• Set the validation rule using the expression editor. Check the XPath functions online help,
http://www.w3.org/TR/1999/REC-xpath-19991116/#corelib, for information on the right
methods to use.
In this example, you need to check that the agent Id corresponds to the concatenation of
the three first characters of the Firstname attribute and the two first characters of the
Lastname attribute.
The dot at the beginning of the rule refers to the context attribute, Id in this example. You
must then use the concat function to concatenate the attributes characters which are
extracted with a substring function.
• Click OK to close the expression editor.
The validation rule displays in the Expression field.
• In the [Set the Validation Rules] dialog box, click in the Message column and then click
the three-dot button to open a dialog box. Here you can set up the error message that should
be displayed when trying to save a record that has an agent Id that does not correspond to
this validation rule.
• Select the message language from the language list and then enter the error message and
click the plus button to add the message to the list.
• Repeat the operation to add error messages in different languages, if required and then click
OK to close the dialog box.
The defined error messages display in the Message column in the [Set the Validation
Rules] dialog box.
• In the [Set the Validation Rules] dialog box, click OK to validate your changes and close
the dialog box.
• Save your data model.
Prerequisite(s): You have already created data models, business entities and attributes in the data
model. For further information, see How to create a data model on page 29, How to create business
entities in the data model on page 31 and How to add attributes to the business entity on page 33.
Consider as an example that your data model hold the following entities: Agency, Agent and Region.
You want to link the two entities Agency and Region together in order to represent that an Agency
belongs to a Region. Consequently, Agency will have a new attribute that points to a Region.
To set a foreign key, complete the following:
• Add a new Region attribute to the Agency entity as outlined in How to add attributes to the
business entity on page 33
• Right-click Region and select Set the Foreign Key from the list.
[Set the Foreign Key] dialog box displays.
• Click the three-dot button to open the [Select Xpath] dialog box.
• Browse to the Region primary key Id and then click Add in the bottom of the dialog box to
proceed to the next step.
The Xpath to the foreign key displays in the [Set the Foreign Key] dialog box.
• Click OK to close the dialog box.
The foreign key is set to Region/Id under the Annotations node of the Region attribute in the
data model editor.
• Click the icon to add a line to the table where you can define the foreign key filter.
• Click in the XPath column and then click the three-dot button to open a dialog box where you
can select the XPath on which to set the foreign key filter.
• Select Region > Country and then click Add in the dialog box.
The XPath is set to Region/Coutry.
• Click in the Operator column and select an operator from the list, Contains in this example.
• Click in the Value column and then click the three-dot button to open a dialog box where you
can select the value on which to set the foreign key filter.
• Select Agency > Country and then click Add in the dialog box.
The foreign key filter value is set to Agency/Coutry.
In this example, you want to filter foreign keys based on the Country attribute.
• Click OK to close the dialog box.
The defined foreign key filter displays under the Annotation node of the Region element.
• Click the save icon on the toolbar or press Ctrl + S on your key board to save your
modifications.
Now in any agency record in Talend MDM Web User Interface, every time a user clicks on the
foreign key icon next to the Region field, the list will only include the foreign keys based on the
Country attribute.
You must use a syntax based on the java.util.Formatter class to define the display of dates and numbers in a
specific language. For further information about this class, see
http://download.oracle.com/javase/6/docs/api/java/util/Formatter.html.
Prerequisite(s): You have already created data models, business entities and attributes in the data
model. For further information, see How to create a data model on page 29, How to create business
entities in the data model on page 31 and How to add attributes to the business entity on page 33.
Consider as an example that your data model holds the Agent entity and that you have created an
attribute in this entity, StartDate, to display the start date of the agent.
To set the display format of dates in the English and French languages, complete the following:
• In the data model editor, expand the Agent entity and browse to the StartDate attribute.
• Right-click StartDate and select Set the display format.
A dialog box displays.
• From the language list, select the language for which you want to define the date format.
• In the field to the right, enter the syntax for the date format according to the java.util.Formatter
class.
In this example, enter %tc for the English language and %TD for the French language.
• Click the plus button to add each of the two lines to the list below the fields, and then click OK
to close the dialog box.
The two annotations display below the selected attribute.
When a business user accesses the Agent record through Talend MDM Web User Interface, the start
date will display as the following in English Mon Jul 12 00:00:00 CST 2010:
You can follow the same procedure to set the display format of numbers. For example, assume that the
actual value in the database is 2.5 (XSD standard); if you define the format in English as the following
%-10.4f, the result in the web application will be 2.5000. And if you define the format in French as
the following %-10.4f, the result in the web application will be 2,5000.
• Click, any of the tabs in the view to display the corresponding properties and modify them
according to your needs.
All your modifications will reflect in the data model editor on the fly.
Talend MDM introduces a true object-oriented data model that allows you to use inheritance and
polymorphic characteristics when defining your data models. This object-oriented approach enables you
to define inheritance hierarchies (inheritance trees) in the data models you create in Talend MDM Studio.
For further information on setting up a data model, see Data Models on page 28.
Inheritance allows you to extend an existing type to add or override specific elements while inheriting the
attributes from the main entity. This summarizes the two main concepts included in inheritance:
generalization and specialization. Generalization (or abstraction) is the process of sharing attributes from
the main type and inherit them automatically in other subtypes (inheritance types). In contrast to
generalization, specialization means creating new subtypes from an existing main type by adding
attributes specific to each subtype.
Polymorphism allows you to set the type of an element to an abstract generic type and the concrete type
is determined at run time. For instance you can have an address established and at runtime define it as a
US or European address.
Inheritance and polymorphism are supported for both attributes and entities. The sections below gives
examples for both cases.
• Change the name to Id and set the minimum and maximum occurrences to 1 and then click OK
to close the dialog box.
• Right-click Id then select Add Element (after) from the contextual menu.
Add Firstname, Lastname, DOB, PostalCode, Resolution and Address as attributes of the
Person entity as outlined in How to add attributes to the business entity on page 33.
Your data model should look as the following.
• Right-click Address and select from the list Change to a complex type.
A dialog box displays.
The complex type enables you to define a complete structure, as you need for an address, and not only
a single element.
• Enter a name for the complex type and then select the Sequence option in order to list the
address elements in the defined order.
• Click OK to validate your changes and close the dialog box.
The complex type is listed under the Address attribute and also in the Reusable types panel.
You need now to create the elements in your address.
• Expand AddressType and rename subelement to Line1.
• Right-click Line1 and then select Add Element (after) from the contextual menu. Add two
other elements to the address: Line2 and City.
The elements in the address types are now created below the Address attribute and also in the
Reusable types panel.
Now you need to create the inheritance type(s) for the US and EU addresses. The EUAddresType
extends the main AddressType by adding a postal code and a country, whereas theUSAddressType
extends the main AddressType by adding a zip code and a state.
• Right-click in the Reusable Types panel and select Create a Complex Type.
A dialog box displays.
This inheritance type will derive the three elements in the main AddressType. You can now add
elements specific to this type in order to have a complete address format for Europe.
• Change subelement to PostalCode and then add a Country element.
Follow the same steps in the Reusable type panel to create another inheritance type that you call
USAddressType that inherits the main AddressType. Add a ZipCode and State elements in order to
complete the address format for the USA.
• Expand Party and its group type, right-click subelement then select Edit Element from the
contextual menu.
A dialog box displays.
• Change the name to code and set the minimum and maximum occurrences to 1 and then click
OK to close the dialog box.
• Expand Company and its group type, and then change subelement to name. You will only need
a name for the company.
• Double-click Companytype to open the [Complex Type Properties] dialog box.
• From the complex type list, select PartyType and then click OK to close the dialog box.
This will add the PartyType as a group type below Company. Here, you have defined
inheritance between the Company and Party entities where Company extends Party.
• Do the same to define inheritance between the Individual and Party entities where Individual
extends Party.
• Define two attributes in the group type of the Individual entity: firstName and lastName. You
will need these two elements for an individual.
Your data model should look as the following.
The Company and Individual entities extend the Party entity through using the PartType group. All
complex types are also listed in the Reusable types panel.
Now, you can create a polymorphic foreign key which by pointing to the Party entity can also points
to the Individual or Company entities since both extend Party.
• Create a supplier attribute in the Product entity.
• Right-click supplier and select Set the Foreign Key from the list.
A dialog box displays.
• Click the three-dot button and browse to set an Xpath to the entity to which you want the
foreign key to point.
• Click Add and then OK to close the dialog boxes.
The foreign key path is listed below the supplier attribute.
You have achieved inheritance here at the entities level by adding the Party group type to the Company
and Individual entities.
Polymorphism is also achieved when, at runtime, the actual Party element can be expanded into
Individual or Company when a business user tries to create a data record through Talend MDM Web
User Interface. Business users will also have a foreign key list that displays Individualtype and
CompanyType. From this list they can choose any of the extended types you defined in Talend MDM
Studio.
An authorized user can also import/export, copy/paste and delete created data models from Talend MDM
Studio.
It is also possible to import and share MDM complete projects or only a data model or part
of the data model from the community web page, Talend Exchange. For further information,
see Projects/objects on Talend Exchange on page 260.
If you want to export all data objects on the MDM server and not only data models, click
the Select All button to select the check boxes of all data objects in the list.
• To export the selected data models in a folder, select the Select root directory option and click
the three-dot button next to the option.
A dialog box displays.
• Browse to where you want to save the data model and click OK to close the dialog box.
The path to the target folder is set in the field next to the selected option.
• In the [Export items] dialog box, click Finish to validate your changes and close the dialog
box.
A folder holding all data models on the current MDM server is created in the specified path.
An XML file that lists all exported elements is also created.
• To export the selected data models in a zip file, select the Select archive file option in the
[Export Items] dialog box and then click the three-dot button next to the option.
A dialog box displays.
• Browse to where you want to save the data model archive file.
• In the File Name field, enter a name for the archive file and then click Open to close the dialog
box.
The path to the target archive file is set in the field next to the selected option.
• In the [Export items] dialog box, click Finish to validate your changes and close the dialog
box.
An archive file holding all data models on the current MDM server is created in the specified
path. An XML file that lists all exported elements is also created.
If you want to export only one data model of all those on the MDM server, expand Data
Model in the [Export items] dialog box and then select the check box next to the name
of the data model you want to export and proceed as usual.
• Select the root directory or archive file option according to whether the data models you want
to import are saved in a folder/archive file and then click the three-dot button next to the option.
A dialog box displays.
• Browse to the folder/archive file holding the data models and click OK/Open to close the
dialog box.
• In the [Import Objects] dialog box, click Finish to validate your changes and close the dialog
box.
All data models in the folder/archive file are exported and listed under the Data Model node
in the current Talend MDM Studio.
If you want to import only one data model of all those saved in the folder/archive file,
expand Data Model in the [Import Objects] dialog box and then select the check box
next to the name of the data model you want to import and proceed as usual.
• Click any revision ID in the RevisionID list to display the corresponding Version in the
Version list.
You can also edit any element in the data model from the Properties view in the data model editor.
For further information, see How to use the Properties view in the data model editor on page 63.
• Enter a name for the new data model and click OK to validate the changes and close the dialog
box.
The new data model is listed under the Data Model node in the MDM Server tree view.
• Enter a name for the new data model and click OK to validate the changes and close the dialog
box.
The new data model is listed under the Data Model node in the MDM Server tree view.
You can also duplicate the data object if you drop it onto its parent node in the MDM
Server tree view.
• Click OK to close the dialog box and delete the selected data model from the MDM Server
tree view.
To delete a business entity or an attribute in a data model:
• In the tree view, expand the Data Model node and double-click the data model from which you
want to delete a business entity or an attribute.
The corresponding editor opens on the selected data model.
• Right-click the business entity or the attribute in the business entity you want to delete and
select the delete option relevant to your selection.
The selected business entity or attribute is deleted from the data model editor.
Talend MDM Studio allows you to persist master data in one or several containers within a single MDM hub
(XML repository). Data containers are then “partitioned” to help you organize the master data, typically by
domains.
A data container in the MDM Hub can hold data from multiple entities. An entity in a data container is not
visible from another data container.
Authorized users can create, import/export, edit, copy/paste, duplicate and delete data containers. For more
information about role management from Talend MDM Studio, see Roles and access control on page 267.
You can create, import/export, edit, copy/paste, duplicate and delete data containers.
The following sections detail the procedural steps to carry out each of the above management options.
From Talend MDM Studio you can create one or several data containers in the MDM Hub in which you
can load data using the tMDMInput and tMDMOutput components embedded in Talend Integration
Suite Studio. At creation time, you can grant certain user roles access to this new data container.
For more information on the MDM components, see Talend Integration Suite Studio Components
Reference Guide.
Later, an authorized business user can write/edit data in the created container using Talend MDM Web
User Interface. For more information, see Browsing a single entity (simple view) in a data container in
Talend MDM Web User Interface User Guide.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio. You have
the appropriate user authorization to create a data container.
To create a data container and grant user roles access to this data container, complete the following:
• In the MDM Server tree view, right-click Data Container and select New from the contextual
menu.
The [New Data Container] dialog box displays.
No spaces are allowed in the data container name. The OK button in the dialog box will be unavailable as long
as there is a space in the instance name.
• From the Role Name list, select the user role to which you want to grant access to this data
container.
Later when the System_Web and/or Order_Admin user roles are assigned to a specific user or data
steward through Talend MDM Web User Interface, such a user will have access to the Location
data container through the web application.
• From the Access list, select the access type you grant the selected user role, Read Only or Read
& Write.
• Click the button to add the role name and the access type to the list below and then click OK
to validate your changes and close the dialog box.
A editor for the newly created data container displays in the workspace.
• If needed, enter a description for the newly created data container and then click the save icon on
the toolbar or press Ctrl + S on your key board to save your changes.
The newly created data container is listed under the Data Container node in the MDM Server tree view.
In order to populate the data container with your data, you can use the Data Integration
perspective in the Studio to design a Job using Talend MDM components. For further
information on the MDM components, see Talend MDM components in the Talend
Integration Suite Components Reference Guide.
For an MDM Demo example, see http://talendforge.org/wiki/doku.php?id=mdmce:demo and
http://talendforge.org/wiki/doku.php?id=mdm:demo.
Some of the data records in the MDM hub are the result of merging /resolving different information coming
from heterogeneous sources. Resolving such information is done through the Talend data stewardship
console and then the master data record is written in the hub using some MDM components in a Talend
Job. For further information, see the Talend Data Stewardship Console User Guide.
Sometimes these task identifications are not correct or even not set at all. Talend MDM Studio enables
you to show and set/edit these task identifications attached to the data records.
Prerequisite(s): You have already connected to the MDM server in Talend MDM Studio. A data
container, to which you have the right to access, exists and is populated with data records. Some of these
data records come from the data stewardship console.
To edit a task identification from the data container, complete the following:
• In the MDM Server tree view, expand the Data Container node.
• Right-click the data container that holds the data records that come from the data stewardship
console, and then select Browse from the contextual menu.
The data container editor displays.
• If required, set a search criteria according to your needs, or leave the fields empty to display all the
data records in the container.
• Select the Show Task ID check box and then click the icon.
The lower part of the editor lists all data records that match the search criteria along with their creation
dates, the business entities they were created in, their unique keys and finally the task identification.
• Right-click the data record for which you want to edit/set the task identification.
• Set the task identification if it does not exist or edit it if it is not correct, and then click OK to
validate your modifications and close the dialog box.
The task identification displays in the TaskId column next to the selected record.
An authorized user can also import/export, copy/paste and delete created data containers from Talend
MDM Studio.
It is also possible to import and share MDM complete projects or only a data model or part
of the data model from the community web page, Talend Exchange. For further information,
see Projects/objects on Talend Exchange on page 260.
You can set one or several search criteria to narrow your search on the returned data records.
• Click the From arrow to display a calendar where you can select a start date for the data records
created in the selected data container.
• Click the To arrow to display a calendar where you can select an end date for the data records
created in the selected data container.
It is possible to click the browse button directly after setting the time range to base your
search only on one criterion. Otherwise, you can use one or more of the other search
criteria to narrow down your search on the returned data records.
• From the Entity list, select a business entity from the list to search data records only in the
selected business entity.
• In the Keys field, enter the unique key for the entity you want to search.
• In the Keywords field, enter a search keyword to include only matching values in the returned
data records.
• If you want the record list to show the task identification, select the Show Task ID check box.
Some of the data records in the MDM hub are the result of merging /resolving different
information coming from heterogeneous sources. Resolving such information is done through
Talend Data Stewardship Console and then the master data record is written in the hub using
some MDM components in a Talend Job. For further information, see the Talend Data
Stewardship Console User Guide.
For further information about editing the task identification, see Editing a task identification
from the data container on page 83.
You can click the Source tab at the top of the dialog box to view the data record in its
XML format.
The steps to export one or multiple data containers are similar to those for any other data object in the
MDM Server tree view. For detailed information on how to export data containers, see How to export
data models on page 74.
• Enter a name for the new data container and click OK to validate the changes and close the
dialog box.
A dialog box displays. This dialog box list all the business entities held in the source data
container.
• Select the business entities you want to copy in the new data container and then click OK.
The new data container that holds the selected business entities is listed under the Data
Container node in the MDM Server tree view.
• Enter a name for the new data container and click OK to validate the changes and close the
dialog box.
A dialog box displays. This dialog box list all the business entities held in the source data
container.
• Select the business entities you want to copy in the new data container and then click OK.
The new data container that holds the selected business entities is listed under the Data
Container node in the MDM Server tree view.
You can also duplicate the data object if you drop it onto its parent node in the MDM
Server tree view.
• Click OK to close the dialog box and delete the selected data container from the MDM Server
tree view.
3.4 Views
A View is one of the possible ways to query the MDM hub. When you create Views in Talend MDM Studio,
you specify:
From Talend MDM Studio you can easily create simple views over the same business entity or composite
Views over multiple business entities held in the same data model.
You can also create multiple simple Views over the same business entity to allow users to
have different predefined accesses on the records by defining different search criteria in each
View. The # character is used to create multiple views on the same entity; for example two
views on the Agency entity may have the following names: Browse_items_Agency and
Browse_items_Agencynt#UK where the second View will give access only to agencies based in the
United Kingdom.
Creating a simple View on a business entity allows a business user inside Talend MDM Web User
Interface to visualize specific records in this entity according to the defined criteria. For more information
on how to view/search elements in a specific business entity, see Browsing a single entity (simple view) in
a data container in Talend MDM Web User Interface User Guide.
Creating a composite View on several business entities allows a business user inside Talend MDM Web
User Interface to visualize specific records in multiple entities according to a join clause. A composite
View can provide greater insight on master data than a simple View. For more information, see Browsing
multiple entities (composite view) in a data container in Talend MDM Web User Interface User Guide.
It is also possible to attach a Process to the View in order to transform/enrich data, on the fly,
by looking up fields in the source system. For further information, see Running the view result
through a Process (registry style lookup) on page 105.
The below sections explains how to create each of these two types of Views.
As the simple View is concerned with only one specific entity, its name must follow a
specific pattern that includes the name of the entity: Browse_items_[name of the business
entity]. The dialog box displays with the by-default text Browse_items.
• Enter a name for the new View and then click OK to close the dialog box.
• Click the three-dot button to open a dialog box where you can select the entity for which you
want to create a View and then click OK to close the dialog box.
An editor for the newly created View opens in the workspace.
You can automate the above steps to create a default View. All what you need to do is to
select one or more entities in the data model, right-click the selection and then click
Generate Default Browse Items Views. A default View will be created and listed under
the View node in the MDM Server tree view. You can then proceed as below in order to define
the view criteria.
• Click the three-dot button next to Description to open a dialog box where you can add
multilingual labels to the new View.
• From the list to the left, select a language and enter the corresponding label in the field to the
right.
• In the Viewable Business Elements area, click the button to add a new XPath line to the
table.
• In the new XPath line, click the three-dot button to open a dialog box.
By default, only the selected entity of all the entities that constitute the data model will be listed
in the dialog box and its name will display in the Filter field.
You can list multiple entities in the dialog box if you type in the Filter field the text
according to which you want to filter business entities. This is a search-as-you-type filter
where entities are instantly filtered as you type your search string.
• Select the elements to be retrieved by the View being defined and repeat the procedure to add
as many elements as needed.
• In the Searchable Business Elements area, click the button to add a new XPath line to the
table.
• In the new XPath line, click the three-dot button to open a dialog box where you can select the
element to be located.
By default, only the selected entity of all the entities that constitute the data model will be listed
in the dialog box and its name will display in the Filter field.
You can list multiple entities in the dialog box if you type in the Filter field the text
according to which you want to filter business entities. This is a search-as-you-type filter
where entities are instantly filtered as you type your search string.
• In the Where Conditions area, click the button to add a new XPath line to the table.
• In the new XPath line, click the three-dot button to open a dialog box where you can select the
element you want to define conditions on.
You can list multiple entities in the dialog box if you type in the Filter field the text
according to which you want to filter business entities. This is a search-as-you-type filter
where entities are instantly filtered as you type your search string.
You can define conditions with various operators listed in the Operator column. You can
also join elements using different operators listed in the Predicate column.
• Click the save icon on the toolbar or press Ctrl + S on your key board to save your changes.
The newly created View is listed under the View node in the MDM Server tree view.
Using Talend MDM Web User Interface, an authorized business user can now visualize specific
records in this entity according to the defined criteria. For more information on how to view/search
elements in a specific business entity, see Browsing a single entity (simple view) in a data container
in Talend MDM Web User Interface User Guide.
You can attach a Process to the View in order to transform/enrich data, on the fly, by
looking up fields in the source system. For further information, see Running the view
result through a Process (registry style lookup) on page 105.
As the composite View is not concerned with only one specific entity, its name does not
have to follow a specific pattern as it is the case with the simple View name.
• Enter a name for the new View and then click OK to close the dialog box, AgentAgency in this
example.
An editor for the newly created View opens in the workspace.
• Click the three-dot button next to Description to open a dialog box where you can add
multilingual labels to the new View.
• From the list to the left, select a language and enter the corresponding label in the field to the
right.
• In the Viewable Business Elements area, click the button to add a new XPath line to the
table.
• In the new XPath line, click the three-dot button to open a dialog box.
• From the Data Models list, select the data model holding the entities on which you want to
create the composite View.
All entities constituting the model are listed in the dialog box.
You can filter the entities you want to display in the dialog box if you type in the Filter
field the text according to which you want to filter business entities. This is a
search-as-you-type filter where entities are instantly filtered as you type your search
string.
Consider as an example that your data model has the two entities: Agency and Agent. You want to
create a composite View that joins elements in both entities to show multiple data records for the same
agent if he/she is attached to multiple agencies.
• In the Searchable Business Elements area, click the button to add a new XPath line to the
table.
• In the new XPath line, click the three-dot button to open a dialog box where you can select the
entities or elements to be located.
You can filter the entities you want to display in the dialog box if you type in the Filter
field the text according to which you want to filter business entities. This is a
search-as-you-type filter where entities are instantly filtered as you type your search
string.
• In the Where Conditions area, click the button to add a new XPath line to the table.
• In the new XPath line, click the three-dot button to open a dialog box where you can select the
entities/elements on which you want to define a join condition.
You can filter the entities you want to display in the dialog box if you type in the Filter
field the text according to which you want to filter business entities. This is a
search-as-you-type filter where entities are instantly filtered as you type your search
string.
You must use the “Join With” operator when creating a composite View in order to specify the join in the WHERE
clause. Usually, you join on elements keys. If there are more than one keys to join on, you must repeat a “Joins
With” clause for each part of the key. For instance, suppose the AgencyFK is a compound key that comprises Id
and Date, you must define two conditions in the “Where Condition” table: “Agent/AgencyFK --> Joins With -->
Agency/Id” and “Agent/AgencyFK --> Joins With --> Agency/Date”.
The WHERE clause used in this example will generate multiple data records for the same agent linked
with different agencies.
• Click the save icon on the toolbar or press Ctrl + S on your key board to save your changes.
The newly created View is listed under the View node in the MDM Server tree view.
Using Talend MDM Web User Interface, an authorized business user can now visualize the records
in the two specified entities according to the defined join clause. For more information, see Browsing
multiple entities (composite view) in a data container in Talend MDM Web User Interface User
Guide.
You can attach a Process to the View in order to transform/enrich data, on the fly, by
looking up fields in the source system. For further information, see Running the view
result through a Process (registry style lookup) on page 105.
As outlined in Creating a View on page 92, you can easily create Views over one or multiple business
entities held in a specific data model. Once a View is created, you can attach it to a specific user role in
Talend MDM Studio in order to filter the records that are accessible for this user role.
Later when this role is assigned to a user through Talend MDM Web User Interface, this user will be
able to visualize specific records in business entities according to the criteria defined in the View itself.
Views then can filter data on its content before delivering it to a specific user and thus make it possible to
give access to data according to the user responsibilities and information to which he/she requires access.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio. At least one
View and one user role have been created.
To attach a specific View to a specific user role, complete the following:
• In the MDM Server tree view, expand Role and browse to the role to which you want to attach one
or more Views and then double-click it.
The corresponding role editor displays.
You can always select the Admin Permissions On All Instances check box if you want to
grant the selected user role a Read & Write permission on all data objects (administrator
permissions).
• Select access type (Read Only or Read & Write) and then click the button to add the access
parameter to the table below.
This will grant the selected role access to data through all created Views.
• If you want to grant the selected role access permission according to a specific View, select from
the Read and Write Permission On Specific Instances list the required View.
• Select access type (Read Only or Read & Write) and then click the button to add the access
parameter to the table below.
This will grant the selected role access to data according to the criteria defined in the selected View.
You can right-click the access parameter and select Delete the selected item(s) to delete the
parameter from the table.
From this editor, you can also modify access parameters for the selected role through modifying the criteria
of the selected View.
To modify access parameters for the selected user role, complete the following:
• Double-click the selected View to open a table. Here you can set new WHERE conditions to restrict
access in the View.
• Set the xpath filter according to the business needs and as outlined in How to create a simple View
on page 92.
In this example, you want to restrict the access of the Country_Manager_UK role only to agencies
based in the United Kingdom.
• Save your changes.
Whenever the Country_Manager_Role is assigned to a specific user in Talend MDM Web User
Interface, this user will have a read and write access only to agencies based in the United Kingdom.
3.4.3 Running the view result through a Process (registry style lookup)
Talend MDM Studio enables you to enrich data, on the fly, by looking up fields in the source system
through a Process attached to the View, whether it is a simple or a composite View. Using Processes with
Views will help optimizing system performance.
For example, when an interaction is done on a business entity that is not persisted or not totally persisted
in the XML repository, the XML repository will be able to resolve specific elements for this entity by
referring to the source system. You can achieve this behavior if you:
• indicate what elements in the business entity or entities are to be transformed or enriched by the
Process,
• create the corresponding Process,
• create a View on the viewable/searchable elements in the business entity and attach the Process to
this View that will run the view result.
When a steward or a business user connects to Talend MDM Web User Interface and browse the
records/Views of the business entity/entities, the Process will lookup the defined elements (values) from
the source system and display them in the web user interface without really saving them in the XML
repository.
In this example, you want to set a lookup field on the Agency entity in order for a corresponding
Process to retrieve the agency region from the source system.
• In the Data-model panel, right-click the entity from which you want to select the element(s)
to be handled by the Process.
A contextual menu displays.
• Click the arrow and select from the list one of the elements pertaining to the selected entity.
• Click the icon in the upper right corner to add the selected element to the Lookup Fields
list.
• Do the same to add as many elements as necessary to the Lookup Fields list.
Only listed elements will be transformed/enriched on the fly by the Process. If this Process modifies anything else
in the XML record, these modifications will be ignored at the entity level because the Process will send only the
specified elements and not all the XML record.
• Add a step name in the Step Description field and click the plus button to add it to the Steps
Sequence list.
• Click the step name to display the Step Specifications area. Here you can define the step
parameters.
• Set the Process input variable name to _DEFAULT_.
The default input value is a text, its format is as the following <cluster
name>.<concept name>.<ids>, you can use it to do the cross referencing in your
customized job.
• From the Plugin name list, select callJob.
This Process invokes a Talend Integration Suite Studio Job, DetermineRegion, to connect to
the source system that holds the data you need, the agency region in this example, and then
retrieves this data to complete the Region field in the data record in Talend MDM Web User
Interface.
• Set the Process output variable to output.
• In the Parameter area, enter the parameters for the calljob plug-in as the following:
<configuration>
<url>http://localhost:8080/DetermineRegion-0.1/services/DetermineRe
gion</url>
<contextParam>
<name>xmlRecord</name>
<value>{_DEFAULT_}</value>
</contextParam>
<conceptMapping>
<concept>Agency</concept>
<fields>{p1:Region}</fields>
</conceptMapping>
</configuration>
• Click the save icon on the toolbar or press Ctrl + S on your key board to save the Process.
The newly created Process is listed under the Process node in the MDM Server tree view.
• Select the Run the view results through a process to make the Process list available.
• Click the arrow and select from the list the Process you want to attach to the current View,
LookupLocation in this example.
• Click the save icon on the toolbar or press Ctrl + S on your key board to save the View.
Now every time the business user or data steward browses the data records through this view from
Talend MDM Web User Interface, the Region field will display the value retrieved by the Process
from the source system without really saving it in the XML hub. For further information on how to
browse data records, see Browsing a single entity (simple view) in a data container and Browsing
multiple entities (composite view) in a data container in Talend MDM Web User Interface User
Guide.
An authorized user can carry out many management options on simple or composite Views from Talend
MDM Studio.
It is also possible to import and share MDM complete projects or only a data model or part
of the data model from the community web page, Talend Exchange. For further information,
see Projects/objects on Talend Exchange on page 260.
The sections below explain all available management options for simple and composite Views.
• Click any revision ID in the RevisionID list to display the corresponding Version in the
Version list.
• Enter a name for the new View and click OK to validate the changes and close the dialog box.
The new View is listed under the View node in the MDM Server tree view.
• Enter a name for the new View and click OK to validate the changes and close the dialog box.
The new View is listed under the View node in the MDM Server tree view.
You can also duplicate the data object if you drop it onto its parent node in the MDM
Server tree view.
Event management and real-time integration are an important part of Master Data Management. Talend MDM
provides both functionalities with dedicated MDM objects as the following:
• The Event Manager in Talend MDM Studio “listens” continuously for "events" that happen on the
XML repository,
• An event happens when some data is modified, added or deleted in the XML repository,
• Talend MDM captures the event with an Update Report that gather the event audit log information,
• A Trigger is used to launch a Process when an event corresponds to this Trigger execution conditions,
• A Process, which is an action that usually executes a Talend Job, is launched by the Trigger.
Any event in the XML repository generates in Talend MDM Studio an Update Report which gathers the event
audit log information. This information includes the type of action (create, delete, update), the user who
performed the action, source of action (Job, Talend MDM Web User Interface, Workflow, etc.), modified
attributes with old and new values and finally timestamp of action. The Update Reports are stored in Talend
MDM as an XML document like any other master data but with a pre-defined, static data model.
To access these Update Reports, complete the following:
• In the MDM Server tree view, expand Data Container - System and then double-click
UpdateReport.
A dialog box displays.
• Set parameters to filter the Update Reports you want to display, if required, and then click the icon
to display a list of the events done on master data in the XML repository.
• Double click any of these event to display a dialog box. Here you can see a detail audit log information
about the selected event.
3.5.1 Processes
A Process defines multiple steps to achieve a data validation or human validation process, a transformation
process, an enrichment process, a data integration process, etc. Each step of a Process can use a plug-in,
which is a mechanism to add specific capabilities to the process to perform a single task. The list of
available plug-ins is extensible by J2EE developers. The steps defined in each Process and the used
plug-ins will differ according to the task you want to accomplish.
One of the plug-ins available in any Talend MDM platform is the calljob plug-in, which invokes a Talend
Job exposed as a Web Service. For further information on Process types and associated plug-ins, see
Process types on page 117 and Important plug-ins on page 119.
If you are using the standalone MDM Studio, you will not have access to the data integration
tool, Talend Integration Suite Studio, that is integrated within the MDM platform. Thus if
you want to define a data integration process and use the calljob plugin, you must configure
your environment and set the parameters of the calljob plugin accordingly.
• Process description,
• sequence of steps: the list of all plug-ins included in the Process to be executed, one after the other,
• step specifications: a Process plug-in consumes data in input parameters and produces a result in
the output parameters. You must define variables to hold the result of a step. Then you send the
variable to the input of the next step, and so forth. Eventually, you define a “pipeline” where each
step result is chained to the next step through a variable.
A plug-in may have multiple input variables and parameters, as well as multiple output variables
and parameters.
When you design a Process, you combine specific Process plug-ins in a sequence of steps, which are
executed one after the other to perform specific tasks.
For each step:
• Choose the appropriate plug-in,
• Enter or select an input variable and an input parameter,
• Select the output parameter and select or enter the output variable.
It is possible to disable one or more steps at any time if you select the Disable check box in
the Step Specification area for the selected step.
For a step-by-step procedure on creating a Process, see How to create a Process on page 130.
Process types
When creating a new Process from Talend MDM Studio, you can select one of the proposed Process
types: SmartView, Before-Deleting, Before-Saving, Runnable Process, Normal and Standalone.
The table below describes Process types:
Important plug-ins
Plug-ins are extra components that add specific capabilities to the Talend MDM. Talend MDM
Studio proposes a list of plug-ins to be combined with a given Process. These plug-ins include callJob,
workflowtrigger, groovy, xslt and crossreferencing.
The table below explains some of the plug-ins listed in the Studio and details their parameters.
Input variables:
-xml: the source xml on which the cross-referencing will
be performed.
Output variables:
-text: the result of the processing.
For further information about this plug-in, see Example of
the crossreferencing plug-in and its parameters on page
125.
Input variables:
-xml: the xml on which to apply the XSLT.
-parameters: optional input parameters to the XSLT in the
form of:
<Parameters>
<Parameter>
<Name>PARAMETER_NAME</Name>
<Value>PARAMETER_VALUE</Value>
</Parameter>
</Parameters>
Output variables:
- text: the result of the XSLT.
For an example on this plug-in, see Example of the xslt
plug-in on page 124.
Input variables:
-xml-instance: the XML used to find and update an
existing item. The updated item is searched based on the
XML content, and the XML must follow certain
specifications:
First, the root element must have the same name as the
name of the Entity of the item.
Second, the XML must contain the value of all the item
keys at the same XPath as those of the item unless
item_primary_key is specified.
Third, other than the keys, the XML can contain more
elements than the one updated on the item but does not
have to validate the item data model.
-item_primary_key: optional if the key values are
set on the xml_instance. The primary key must be
supplied as an object of type
application/xtentis.itempk as returned by the
project item plugin.
-data_model: (optional) the Data Model used to
validate the item after update. Overwrites the
corresponding value supplied in the parameters.
-clear_cache: optional, defaults to false. If set to true,
the Data Model is re-read and parsed from the database
for each invocation of the plugin during the Process
execution
Output variables:
-item_primary_key: the primary key of the updated
item as an object of type
application/xtentis.itempk.
Input variables:
-xml-instance: the XML of the item to project.
-item_primary_key: (optional) the primary key of
the projected XML. When not supplied, the primary key
will be inferred from the xml by parsing the data model
(slower).
-data_model: (optional) the Data Model used to
validate the item after update. Overwrites the
corresponding value supplied in the parameters.
-clear_cache: optional, defaults to false. If set to true,
the data model is re-read and parsed from the database for
each invocation of the plugin during the Process
execution
Output variables:
-item_primary_key: the primary key of the
projected item as an object of type
application/xtentis.itempk.
For further information about this plug-in, see Example of
the project plug-in and its parameters on page 126.
• The value in Country of the target document is replaced with the extracted value.
<defaultDataCluster>DATA_CLUSTER_NAME</defaultDataCluster>
<defaultDataModel>DATA_MODEL_NAME</defaultDataModel>
<overwrite>true|false</overwrite>
</parameters>
Below is a definition of each of these attributes:
• defaultDataCluster: optional if input item_primary_key is supplied. It is the
data container in which the item will be stored.
• defaultDataModel: optional if input data model is supplied. It is the data model used
to validate the item.
• overwrite: optional defaults to true. If set to false, an existing item will not be
overwritten by this xml.
Example:
The following example parameters will project a supplied XML to the myDataCluster data
container validating against the myDataModel data model. An existing item will be overwritten:
<parameters>
<defaultDataCluster>myDataCluster</defaultDataCluster>
<defaultDataModel>myDataModel</defaultDataModel>
<overwrite>true</overwrite>
</parameters>
output variable:
<results>
<item>
<attr>0=ok or 1=failed</attr>
</item>
</results>
If the Job returns a table though a tBufferOutput component, MDM will define the following
document in the calljob output variable:
<results>
<item>
<attr>col1</attr>
<attr>col2</attr>
etc.
</item>
</results>
This result may be mapped back into an Entity by adding the following fragment in calljob
configuration:
<configuration>
(...)
<conceptMapping>
<concept>Customer</concept>
<fields>
{
p0:Firstname,
p1:Lastname,
}
</fields>
</conceptMapping>
</configuration>
Then calljobs output variable will receive:
<results>
<Customer>
<Firstname>col1</Firstname>
<Lastname>col2</Lastname>
</Customer>
</results>
Input
The input document comprises the Update Report as well as the record which is being saved or
deleted:
<exchange>
<report>
... update report ...
</report>
<item>
... record ...
</item>
</exchange>
You can always find the exact schema description of an Update Report in the MDM
Server tree view in Data Model > System > UpdateReport.
Within the Job, you may put conditions similar to triggers. For instance, you may use
exchange/report/Update/OperationType to implement different conditions on CREATE and
UPDATE.
Output
The Job is required to return a document that conforms to:
<error code="0=ok or 1=failed">... error message ...</error>
If the error code is != 0, the Web Interface will cancel the save or delete action and display the
error message to the user in a popup window.
Working principles for the Before-Saving and Before-Deleting Processes can be summarized as
described in the below three cases.
Upon completion of the Before-Saving or Before-Deleting processes, the MDM server looks for
a variable called output_error_message in the Process pipeline. It expects the variable to
contain an <error> fragment compliant with the following schema:
The <error> fragment can be at the top-level or it can be anywhere in the document. Typically,
a calljob Process plug-in will surround it with a <result> element.
First case: The code attribute determines how the MDM Server should consider the outcome of
the validation process:
• If <error code="0">optional message</error>: the validation process of
the data record has been carried out successfully and a message will display. The data
record will be successfully saved with the Before-Saving Process, or successfully deleted
with the Before-Deleting Process.
When you design a Process, you combine specific Process plug-ins into a sequence of steps. These
steps are then executed one after the other to perform specific tasks.
Whenever a data record is created/updated/deleted, the MDM Server generates a document and lists
it under the UpdateReport node in the System data container in the MDM Server tree view. This
document describes the event in answering a who, what and when questions and in giving the record
primary key and the values before and after in case of an update. This UpdateReport document does
contain everything about the event that just happened, however it does not contain the complete XML
record that was created/updated/deleted. This document is then sent to the Event Manager. Whenever
the Event Manager receives a document, it tries to evaluate “route” every Trigger conditions against
this document. For further information about Triggers, see Triggers on page 161.
So the sequence of events that occur whenever a Create/Update/Delete (CRUD) is performed in
Talend MDM is as the following:
• the Event Manager evaluates every defined Trigger to see if one or more Triggers have valid
conditions,
• the services defined in the Trigger are performed,
• in case a calljob service has been defined in the Trigger, the Trigger uses the calljob plug-in to
run a Talend Job
In the example below, a data model called Product has been created in Talend MDM Studio. This data
model has two business entities: Product and ProductFamily. Several attributes have been created in
the Product entity including Price and Family. You want to create a Process to automatically trigger
a validation Job whenever a price of an item that belongs to a specific family has been changed through
Talend MDM Web User Interface.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio. You
have the appropriate user authorization to create Processes.
To create a Process to automatically trigger a Talend Job:
• In the MDM Server tree view, expand Event Management and then right-click Process and
select New from the contextual menu.
The [New Process] dialog box displays.
• Select the option corresponding to the Process type you want to create and then enter a name
for the new Process.
In this example, you want to create a normal Process. For more information on Process types,
see Process types on page 117.
If there are naming conventions for the Process you want to create, they will display in
the name filed when you select the Process type. You just need to enter the name of the
entity on which to run the Process.
No spaces are allowed in the process name. The OK button in the dialog box will be unavailable as long as there
is a space in the instance name.
The Process for this example must include one basic step, Invoke the job through the calljob plug-in,
and two obligatory additional steps as the following:
First step: to retrieve the complete XML record through the XSLT plug-in.
This step is obligatory in this example since you need the whole record in order to check to what family
belongs the item which price has been changed and you can not find such information in the Update
Report.
Second step: to decode XML in order to remove the escape function you used in the XSLT document
and thus send a real XML document to the Job.
Final step: to send the XML document to a Talend Job.
Usually, you can create a Process with only the calljob plug-in if the complete XML
record is not needed, depending on the type of the task you want to accomplish. For
example, if you want to validate the price change of an item in general without mapping
it to a specific family, you can create this Process with only one step: Invoke the job.
The below procedures describe in detail how to define each of the listed steps.
You can disable the selected step in the open Process editor at any time if you select
the Disable check box in the Step Specification area.
The button displays a dialog box that describes the plug-in and details its
parameters.
• As the xslt plug-in is our first step, leave the input variable empty, select the xml input, and
click the button to add them to the table.
The MDM server starts the pipeline with a default variable called _DEFAULT_ .
Here you want to map variables to the input parameter of the plug-in, and conversely map
output parameter of a plug-in to another variable.
• Select the output parameter text and define a new output variable, record_xml in this
example and then click the button to add them to the table.
For each step, you can select one of the by-default variables or one of the variables
defined for the preceding plug-in the Process you define.
The text you enter in the text editor is indented by default upon saving. This may cause problems in certain cases
such as the HTML formatting when creating a smart view process. If required, clear the Auto-indent check box
to disable the text indentation upon saving the process.
In this first step, the Process pipeline starts with a _DEFAULT_ variable, which contains the
Update Report.The content of _DEFAULT_ is sent to this first XSLT step through its text input
parameter.The XSLT step retrieves the complete XML record through the getItemProjection
function in order to escape every XML sign to avoid any character encoding conflicts in XSLT.
The result of the step is sent from the output parameter to the item_xml variable. So now item_xml
is ready to be sent to the next step of the Process pipeline.
You can disable the selected step in the open Process editor at any time if you select
the Disable check box in the Step Specification area.
The button displays a dialog box that describes the plug-in and details its
parameters.
• Map the item_xml variable defined in the previous step to this step law_text input
parameter and click the button to add them to the table.
• Map this step output parameter to a new variable called decode_xml, for example then
click the button to add them to the table.
For each step, you can select one of the by-default variables or one of the variables
defined for the preceding plug-in the Process you define.
The text you enter in the text editor is indented by default upon saving. This may cause problems in certain cases
such as the HTML formatting when creating a smart view process. If required, clear the Auto-indent check box
to disable the text indentation upon saving the process.
So far, the first step in the Process produces the record_xml variable with the complete XML
record. This step sends the record_xml to the codec plug-in law_text input parameter. The codec
plug-in unescapes the XML and posts the result in decode_xml through its output variable. So now
there is a decode_xml document ready to be sent to the last step: call the job.
You can disable the selected step in the open Process editor at any time if you select
the Disable check box in the Step Specification area.
The button displays a dialog box that describes the plug-in and details its
parameters.
• Map the decode_xml variable defined in the previous step to this step text input parameter
and click the button to add them to the table.
• Map this step output parameter to a new variable called output, for example then click the
button to add them to the table.
For each step, you can select one of the by-default variables or one of the variables
defined for the preceding plug-in the Process you define.
• In the Parameters area, click the three-dot button next to the URL field to open a dialog
box. Here you can set the actual URL to the Job web service by selecting the Job you want
to invoke.
• In the Parameters area, set the actual name of the context variable that will receive the
XML record.
• If required, click the Source tab in the lower left corner of the Process editor to switch to
the text editor. Here you can enter the parameters directly in XML.
The text you enter in the text editor is indented by default upon saving. This may cause problems in certain cases
such as the HTML formatting when creating a smart view process. If required, clear the Auto-indent check box
to disable the text indentation upon saving the process.
The Job will thus need to parse the context variable using a tXMLExtractXMLField component.
You can send as many context variables as necessary, including literal values.
• Click the save icon on the toolbar or press Ctrl + S on your key board to save your changes.
The newly created Process is listed under the Process node in the MDM Server tree view.
Now that the Process has been created, you can call it using a Trigger. Once called, it will
transform the master data records according to the tasks defined in the Process.
For more information on how to call a specific Process in a Trigger, see How to select the service
to Trigger and set the service parameters on page 164. For more information on Triggers, see
Triggers on page 161.
If you have the following error message when trying to call a Process, please verify the possible causes listed
below:
Error message: ERROR [TISCallTransformerPluginSession]
(EJB-Timer-1271251638944[target=jboss.j2ee:jndiName=amalto/remote/core/transfor
merv2ctrl,service=EJB]smile Could not execute the tisCall transformer plugin
javax.xml.ws.WebServiceException: Could not send Message.
Possible causes:
-the URL of the Job to call is not correct or the Job is not deployed,
-the context variable does not have the correct name (it has to be the same in the Process and in the Job),
-there is an error in the Job at runtime.
Try to deactivate all components in your Job and use only a tFixedFlowInput and a tLogRow components to display the
context variable contents. If no error happens, then there is probably an error in your Job.
• Complete the Process name by entering the name of the entity on which you want to run the
Process, Agent in this example.
No spaces are allowed in the process name. The OK button in the dialog box will be unavailable as long as there
is a space in the instance name.
• If required, click the three-dot button next to the Description field to open a dialog box where
you can set multilingual descriptions of your Process.
The runnable Process you are going to create has two steps: the first step generates the item primary
key from the Update Report using the XSLT plug-in, and the second step triggers a workflow using the
WorkflowTrigger plug-in. Every plug-in consumes data in input parameters and produces a result in
the output parameters. You must define variables to hold the result of the first step. Then you send the
variable to the input of the second step. Eventually, you define a “pipeline” where each step result is
chained to the next step through a variable.
In this example, we assume that you have a DStar data model that has an Agent business entity. Many
attributes have been defined for this entity including: Id, Firstname, Lastname,CommissionCode and
Status. A workflow has also been created to validate any change in the agent commission code. For
further information, see Workflows on page 211.
• In the Step Description field, enter a name for the first step you want to define in the created
Process and then click the icon to add the step name to the list that follows.
• Do the same to add the second step.
• Select the first step to display the Step Specification view in the editor. Here you can define
the step input and output variables and its parameters.
The icon displays a description of the plug-in and details its parameters.
• As the xslt plug-in is our first step, leave the input variable empty, select the xml input, and click
the button to add them to the table.
The MDM server starts the pipeline with a default variable called _DEFAULT_ .
Here you want to map variables to the input parameter of the plug-in, and conversely map
output parameter of a plug-in to another variable.
• Select the output parameter text and define a new output variable, item_pk in this example, and
then click the button to add them to the table.
For each step, you can select one of the by-default variables or one of the variables
defined for the preceding plug-in the Process you define.
You can disable the selected step in the editor at any time if you select the Disable check
box.
The text you enter in the text editor is indented by default upon saving. This may cause problems in certain cases
such as the HTML formatting when creating a smart view process. If required, clear the Auto-indent check box
to disable the text indentation upon saving the process.
• In the Parameters area, complete the XSLT definition as in the above capture and save your
modifications.
• Select the second step in the editor and define the step input and output variables and its
parameters.
• Map this step output parameter to a new variable called output, for example then click the
button to add them to the table.
• In the Parameters area, click the Select from the deployed workflows... tab, and select from
the list the workflow you want to trigger.
The workflow name and version display in the ID and Version fields respectively.
• In the Variables area, use the plus button to add lines to the table and define the attributes of
the Agent entity on which to run the workflow.
• Save your modifications.
The runnable Process is listed under the Process node in the MDM Server tree view.
This same process is accessible through Talend MDM Web User Interface when browsing records
in the Agent entity. An authorized business user can launch this Process from the web interface and
trigger the workflow. For further information, see Managing workflow tasks in the Talend MDM Web
User Interface User Guide.
Principles
A smart view is a customized, business-oriented view of a data record in the MDM hub.
A smart view basically renders an HTML presentation of the details of a data record held in a
specific entity. Whenever a business user tries to browse a data record in an entity through Talend
MDM Web User Interface, Talend MDM checks for a smart view for such entity. If it finds the
smart view, it uses this view to render the HTML presentation of the record detail instead of
displaying the usual generated form.
At runtime, when a user tries to open a record in an entity, say the Product entity for example, here
is what happens:
• Talend MDM first looks for all Processes that begins with Smart_view_Product,
• If it finds one with the _<ISO2> suffix (e.g. Smart_view_Product_ENU in the U.S.,
Smart_view_Product_FR in France etc.) it uses that,
• It then sends the XML record into the _DEFAULT_ variable and executes the Process,
• When the Process completes, it looks for an output variable called html,
• It finally sends the content of the html variable back to the browser.
The business user can toggle back and forth between the smart view presentation and the generated
form.
The Process pipeline may define any number of steps and it must define an output
variable called html.
• In the MDM Server tree view, expand Event Management and then right-click Process
and select New from the contextual menu.
The [New Process] dialog box displays.
• Complete the Process name by entering the name of the entity on which you want to run
the Process, Product in this example.
No spaces are allowed in the process name. The OK button in the dialog box will be unavailable as long as there
is a space in the instance name.
In this example, we assume that you have a Product data model that has a Product business entity.
Many attributes have been defined for this entity including: Name, Description, Features (Sizes
and Colors), Availability and Price.
• Click OK to close the dialog box.
An editor for the newly created Process opens in the workspace with a Stylesheet step
already listed in the Step Sequence area.
• If required, click the three-dot button next to the Description field to open a dialog box
where you can set multilingual descriptions of your Process.
When you create a new smart view Process, an XSLT step, with the input and output
variables, is automatically added. Basic HTML elements are also automatically
added in the Parameters area.
You can always add new steps in the Process if you enter the step name in the Step
Description field and then click the icon.
• Select the Stylesheet step in order to display the Step Specifications and the Parameters
areas of the selected XSLT step.
• In the Parameters area, customize the HTML default elements according to your needs
and save the Process.
The text you enter in the text editor will be indented by default upon saving. This may cause problems in HTML
formatting when creating the smart view Process. Clear the Auto-indent check box to disable the text indentation
upon saving the process.
If you define the HTML parameters as the following for the Product entity:
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="html" indent="yes" omit-xml-declaration="yes"/>
<xsl:template match="/">
<html>
<head>
<title>Product</title>
</head>
<body>
<h1>This is the Smart View for:
<xsl:value-of select="./text()"/>
</h1>
<tr>
<td>
<xsl:value-of select="Product/Name"/>
</td>
</tr>
<table border="1">
<tr>
<td>
<xsl:value-of select="Product/Description"/>
</td>
</tr>
<tr>
<td>
<xsl:value-of select="Product/Features"/>
</td>
</tr>
<tr>
<td>
<xsl:value-of select="Product/Availability"/>
</td>
</tr>
<tr>
<td>
<xsl:value-of select="Product/Price"/>
</td>
</tr>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
Then, every time a business user accesses Talend MDM Web User Interface and tries to browse
records in the Product entity, he/she will get this smart view by default:
From this view in Talend MDM Web User Interface, the business user can have access to any
runnable processes created on the selected entity. He/she can run any of the listed process to
initiate the tasks listed in the Process. For further information on runnable Processes, see How to
create a runnable Process on page 139.
The business user can switch to the generated form by clicking the Tree View tab:
The business user can always toggle back and forth between the smart view presentation and the
generated form through clicking the Personalized View and Tree View tabs respectively in the
browse record view in Talend MDM Web User Interface.
You can always disable the smart view process if you select the Disable check box
in the Process editor.
For further information on how to customize the smart view parameters if you have
Cascading Style Sheets (CSS) and JavaScript resources, see HTML resources on
page 153 and Foreign Keys and cross referencing on page 153.
Use, for instance, http://www.phpform.org/ to create a web template of your form. A web template
consists of one or several html files in addition to the resources (JavaScript, CSS, images, etc.).
The resources must be accessible from within MDM, so unzip the web template in a new
“smartview” folder within jboss-4.2.2.GA/server/default/deploy/jboss-web.deployer/ROOT.war.
• Unzip the web template in a new smartview folder within
jboss-4.2.2.GA/server/default/deploy/jboss-web.deployer/ROOT.war.
• Open the form in a text editor and check the html elements.
XSLT is XML, and XML is not as lenient as html. You will find start tags with no end tags
(meta, img, link, etc.). Make sure all html elements are written with start and end tags.
• Fix the URL to the JS, CSS and images. Change all the src attributes to point to:
/smartview/Product/<resource> instead of just <resource>. For instance:
Change: <script type="text/javascript" src="view.js"></script>
to: <script type="text/javascript"
src="/smartview/Product/view.js"></script>.
• Create a smart view Process in Talend MDM Studio as outlined in How to create a
customized view (smart view) of a data record and call it Smart_view_Product.
• Change <xsl:template match="/"> to xsl:template match="/Product">, assuming the entity
is Product.
• Copy the html code, without <!DOCTYPE>, from the html tag and paste it within the
<xsl:template match=”/Product”> element. Overwrite anything that was
already within the <xsl:template> element:
• Set the field values with the actual values extracted from the Product record using the
<xsl:value-of> statement. To ask XSLT to output an attribute, use the
<xsl:attribute> statement.
<parameters>
<CrossRef>
<xrefName>resolvefk</xrefName>
<xrefCluster>Product</xrefCluster>
<xrefRootElement>/Product</xrefRootElement>
<xrefIn>
<mapping>
<xrefElement>Family</xrefElement>
<xrefPath>ProductFamily/Id</xrefPath>
</mapping>
</xrefIn>
<xrefOut>
<mapping>
<xrefElement>Family</xrefElement>
<xrefPath>ProductFamily/Name</xrefPath>
</mapping>
</xrefOut>
</CrossRef>
</parameters>
For further information on the crossreferencing plugin, see Important plug-ins on page 119 and
Example of the crossreferencing plug-in and its parameters on page 125.
HTML resources
If you have Cascading Style Sheets (CSS) and JavaScript resources, they need to be
URL-addressable. You can do that through copying them in JBoss Web.
• Create a directory in <MDM Server
home>\jboss-4.2.2.GA\server\default\deploy\jboss-web.deployer\ROOT.war; Product for
instance.
• Drop your CSS and JS files in the directory.
• You can now define your resources in the <head> section of the XSLT parameters in the
Process editor as the following:
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="html" indent="yes"/>
<xsl:template match="/" priority="1">
<html>
<head>
<title>Product</title>
<link rel="stylesheet" type="text/css" href="/product/greatlookandfeel.css"
media="all">
<script type="text/javascript" src="/product/javascriptsuff.js"></script>
</head>
<!-- rest omitted -->
<mapping>
<xrefElement>CountryName</xrefElement>
<xrefPath>Countries/Name</xrefPath>
</mapping>
</xrefOut>
</CrossRef>
</parameters> step.
First example: if the data model is Product with a FK to ProductFamily, use the following
parameters to resolve the product family, which is the raw family code (e.g. ”[1234]”), to the actual
family name:
<parameters>
<CrossRef>
<xrefName>FamilyFK</xrefName>
<xrefCluster>Product</xrefCluster>
<xrefRootElement>/Product</xrefRootElement>
<xrefIn>
<mapping>
<xrefElement>Family</xrefElement>
<xrefPath>ProductFamily/Id</xrefPath>
</mapping>
</xrefIn>
<xrefOut>
<mapping>
<xrefElement>Family</xrefElement>
<xrefPath>ProductFamily/Name</xrefPath>
</mapping>
</xrefOut>
</CrossRef>
</parameters>
Second example: if there is a Countries cross reference table with key = ISO2 and value =
Name and you want to resolve Product/CountryCode into Product/CountryName, use the
following parameters:
<parameters>
<CrossRef>
<xrefName>Country</xrefName>
<xrefCluster>crossreferencing</xrefCluster>
<xrefRootElement>/Product</xrefRootElement>
<xrefIn>
<mapping>
<xrefElement>CountryCode</xrefElement>
<xrefPath>Countries/ISO2</xrefPath>
</mapping>
</xrefIn>
<xrefOut>
<mapping>
<xrefElement>CountryName</xrefElement>
<xrefPath>Countries/Name</xrefPath>
</mapping>
</xrefOut>
</CrossRef>
</parameters>
For further information on the crossreferencing plugin, see Important plug-ins on page 119 and
Example of the crossreferencing plug-in and its parameters on page 125.
Managing Processes
An authorized user can also execute, import/export, copy/paste and delete the listed Processes from
Talend MDM Studio.
It is also possible to import and share MDM complete projects or only a data model or
part of the data model from the community web page, Talend Exchange. For further
information, see Projects/objects on Talend Exchange on page 260.
• Click the icon to display the list of all the documents generated upon a
create/update/delete operation done on any data record.
• Double-click the document you want to test in order to display its detail in a dialog box.
• From the Source view, select the XML text and then click Cancel to close the dialog box.
• Double-click the Process you want to test and then click the icon in the upper right
corner of the process editor.
A dialog box displays.
• From the Input Variables list, select _DEFAULT_ and select text/xml from the Content
Type list.
• Paste the document XML text in the Value table and then click the icon to list the set
variables and information in the lower part of the dialog box.
• Click OK to run the Process.
A progress information bar displays and then a result dialog box opens. Here you can
browse the latest value of all the Process pipeline as well as which records are sent to the
Data Container.
This result will show that your Process works correctly. What you must do now is to define a
Trigger in order to call the process from that Trigger. For further information, see Creating a
Trigger on page 161.
• Click any revision ID in the RevisionID list to display the corresponding Version in the
Version list.
• Enter a name for the new Process and click OK to validate the changes and close the dialog
box.
The new Process is listed under the Processes node in the MDM Server tree view.
• Enter a name for the new Process and click OK to validate the changes and close the dialog
box.
The new Process is listed under the Processes node in the MDM Server tree view.
You can also duplicate the data object if you drop it onto its parent node in the MDM
Server tree view.
3.5.2 Triggers
Triggers are used to link the MDM hub and the Data Models you define in the Studio. You can use Triggers
to call specific Processes under certain conditions.
The Triggers you define in Talend MDM Studio enable different services to be undertaken on specific
data records.
Then, whenever a business user creates or modifies a data record from Talend MDM Web User Interface,
for example, a Trigger kicks in and the relevant event-based Process is undertaken by the Studio.
Creating a Trigger
The section below explains how to create a Trigger from scratch, however, Talend MDM
Studio enables you as well to automatically generate Triggers based on the Jobs listed
under the Job Repository node in the MDM Server tree view. You can then do any
modifications in the generated Trigger, if required. For further information, see Generating a
job-based Trigger on page 181.
Triggers are rules for transforming data. You can easily define Triggers on specific business
entities/elements from Talend MDM Studio.
Parameters to set when defining Triggers include:
• selecting the business entity you want to Trigger the Process on,
• setting conditions on its content,
• deciding the execution mode,
• selecting the service to Trigger,
• setting the service parameters.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio. You
have the appropriate user authorization to create Triggers.
For this example, a data model called Product has been created in Talend MDM Studio. This data
model has two business entities: Product and ProductFamily. Several attributes have been created in
the Product entity including Price and Family. For further information about how to create a data
model, see Setting up a data model on page 29.
A Process has been created and named Call_Job. One service has been defined in this Process to
launch a validation Job whenever a price of an item that belongs to a specific family has been changed
through Talend MDM Web User Interface. For further information about how to create such a
Process, see How to create a Process to enrich data on the fly on page 107.
What is left to be done now is to create a Trigger and configure it to launch the Call a Job from MDM
Process that will by turn launch the Talend price validation Job.
The sub-sections below explain in detail the procedures necessary to complete the creation of such a
Trigger.
• Enter a name for the new Trigger and then click OK to close the dialog box.
An editor for the newly created Trigger opens in the workspace.
No spaces are allowed in the Trigger namel. The OK button in the dialog box will be unavailable as long as there
is a space in the instance name.
• In the Description field, enter a description to identify the Trigger being created.
In this example, the Trigger will launch a Process that will by turn launch the Job
ValidatePriceChange_0.1.
• Click the three-dot button next to the Entity field to open a dialog box where you can select
the business entity you want to trigger the Process on, Product in this example.
• In the open dialog box, click the Data Models arrow and select the data model that holds
the business entity you want to run the Trigger on.
• Select the business entity in the list and click Add to close the dialog box.
The selected business entity name displays in the Entity field.
• Select the check box next to the execution mode you want to use:
Select to...
Execute immediately executes the triggered Process. In most cases, this implies that an open
Synchronously connection from a source system will not be released until the data record has been
pushed to the destination system and the connection released by the destination
system.
Deactivate To put the defined Trigger on hold.
How to select the service to Trigger and set the service parameters
After defining the business entity on which you want to trigger a specific Process, you need to
select a service to run on the defined business entity and set the service parameters.
To select a service to trigger and set the parameters, do the following:
• In the Service area, click the Service JNDI Name arrow and select from the list the service
you want to kick off by the Trigger, callprocess in this example.
The services you can find in the list are pre configured MDM services. Click the
button to open a dialog box that gives information about what the service does and
its parameters.
• In the Service Parameters area, define the parameters of the service you select in the list.
When you select the callprocess service, you just need to click the name of the Process you
want to trigger, Call_Job in this example.
The callprocess service is one of the most important available services on the list. When you
select this service, all Processes you already created in Talend MDM Studio are listed in the
Service Parameters area and you can call any of them to transform and cross-reference master
data. For more information on Processes, see Processes on page 116.
The parameters you need to define in the Service Parameters area differ according to the selected
service in the service list. Talend MDM Studio simplifies this task for you by creating the
underlying XML code for the proper execution of the trigger. When you select the callJob service,
fir example, you can access a list of all deployed Jobs directly from the Trigger editor.
When you select the workflow service, for example, you can access a list of all deployed
workflows directly from the Trigger editor and this simplifies the process of creating a Trigger.
For certain services, you can switch between a graphical editor and a text editor upon
clicking the Sheet and Source tabs respectively. You can define the service
parameters in either editors and any modifications you do in one of the two editors
will be reflected in the other.
• In the Trigger xPath Expressions area, click the button to add a new XPath line to the
table where you can set the first condition.
• Click in the new line, and then click the three-dot button to open a dialog box where you
can select the entity and/or element on which you want to define conditions,
Update/OperationType in this example.
• Click in the Operator column and select an operator from the list.
• In the Value column, enter a value for each of the selected business entities/elements, the
value is usually the name of the entity or element. Enter the UPDATE value in this example
(case sensitive).
• In the Condition Id column, enter a unique identifier for the condition you want to set on
the selected business entity/element, C1 in this example.
This first condition means that the Trigger will be executed only on the records in the
Update entity when there is an update operation.You may want to activate this Trigger only
if the update operation is done on the Price attribute. So, follow the same steps to define
this second condition on the Item/path attribute using the Price value and C2 condition.
• In the Conditions area, enter the query you want to undertake on the data record using the
condition IDs you set earlier, C1 and C2 in this example.
The Trigger created in the above procedure means that you want the Trigger to be executed
on a record in the Update entity only when the Price attribute has been changed.
When the conditions match the content of the data record, the selected service is
triggered on the content of the data records that match the set conditions.
• Click the save icon on the toolbar or press Ctrl + S on your key board to save your changes.
This newly created trigger is listed under the Trigger node in the MDM Server tree view.
Managing Triggers
An authorized user can also import/export, copy/paste and delete created Triggers from Talend MDM
Studio.
It is also possible to import and share MDM complete projects or only a data model or
part of the data model from the community web page, Talend Exchange. For further
information, see Projects/objects on Talend Exchange on page 260.
• Double-click any revision ID in the RevisionID list to display the corresponding Version
in the Version list.
• Enter a name for the new Trigger and click OK to validate the changes and close the dialog
box.
The new Trigger is listed under the Trigger node in the MDM Server tree view.
• Enter a name for the new Trigger and click OK to validate the changes and close the dialog
box.
The new Trigger is listed under the Trigger node in the MDM Server tree view.
You can also duplicate the data object if you drop it onto its parent node in the MDM
Server tree view.
If you are using the standalone MDM Studio, you will not have access to the data integration tool,
Talend Integration Suite Studio, that is integrated within the MDM platform. Thus the following
sections are not applicable for you.
All data integration Jobs created in the Data Integration perspective of Talend MDM Studio are shared with
the MDM perspective, i.e. they are automatically listed under the Job Repository node in the MDM server
tree view. For more information on the different tools integrated in the MDM Studio, see A comprehensive set
of tools on page 5.
Talend MDM Studio enables you to deploy these data integration Jobs on the MDM server in .war or .zip files.
Several possibilities are available for this Job deployment:
• through a manual import/export operation. For further information, see Deploying Jobs manually on
the MDM server on page 171.
• through automatic deployment from the Data Integration perspective. For further information, see
How to deploy Jobs from the Data Integration perspective on page 174.
• through automatic deployment from the MDM perspective. For further information, see How to deploy
Jobs from the MDM perspective on page 175.
The Job Repository node in the MDM server tree view groups all data integration Jobs under the Source Jobs
folder and all data integration Jobs that have been deployed on the MDM server under the Deployed Jobs
folder.
You can also run a Job directly from the MDM perspective through a right-click on the Job in the Source Jobs
folde.
An authorized user can export/import an archive for a data integration Job from the Data Integration
perspective into the MDM perspective. A job-based Process or a job-based Trigger can then be
automatically generated from the imported archive. For more information, see Generating a job-based
Process on page 178 and Generating a job-based Trigger on page 181.
Once the job-based Process is generated, it can be attached to a Trigger which will allow, when kicked off,
the data integration operation to be carried out on master data.
For more information on creating and managing Triggers, see Triggers on page 161.
You can show/hide a tree view of all created Jobs in Talend Integration Suite Studio
directly from the [Export Job Scripts] dialog box by clicking the and the buttons
respectively. The Jobs you selected earlier in the Data Integration perspective display with
selected check boxes. This flexibility allows you to modify the selection of items to be exported
directly from the dialog box without having to close it and go back to the Data Integration
perspective in Talend MDM Studio.
• In the To archive file field, browse to where you want to export the archive file.
• In the Job Version area, select the version number of the Job you want to export if you have
created more than one version.
• From the Select the export type list, select a type for the exported file.
• Click Finish to validate your changes, complete the export operation and close the dialog box.
A file of the defined type holding the job script is created in the defined place.
Talend MDM Studio provides additional deployment capabilities that enables an authorized user to
deploy a Job from the Data Integration or the MDM perspectives onto the MDM server directly without
the need of the import/export operation.
A job-based Process or a job-based Trigger can then be automatically generated from the deployed Job.
For more information, see Generating a job-based Process on page 178 and Generating a job-based
Trigger on page 181.
Once the job-based Process is generated, it can be attached to a Trigger which will allow, when kicked off,
the data integration operation to be carried out on master data.
For more information on creating and managing Triggers, see Triggers on page 161.
Prerequisite(s): You have already connected to an MDM server from Talend MDM Studio. The
server on which you want to deploy the Job is up and running.
To deploy a Job on an MDM server, do the following:
• From the Data Integration perspective and in the Repository tree view, expand the Job
Designs node and then right-click the Job you want to deploy.
• From Talend MDM Server list, select the MDM server on which you want to deploy the Job.
• From the Export type list, select the export type, and then click Finish.
A confirmation message displays.
• Click OK to close the message and the dialog box.
• In the MDM perspective, right-click Job Repository and then select Refresh.
The deployed Job is listed under the Deployed Jobs folder under the Job Repository node.
• Select the export type from the list and then click Finish.
A confirmation message displays.
• Click OK to close the message and the dialog box.
When you export the Job as a Zip file, the MDM server dynamically loads it, so the Java
code is co-located with MDM, which greatly reduces the latency of MDM triggers. The
WAR format is still a valid choice for distributing the load, deploying the Jobs onto
different servers, or executing the Job closer to the sources/targets.
You can run a Job in Talend MDM Studio either from the Data Integration perspective or directly from
the MDM perspective.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio. At least one
data integration Job has been created in the Data Integration perspective and deployed on the MDM
server.
To run a Job from the Data Integration perspective, do the following:
• From the Data Integration perspective and in the Repository tree view, expand the Job Designs
node and then right-click the Job you want to run.
• From the MDM perspective and in the MDM Server tree view, expand the Job Repository and
Source Jobs folders and then right-click the Job you want to run.
Talend MDM Studio enables you to automatically generate Processes based on the deployed Jobs listed
under the Job Repository node in the MDM Server tree view.
Once the job-based Process is generated, you can attach it to a Trigger which will initiate, when kicked off,
the data integration process defined in the Job.
For more information on creating and managing Processes, see Processes on page 116.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio. At least one
data integration Job is created in the Data Integration perspective and deployed on the MDM server.
To generate a Job-based Process:
• In the MDM Server tree view, expand the Job Repository node and the Deployed Jobs folder.
• Right-click the Job on which you want to generate a Process and then select Generate Talend Job
Caller Process.
A dialog box displays.
The option selected by default is to send a complete “exchange” document to the MDM server. This document will
have the Update Report in addition to the item itself. However, if you want your Process to be compatible with
older MDM versions (backward compatibility), you must select the Only send an “item” document option.
• Click OK to validate your schema choice and close the dialog box.
The generated Process holding the name of the generated Job displays under Event Management
- Process in the MDM Server tree view.
• If required, double-click the generated job-based Process to open an editor in the workspace that
lists the Process parameters.
In the Parameters area, you can always switch between two views: Sheet and Source. The
first enables you to add/modify parameters using fields and rows in a table, while the second
display the parameters in its XML format where you can add/modify the parameters directly
in the XML text.
The generated job-based process includes one basic step to call the Job and two additional steps as the
following:
First step: to retrieve the complete XML record through the XSLT plug-in.
Second step: to decode XML in order to remove the escape function you used in the XSLT document and
From this editor, you can modify any of the Process parameters, if required.
Talend MDM Studio enables you to automatically generate Triggers based on the Jobs listed under the
Job Repository node in the MDM Server tree view.
Once the Job-based Trigger is generated, it will initiate, when kicked off, the data integration Process
defined in the Job.
For more information on creating and managing Triggers, see Triggers on page 161.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio. At least one
Job is created in the Data Integration perspective.
To generate a Job-based Trigger:
• In the MDM Server tree view, expand the Job Repository node.
• Right-click the Job on which you want to generate a Trigger and then select Generate Talend Job
Caller Trigger.
The generated Trigger holding the name of the generated Job displays under Event Management
- Trigger in the MDM Server tree view.
• If required, double-click the generated job-based Trigger to open an editor in the workspace that
lists the Trigger parameters.
From this editor, you can modify any of the Trigger parameters, if required.
This chapter provides the information you need to carry out some advanced MDM procedures
including building separate Versions of master data, synchronizing master data on multiple MDM
servers or Versions, defining and sharing workflows, using XQuery instructions on master data and
importing into your current Studio MDM projects/objects created by Talend community and
uploaded on Talend Exchange.
Before starting any of these MDM management procedures, you need to be familiar with the
Talend MDM Studio Graphical User Interface (GUI). For more information, see Getting started
with Talend MDM Studio on page 9 and Talend MDM Studio management GUI on page 277.
Advanced subjects
Versions
4.1 Versions
From Talend MDM Studio, you can build and work on separate Versions of Master Data. Each Version is
defined as a specific set of MDM models, records, roles, Triggers, etc., and is called Revision. The default
revision is called [HEAD].
The MDM Hub has at least one Version shared by all users, which is considered as the "main"
Version.Typically you will create additional Versions for sandboxing modifications before making them
available in the main Version. Creating separate Versions of master data is also used to isolate a derived Version
of the MDM Hub for a specific group of users.
A Version can have its own copy of models, entities, Views, roles etc., or it may share objects with other
Versions. For instance it may have a specific Version of the Product entity but still share the same model, Views
and roles of the main Version.
As an MDM administrator you may choose what you want to have in a new Version: models, records, roles,
Triggers etc. To do this, you give a version ID to the objects you want in the new Version. The objects in the
new Version that do not have a version ID are shared with the [HEAD] Version, which is the main one. So
every change in the new Version of that particular object will be reflected in the main Version for everyone else
to see. Conversely, changes on objects that received their own version ID will only affect the Version itself.
You may even mix version IDs, so you can have, for example three Versions that share the same main [HEAD]
model with everyone, but they share the same "CatalogCurrentYear" data only among them, and have their
specific Triggers. To achieve this, do not give an ID to the model, but give the same "CatalogCurrentYear" ID
to the records, and give each Version a specific ID for the Triggers.
Versions are completely different from Versioning. While Versions are partition of the MDM hub
where part, or all, objects may be modified separately, Versioning is a version control system that
preserves all individual object versions, traces changes and provide easy and safe recovery. For
further information on Versioning, see Versioning on page 191.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio. You have
the appropriate user authorization to create a Version.
To create a new Version of master data, complete the following:
• In the MDM Server tree view, right-click Versions and select New from the contextual menu.
The [New Version] dialog box displays.
• Enter a name for the new Version and then click OK to close the dialog box.
An editor opens in the workspace.
No spaces are allowed in the Version name. The OK button in the dialog box will be unavailable as long as there
is a space in the instance name.
• If needed, enter a description for the new Version in the Description field.
• In the Entity Revision ID area, click the button to add a new line to the table.
• Click in the line and enter the name of the business entity that you want to be different in the new
Version and then give it a version ID different from [HEAD].
In this TestVersion Version, giving the Agency and Agent entities revision IDs different from
[HEAD] means that you want any modification done on the agency or agent records to be local to
this new Version; i.e. you do not want to propagate the modification to the agency and agent records
in the main Version ([HEAD]) on the MDM server.
• If required, repeat to add lines for all entities you want to be different in the new Version.
• In the System Objects Revision ID area, enter a version ID to all data objects you want to be
different in the new TestVersion Version.
With this new Version, all MDM objects for which you have not entered a revision ID will be shared
with the main default Version ([HEAD]). However, DataModel, Role and View will not be shared
with the main Version and are specific for this new Version.
• Click the save icon on the toolbar or press Ctrl + S on your key board to save your changes.
The newly created Version is listed under the Versions node in the MDM Server tree view.
Talend MDM Studio enables you to connect simultaneously to different Versions of the master data on
the MDM server.
Prerequisite(s): You have already connected to the main default Version of master data on the MDM
server from Talend MDM Studio. At least one new Version of master data has been created on the MDM
server. For further information, see Creating a new Version of master data on page 184.
To connect to a master data Version different from the main default one, complete the following:
• From the Studio main window, click the server login icon in the upper left corner.
The login dialog box displays.
• Enter the MDM server address and authentication information in the corresponding fields. For
further information, see Launching Talend MDM Studio and connecting to the MDM server on
page 11.
When you connect to the Studio as a Talend administrator, you have only the rights to manage
roles and access control in the Studio, but you do not have any of the rights of the
System-Admin. For further information on user roles and access rights, see Security on page
265.
• In the Version list, select the Version you want to connect to, TestVersion in this example.
For more information about Versions, see Creating a new Version of master data on page 184.
When you launch the Studio for the first time, there are no Versions in this list since none is
yet created. This way, you connect to the default Version that uses the[HEAD] objects and
entities.
• Click OK to close the dialog box and log in to the TestVersion Version on the MDM server.
A progress bar indicates the progress of the loading operation of the objects on the MDM server.
All loaded objects display in the MDM Server tree view. Each object is followed by the version
ID to show if it’s shared with the main Version or not.
Here you have two active connections to the MDM server, one to the TestVersion Version and the second
to the main default Version ([HEAD]). You can browse the two server Versions simultaneously and see
that the tree-view is the same. Any modification made on one object in one of the two versions will be or
will not be reflected in the other depending on whether the objects are shared (or duplicated). For further
information, see Creating a new Version of master data on page 184.
An authorized user can import/export, copy/paste, duplicate and delete created Versions from Talend
MDM Studio.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio. At least
one Version exists.
To copy/paste a Version, complete the following:
• In the MDM Server tree view, expand the Versions node.
• Right-click the Version you want to duplicate and select Copy from the contextual menu.
• Right-click the Versions node and select Paste from the contextual menu.
A dialog box displays prompting you to enter a name for the new Version.
• Enter a name for the new Version and click OK to validate the changes and close the dialog
box.
The new Version is listed under the Versions node in the MDM Server tree view.
• Enter a name for the new Version and click OK to validate the changes and close the dialog
box.
The new Version is listed under the Versions node in the MDM Server tree view.
You can also duplicate the Version if you drop it onto its parent node in the MDM Server
tree view.
4.2 Versioning
Talend MDM Studio enables you to maintain current and historical versions of individual master data objects.
This feature helps you to have source control or revision control on master data objects. All the revision control
functions take place on a shared server.
Revision control allows you to maintain successive revisions of any object manipulated by the MDM Hub, to
trace changes and revert to a previous revision when needed. Each revision of an object can be perceived as a
snapshot of the object at a given time.
Versioning is completely different from Version. Versioning is a version control system that
preserves all individual object versions, traces changes and provide easy and safe recovery. While
Versions are partitions of the MDM hub where part, or all, objects may be modified separately. For
further information on Versions, see Versions on page 184.
In order to create a revision of a data object, you must first configure your connection to the SVN server. The
below sections explain this in detail.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio. An SVN
server is already installed and to which you have the right to connect.
To configure the connection to the SVN server, complete the following:
• In the MDM Server tree view, double-click Service Configuration to open the corresponding
editor.
You can now start creating a revision of any of the data objects as detailed in the section that follows.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio. Your
connection to the SVN server is already configured as outlined in Configuring the SVN server.
To create a revision of a data object, complete the following:
• In the MDM Server tree view, right-click the data object for which you want to create a revision,
the Product data model in this example.
• From the contextual menu, select Versioning.
The [Versioning] dialog box displays.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio. At least one
revision of the data object you want to revert to has been created as outlined in Creating a revision of a
data object.
To revert to a previous object revision, complete the following:
• In the MDM Server tree view, right-click the data object which you want to revert to a previous
revision, the Product data model in this example.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio. Your
connection to the SVN server is already configured as outlined in Configuring the SVN server.
To create/restore a revision of a data record, complete the following:
• In the MDM Server tree view, double-click the data container holding the record for which you
want to create a revision, Product in this example.
• Set your search criteria in the corresponding fields and then click the icon or simply click the
search icon to display all the data records held in the selected container.
• In the Entity field, select the entity which holds the records you want to display, or just use the
Asterisk symbol to display data records in all the entities in the container.
• Double-click the data record you want to open.
• Change Talend Mug to Talend Cup and then click the Save button to save your modifications and
close the dialog box.
• In the data container editor, right-click the record you have modified and then select Commit.
• Enter your comment in the Comment field and then click the Commit tab.
A progress information bar displays followed by a confirmation message.
• In the data container editor, right-click the record you have committed and then select Compare
with latest version.
The [Text Compare] page displays where you can see differences in the data record in the two
revisions in text mode.
• From the list, select the revision from which you want to restore and then click the Restore tab.
A confirmation message displays.
• If required, double-click the record in the editor to see that the previous data has been restored.
Talend MDM Studio provides a powerful synchronization feature that allows multiple MDM servers to be
synchronized.
From Talend MDM Studio you can define multiple synchronization plans between a central MDM server and
a remote one or even within the same MDM server, for example, when transferring data from a test Version
to a production Version. For more information on how to create and manage Versions, see Versions on page
184.
All MDM data objects, such as Data Models, Roles, Triggers, Views, etc. can be synchronized.
A synchronization may be either “Full” or “Differential”:
• "Full": when all concerned data records and data objects are checked,
• "Differential": when only data records and data objects that were updated since the last synchronization
are taken into account.
The measurement used to decide if there is a data conflict differ whether you use a full or
differential synchronization plan. With a full synchronization plan, data conflicts will emerge if
data is modified only in one of the two servers/Versions. With a differential synchronization plan,
data conflicts will emerge only if data is modified in BOTH servers/Versions.
A synchronization mode has to be selected and applied in the case of a data conflict:
• If the conflict relates to a data object, two options exist:
-Local Wins: data records and data objects are harmonized according to those in the central MDM
server.
-Remote Wins: data records and data objects are harmonized according to those in the remote MDM
server.
• If the conflict relates to a data record, three options exist:
-Local Wins: data records and data objects are harmonized according to those on the local MDM
server.
-Remote Wins: data records and data objects are harmonized according to those on the remote MDM
server.
-Manual: conflicts are handled manually by an authorized data steward through Talend MDM Web
User Interface.
For more information on managing synchronization items, see Resolving master data conflicts after
synchronization in Talend MDM Web User Interface User Guide.
When defining a synchronization plan, you need to set up the following characteristics:
• Remote MDM Server: The parameters of the remote MDM server,
• Items SynchronizationPlan: Information related to the business entities created on the local and
remote MDM servers,
• System Objects SynchronizationPlan: Information related to the data objects created on the local
and remote MDM servers.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio. You have
the appropriate user authorization to create synchronization plans.
To create a synchronization plan, complete the following:
• In the MDM Server tree view, right-click Synchronization Plan and select New from the
contextual menu.
The [New Synchronization Plan] dialog box displays.
• Enter a name for the new synchronization plan and then click OK to close the dialog box.
An empty editor for the new synchronization plan opens in the workspace.
• In the Description field, enter a description for the synchronization plan you want to create.
• In the Name field, enter the name of the remote MDM server, if required.
• In the URL field, enter the address of the remote MDM server.
• Enter your authentication information to the remote MDM server in the corresponding fields.
You can click the Check button to verify if the connection to the MDM server is correctly set.
• Click Records SynchronizationPlan to expand this view on the synchronization plan editor.
• In the Local Cluster field, select or enter the name of the data container on the local MDM server.
• In the Entity Name field, select or enter the name of the business entity on the local MDM server.
• In the Local Revision ID field, enter the revision ID of the business entity on the local MDM
server. If nothing is entered, the default value is [HEAD].
• In the Remote Cluster field, enter the name of the data container on the remote MDM server.
• In the Remote Revision ID field, enter the revision ID of the business entity on the remote MDM
server. If nothing is entered, the default value is [HEAD].
• From the Algorithm list, select the appropriate synchronization mode to apply in the case of data
conflicts.
If you select the Manual mode, an authorized data steward is required to manually handle the
data conflict through the Talend MDM Web User Interface. For more information, see
Resolving master data conflicts after synchronization in the Talend MDM Web User
Interface User Guide.
• Click the button to add a line of the defined item to the table.
• Repeat the operation to add as many lines of the defined items as needed.
If there are multiple lines, you can decide in which order you want the synchronization to take
place by using the and buttons.
• Click System Objects SynchronizationPlan to expand this view on the synchronization plan
editor.
For each of the listed data objects, you must click the button to add a line and then enter the following
information:
• Click in the Instance Pattern column and enter the name of the data object or a regular expression.
• Click in the Local Revision ID column and enter the revision ID of the object(s) on the local server.
If nothing is entered, the default value is [HEAD].
• Click in the Remote Revision ID column and enter the revision ID of the object(s) on the remote
server. If nothing is entered, the default value is [HEAD].
• Click in the Algorithm column and select the synchronization mode to apply in case of conflicts.
• Click the save icon on the toolbar or press Ctrl + S on your key board to save your changes.
The newly created synchronization plan is listed under the Synchronization Plan node in the
MDM Server tree view.
• On top of the synchronization plan editor, click the button to start a full synchronization of the
defined business entities, or the button to start synchronization only of the data records and data
objects that were updated since the last synchronization.
The text in the Status field provides information about the status of the synchronization process:
SCHEDULED, RUNNING, COMPLETED, or FAILED.
An authorized user can also import/export, copy/paste, duplicate and delete created synchronization plans
from Talend MDM Studio.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio. At least
one synchronization plan exists.
To copy/paste a synchronization plan, complete the following:
• In the MDM Server tree view, expand the Synchronization Plan node.
• Right-click the plan you want to duplicate and select Copy from the contextual menu.
• Right-click the Synchronization Plan node and select Paste from the contextual menu.
A dialog box displays prompting you to enter a name for the new synchronization plan.
• Enter a name for the new synchronization plan and click OK to validate the changes and close
the dialog box.
The new synchronization plan is listed under the Synchronization Plan node in the MDM
Server tree view.
• Enter a name for the new synchronization plan and click OK to validate the changes and close
the dialog box.
The new synchronization plan is listed under the Synchronization Plan node in the MDM
Server tree view.
You can also duplicate the plan if you drop it onto its parent node in the MDM Server
tree view.
The stored procedure feature in Talend MDM Studio allows authorized users to create and store XQuery
instructions. These XQuery instructions support input parameters and are used to query master data grouped
in the central XML repository.
The input parameters of the XQuery instructions are defined as a % sign followed by a number. For example:
%0, %1, %2,%n.
A stored procedure can be executed directly from Talend MDM Studio or attached to a specific report in the
Web User Interface. For more information, see How to create a report with a stored procedure in Talend MDM
Web User Interface User Guide.
You need to be comfortable with the XQuery language to use stored procedures.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio. You have
the appropriate user authorization to create a stored procedure.
To create a stored procedure, complete the following:
• In the MDM Server tree view, right-click Stored Procedure and select New from the contextual
menu.
The [New Stored Procedure] dialog box displays.
• Enter a name for the new stored procedure and then click OK to close the dialog box.
An empty editor for the new stored procedure opens in the workspace.
• In the Description field, enter a description for the stored procedure you want to create.
• In the Procedure area, enter the XQuery syntax to address the data records pertained in a specific
entity.
For more information on the XQuery language, see http://exist.sourceforge.net/xquery.htm.
The stored procedure must have certain syntax if it is to be used in generating summary reports on data stored in
the XML repository through the Web User Interface. Each result must have the following syntax:
<result><Field1>val1</Field1>...<Fieldn>valn</Fieldn></result>. The “Field#” are the fields defined in the
report page in the Web User Interface. For more information, see How to create a report with a stored procedure in Talend
MDM Web User Interface User Guide.
• Select the Refresh the cache after execution check box if you want to refresh the cache after the
execution of the Xquery of the stored procedure.
This is necessary as a stored procedure may perform an insert/update/replace Xquery that is
executed directly at the database level. Because of the cache, the change may not be reflected.
The sample XQuery code that shows in the above captures calculates the sum of the prices of all the
records, two cups in this example, listed under the Product entity.
• Click the save icon on the toolbar or press Ctrl + S on your key board to save the procedure.
To execute the stored procedure, complete the following:
• In the Execute Procedure section of the stored procedure editor, select the data container holding
the data records on which you want to execute the query.
• Click Execute Procedure.
A dialog box opens prompting you to set the query parameters.
• Set the minimum and maximum parameters in the corresponding fields. Here we want to calculate
cup prices that are between 0 and 100.
• Click OK.
The result of the operation carried out by the XQuery on the defined data records displays in the
lower half of the stored procedure editor.
In this example, the XQuery code used on the Product entity calculates the sum of the prices of the listed
cups.
An authorized user can also import/export, copy/paste, duplicate and delete stored procedures from Talend
MDM Studio.
• Enter a name for the new stored procedure and click OK to validate the changes and close the
dialog box.
The new stored procedure is listed under the Stored Procedure node in the MDM Server tree
view.
• Enter a name for the new stored procedure and click OK to validate the changes and close the
dialog box.
The new stored procedure is listed under the Stored Procedure node in the MDM Server tree
view.
You can also duplicate the stored procedure if you drop it onto its parent node in the
MDM Server tree view.
4.5 Workflows
Talend MDM Studio provides a Workflow perspective where workflows can be defined, laid out and shared
in a graphical format. In this perspective, you can define what steps are necessary, and in what order, to
complete a workflow. For further information, see Designing a workflow from scratch on page 216.
Talend MDM Studio provides you with a workflow wizard that simplifies the creation of a workflow. For
further information, see Designing a workflow using the workflow wizard on page 211.
Once a workflow is created, you can deploy it directly into the MDM perspective of Talend MDM Studio.
Then a Process based on the workflow can be generated to initiate human or machine interventions on master
data records in a specific business entity. You can also set specific security access rights for users when they
update master data through a workflow process.
For more information on deploying workflows, see Deploying a workflow on the MDM server on page 234.
For more information on Process generation, see Generating a workflow execution Process on page 237. For
further information on workflow access security, see Setting up workflow access security on page 242.
Talend MDM Studio enables you to automatically generate one or more workflows on the same business
entity through a workflow wizard. You may also create a workflow from scratch, for further information,
see Designing a workflow from scratch on page 216.
The advantages of the workflow wizard over designing a workflow from scratch is that it automatically:
• generates all MDM and xpath variables necessary for the workflow,
• generates the MDM connector necessary to establish the connection between the generated
workflow task that needs human or automatic intervention and the data records to be updated on
the MDM server,
• defines the roles (users) that are required to intervene at one or several task(s).
The generated workflow will have a start and end nodes in addition to a Sample task with an MDM
connector. You can then add more tasks to your workflow and define task links according to your needs.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio. At least one
data model exists.
To automatically generate a workflow on a specific business entity, complete the following:
This procedure is based on the example detailed in Designing a workflow from scratch on
page 216.
• In the MDM Server tree view, expand the Data Model node and double click the name of the data
model that holds the entity on which you want to generate a workflow.
An editor opens on the selected data model.
if you have already created another workflow on the selected entity, make sure to change the
by-default workflow name displayed in the corresponding field. Otherwise, your new
workflow will overwrite the previous one.
From this wizard, you can define the MDM and xpath variables necessary for the workflow and the roles
(users) that are required to intervene at a specific step (task).
• Click the button below the XPath table to add a new xpath line.
• Click in the XPath line to display a three-dot button then click this button to open a dialog box.
The selected entity in the data model will be listed in the dialog box.
• Expand the business entity node and select the attribute on which you want to generate the
workflow.
• Click Add at the bottom of the dialog box to validate your changes.
The selected xpath is listed in the XPath list in the workflow wizard.
• Repeat the procedure to add as many attributes as needed.
In this example you want to generate a workflow to validate an agent commission, so you need the
agent id, CommissionCode and Status. You may want to show in the task detail as well the agent
Firstname and Lastname.
• In the Role definition area and from the Role Name list, select the role to which you want to give
the privilege to approve the commission code. Repeat the procedure to add as many roles as
needed.
The Role Name list includes all Talend MDM Studio default roles and also those defined by
the administrator.
• If required, select the Generate the process for this workflow check box in order to generate a
Process for the workflow.
• Click Finish to validate your changes and close the wizard.
A progress information bar displays followed by a confirmation message.
• Click OK to close the message.
The generated workflow opens on the workspace and is automatically deployed on the MDM
server.
This workflow has a start and end nodes in addition to a Sample task for which the MDM connector and
actor(s) have been automatically defined according to the parameters you set in the workflow wizard.
• Switch to the Workflow perspective.
From this perspective, you can see that all MDM and xpath variable have been automatically defined for
the workflow. You can now add more tasks and do necessary modifications to complete the workflow
according to your needs.
In this example, you want your workflow to enable one business user to initiate a change in the commission
code of an agent and a second business user to validate this change.
For further information on such a workflow, see Designing a workflow from scratch on page 216.
The commission code validation must move through two processes:
• automatic approval: when the commission code is less than two,
• human approval: when the commission code is greater than or equal to two.
For further information on how to set the above conditions on the links between the tasks in the workflow,
see How to define Talend connectors in the Workflow perspective on page 223.
Your complete workflow may look like the following:
In order to design a workflow from scratch without difficulty, you must have enough experience in designing a
workflow graphically. For further information, check
http://www.bonitasoft.org/wiki/doku.php?id=quickstartguide.
From the Workflow perspective in Talend MDM Studio, you can design a workflow graphically. This
workflow is defined as a sequence of connected steps that will require human or automatic intervention.
Each step in the workflow is enabled after the completion of the previous step.
When a given workflow is triggered, all tasks included in it will need to be fulfilled. Any required human
intervention will be listed in Talend MDM Web User Interface. A workflow may require a business user
or data steward to have constant interaction with master data.
To design a workflow graphically in the Workflow perspective in Talend MDM Studio, complete the
following:
• In the upper right corner of the Talend MDM Studio main window, click the button and then
Other... to display the [Open Perspective] dialog box.
• Select Workflow and then click OK to close the dialog box and proceed to the next step.
The Workflow perspective displays.
• On the menu bar, click Process and then select New from the contextual list.
A default workflow diagram displays in the graphical perspective.
• Click in the workflow to select the workflow pool and then in the Details view click Pool and set
a name and a description for the new process.
• Draw the steps and transitions in the workflow and assign them either human or automatic
intervention.
• Add conditions to transitions to manage multiple output choices from a step, i.e. add the data that
will be used by the condition you define for each transition.
• Add global variables and local variables to the workflow and to individual steps respectively.
For detailed information on designing a workflow, check
http://www.bonitasoft.org/wiki/doku.php?id=quickstartguide.
• Save the workflow.
The workflow is now ready to be deployed or exported from the Workflow perspective onto the
MDM perspective where it can be included as a step in a process. For more information, see
Deploying a workflow on the MDM server on page 234.
You can simplify the process of creating a workflow if you use the workflow wizard. For
further information, see Designing a workflow using the workflow wizard on page 211.
A workflow example:
Consider an example where one or several business users can change the commission code of an agent and
this change needs to be validated by other authorized business users. In order to accomplish this process,
you may want to design a Runnable Process and a workflow in Talend MDM Studio. The Runnable
Process, directly accessible through Talend MDM Web User Interface, will launch a workflow that will
enable one data steward to change the commission code and another data steward to validate this change.
For further information on the Runnable Process, see Process types on page 117 and How to create a
runnable Process on page 139.
You could decide that this validation must move through two processes:
• automatic approval: when the commission code is less than two,
• human approval: when the commission code is greater than or equal to two.
This means that the commission code will be automatically approved if it is less than two. However, if the
commission code is greater than or equal to two, it will be listed in Talend MDM Web User Interface as
a task that requires human intervention. An authorized business user or data steward must access the Web
User Interface and decide whether to approve the commission. Once the commission is approved, this
defined task in the workflow is complete.
The workflow below graphically illustrates this example.
In order to be able to trigger such a workflow from the MDM perspective, you must define the following
in the Workflow perspective:
• MDM variables: For more information, see How to define MDM variables in the Workflow
perspective on page 220.
• MDM connectors, For more information, see How to define Talend connectors in the Workflow
perspective on page 223.
• MDM user roles. For more information, see How to define MDM user roles in the Workflow
perspective (task assignment) on page 230.
You can simplify the process of defining the MDM variables, connectors and user roles if you
create the workflow using the workflow wizard. For further information, see Designing a
workflow using the workflow wizard on page 211.
In order for the process to be able to call the workflow, you must manually define in the Workflow perspective all
built-in variables in addition to the variable name and variable xpath defined in the MDM perspective as the
WorkflowTrigger parameters. Otherwise a processing error message will display.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio. At least
one workflow exists.
To define the MDM variables in the Workflow perspective, complete the following:
• Open the workflow in the Workflow perspective and click in the workflow pool.
• In the lower part of the perspective, click the Data tab to open the corresponding view.
• first, define variable names for the MDM host and port, data container, data model and data
version. These variables must be prefixed with MDM_. These variables are considered as
"technical" variables.
• second, define a variable name and a variable xpath for the entity Id and for any other element
of the entity used in the workflow. These variables must be suffixed with _xpath. These
variables are used to store the path of the attribute (element) in the MDM data model.
The workflow in this example will initiate automatic and human interventions on the data records in
the Agent business entity. You must then define all MDM built-in variables and also the name and
xpath variables for the agent Id, agent first and last names, commission code and status. Thus the
workflow task that will be listed in Talend MDM Web User Interface will look as the following:
• In the workflow Detail view, click the Add... button to open the [Add a new variable] dialog
box.
• In the Name field, enter a name for the new variable, MDM_host as the first built-in variable.
• From the Data type list, select Text.
• Click Finish to close the dialog box.
• Repeat the above steps to define text variables for the MDM port, data container, data model
and data version.
Now, you must define the name and xpath variables for the entity Id and entity attributes.
• Click the Add... button to open the [Add a new variable] dialog box.
• In the Name field, enter the name of the variable representing the entity Id, Agent_Id in this
example.
• From the Data type list, select Text.
• Click Finish to close the dialog box.
The new variable is listed in the Data view.
• In the same way, create another variable and call it Agent_Id_xpath.
• Repeat the above steps to define name and xpath variables for the agent first and last names,
commission code and status.
Following the same procedure, you can also add variables inside specific steps in the
workflow after selecting the desired step and clicking the Data tab. Such variables will
be visible for users only when they select the step in the workflow and then click the Data
tab.
MDM connectors that you can use to update master records include: TalendMDMConnector and
sometimes JobLauncher.
The table below lists possible operations through the available Talend connectors:
The section below gives an example about how to attach to a task the TalendMDMConnector that
will establish the connection between the workflow and the master data record that needs to be
updated.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio. At least
one workflow exists.
To attach a Talend connector to a task that requires automatic intervention, complete the following:
• In the Workflow perspective, open the process and then click the task to which you want to
add connectors.
• In the lower part of the perspective, click the Connectors tab to open the corresponding view.
• Expand the Talend node and select the connector you want to attach to the selected task. In this
case, we want to add a connector to update master data in the Agent business entity.
Four operations are possible through the available Talend connectors: launch a Talend
Job, update master data records in a specific business entity, search a stored procedure
and search through an MDM view. The steps that follow differ according to the selected
option.
• Click Next to proceed to the next step: set the connector parameters.
• In the Name field, enter a name for the new connector you want to add to the selected task.
• If required, set a description in the Description field.
• In the Select event area, select the option you want to use to initiate the connector.
The available options represent various steps in the task life cycle when the defined
connector can be initiated. With tasks that need human intervention, extra steps are
available at which defined connectors can be initiated, namely: start, suspend and
resume.
• In the If connector fails... field, select the appropriate procedure in case of connection failure.
• Click Next to proceed to the next step: set parameters to connect to the MDM server.
• Select/enter the host and port variables corresponding to the MDM server.
• In the Version field, select/enter the variable corresponding to the Version on the MDM server
to which you want to connect.
You can click the Save connector configuration... tab to save the current connector
configuration in order to use it again.
• In the Update Settings area, click Add row to add lines in the table and then select/enter the
variable names and values that will define the business entity that holds the records you want
to update.
In this example, you want to allow the validation of any change in the commission code of an
agent in the Agent business entity. You need three attributes: the agent identifier, the
commission code and the status (approved or not).
You can use the fields below the link Set value as expression to set the settings of the
update operation as expressions in place of defining them in the table above the link.
• If required, click the Save connector configuration... tab to save the current connector
configuration for repeated usage.
• Click Finish to close the dialog box.
The new Talend connector configuration is added to the list of connectors in the Connectors
view.
You must now set the link conditions in your workflow as the following:
• Click the link between Input New... and Commission Approval to open the Details view in the
lower part of the Workflow perspective.
• In the Name field, enter a name for the selected link, Commission Code >= 2 in this example.
• Set the condition in the Condition field, CommissionCode.toInteger() >= 2 in this
example.
• If required, select the Display condition instead of name check box to display the condition
itself above the link in the workflow itself.
• Click the link between Commission Approval and Reject Commission and follow the same
steps to set the condition approved == ”no” for the link Not Approved.
• Click the link between Input New... and Approve Commission and follow the same steps to set
the condition CommissionCode.toInteger() < 2 for the link Commission Code < 2.
• Save your workflow.
The names of the defined links display on the corresponding links in the workflow.
How to define MDM user roles in the Workflow perspective (task assignment)
When designing a workflow in the Workflow perspective of Talend MDM Studio, you must define
the user role(s) that are required/authorized to intervene at specific tasks. These users are the same
business users and data stewards that have the appropriate authorization to access the Talend MDM
Web User Interface and view and/or edit master data records.
To share the same users between the workflow and the Web User Interface, you must define users in the Workflow
perspective using the exact “role name” used when creating the user role in the MDM perspective of Talend
MDM Studio. For more information on creating and managing roles, see Security on page 265.
• Select a connector for the new group from among those in the list: Expand the Talend node
and select MDM Role-- Talend MDM Roles to connect to the user roles created in the
Talend MDM Studio.
• Click next to proceed to the next step.
• In the Name field, enter a name for this new group of users, General_Manager in this
example.
• Click Next to proceed to the next step.
• In the lower part of the perspective, click the Actors tab to open the corresponding view.
• Select the Group option, if not selected by default, to assign a group of users to the selected
task in the process and then click Choose.
The [Assign actors] dialog box displays.
• Select one or more groups of users to assign them to the selected task and click Finish to
close the dialog box.
In this example, you want to assign the General_Manager role to the Commission Approval
task. This means that only business users that have been assigned this role in Talend MDM
Web User Interface will be able to intervene at this task and approve the change in the
commission code. For further information, see How to approve tasks in a workflow in the
Talend MDM Web User Interface User Guide.
The General_Manager group of users is assigned to the Commission Approval step in the process.
Talend MDM Studio enables you to store on the MDM server all the workflows created in the Workflow
perspective which is part of the MDM Studio. This can be done through an import/export manual operation
or through direct deployment on the server.
For more information on the different tools integrated in the MDM Studio, see A comprehensive set of tools
on page 5.
You must clear the Talend check box in Dependencies - Provided libs in the Details view of each of the
workflows you want to export in order not to include the code of these connectors in the exported .bar file. The
correct code for Talend connectors must be defined manually by you. For more information, see How to define
Talend connectors in the Workflow perspective on page 223.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio.
At least one workflow exists.
To export one or more workflow processes and application files, complete the following:
• In the Workflow perspective, click the Process menu and select Export....
The [Export] dialog box displays.
• From the workflow list, select the Process check box and Application check box that
correspond to the workflow of which you want to export the .bar and .war files.
• Click Browse to set the path to the target folder that will hold the exported files.
Usually, you would want to put it directly in the server folder where you want it to be
functional, in the following path: jboss-4.2.2.GA\server\default\deploy.
• Click Export to export the selected workflow(s) and close the dialog box.
The exported files along with a README text file are exported to the target folder.
When you export a workflow manually, you must delete bonita-client.jar in WEB-INF/lib in order not to have a
classloader conflict between tem.ear and bonita.war.
You can also deploy on the MDM server a customized form of a workflow task you
define yourself according to your needs. For further information, see Creating
customized forms for workflow tasks on page 245.
• Select from the list the MDM server on which you want to deploy the workflow and then
click OK.
You can find in this list all connections to the MDM server defined when launching the
Studio. For further information, see Launching Talend MDM Studio and connecting to the
MDM server on page 11.
A progress information bar displays followed by a message that confirms the deployment
operation.
• Click OK to close the confirmation message.
• In the MDM perspective, right-click Workflow and then select Refresh.
The deployed workflow is listed under the Workflow node.
Talend MDM Studio enables you to automatically generate Processes based on the workflows listed
under the Workflow node in the MDM Server tree view.
Once this Process is generated, you can attach it to a Trigger. When the Trigger is kicked off, it will
launches the Process that will initiate the workflow itself. This will list any required intervention on data
records in the Web User Interface in the form of workflow tasks.
For more information on creating and managing Triggers, see Triggers on page 161. For more information
on workflow tasks, see Managing workflow tasks in the Talend MDM Web User Interface User Guide.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio. At least one
workflow has been created and deployed on the MDM server.
Two steps are automatically defined and listed in the process Steps Sequence area. The first step generates
the item primary key from the Update Report through using the xslt plugin. The second step passes the item
and the item primary key to the Talend MDM workflow engine using the workflowtrigger plugin. For
further information on Processes, see Processes on page 116.
• If required, select the Generate the item pk from the update report step to display its detail and
parameters.
• Select the Invoke the workflow step to display the step detail and parameters.
The Parameters area gives you access to two different views Source and Sheet. The Source view lists
the detail of the automatically generated XML document with all the variables used in the workflow. This
document is used to map the MDM attributes values and xpaths to the workflow variables.
Here, you can modify any of the parameters/variables according to your needs and according
to what you have defined in the workflow.
The Sheet view displays a tabular list of all the variables used in the workflow. You can use the and
buttons below the table to modify these values.
The Use built-in variables check box is selected by default. If your workflow does not need
to connect to the MDM server, you can clear this check box.
From this view, it is also possible to invoke any of the workflows deployed on your MDM server. To do
this, complete the following:
• Click the Select from the deployed workflows... bar to display a list of all the workflows already
deployed on your MDM server.
• Select the workflow you want to invoke and then click OK to close the dialog box.
The name of the selected workflow displays in the ID field of the Parameters area.
• In the Variables area, use the and buttons below the table to modify the variable names and
xpath values according to the workflow you selected.
• Save your modifications.
What you must do now is to define a trigger in order to call this process. When the Trigger is kicked off,
it will launches the Process that will initiate the workflow itself. This will list any required intervention
on data records in the Web User Interface in the form of workflow tasks. For further information, see
Triggers on page 161.
Talend MDM Studio allows you to set specific security access rights for users when they update master
data through a workflow process. Usually when you define the users that are required to intervene at a
specific step in a workflow, see How to define MDM user roles in the Workflow perspective (task
assignment) on page 230, these users have a write access to all the attributes defined as variables in the
workflow. However, it is possible to set restrictive access rights (Read-only, or Hidden for example) on
few of these attributes when browsing the records in Talend MDM Web User Interface.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio. At least one
workflow has been created and one user role has been defined in the Workflow perspective. For further
information, see Designing a workflow using the workflow wizard on page 211 and How to define MDM
user roles in the Workflow perspective (task assignment) on page 230.
The following procedure is based on the workflow created in Designing a workflow from
scratch on page 216.
To set up access rights to master data through a workflow process, complete the following:
In this example, you are going to set workflow security for the General_Manager role group created as
outlined in How to define MDM user roles in the Workflow perspective (task assignment) on page 230.
This General_Manager group needs only to validate any change in the commission code of an agent in
the Agent business entity. And as this group needs a write access only to the CommissionCode and Status
attributes, you may want then to grant them a read-only access to the Id, Firstname, and Lastname
attributes in the same business entity.
• In the MDM Server tree view, browse to your data model under the Data Model node, DStar in
this example, and double-click it.
The data model editor displays.
• Expand the Agent entity and browse to the Id attribute, right-click it and select Set the Workflow
Access.
A dialog box displays.
An annotation representing the defined workflow access right displays below the Annotations folder of
the Id node in the Agent business entity.
• Repeat the above steps to define a read-only access to the Lastname and Firstname attributes.
From now on, when a business user assigned the General_Manager role accesses the workflow task
through Talend MDM Web User Interface, the task detail will have the Identifier, Firstname and
Lastname fields as read-only.
Whenever a data steward accesses Talend MDM Web User Interface to approve a workflow task
assigned to him/her, the task details display in an automatically generated form “default form”. However,
there is a way to design a customized form instead of this auto-generated form.
From the Workflow perspective in Talend MDM Studio, you can create a customized form for any
workflow task that needs human intervention. Later when the data steward accesses the auto-generated
form of this task in Talend MDM Web User Interface, he/she can jump to the customized web application
generated with the form defined in the Workflow perspective. For further information, see How to approve
tasks in a workflow in the Talend MDM Web User Interface User Guide.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio. At least one
workflow has been created.
To create a customized form for a workflow task, complete the following:
• Open the workflow process in the Workflow perspective of Talend MDM Studio.
• Select a step that requires human intervention.
The details of the selected step display in the Details panel.
• In the Details panel, click the Forms tab to display the corresponding view.
• Enter a name for the customized form and click the Add... button to open a dialog box and start
defining the customized form.
• If required, modify the name and enter a description in the corresponding fields.
• In the list, select the check boxes of the variables you want to include in the customized form and
then click Finish to close the dialog box.
The form opens in the Workflow perspective.
In this example, you want to show in your customized form only the agent first and last names and whether
the commission code is approved or not. So you need to define only three fields in this customized form:
approved, Agent_Firstname and Agent_Lastname.
You can use the plus/minus buttons to add/remove columns or rows in your form.
• If required, select each of the rows (variable field) in the customized form to see its detail
information and do any modifications according to your need.
• Do the same to define the detail of all the other rows in the customized form, if required.
• Save your customized form and then close it to go back to your workflow.
• On the menu bar, select Export to MDM Server - Export the Custom Forms in order to deploy
the form on the MDM server.
The [Export Custom Forms] dialog box displays.
• Select from the list the MDM server on which you want to deploy the customized form and then
click OK.
A message displays to confirm the deployment operation.
• Click OK to close the confirmation message.
After you define and deploy the customized form for a workflow task, it is possible for a data steward or
business user to switch between the default form and this customized form in the workflow task detail view
in Talend MDM Web User Interface.
You can also decide what template to use for this customized form among few available
Bonita templates and one Talend template. For further information, see Using a Talend
template as the customized form for the workflow task on page 251.
The default form will show all the MDM variables defined in the workflow.
For further information on using this form, see How to approve tasks in a workflow.
4.5.7 Using a Talend template as the customized form for the workflow
task
After creating a customized form for any workflow task that needs human intervention as outlined in
Creating customized forms for workflow tasks on page 245, you can use a Talend web template for this
customized form. Later when a data steward accesses the workflow task detail in Talend MDM Web User
Interface, the task detail will open with this Talend web template by default.
The data steward can always switch between this custom form and the default form. For further
information, see How to approve tasks in a workflow in the Talend MDM Web User Interface User
Guide.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio. At least one
workflow has been created.
To use a Talend web template for a workflow task, complete the following:
• Open the workflow process in the Workflow perspective of Talend MDM Studio.
• Click in the workflow pool to select the workflow.
• In the Details view below the workflow, click the Application tab to open the corresponding view.
• Click the Look ‘n Feel tab to open the corresponding view.
• Click the Apply a look ‘n Feel to open a dialog box where you can select one of the available
templates.
• Select a web templates according to your needs. Here you want to use the Talend web template.
• Click Finish.
The dialog box closes and the details of the Talend template display in the fields in the Look ‘n
Feel view.
• Select from the list the MDM server on which you want to deploy the template of the customized
form and then click OK.
A message displays to confirm the deployment of the customized form on the MDM server.
• Click OK to close the confirmation message.
From now on when a data steward accesses the workflow task detail in Talend MDM Web User
Interface, the task detail will open with this Talend web template by default. The data steward can always
switch between this custom form and the default form.
This custom form will show only the variable you define when creating the custom form while the default
form will show all the MDM variables defined in the workflow.
For further information on using the two forms, see How to approve tasks in a workflow.
Talend MDM Studio enables you to carry out some management option on workflows directly from the
workflow editor in the MDM perspective.
• In the MDM Server tree view, expand Workflow and then double-click the workflow you want
to manage.
All workflow detail display in an editor.
The workflow editor lists all instances of the workflow, i.e. every time the workflow has been triggered.
• Select any process instance in the Process Instance List to display the tasks attached to the selected
instance in the Process Tasks list.
The sections that follow explain the workflow management options available from the workflow editor.
You can access the list of all workflows via the Bonita console on the MDM server to do other
advanced operations on the created workflows and manage the included tasks easily and
quickly. For further information, see Other workflow management options from the Bonita
console on page 259.
Icon Function
Assigns the selected task to a business user. For further information, see
How to assign a workflow task on page 256.
Suspends the selected task. For further information, see How to suspend a
workflow task on page 258.
Sets a priority for the selected task among: Normal, High or Urgent.
• From the Process Instance List, select the workflow instance of which you want to display
the attached tasks.
• From the Process Tasks list, select the task for which you want to assign one or more
business users.
A dialog box displays listing current business user(s) attached to the task.
You can not assign business users to the workflow tasks that have a FINISHED
status.
• Enter a user name in the name field and then click Add to add it to the candidates list.
You must use the exact name of the workflow users defined in the Web User Interface and assigned the roles
defined in the workflow design. For more information on creating and managing roles, see Security on page 265.
For more information on creating and managing users, see Security in the Talend MDM Web User Interface User
Guide.
• Click Apply to validate your changes and close the dialog box.
The user name is added to the Candidates column in the Process Tasks list.
• From the Process Instance List, select the workflow instance of which you want to display
the attached tasks.
• From the Process Tasks list, select the task you want to suspend, and then click the
button in the lower left corner of the editor.
The status of the selected task changes to SUSPEND.
• Click the button in the lower left corner of the editor when you want to resume the
workflow task.
• Enter the Bonita console URL in the web browser and click to open the Bonita
authentication page.
The address is structured as follows: http://[server
address]:8080/bonita/console/login.jsp?redirectUrl=%2Fbonita%2Fconsole%2FBonitaCon
sole.html.
• On the authentication page, enter the same authentication information you use for Talend
MDM Web User Interface and click Login to open Bonita User Experience.
• In Bonita User Experience, select any option from the panel to the left to display the
corresponding information.
From this web interface, you can do operations on the created workflow that you can not do from the
MDM perspective.
Talend MDM Studio enables you to import into your current Studio MDM projects/objects created by Talend
community and uploaded on Talend Exchange.
From Talend MDM Studio you can share Talend community MDM projects through importing them
from Talend Exchange into your current MDM server.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio.
To import one or multiple MDM projects from Talend Exchange into the current MDM server, complete
the following:
• In the MDM Server tree view, right-click the MDM server URL or any of the data objects in the
view and then select Import from the contextual menu.
The [Import Objects] dialog box displays.
• Select the Select archive file option and then click Import from Talend Exchange.
A dialog box displays and lists all the community MDM projects uploaded on Talend Exchange.
• Select from the list the MDM project you want to import into your current MDM Studio and then
click OK.
All MDM data objects of the selected project display in the [Import Objects] dialog box and
selected by default.
• Click Finish to validate the import operation and close the dialog box.
All data objects in the selected MDM project are exported and listed under the corresponding nodes
in the MDM server tree view of your Studio.
4.6.2 Importing the xsd schema for a specific data model from Talend
Exchange
From Talend MDM Studio you can share Talend community MDM data object (data model) or part of
the data object (simple or complex types that can be reused in a data model) through importing it from
Talend Exchange into your current MDM server.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio.
To import a data object or part of the data object from Talend Exchange into the current MDM server,
complete the following:
• In the MDM Server tree view, expand Data Model and then double-click any of the data models
in the list.
The data model editor displays.
If required, double-click the URL to open the selected data model page in Talend Exchange
and view more information about the data model.
If you want to delete any of the data models from the list, select the data model and click
Delete xsd modules.
• Click OK to validate the import operation and close the dialog box.
This chapter provides the information you need to set rules on who can read, create, update, and
delete data and what privacy policies are enforced.
Before starting any of the MDM management procedures included in this chapter, you need to be
familiar with the Talend MDM Studio Graphical User Interface (GUI). For more information,
see Getting started with Talend MDM Studio on page 9 and Talend MDM Studio management GUI
on page 277.
Security
Security principle in Talend MDM
Security in Talend MDM, i.e. the studio and the web user interface, is defined by the combination of users
and associated roles.
Users are people who use Talend MDM and they are managed through Talend MDM Web User Interface.
A user inherits privileges from one or more roles. A role is a set of rights on Data Containers, Data Models,
Views, Triggers, Workflows, etc. Roles are defined in Talend MDM Studio and they govern the access
authorization on every object of the repository in both Talend MDM Studio and Talend MDM Web User
Interface.
You can access a list of all users that have been defined in Talend MDM Studio if you double
click the PROVISIONING system data container in the MDM Server tree view. A simple click
on the icon will list all Talend MDM users, i.e. users of the studio and the web user
interface. Then a double-click on any user in the list will display all the detail of the selected user. In this
dialog box, you can also see the XML source of the document if you click the Source tab.
In addition, Talend MDM offers granular security for entities, down to the attribute level. This access control
is done inside the data model through setting up specific annotations. For further information, see How to
define access control at the entity level (access control annotation) on page 45 and How to define access
control at the attribute level (access control annotation) on page 48.
Finally, Talend MDM provides record-level security, horizontal security, which is set through the Views
defined for each user role. You can use the View to filter the records that are accessible for a role. You can also
create multiple Views on the same entity to allow users to have different predefined accesses on the records.
For further information, see Views on page 91.
Talend MDM Studio is provided with by-default user types. A specific role is defined for each type. These
roles are system roles, they are listed in the System folder under the Role node in the MDM Server tree view.
Whenever a user is added to a system role, except for View users, the total number of users in the role is
incremented and compared to the corresponding field in the license token.
Each user type has a different scope when using Talend MDM.
The table below describes the roles/rights for each default-user type in Talend MDM Studio.
User type Role in MDM Can run Can use the Can connect through a Job or any
the Studio Web UI other Web Service call
Admin System_Admin Yes Yes Yes
Interactive System_Interactive No Yes Yes
Web System_Web No Yes No
View System_View No Yes—Read Only No
The login and password that are provided by Talend enable an administrator to get through the authentication
page and access Talend MDM Studio. Then this administrator can define role permissions and what data
objects or items pertained in data objects are accessible for a specific role. For further information, see Roles
and access control on page 267.
These functional roles that are defined centrally in the Studio are then assigned to business users through
Talend MDM Web User Interface. For further information, see the Security chapter in the Talend
MDM Web User Interface User Guide.
When you connect to the Studio as a Talend administrator, you have only the rights to manage
roles and access control in the Studio, but you do not have any of the other rights of the
System-Admin.
Every user must belong to a system role. If a user does not belong to a system role, he/she cannot use Talend
MDM.
Administrators belong to the System_Admin role. They are interactive users with no security restriction
in Talend MDM Studio, Talend MDM Web User Interface or any other access: Job, Web Service
etc.
Interactive users belong to the System_Interactive role. They can be considered as “normal” users. They
can use Talend MDM Studio, but the access to the various MDM objects is subject to the security
settings in their roles. They can launch Talend MDM Web User Interface with read and write access.
They can also be used in the connectivity settings of an MDM component.
Users connecting through Talend MDM Web User Interface belong to either the System_Web role,
or the System_View role.
The difference between System_Web and System_View users is that the latter will only access
the Web UI in a read-only mode.
A user who belongs to the System_Web or System_View role cannot connect to MDM by any means other
than the Web UI. He/she can connect neither through the Studio, nor through a Job, nor through a direct
call to the Web Service.
In order to establish clear user roles and responsibilities, Talend MDM Studio offers a very fine-grained
role-based security feature that involves the Studio and the Web User Interface as follow:
• The role-based security is defined centrally in Talend MDM Studio by the MDM administrator
and/or designer of the Data Model. For further information, see Creating a user role on page 268.
• The user management is covered by decentralized business people via Talend MDM Web User
Interface. Their task is, for instance, to assign a new user to a functional role (or to several roles). For
further information, see Assigning a different role to a user in Talend MDM Web User Interface
User Guide.
For each user role, it is possible to define:
• role permission (Read and Write or Read only),
• which data objects or items pertained in data objects are accessible.
The main data objects for which you can set access control are:
• Data containers: grant permission to store data in different containers,
• Data models: grant permission to define or modify data entities,
• Items: grant record-based access in read-only or write modes,
• Menus: grant access for business users to menus in Talend MDM Web User Interface,
• Processes: define the actions a user can trigger,
• Versions: grant access to multiple technical, functional and time-related environments,
• Views: offer access, search and filter functions on data via Talend MDM Web User Interface.
Access restrictions are applied immediately upon successful connection to the XML repository.
From Talend MDM Studio, the administrator can create as many roles as needed and grant specific rights
and privileges on different data objects and pertaining items.
The MDM server is delivered with the following default roles: System_Admin,
System_Interactive, System_Web, and System_View.
Once the role is created, an authorized business person can assign this role to any user through Talend
MDM Web User Interface. For more information, see Security in Talend MDM Web User
Interface User Guide.
You must always define access control to business entities and attributes in the data model for
the role you create. This will set what type of access to business entities and attributes is
attached to this role. For further information, see How to define access control at the entity
level (access control annotation) on page 45 and How to define access control at the attribute level
(access control annotation) on page 48.
Prerequisite(s): You have already connected to the MDM server from Talend MDM Studio. You have
the appropriate user authorization to create a user role.
To create a user role, complete the following:
• In the MDM Server tree view, right-click Role and select New Role from the contextual menu.
The [New Role] dialog box displays.
• Enter a name for the new user role and then click Next to open the Role Type view on the dialog
box.
• Select one of the two available options according to the role type you want to create and click
Finish.
The dialog box closes and an editor for the created role opens in the workspace.
• Click the three-dot button next to Description to open a dialog box where you can add multilingual
labels to the new role.
• From the list to the left, select a language and enter the corresponding role description in the field
to the right.
• In the Object Type field, select the data object type to which you want to give a role permission
such as .
From this list you can give access permission to any of the data objects you can find in the MDM
Server tree view such as Version, View, Menu, Data Container, Data Model, etc.
• In the Read and Write Permissions on Specific Instances field, select the data object itself to
which you want to give access.
The use of regular expressions is supported. For example, if you want to grant the new role
an access to all views, enter “Browse_items-.*” in the field.
• In the field to the right, select the permission type you want to give to the new role. Read Only is
the by-default type.
• Click the button to add the item to the table in the lower half of the editor.
• Click the save icon on the toolbar or press Ctrl + S on your key board to save your changes.
The newly created user role is listed under the Role node in the MDM Server tree view.
An authorized user can also import/export, copy/paste and delete created user roles from Talend MDM
Studio.
You can choose what to include (models, data records, roles, Triggers, etc.) in each of these new
Versions. For more information on defining Master Data Management Versions, see Versions on page
184.
From Talend MDM Studio you can have an overview of the existing Version(s) of user roles, if any.
This will help you check whether user roles are included only in the main Master Data Management
Version or if they are also included in other Versions.
Two cases are possible:
• If the user role has [HEAD] as version ID, then the role is shared with the main MDM Version
and every change in the role parameters will be reflected in the main Version for everyone else
to see, Or,
• If the role has its own version ID, then it is not shared with the main MDM Version and any
change in the role parameter will be reflected only in this specific Version.
To browse the Versions of user roles, complete the following:
Prerequisite(s): You have already connected to the MDM server in Talend MDM Studio. At least
one user role exists.
• In the MDM Server tree view, right-click the Data Model node and select Browse Revision
from the contextual menu.
The corresponding view displays to list available Versions.
• Click any revision ID in the RevisionID list to display the corresponding Version in the
Version list.
Prerequisite(s): You have already connected to the MDM server in Talend MDM Studio. At least
one user role exists.
To edit a user role, complete the following:
• In the MDM Server tree view, expand the Role node.
• Right-click the user role you want to edit and select Edit from the contextual menu.
An editor opens on the selected user role.
• Modify the user role permissions as needed through selecting the data object type to which you
want to give access, selecting the data object itself and finally giving a read-only or a write
access. For further information, see Creating a user role on page 268.
• Click the save icon on the toolbar or press Ctrl + S on your key board to save your changes.
The selected user role is modified accordingly.
• Enter a name for the new user role and click OK to validate the changes and close the dialog
box.
The new user role is listed under the Role node in the MDM Server tree view.
• Enter a name for the new user role and click OK to validate the changes and close the dialog
box.
The new user role is listed under the Role node in the MDM Server tree view.
You can also duplicate the user role if you drop it onto its parent node in the MDM
Server tree view.
This appendix describes the Graphical User Interfaces (GUI) of Talend MDM Studio.
Main window of Talend MDM Studio
Talend MDM Studio main window is the interface from which you can carry out administration tasks and set
the parameters of the platform.
For more information about possible administration procedures within Talend MDM Studio, see Setting
data governance rules on page 27, Advanced subjects on page 183 and Security on page 265.
The Talend MDM Studio main window is divided into:
• a menu bar,
• a toolbar,
• a tree view area,
• a workspace,
The figure below illustrates an example of a Talend MDM Studio main window.
The menu bar headers and submenus help you perform operations in open editors and pages, interact with an
application, or access help.
The table below describes various management items available in the menu.
The toolbar contains icons that provide you with quick access to the most commonly used operations
performed from the Talend MDM Studio main window.
The table below describes the toolbar icons and their functions.
Icon Function
Saves modifications
Icon Function
Opens a list of available perspectives
The MDM Server tree view area shows nodes for manageable MDM objects including Data Models, Data
Containers, Processes, Views, Roles, Versions and Triggers.
If you right-click any of these nodes or any instance under the node, you display a contextual menu with
multiple options.
The table below describes available management options for MDM objects and instances.
Option Description
Export Exports one or multiple Data Containers from Talend MDM Studio to a
specified folder.
Import Imports one or multiple Data Containers from a specified folder to the current
Talend MDM Studio.
Browse Browses the selected item.
New Creates a new MDM object.
Versioning Creates subsequent versions of the selected data object on svn.
New Category Creates a new folder.
Edit Edits the selected item.
Delete Deletes the selected item.
Copy Copies the selected object(s).
Paste Pastes the selected object(s).
Duplicate Duplicates the selected object(s).
Go Home Displays the main view of the tree view.
Go Back Restores the preceding view of the tree view.
Go Into Displays in the tree view only the items of the selected object.
B
Bonita console .............................................................................................................................259
Browsing
action .....................................................................................................................................158
data container ..........................................................................................................................86
data model ...............................................................................................................................78
trigger ....................................................................................................................................168
user roles ...............................................................................................................................271
views .....................................................................................................................................111
Business rules ...............................................................................................................................50
C
Call job schema ...........................................................................................................................127
Calling a process .........................................................................................................................155
Composite views ...........................................................................................................................97
Copying
action .....................................................................................................................................159
data container ..........................................................................................................................89
data model ...............................................................................................................................79
revision ..................................................................................................................................189
stored procedure ....................................................................................................................209
synchronization plan .............................................................................................................202
trigger ....................................................................................................................................169
user roles ...............................................................................................................................273
view .......................................................................................................................................113
Create
attribute annotations ................................................................................................................41
attributes ..................................................................................................................................33
business entity .........................................................................................................................31
data model ...............................................................................................................................29
entity annotations ....................................................................................................................37
Creating
data container ..........................................................................................................................82
data model ...............................................................................................................................29
object revision .......................................................................................................................192
process ..................................................................................................................................130
record revision ......................................................................................................................194
runnable process ...................................................................................................................139
D
Data Container
copying ...................................................................................................................................89
duplicating ..............................................................................................................................90
Data container
browsing .................................................................................................................................86
creating ...................................................................................................................................82
deleting ...................................................................................................................................91
exporting .................................................................................................................................88
importing ................................................................................................................................89
Data containers .............................................................................................................................81
Data governance ...........................................................................................................................27
Data integration tool .......................................................................................................................6
Data Model
creating ...................................................................................................................................29
exporting .................................................................................................................................74
Data model
browsing .................................................................................................................................78
copying ...................................................................................................................................79
deleting ...................................................................................................................................81
duplicating ..............................................................................................................................80
editing .....................................................................................................................................79
importing ................................................................................................................................76
Data models ..................................................................................................................................28
Data profiling tool ..........................................................................................................................6
Date and number formats .............................................................................................................60
Deleting
action ....................................................................................................................................161
data container ..........................................................................................................................91
data model ...............................................................................................................................81
revision .................................................................................................................................191
stored procedure ...................................................................................................................210
synchronization plan .............................................................................................................204
trigger ....................................................................................................................................170
user roles ...............................................................................................................................275
view ......................................................................................................................................114
Deploy job ..................................................................................................................................175
E
Editing
data model ...............................................................................................................................79
process ..................................................................................................................................159
revision ..................................................................................................................................189
stored procedure ....................................................................................................................208
synchronization plan .............................................................................................................202
trigger ....................................................................................................................................169
user roles ...............................................................................................................................272
view .......................................................................................................................................112
Entity security ...............................................................................................................................45
Event management ......................................................................................................................114
Example workflow ..........................................................................................................................7
Execute a Job ..............................................................................................................................177
Executing
process ..................................................................................................................................155
Export Job script .........................................................................................................................172
Exporting
data container ..........................................................................................................................88
data model ...............................................................................................................................74
process ..................................................................................................................................157
revision ..................................................................................................................................189
stored procedure ....................................................................................................................208
synchronization plan .............................................................................................................202
trigger ....................................................................................................................................167
user roles ...............................................................................................................................271
view .......................................................................................................................................111
F
FK .................................................................................................................................................55
FK filter .........................................................................................................................................56
Functional architecture ...................................................................................................................6
H
Horizontal security .....................................................................................................................102
I
Import Job script .........................................................................................................................173
Importing
data container ..........................................................................................................................89
data model ...............................................................................................................................76
process ..................................................................................................................................158
revision .................................................................................................................................189
stored procedures ..................................................................................................................208
synchronization plan .............................................................................................................202
trigger ....................................................................................................................................167
user roles ...............................................................................................................................271
views .....................................................................................................................................111
Inheritance&Polymorphism ..........................................................................................................64
J
Job automatic deployment .......................................................................................................... 173
Job manual deployment ..............................................................................................................171
Job repository .............................................................................................................................171
L
Lables ............................................................................................................................................41
License ..........................................................................................................................................16
M
Manage task ................................................................................................................................256
Manage workflow ....................................................................................................................... 255
Master data .....................................................................................................................................2
MDM
important terms .......................................................................................................................10
launch Studio ..........................................................................................................................11
main window ..........................................................................................................................22
migration .................................................................................................................................18
perspectives ............................................................................................................................23
MDM Principles .............................................................................................................................2
P
Plugin
crossreferencing parameters ..................................................................................................125
project parameters .................................................................................................................126
xslt example ..........................................................................................................................124
Plugins ........................................................................................................................................119
Primary key ...................................................................................................................................37
Process
browsing ................................................................................................................................158
copying ..................................................................................................................................159
creating ..................................................................................................................................130
deleting ..................................................................................................................................161
duplicating ............................................................................................................................160
editing ...................................................................................................................................159
executing ...............................................................................................................................155
exporting ...............................................................................................................................157
generate .................................................................................................................................178
importing ...............................................................................................................................158
Process types ...............................................................................................................................117
Processes .....................................................................................................................................116
Properties view .............................................................................................................................63
Protocole between MDM&jobs ..................................................................................................127
R
Recovering revision ....................................................................................................................193
Registry style lookup ..................................................................................................................105
Replacing database .......................................................................................................................20
Revision
copying ..................................................................................................................................189
creating ..................................................................................................................................187
deleting ..................................................................................................................................191
duplicating ............................................................................................................................190
editing ...................................................................................................................................189
exporting ...............................................................................................................................189
importing ...............................................................................................................................189
Runnable process
creating ..................................................................................................................................139
S
Security principle ........................................................................................................................266
Set FK ...........................................................................................................................................55
T
Talend Exchange ........................................................................................................................ 260
Import project .......................................................................................................................260
Import xsd schema ................................................................................................................262
Task Id ..........................................................................................................................................83
Transactional data ...........................................................................................................................2
Trigger
browsing ............................................................................................................................... 168
copying .................................................................................................................................169
creating .................................................................................................................................161
deleting .................................................................................................................................170
duplicating ............................................................................................................................ 170
editing ...................................................................................................................................169
exporting ...............................................................................................................................167
generate .................................................................................................................................181
importing .............................................................................................................................. 167
Triggers .......................................................................................................................................161
U
Update reports .............................................................................................................................114
User interfaces ................................................................................................................................4
V
Version
creating ..................................................................................................................................184
Versioning ...................................................................................................................................191
Versions ......................................................................................................................................184
View
browsing ................................................................................................................................111
copying ..................................................................................................................................113
deleting ..................................................................................................................................114
duplicating ............................................................................................................................113
editing ...................................................................................................................................112
exporting ...............................................................................................................................111
importing ...............................................................................................................................111
Views ............................................................................................................................................91
creating ....................................................................................................................................92
W
What is Talend MDM .....................................................................................................................3
Workflow ....................................................................................................................................211
automatic deployment ...........................................................................................................236
create .....................................................................................................................................216
customized form ...................................................................................................................245
defining connectors ...............................................................................................................223
defining user roles .................................................................................................................230
defining variables ..................................................................................................................220
deploy ....................................................................................................................................234
export ....................................................................................................................................235
generate process ....................................................................................................................237
import ....................................................................................................................................236
manage ..................................................................................................................................254
security ..................................................................................................................................242
suspend ..................................................................................................................................258
Talend customized form .......................................................................................................251
wizard ....................................................................................................................................211