SoftBank Robotics documentation What's new in NAOqi 2.5?

ALKnowledge

NAOqi Core - Overview | API | Tutorials


What it does

ALKnowledge service allows you to manage persistent data in the form of triplets. The goal is to build and use an ontology (a set of triplets) representing the knowledge of the robot. The ontology is shared within the robot which means that you can access, use and modify the data set by others application (which can do the same with your data) if you have access to the domain of these data.

This formalism used for instance by dbpedia is used to describe relation between concepts within a domain.

How it works

Triplet

A Triplet is the basic structure of this service. A triplet is represented as subject - predicate - object where the subject, the predicate and the object can be anything which can be converted to a string.

In a triplet, the predicate represents the relation between the subject and the object which are unique within the ontology.

Here are some examples:

  • sky (subject) - colour (predicate) - blue (object)
  • user_42 (subject) - type (predicate) - person (object)
  • user_42 (subject) - name (predicate) - Paul (object)

It means that “user_42” can be considered as an entity of type “person” which has the name “Paul”.

Domain

The domain allows you to use several sets of triplets for specific contexts.