BaseX
BaseX est un système de gestion de base de données XML native et légère, développé en tant que projet communautaire sur GitHub[2]. BaseX est spécialisé dans le stockage, le requêtage et la visualisation de larges documents et collections de documents XML[3]. BaseX fonctionne sur toutes plates-formes et est distribué sous une licence libre permissive (en).
Développé par | BaseX Team |
---|---|
Première version | |
Dernière version | 11.4 ()[1] |
Dépôt | github.com/BaseXdb/basex |
État du projet | Actif |
Écrit en | Java |
Environnement | Machine virtuelle Java |
Langues | allemand, anglais, français, italien, japonais |
Type | Système de gestion de base de données |
Licence | BSD 3-clauses |
Site web | basex.org |
À la différence d'autres bases de données orientées document, les bases de données XML supportent les langages de requête standard tels que XPath et XQuery. BaseX est hautement conforme aux spécifications du World Wide Web Consortium (W3C) mentionnées précédemment[4],[5] ainsi qu'aux extensions officielles Update et Full Text. La GUI incluse dans BaseX permet aux utilisateurs de rechercher, explorer et analyser leurs données de manière interactive. Elle évalue les expressions XPath/XQuery en temps réel (par exemple, pendant la saisie par l'utilisateur).
Technologies
modifier- XPath langage de requête
- XQuery 3.1
- Extension XQuery Update
- Extension XPath/XQuery Full Text
- Supporte les modules et le système de packaging EXPath
- Architecture client-serveur avec gestion des utilisateurs et journal des transactions
- APIs : RESTXQ, REST, WebDAV, XML:DB, XQJ; Java, C#, Perl, PHP, Python et autres.
- GUI à plusieurs visualisations disponibles : Treemapping, vue en tableau, liste arborescente (en), nuage de points
Représentation des bases de données
modifierPour stocker les documents XML, BaseX utilise une représentation tabulaire de la structure arborescente XML. La base de données gère le stockage soit d'un seul document soit d'une collection de documents. Les auteurs de BaseX se sont inspirés du schéma d'encodage XPath Accelerator et de l'algorithme Staircase Join Operator pour accélérer les étapes de localisation XPath[6]. De plus, BaseX fournit de nombreux types d'index pour améliorer la performance des opérations de requête sur l'arborescence, sur les attributs, de comparaisons de texte et de recherche plein-texte[7].
Histoire du projet
modifierBaseX a été initié par Christian Grün à l'Université de Constance en 2005. En 2007, BaseX devient open source et est diffusé depuis lors sous licence BSD[8],[9].
En savoir plus
modifierRéférences
modifier- « Release 11.4 », (consulté le )
- GitHub: BaseX
- « Overview on database instances created with BaseX » (consulté le )
- « W3C: XQuery Test Suite Result Summary », World Wide Web Consortium (consulté le )
- « W3C: XPath and XQuery Full Text 1.0 Test Suite Result Summary », World Wide Web Consortium (consulté le )
- [PDF] Christian Grün, Marc Kramis Alexander Holupirek, Marc H. Scholl, Marcel Waldvogel, « Pushing XPath accelerator to its limits », Universität Konstanz, (consulté le )
- [PDF] « Storing and Querying Large XML Instances », Universität Konstanz (consulté le )
- « BaseX 5.0: XML Database with Visual Frontend », Linux Magazine (consulté le )
- (de) « Open Source Kompetenzzentrum of the german Bundesverwaltungsamt » (consulté le )