16
oXygen XML Editor Support for eXist DB XQuery debugging. Stefan Vasile [email protected]

oX ygen XML Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml

Embed Size (px)

DESCRIPTION

oX ygen XML Editor Support for eXist DB XQuery debugging. Stefan Vasile [email protected]. 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) - PowerPoint PPT Presentation

Citation preview

Page 1: oX ygen XML  Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml

oXygen XML Editor

Support for eXist DB XQuery debugging.

Stefan [email protected]

Page 2: oX ygen XML  Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml

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: oX ygen XML  Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml

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: oX ygen XML  Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml

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: oX ygen XML  Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml

XQuery debugging perspective

Page 6: oX ygen XML  Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml

Breakpoints view

Breakpoint types: Line, Conditional , Call, Return, Exception, Watch

Page 7: oX ygen XML  Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml

Variables view

Saxon Variables View

Saxon

eXist DB

Page 8: oX ygen XML  Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml

XWatch view

Saxon XWatch

view

eXist XWatch

view

Saxon

eXist DB

Page 9: oX ygen XML  Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml

XWatch

Sequence value representation with Saxon XQuery processor.

Page 10: oX ygen XML  Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml

XWatch view

Sequence value representation in eXist DB

Page 11: oX ygen XML  Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml

Stack View

Saxon Stack View

Exist Stack View

Saxon

eXist DB

Page 12: oX ygen XML  Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml

Output view

Page 13: oX ygen XML  Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml

XQuery Profiling Views

Saxon XQuery profiling

Page 14: oX ygen XML  Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml

Demo

Page 15: oX ygen XML  Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml

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: oX ygen XML  Editor Support for eXist DB XQuery debugging. Stefan Vasile stefan@oxygenxml

Q&A

Send questions to:

Oxygen XML support - [email protected]

Stefan Vasile - [email protected]

Thank You