Le développement de XML avait comme objectif, entre autres, de permettre l'échange de données entre différents types de stockage. Si l'on écrit des procédures stockées visant à exporter des données à partir de SQL Server, peut-être au moyen de DTS (Data Transformation Services), on voudra convertir le XML dans le
Une autre solution : XSLT
format
cible requis, en utilisant le support
XML de SQL Server. La manière dont
Microsoft met en oeuvre XML dans SQL
Server ne rend pas cette conversion facile
pour certains types de structures
de données, même si c’est faisable.
De nombreuses architectures de
projet exigent une solution exclusivement
SQL Server, pour la production
de XML. Mais il est toujours important
de voir les choses sous un champ plus
large. Si, par exemple, vous avez un
frontal VB (Visual Basic) ou si vous utilisez
XSLT (Extensible Style Language
Transformations) pour transformer les
données, il pourrait être plus facile de
renvoyer les données XML sous forme
de XML « plat » (non hiérarchique),
puis de les convertir en XML hiérarchique
ailleurs. Pour illustrer cette
technique, voyons brièvement une solution
qui utilise XSLT.
Pour générer des données XML
plates, on peut utiliser une instruction
FOR XML RAW T-SQL simple, comme
le montre le listing 6. Si l’on exécute ce
code dans Query Analyzer, on obtient
le XML de la figure 8. Bien que le résultat
ne soit pas du XML hiérarchique, il
contient l’attribut supplémentaire
ReportsToEmployeeID, qui fournit l’information
hiérarchique. Les analyseurs
syntaxiques XML peuvent interpréter
cette information directement – en la
traitant comme simplement un autre
attribut – donc, il faut convertir le XML
plat en XML hiérarchique à l’aide de
l’attribut ReportsToEmployeeID.
Les techniques récursives de XSLT
facilitent grandement la conversion. En
effet, XSLT offre de nombreux moyens,
d’efficacité variable, de convertir les
données. Le code que montre le listing
7 est un moyen possible, très court. Si
vous utilisez MS-XML 3.0 pour transformer
le XML de la figure 8 et le XSLT du
listing 7, vous obtenez la structure XML
que montre la figure 9 (quelque peu
mise en ordre par souci de clarté).
Le XSL a deux modèles. Le premier
correspond à tous les noeuds de niveau
supérieur (c’est-à -dire, tous les noeuds
dans lesquels ReportsToEmployeeID
est égal à EmployeeID). Le second modèle
évalue récursivement tous les
autres noeuds. Notez l’ajout des tags
XML est bien formé. Pour plus d’informations
sur XSLT, voir le livre XSLT
Quickly par Bob Ducharme (Manning,
2001).
Téléchargez cette ressource
Mac en entreprise : le levier d’un poste de travail moderne
Ce livre blanc répond aux 9 questions clés des entreprises sur l’intégration du Mac : sécurité, compatibilité, gestion, productivité, coûts, attractivité talents, RSE et IA, et l’accompagnement sur mesure proposé par inmac wstore.
Les articles les plus consultés
- Cybersécurité Active Directory et les attaques de nouvelle génération
- Et si les clients n’avaient plus le choix ?
- Afficher les icônes cachées dans la barre de notification
- N° 2 : Il faut supporter des langues multiples dans SharePoint Portal Server
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
Les plus consultés sur iTPro.fr
- Souveraineté des données : bâtir un stockage hybride adapté à l’ère de l’IA
- Secteur public : l’IA accélère la modernisation des infrastructures
- De l’inventaire à l’action : l’Asset Management au service d’un Numérique plus responsable
- IA et bureaucratie : la complexité qui grève les projets
Articles les + lus
Quand les « travailleurs numériques » pallient le manque de bras dans l’industrie
Model Context Protocol : le contexte, grand oublié du débat
Microsoft dévoile MAI-Thinking-1 : un modèle de raisonnement « enterprise-grade » en preview publique
Couchbase lance AI Data Plane pour industrialiser l’IA agentique
Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
À la une de la chaîne Tech
- Quand les « travailleurs numériques » pallient le manque de bras dans l’industrie
- Model Context Protocol : le contexte, grand oublié du débat
- Microsoft dévoile MAI-Thinking-1 : un modèle de raisonnement « enterprise-grade » en preview publique
- Couchbase lance AI Data Plane pour industrialiser l’IA agentique
- Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
