The ICS-FORTH Heuristics-based SPARQL Planner (HSP)

Licence Information

The HSP software is free software and is published under the terms of the GNU Lesser General Public License version 2.1 as published by the Free Software Foundation

Software Requirements

HSP has been fully tested in a desktop running Ubuntu 11.04 2.6.38-8- generic x86_64.

Download Instructions

  • Download HSP from here
  • Download and install
  • Download the version of MonetDB from here. The version of MonetDB used is not an official MonetDB release. This version was download from here on August 2, 2011. It includes an RDF frontend that is used to parse RDF datasets and load them in MonetDB.

Installation Instructions

  • Install MonetDB

    Go to the directory where you have downloaded MonetDB and do the following:

    • run './bootstrap'
    • run 'configure --prefix= PATH --enable-warning --enable-rdf' where PATH is the directory where you want to have MonetDB installed
    • run 'make'
    • Go to the directory where you have downloaded MonetDB and to subdirectory sql/backends/monet5/vaults/vault.h and comment out "curl/types.h"
    • run 'make install'

  • Install Raptor and Rasqal
  • Install HSP (this is a Netbeans configuration)
    • Go to Build/C Compiler/: Set "Include Directories" to include the 'include' directories of Rasqal, MonetDb, Raptor
    • Go to Build/Linker: Set "Additional Library Directories" to include all the 'lib' directories of Rasqal, MonetDb, Raptor
    • Go to Build/Linker: Set "Libraries" with the following options -lrasqal, -lraptor, -lrt, -lmapi

    After the above parameters are set, then perform Clean & Build for both Release and Debug.

    The HSP executable is found at $HSP_HOME/dist/Release/GNU-Linux-x86

Using HSP

  • Load RDF datasets in MonetDB
    • Launch MonetDB Server:
      Go to the directory where the binaries of MonetDB are installed;
      run ./mserver5
      include sql and rdf modules by typing include sql; and include rdf; after the MonetDB server is launched.
    • Launch MonetDB client:
      run ./mclient -lsql -u monetdb
      when prompted with the password type monetdb

      To load an RDF file in MonetDB go to the MonetDB client and write
      call rdf_shred('filename','graphname','rdf');
      set schema rdf;

      where filename is the absolute path where the file you want to load is stored 'graphname' is the name of the graph where the triples will be stored

      You can see the graphs that are loaded in MonetDB and their identifier by running the SQL query below:
      select * from graph;

      If the identifier of the graph is 'X' then you can query the spo, pos, etc. tables where the triples are stored by typing the following SQL query: select * from spoX;

    • Running HSP

      You go to the directory where the HSP executable is found ()dist/Release/GNU-Linux-x86/) and you type f_t --help to see all the options that you can use to run HSP.


The author of the heuristic-based SPARQL planner (HSP) is Petros Tsialiamanis (2008-2011 @ ICS-FORTH).


For feedback and questions please contact:

Irini Fundulaki Email:

Vassilis Christophides Email:
Conditions of Use | Privacy Policy