To get started with eXPL, you will need to download and install a Java package which contains the eXPL compilier, sources and examples. Step by step instructions follow.
Step 1 - Confirm software development readiness
See Java Tools table on right for links to download sites and descriptions, including minimum recommended versions. The Java SDK must also be installed on your PC. The suggested download is Java Platform (SDK) 8. If the Java SDK is already installed, then check it is version either 7 or 8 otherwise there may be compatibility problems.
The project is self-contained so all that is needed to examine and run the examples, post installation, is a text editor and a command console with the Java SDK included in the path. However, if you set up a project in a Java IDE, it makes getting started easier. Candidates include Eclipse, NetBeans, JDeveloper and IntelliJ IDEA.
The installation assumes Maven will run from the command line (eg. the command mvn --version should display information about Maven).
If you choose to go with Eclipse, more information can be found at Maven for Eclipse.
Step 2 - Download project to your PC
Download the eXPL project from the online Git repository, which can be performed from a command console. Go to, or create, a suitable workspace location and run:
Upon completion, the project will be found in a newly created "eXPL" sub directory, which is referred to on this site as the eXPL "home location". There are two modules, parser, which is the eXPL parser and query engine and tutorial. which contains the code examples for the eXPL Reference.
Step 3 - Maven Build
To build the project and deploy artifacts to the local repository, go to the eXPL home location and run:
Upon completion, the message "BUILD SUCCESS" should be displayed. If the build failed, then you will need to scroll back and investigate what error messages appeared during the build.
Running Examples
The eXPL project consists of 2 modules:
- parser module, which compiles and builds the eXPL runtime library
- tutorial module, which is divided into chapters containing examples linked to the Reference
How eXPL Queries are Run
Take a look at the source code for class HighCities in package au.com.cybersearch2.classy_logic.tutorial1 located in the main java sources of the tutorial module. HighCities is a small Java application with a main() static method. Here is the code to focus on:
return result.getIterator("high_cities");
The findHighCities() method compiles an eXPL script named "high_cities.xpl". The assembled script is stored in a QueryProgram object. The query is then executed using it's name to identify it - ie.
The query result contains axioms and axiom lists, both identified by name.
Some things to note about the tutorial examples:
- As stated on the previous page, tutorial examples are linked to the Reference which should be used to navigate the examples
- The examples refer to resource files which are located in the main resources folder of the tutorial module.
- The resource files mostly consist of eXPL files with "xpl" extension or copies of expected console output in ".lst" files
- The comments will contain a description of what the example demonstrates, a copy of the eXPL script and what is the expected output to appear on the console

* Compiles the high_cities.xpl script and runs the "high_city" query
*/