Project TeRRAS

TERRAS is a Java library that allows to filter and rank a list of objects by measuring their matching against a set of demands. If the demands are some user's preferences, then TERRAS can be useful for service personalization. The package is licensed under GPL v3 license, and it can be downloaded in .zip and .tar.gz formats from SourceForge. Have more information for the project here.


  • Evaluates the affinity of a set of candidate resources to a given query.
  • Completely domain-independent. Domain ontologies can be plugged in as needed.
  • Descriptions of candidate resources can be given as RDF/XML or N3 files, or a remote SPARQL endpoint.
  • Two implementations of the matching algorithm with different performance profiles.
  • Ability to execute matching against remote repositories of RDF descriptions using SPARQL endpoints, i.e., it is not necessary to have a local copy of the resource descriptions.
  • Expressive query language which allows to define necessary and optional constraints, and to assign arbitrary weights to optional constraints. Constraints can contain datatype restrictions (e.g., numerical comparison), cardinality restrictions, existential restrictions.
  • Reasoning support for OWL-DL compliance.
  • Functionality exposed as a simple Java API and REST web service (experimental).

Project details

The project TeRRAS is hosted in SourceForge, where you can find more details about it.

Documentation is available in the wiki.

Also accessible as using maven dependency:

Development Team


TeRRAS has been developed by CTIC Foundation. TeRRAS is partially funded by the Spanish Ministry of Industry, Tourism and Commerce under the National Plan for Scientific Research, Development and Technological Innovation 2007-2009 (grant to EzWeb project with number FIT-340503-2007-2).

Spanish Ministry of Industry, Tourism and Commerce