1. Principes
1.1. BIM : Building Information Model
L’acronyme BIM (pour Building Information Model) désigne (entre autres) la maquette numérique 3D d’un bâtiment, ou d’infrastructures au sens large.
Cette maquette consolide un ensemble structuré d’informations relatives à un bâtiment (existant ou en projet), telles que les étages, les pièces, les surfaces, etc.

1.2. BIM Exploitation & GMAO/GTP
Les objectifs de la solution décrite dans ce document sont les suivants :
-
Récupérer les informations contenues au sein d’une maquette BIM (locaux, équipements, réseaux, etc.).
-
Faire transiter ces données entre la maquette BIM et la GMAO CARL Source.

1.3. Bénéfices du BIM Exploitation pour les services techniques
Pour les services techniques, le BIM Exploitation permet de modéliser les actifs afin de les exploiter, mais également de garantir la pérennité des données.

1.5. Schéma de principe
Les données de la maquette BIM (maquette IFC4 ou IFC2x3) sont extraites à l’aide de l’outil CARL IFC.
Le référentiel du bâtiment ainsi que les données attributaires de la maquette peuvent ensuite être chargés de manière itérative dans les tables "métiers" de la GMAO afin d’être exploités.

2. CARL IFC
2.1. Installation de l’outil
L’outil CARL IFC se présente sous la forme d’un fichier 'BIMImportTool.jar'.
Ce fichier peut être téléchargé depuis la Fiche De Connaissance (FDC) de l’espace client CARL Berger-Levrault.
L’installation d’un JRE (Java Runtime Environment) sur la machine est donc obligatoire avant toute utilisation de l’outil.
=> Version minimum à installer : JRE Java 1.8.
2.1.1. Prérequis
Les maquettes BIM doivent être exportées au format IFC4 ou IFC2x3 depuis des outils de modeling.
|
|
Il est conseillé de réaliser l’export des maquettes en IFC4. |
Pour s’assurer que la maquette BIM contienne l’ensemble des éléments essentiels une fois exportée, il est nécessaire de réaliser un export de type "Reference View", en sélectionnant les options suivantes :
-
"Exporter les jeux de propriétés commun IFC"
-
"Exporter les quantités de bases"
Par ailleurs, l’utilisateur devra avoir les droits suffisants pour effectuer les opérations dans CARL Source.
2.2. Périmètre de l’outil
L’outil CARL IFC permet de charger toutes les données relatives à une maquette BIM (données de référence ainsi que données attributaires).
Le chargement des données peut être effectué de manière itérative. L’outil détecte toutes les créations/modifications/suppressions relatives au couple "Maquette BIM / Table d’import CARL Source". Par conséquent, toutes les modifications de la maquette peuvent être prises en charge et transférées dans la GMAO.
2.3. Ergonomie
2.3.1. Écran principal
L’écran principal de l’outil se divise en deux parties :
-
La partie gauche correspond au traitement et à l’affichage des entités IFC du fichier de données
-
La partie droite correspond aux logs de l’application (console).
La section encadrée en bleu ci-dessous permet de lancer la lecture et le traitement du fichier. Le tableau situé en dessous de cette section affiche la liste des entités IFC présentes dans le fichier IFC et importables dans CARL Source.
La section encadrée en vert ci-dessous permet de lancer l’import avec l’affichage des deltas en fonction du fichier de mapping.
Les logs sont également stockés dans un fichier de log (cf. sous-dossier "logs" présent dans le répertoire du fichier '.jar').

|
|
Les listes de valeurs "Fichier IFC", "CARL Source" et "Mapping" stockent les 4 derniers fichiers utilisés. |
2.3.2. Écran de configuration de l’URL d’accès à CARL Source
Le bouton "Connexion" permet de définir une configuration d’accès à CARL Source.
|
|
Cette connexion est obligatoire pour transférer les informations de la maquette BIM vers la table d’import de CARL Source. |
|
|
Une fois tous les paramètres renseignés, il est possible de tester la validité de la connexion au travers du bouton "Test". |

Paramètres :
-
Nom : nom donné à la configuration
-
URL : URL d’accès à CARL Source
-
Login : login de l’utilisateur CARL Source
-
Mot de passe : mot de passe de l’utilisateur CARL Source
L’URL d’accès à CARL Source doit être adaptée en fonction du déploiement :
|
|
Le profil de l’utilisateur de connexion doit posséder les droits de lecture/écriture sur "Import équipements". |
2.4. Processus de chargement avec l’outil CARL IFC
2.4.1. Étape 1 : lecture et traitement du fichier IFC
Il est tout d’abord nécessaire de charger un fichier IFC au format IFC4 ou IFC2x3.
Pour cela, cliquer sur le bouton "Fichier IFC" ou glisser-déposer le fichier dans la liste de valeurs située à côté du bouton "Fichier IFC".
Puis, dans la liste de valeurs suivante (immédiatement à droite), choisir la version du fichier correspondante (ex : "IFC4") et appuyer sur le bouton "Lecture".

Cette première étape permet de lire le fichier IFC et d’analyser la syntaxe (parsing) des différentes informations contenues dans celui-ci. L’objectif est de récupérer ces informations afin de créer des entités complètes, utilisables dans CARL Source.

2.4.2. Étape 2 : affichage du résumé
Au terme de la lecture du fichier, un résumé des classes IFC présentes dans le fichier (ainsi que leur nombre) est affiché. Il est possible de sélectionner les classes IFC à importer dans CARL Source en cochant les cases associées dans la colonne "Import" du tableau.

|
|
Certaines cases à cocher sont grisées (i.e. non-sélectionnables) car elles font partie des classes qui seront forcément importées dans CARL Source. Elles correspondent à la structure arborescente d’un bâtiment.
|
2.4.3. Étape 3 : configuration de la connexion à CARL Source
Avant d’effectuer l’import dans CARL Source, il est nécessaire de spécifier le schéma CARL Source dans lequel les données seront importées.
-
Si une connexion à CARL Source a été créée au préalable : la sélectionner dans la liste de valeurs "CARL Source".
-
Si nécessaire, définir une nouvelle configuration via le bouton "Connexion" (cf. Écran de configuration de l’URL d’accès à CARL Source) - exemple :

2.4.4. Étape 4 : configuration du fichier de mapping
Le fichier de mapping (i.e. "de correspondance") permet de définir le lien fonctionnel entre la table d’import CSGI_IMP_EQUIPMENT et les classes IFC.
-
Ce fichier contient la liste des classes qui seront importées dans CARL Source.
-
Pour chaque classe définie dans cette liste, il est possible de définir un mapping pour les champs "code", "description", "importstructure_id", "ifcclass" et "id".
Il est donc nécessaire de fournir à l’outil fichier de mapping : mapping.cfg.
-
Il est possible de générer un fichier de mapping à partir des classes IFC sélectionnées dans l’étape 2 (en sélectionnant les classes IFC et en cliquant sur le bouton "Générer le mapping"). Ce fichier servira alors de base et devra être modifié afin de réaliser l’import par la suite.
-
Il est également possible de sélectionner un fichier de mapping déjà existant en cliquant sur le bouton "Mapping" ou en glissant-déposant le fichier dans la liste de valeurs située à côté du bouton "Mapping".
|
|
Règles à respecter au sein du fichier de mapping :
|
Si l’on souhaite par exemple spécifier un mapping entre le champ LongName et DESCRIPTION, il suffit de renseigner le fichier de mapping avec : DESCRIPTION = "$.LongName"
Il est également possible de réaliser le mapping d’une IFCPropertySingleValue avec CODE ou DESCRIPTION.
Exemple pour faire correspondre la propriété singulière Reference avec CODE : CODE = $.Pset_SpaceCommon.HasProperties[*].Reference
[IFCSITE]
IFCCLASS = "$.ifcclass"
ID = "$.GlobalId"
STRUCTURE_ID = "BUILDINGSET"
CODE = "$.Name"
DESCRIPTION = "$.LongName"
|
|
Les fichiers de configuration mapping.cfg sont définis suivant le format TOML. Ils devront donc respecter les conventions définies la documentation suivante : https://github.com/toml-lang/toml. On retrouve dans ce fichier :
|
2.4.5. Étape 5 : analyse et synthèse
L’étape d’analyse se lance à partir du bouton "Import".

Cette étape vérifie tout d’abord la validité du mapping défini dans le fichier de mapping. Elle permet notamment de vérifier si les codes définis dans ce fichier ne sont pas nuls et qu’il n’existe aucun doublon. Si tel est le cas, un message d’avertissement est affiché et la codification automatique est utilisée.
Une fois l’analyse terminée, l’instruction suivante apparait dans la console de droite : "Finished to make delta".
Si le traitement d’analyse s’est déroulé correctement, un écran de synthèse présente les entités nouvelles, modifiées et supprimées.
-
Les entités nouvelles sont affichées en vert avec leur nombre.
-
Les entités modifiées sont affichées en jaune avec les modifications sur les attributs, la surface, et la description.
-
Les entités supprimées sont affichées en rouge avec leur nombre.


À partir de cet écran, il est possible de confirmer ou d’annuler l’import dans CARL Source.
-
Si l’import est annulé : aucune donnée n’est importée dans CARL Source.
-
Si l’import est confirmé : les données de la maquette BIM sont chargées dans la table d’import de CARL Source. Une fois le traitement terminé, la console affiche un message du type : "Done import to CARL Source database in : 0.74164736s".
2.5. Exemple de chargement avec l’outil CARL IFC
Scénario :
À partir d’une maquette BIM, utiliser l’outil CARL IFC pour importer dans CARL Source :
-
l’arborescence du bâtiment dans un premier temps,
-
puis des classes IFC liées à des équipements dans un second temps.

Sélectionner le fichier IFC, le type de format ("IFC4" ou "IFC2x3") puis cliquer sur "Lecture".

Par défaut, les classes "IFCBUILDING", "IFCBUILDINGSTOREY", "IFCSITE" et "IFCSPACE" sont cochées. Elles correspondent à l’arborescence du bâtiment.

-
Nom : Test
-
Login : DEMO
-
Mot de passe : demo
Tester la connexion via le bouton "Test".
Si la connexion s’effectue correctement, la console renvoie les messages "Success to connect to database" et "Save database configuration".
-
Cliquer sur le bouton "Générer mapping".
-
Ouvrir le fichier mapping.cfg (celui-ci se trouve dans le répertoire d’installation de CARL IFC).
-
Compléter le fichier mapping.cfg - cf. instructions ci-dessous.
-
Enregistrer le fichier mapping.cfg.
Par défaut, le fichier généré comprend les informations relatives aux 4 classes suivantes :
importedIfcClasses = ["IFCBUILDING", "IFCBUILDINGSTOREY", "IFCSITE", "IFCSPACE"]
[IFCSPACE]
IFCCLASS = "$.ifcclass"
ID = "$.GlobalId"
[IFCSITE]
IFCCLASS = "$.ifcclass"
ID = "$.GlobalId"
[IFCBUILDINGSTOREY]
IFCCLASS = "$.ifcclass"
ID = "$.GlobalId"
[IFCBUILDING]
IFCCLASS = "$.ifcclass"
ID = "$.GlobalId"
|
|
Pour rendre le fichier mapping.cfg opérationnel, il est obligatoire de le modifier en complétant chacune des classes en fonction des éléments à charger.
|
Cliquer sur le bouton "Import" pour lancer le traitement.
La console affiche le message suivant : "Finished to make delta". Seules les nouvelles entités apparaissent. Elles correspondent à l’arborescence "Bâtiment" de CARL Source.

Cliquer sur le bouton "Confirmer" pour transférer les données relatives à ces 4 classes de la maquette BIM vers la table d’import de CARL Source.
La console affiche le message suivant : "Done import to CARL Source database in : 0.74164736s".
Dans CARL Source, on constate que les données sont bien présentes :

Relancer la lecture du fichier IFC et cocher une nouvelle classe IFC correspondant à des matériels (249 éléments ajoutés) :

Suite à cette manipulation, modifier le fichier de configuration en conséquence :
importedIfcClasses = ["IFCBUILDING", "IFCBUILDINGSTOREY", "IFCSITE", "IFCSPACE", "IFCFURNISHINGELEMENT"]
Ajouter les informations relatives aux matériels liés à la classe "IFCFURNISHINGELEMENT" :
[IFCFURNISHINGELEMENT]
IFCCLASS = "$.ifcclass"
ID = "$.GlobalId"
STRUCTURE_ID = "MATERIAL"
DESCRIPTION = "$.LongName"
CODE ="$.Tag"
L’analyse du fichier propose les 249 éléments supplémentaires. Il n’y a eu aucune modification, ni aucune suppression par rapport aux données initiales :

Confirmer l’import pour transférer ces éléments dans CARL Source.
|
|
Ces étapes peuvent être rejouées de manière itérative. |
3. CARL Source
3.2. Fonctionnalité "Imports d’équipements"
3.2.1. Périmètre de la fonctionnalité
Cette fonctionnalité dédiée aux imports d’équipements issus du BIM ou du SIG (Système d’Information Géographique) permet de charger les données de la maquette BIM (arborescence bâtiments, parc équipements) mais également de réaliser un mapping (i.e. correspondance) entre les données attributaires et les tables "métiers".
Ces traitements offrent la possibilité de gérer les créations, modifications et suppressions des données issues d’un projet BIM.
3.2.2. Ergonomie
3.2.2.1. Accès à la fonctionnalité d’import
Cette nouvelle fonctionnalité est accessible directement à partir de l’arborescence via le menu suivant :

3.2.2.2. Écrans principaux
3.2.2.2.1. Recherche

|
|
Plusieurs projets BIM distincts peuvent être chargés dans cette fonctionnalité. |
3.2.2.2.2. Liste de résultats

|
|
Toutes les données pour lesquelles la colonne "Date de synchro CS" n’est pas renseignée n’ont pas encore été importées définitivement dans les tables "métiers" de CARL Source (bâtiment et équipements). |
3.2.2.2.3. Détail

| Nom du champ | Descriptif | Obligatoire ? | Utilisé pour le BIM | Affiché ? | Commentaire |
|---|---|---|---|---|---|
CODE |
Import équipement |
Oui |
Oui |
Oui |
Il s’agit du code qui représente votre équipement dans les tables "métiers". |
DESCIPTION |
Description |
Non |
Oui |
Oui |
Il s’agit du descriptif associé à votre équipement. |
IMPORTSTRUCTURE_ID |
Structure |
Oui |
Oui |
Oui |
Il s’agit de la structure associée à votre équipement. |
PATH_DWF |
Chemin DWF |
Non |
Non |
Oui |
Utilisé dans un contexte SIG. |
PATH_DWG |
DWG d’origine |
Non |
Non |
Oui |
Utilisé dans un contexte SIG. |
PARENT_ID |
Parent |
Oui |
Oui |
Oui |
Il s’agit du code du père dans l’arborescence. Cette donnée est obligatoire si vous souhaitez visualiser votre équipement dans une arborescence. |
LEVEL_NUMBER |
Niveau |
Non |
Non |
Oui |
Utilisé dans un contexte SIG. Vous pouvez néanmoins renseigner cette information. |
ERPCLASS |
Classe ERP |
Non |
Non |
Oui |
Utilisé dans un contexte SIG. Vous pouvez néanmoins renseigner cette information. |
ERPCATEGORY |
Catégorie ERP |
Non |
Non |
Oui |
Utilisé dans un contexte SIG. Vous pouvez néanmoins renseigner cette information. |
USE |
Usage |
Non |
Non |
Oui |
Utilisé dans un contexte SIG. Vous pouvez néanmoins renseigner cette information. |
CAPACITY |
Capacité d’accueil |
Non |
Non |
Oui |
Utilisé dans un contexte SIG. Vous pouvez néanmoins renseigner cette information. |
SYNCH_DATE |
Import mis à jour |
Oui |
Oui |
Oui |
Traitement 1 (voir plus bas). |
SYNCH_DATE_CS |
Synchronisation CARL Source |
Non |
Oui |
Oui |
Traitement 2 (voir plus bas). |
SYNCH_DELETE |
Suppr. équipement |
Non |
Oui |
Oui |
Traitement 3 (voir plus bas). |
PATTERNCODE |
Modèle |
Non |
Oui |
Oui |
Traitement 4 (voir plus bas). |
BIMPROJECTGUID |
Id du projet BIM |
Oui |
Oui |
Oui |
Ne pas modifier cette donnée : toute modification entraînerait une perte de lien avec la maquette BIM. |
SUL |
Surface utile |
Non |
Non |
Oui |
Utilisé dans un contexte SIG. Vous pouvez néanmoins renseigner cette information. |
AREA |
Surface de plancher |
Non |
Non |
Oui |
Utilisé dans un contexte SIG. Vous pouvez néanmoins renseigner cette information. |
ATTRIBUTES |
Données attributaires de la maquette |
Oui |
Oui |
Non |
Utilisé uniquement dans un contexte BIM. Ces données peuvent être mappées. Elles sont par défaut visibles sur les "équipements" issus du BIM. Ne pas modifier cette donnée : toute modification entraînerait une perte de lien avec la maquette BIM. |
IFCCLASS |
Classe IFC associée à l’entité |
Oui |
Oui |
Non |
Utilisé uniquement dans un contexte BIM. Ne pas modifier cette donnée : toute modification entraînerait une perte de lien avec la maquette BIM. |
XTRABOOL01 |
Champ supplémentaire de type booléen |
Non |
Non |
Non |
Vous pouvez néanmoins alimenter cette information au travers du mapping. |
XTRABOOL02 |
Champ supplémentaire de type booléen |
Non |
Non |
Non |
Vous pouvez néanmoins alimenter cette information au travers du mapping. |
XTRABOOL03 |
Champ supplémentaire de type booléen |
Non |
Non |
Non |
Vous pouvez néanmoins alimenter cette information au travers du mapping. |
XTRADATE01 |
Champ supplémentaire de type date |
Non |
Non |
Non |
Vous pouvez néanmoins alimenter cette information au travers du mapping. |
XTRADATE02 |
Champ supplémentaire de type date |
Non |
Non |
Non |
Vous pouvez néanmoins alimenter cette information au travers du mapping. |
XTRADATE03 |
Classe IFC associée à l’entité date |
Non |
Non |
Non |
Vous pouvez néanmoins alimenter cette information au travers du mapping. |
XTRANUM01 |
Champ supplémentaire de type numérique |
Non |
Non |
Non |
Vous pouvez néanmoins alimenter cette information au travers du mapping. |
XTRANUM02 |
Champ supplémentaire de type numérique |
Non |
Non |
Non |
Vous pouvez néanmoins alimenter cette information au travers du mapping. |
XTRANUM03 |
Champ supplémentaire de type numérique |
Non |
Non |
Non |
Vous pouvez néanmoins alimenter cette information au travers du mapping. |
XTRATXT01 |
Champ supplémentaire de type alphanumérique |
Non |
Non |
Non |
Vous pouvez néanmoins alimenter cette information au travers du mapping. |
XTRATXT02 |
Champ supplémentaire de type alphanumérique |
Non |
Non |
Non |
Vous pouvez néanmoins alimenter cette information au travers du mapping. |
XTRATXT03 |
Champ supplémentaire de type alphanumérique |
Non |
Non |
Non |
Vous pouvez néanmoins alimenter cette information au travers du mapping. |
XTRATXT04 |
Champ supplémentaire de type alphanumérique |
Non |
Non |
Non |
Vous pouvez néanmoins alimenter cette information au travers du mapping. |
XTRATXT05 |
Champ supplémentaire de type alphanumérique |
Non |
Non |
Non |
Vous pouvez néanmoins alimenter cette information au travers du mapping. |
XTRATXT06 |
Champ supplémentaire de type alphanumérique |
Non |
Non |
Non |
Vous pouvez néanmoins alimenter cette information au travers du mapping. |
XTRATXT07 |
Champ supplémentaire de type alphanumérique |
Non |
Non |
Non |
Vous pouvez néanmoins alimenter cette information au travers du mapping. |
XTRATXT08 |
Champ supplémentaire de type alphanumérique |
Non |
Non |
Non |
Vous pouvez néanmoins alimenter cette information au travers du mapping. |
XTRATXT09 |
Champ supplémentaire de type alphanumérique |
Non |
Non |
Non |
Vous pouvez néanmoins alimenter cette information au travers du mapping. |
XTRATXT10 |
Champ supplémentaire de type alphanumérique |
Non |
Non |
Non |
Vous pouvez néanmoins alimenter cette information au travers du mapping. |
|
|
Certains champs de cette fonctionnalité apparaissent mais ne sont pas utilisés dans un contexte "import équipement issus d’une maquette BIM". |
|
|
Traitement 1 : SYNCH_DATE Ce champ est alimenté automatiquement par les traitements dès lors que la ligne est importée dans la table (traitement d’import issu de l’outil CARL IFC). |
|
|
Traitement 2 : SYNCH_DATE_CS Ce champ est alimenté automatiquement par le traitement dès lors que la ligne est synchronisée dans les tables "métiers" (traitement de synchronisation des équipements). |
|
|
Traitement 3 : SYNCH_DELETE Ce champ est alimenté automatiquement par le traitement d’import issu de l’outil CARL IFC. |
|
|
Traitement 4 : PATTERNCODE L’objectif est de ce champ est d’alimenter CARL Source avec des données issues d’un modèle (référencé dans CARL Source).
|
3.2.2.3. Écran "Attributs complémentaires" : données attributaires
Les données présentes dans la colonne ATTRIBUTES correspondent aux données attributaires de la maquette BIM.
Ces données sont consultables sous la forme d’une arborescence (données au format JSON) mais sont non modifiables.

|
|
Toutes ces données peuvent faire l’objet d’un mapping avec des tables "métiers". |
3.2.3. Processus de synchronisation des équipements
3.2.3.1. Étape 6 : lancer le traitement de synchronisation
Le traitement de synchronisation se lance à partir de la fonctionnalité "Imports d’équipements", via le raccourci "Synchroniser les équipements" :

Ce raccourci ouvre le détail d’un traitement automatique ("Job") GISIMPORTJOB :

Pour lancer le traitement, cliquer sur le bouton "Exécuter".
Une fois le traitement réalisé, les équipements ont été synchronisés et sont visualisables dans les tables "métiers".

|
|
Par défaut, les points et les matériels sont créés à l’état "Validé" et cochés "Interventions autorisées". |
3.2.4. Exemples liés à la synchronisation des équipements
Pour "supprimer" un élément lors du traitement de synchronisation, dans le formulaire de détail d’une ligne d’import, cocher la case "Suppr. l’équipement".
ATTENTION - il ne s’agit pas ici d’une suppression physique en base de données :
-
Si cette information est cochée pour un matériel alors le traitement de synchronisation passe le matériel à l’état "Au rebut".
-
Si cette information est cochée pour un point de structure alors le traitement de synchronisation passe le point de structure à l’état "Inactif".
Afin de relancer un traitement de synchronisation (exemple : mise à jour de la table d’import), il est nécessaire de vider au préalable le champ "Date de synchronisation CARL Source".
Pour cela, utiliser la mise à jour en masse :
-
Sélectionner les lignes à impacter.
-
Cliquer sur l’action "Mettre à jour en masse".
-
Sélectionner l’attribut "synchDate CS".
-
Laisser le champ "Nouvelle valeur" à [vide].
3.3. Mapping des équipements
3.3.1. Périmètre de la fonctionnalité
Ces fonctionnalités dédiées aux équipements permettent de réaliser un mapping des données attributaires d’un projet BIM vers des tables "métiers" CARL Source (Surfaces, Adresses, Caractéristiques, Attributs supplémentaires).
Les traitements associés offrent la possibilité de gérer les créations et modifications des données issues d’un projet BIM.
3.3.1.1. Fonctionnalité "Norme de mapping"
Cette fonctionnalité a les objectifs suivants :
-
Regrouper un ou plusieurs projets BIM
-
Lister l’ensemble des règles de mapping associées à un ou plusieurs projets BIM
-
Activer ou désactiver les règles de mapping
-
Lancer le traitement de mapping
Elle est accessible directement à partir des imports équipements :



|
|
La norme est une donnée obligatoire pour lancer un traitement de mapping. Seul l’état "Actif" d’une norme permet de lancer un traitement de mapping. Si la colonne "Date de mapping" est [vide], cela signifie qu’aucun traitement de mapping n’a été lancé. |
3.3.2. Processus de mapping
3.3.2.1. Étape 7 : définition d’une règle de mapping
Pour définir, modifier ou désactiver une règle de mapping, accéder à la fonctionnalité directement à partir du Détail d’un import équipement
Pour cela, ouvrir le détail d’une donnée et cliquer sur "Créer une règle d’import attribut pour cette classe" dans la liste des actions disponibles :

Cette nouvelle règle de mapping est obligatoirement associée à une norme d’import :

Cliquer sur l’icône de création pour ajouter une nouvelle règle de mapping :

Dans le champ "Type de la cible", sélectionner l’attribut de l’objet pour lequel définir un mapping.
Dans notre exemple, l’attribut description ("Libellé") de l’objet Building a été sélectionné.

Il est ensuite nécessaire de définir la règle de mapping.
Dans notre exemple, l’attribut description est associé (mapping) à la donnée attributaire $.Name. Cela signifie que lors du traitement de mapping, le libellé de la maquette BIM ($.Name) sera récupéré et copié dans la table "métier" de CARL Source dans l’attribut description.
Sélectionner l'attribut cible sur lequel appliquer un mapping.

Définir la cible de l’attribut sur lequel appliquer un mapping.
|
|
Deux options sont envisageables pour la cible du mapping :
Cf. chapitre Exemple de mapping. |

Dans l’arborescence JSON, sélectionner la donnée attributaire sur laquelle appliquer le mapping.
Puis enregistrer.

|
|
Même si elle a été définie sur un équipement précis, une règle de mapping est commune à tous les équipements de même classe. |
3.3.2.2. Étape 8 : traitement de mapping
|
|
Le traitement de mapping gère à la fois la création de nouvelles règles de mapping mais également la modification des règles déjà existantes. Pour faire en sorte qu’une règle de mapping ne soit plus prise en compte par le traitement, décocher la case "Ligne active". Dès lors que le traitement est lancé avec succès, alors le champ "Date de mapping" est actualisé sur la Norme. |





3.3.3. Exemple de mapping
Cet exemple consiste à illustrer l’initialisation d’un attribut CARL Source avec une valeur simple.
Dans cet exemple, le mapping ne s’appuie pas sur les données attributaires de la maquette BIM.
-
Créer une nouvelle règle d’import.
-
Créer une nouvelle ligne dans la règle d’import.
-
Dans le champ "Type de la cible", sélectionner l’attribut xtraTxt01.
-
Dans le champ "Cible", sélectionner la valeur Constante.
-
Dans le champ "Valeur", saisir un texte.
-
Appliquer le mapping sur les équipements.


Détail de la règle au niveau de la Norme :

Résultat du mapping sur un équipement :

Cet exemple consiste à illustrer l’initialisation d’un attribut CARL Source avec une valeur sélectionnée dans une liste de valeurs.
Dans cet exemple, le mapping ne s’appuie pas sur les données attributaires de la maquette BIM.
-
Créer une nouvelle règle d’import.
-
Créer une nouvelle ligne dans la règle d’import.
-
Dans le champ "Type de la cible", sélectionner l’attribut depreciation.
-
Dans le champ "Cible", sélectionner la valeur Constante.
-
Dans le champ "Valeur", sélectionner l’une des valeurs proposées par la liste.
-
Appliquer le mapping sur les équipements.

Détail de la règle au niveau de la Norme :

Résultat du mapping sur un équipement :

Cet exemple consiste à illustrer le mapping entre une donnée attributaire simple de la maquette BIM et un attribut supplémentaire de CARL Source.
-
Créer une nouvelle règle d’import.
-
Créer une nouvelle ligne dans la règle d’import.
-
Dans le champ "Type de la cible", sélectionner l’attribut xtraTxt03.
-
Dans le champ "Cible", sélectionner la valeur Expression JSON-Path.
-
Dans l’arbre JSON, sélectionner la donnée attributaire à faire correspondre (mapping) : $.Classification-ifc.Name.
-
Appliquer le mapping sur les équipements.

Détail de la règle au niveau de la Norme :

Résultat du mapping sur un équipement :

Cet exemple consiste à illustrer le mapping entre une donnée attributaire simple de la maquette BIM et une caractéristique de CARL Source.
-
Créer une nouvelle règle d’import.
-
Créer une nouvelle ligne dans la règle d’import.
-
Dans le champ "Type de la cible", sélectionner l’objet correspondant à la caractéristique : Caractéristiques associées => Techniques => VOLUME.
-
Dans le champ "Cible", sélectionner la valeur Expression JSON-Path.
-
Dans l’arbre JSON, sélectionner la donnée attributaire à faire correspondre (mapping) : $.Cotes.HasProperties[?(@.Volume == 0.017886668)].Volume.
-
Dans la liste située à droite de l’arbre JSON, sélectionner la ligne "Volume" (et pas "UnitName") pour récupérer la valeur.
-
Appliquer le mapping sur les équipements.

Détail de la règle au niveau de la Norme :

Résultat du mapping sur un équipement :

|
|
Dans l’arbre JSON, les attributs définis sous forme de tableau sont préfixés par un numéro. Si l’expression JSON sélectionnée par l’utilisateur fait référence à un tableau, alors le formulaire de création d’une ligne de règle d’import fait apparaitre un nouvel onglet (ex : "Mapping de surface" dans l’exemple ci-dessous). |
Cet exemple consiste à illustrer le mapping entre une donnée attributaire complexe de la maquette BIM (format de type 'tableau') et la table dédiée aux Surfaces.
-
Créer une nouvelle règle d’import.
-
Créer une nouvelle ligne dans la règle d’import.
-
Dans le champ "Type de la cible", sélectionner l’objet correspondant aux surfaces : Surface.
-
Dans le champ "Cible", sélectionner la valeur Expression JSON-Path.
-
Dans l’arbre JSON, sélectionner la donnée attributaire (format 'tableau') à faire correspondre (mapping) : $.BaseQuantities.Quantities[?(@.ifcclass == 'IFCQuantityArea' && @.Name == 'NetFloorArea')].AreaValue.
-
Dans la liste située à droite de l’arbre JSON, sélectionner les lignes "ifcclass" et "Name".

-
Créer une deuxième ligne dans la règle d’import.
-
Dans le champ "Type de la cible", sélectionner l’objet correspondant aux superficies : Superficie.
-
Dans le champ "Cible", sélectionner la valeur Expression JSON-Path.
-
Dans l’arbre JSON, sélectionner la donnée attributaire (format 'tableau') à faire correspondre (mapping) : $.BaseQuantities.Quantities[?(@.ifcclass == 'IFCQuantityArea' && @.Name == 'NetFloorArea')].AreaValue.
-
Dans la liste située à droite de l’arbre JSON, sélectionner les lignes "ifcclass" et "Name".

-
Créer une troisième ligne dans la règle d’import.
-
Dans le champ "Type de la cible", sélectionner l’objet correspondant aux types de surfaces : Type de surface.
-
Dans le champ "Cible", sélectionner la valeur Constante.
-
Dans le champ "Valeur", saisir la surface correspondante (exemple : 'GLASS' = surface vitrée).
-
Appliquer le mapping sur les équipements.

Détail de la règle au niveau de la Norme :

Résultat du mapping sur un équipement :

Avis de marques déposées
Nous avons apporté tous nos efforts pour garantir l’exactitude des informations au moment de la publication de ce document.
CARL Source étant en constante évolution, CARL Berger-Levrault ne peut être tenu responsable des éventuels manques ou erreurs de ce document.
Si vous relevez une incohérence ou une erreur, merci de contacter le service support de CARL Berger-Levrault.
Toute reproduction, en tout ou en partie, sous quelque forme que ce soit, est formellement interdite sans l’autorisation préalable de CARL Berger-Levrault.
Toutes les marques et noms de produits mentionnés dans ce document sont les propriétés de leurs détenteurs respectifs telles que répertoriées ci-dessous :
-
Android™ et Google Chrome® sont des marques déposées de Google LLC
-
ArcGIS® est une marque déposée d’Environmental Systems Research Institute.
-
Elasticsearch® est une marque déposée d’Elasticsearch B.V. aux États-Unis et dans d’autres pays.
-
Firefox® est une marque déposée de Mozilla Foundation.
-
Java™ et Oracle® sont des marques déposées d’Oracle Corporation.
-
PostgreSQL® est une marque déposée de The PostgreSQL Community Association of Canada.
-
Safari® est une marque d’Apple Inc., déposée aux États-Unis et dans d’autres pays.
-
Azure®, SQL Server®, Microsoft Edge® et Windows® sont des marques déposées de Microsoft Corporation.
-
Tomcat® est une marque déposée de l’Apache Software Foundation aux États-Unis et dans d’autres pays.


