Changes

Jump to navigation Jump to search
5,080 bytes added ,  12:51, 2 July 2020
m
Text replacement - "[http://basex.org/" to "[https://basex.org/"
This article is part of the [[Getting Started]] Section. It describes how to run XPath/XQuery code from within the [https://www.jetbrains.com/idea IntelliJ IDEA IDE]. There are currently two XQuery plugins for IntelliJ IDEA on the market:
* The [https://plugins.jetbrains.com/plugin/9757-xquery-support--marklogic-debugger XQuery Support + MarkLogic Debugger] plugin by Grzegorz Ligas.
* The [https://plugins.jetbrains.com/plugin/8612-xquery-intellij-plugin xquery-intellij-plugin] by Reece H. Dunn.
* The [https://plugins.jetbrains.com/plugin/7262-xquery-support XQuery Support] plugin by Grzegorz Ligas.
* Both plugins offer support for XQuery 3.1 and can be run as a client or standalone instance. Please note that the two plugins are mutually exclusive and cannot be activated at the same time in IntelliJ.
* '''Note:''' BaseX itself is a highly compliant XQuery 3.1 processor. We strongly encourage you to use the [[Graphical_User_Interface#Text_Editor|XML editor]] integrated into the BaseX GUI to edit and query your XML data!<br/><br/>
=Preparations=
The following steps apply to all operating systemsand both plugins:
* Install either version of IntelliJ IDEA: [https://www.jetbrains.com/idea/#chooseYourEdition the Community or Ultimate edition].
* Download your favorite [httphttps://basex.org/download BaseX distribution] (JAR, ZIP, EXE).
* Start BaseX (see [[Startup]]).
* Create a BaseX database (see [[Databases]]).
=XQuery Support + MarkLogic Debuggerxquery-intellij-plugin=
This section focuses on Grzegorz LigasReece H. Dunn' s [https://plugins.jetbrains.com/plugin/97578612-xquery-intellij-plugin xquery-intellij-plugin]. ==Installation== After installing IntelliJ IDEA and BaseX, install the xquery-intellij-plugin by one of the following methods: '''From the Start Screen''' [[File:intellij-startbildschirm.png]] * Start IntelliJ IDEA and select ''Configure''→''Plugins''.* In the Plugins window, select the tab ''Marketplace''.* Type "XQuery" into the ''Search plugins in marketplace'' field.* Click the ''Install'' button below ''xquery-intellij-plugin''.* You will be prompted to restart IDEA to load the new plugin. '''From the IntelliJ IDEA Menu'''* Select ''Settings'' (Windows)/''Preferences'' (macOS) in the ''IntelliJ IDEA'' menu.* In the Settings/Preferences window, select ''Plugins''.* In the Plugins window, select the tab ''Marketplace''.* Type "XQuery" into the ''Search plugins in marketplace'' field.* Click the ''Install'' button below ''xquery-intellij-plugin'' plugin.* You will be prompted to restart IDEA to load the new plugin. ==Configuring The Processor==* Start IntelliJ IDEA and navigate to ''Settings'' (Windows)/''Preferences'' (macOS) either using the ''Configure'' button from the start screen or the ''IntelliJ IDEA'' menu.* In the Settings/Preferences window, expand the ''Languages & Frameworks'' item and select ''XQuery''.* Make the choices for your system from the dropdown boxes, e.g.:** <code>Implementation = BaseX</code>** <code>Implementation version = BaseX 9.1</code>** <code>Default XQuery version = XQuery 3.1</code>** <code>Dialect for XQuery 3.0 = BaseX</code>** <code>Dialect for XQuery 3.1 = BaseX</code>[[File:Intellij-xquery-settings-2.png‎]]* Click ''Apply'' to store your XQuery settings and then ''OK'' to exit the dialog. ==Querying Your Data== '''Create a New Project'''* To create a new project choose the ''Create new project'' option from the start screen or select ''New''→''Project...'' from the ''File'' menu.* In the ''New Project'' dialog, choose ''Empty Project'' from the left-hand column and click the ''Next'' button.* Enter a name and location for your project and click on the ''Finish'' button. '''Customize the XQuery Module'''* Click the ''Add Configuration'' button below the IntelliJ IDEA menu bar.[[File:Intellij-add-configuration.png]]* In the ''Run/Debug Configurations'' dialog, expand the Templates list and choose the ''XQuery'' entry.* Click on the three dots {{Code|...}} next to the ''Query Processor'' dropdown box.* In the ''Manage Query Processors'' dialog, click on the {{Code|+}} button.* In the ''New Query Processor Instance'' dialog, set the following preferences:** <code>Description = BaseX</code> (optional; if you leave this field blank, <code>[Implementation] [Version]</code> will be used as description)** <code>Implementation = BaseX</code> (should be preset!)** <code>JAR File = BaseX.jar</code> (name and location of the JAR file may differ depending on your BaseX distribution and version)** <code>Hostname = localhost</code>** <code>Database port = 1984</code>** <code>Username = admin</code>** <code>Password = admin</code>** If you tick the check box ''Create a standalone instance'', the fields ''Hostname'', ''Database port'', ''Username'', and ''Password'' remain empty.[[File:Intellij-new-query-processor.png]]* Click ''OK'' to exit the ''New Query Processor Instance'' dialog.* In the ''Manage Query Processors'' dialog, now choose the "BaseX [''Version''] (BaseX)" entry and click ''OK''.* The ''Query Processor'' dropdown box in the ''Run/Debug Configurations'' dialog should now also display "BaseX [''Version''] (BaseX)". If not, select it from the dropdown box.* Click ''Apply'' and then ''OK'' to close the ''Run/Debug Configurations'' dialog. '''Create a Query File'''* In the project view, create a new XQuery file, either by right-clicking on the project name and choosing ''New''→''File'' or by selecting ''New''→''File'' from the File menu. Enter a file name and click ''OK''.* Type in your query, e.g. <code>db:open("factbook")</code>, and save your file. '''Create a New Configuration'''* Click on the ''Add Configuration'' button once again.* In the ''Run/Debug Configurations'' dialog, click the {{Code|+}} button to create a new configuration based on a template.* Choose the "XQuery" template you configured earlier.* Enter a name, e.g. "BaseX", into the ''Name'' field.* The query processor should be preset to "BaseX [''Version''] (BaseX)".* In the ''Run the query from'' area, either enter the path to your query file into the ''Local file'' field to limit the run configuration to that query or choose the ''Active editor file'' option to make the configuration run the script that is currently opened in the IntelliJ editor panel.[[File:Intellij-xquery-configuration.png]]* Click ''Apply'' and then ''OK'' to close the ''Run/Debug Configurations'' dialog.* Now, the configuration should be set and the green ''Run'' button should be available below the IntelliJ IDEA menu bar.[[File:Intellij-run-button.png]] '''Execute Your Query'''* If the configuration does not run as a standalone instance, make sure that BaseX is up and running.* Click the ''Run'' button to execute your query. ==Conclusion== The plugin is very well maintained! It adds supportfor various XQuery Implementations to the IntelliJ IDEA (among them BaseX). It provides syntax highlighting for XQuery and XML, code completion and detects syntactical errors while you type offering a description for each error. Queries are executed using Run Configurations for which you can configure various query processors, e.g. BaseX. BaseX's admin log can be accessed and displayed using the '''Query Log''' button on the bottom left corner of the IntelliJ IDEA project window. The plugin contains some minor flaws regarding the use of functions declared in user-defined modules. Such functions are not included in the code completion list and marked as unknown in the code. However, query execution in the BaseX backend works fine nonetheless. =XQuery Support Plugin= This section focuses on Grzegorz Ligas' [https://plugins.jetbrains.com/plugin/7262-marklogicxquery-debugger support XQuery Support plugin].
==Installation==
After installing IntelliJ IDEA and BaseX, install the XQuery Support plugin by one of the following methods:
===From the Start Screen===
[[File:intellij-startbildschirm.png]]'''From the Start Screen'''
* Start IntelliJ IDEA and select ''Configure''→''Plugins''.
* In the ''Plugins '' window , select the tab ''Marketplace''.* Type "XQuery Support" into the ''Search plugins in marketplace'' fieldand press Enter.* Click the ''Install'' button below the ''XQuery Support + MarkLogic Debugger'' pluginor click on the ''XQuery Support'' link to get more information on the plugin before installing it.
* You will be prompted to restart IDEA to load the new plugin.
==='''From the IntelliJ IDEA Menu==='''* Select ''Settings'' (Windows)/''Preferences'' in (macOS) from the ''IntelliJ IDEA'' menu.* In the Settings/Preferences window , select ''Plugins''.* In the ''Plugins window '' panel, select the tab ''Marketplace''.* Type "XQuery Support" into the ''Search plugins in marketplace'' fieldand press Enter.* Click the ''Install'' button below the ''XQuery Support + MarkLogic Debugger'' pluginor click on the ''XQuery Support'' link to get more information on the plugin before installing it.
* You will be prompted to restart IDEA to load the new plugin.
==Setting Up==
==='''File Extensions and XQuery Flavor==='''* Start IntelliJ IDEA and navigate to ''Settings'' (Windows)/''Preferences'' (macOS) either using the ''Configure'' button from on the start screen or the ''IntelliJ IDEA'' menu.* In the Settings/Preferences window, expand the ''Languages & Frameworks'' item, select ''XQuery'' and choose which default file extensions ans and which XQuery flavor you would like to use.
* Click ''Apply'' to store your XQuery settings.
===Standalone===
* In the ''Settings'' (Windows)/''Preferences '' (macOS) window, expand the ''Languages & Frameworks'' item and select ''XQuery Data Sources''.* Click on the {{Code|+}} button in the middle column, to add a new data source.
* Select ''BaseX (native embedded)'' from the dropdown box.
* In the right-hand column, check the ''User defined XQJ Driver'' check box.
* Use the {{Code|+}} button below the check box to add the following {{code|jars}} from your BaseX distribution:
** {{Code|basex/BaseX.jar}}
** {{Code|basex/lib/basex-apj-9.1.12.jar}}
** {{Code|basex/lib/basex-xqj-9.0.jar}}
** {{Code|basex/lib/xqj2-0.2.0.jar}}
===Client===
This assumes that you already have a BaseX database named {{code|factbook}}.
* In the ''Settings'' (Windows)/''Preferences '' (macOS) window, expand the ''Languages & Frameworks'' item and select ''XQuery Data Sources''.* Click on the {{Code|+}} button in the middle column, to add a new data source.
* Select ''BaseX'' from the dropdown box.
* In the right-hand column, fill in the appropriate connection details; , e.g. default values:
** <code>Host = localhost</code>
** <code>Port = 1984</code>
==Querying Your Data==
* To create a new project, choose the ''Create new project'' option from the start screen or select ''New''→''Project...'' from the ''File'' menu.
* In the ''New Project'' dialog choose ''Empty Project'' from the left-hand column and click the ''Next'' button.
* Enter a name and location for your project.
* In the project view, create a new XQuery file, either by right-clicking on the project name and choosing ''New''→''XQuery File'' or by selecting ''New''→''XQuery File'' from the File menu. Enter a file name and click ''OK''.
* Type in your query.
* Click the green ''Run'' button below the IntelliJ IDEA menu bar.
* In the ''Edit Configuration'' dialog choose one of the two data source from the dropdown box, either "BaseX" or "BaseX (native embedded)". If you select "BaseX", make sure that BaseX is up and running.
* Click ''Run'' to execute your query.
=xquery'''Create a New Project'''* To create a new project choose the ''Create new project'' option from the start screen or select ''New''→''Project...'' from the ''File'' menu.* In the ''New Project'' dialog, choose ''Empty Project'' from the left-intellij-plugin=hand column and click the ''Next'' button.* Enter a name and location for your project and click on the ''Finish'' button.
This section focuses on Reece H'''Customize the XQuery Module'''* Click the ''Add Configuration'' button below the IntelliJ IDEA menu bar. Dunn's [[httpsFile:Intellij-add-configuration.png]]* In the ''Run//pluginsDebug Configurations'' dialog, expand the Templates list and choose the ''XQuery Main Module'' entry.jetbrains* Click on the ''Configure'' button next to the ''Data Source'' field and either choose the previously configured standalone version (''BaseX (native embedded)'' item) or the client version (''BaseX'' item) from the list.com* Click ''Apply'' and then ''OK'' to close the ''Run/plugin/8612-xquery-intellij-plugin xquery-intellij-plugin]Debug Configurations'' dialog.
==Installation=='''Create a Query File'''* In the project view, create a new XQuery file by right-clicking on the project name and choosing New→XQuery File. Enter a file name, select ''Main Module'' from the ''Kind'' dropdown and click OK.* Type in your query and save your file.[[File:Intellij-query.png]]
After installing IntelliJ IDEA and BaseX, install the xquery-intellij-plugin by one of the following methods:===From the Start Screen===* Start IntelliJ IDEA and select ''Configure'Create a New Configuration'''* Click on the ''PluginsAdd Configuration''button once again.* In the Plugins window select the tab ''MarketplaceRun/Debug Configurations''dialog, click the {{Code|+}} button to create a new configuration based on a template.* Type Choose the "XQueryMain Module" template you configured earlier.* Enter a name, e.g. " BaseX", into the ''Search plugins in marketplaceName'' field.* Click the The data source should be preset either to "BaseX (native embedded)" or ''BaseX''Installdepending on your processor configuration.* In the '' button below Main file''field, enter the path to your query file.[[File:Intellij-xquery-intellij-pluginconfiguration2.png]]* Click ''Apply'' and then ''OK'' to close the ''Run/Debug Configurations''dialog.* You will Now, the configuration should be set and the green ''Run'' button should be prompted to restart available below the IntelliJ IDEA to load the new pluginmenu bar.[[File:Intellij-run-button.png]]
===From the IntelliJ IDEA Menu===* Select ''Settings/Preferences'' in the 'Execute Your Query'IntelliJ IDEA'' menu.* In If the Settings/Preferences window select ''Plugins''.* In the Plugins window select the tab ''Marketplace''.* Type "XQuery" into the ''Search plugins in marketplace'' fieldconfiguration does not run as a standalone instance, make sure that BaseX is up and running.* Click the ''InstallRun'' button below ''xquery-intellij-plugin'' plugin.* You will be prompted to restart IDEA to load the new pluginexecute your query.
==Configuring The ProcessorConclusion==* Start IntelliJ IDEA and navigate The plugin adds support for various XQuery Implementations to ''Settings/Preferences'' either using the ''Configure'' button from the start screen or the ''IntelliJ IDEA'' menu(among them BaseX).* In the Settings/Preferences window, expand the ''Languages & Frameworks'' item, select ''It provides syntax highlighting for XQuery''and XML and detects syntactical errors while you type offering a description for each error.* Make the choices Queries are executed using Run Configurations for your system from the dropdown boxeswhich you can configure various query processors, e.g.:** <code>Implementation = BaseX</code>** <code>Implementation version = BaseX 9.1</The plugin offers code>** <code>Default completion for XQuery version = XQuery 3functions, integrated library modules, such as FunctX or the BaseX Module Library, and user-defined modules.1</code>** <code>Dialect IntelliJ’s Find Usages and Go To options seem to work fine for XQuery 3variables and functions, even across modules.0 = BaseX</code>** <code>Dialect for Users can set XQuery 3.1 = BaseX</-specific code>* Click ''Apply'' to store your XQuery settings and then ''OK'' to exit the dialogstyle preferences.
==Querying Your Data==* To create This plugin also has a new projectfew minor drawbacks. If no path is specified, choose the ''Create new project'' option from the start screen or select ''New''→''Project...'' from the ''File'' menu.* In the ''New Project'' dialog choose ''Empty Project'' from the leftsyntax highlighting marks user-hand column and click the ''Next'' button.* Enter a name and location for your project.* Click the ''Add Configuration'' button below the IntelliJ IDEA menu bar.* Expand the Templates list and choose the ''XQuery'' entry.* In the ''Run/Debug Configurations'' dialog click on the three dots {{Code|...}} next to the ''Query Processor'' dropdown box.* In the ''Manage Query Processors'' dialog click on the {{Code|+}} button.* In the ''New Query Processor Instance" dialogdefined modules as unknown, set the following preferences:** <code>Name = BaseX</code>** <code>Implementation = BaseX</code> (should be preset!)** <code>JAR File = basex/BaseX.jar</code>** <code>Hostname = localhost</code>** <code>Database port = 1984</code>** <code>Username = admin</code>** <code>Password = admin</code>* Click ''OK'' to exit the ''New Query Processor Instance" dialog.* In the ''Manage Query Processors'' now choose the "BaseX 9.1.1 (BaseX)" entry and click ''OK''.* The ''Query Processor'' dropdown box even if they reside in the ''Run/Debug Configurations'' dialog should now also display "BaseX 9.1.1 (designated BaseX)"module repository. If notHowever, select it from the dropdown box.* Click ''Apply'' and then ''OK'' to close the ''Run/Debug Configurations'' dialog.* In the project viewBaseX query processor, create a new XQuery file, either by right-clicking on the project name and choosing ''New''→''File'' or by selecting ''New''→''File'' from the File menu. Enter a file name and click ''OK''resolves them correctly during query execution.* Type Error messages in your query.* Click on the ''Add Configuration'' button once again.* In the ''Run/Debug Configurations'' dialog click the {{Code|+}} button editor seem to create a new configuration based on a templatebe kept rather general and should me more specific.* Chose the "XQuery" template you configured earlier.* Enter a name, e.g. "BaseX" into the ''Name'' field.* The query processor should Parameter lists of code completion may be preset to "BaseX 9.1.1 (BaseX)".* In the ''Script File'' field enter the path to your query file.* Click ''Apply'' quite extensive and then ''OK'' to close clog the ''Run/Debug Configurations'' dialogscreen.* NowLeading tab space can be increased in user-defined steps, the green ''Run'' button should be available below the IntelliJ IDEA menu bar.* Make sure that BaseX is up and running and click ''Run'' to execute your querybut neither decreased in single, nor user-defined steps.
Bureaucrats, editor, reviewer, Administrators
13,550

edits

Navigation menu