Bases de données compatibles XML
Les bases de données compatibles XML proposent généralement une ou plusieurs des approches suivantes pour stocker le XML au sein de la structure relationnelle traditionnelle :
- Le XML est stocké dans un CLOB ( objet volumineux de type caractère ).
- Le XML est « décomposé » en une série de tables en fonction d'un schéma
- Le XML est stocké dans un type XML natif tel que défini par la norme ISO 9075-14
Les SGBDR qui prennent en charge le type XML ISO sont :
- IBM DB2 (pureXML )
- Microsoft SQL Server
- Base de données Oracle
- PostgreSQL
En général, une base de données compatible XML est plus adaptée lorsque la majorité des données ne sont pas au format XML. Pour les ensembles de données majoritairement au format XML, une base de données native XML est préférable.
Exemple de requête de type XML dans IBM DB2 SQL
Bases de données XML natives
Les bases de données XML natives sont spécialement conçues pour la manipulation de données XML. La gestion de XML sous forme de longues chaînes de caractères étant inefficace, et compte tenu de la nature hiérarchique du XML, des structures de données optimisées sont utilisées pour le stockage et l'interrogation. Ceci améliore généralement les performances, tant pour les requêtes en lecture seule que pour les mises à jour. Les nœuds et les documents XML constituent l'unité fondamentale de stockage (logique), tout comme une base de données relationnelle possède des champs et des lignes.
La norme recommandée par le W3C pour interroger des données XML est XQuery ; la dernière version est XQuery 3.1. XQuery inclut XPath comme sous-langage et XML est lui-même une sous-syntaxe valide de XQuery. Outre XPath, certaines bases de données XML prennent en charge XSLT comme méthode de transformation des documents ou des résultats de requêtes extraits de la base de données.
Fonctionnalités linguistiques
API prises en charge
| Nom | XQJ | XML:DB | Reposant | RESTXQ | WebDAV |
|---|---|---|---|---|---|
| BaseX | Sedna | Modèles de bases de données | |||