![Page 2: OXygen XML Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml.com](https://reader035.vdocument.in/reader035/viewer/2022081506/56649e885503460f94b8d191/html5/thumbnails/2.jpg)
Oxygen XML support for eXist DB
Database management (using Data Source Explorer View) Allows multiple eXist connections.
Collection management (add,delete, rename, move, dnd, properties)
Resource management (add, delete, rename, move, dnd, edit, properties)
WebDAV support (http://ipAddress:8080/exist/webdav/db/)
XQuery Editing support (outline view, content completion including eXist
extensions)
Validation support (done using eXist XQuery engine)
Execution support (transformation scenarios)
Debugging support (work in progress)
![Page 3: OXygen XML Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml.com](https://reader035.vdocument.in/reader035/viewer/2022081506/56649e885503460f94b8d191/html5/thumbnails/3.jpg)
What can be debugged?
Only local debugging is accepted (remote debugging will be available soon).
You can debug a XQuery file:
That is stored into a database collection: http://127.0.0.1:8080/exist/rest/db/xquery/json-test.xql
The user can select the Xquery file using Oxygen DataSource Explorer (a tree view of database content) .
That is stored in webapp/xquery folder: http://127.0.0.1:8080/xquery/fibo.xql
There is no easy way to select the XQuery file from webapp directory (the user should know exactly the file location)
![Page 4: OXygen XML Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml.com](https://reader035.vdocument.in/reader035/viewer/2022081506/56649e885503460f94b8d191/html5/thumbnails/4.jpg)
Debug XQuery in HTTP context
The common way to deploy an eXist database is in a servlet context.
The XQueryServlet or REST servlets reads XQuery scripts from the file system or database and execute them with the current HTTP context.
There could be complex interactions with an eXist application that could involve multipe XQuery scripts and various parameter passing (including the context parameters).
Users whould like to have the possibility to debug an XQuery with the current HTTP context.
The user should be able to put an XQuery script in debug mode and be able to interact with it when the script is called.
![Page 5: OXygen XML Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml.com](https://reader035.vdocument.in/reader035/viewer/2022081506/56649e885503460f94b8d191/html5/thumbnails/5.jpg)
XQuery debugging perspective
![Page 6: OXygen XML Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml.com](https://reader035.vdocument.in/reader035/viewer/2022081506/56649e885503460f94b8d191/html5/thumbnails/6.jpg)
Breakpoints view
Breakpoint types: Line, Conditional , Call, Return, Exception, Watch
![Page 7: OXygen XML Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml.com](https://reader035.vdocument.in/reader035/viewer/2022081506/56649e885503460f94b8d191/html5/thumbnails/7.jpg)
Variables view
Saxon Variables View
Saxon
eXist DB
![Page 8: OXygen XML Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml.com](https://reader035.vdocument.in/reader035/viewer/2022081506/56649e885503460f94b8d191/html5/thumbnails/8.jpg)
XWatch view
Saxon XWatch
view
eXist XWatch
view
Saxon
eXist DB
![Page 9: OXygen XML Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml.com](https://reader035.vdocument.in/reader035/viewer/2022081506/56649e885503460f94b8d191/html5/thumbnails/9.jpg)
XWatch
Sequence value representation with Saxon XQuery processor.
![Page 10: OXygen XML Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml.com](https://reader035.vdocument.in/reader035/viewer/2022081506/56649e885503460f94b8d191/html5/thumbnails/10.jpg)
XWatch view
Sequence value representation in eXist DB
![Page 11: OXygen XML Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml.com](https://reader035.vdocument.in/reader035/viewer/2022081506/56649e885503460f94b8d191/html5/thumbnails/11.jpg)
Stack View
Saxon Stack View
Exist Stack View
Saxon
eXist DB
![Page 12: OXygen XML Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml.com](https://reader035.vdocument.in/reader035/viewer/2022081506/56649e885503460f94b8d191/html5/thumbnails/12.jpg)
Output view
![Page 13: OXygen XML Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml.com](https://reader035.vdocument.in/reader035/viewer/2022081506/56649e885503460f94b8d191/html5/thumbnails/13.jpg)
XQuery Profiling Views
Saxon XQuery profiling
![Page 14: OXygen XML Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml.com](https://reader035.vdocument.in/reader035/viewer/2022081506/56649e885503460f94b8d191/html5/thumbnails/14.jpg)
Demo
![Page 15: OXygen XML Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml.com](https://reader035.vdocument.in/reader035/viewer/2022081506/56649e885503460f94b8d191/html5/thumbnails/15.jpg)
Further directions
Finalize the features set (that could probably trigger some eXist debugging API changes).
We need a stable eXist debugging API. There is still work to be done for integration. We need to wait for eXist main release (1.5,1.6?) that
will include eXist debugging API. We need to wait for the following oXygen release after
eXist main release (probably version 13).
![Page 16: OXygen XML Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml.com](https://reader035.vdocument.in/reader035/viewer/2022081506/56649e885503460f94b8d191/html5/thumbnails/16.jpg)
Q&A
Send questions to:
Oxygen XML support - [email protected]
Stefan Vasile - [email protected]
Thank You