IfcLogicalOperatorEnum is an enumeration that defines the logical operators that may be applied for the satisfaction of one or more operands (IfcConstraint) at a time.
The following tables illustrates application of IfcLogicalOperatorEnum in a case of three operands, A, B and C, for each operator.
Operand
A
F
F
F
T
F
T
T
T
B
F
F
T
F
T
F
T
T
C
F
T
F
F
T
T
F
T
RESULT
F
F
F
F
F
F
F
T
Table 8.3.2.3.A - LOGICALAND(A,B,C)
Operand
A
F
F
F
T
F
T
T
T
B
F
F
T
F
T
F
T
T
C
F
T
F
F
T
T
F
T
RESULT
F
T
T
T
T
T
T
T
Table 8.3.2.3.B - LOGICALOR(A,B,C)
Operand
A
F
F
F
T
F
T
T
T
B
F
F
T
F
T
F
T
T
C
F
T
F
F
T
T
F
T
RESULT
F
T
T
T
F
F
F
F
Table 8.3.2.3.C - LOGICALXOR(A,B,C)
Operand
A
F
F
F
T
F
T
T
T
B
F
F
T
F
T
F
T
T
C
F
T
F
F
T
T
F
T
RESULT
T
T
T
T
T
T
T
F
Table 8.3.2.3.D - LOGICALNOTAND(A,B,C)
Operand
A
F
F
F
T
F
T
T
T
B
F
F
T
F
T
F
T
T
C
F
T
F
F
T
T
F
T
RESULT
T
F
F
F
F
F
F
F
Table 8.3.2.3.E - LOGICALNOTOR(A,B,C)
8.3.2.3.2 Type values
Type
Description
LOGICALAND
Defines a relationship between operands whereby the result is true if all operands are true, and false if at least one operand is false.
LOGICALNOTAND
Defines a relationship between operands whereby the result is true if at least one operand is false, and false if all operands are true.
LOGICALNOTOR
Defines a relationship between operands whereby the result is true if all operands are false, and false if at least one operand is true.
LOGICALOR
Defines a relationship between operands whereby the result is true if at least one operand is true, and false if all operands are false.
LOGICALXOR
Defines a relationship between operands whereby the result is true if exactly one operand is true (exclusive or).
Table 8.3.2.3.F
8.3.2.3.3 Formal representation
TYPE IfcLogicalOperatorEnum = ENUMERATION OF
(LOGICALAND
,LOGICALNOTAND
,LOGICALNOTOR
,LOGICALOR
,LOGICALXOR);
END_TYPE;