Install BaseX for Application Checker


Dynamics 365 for Finance and Operations is now being licensed as Dynamics 365 Finance and Dynamics 365 Supply Chain Management. For more information about these licensing changes, see Dynamics 365 Licensing Update.


Functionality noted in this topic is available to targeted users as part of a preview release. The content and the functionality are subject to change. For more information about preview releases, see Service update availability.

Application Checker depends on an installation of BaseX to store and query abstract syntax trees that the X++ compiler generates. This topic explains how to install and set up BaseX in a developer environment.

The sections of this topic should be completed in the order that they appear in.

If you're working in a developer environment and don't have admin privileges, use the tabs to switch to the instructions for non-admin users.


BaseX is a Java-based XML document database. It requires a Java Runtime Environment (JRE) of version 8 or later. Before you install BaseX, verify that a JRE is installed.

Download and install Java JRE 64-bit from the Java download page.

Download BaseX

To download BaseX, go to the BaseX website, and download the latest version.

Download the Microsoft Windows installer from the download page.

Install BaseX

Run the executable file on the developer machine where you will compile your module. For each step, accept the default settings.


If the installation drive doesn't have enough space for your model, you can change the folder for BaseX data later. For more information, see BaseX configuration.

After you install BaseX, modify and run the following Windows PowerShell script to add the BaseX bin folder to your PATH environment variable.

    # replace <path_to_basex> below with the absolute path from the extracted basex zip package above
    [Environment]::GetEnvironmentVariable("Path", [EnvironmentVariableTarget]::User) + ";<path_to_basex>\bin\",


If Microsoft Visual Studio was open while you set the PATH environment variable, you must restart it.

Configure BaseX to handle your model

Depending on the size of your model, BaseX can use a lot of memory.

By default, BaseX is configured to use a maximum of about 1200 megabytes (MB) of random-access memory (RAM). If you have a large model, you should consider increasing this limit by following these steps.

  1. Open the batch script at <BaseX Install Path>\bin\basex.bat for editing.

  2. Find the line that contains set BASEX_JVM=-Xmx1200m %BASEX_JVM%, and increase the value after -Xmx. For example, change the value to 10g to let BaseX use up to 10 GB of RAM.

    For more information, see Non-Standard Options. This section of the Java documentation explains how to increase the limits of the Java virtual machine (VM).

    Leave the rest of the script unchanged.


You don't have to start the BaseX server, because Application Checker will use the standalone executable file for storage and queries.