Aptli

Schémas

Les schémas sont des diagrammes interactifs qui illustrent les liens entre les éléments d'infrastructure, et pas seulement leur emplacement sur la carte. Utilisez-les pour modéliser des circuits électriques, des chemins d'épissure de fibre optique, le remplissage de conduits, les étapes du flux des eaux usées ou toute autre relation logique difficile à percevoir à partir d'une vue géographique seule. Les schémas sont gérés par version et peuvent être directement liés aux éléments cartographiques.

Que sont les schémas ?

Schémas vs. entités cartographiques :

  • Les entités cartographiques indiquent où se trouvent les éléments (relations spatiales, géographie)
  • Les schémas montrent comment les éléments sont reliés (relations logiques, dépendances)

Cas d'utilisation :

Réseaux de services publics

  • Modéliser des circuits électriques (poteaux → transformateurs → points de raccordement)
  • Afficher les tracés des câbles dans les conduits
  • Visualiser les flux de capacité à travers les segments du réseau

Flux de processus

  • Étapes d'une station d'épuration des eaux usées
  • Dépendances des processus de fabrication
  • Itinéraires de la chaîne d'approvisionnement

Hiérarchies organisationnelles

  • Dépendances de la maintenance des équipements
  • Chaînes de propriété des actifs
  • Parcours de prestation de services

Connexions physiques

  • Schémas d'épissure de fibres optiques
  • Topologie du réseau de plomberie
  • Connexions des conduits CVC

Interface de l'éditeur de schémas

L'éditeur de schémas s'affiche dans une fenêtre contextuelle accessible depuis la barre d'outils de la page de carte. Il offre un éditeur de diagrammes complet avec des algorithmes de mise en page automatique et un positionnement manuel.

Composants principaux

Toile de diagramme (au centre)

  • Visualisation interactive des nœuds et des arêtes
  • Glisser-déposer les nœuds pour les repositionner manuellement
  • Cliquer sur les éléments pour les sélectionner et les modifier
  • Zone de dépôt pour ajouter des entités depuis la carte

Barre d'outils (en bas)

  • Ajouter un nœud - Créer des nœuds de schéma (personnalisés ou liés à des éléments de la carte)
  • Ajouter une arête - Créer des connexions entre les nœuds
  • Sélecteur de mise en page - Choisir un algorithme de mise en page automatique
  • Mise en page automatique - Appliquer la mise en page sélectionnée pour effacer toutes les positions manuelles
  • Actualiser - Réinitialiser le schéma à partir des données

Éditeur d'éléments (panneau inférieur)

  • Modifier les propriétés du nœud ou de l'arête sélectionné(e)
  • Éditeur de code pour la manipulation avancée de JSON
  • Formulaire visuel pour les propriétés courantes
  • Supprimer avec confirmation (annulable via les versions)

Panneau de métadonnées (en haut)

  • Nom du schéma (modifiable en ligne)
  • Propriétés personnalisées (paires clé-valeur)
  • Intégration de la gestion des versions

Création de schémas

Étape 1 : Créer un schéma

  1. Ouvrez la page de la carte (https://demo.aptli.io/map)
  2. Cliquez sur le bouton Barre d'outils de la carteSchémas
  3. L'éditeur de schémas s'ouvre dans une fenêtre contextuelle
  4. Une zone de travail vide apparaît

Étape 2 : Ajouter des nœuds

Option A : Nœuds personnalisés (non liés à la carte)

  1. Cliquez sur le bouton Ajouter un nœud
  2. Sélectionnez le mode Personnalisé (par défaut)
  3. Saisissez le nom du nœud (par exemple, « Transformateur A »)
  4. Choisissez le type de géométrie : Point, Ligne ou Polygone
  5. Cliquez sur Confirmer

Option B : À partir d'éléments cartographiques existants

  1. Cliquez sur le bouton Ajouter un nœud
  2. Passez en mode À partir d'un élément
  3. Sélectionnez un élément dans le menu déroulant (affiche tous les éléments de la carte)
  4. Cliquez sur Confirmer (le nœud est lié à l'élément via son identifiant)

Option C : Glisser depuis la carte

  1. Recherchez la fiche de l'élément dans l'interface de la carte
  2. Faites glisser la fiche de l'élément vers l'éditeur de schémas
  3. Déposez-la sur le canevas (à l'intérieur de la zone délimitée par une bordure en pointillés)
  4. Le nœud est créé automatiquement avec le type de géométrie détecté

Étape 3 : Ajouter des connexions (arêtes)

  1. Cliquez sur le bouton Ajouter une arête
  2. Sélectionnez le nœud Source dans le menu déroulant
  3. Sélectionnez le nœud Cible dans le menu déroulant
  4. Vous pouvez éventuellement saisir une étiquette d'arête (par exemple, « alimentations », « capacité : 100 A »)
  5. Cliquez sur Confirmer

Arêtes multiples :

  • Deux nœuds identiques peuvent avoir plusieurs arêtes (sans limite)
  • Utile pour les flux bidirectionnels ou différents types de relations
  • Exemple : Nœud A → Nœud B (alimentation), Nœud B → Nœud A (retour)

Étape 4 : Organiser la disposition

Dispositions automatiques (dans le menu déroulant) :

  • Grille 2×2, 3×3, 4×4, 5×5 - Dispositions en grille fixe
  • Cercle - Nœuds disposés en cercle
  • En largeur - Disposition arborescente hiérarchique (graphes orientés)
  • Concentrique - Anneaux basés sur la connectivité
  • Aléatoire - Dispose les nœuds de manière aléatoire

Positionnement manuel :

  1. Sélectionnez une disposition prédéfinie ou passez cette étape
  2. Faites glisser les nœuds individuels vers les positions souhaitées
  3. Les positions manuelles sont enregistrées dans les données de version
  4. Les positions manuelles ont priorité sur les algorithmes de disposition

Réinitialiser la disposition :

  • Cliquez sur le bouton Disposition automatique → efface toutes les positions manuelles
  • Réapplique l'algorithme de disposition sélectionné dans le menu déroulant

Étape 5 : Modifier les éléments

Sélectionner un élément :

  • Cliquez sur n'importe quel nœud ou arête sur le canevas
  • Le panneau Éditeur d'éléments s'affiche en bas

Modifier les propriétés du nœud :

  • Nom - Libellé d'affichage (modification en ligne ou dans l'éditeur de code)
  • Type de géométrie - Point, Ligne ou Polygone
  • Lien vers l'entité - featureId reliant à l'entité cartographique
  • Propriétés personnalisées - Ajoutez des données clé-valeur

Modifier les propriétés d'une arête :

  • Libellé - Description de la connexion
  • Source - Nœud de départ (modifiable via l'éditeur de code)
  • Cible - Nœud d'arrivée (modifiable via l'éditeur de code)

Éditeur de code (avancé) :

  1. Cliquez sur Afficher le code dans l'éditeur d'éléments
  2. La représentation JSON s'affiche dans la zone de texte
  3. Modifiez directement (structure complète de l'élément)
  4. Cliquez sur Formater JSON pour une mise en forme lisible
  5. Cliquez sur Appliquer les modifications — l'élément est validé avant l'enregistrement
  6. Les erreurs de validation s'affichent si la structure n'est pas valide

Supprimer un élément :

  1. Sélectionnez l'élément
  2. Cliquez sur le bouton Supprimer dans l'éditeur d'éléments
  3. Une boîte de dialogue de confirmation de suppression s'affiche
  4. L'élément est supprimé (la modification est enregistrée dans l'historique des versions)

Configuration de la mise en page

Chaque schéma enregistre son algorithme de mise en page préféré dans la base de données. Lorsque vous rouvrez un schéma, la mise en page enregistrée s'applique automatiquement.

Mise en page persistante :

  • Sélection dans le menu déroulant enregistrée par schéma
  • Par défaut : grille 3×3
  • La modification est conservée d'une session à l'autre

Manuel vs Automatique :

  • Si des nœuds ont des positions manuelles → utilise la disposition « prédéfinie » (respecte les positions)
  • Si AUCUNE position manuelle → applique l'algorithme du menu déroulant
  • Cliquez sur Disposition automatique pour effacer les positions et réappliquer l'algorithme

Changement de disposition :

  1. Modifiez la sélection dans le menu déroulant
  2. La disposition est immédiatement appliquée
  3. Toutes les positions manuelles sont effacées
  4. La nouvelle disposition est enregistrée dans l'historique des versions

Gestion des versions

Les schémas utilisent le même système de versions/validations que les éléments de carte.

Validations automatiques :

  • Chaque modification crée une entrée de version
  • Ajouter/supprimer un nœud → validé
  • Ajouter/supprimer une arête → validé
  • Modifier les propriétés d'un élément → validé
  • Modification de la disposition → enregistrée

Historique des versions :

  • Accès via le Gestionnaire de versions (barre d'outils de la carte)
  • Consultation de toutes les modifications apportées au schéma au fil du temps
  • Retour à des états précédents
  • Fusion des modifications hors ligne des collaborateurs
  • Soumettre → Demander l'enregistrement depuis la barre d'outils ; les utilisateurs non administrateurs envoient leurs brouillons à la file d'attente de l'administrateur pour validation (voir Admin → Versions)

Édition hors ligne :

  • Créer/modifier des schémas hors ligne
  • Modifications stockées localement dans le stockage du navigateur
  • Synchronisation une fois de nouveau en ligne
  • Détection des conflits pour les modifications simultanées

Fonctionnalités avancées

Intégration du glisser-déposer

Les schémas s'intègrent au système de glisser-déposer d'Aptli :

De la carte au schéma :

  • Glisser des cartes d'entités depuis les panneaux de couches
  • Glisser des éléments de la liste des entités sélectionnées
  • Déposez-les dans la zone de travail de l'éditeur de schémas
  • Crée automatiquement un nœud avec un lien featureId

Détection du type de géométrie :

  • Entités de type point → icône Point
  • Entités de type LineString → icône Ligne
  • Entités de type polygone → icône Polygone
  • Les icônes permettent d'identifier les types de nœuds en un coup d'œil

Édition de code en direct

L'éditeur de code permet aux utilisateurs avancés de manipuler directement le JSON.

Validation :

  • Toutes les modifications sont validées avant d'être appliquées
  • id est obligatoire (doit être une chaîne non vide)
  • geometryType doit être Point, LineString ou Polygon (si présent)
  • Les coordonnées de position doivent être des nombres
  • Les arêtes nécessitent source et target
  • Les nœuds ne peuvent pas contenir source ou target

Cas d'utilisation :

  • Modifications groupées des propriétés (copier-coller JSON)
  • Ajouter des relations sans interface utilisateur (source/cible manuelles)
  • Déboguer les problèmes de structure des données
  • Copier un élément vers un autre schéma

Relations multiples

Contrairement à de nombreux outils de création de diagrammes, Aptli prend en charge un nombre illimité d’arêtes entre les mêmes nœuds :

Exemple - Flux bidirectionnels :

Transformer A → Service Point B (power supply, 240V)
Service Point B → Transformer A (telemetry data)
Transformer A → Service Point B (fault notifications)

Pas de protection contre les doublons :

  • Choix de conception intentionnel
  • Certaines relations sont véritablement dupliquées
  • L’utilisateur est responsable de la gestion du nombre d’arêtes
  • L’éditeur de code affiche toutes les arêtes pour vérification

Propriétés personnalisées

Les nœuds et les arêtes prennent tous deux en charge les propriétés personnalisées :

Propriétés au niveau du schéma :

  • Modification dans le panneau de métadonnées (en haut de l'éditeur)
  • Paires clé-valeur stockées au format JSON
  • Utilisation pour les métadonnées à l'échelle du diagramme
  • Exemples : « voltage: 240V », « network_segment: north »

Propriétés au niveau de l'élément :

  • Modification via l'éditeur de code (objet de données)
  • Ajoutez des champs au-delà de la structure standard
  • Les propriétés supplémentaires sont conservées et stockées avec l'élément
  • Exemples : capacité, statut, date_d'installation

Intégration avec les entités cartographiques

Liaison d'entités (featureId) :

  • Les nœuds peuvent référencer une entité cartographique par son ID
  • Bidirectionnel : cliquez sur un nœud du schéma → mettez en surbrillance l'entité cartographique
  • Utile pour les diagrammes de réseau correspondant à une infrastructure réelle

Nœuds indépendants :

  • Les nœuds personnalisés ne nécessitent pas d'éléments cartographiques
  • Utile pour les concepts abstraits (étapes, processus, regroupements logiques)
  • Mélangez des nœuds liés et indépendants dans un même diagramme

Considérations relatives à la synchronisation :

  • Le schéma ne se met pas à jour automatiquement si un élément lié est supprimé
  • Un featureId orphelin s'affiche comme manquant (à gérer manuellement)
  • Amélioration future : nettoyage automatique lors de la suppression d'un élément

Bonnes pratiques

Quand utiliser les schémas

Cas d'utilisation recommandés :

  • Topologie de réseau difficile à visualiser sur une carte (zones denses)
  • Flux logiques ne correspondant pas à la géographie (chemins de prestation de services)
  • Dépendances entre équipements sur de longues distances
  • Processus en plusieurs étapes avec une séquence claire
  • Modélisation des relations indépendante de l'emplacement

Quand NE PAS utiliser :

  • Proximité spatiale simple (utiliser plutôt les outils de zone tampon de la carte)
  • Visualisations ponctuelles (exporter GeoJSON et utiliser des outils externes)
  • Connexions changeant fréquemment (coût de maintenance élevé)
  • Diagrammes destinés au public (les schémas sont des outils internes)

Conventions de nommage

Noms des schémas :

  • Être précis : « Épissure de fibre optique du district nord » et non « Fibre 1 »
  • Incluez la date/version si le schéma est temporaire : « Plan réseau T4 2025 »
  • Utilisez des références de localisation : « Circuit A du transformateur du centre-ville »

Noms des nœuds :

  • Faites correspondre les noms des entités cartographiques lorsqu'ils sont liés (remplissage automatique)
  • Pour les nœuds personnalisés, utilisez des identifiants clairs : « Étape 3 : Filtration »
  • Évitez les noms génériques : « Nœud 1 », « Point A »

Étiquettes d'arêtes :

  • Décrivez la relation : « alimente », « relève de », « dépend de »
  • Indiquez la capacité : « 100 A », « 10 Gbps », « 500 GPM »
  • Utilisez une terminologie cohérente pour un même type de schéma

Conseils pour la gestion des versions

Fréquence des validations :

  • Chaque modification est automatiquement validée (aucune validation manuelle n'est nécessaire)
  • L'historique des versions peut s'allonger pour les schémas actifs
  • Utilisez la compression des versions pour réduire l'espace de stockage (fonctionnalité à venir)

Descriptions des versions :

  • Non capturées actuellement dans l'interface utilisateur (toutes les validations sont générées automatiquement)
  • Utilisez les propriétés du schéma pour enregistrer les étapes importantes
  • Exemple de propriété : « last_audit: 2025-02-14, auditor: jdoe »

Sécurité des annulations :

  • Testez d'abord l'annulation dans un environnement hors production
  • Vérifiez que toutes les fonctionnalités liées existent toujours après l'annulation
  • Communiquez avec l'équipe avant toute annulation majeure

Considérations relatives aux performances

Diagrammes volumineux :

  • Plus de 100 nœuds peuvent ralentir le rendu
  • Envisagez de diviser le diagramme en plusieurs schémas
  • Utilisez des algorithmes de mise en page (plus rapides que le positionnement manuel)

Arêtes complexes :

  • De nombreuses arêtes entre les mêmes nœuds peuvent se chevaucher
  • Le positionnement manuel aide à séparer les arêtes qui se chevauchent
  • Amélioration future : routage/regroupement des arêtes

Utilisation mobile :

  • L'éditeur de schémas est optimisé pour les ordinateurs de bureau
  • L'affichage mobile fonctionne mais est limité par la taille de l'écran
  • Il est recommandé d'utiliser au minimum une tablette pour l'édition

Raccourcis clavier

Remarque : les raccourcis clavier ne sont pas encore implémentés. Amélioration future.

Prévu :

  • Touche Delete pour supprimer l'élément sélectionné
  • Ctrl+Z / Cmd+Z pour annuler (via la restauration d'une version)
  • Touches fléchées pour déplacer légèrement le nœud sélectionné
  • Ctrl+C / Ctrl+V pour copier-coller des nœuds

Exportation et partage

Actuellement :

  • Schémas stockés dans la base de données (non exportables sous forme de fichiers)
  • Partage via les autorisations utilisateur (tous les utilisateurs ayant accès à la carte peuvent voir les schémas)
  • L'historique des versions fournit une piste d'audit

Améliorations futures :

  • Exportation sous forme d'image PNG/SVG
  • Exportation au format GraphML/Cypher pour les outils externes
  • Exportation au format JSON pour la sauvegarde/migration
  • Génération d'une URL pour partager une vue schématique spécifique

Dépannage

Le nœud ne se connecte pas à l'élément

Problème : Ajout d'un nœud à partir d'un élément de la carte, mais le lien ne fonctionne pas
Solution : Vérifiez que le nœud possède la propriété featureId (vérifiez l'éditeur de code)

Problème : L'élément a été supprimé de la carte mais le nœud y fait toujours référence
Solution : Supprimez manuellement le nœud ou effacez la propriété featureId

La mise en page ne cesse de se réinitialiser

Problème : Les positions définies manuellement ne sont pas enregistrées
Solution : Assurez-vous de ne pas cliquer sur Mise en page automatique après avoir positionné les éléments

Problème : La mise en page change lors de la réouverture du schéma
Solution : Vérifiez le menu déroulant de mise en page : les positions manuelles sont enregistrées, mais les préférences de l'algorithme s'appliquent à nouveau si les positions sont effacées

Les modifications ne s'affichent pas après l'édition

Problème : Le code a été modifié mais rien n'a changé sur le diagramme
Solution : Vérifiez s'il y a des erreurs de validation dans l'éditeur de code, cliquez sur le bouton Actualiser pour réinitialiser

Performances du diagramme lentes

Problème : Ralentissement lors du glissement de nœuds ou de l'ajout d'éléments
Solution : Réduisez le nombre de nœuds (divisez en plusieurs schémas), simplifiez le nombre d'arêtes, évitez la mise en page automatique sur les grands graphes

Documentation connexe