Stocker et manipuler nativement ses données XML

Magazine
Marque
GNU/Linux Magazine
Numéro
121
Mois de parution
novembre 2009


Résumé
Pour faire suite à l'excellent article de Mickaël Bailly dans GLMF n°117 sur CouchDB et compléter le panorama des alternatives au bon vieux SGBDR, cet article vous propose de découvrir XQuery, langage de requête XML, et eXist, base de données XML.


EXist-logo

Comme un cas d'utilisation est toujours plus parlant et concret qu'un article théorique, nous illustrerons l'utilisation d'eXist et XQuery par un exemple : un moteur de recherche sur un ensemble de documents XML.

Il incombe cependant à certains de mes collègues de compléter ce tableau alternatif avec les triple stores, SPARQL et le Web sémantique... ils se reconnaîtront ; et à d'autres de traiter de HBase la base de données distribuée du projet Apache Hadoop pour stocker de très gros volumes de manière très répartie (à la Google).

1. Le format des données

Notre exemple sera basé sur la manipulation des documents XML produits par la méthode QSOS1. La structure des ces documents est de ce type :

<?xml version="1.0" encoding="UTF-8"?>

<document>

  <header>

    <authors>

      <author>

        <email>raphael.semeteys@atosorigin.com</email>

        <name>Raphael Semeteys</name>

      </author>

    </authors>

    <dates>

      <creation>20051025</creation>

      <validation/>

Cet article est réservé aux abonnés. Il vous reste 95% à découvrir.
S'abonner à Connect
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez chaque semaine un nouvel article premium
  • Consultez les nouveaux articles en avant-première
Je m'abonne


Article rédigé par

Par le(s) même(s) auteur(s)

Injection de dépendances

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
56
Mois de parution
septembre 2011
Spécialité(s)
Résumé
L'injection de dépendances est un patron d'architecture utilisé pour résoudre la problématique des dépendances entre objets tout en permettant un découplage des objets liés, en passant par une indirection. C'est une alternative plus souple à d'autres patrons d'architecture tels que ServiceLocator ou Factory.En 2009, des API ont été spécifiées pour standardiser la notion d'injection de dépendances au niveau de Java (JSR-330) et de la plate-forme JavaEE (JSR-299).

Les derniers articles Premiums

Les derniers articles Premium

Du graphisme dans un terminal ? Oui, avec sixel

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

On le voit de plus en plus, les outils en ligne de commandes s'étoffent peu à peu d'éléments graphiques sous la forme d'émojis UTF8. Plus qu'une simple décoration, cette pointe de « graphisme » dans un monde de texte apporte réellement un plus en termes d'expérience utilisateur et véhicule, de façon condensée, des informations utiles. Pour autant, cette façon de sortir du cadre purement textuel d'un terminal n'est en rien une nouveauté. Pour preuve, fin des années 80 DEC introduisait le VT340 supportant des graphismes en couleurs, et cette compatibilité existe toujours...

Game & Watch : utilisons judicieusement la mémoire

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Au terme de l'article précédent [1] concernant la transformation de la console Nintendo Game & Watch en plateforme de développement, nous nous sommes heurtés à un problème : les 128 Ko de flash intégrés au microcontrôleur STM32 sont une ressource précieuse, car en quantité réduite. Mais heureusement pour nous, le STM32H7B0 dispose d'une mémoire vive de taille conséquente (~ 1,2 Mo) et se trouve être connecté à une flash externe QSPI offrant autant d'espace. Pour pouvoir développer des codes plus étoffés, nous devons apprendre à utiliser ces deux ressources.

Raspberry Pi Pico : PIO, DMA et mémoire flash

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Le microcontrôleur RP2040 équipant la Pico est une petite merveille et malgré l'absence de connectivité wifi ou Bluetooth, l'étendue des fonctionnalités intégrées reste très impressionnante. Nous avons abordé le sujet du sous-système PIO dans un précédent article [1], mais celui-ci n'était qu'une découverte de la fonctionnalité. Il est temps à présent de pousser plus loin nos expérimentations en mêlant plusieurs ressources à notre disposition : PIO, DMA et accès à la flash QSPI.

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous