Étiquette : xml (Page 2 sur 3)

Archives scientifiques, instruments de recherche XML et virtualisation des données

Bonjour,
L’utilisation de la DTD, puis maintenant du schéma Encoded Archival Description ou EAD permet de réaliser une version numérique d’un inventaire archivistique. L’inventaire (qui lui doit respecter la norme ISAg de l’ICA) est à l’archiviste ce que la base bibliographique est au bibliothécaire, c’est à dire la pièce maitresse avant toute diffusion d’un fonds. Sans inventaire, pas de communication du fonds d’archive. C’est particulièrement vrai – et important – avec les archives de science et les fonds d’archives de savants (au sens XIXe siècle du terme) et de chercheurs. L’inventaire peut être réalisé sous un simple éditeur de texte (MSWord, Open Office Writer, etc.) mais aujourd’hui, il est mieux de le réaliser en XML en suivant le schéma EAD. (ex. DTD datant de 2002). L’encodage en EAD, permet de créer un fichier XML composé de deux grandes parties :

  • • le header : l’entete du document avec les descriptions du fonds
  • • le archdesc : la presentation des niveaux : du fonds jusqu’à la pièce (item), c’est à dire le document lui-même (la photo, le cahier de notes, etc.)

L’encodage EAD peut-être réalisé dans logiciel d’encodage XML tel que XMetal (payant) ou XMLmind (gratuit). XMLmind est particulièrement intéressant car l’on peut y ajouter des feuilles de style XSL permettant de travailler très simplement via des formulaires de saisie de type « pages web » (voir le système ATES). Une fois l’encodage XML réalisé, il faut différencier le stockage des fichiers XML+les documents numériques qui y sont associés d’exploitation que l’utilisateur peut en faire. D’une part, il faut mettre en place un système de gestion qui assure la pérennité des données (transformations des formats images, suivit de l’évolution des DTD et des schémas XML, suivit juridique de la communicabilité, etc.) et d’autre part une plateforme qui permet la diffusion, via des applications (qui peuvent être multiples), de ces fichiers XML encodés suivant la DTD ou le schéma EAD. Les fichiers EAD deviennent alors des instruments de recherche dans les fonds d’archives. Dans l’application du modèle OAIS, la pérennité des données est une chose, l’exploitation des données en est une autre. Les images et fichier EAD peuvent être sur un serveurs dédié, les applications sur un autre (avec derrière une belle équipe d’ingénieur système) : c’est la virtualisation des données. Le tout fonctionne car l’ensemble des briques (stockage, exploitation, diffusion) respecte des règles communes : c’est le modèle OAIS.

Bonne fin de semaine,

Stéphane.

Les mains dans Tomcat, Cocoon, SDX, etc.

Bonsoir,
Il est des jours qui sont trop courts… Je suis depuis deux jours dans l’installation d’un serveur pour le pôle HSTL et le CN2SV sous Apache/Tomcat6 faisant tourner en parallèle SDX, Cocoon, METS Navigator. Sous Tomcat 6.0.10 et JVM 1.5 ces briques semblent bien tenir la route. Cependant, chez moi, Cocoon n’est pas encore très stable, mais cela viendra (désolé Got).
L’idée principale est de proposer une plate-forme applicative simple, offrant à nos producteurs la consultation d’AIP stockés soit en EAD soit en METS (voir MODS que j’expérimente en diffusion via un outil OAI-PMH, mais là c’est une autre histoire, et c’est très neuf). Je suis encore septique sur la pérennité à long terme des frameworks java tant l’empilement des couches (ou briques) technologiques semble fragile. Je compare cela à une application « classique » MySQL+PHP tournant sous LA »mp ». L’avenir nous le dira…
Stéphane.

MathML et reconnaissance optique de formules mathématiques

Bonjour,
Après une semaine passée à installer le DataCenter du pôle HSTL de mon labo, J’ai travaillé hier sur l’OCéRisation de formules de mathématiques. Après un peu de veille, j’ai vu que cela n’était pas très facile et que les logiciels commerciaux classiques ne le permettait pas.

J’ai cependant trouvé une suite d’outil : Infty Project for Mathematical Document Recognition and Analysis, User Interface,Accessibility of Scientific Documents. Il s’agit d’une suite d’outils créé par Masakazu Suzuki (Kyushu University, Japon). J’ai testé InftyEditor et à première vue c’est très puissant. Cependant le module d’acquisition depuis un scanner ne fonctionne pas sur mon poste (j’ai pourtant un très bon scanner). Il faut donc scanner les documents indépendement du proscessus d’ORC. Autre limite, les formats possibles en entrée de chaîne : seul le TIFF binaire non compressé est possible. C’est un peu dommage car il semble que d’autres formats soient acceptés (PNG, JPEG, GIF), mais il s’agit peut-être un problème local venant de mes images.

L’intérêt principal reste la puissance de l’ORC et les formats de sortie : XML pour InftyEditor, LaTeX, MathML, PDF, etc. Mais le GROS problème c’est que les accents français ne sont pas gérés. C’est bien dommage. Mais c’est un outil à suivre…

Stéphane.

METS Navigator : une application web robuste pour la diffusion de documents structurés en METS

Bonjour,

Je profite de quelques jours de vacances à la montagne pour tester – entre deux journées de ski – quelques outils d’exploitation de fichiers xml.

Le problème majeur avec les technologies utilisant xml reste l’exploitation réelle en production des documents. Le passage à la production reste complexe. La mise en ligne d’un document xml nécessite l’emploi d’une feuille de style xsl si l’on veut rendre compréhensible par tous les données contenus dans le dit document. Au plus simple, l’action d’interprétation (le parsage) du xml suivant la feuille de style sera laissée au navigateur web du client avec des différences notoires entre les résultats. Il existe des applications web (programmes informatiques exécutables au travers de serveurs web) qui permettent de traiter cette tache du coté du serveur et donc de rendre homogène le résultat à l’écran et surtout de réduire le temps de parsage pour peut que l’on ait un serveur puissant.

Le service informatique de la bibliothèque numérique de l’Université d’Indiana et la Bibliothèque Lilly de cette même Université viennent de mettre au point l’une de ces applications : METS Navigator. Comme son nom l’indique, cette application permet d’exploiter une collection de fichiers xml respectant le schéma METS. METSNav est une application web fonctionnant sous Tomcat d’apache et Java et dont l’installation est facilitée par la mise à disposition par l’équipe de l’UI d’une archive war permettant un déploiement rapide.

Dans la documentation de METS Nav, l’introduction résume bien le produit :

« METS Navigator is an open source METS-based system for displaying and navigating sets of page images or other multi-part digital objects. METS, the Metadata Encoding and Transmission Standard, is a freely available XML standard, maintained by the Library of Congress, for managing and describing digital library objects. Using the information in the METS elements, METS Navigator builds a hierarchical menu that allows users to navigate to specific sections of a document, such as title page, specific chapters, illustrations, etc. METS Navigator also allows simple navigation to the next, previous, first, and last page image or component part of a digital object. METS Navigator also makes use of the descriptive metadata in the METS document to populate the interface with basic descriptive information about the digital object. METS Navigator is built using Java and open source Web technologies, including the Apache Struts Web Application Framework, the Castor Java & XML Data Binding libraries, and Ant, and runs under a Web application server such as Apache Tomcat. METS Navigator was developed by the Indiana University Digital Library Program. »

Cette application sépare bien la partie programme, les interfaces et la partie « stockage » des fichiers xml qu’il est tout à fait possible de virtualiser à minimal sur une autre machine locale ou dans le même réseau (elle ne va pas aussi loin en matière de virtualisation que l’application créé par le Centre de Ressouces NumériquesTelma) mais elle ressemble sur ce plan là, à l’application EXE que nous avons développé avec l’équipe du Centre National pour la Numérisation de Sources Visuelles pour l’exploitation des fichiers xml normalisés en EAD. Il est également très facile de faire sienne cette application, c’est à dire de la mettre en production dans un environnement informatique même restreins : petits services de documentation, de bibliothèques de laboratoires ayant des archives scientifiques, ou même encore services d’archives. « METS Nav. » fonctionne aussi bien avec une architecture Linux ou Windows (avantage du moteur de servlets Tomcat) et semble être très stable. Il y a cependant quelques restrictions au niveau des noeux METS, mais la documentation proposée est très complète.

En conclusion, cette application web me semble très prometteuse pour l’avenir car elle offre un cadre puissant, clair, dans le respect des standards et sous licence propre mais open source. J’ai contacté Mme Michelle Dalmau (une des auteurs de METS Navigator) qui m’a confirmé l’amélioration de l’application dans un futur proche.

Nous le voyons bien, les applications web permettant l’exploitation – en production (voir l’exemple de telma ou du cn2sv) – d’entrepôts xml (stockage distribué ou centralisé, xml natifs ou extractions) donne enfin une nouvelle dimension à la mise à disposition de documents sur le web.

Stéphane.

Ressources : METS Navigator – http://metsnavigator.sourceforge.net/

MathML

Bonjour,
Mes activités sont très « 2.0 » (et complexes) en ce moment : je suis pris entre le temps de rédaction du bilan d’activité du CN2SV et par la mise en place d’entrepôt OAI pour le CRHST mais aussi, par la vie des plateformes web du pôle HSTL, je n’ai plus une minute pour ce blog depuis 8 jours. De plus, les deux derniers billets sortent un peu du thème original de se blog (racontrer, au jour le jour, les aventures d’un ingénieur d’études qui fait du web depuis 1995). Je reviens vers le coeur du métier avec un court (trop court) billet sur une grammaire XML que j’utilise pour la publication de sources comportant des formules mathématiques : le MathML.

1) Le MathML 2.0 : Qu’est-ce ?

Il s’agit langage dérivé du XML permettant d’afficher et d’assurer le traitement de formules de mathématique sur le web. Depuis le 21 février 2001, MathML est devenu une recommandation du W3C.

2) Comment lire le MathML ?

L’un des stagiaires passé au CRHST en 2005 a résumé les solutions de lecture dans une page très bien faite. J’en reprends ici les points principaux.

Certaines pages de ce site requièrent l’affichage d’expressions scientifiques (équations, fractions, symboles mathématiques…).
Utiliser à cet effet des images montre des limites : elles ne sont pas forcément bien dimensionnées ni bien ajustées par rapport au texte. De plus, cela est très lourd à gérer de devoir insérer une image dès la moindre fraction.
La solution est d’utiliser le langage MathML, langage dérivé du XML et recommandé par le W3C. Les navigateurs compatibles devraient comprendre ce langage. Pour Internet Explorer, des plug-in existent (un plug-in est un programme qui apporte de nouvelles fonctionnalités à un logiciel existant).
Le tableau ci-dessous présente la compatibilité des navigateurs les plus utilisés.

  Internet Explorer Netscape Navigator Mozilla / Firefox Opéra Safari Amaya
Windows 5.0 & Techexplorer
5.5 & MathPlayer | Techexplorer
6.0 & MathPlayer | Techexplorer
6.1 & Techexplorer
7.0 ou +
0.9.9 ou + / toute version 7.2 NON pas de support Voir ci-
dessous
Mac OS 5.0 & Techexplorer 6.1 & Techexplorer
7.1 ou +
0.9.9 ou + / toute version 7.2 NON NON
Linux pas de support 6.1 & Techexplorer
7.0 ou +
0.9.9 ou + / toute version 6.0 NON pas de support

Quelques précisions :
1. MathPlayer compense utilement la défaillance d’Internet Explorer ; il est diffusé gratuitement par Design Science.
2. Techexplorer est un plug-in qui s’ajoute à la plupart des navigateurs, sur Windows, Mac et Linux ; anciennement développé par IBM, il est désormais distribué gratuitement par Integre pour un usage personnel. Voir ici pour plus d’informations.
3. Amaya est l’éditeur et navigateur Web officiel du W3C qui permet d’éditer très simplement des pages contenant du texte, des graphiques et des expressions mathématiques (en MathML). Il est disponible pour Windows 98, NT/2000/XP, Unix, Linux et MacOSX. Pour plus d’informations, aller sur le site officiel d’Amaya ou sur une page en français.

Concernant Internet Explorer,vous pouvez télécharger MathPlayer pour Windows.
Bien que nous ne vous le recommandions vraiment pas (risques d’erreurs à l’affichage du MathML), vous pouvez aussi télécharger Techexplorer pour Windows, ou Techexplorer pour Mac OS 8.6 à 9.2 et Mac OS X. Mais découvrir Mozilla demeure encore la meilleure solution !

Polices scientifiques pour Mozilla/Netscape

Afin que les navigateurs compatibles MathML affichent correctement les expressions mathématiques, vous devez éventuellement installer sur votre poste quelques polices de caractères scientifiques.
N.B : Si vous utilisez Internet Explorer avec MathPlayer sous Windows, l’installation de polices supplémentaires n’est pas nécessaire.

Pour plus de détails, voir la page dédiée aux polices pour MathML sur le site de Mozilla.

3) Ca ressemble à quoi ?

Je viens de terminer la relecture de la théorie mathématique d’André-Marie Ampère qui est encodée en MathML et en ligne sur le site @.ampère.

Joyeuses fêtes de fin d’année !

Stéphane.

METS, PREMIS dans des cases

Bonjour,
Got des Petites Cases propose un très bon articles dans son blog sur METS, PREMIS et nos fameux SIP dictés par l’OAIS : j’en profite pour signaler l’atelier technologique du CN2SV (dont je suis le chargé de mission pour le CNRS) qui se tient à Fréjus (Villa Clythia du CAES) à partir de demain (le 16 oct. 2006) et pour trois jours. Nous allons discuté autour de l’EAD, METS, XMP, Archives de scientifiques accessibles via le web (sémantique forcément), etc.
Je file donc à la gare de Lyon…
Stéphane.

USBDS : Unité de Stockage des Bases de Données Scientifiques

Bonsoir,

Toujours dans mes réflexions sur le stockage et l’archivage des bases de données scientifiques des chercheurs de mon équipe, je travaille sur la mise en place d’une USBDS (Unité de Stockage des Bases de Données Scientifiques) autour d’un schéma XML. L’idée est partie d’un problème semble, un serveur web contenant des bases de données avec interface de gestion et d’interrogation n’est pas éternel.

Il faut donc une unité de stockage et d’archivage des bases de données scientifique ou les chercheurs et ingénieurs pourraient déposer outre les données au format natif de leurs bases (.sql par exemple) mais aussi un fichier XML respectant mon schéma XML et décrivant l’application et la base de données (format, système, etc.).

Tout cela pour ne plus perdre des données, des heures de travail, et des pratiques. Suite… au prochain épisode.

Stéphane.

Archiver de bases de données factuelles des scientifiques

Bonsoir, L’idée de l’archivage des données des scientifiques du passé et des chercheurs actuels fait son chemin dans les bureaux du CRHST et au sein de l’équipe du CN2SV. Il va nous falloir transmettre aux générations futures les données et leurs clés d’accès. Aujourd’hui la démocratisation du couple MySQL-PHP dans un environnement LAMP permet la création par beaucoup de chercheurs de mini bases de données factuelles. Elles sont très souvant au coeur des processus de recherche. Ils est important d’archiver ces bases en tenant compte de l’environnement technique. Cet archivage doit intégrer à la fois :

  • les données (sous la forme la plus simple possible : un fichier texte contenant toutes les données « purifiées » de l’environnement de gestion : un .xml ou un .txt tabulé)
  • les interfaces développés (PHP, Perl, Python, etc.) sous la forme d’une archive .zip, .tar ou .tgz
  • la modélisation et les commandes SQL (CREATE + INSERT) sous la forme d’un .xml ou .sql

Une initiative du CCSD du CNRS va dans ce sens : l’archive CIEL.

Les principales motivations de ce projet sont :
– “Promouvoir et valoriser les codes de calcul” c’est-à-dire mieux faire connaître les codes de recherche développés dans les laboratoires de recherche et permettre une reconnais- sance aux développeurs de ces codes de la même fa¸con qu’un article dans une revue avec comité de lecture.
– “Pérenniser les codes de calcul” pour parer au problème de la perte de savoir-faire due au départ d’un thésard ou d’un chercheur. C’est également l’un des moyens pour faire connaître l’existence de ce patrimoine scientifique dans notre communauté mais aussi dans le milieu industriel.
– “Assurer la reproductibilité des résultats de publication” pour permettre aux person- nes intéressées par les articles de disposer d’un outil mettant en oeuvre les méthodes proposés et permettant de reproduire les résultats décrits dans l’article. Ainsi, la publication d’un code qui a servi à produire les illustrations d’un papier de sci- ences appliqués accepté dans un journal “classique” va d’une part permettre de “reproduire” les résultats publiés, mais aussi de l’utiliser pour d’autres applications comme n’importe quel résultat théorique issu d’une publication. Par ailleurs, les personnes qui développent des codes de calcul en dehors d’un contexte de publication peuvent trouver ici un outil pour faire con- naitre leurs travaux et valoriser ceux-ci.

Il serait intéressant de concevoir structure d’archivage et de stockage de ces bases de données. Si vous souhaiter participer à ce projet n’hésitez pas à me contacter.

XMP {suite}

La mise en ligne de documents numérique entraîne, outre la question des droits, toutes une série de questions techniques qui sont la plupart du temps le parent pauvre des projets de numérisation et de mise à disposition. Le format IPTC et aujourd’hui le framework XMP permettent, par exemple, d’ajouter des méta-données dans l’image (XMP – eXtensible Metadata Platform – repose sur une version simple de RDF). C’est à dire que les méta-données sont « encapsulées ». Encapsuler…Encapsuler : voici un terme technique qui paraît simple mais qui peut avoir des conséquences sur la pérennité des méta-informations. Le Grand ROBERT de la langue française nous dit :

Encapsuler [ãkapsyle] v.tr. – 1889, Renan, au fig. ; de en-, et capsule. Techn. Enfermer dans un capsule […].

Le fait « d’enfermer » doit attirer l’attention du fournisseur de ressources visuelles (photographiques dans notre exemple) sur la possibilité de « libérer » les méta-données ainsi encapsulés. C’est à dire de pouvoir dans le futur les lire, les exploiter en même temps que l’image, sans avoir de contraintes.
Il est important de ne s’appuyer que sur normes libres (si possible, attention XMP est fortement lié à Adobe Inc. alors que l’IPTC Core est développé par International Press and Telecommunications Council (1965) et succède à l’IPTC « classique »), internationnales et reconnues par les professionels de l’information (iconographes, documentalistes, etc).
Avec un outil simple, tel que PixVue (voir ci-dessus), il est facile à l’aide de la souris et du clavier d’ajouter des « méta » dans une image suivant la norme IPTC.

Bonne fin de semaine,

Stéphane.

Schéma XMP / IPTC parseur

Bonsoir,

Dans le développement du CN2SV, j’ai programmé un parser XMP, IPTC à partir de la librairie « PHP JPEG Metadata Toolkit » de E. Hunter. Le schéma XMP est prometteur même s’il est lié à Adobe. Mais la programmation d’un programme en php lisant les méta-données IPTC est facile et la technologie est mure aujourd’hui. L’IPTC a adopté XMP comme schéma de la toute dernière version de son standard de description des photographies : IPTC Core (http://www.iptc.org/IPTC4XMP/). Avec l’utilisation massive des appareils photos numériques, qui truffent leurs images de méta-données, il est temps d’offrir aux utilisateurs d’intergiciel (middlewares) en php, jsp, java, asp, la possibilité de lire ces données et de les enrichir.

Un simple parseur IPTC en PHP (PHP 3 >= 3.0.6, PHP 4, PHP 5) :

 function output_iptc_data( $image_path ) { 
   $size = getimagesize ( $image_path, $info);      
    if(is_array($info)) {        
     $iptc = iptcparse($info["APP13"]);        
     foreach (array_keys($iptc) as $s) {            
     $c = count ($iptc[$s]);            
      for ($i=0; $i <$c; $i++) {            
       echo $s.' = '.$iptc[$s][$i].' - ';           
      }        
     }    
    } 
  }

(source : site www.php.net)

Nous allons intégrer un lecteur/editeur IPTC/XMP à Iceberg. Je tiens d’ailleurs à remercier Romain et Frédéric, les deux développeurs contractuels du CN2SV qui font un travail formidable.

A bientôt,
Stéphane.

« IPTC Core » est la propriété intellectuelle de IPTC. XMP, Photoshop and Creative Suite (CS) sont des marques commerciales de la société Adobe Systems Inc.

Fièrement propulsé par WordPress & Thème par Anders Norén