Debugger per XQuery

Testare e correggere espressioni XQuery

  • Testare documenti complessi in modalità a schermo intero
  • Finestra di debug per testare espressioni/funzioni
  • Supporto per XQuery 1.0 e 3.1 con consapevolezza dello schema
  • Esecuzione sequenziale di nodi e istruzioni
  • Fasi di valutazione: ingresso, uscita e superamento
  • Supporto per i punti di interruzione e i punti di tracciamento
  • Finestre informative sulle variabili e sullo stack di chiamate
  • Costruttore e strumento di test per XQuery
  • Debuggare l'esecuzione di query XQuery su dati XML o JSON
  • Mappatura inversa di XQuery
  • Profilatore XQuery

Debugger per XQuery

Debuggare il codice XQuery

XMLSpy include un debugger per XQuery, che consente di testare e perfezionare il codice XQuery. È possibile utilizzare il debugger XQuery a schermo intero per analizzare i risultati di documenti XQuery complessi e di grandi dimensioni, confrontandoli con database XML su un server, ma durante lo sviluppo di espressioni e funzioni XQuery più brevi, potrebbe essere preferibile utilizzare la finestra del debugger XQuery.

Il debugger, di facile utilizzo, include un'interfaccia a più pannelli che visualizza il documento XQuery, il documento XML o JSON di origine (opzionale) e il contesto corrente del processore XQuery. Sotto questi tre pannelli, le finestre "Variabili" e "Stack di chiamate" contengono diverse schede che forniscono tutte le informazioni necessarie per il debug.

È possibile impostare punti di interruzione su qualsiasi nodo nel documento dell'istanza e su qualsiasi espressione nel documento XQuery, in modo che il debugger si interrompa ogni volta che un determinato nodo o istruzione viene acceduto. Questo velocizza le sessioni di debug, poiché non è necessario esaminare manualmente ogni singola istruzione. È inoltre possibile visualizzare e gestire un elenco dei punti di interruzione attualmente definiti tramite la comoda finestra di dialogo "Punti di interruzione XQuery".

Quando si fa clic sull'icona "Avvia debugger/Esegui", l'elaboratore XQuery si ferma al primo punto di interruzione e visualizza l'output parziale relativo al contesto dell'elaboratore XQuery in quel punto del documento. Il debugger evidenzia il nodo corrente nel file XML e l'istruzione corrente nel documento XQuery, e tutte le variabili, i valori di "xpath-watch" e i dati dello stack di chiamate pertinenti a quel punto vengono visualizzati nelle finestre informative del debugger.

La possibilità di visualizzare contemporaneamente il nodo dati XML o JSON specifico, l'istruzione XQuery e l'output parziale, offre una comprensione immediata e visiva del modo in cui il documento XQuery elabora i dati. Mentre il debugger è attivo, è possibile apportare modifiche ai documenti XML o XQuery in qualsiasi momento, grazie alle funzionalità di editing avanzate di XMLSpy.

Finestra XQuery

Il debugger XQuery in XMLSpy

La finestra del debugger XPath/XQuery fa parte della potente scheda XPath/XQuery situata nella parte inferiore dell'interfaccia di XMLSpy. È ideale per il debug di brevi frammenti di codice XQuery, offrendo un feedback immediato e interattivo. Poiché il debugger si trova nella stessa finestra del potente editor XQuery, è possibile eseguire il debug del codice mentre lo si crea, utilizzando strumenti intuitivi per la creazione di espressioni, funzionalità avanzate di supporto all'inserimento, frammenti di codice pronti all'uso e altri strumenti che fanno risparmiare tempo.

Mentre lavorate, potete passare da una disposizione verticale a una orizzontale della finestra per adattarla alla lunghezza del codice XQuery che state visualizzando.

Mappatura inversa di XQuery

Un altro approccio per il debug è.. Mappatura inversa di XQueryIn XMLSpy, la funzione di "ricostruzione a ritroso" consente di visualizzare istantaneamente il nodo XML/JSON di origine e l'espressione XQuery, semplicemente facendo clic su un nodo nell'output XQuery.

Quando si clicca sul pulsante "Abilita la mappatura inversa" nella barra degli strumenti, verranno eseguite delle operazioni XQuery in modo che il documento risultante possa essere mappato nuovamente sui documenti XQuery+XML o JSON di origine. Quando si clicca su un nodo nel documento risultante, l'istruzione XQuery e i dati di origine che hanno generato quel particolare nodo verranno evidenziati, per facilitare il debug immediato.

La funzionalità di "back-mapping" di XQuery consente agli sviluppatori di risparmiare una notevole quantità di tempo nella comprensione e nell'ottimizzazione del codice. Inoltre, XMLSpy non modifica in alcun modo il codice di output per realizzare questa funzionalità di "back-mapping".

Ecco come funziona il processo di "back-mapping" in XQuery

Profilatore XQuery

Per analizzare ulteriormente le prestazioni del codice, XMLSpy include il componente XQuery Profiler, che monitora e registra metriche dettagliate per ogni istruzione di elaborazione eseguita, aiutandovi a identificare e risolvere rapidamente i colli di bottiglia.

Il profiler di XQuery include opzioni per monitorare una trasformazione basata sul grafo delle chiamate o sul numero di esecuzioni. Quando si esegue una query XQuery in XMLSpy, il profiler di XQuery visualizza metriche che includono il numero di esecuzioni, la durata e la durata dei nodi discendenti. Cliccando su qualsiasi elemento elencato nella finestra del profiler, si apre automaticamente il documento XQuery associato e l'elemento viene evidenziato, facilitando l'individuazione dei colli di bottiglia con un semplice clic.

Ulteriori strumenti per XQuery