Skip to content

rhdunn/xquery-intellij-plugin

Repository files navigation

Build Status JetBrains Plugin JetBrains Plugin Downloads GitHub Issues

Syntax Highlighting

XQuery and XSLT

This is a plugin for the IntelliJ IDE that adds support for the XML Query (XQuery) and XML Path (XPath) languages. This covers support for:

  1. XPath 2.0, 3.0, and 3.1;
  2. XQuery 1.0, 3.0, and 3.1;
  3. XQuery and XPath Full Text extension;
  4. XQuery Update Facility 1.0, and 3.0 extension;
  5. XQuery Scripting extension;
  6. EXPath extensions;
  7. BaseX, MarkLogic, and Saxon vendor extensions.

This plugin also has limited support for the following XML-based languages that use XPath:

  1. XSLT 1.0-3.0 (active when the IntelliJ XPathView plugin is disabled);
  2. XProc 1.0-3.0.

See https://rhdunn.github.io/xquery-intellij-plugin/ for the plugin documentation and tutorials.

The latest development version of this plugin supports IntelliJ 2022.3 – 2024.3 . Older versions of the plugin are compatible with older versions of IntelliJ.

Query Processor and Database Integration

This plugin provides support for the following implementations of XQuery:

  1. BaseX 7.0 – 9.3;
  2. eXist-db 4.4 – 5.3;
  3. FusionDB alpha;
  4. MarkLogic 8.0 – 10.0;
  5. Saxon 9.2 – 10.0.

For those XQuery implementations, this plugin supports:

  1. Running XQuery, XSLT, XPath, SPARQL, SQL, and JavaScript queries where supported by the implementation;
  2. Profiling XQuery and XSLT queries;
  3. Debugging MarkLogic XQuery-based queries, with expression breakpoint support;
  4. Viewing access and error log files.

This plugin provides additional integration support for the following query processor file types and standards:

  1. MarkLogic rewriter XML files;
  2. EXQuery RESTXQ 1.0.

Libraries and Frameworks

This plugin adds support for the following project frameworks:

  1. MarkLogic Roxy – source root detection;
  2. MarkLogic ml-gradle – source root detection.
  3. Support running and profiling XRay unit tests.

IntelliJ Integration

This plugin provides support for the following IntelliJ features:

  1. Resolving URI string literal, function, and variable references;
  2. Code folding;
  3. Find usages and semantic usage highlighting;
  4. Rename refactoring for variables;
  5. Code completion;
  6. Parameter information;
  7. Parameter inlay hints;
  8. Structure view;
  9. Breadcrumb navigation, including highlighting XML tags in the editor like the IntelliJ XML plugin;
  10. Paired brace matching;
  11. Commenting code;
  12. Integrated function documentation ("Quick Documentation", Ctrl+Q);
  13. Context information (Alt+Q) for XQuery function declarations;
  14. Spellchecking support with bundle dictionaries with XPath, XQuery, and XSLT terms.
  15. Language injection support on various elements, including string literals.

The plugin also supports the following IntelliJ Ultimate features:

  1. Support displaying MarkLogic rewriter files in the Endpoints tool window;
  2. Support displaying EXQuery RESTXQ endpoints in the Endpoints tool window.

Copyright (C) 2016-2024 Reece H. Dunn

This software and document includes material copied from or derived from the XPath and XQuery specifications. Copyright © 1999-2017 W3C® (MIT, ERCIM, Keio, Beihang).

The IntelliJ XQuery Plugin is licensed under the Apache 2.0 license.