---
title: "Gebruik XPath-expressies om de gegevensselectie te verfijnen"
date: "2013-09-12"
categories: 
  - "data-integration"
  - "xpath"
tags: 
  - "altova-xmlspy"
  - "mapforce"
  - "stylevision"
  - "xml-schema"
  - "xmlspy"
  - "xpath"
description: Ontdek hoe u XPath-expressies effectief kunt gebruiken voor een precieze selectie van gegevens in XML-documenten, met behulp van tools zoals XMLSpy, MapForce en StyleVision.
---
Status: #blog

Tags:  #altova-xmlspy #mapforce #stylevision #xml-schema #xmlspy #xpath

Categories: [data-integration](/blog/nl/category/data-integration.md) | [xpath+xquery](/blog/nl/category/xpathxquery.md)
# Gebruik XPath-expressies om de gegevensselectie te verfijnen

In dit tijdperk van grote hoeveelheden data is het vaak nodig om analyses en communicatie te vereenvoudigen door aangepaste weergaven te creëren van specifieke delen van een groter bestand. [XPath](https://www.altova.com/nl/solutions/xpath.html), een afkorting voor XML Path Language, is ontworpen om gebruikers in staat te stellen specifieke onderdelen van grote XML-documenten te benaderen. [XMLSpy](https://www.altova.com/nl/xmlspy.html) ondersteunt XPath met een XPath-analysevenster en in de interface voor het visualiseren van XML-gegevens. [MapForce](https://www.altova.com/nl/mapforce.html) ondersteunt XPath-functies voor het omzetten van XML-gegevens, en [StyleVision](https://www.altova.com/nl/stylevision.html) ondersteunt XPath in voorwaardelijke templates, extensietemplates en template-filtering.

[![gezichten-laptop](/blog/images/faces-laptop.jpg)](faces-laptop.jpg)

<!--more-->

De Altova-tools gebruiken waar mogelijk dezelfde gebruikersinterface, waardoor vaardigheden die in één tool zijn opgedaan, gemakkelijk toepasbaar zijn in andere tools. We hebben eerder al een blogpost geschreven over [automatische berekeningen met XPath in StyleVision](https://www.altova.com/blog/2012/04/xpath-enhances-xml-reports.html), dus laten we eens een ander voorbeeld bekijken.

Vaak bevat een grote dataset een aantal afzonderlijke tabellen, zoals dit voorbeeld van informatie over de arbeidsmarkt van recent afgestudeerden, afkomstig van het Amerikaanse Ministerie van Onderwijs, dat hier wordt weergegeven als een CSV-bestand:

![CSV-weergave van gegevens over de arbeidsmarkt voor afgestudeerden van hogescholen](https://lh6.ggpht.com/-aeLkzdD4tbU/Ui4gx-TsrpI/AAAAAAAABRw/0uEPSuijaW8/image%25255B2%25255D.png?imgmax=800 "CSV view of employment data for college graduates")

Elke tabel beschrijft een specifieke arbeidsstatistiek voor afgestudeerden met verschillende studierichtingen en in verschillende jaargangen.

Een XML-schema om de data te beschrijven, zou er in XMLSpy Schema View bijvoorbeeld zo uit kunnen zien: elk afzonderlijke tabel wordt beschreven in het element <set>, en het uitklappen van het element <row> zou aanvullende subelementen weergeven voor elke studierichting of vakgebied.

![XMLSpy-schemaweergave](https://lh3.ggpht.com/-d_0HFon1IzY/Ui4gyFoMi1I/AAAAAAAABR0/LcXgUVXBezQ/image%25255B5%25255D.png?imgmax=800 "XMLSpy Schema view")

Een eenvoudige data-mapping in MapForce, waarbij de gegevens van het CSV-bestand worden omgezet naar een XML-schema, zet de gegevens om naar XML-formaat, dat we vervolgens kunnen openen in XMLSpy

![Een weergave van een deel van de data in XMLSpy, waarbij de tekst wordt weergegeven](https://lh6.ggpht.com/-WsWwQyP2pUw/Ui4gyphhlHI/AAAAAAAABSA/Ta4HHQlEnls/image%25255B8%25255D.png?imgmax=800 "XMLSpy text view of a portion of the data")

Als we een grafiek willen maken voor een van de diagrammen, is het het gemakkelijkst om te beginnen vanuit de XMLSpy-weergave in tabelvorm. Daar kunnen we een sub-tabel selecteren en vervolgens, via het contextmenu dat verschijnt wanneer we met de rechtermuisknop klikken, de optie "Nieuw diagram" kiezen

![XMLSpy: Weergave van de XML-gegevens in een tabel](https://lh5.ggpht.com/-jvRELkv-RVA/Ui4gzJRqC1I/AAAAAAAABSI/9Dd2txJYtJU/image%25255B11%25255D.png?imgmax=800 "XMLSpy Grid View of the XML data")

In het dialoogvenster "Gegevensselectie" dat vervolgens verschijnt, genereert XMLSpy automatisch een XPath-expressie die de geselecteerde gegevens beschrijft:

![Dialoogvenster voor het selecteren van grafiekgegevens in XMLSpy](https://lh6.ggpht.com/-4kRmhk_bfIg/Ui4gzkYpquI/AAAAAAAABSM/Jf8xVph3Gsg/image%25255B14%25255D.png?imgmax=800 "XMLSpy Chart Data Selection dialog")

Het bijbehorende lijndiagram ziet er als volgt uit:

![XMLSpy-grafiek van de gegevens die geselecteerd zijn in de weergave in tabelvorm](https://lh5.ggpht.com/-v1E5tr1BolU/Ui4gz4cHZ2I/AAAAAAAABSU/crPjFcYAGBw/image%25255B17%25255D.png?imgmax=800 "XMLSpy chart of the data selected in Grid View")

Om een andere tabel weer te geven, kunnen we teruggaan naar de gegevens en handmatig een andere set selecteren, of we kunnen eenvoudig de XPath-expressie aanpassen. De oorspronkelijke expressie in het gegevensselectievenster was: /data/set[3]/row

We kunnen het getal 3 wijzigen om een andere set te selecteren, of we kunnen gebruikmaken van het attribuut "setnum" om een tabel te selecteren op basis van de inhoud, in plaats van de volgorde in het bestand. Dit is een betere manier om expliciet één tabel te kiezen, voor het geval de gegevens later veranderen. Bijvoorbeeld, in een toekomstige versie zou een tabel over parttime werk in de tweede positie kunnen worden ingevoegd, waardoor de volgordenummering van alle volgende tabellen verandert.

Een XPath-expressie die gegevens selecteert door gebruik te maken van het attribuut "setnum" om een grafiek weer te geven van het percentage afgestudeerden dat werkzaam is in een vakgebied dat nauw verwant is aan hun studie, ziet er als volgt uit: ![Het bewerken van de XPath-expressie in het dialoogvenster voor het selecteren van grafiekgegevens]

(https://lh3.ggpht.com/-79L2DcOC2qQ/Ui4g0MGs4mI/AAAAAAAABSg/WrX4KY8qlaE/image%25255B20%25255D.png?imgmax=800 "Het bewerken van de XPath-expressie in het dialoogvenster voor het selecteren van grafiekgegevens")

De bijbehorende grafiek, die het percentage werknemers weergeeft dat werkzaam is in functies die nauw verwant zijn aan hun studiegebied, ziet er als volgt uit:

![XMLSpy-lijndiagram voor afgestudeerden die werkzaam zijn in een vakgebied dat aansluit bij hun studie](https://lh4.ggpht.com/-UFPLM1hf7yg/Ui4g0ikH27I/AAAAAAAABSo/nLKFSjlitYg/image%25255B23%25255D.png?imgmax=800 "XMLSpy line chart for graduates employed close to their fields of study")

Als u tijdens het ontwikkelen van een XPath-expressie verschillende opties wilt uitproberen, is het XPath-analysevenster een handig hulpmiddel. Het XPath-analysevenster controleert de syntaxis terwijl u typt en toont een voorbeeld van het resultaat:

![XMLSpy-venster voor XPath-analyse](https://lh3.ggpht.com/-PqfeXYaADD8/Ui4g01aF9gI/AAAAAAAABSs/HGhCgbfKsdM/image%25255B26%25255D.png?imgmax=800 "XMLSpy XPath Analyzer window")

De volgende stap is om de grafieken en de XPath-selectie-expressies die in XMLSpy zijn ontwikkeld, te gebruiken in StyleVision om een stylesheet te maken voor het genereren van rapporten. We zullen dit specifieke onderwerp in een toekomstige publicatie verder behandelen.

**In de tussentijd kunt u** [**hier klikken om een gratis proefversie van Altova MissionKit te downloaden](https://www.altova.com/nl/download-trial.html)**, inclusief XMLSpy, MapForce en StyleVision, en zelf aan de slag gaan!**
