Définition des types de hiérarchie dans IBMMatch 360 as a Service
Définir les types de hiérarchie qui peuvent être utilisés dans votre instance de données de base pour suivre les relations hiérarchiques entre les entités.
Les hiérarchies peuvent être utilisées pour définir de nombreux types de relations, notamment des hiérarchies juridiques, des hiérarchies de propriété, des hiérarchies de chaîne de reporting, des arbres généalogiques, des hiérarchies de produits, etc.
Dans le cadre du « IBMMatch 360 as a Service », vous pouvez modéliser des hiérarchies au sein d'un seul type d'entité ou entre plusieurs types d'entités. Pour commencer à utiliser les hiérarchies, un ingénieur des données doit définir au moins un type de hiérarchie.
Une fois qu'un type de hiérarchie a été défini, les gestionnaires de données peuvent créer des instances de hiérarchie, ajouter ou supprimer des membres et définir des relations hiérarchiques. Pour plus d'informations sur l'utilisation des hiérarchies, voir Exploration des hiérarchies.
Définition d'un type de hiérarchie
Pour permettre aux gestionnaires de données de travailler avec des hiérarchies, vous devez définir au moins un type de hiérarchie dans votre modèle de données.
- Autorisations requises
- Pour configurer une instance de données de référence, vous devez être membre du groupe DataEngineer d'utilisateurs du service IBMMatch 360 as a Service.
Pour définir un nouveau type de hiérarchie :
Dans le menu de navigation des données de base, cliquez sur Types de données
pour ouvrir la page des types de données.
Sélectionnez Types de hiérarchie, puis cliquez sur Nouveau type de hiérarchie.
Spécifiez les détails de votre nouveau type de hiérarchie :
a) Fournissez un nom d'affichage et une description pour ce type de hiérarchie.
b) Sélectionnez les types de données autorisés dans ce type de hiérarchie. Par exemple, si cette hiérarchie est un organigramme d'entreprise, vous pouvez choisir de n'autoriser que les enregistrements de type Employé.
c) Cliquez sur Créer.
Il est possible d'ajouter des attributs et des champs à la hiérarchie. pour plus d'informations. voir Ajouter des attributs et des champs à un type de hiérarchie.
Lorsque vous avez terminé d'ajouter le nouveau type de hiérarchie, cliquez sur Publier le type de données dans la barre d'action de l'écran.
Important : une fois qu'un type de hiérarchie est publié, il ne peut plus être supprimé. Vous ne pouvez supprimer les types de hiérarchie qu'avant leur publication.
Pour supprimer un type de hiérarchie non publié :
a) Cliquez sur Types de données dans le chemin de navigation pour revenir à l'écran Types de hiérarchie.
b) Examinez la liste des types de hiérarchie. Dans la colonne État du modèle de données, vérifiez que la valeur est Non publié.
c) Cliquez sur le menu d'action de la hiérarchie et sélectionnez Supprimer le type de hiérarchie.
Ajouter des attributs et des champs à un type de hiérarchie
Après avoir créé un type de hiérarchie, vous pouvez ajouter des attributs et des champs. Vous pouvez ajouter des attributs de hiérarchie ou des attributs de membre.
- Les attributs de hiérarchie sont des attributs qui décrivent l'objet de la hiérarchie.
- Les attributs membres sont des attributs qui s'appliquent à chaque nœud membre de la hiérarchie.
Dans les attributs de la hiérarchie, il existe un attribut prédéfini appelé Nom de la hiérarchie. Cette valeur d'attribut est généralement utilisée comme étiquette pour afficher le nom de la hiérarchie dans en IBMMatch 360 tant que service.
Pour ajouter un nouvel attribut ou un nouveau champ à un type de hiérarchie :
Dans le menu de navigation des données de base, cliquez sur Types de données
pour ouvrir la page des types de données.
Cliquez sur Types de hiérarchie et sélectionnez le type de hiérarchie que vous souhaitez mettre à jour.
Cliquez sur l'onglet Attributs et champs. Cette page comporte deux sections : Attributs de la hiérarchie et Attributs des membres.
Cliquez sur Nouvel attribut pour ajouter des attributs de hiérarchie ou de membre. Spécifiez les détails de l'attribut :
a) Sélectionnez le type d'attribut de base. Ces options sont basées sur d'autres attributs définis dans votre modèle de données.
b) Définir la cardinalité de cet attribut. Sélectionnez Unique si vous n'avez pas besoin de fournir plusieurs valeurs pour cet attribut.
d) Saisir le nom d'affichage et, éventuellement, fournir une description de l'attribut.
e) Cliquez sur Créer.
Répétez ce processus pour ajouter autant d'attributs que nécessaire.
Définit le nom d'affichage des hiérarchies de ce type :
a) Sélectionnez un attribut.
b) Faites glisser ou cliquez sur + pour ajouter un champ.
Lorsque vous avez terminé d'ajouter le nouveau type de hiérarchie, cliquez sur Publier le type de données dans la barre d'action de l'écran.
Important : une fois qu'un type de hiérarchie est publié, il ne peut plus être supprimé. Vous ne pouvez supprimer les types de hiérarchie qu'avant leur publication.
Pour supprimer un type de hiérarchie non publié : a) Cliquez sur Types de données dans le chemin de navigation pour revenir à l'écran Types de hiérarchie.
b) Examinez la liste des types de hiérarchie. Dans la colonne État du modèle de données, vérifiez que la valeur est Non publié.
c) Cliquez sur le menu d'action de la hiérarchie et sélectionnez Supprimer le type de hiérarchie.
Pour plus d'informations sur la création et la gestion des instances de hiérarchie, voir Exploration et utilisation des hiérarchies.
Travailler avec des hiérarchies en utilisant l'API
Étant donné que de nombreuses actions sur les hiérarchies sont fournies sous forme d'aperçus technologiques, vous pouvez également travailler avec les hiérarchies en utilisant l'API.
Définition d'un type de hiérarchie à l'aide de l'API
Pour créer un nouveau type de hiérarchie appelé DnB Hierarchy en utilisant l'API :
Obtenir le modèle de données existant.
GET /v1/config_data_modelModifier le modèle de données pour ajouter le nouveau type de hiérarchie. Les exemples de cette procédure créent un nouveau type de hiérarchie appelé DnB Hiérarchie.
Définir les nouveaux types de relations hiérarchiques pour ce type de hiérarchie. Ajoutez les objets JSON
dnb_hierarchy_node_association_relationshipetdnb_hierarchy_node_relationshipdans la sectionrelationship_types."relationship_types": { "dnb_hierarchy_node_association_relationship": { "internal": true, "label_from_source": "dnb_hierarchy_source_HYui4x", "label_from_target": "dnb_hierarchy_target_EKhbfJ", "directional": true, "description": "Link a hierarchy node with a record or an entity or other data types", "rules": [ { "source": { "node_types": [ "dnb_hierarchy_node" ] }, "target": { "hierarchy_types": [], "entity_types": [ "person_entity", "organization_entity" ], "record_types": [ "person", "organization" ] } } ], "label": "DnB Hierarchy node association relationship", "classification": "hierarchy_node_association_relationship", "cardinality": "ONE2ONE" }, "dnb_hierarchy_node_relationship": { "internal": true, "label_from_source": "dnb_hierarchy_source_0QbKqr", "label_from_target": "dnb_hierarchy_target_LCwveN", "directional": true, "description": "DnB Hierarchy node to node relationship", "rules": [ { "source": { "hierarchy_types": [ "dnb_hierarchy" ], "node_types": [ "dnb_hierarchy_node" ] }, "target": { "node_types": [ "dnb_hierarchy_node" ] } } ], "label": "DnB Hierarchy node relationship", "classification": "hierarchy_node_relationship" } }Définir les nouveaux types de nœuds hiérarchiques (types de membres) pour ce type de hiérarchie. Ajouter l'objet JSON
node-typesdans le modèle de données au même niveau querecord_types."node_types": { "dnb_hierarchy_node": { "attributes": { "role": { "indexed": true, "description": "", "attribute_type": "string", "label": "role", "cardinality": "LIST" }, "level": { "indexed": false, "description": "", "attribute_type": "string", "label": "level", "cardinality": "SINGLE" }, "description": { "indexed": false, "description": "", "attribute_type": "string", "label": "description", "cardinality": "SINGLE" }, "designation": { "indexed": true, "description": "", "attribute_type": "string", "label": "designation", "cardinality": "LIST" } }, "label": "DnB Hierarchy", "classification": "hierarchy_node" } }Définir les détails du nouveau type de hiérarchie. Ajouter l'objet JSON
hierarchy_typesdans le modèle de données au même niveau querecord_types."hierarchy_types": { "dnb_hierarchy": { "node_type": "dnb_hierarchy_node", "node_relationship_type": "dnb_hierarchy_node_relationship", "attributes": { "hierarchy_name": { "indexed": true, "description": "", "attribute_type": "string", "label": "Hierarchy name", "cardinality": "SINGLE" }, "hierarchy_value": { "indexed": false, "description": "", "attribute_type": "string", "label": "hierarchy value", "cardinality": "SINGLE" }, "description": { "indexed": false, "description": "", "attribute_type": "string", "label": "Description", "cardinality": "SINGLE" } }, "label": "DnB Hierarchy", "node_associations": { "dnb_hierarchy_node_association_relationship": [] } } }Efface la valeur du paramètre
is_model_published. Si le champ n'existe pas dans le modèle, ajoutez-le comme suit :"is_model_published": "",Conseil : Vérifiez votre JSON pour vous assurer qu'il est formaté correctement. Par exemple, assurez-vous qu'il n'y a pas de virgules manquantes entre les objets où vous avez ajouté les nouveaux objets de la hiérarchie.
Télécharger le modèle de données mis à jour en soumettant la configuration complète et modifiée du modèle de données JSON en tant que charge utile de la commande API
PUT /v1/config_data_model.PUT /v1/config_data_modelPublier le modèle de données.
POST /v1/configuration_metadata/processes{ "process_name": "publish_model", "initiator": "admin" }Attendre la publication du modèle de données.
Confirmer que le modèle de données a été mis à jour avec succès en obtenant la dernière version.
API GET /v1/config_data_modelVérifiez le contenu de la réponse pour vous assurer que les modifications apportées à la hiérarchie sont bien présentes.
Création d'une instance de hiérarchie à l'aide de l'API
Après avoir défini un ou plusieurs types de hiérarchie, vous pouvez exécuter des commandes API pour créer une instance de hiérarchie.
Pour créer une nouvelle instance de hiérarchie appelée ABC DnB hierarchy en utilisant l'API, exécutez la commande API POST /v1/hierarchies avec une charge utile qui définit les nouveaux attributs de la hiérarchie, y compris le type de hiérarchie sur lequel elle est basée et des détails tels que la source, le nom et la description de la hiérarchie.
POST /v1/hierarchies
{
"type": "hierarchy",
"type_name": "dnb_hierarchy",
"attributes": {
"hierarchy_source": "MDM",
"hierarchy_name": {"value": "ABC DnB hierarchy"},
"description": {"value": "ABC DnB hierarchy description"}
}
}
La réponse à cette requête API devrait être similaire à l'exemple suivant :
{
"hierarchy": {
"attributes": {
"description": {
"value": "ABC DnB hierarchy description"
},
"hierarchy_name": {
"value": "ABC DnB hierarchy"
}
},
"id": "181655782266320896",
"system_attributes": {
"created_date": 1744394453974,
"created_user": "cpadmin",
"hierarchy_number": 181655782266320900,
"hierarchy_source": "MDM",
"last_updated_date": 1744394453974,
"last_updated_user": "cpadmin"
},
"type": "hierarchy",
"type_name": "dnb_hierarchy"
},
"metadata": {
"href": "https://cpd-cpd-instance.apps.test.cp.fyre.ibm.com/1744083874892597/mdm/v1/hierarchies?crn=1",
"id": "181655782266320896",
"updated_at": "2025-04-11T18:00:53.974Z"
}
}
Gestion des hiérarchies à l'aide de l'API
Vous pouvez gérer l'appartenance et les relations au sein de chaque hiérarchie en utilisant la commande API PATCH /v1/hierarchies/{id}. En utilisant cette commande, vous pouvez
- Mise à jour des attributs des instances de la hiérarchie
- Ajouter de nouveaux membres à la hiérarchie
- Mise à jour des membres de la hiérarchie
- Ajouter des relations entre les membres de la hiérarchie
- Ajouter des relations d'association entre les membres de la hiérarchie
- Supprimer des membres de la hiérarchie
- Supprimer les relations entre les membres de la hiérarchie
- Supprimer les relations d'association entre les membres de la hiérarchie
Pour mettre à jour les hiérarchies à l'aide de l'API, vous devez fournir les informations suivantes dans la charge utile de l'API :
- Numéros d'enregistrement des membres de la hiérarchie avec lesquels vous souhaitez travailler
- Détails de la hiérarchie :
- Nom du type de hiérarchie
- ID de hiérarchie
- Noms des types de nœuds hiérarchiques
- Noms des types de relations hiérarchiques
Gestion des hiérarchies exemple 1 : Ajout de membres et de relations
L'exemple suivant de commande API et de charge utile apporte les modifications suivantes à une hiérarchie existante :
- Met à jour le nom de la hiérarchie
- Ajout de trois nouveaux membres de la hiérarchie
- Ajoute trois relations entre les nœuds de la hiérarchie
- Ajoute trois relations d'association de nœuds de hiérarchie
API PATCH /v1/hierarchies/{id}
{
"upserts": {
"type": "hierarchy",
"type_name": "dnb_hierarchy",
"id": "181655782266320896",
"attributes": {
"hierarchy_name": {"value": "ABC legal entity hierarchy"}
},
"nodes":[
{
"type": "node",
"type_name": "dnb_hierarchy_node",
"reference_id": "11",
"attributes": {
"designation": {"value": "GLOBLE PARENT"}
}
},
{
"type": "node",
"type_name": "dnb_hierarchy_node",
"reference_id": "12",
"attributes": {
"designation": {"value": "LOCAL PARENT"}
}
},
{
"type": "node",
"type_name": "dnb_hierarchy_node",
"reference_id": "13",
"attributes": {
"designation": {"value": "LOCAL PARENT"}
}
}
],
"relationships": [
{
"type": "relationship",
"type_name": "dnb_hierarchy_node_relationship",
"source": {
"id": "181655782266320896",
"type": "hierarchy",
"type_name": "dnb_hierarchy"
},
"target": {
"id": "11",
"type": "node",
"type_name": "dnb_hierarchy_node"
}
},
{
"type": "relationship",
"type_name": "dnb_hierarchy_node_relationship",
"source": {
"id": "11",
"type": "node",
"type_name": "dnb_hierarchy_node"
},
"target": {
"id": "12",
"type": "node",
"type_name": "dnb_hierarchy_node"
}
},
{
"type": "relationship",
"type_name": "dnb_hierarchy_node_relationship",
"source": {
"id": "11",
"type": "node",
"type_name": "dnb_hierarchy_node"
},
"target": {
"id": "13",
"type": "node",
"type_name": "dnb_hierarchy_node"
}
},
{
"type": "relationship",
"type_name": "dnb_hierarchy_node_association_relationship",
"source": {
"id": "11",
"type": "node",
"type_name": "dnb_hierarchy_node"
},
"target": {
"id": "2430371744395911724",
"type": "record",
"type_name": "organization"
}
},
{
"type": "relationship",
"type_name": "dnb_hierarchy_node_association_relationship",
"source": {
"id": "12",
"type": "node",
"type_name": "dnb_hierarchy_node"
},
"target": {
"id": "1575571744395917308",
"type": "record",
"type_name": "organization"
}
},
{
"type": "relationship",
"type_name": "dnb_hierarchy_node_association_relationship",
"source": {
"id": "13",
"type": "node",
"type_name": "dnb_hierarchy_node"
},
"target": {
"id": "4602671744395921139",
"type": "record",
"type_name": "organization"
}
}
]
}
}
Exemple de gestion des hiérarchies 2 : Suppression de membres d'une hiérarchie
L'exemple suivant de commande API et de charge utile supprime de la hiérarchie un membre dont l'ID est 181658077838260226.
API PATCH /v1/hierarchies/{id}
{
"deletions": {
"nodes": [
{
"type": "node",
"type_name": "dnb_hierarchy_node",
"id": "181658077838260226"
}
]
}
}
Obtenir des détails sur la hiérarchie en utilisant l'API
Vous pouvez obtenir des détails sur les membres et les relations d'une hiérarchie en utilisant la commande API GET /v1/hierarchies/{id} et en fournissant l'ID de la hiérarchie.
Voici un exemple de réponse à la commande GET hierarchies, qui fournit les attributs et les relations de la hiérarchie (paires source-cible).
{
"hierarchy": {
"attributes": {
"description": {
"value": "ABC DnB hierarchy description"
},
"hierarchy_name": {
"value": "ABC legal entity hierarchy"
},
"hierarchy_type": "dnb_hierarchy"
},
"id": "181655782266320896",
"system_attributes": {
"created_date": 1744394453974,
"created_user": "cpadmin",
"hierarchy_number": 181655782266320900,
"hierarchy_source": "MDM",
"last_updated_date": 1744396643229,
"last_updated_user": "cpadmin"
},
"nodes": [
{
"attributes": {
"designation": {
"value": "GLOBLE PARENT"
}
},
"id": "181658077838260224",
"system_attributes": {
"context_id": 181655782266320900,
"created_date": 1744396643202,
"created_user": "cpadmin",
"last_updated_date": 1744396643231,
"last_updated_user": "cpadmin",
"node_number": 181658077838260220
},
"type": "node",
"type_name": "dnb_hierarchy_node"
},
{
"attributes": {
"designation": {
"value": "LOCAL PARENT"
}
},
"id": "181658077838260225",
"system_attributes": {
"context_id": 181655782266320900,
"created_date": 1744396643202,
"created_user": "cpadmin",
"last_updated_date": 1744396643232,
"last_updated_user": "cpadmin",
"node_number": 181658077838260220
},
"type": "node",
"type_name": "dnb_hierarchy_node"
}
],
"relationships": [
{
"id": "181658077839308800",
"source": {
"id": "181655782266320896",
"type": "hierarchy",
"type_name": "dnb_hierarchy"
},
"target": {
"id": "181658077838260224",
"type": "node",
"type_name": "dnb_hierarchy_node"
},
"type": "relationship",
"type_name": "dnb_hierarchy_node_relationship"
},
{
"id": "181658077839308801",
"source": {
"id": "181658077838260224",
"type": "node",
"type_name": "dnb_hierarchy_node"
},
"target": {
"id": "181658077838260225",
"type": "node",
"type_name": "dnb_hierarchy_node"
},
"type": "relationship",
"type_name": "dnb_hierarchy_node_relationship"
}
],
"type": "hierarchy",
"type_name": "dnb_hierarchy"
},
"metadata": {
"href": "https://cpd-cpd-instance.apps.test.cp.fyre.ibm.com/1744083874892597/mdm/v1/hierarchies/181655782266320896?crn=1&from_level=0&to_level=10&hierarchy_type=dnb_hierarchy",
"id": "181655782266320896",
"updated_at": "2025-04-11T18:37:23.229Z"
}
}