Partager via


Transformation fonctionnelle de XML (LINQ to XML)

Cet article décrit l’approche de transformation fonctionnelle pure pour modifier des documents XML et la contraste avec une approche procédurale.

Modification d’un document XML

L'une des tâches les plus courantes pour un programmeur XML consiste à transformer du code XML d'une forme en une autre. La forme d'un document XML est la structure du document, qui inclut les éléments suivants :

  • la hiérarchie exprimée par le document ;
  • les noms des éléments et des attributs ;
  • les types de données des éléments et attributs.

En général, l'approche la plus efficace pour transformer du code XML d'une forme en une autre consiste à utiliser la transformation fonctionnelle pure. Avec cette approche, la principale tâche du programmeur est de créer une transformation qui est appliquée à l'ensemble du document XML (ou à un ou plusieurs nœuds strictement définis). La transformation fonctionnelle offre sans aucun doute la plus grande facilité de codage (une fois que le programmeur s'est familiarisé avec cette approche) et la plus grande facilité de maintenance du code, et elle est souvent plus compacte que les autres approches.

Technologies de transformation fonctionnelle XML

Microsoft propose deux technologies de transformation fonctionnelle pour une utilisation sur des documents XML : XSLT et LINQ to XML. XSLT est pris en charge dans l'espace de noms managé System.Xml.Xsl et dans l'implémentation COM native de MSXML. Bien que XSLT soit une technologie robuste pour la manipulation de documents XML, elle requiert un savoir-faire dans un domaine spécialisé, à savoir le langage XSLT et ses API de prise en charge.

LINQ to XML procure les outils nécessaires pour coder des transformations fonctionnelles pures de manière expressive et puissante, dans du code C# ou Visual Basic. Par exemple, bon nombre des exemples dans la documentation LINQ to XML utilisent une approche fonctionnelle pure. En outre, dans le Tutoriel : Manipulation de contenu dans un document WordprocessingML, nous utilisons LINQ to XML dans une approche fonctionnelle pour manipuler des informations dans un document Microsoft Word.

Pour une comparaison plus complète de LINQ to XML avec d’autres technologies Microsoft XML, consultez LINQ to XML et d’autres technologies XML.

XSLT est l’outil recommandé pour les transformations centrées sur les documents lorsque le document source a une structure irrégulière. Toutefois, LINQ to XML peut également effectuer des transformations centrées sur les documents. Pour plus d’informations, consultez Comment utiliser des annotations pour transformer des arborescences LINQ to XML dans un style XSLT.

Voir aussi