conclude action with the following syntax to create a relation between two relation items or classes:
conclude that item is relation-name item
To conclude a relation value:
conclude that {item} is [ {not | now} ] relation-name item
First-class, the second item returns an instance or class of the Second-class. The exception is a symmetric relation, where the expressions can be items of the first or second class. See the note under Defining a Symmetric Relation.
The
not statement breaks an existing relation, while the now statement establishes a new relation by breaking an existing one when doing so violates the relation's cardinality. If you do not specify either not or now, you can only conclude a relation between items when it does not violate the relation's cardinality.
Example of Creating a Relation Between Two Items
For example, this action button creates a relation between computer-1 and computer-2, which are both instances of the COMPUTER class. In the relation definition, First-class and Second-class both specify the COMPUTER class.
![]() |
Notice that the relation type is one-to-one. This means that you cannot conclude another relation named
in-communication-with between computer-1 and another computer, since doing so would violate the relation's cardinality.
Note: If you attempt to conclude a relation between an item that is already participating in a one-to-one relation of the same name, G2 signals an error.
Example of Creating a Relation Between an Item and a Class
You can create a relation between more than one instance of a class by using an expression that returns a class instead of an item. (Note that you can also create multiple conclude statements to accomplish the same thing.) computer-1 and every instance of the COMPUTER class.
![]() |
Note: In this example, G2 also concludes a relation between computer-1 and itself, because the relation source is also an instance of the second class.
You can only conclude a relation when doing so does not violate the relation definition's cardinality.
Note: If you attempt to conclude a relation that violates the relation's cardinality, G2 signals an error.
Tip: Use an alternative form of the conclude action to break existing relations before concluding a new relation, when concluding the relation violates the relation's cardinality.
G2 creates, at most, one instance of a particular relation between the same two items. Thus, if you conclude a relation between two items when a relation of that name already exists between the items, G2 does not create another relation. Using a Sequence to Conclude a Relation
You can also conclude a relation between items by using a sequence.
To use a sequence for creating a relation:
conclude that the relationships of item-of-interest = sequence (relationships)
Example of Creating a Relation with a Sequence
As an example, a KB includes two relation definitions, married-to and a-daughter-of. Three objects exist, george, bill, and edna. Using the conclude action without a sequence, you could create two relations for edna:
conclude that bill is married-to edna and conclude that edna is a-daughter-of george
![]() |