Functionele transformatie van XML (LINQ naar XML)

In dit artikel wordt de pure functionele transformatiebenadering besproken voor het wijzigen van XML-documenten en wordt deze gecontrast met een procedurele benadering.

Een XML-document wijzigen

Een van de meest voorkomende taken voor een XML-programmeur is het transformeren van XML van de ene shape naar de andere. De vorm van een XML-document is de structuur van het document, waaronder het volgende:

  • De hiërarchie uitgedrukt door het document.
  • Het element en de kenmerknamen.
  • De gegevenstypen van de elementen en kenmerken.

Over het algemeen is de meest effectieve benadering voor het transformeren van XML van de ene shape naar de andere dat van pure functionele transformatie. In deze benadering is de primaire programmeurtaak het maken van een transformatie die wordt toegepast op het hele XML-document (of op een of meer strikt gedefinieerde knooppunten). Functionele transformatie is wellicht de eenvoudigste code (nadat een programmeur bekend is met de aanpak), levert de meest onderhoudbare code op en is vaak compacter dan alternatieve benaderingen.

Functionele XML-transformatietechnologieën

Microsoft biedt twee functionele transformatietechnologieën voor gebruik in XML-documenten: XSLT en LINQ naar XML. XSLT wordt ondersteund in de System.Xml.Xsl beheerde naamruimte en in de systeemeigen COM-implementatie van MSXML. Hoewel XSLT een robuuste technologie is voor het bewerken van XML-documenten, is expertise in een gespecialiseerd domein vereist, namelijk de XSLT-taal en de ondersteunende API's.

LINQ naar XML biedt de hulpprogramma's die nodig zijn voor het coden van pure functionele transformaties op een expressieve en krachtige manier, binnen C# of Visual Basic-code. Veel voorbeelden in de LINQ naar XML-documentatie maken bijvoorbeeld gebruik van een pure functionele benadering. In de zelfstudie: Inhoud bewerken in een wordprocessingML-documentzelfstudie gebruiken we LINQ voor XML in een functionele benadering om informatie in een Microsoft Word-document te bewerken.

Zie LINQ naar XML en andere XML-technologieën voor een volledigere vergelijking van LINQ naar XML met andere Microsoft XML-technologieën.

XSLT is het aanbevolen hulpmiddel voor documentgerichte transformaties wanneer het brondocument een onregelmatige structuur heeft. LINQ naar XML kan echter ook documentgerichte transformaties uitvoeren. Zie Aantekeningen gebruiken om LINQ te transformeren naar XML-structuren in een XSLT-stijl voor meer informatie.

Zie ook