Ontologies are used to represent knowledge of mobile robotic experts. The ontology used here was mainly developed in the scope of the PROTEUS project. The final report on ontology development in PROTEUS can be found at:


This report gives a fair overview of the content of the ontology associated to this portal. However, because the ontology has been modified after the end of PROTEUS, some differences exist:

  • OWL2 instead of OWL.
  • Different folder hierarchies.
  • Modification of some concepts and properties.

Ontology development

Specification of the scenarios, robots that are concerned and associated problems

This task consisted in defining operational and functional scenarios in the field of humanoid and air-land robotics. The scenarios must be consistent with the challenges. The scenarios description acted as user requirements for the ontology description, and conditionned the validation task.

The scenarios described for each field (indicative non exhaustive list):

  • The mission description:
  • Aims and objectives, dynamic description;
  • The functional performances to be achieved.
  • The robot associated objects description:
  • The robots;
  • The technical functions of the robot to fulfil the mission (observation, navigation, localization, etc.);
  • The needed components of the robots (sensors, actuators, inertial central and positioning system, processing power, algorithms components, etc.);
  • The constraints in term of architecture (computation load, etc.).

The environment description:

  • Depending on the challenges and scenarios logics: indoors, urban area, natural area, buildings, soil characteristics, etc;
  • Eventually, the human actors (if any).
  • The scenarios will especially emphasise on the “history” or dynamic description.

The detail behaviour of the scenario:

  • Events which can happen and influence the actors in the scene
  • Expected and possible behaviour of each actor
  • Rules which permit to trigger behaviours and events.
  • A chronology of all points mentioned here above

The description will emphasize on scenarios which remains consistent with the further level of description by simulation (for example, it seems more likely to address mission level scenarios related to operational missions or autonomy, more than embedded behaviours related to the vehicle or humanoid motion).
This activity will produce detail scenarios specification in a textual notation (pure text). This specification will be used by the next activity in aim to define the best robotic ontology able to represent these scenarios.

Robotic Ontology

This activity aimed to formalize the above specified scenario in a non ambiguous way. This has been done in two parts:

  • Description of data and structure using the ontology paradigm: it will consist in modelling all the objects, their characteristics (physical or behavioural), their relationships, organizing the data and defining coherence properties enabling the maintenance of the integrity of the ontology. This part deals with the declarative (i.e., static) aspect of the scenarios. These descriptions are based on the textual definition developed above. The result is a set of XML files consistent with a description logic language (as W3C OWL, RDF or frame). The choice will depend on the expected level of description and the associated constraints.
  • Description of architectures, activities and data flows: it will consist, starting from the ontology, in formalizing the behaviours of the different objects and how they interact. This part deals with the dynamicity of the scenarios (cinematic computing, localization at a time …). The result is another ontology (using the same language as above). It contains the functions description (in terms of what they do and not how they do) that DSL(s) must implement to perform a scenario. It is necessary, for that task, to be independent from any DSL syntax, in order to justify their own usefulness.

The description granularity must also be consistent with the objectives of a scenario (e.g., it is useless to describe specifically a motor if the objective is to evaluate the navigation function).
For these two parts, one has to take into account:

  • The complexity of the system itself: platform with several missions, sensors, processing, up to several cooperating platforms or platforms interoperating with other systems (satellite communications, etc.)
  • The complexity of the system at a more atomic level: capability to fulfil the same function with different solutions (like a navigations filter, or a sensorimotor behaviour) which the simulation platform will aim to evaluate.

Practical information

Accessing the core of the ontology with Protégé

  1. Download and instal Protégé (Version 4.3 from http://protege.stanford.edu/download/protege/4.3/installanywhere/Web_Installers/ ).
  2. If you use a proxy to access internet, edit the Protege.lax file in the Protege_4.3 directory and add the following line "lax.nl.java.option.additional=-Dhttp.proxySet=true -Dhttp.proxyHost='MyProxyServer' -Dhttp.proxyPort='MyProxyPort'" with 'MyProxyServer' the name of your proxy server and 'MyProxyPort' the number of your proxy port.
  3. Run Protégé.
  4. Using the menu "File/Open from URL..." indicate http://europe.bourges.univ-orleans.fr/sites/default/files/download/Ontology/Core/Core.owl in the pop up window and click on "OK".

Exploring the description of the content of this portal

Assuming that Protégé is already installed and correctly configurated for internet access.

  1. Run Protégé.
  2. Using the menu "File/Open from URL..." indicate http://europe.bourges.univ-orleans.fr/sites/default/files/download/Ontology/RoboticOntologyServices.owl in the pop up window and click on "OK".
  3. If you want to make a database querry, open the SPARQL tab and formulate a SPARQL query (for instance:  PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
    PREFIX owl: <http://www.w3.org/2002/07/owl#>
    PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
    PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX kernel: <http://europe.bourges.univ-orleans.fr/sites/default/files/download/Ontology/Core/kernel.owl#> PREFIX experiment: <http://europe.bourges.univ-orleans.fr/sites/default/files/download/Ontology/Core/experiment.owl#>
    SELECT ?Problem ?Aggregated WHERE {?Problem a experiment:Problem . ?Problem kernel:aggregates ?Aggregated . }  ) and click on "Execute".
  4. If you want to make a description logic query, open the DL tab and formulate a DL query (for instance:  Hardware that hosts some MissionManagementSystem  ) and click on "Execute".

Nota: The content of the database is provided by the users of the portal: if you want that the RobotML models you upload on the portal can be found by other users provide their descriptions as an .owl file consistent with the core of the ontology.