XMLSpy bevat een XQuery-debugger waarmee u uw XQuery-code kunt testen en optimaliseren. U kunt de XQuery-debugger in volledig scherm gebruiken bij het analyseren van de resultaten van grote, complexe XQuery-documenten tegen XML-databases op een server, maar u kunt de XQuery-debugger-venster wellicht prettiger vinden tijdens de ontwikkeling van kortere XQuery-expressies en -functies.
De gebruiksvriendelijke debugger beschikt over een interface met meerdere vensters die het XQuery-document, het bron-XML- of JSON-document (optioneel) en de huidige XQuery-processorcontext weergeven. Onder deze drie vensters bevinden zich informatievensters voor variabelen en de callstack, die meerdere tabbladen bevatten en alle benodigde debuginformatie leveren.
U kunt pauzepunten instellen op elke knoop in het instantiedocument en op elke expressie in het XQuery-document, zodat de debugger stopt telkens wanneer een specifieke knoop of instructie wordt benaderd. Dit versnelt debugsessies, omdat u niet elke regel handmatig hoeft door te lopen. U kunt ook een lijst met momenteel gedefinieerde pauzepunten bekijken en beheren via het handige dialoogvenster "XQuery-pauzepunten".
Wanneer u op het pictogram "Start debugger/Start" klikt, stopt de XQuery-processor bij het eerste breakpoint en toont de gedeeltelijke uitvoer die relevant is voor de context van de XQuery-processor op dat punt in het document. De debugger markeert de huidige knoop in het XML-bestand en de huidige instructie in het XQuery-document, en alle variabelen, XPath-waarden en call stack-gegevens die relevant zijn voor dat punt, worden weergegeven in de informatievensters van de debugger.
De mogelijkheid om de specifieke XML- of JSON-dataknoop, de XQuery-instructie en de gedeeltelijke uitvoer tegelijkertijd te zien, geeft u direct een visueel inzicht in de manier waarop uw XQuery-document de gegevens verwerkt. Terwijl de debugger geopend is, kunt u op elk moment wijzigingen aanbrengen in uw instantie- en/of XQuery-documenten met behulp van de intelligente bewerkingsfuncties van XMLSpy.
Het XPath/XQuery-debugvenster is onderdeel van het krachtige XPath/XQuery-tabblad onderaan de XMLSpy-interface. Het is ideaal voor het debuggen van kortere fragmenten XQuery-code, waardoor u direct en interactief feedback krijgt. Omdat de debugger zich in hetzelfde venster bevindt als de krachtige XQuery-editor, kunt u uw code debuggen terwijl u deze maakt, met behulp van functies zoals het bouwen van expressies met klikken en slepen, verbeterde invoerhulpmiddelen, kant-en-klare codefragmenten en andere tools die tijd besparen.
Tijdens het werken kunt u schakelen tussen een verticale of horizontale weergave van het venster, zodat de lengte van de XQuery-code die u gebruikt, goed weergegeven wordt.
Een andere manier om fouten op te sporen is het terugkoppelen van XQuery-code. Met de functie voor terugkoppeling in XMLSpy kunt u direct de oorspronkelijke XML/JSON-knopen en de XQuery-expressie zien, door simpelweg op een knoop in de XQuery-uitvoer te klikken.
Wanneer u op de knop "Back-mapping inschakelen" in de werkbalk klikt, worden XQuery-uitvoeringen uitgevoerd, zodat het resultaatdocument kan worden gekoppeld aan de oorspronkelijke XQuery+XML- of JSON-documenten. Wanneer u op een knooppunt in het resultaatdocument klikt, worden de XQuery-instructie en de brongegevens die dat specifieke resultaatknooppunt hebben gegenereerd, gemarkeerd, zodat u direct problemen kunt opsporen.
De functie voor het omzetten van XQuery-code bespaart ontwikkelaars aanzienlijk veel tijd bij het begrijpen en optimaliseren van de code. Bovendien wijzigt XMLSpy de uitvoercode helemaal niet om deze functie te realiseren.
Om de prestaties van code verder te analyseren, bevat XMLSpy de "XQuery-profieleringstool", die gedetailleerde statistieken verzamelt voor elke uitgevoerde verwerkingstap. Dit helpt u om snel knelpunten te identificeren en te verwijderen.
De XQuery-profieleringstool bevat opties om een transformatie te monitoren op basis van een call-diagram of het aantal keren dat een element wordt gebruikt. Wanneer u een XQuery-query in XMLSpy uitvoert, toont de XQuery-profieleringstool statistieken, waaronder het aantal keren dat een element wordt gebruikt, de duur en de duur van de onderliggende elementen. Door op een element in het profielvenster te klikken, wordt automatisch het bijbehorende XQuery-document geopend en wordt het element gemarkeerd, waardoor u met één klik knelpunten kunt opsporen.

