XQuery Development Tools/Where to Start

What is the "Where to Start" page?

This page gathers a list of features of XQDT and the place in the project where this feature is implemented or where the developer should first look and start understanding and debugging the functionality.

Feature table

NOTE: For all the classes below we have omitted the fully qualified name to keep the descriptions shorter. For example, XQDTInterpreterInstallType refers to org.eclipse.wst.xquery.launching.XQDTInterpreterInstallType. Eclipse helps you find these types with the "Open Type" dialog (available under the "Navigate" menu or by pressing the key combination: Ctrl-Shift-T). In case you find more classes having the same name (though not the case so far), just choose the one from our project, that is, having a package name starting with: org.eclipse.wst.xquery.

XQDT features

Feature name

Feature description

Plug-ins involved

Need to implement

Sample implementation

New XQuery Processor Type

A new XQuery processor type (called "interpreter" in DLTK terms) allows you to define you own logic for:

execution environment (local, like in Zorba or Saxon; or remote, like MarkLogic Server)

processor validation (e.g. only allow executables called zorba.exe to be added as the Zorba processor type)

add the org.eclipse.dltk.launching.interpreterInstallTypes extension point in your_own_plugin and provide a reference to your implementation of XQDTInterpreterInstallType

the org.eclipse.wst.xquery.launching.zorba plug-in

ZorbaInstallType

ZorbaInstall

the org.eclipse.wst.xquery.launching plug-in

XQDTJavaInterpreterInstallType

XQDTJavaInterpreterInstall

Semantic Checker

After the syntax check is complete without errors, a particular XQuery processor is allowed to report other errors in the XQuery code. E.g. function not available, namespace not declared, variable not defined, or even more complex problems that a particular processor may detect.

org.eclipse.wst.xquery.core

org.eclipse.wst.xquery.launching

ISemanticValidator

AbstractLocalInterpreterSemanticValidator

your IInterpreterInstall needs to implement ISemanticValidatingInterpreterInstall and provide an instance of your ISemanticValidator