This tutorial shows you, step by step, how to configure the eXist support in <oXygen/> XML Editor, browse and edit resources, as well as running XQuery interrogations.
The tutorial assumes that you have a basic knowledge of databases, XML technologies and of <oXygen/> XML Editor tool. The explanations and screen shots are given for the standalone version of <oXygen/> XML Editor. However the same set of features are available in Eclipse plugin version of the product with minor interface differences.
There are two notions you need to understand in order to configure the eXist support in <oXygen/>: the data source and the connection.
1. A data source defines all that is needed in order to have a connection to the database.
Go to <oXygen/>'s Preferences->Data Sources and press the New button in order to add a new data source. Insert a data source name (make sure that each data source has an unique name) and select the eXist type from driver type combo box.
These files are found in your eXist installation directory.
More information about configuring a eXist datasource can be found in the user manual: http://www.oxygenxml.com/doc/ug-editor/tasks/configure-exist-datasource.html#configure-exist-datasource
2. Once you have created the data source you may proceed further by defining one or more connection based on it. The connections can be configured on the same Preferences->Data Source page.
Start by choosing a unique connection name and set the Data Source combo box to the already configured eXist data source. To access eXist from <oXygen/> uses the XML:DB API. The XML:DB API uses a specific URI scheme to locate a collection of XML resources on the server. This URI identifies the database implementation, the name of the connection and the location of the eXist server on the network. Enter this URI in the XML DB URI field. In the Collection field you can specify the default collection that will be used for the xquery collection() function. If you have correctly specified the previous fields you can choose the default collection by using the Select button. Pressing the Select button displays the existing collections on the server.
Sometimes you need to work with two database servers (for example a development sever and a production server) so it makes sense to define a connection on each database server to be further used when executing XQuery or browsing/editing the database resources. If the two database servers have the same version you only need to configure a data source and add two connections for it.
Once we finished the configuration of the connection we are able to browse the database content using the Datasource Explorer view from the Database perspective.
eXist supports XQuery interrogations over the stored XML content (for example you can create an XQuery to generate a report with the billing contact data from the latest purchase notifications). You can open an XQuery editor (New->XQuery), configure the transformation scenario to match the eXist connection for the transformer field, write the XQuery and then execute it.
You can configure eXist as main validator for XQuery files. For that you must go to Preferences->XML->XSLT/FO/XQuery->XQuery and set eXist for XQuery validation. Additionally you can set the other options. You will now benefit of the automatic validation feature and you can use Validate button to get a list of validation errors.
Alternatively you can use the Validation scenario support which is described here
Collection/resource management can also be done using WebDAV (see http://demo.exist-db.org/exist/webdav.xml#N101F3 , oxygenXML section)