Graphical User Interface
From BaseX Documentation
This page is part of the Getting Started Section. The BaseX homepage gives you a visual impression of the graphical user interface (GUI) of BaseX, and an introductory video is available, which presents some of its interactive features.
First of all, launch a GUI instance of BaseX. Depending on your operating system, double click on the BaseX GUI start icon or run the
basexgui script. Beside that, some more startup options are available.
Select Database → New and browse to an XML document of your choice. As an example, you can start with the
factbook.xml document, which contains statistical information on the worlds' countries. It is included in our official releases and can also be downloaded (1.3 MB). If you type nothing in the input field, an empty database will be created. Next, choose the OK button, and BaseX will create a database that you can visually explore and query.
If no XML document is available, the Text Editor can also be used to create an initial XML document. After saving the entered XML document to harddisk, it can be supplied as database input in the above dialog.
On top of the main window, you can find an input bar. The attached dropdown menu provides three modes: Find, XQuery and Command:
The upcoming example queries can all be used with an instance of the
In the Find mode, the input bar can be used to find single elements and texts in the currently opened database. The following syntax is supported:
|Find elements named |
|Find texts matching the exact string |
|Find texts equal or similar to the token |
|Find attributes named |
|Find attribute values matching the exact string |
|Find texts containing the phrase |
|Leading slash: Interpret the input as XPath expression (see below).|
In the XQuery mode, XPath and XQuery expressions can be entered in the input bar.
To evaluate the following example queries: enter them in the input bar, and press ENTER or click on the START button:
|Return all |
|Return the |
|Return the names of all cities with a population larger than one million and order the results by the name of the city.|
In the Command mode, BaseX Commands can be entered and executed. Just try the following examples:
INFO: Returns system information.
CREATE DB TEST: Creates an empty database named "TEST".
LIST: Lists all databases.
- XQuery and command scripts can be executed by clicking on the green triangle.
- XQuery and XML will automatically parsed with each key click, and errors will be highlighted.
Numerous keyboard shortcuts are available to speed up editing and debugging.
The Project View is attached to the editor panel. It displays all files of the current project directory in a tree structure. Files can be renamed and deleted by right-clicks on the files. The project directory can be changed by clicking on the button with the three dots
... in the upper left corner of the project view panel.
Erroneous XQuery modules, and all queries importing these modules, will be highlighted. Highlighting can be disabled in the GUI preferences dialog.
Via the Options menu, you can change how queries are executed and visualized:
- Realtime Execution: If realtime execution is enabled, your searches and queries will be executed with each key click and the results will be instantly shown.
- Realtime Filtering: If enabled, all visualizations will be limited to the actual results in realtime. If this feature is disabled, the query results are highlighted in the visualizations and can be explicitly filtered with the 'Filter' button.
The BaseX GUI offers various visualizations, which help you to explore your XML data instances from different perspectives:
Look and Feels
By default, the Look and Feel of your operating system will be used in the GUI. In the Preferences dialog, you can choose among some more window themes.
The JTattoo library offers some more
look and feels. If you download and copy the JTattoo jar file into the
- Version 8.4
- Added: highlighting of erroneous XQuery modules in the project view.
- Version 8.0
- Updated: support for dark look and feels; support for JTatto library