Creating behaviour using concept ontology inheritance
Purpose
To create behaviour based upon parent concepts, rather than just child concepts, so that this behaviour is inherited by all the child concepts of the selected parent concept.
Theory
If an entrant was arrested for carrying cocaine, cocaine would be a child concept because no other concepts exist below it in the ontology Concept Hierarchy. If another entrant was carrying cannabis, the behaviour that was defined for carrying cocaine would not automatically apply to them, until the concept ontology inheritance feature was used.
If cocaine and cannabis were both classed as illegal cargoes and the behaviour defined for carrying cocaine was also applied to individuals carrying illegal cargo, then individuals carrying cannabis would be treated in the same way as individuals carrying cocaine.
In this exercise, you will create behaviour based upon how an entrant should be treated if they have any type of illegal cargo, even though the situation upon which you are basing the justification is specifically dealing with cocaine.
This is a powerful way of creating behaviour for concepts that seem unimportant in their own right but become important because of the hierarchical group in which they are contained.
To minimise the amount of behaviour created, it is important to understand the impact of using the correct level of abstraction so that, for instance, you create one piece of new behaviour rather than four different ones.
Creating behaviour using concept ontology inheritance means you create behaviour based on not only the situation but also the status within the ontology Concept Hierarchy of the concepts involved.
Actions
To create behaviour using concept ontology inheritance:
- Open the Schengen Without Behaviour knowledge model.
- Click the Concept Ontology
button or select Concept Ontology from the Ontology menu, to display the Concepts pane.
- Click the Minimise Down
button in the top left corner of the knowledge model, to minimise it. - In the Concept Hierarchy, select the Cargo concept to expand it. The Concept Hierarchy and the Ontology Diagram expand the Cargo concept to display its three child concepts, and the Comment pane displays the detail for the Cargo concept.

- Expand the Illegal Cargo concept to display its six child concepts.
As you can see, cocaine is one of the six types of illegal cargo. You are now going to create behaviour based upon an entrant carrying cocaine. If you create behaviour based upon illegal cargo rather than just cocaine, then the behaviour learnt by the system will also be applied to the other five types of illegal cargo. For example, if an entrant has guns as cargo, then they will be treated the same as someone who is carrying cocaine. - Click the Knowledge Model
button.
- Double click on the Schengen Decision node.
- Click the Minimise Down
button in the top left corner of the knowledge model, to minimise it. - Select Gary from the Situation List.
Since Gary has an HGV that contains cocaine, which is an illegal cargo, he should be arrested. - Click the Arrest button on the Conclusion toolbar.
The Justification pane changes to red to indicate that you must justify why Gary should be arrested. - Right click on the Cocaine concept and select Add Path Between [int:Entrant] And [int:Cocaine] from the context menu.
The Entrant, HGV and Cocaine concepts all change to green, to show that these concepts are the reason why Gary is being arrested.
Additionally, since this reason does not conflict with any other behaviour within the system, the Justification pane changes to green.
If you clicked the OK button at this stage, then the reason Gary is arrested would be because he is carrying cocaine in an HGV, and this is the behaviour that the system would learn. However, if an entrant were carrying another type of illegal cargo, such as guns or heroin, then they would be allowed entry.
You will now access the ontology to remedy this situation. - Right click on the Cocaine concept again and select Inheritance For 'Cocaine' from the context menu.
The Ontology Inheritance screen is displayed, showing the section of the Ontology Diagram that contains the Cocaine concept. You will notice that the Cocaine concept is a child concept of both the Illegal Cargo and Drug concepts.

- In the Ontology Inheritance screen, double click on the Illegal Cargo concept to define the reason why Gary should be arrested, which is because the cocaine that he is carrying is an illegal cargo.
In the Justification pane, the Cocaine concept has now been replaced with the Illegal Cargo (Cocaine) concept and is highlighted in green. The words Illegal Cargo are now the first part of the concept name because you have defined that being an illegal cargo is the most important piece of information about the Cocaine concept.

Note
You will need to hover the mouse over the Illegal Cargo (Cocaine) concept to view the full concept name.
If you clicked the OK button at this stage, then the reason Gary is arrested would be because he was carrying an illegal cargo in an HGV, and this is the behaviour that the system would learn. However, if an entrant were carrying an illegal cargo in another type of vehicle such as a car, then they would be allowed entry.
You will now access the ontology again to remedy this situation. - Right click on the HGV concept and select Inheritance For 'HGV' from the context menu.
- In the Ontology Inheritance screen, double click on the Vehicle concept to define the reason why Gary should be arrested, which is because he is carrying an illegal cargo in a vehicle.
The HGV concept has now been replaced with the Vehicle (HGV) concept and is highlighted in green.

- Click the OK button at the bottom of the screen to confirm the justification that you have just defined.
The Arrest button on the Conclusion toolbar has now changed to green, which means that this is the conclusion that has been defined for the current situation.
You have now used concept ontology inheritance to create behaviour defining that if an entrant is carrying an illegal cargo in a vehicle, then they are arrested. - Close the knowledge model without saving changes.
Platform: all
EBE Version: 2.4
Category: Introduction Guide
Author: Patrick Peisker