OTX Reference  
OpenTestSystem.Otx.Core.Terms Namespace Reference

Lists all Terms defined in the Core. More...

Classes

class  AbsoluteValue
 Gets the value of the operand without regard to its sign More...
 
class  Add
 Sum of all operands More...
 
class  BitwiseAnd
 Bitwise AND Operation More...
 
class  BitwiseNot
 Bitwise NOT Operation More...
 
class  BitwiseOr
 Bitwise OR Operation More...
 
class  BitwiseXor
 Bitwise XOR Operation More...
 
class  BooleanLiteral
 Literal of type Boolean More...
 
class  BooleanTerm
 BooleanTerm returns a Boolean value More...
 
class  BooleanValue
 Reading Boolean value More...
 
class  ByteFieldGetSize
 Number of Bytes in a Bytefields More...
 
class  ByteFieldLiteral
 Literal of type ByteField More...
 
class  ByteFieldTerm
 ByteFieldTerm returns a ByteField value More...
 
class  ByteFieldValue
 Reading ByteField value More...
 
class  CollectionTerm
 CollectionTerm returns collection values More...
 
class  DecodeInteger
 Decodes an Integer More...
 
class  Divide
 Division of two operands More...
 
class  EncodeInteger
 Encodes an Integer More...
 
class  ExceptionTerm
 ExceptionTerm returns a Exception value More...
 
class  ExceptionValue
 Reading Exception value More...
 
class  FloatLiteral
 Literal of type Float More...
 
class  FloatTerm
 FloatTerm returns a Float value More...
 
class  FloatValue
 Reading Float value More...
 
class  GetBit
 Gets bit from a byte field More...
 
class  GetExceptionOriginatorNode
 Node that triggered the Exception More...
 
class  GetExceptionQualifier
 Qualifier of Exception More...
 
class  GetExceptionText
 Text of Exception More...
 
class  GetStackTrace
 Procedure call stack for an exception More...
 
class  IntegerLiteral
 Literal of type Integer More...
 
class  IntegerTerm
 IntegerTerm returns a Integer value More...
 
class  IntegerValue
 Reading Integer value More...
 
class  IsEqual
 Test for equality More...
 
class  IsGreater
 Checks the left value is greater than the right value More...
 
class  IsGreaterOrEqual
 Checks the left value is greater or equal than the right value More...
 
class  IsLess
 Checks the left value is less than the right value More...
 
class  IsLessOrEqual
 Checks the left value is less or equal than the right value More...
 
class  IsNotEqual
 Tests for inequality More...
 
class  IsValid
 Allows testing a validity for its truth value with respect to the current context More...
 
class  ListContainsValue
 Checks if an item is in the list More...
 
class  ListCopy
 Copy of a list More...
 
class  ListCreate
 Create a List More...
 
class  ListGetLength
 Number of list elements More...
 
class  ListItems
 Wrapper element for the literal List items More...
 
class  ListLiteral
 Literal of type List More...
 
class  ListTerm
 ListTerm returns a List value More...
 
class  ListValue
 Reading List value More...
 
class  LogicAnd
 Logical AND-operation More...
 
class  LogicNot
 Logical NOT-operation More...
 
class  LogicOr
 Logical OR-operation More...
 
class  LogicXor
 Logical XOR-operation More...
 
class  MapContainsKey
 Checks a key in a Map More...
 
class  MapContainsValue
 Checks a value in a Map More...
 
class  MapCopy
 Copy of all elements of a map More...
 
class  MapCreate
 Create a Map More...
 
class  MapGetKeyList
 Key list of a Map More...
 
class  MapGetSize
 Number of elements in a map More...
 
class  MapGetValueList
 List of values ​​in a map More...
 
class  MapItem
 Represents key/value pair items in the map literal More...
 
class  MapItems
 Wrapper element for the literal Map items More...
 
class  MapLiteral
 Literal of type Map More...
 
class  MapTerm
 MapTerm returns a Map value More...
 
class  MapValue
 Reading Map value More...
 
class  Modulo
 Gets the remainder of a division More...
 
class  Multiply
 Product of all operands More...
 
class  Negate
 Gets the value of the operand with inverted sign More...
 
class  NumericTerm
 NumericTerm returns a Integer or a Float value More...
 
class  Round
 Gets the rounded integer value of the operand More...
 
class  SimpleTerm
 SimpleTerm returns simple values More...
 
class  StringLiteral
 Literal of type String More...
 
class  StringTerm
 StringTerm returns a String value More...
 
class  StringValue
 Reading String value More...
 
class  SubByteField
 Returns part of ByteField More...
 
class  Subtract
 Subtraction of two operands More...
 
class  Term
 Represent syntactic expressions which can be evaluated in order to yield a value. More...
 
class  ToBoolean
 Convert expression to Boolean More...
 
class  ToByteField
 Convert expression to ByteField More...
 
class  ToFloat
 Convert expression to Float More...
 
class  ToInteger
 Convert expression to Integer More...
 
class  ToString
 Convert expression to String More...
 
class  UserExceptionCreate
 Creates an Exception More...
 
class  UserExceptionLiteral
 UserException Literal More...
 

Detailed Description

Lists all Terms defined in the Core.

OTX terms represent syntactic expressions which can be evaluated in order to yield a value. The resulting value of a term can be a simple value (e.g. an integer in the OTX Integer case) or a reference to complex data (e.g. a reference to a list in the OTX List case). Terms are required in various places in the data model, when a value needs to be computed which is then e.g. assigned to a variable, used as an input parameter for a procedure call, or used as the condition truth value in a branch, etc.

Every OTX term is categorized according to its return type. The OTX syntax prescribes a term hierarchy; the leaf term categories correspond directly to the OTX data types, e.g. every StringTerm will return a String value. The higher level term categories bundle other term categories – e.g. all terms returning an Integer (IntegerTerm) and terms returning a Float (FloatTerm) are in the category NumericTerm. The higher level categories are used in places where more then one data type is allowed, e.g. in a ForEachLoop, the collection over which the loop iterates may be a List or a Map, so the CollectionTerm is used which bundles both MapTerm and ListTerm. There is also the high-level term SimpleTerm which serves to separate terms returning simple values from terms returning references. There are also concrete terms derived directly from a higher level category; this is required for terms where the returned data type is determined according to the term argument data types, e.g. the Add term which is a NumericTerm because it returns an Integer value if all summand arguments are Integer, but it returns a Float value if all summand arguments are Float, etc.

Note
OTX terms never have side-effects – this means that the arguments of a term will not be changed by term evaluation.
The abstract OTX Core terms are extensible. This means that OTX extensions may derive new terms from any of the abstract term categories defined in the OTX Core.