2. Objectifs du séminaire Présenter les concepts gérés par Open melodie archive, ensemble, corpus, champ, objet, représentation, thésaurus, valeurs contrôlées, traduction, texte , ressource externe, annotation, images très haute résolution Problématique de la fusion de données Processus d’indexation Processus de requête Ouverture sur l’Internet
3. Plan Partie 1 : création et indexation d’objets corpus, champ, objet, thésaurus, valeurs contrôlées, traduction, texte , ressource externe, annotation Partie 2 : travail collaboratif et sécurité Archive, ensemble Partie 3 : publication Conclusion, perspectives
4. Analyse du problème Problème posé : mettre en ligne les données du MAVI On dispose au départ de 3 corpus Leur nombre est appelé à augmenter On souhaite les « mettre en ligne »
10. Notion de thésaurus – 3 Relation père / enfant pour les éléments d’un thésaurus Indépendance corpus / thésaurus Certains éléments peuvent ne pas être référencés Un élément peut être référencé par plusieurs corpus différents Principe : les éléments d’un thésaurus ne doivent pas porter d’information relative à un corpus
11. Extension des thésaurus Cas des thésaurus dont les éléments ne sont pas exclusivement textuels Ex : lieux géographiques « Ensembles de valeurs contrôlées » Mêmes fonctionnalités que les thésaurus
12. Processus d’indexation – 3 Approche classique (Access, FileMaker) : ⇒ on arrive à une structure « figée » Question des évolutions Ajout de champ : simple Ajouter un corpus = ajouter une table, voire plusieurs Configuration du moteur de recherche
14. Problèmes approche classique « tous les objets » ⇒ une requête par table Le nombre de requêtes augmente avec le nombre de corpus Configuration de métadonnées sur les tables Reconfiguration à chaque ajout de corpus Nécessité de prévoir les champs sur lesquels vont opérer les requêtes Problème de « passage à l’échelle »
18. Premières notions – 2 Objet Objet du monde réel (une monnaie, un sceau) Corpus Ensemble d’objets qui partagent la même indexation Champ Élément d’indexation d’un objet Indexation – propre à un objet Ensemble des valeurs des champs pour un objet
19. Base de données – remarques Une base de données gère des tables Dans les tables sont enregistrées des entités Dans une table : Chaque champ est une colonne Chaque ligne est un enregistrement Chaque entité possède un ID (= clé primaire) Référence par ID possible (clé étrangère) La valeur des ID est géré par la base
20. Premières notions – 3 Toutes les notions gérées par Open melodie sont des entités en base Les corpus, objets, champs, thésaurus, mots-clés, valeurs contrôlées, etc… possèdent tous un ID Ils possèdent en plus des « champs techniques » Date de création, date dernière modification Créateur, dernier indexeur à avoir modifié l’entité Champs permettant de gérer la sécurité
21. Fusion de données – 1 Créer plusieurs corpus revient à faire cohabiter plusieurs bases de données en une seule Problématique du MAVI : 42 corpus Il s’agit de « fusion de données » Q1 : comment les données interagissent-elles entre elles ? Q2 : comment configurer le moteur de recherche ?
22. Interactions entre les données Les données partagent les mêmes thésaurus Les données peuvent se référencer les unes les autres « Voir aussi » est un lien vers un autre objet, d’un autre corpus
24. Type de champ Notion indépendante d’un corpus Plusieurs champs d’un même corpus peuvent avoir le même type Un type peut être utilisé par autant de corpus que l’on veut Chaque champ possède un type Autorise les requêtes inter-corpus
25. Création de corpus Objet : recherche des champs communs champ nom du champ type du champ
26. Création de corpus Objet : recherche des champs communs champ nom du champ type du champ type de base
27.
28. Création d’un corpus Réserve de type de champs commune à tous les corpus Mots-clés icono Dénomination Corpus ID de corpus Champs techniques Num. Inv. Catégorie Nom Type Bibliographie Matériau Champ 1 PRN Réf. Champ 2 Dénom. Réf. Commentaires Champ 3 Description Réf. Champ 4 Biblio Réf. Description
29. Le MAVI possède une quarantaine de types de champs Environ 20 sont vraiment utilisés Les types de champs on été créés à partir des 12 corpus initiaux Depuis l’ouverture du MAVI, 30 corpus ont été ajouté, sans modification de la liste des types de champ Cette liste est donc stable depuis 6 ans Cas du MAVI
36. Moteur de recherche Requête faite sur les types de champ plutôt que sur le corpus : Ex : sélectionner tous les objets dont le numéro d’inventaire est CGR 1234 Possibilité de créer des formulaires de requêtes à partir des types de champ existants Ex : Numéros d’inventaire, catégories, thèmes iconos, matériaux, lieu de trouvaille, etc… Contraintes au niveau de l’indexation Cas des données « intrinsèques »
37. Limitations Extension de la plateforme à d’ « autres projets SHS » projets inconnus, données inconnues Les 40 types de champs vont-il suffire ? Probablement pas -> le risque est rédhibitoire MAVI : liste de types de champs fixées Open melodie : types de champs dynamiques on peut créer ses propres types de champs
38. Types de champs dynamiques Notion propre à Open melodie Mêmes propriétés que les types de champs du MAVI Autorise toujours les requêtes inter-corpus Couche d’abstraction supplémentaire à gérer Complexité supplémentaire de la BD
39. Processus d’indexation – 3 Processus de création de corpus et d’objets dans Open melodie Identification et création de types de champs Création d’un corpus Ajout de champs à ce corpus Création d’objets Attribution d’un objet à un ou plusieurs corpus Indexation des objets, corpus par corpus
40. Création d’un type de champ – 1 Un type de champ est créé sur un type de base Processus de création d’un type de champ : Choix d’un nom Choix d’un type de base (chaîne de caractère, nombre, date, etc…) Création du type de champ
41. Création d’un type de champ – 2 Liste des types de base simples Chaîne de caractères, nombre entier ou décimal, date, booléen Mot-clé, valeur contrôlée Texte court ou long, multilingue ou unilingue Relation vers un autre objet Relation vers une ressource
42. Données textuelles – 1 Un texte peut être court ou long Tous les textes gérés par Open melodie sont associés à une « locale » (norme ISO 639) Une locale est presque une langue Un texte peut être unilingue ou multilingue Multilingue : traduction exacte possible (cas des mots-clés) Unilingue : associé à une langue, pas de traduction exacte possible
43. Données textuelles – 2 Exemple 1 : texte court multilingue (mot-clé) Chaque version est interchangeable, et affichée en fonction de la langue de l’interface Exemple 2 : texte long unilingue (description)
44. Données textuelles – 3 Open melodie permet d’ajouter une traduction aux textes unilingues Une traduction est un texte unilingue Il vient en annotation du texte original, on peut donc l’afficher en tant que tel Elle ne change pas l’affichage du texte dans sa version originale, quelle que soit la langue de l’interface
48. Création d’un type de champ – 3 Liste des types de base complexes Liste de type de base Type composite Ex 1 : liste de mots-clés iconographiques Composé d’autant de mots-clés icono que nécessaire Ex 2 : lieu géolocalisé Composé d’un nom de lieu, d’une latitude et d’une longitude Le nom de lieu vient d’un thésaurus
49. Création d’un type de champ – 4 Ex 3 : liste de mots-clés icono commentée Composé d’une liste de mots-clés icono Et d’un commentaire, grand texte unilingue Les types « liste » et « composite » permettent d’assembler des types de champs complexes
50. Création d’un type de champ – 5 Processus de création d’un type de champ : Choix d’un nom Champ simple : choix d’un type de base Champ liste : choix d’un type de champ élément Champ composite : choix de types de champs élément Création du type de champ Le type de champ peut ensuite être utilisé pour créer des champs de corpus
51. Étude de cas 1 : FANA Base de lieux de culte de l’Italie antique État du projet La structure de la base est stabilisée L’indexation peut démarrer depuis la rentrée Présentation de la base à l’INHA en avril 2009
58. Étude de cas 2 : MAVI Ensemble des tablettes de Philadelphie Intégré dans le MAVI actuel via des simplifications Intégrable en totalité dans Open melodie Deux entrées : Corpus de tablettes Chaque tablette a plusieurs faces Chaque face peut comporter des empreintes de sceaux Corpus de sceaux Référence les empreintes
59. MAVI – 1 5 corpus : tablettes, faces, sceaux, empreintes Sceaux Tablettes Faces de tablettes Empreintes de sceaux
60. MAVI – 2 Exemple de tablette : CBS 5269 CBS 5269 CBS-5269-2empreinte-ni CBS-5269-Legrain-903 CBS-5269-empreinte-ni1 Sceau ? CBS-5269-empreinte-ni2 Sceau ?
61. MAVI – 3 Exemple de sceau Seal of Ellil-shum-iddina, son of Taddannu5269 Seal of Aplâ son of Ninib-nadin Seal of Shum-iddina, son of illu-Ninib CBS 5269 ?
62. MAVI – 4 Notion de sous-objet / objet parent transposée du MAVI à Open melodie Ajout d’un type de champ « objet en relation » dans Open melodie On peut donc ajouter les relations qui n’ont pu être créées dans le MAVI
63. Démonstration Création d’un corpus simple « à la main » et indexation de quelques objets Importation massive d’un corpus du MAVI et ses thésaurus
64. Moyens d'indexation Création rapide objet par objet Indexation via les grilles Indexation via des formulaires Création par import massif Passage par Google spreadsheet (Excel) Possibilité d’import partiel (champs)
65. Plan Partie 1 : création et à l’indexation d’objets corpus, champ, objet, thésaurus, valeurs contrôlées, traduction, texte , ressource externe, annotation Partie 2 : travail collaboratif et sécurité Archive, ensemble Partie 3 : publication Conclusion
66. Notion d’ensembles Espace de rangement d’objets Peut avoir des sous-ensembles Même notion que le MAVI Regrouper des objets inter-corpus Utile pour les entrées thématiques Dans Open melodie : utilisés en plus pour la publication
67. Cas du MAVI – 1 Processus d’intégration d’objets (MAVI) Une seule personne
68. Cas du MAVI – 2 Modification d’objets : idem création … en un peu plus compliqué ! Effacement d’objets : non prévu Le « processus » est refaire !
71. Modèle de sécurité Isoler les données qui ne sont pas dans le même projet Ex : MAVI et Fana Au sein d’un même projet, empêcher les fausses manipulations Ex : PFA / Murasu / Ostraka Besoin d’un système de sécurité Administrateur, jeu de droits en lecture / écriture
72. Notion d’archive – 1 Un projet est une « archive » Les données d’une archive sont isolées des autres archives Une archive a un / des administrateurs Toute entité Open melodie doit vivre dans une archive Rien ne vit à l’extérieur d’une archive
73. Notion d’archive – 2 À l’intérieur d’une archive : droits sur des entités Statut publique / protégé / privé des entités Type de droits : lecture / modification / effacement Appliqués aux entités d’Open melodie, chaque entité possède une étiquette de sécurité On peut regrouper les droits en « profils », et attribuer les profils à des utilisateurs À chaque opération sur une entité, Open melodie vérifie les droits Contrôle au niveau IHM et à « bas niveau »
74. Base Open melodie – 1 Archive Corpus Ensembles Objets Thésaurus Valeurs contrôlées Types de champs Annotations Images haute résolution Traductions Ressources (PDF, liens, …) Textes
75. Base Open melodie – 2 Repository Open melodie Archive MAVI Archive PFA Archive Murasu Archive Ostraka Archive FANA Archive … Utilisateurs
76. Base Open melodie – 2 L’IHM Open melodie a son propre design Possibilités d’afficher les données MAVI / Fana / etc… dans leur propre interface IHM d’administration Open melodie Base Open melodie
77. Organisation générale Base Open melodie IHM d’administration Open melodie Connecteur XML IHM de consultation MAVI IHM de consultation FANA
79. Plan Partie 1 : création et à l’indexation d’objets corpus, champ, objet, thésaurus, valeurs contrôlées, traduction, texte , ressource externe, annotation Partie 2 : travail collaboratif et sécurité Archive, ensemble Partie 3 : publication Conclusion
80. Processus de publication Processus global de création / publication Création de données NOK Validation Modifications OK Publication IHM publique OAI – PMH SPARQL / Web sémantique
81. OAI – PMH Publier des données partielles (références vers les données complètes) auprès de moteurs de recherches globaux Protocole XML avec format de données fixé Les moteurs de recherche moissonnent les données en automatique Supporté par le méta portail Adonis Open melodie supporte(ra) OAI – PMH Futur : support de SPARQL et Web sémantique
82. Interfaces extérieures Problème : déclarer les données « publiées » dans l’IHM publique Création de deux ensembles particuliers IHM publique : le contenu est publiée dans l’IHM publique OAI – PMH : le contenu est publié sur le connecteur OAI – PMH Connexion possible aux flux RSS
83. Plan Partie 1 : création et à l’indexation d’objets corpus, champ, objet, thésaurus, valeurs contrôlées, traduction, texte , ressource externe, annotation Partie 2 : travail collaboratif et sécurité Archive, ensemble Partie 3 : publication Conclusion
84. État des lieux – 1 Open melodie est un logiciel open source et libre de droit Tout le monde (ie informaticien) peut l’installer « chez soi » (ie sur l’intranet de son labo) Open source : pérenne (n’importe qui peut le corriger, l’étendre, etc…) Publier les modifications sous la même licence Testé en automatique avant livraison Libre de droit : gratuit !
85. État des lieux – 2 Version 0.4 publiée 17/6/09 Code serveur stabilisé et testé Support pour toutes les entités Open melodie Archive, corpus, thésaurus, ensembles de valeurs contrôlées, types de champs, indexations Import massif des Google spreadsheets Premiers éléments d’IHM (première version) Prochaine version : 0.7, prévue mi janvier Totalité des fonctionnalités, dans une IHM prototype
88. Tâches futures Connecteurs XML Design d’une interface finale Améliorations ergonomiques, design Juin 2010 : publication d’une v1.0 À partir de juin 2010 : V1.0 sera en maintenance corrective Début des développements d’une v2.0 avec nouvelles fonctionnalités Compatibilité des version corrigées avec la v1.0 Possible migration entre v1.0 et v2.0
89. Utilisation d'Open melodie Outil testé en automatique Structure de base / serveur stable Les données enregistrées ne sont pas perdues ! Phase d’apprentissage Peut se faire dans une archive « bac à sable » Documentation en ligne Outil en développement Toutes les idées sont bonnes à prendre Priorité aux utilisateurs
90. Liens Blog : http://openmelodie.blogspot.com/ Téléchargement : http://sourceforge.net/projects/openmelodie/ Bêta-test : http://www.achemenet.com/openmelodie-beta/