MTES-MCT / metadata-postgresql

Plume : gestion des métadonnées du patrimoine PostgreSQL
https://mtes-mct.github.io/metadata-postgresql/
GNU Affero General Public License v3.0
1 stars 1 forks source link

Option pour intégration des commentaires de table #151

Closed StormKlaus closed 11 months ago

StormKlaus commented 1 year ago

Bonjour,

J'ai deux petites questions en rapport avec la reprise de notre patrimoine de métadonnées PostgreSQL formalisé avant le déploiement de PLUME :

Merci pour vos futures lumières.

Bonne journée

alhyss commented 1 year ago

Bonjour @StormKlaus

C'est déjà possible - même si l'absence de documentation utilisateur rend difficile de le deviner à ce stade 😢

Pour importer le descriptif complet ou une partie dans le champ description dct:description ou le champ libellé dct:title de Plume, il faut utiliser un modèle qui active la fonctionnalité de calcul sur ces champs et définit une expression régulière adaptée. La documentation technique explique sommairement comment faire.

Comme pour toutes les fonctionnalités de calcul, tu as le choix entre deux comportements :

Les modes doivent être spécifiés dans le champ compute du modèle, et les paramètres (notamment l'expression régulière à utiliser) dans le champ compute_params, sous la forme d'un dictionnaire JSON. Il est possible d'avoir à la fois le mode manuel et l'un des modes automatiques.

Imaginons que tes descriptifs soient de la forme [%libellé%] %description% et que tu souhaites activer automatiquement cette fonctionnalité pour tous les modèles quand les champs description et libellés sont vides, tout en permettant une activation manuelle dans les autres cas.

Tu peux configurer les catégories de métadonnées dct:title et dct:description de cette façon :

UPDATE z_plume.meta_categorie
    SET compute = ARRAY['empty', 'manual'],
        compute_params = '{"pattern": "^[[]([^]]+)[]]"}'::jsonb
    WHERE path = 'dct:title' ;

UPDATE z_plume.meta_categorie
    SET compute = ARRAY['empty', 'manual'],
        compute_params = '{"pattern": "^(?:[[][^]]+[]])?\\n*\\s*(.+)$"}'::jsonb
    WHERE path = 'dct:description' ;

Pour activer la fonctionnalité sur un modèle particulier, il faut faire la même chose dans z_plume.meta_template_categories sur l'enregistrement qui associe la métadonnée au modèle en question.

Pour la boucle retour - copier la description et/ou le libellé des métadonnées dans le descriptif PostgreSQL - il faut aller dans les options de Plume : configuration Personnalisation de l'interface, onglet Avancé. Ce sont les deux cases à cocher du bas.

copie_dans_descriptif

Pour l'heure, il n'y a pas la possibilité de définir un formatage particulier pour le titre ou la description, et ils écrasent le descriptif PostgreSQL existant. Le titre est placé en premier, la description ensuite. Si les deux sont présents, ils sont séparés par un retour à la ligne. Cette fonctionnalité peut tout à fait être améliorée. Nous n'étions pas allés très loin, ne sachant pas si elle serait utilisée.