�1����
Scope�
�2���� References�
�3���� Definitions and abbreviations��������
������� 3.1���� Definitions�
������� 3.2���� Abbreviations��������
�4����
Introduction������
������� 4.0���� General��
������� 4.1���� The core language and presentation
formats
������� 4.2���� Unanimity of the specification���������
������� 4.3���� Conformance���������
�5����
Basic language elements���
������� 5.0���� General��
������� 5.1���� Ordering of language elements��������
������� 5.2���� Parameterization����
������� 5.3���� Scope rules�����������
������� 5.4���� Identifiers and keywords����
�6����
Types and values�
������� 6.0���� General��
������� 6.1���� Basic types and values�������
������� 6.2���� Sub-typing of basic types���
������� 6.3���� Structured types and values
������� 6.4���� The Anytype����������
������� 6.5���� Arrays����
������� 6.6���� Recursive types�����
������� 6.7���� Type compatibility�
�7����
Modules����
������� 7.0���� General��
������� 7.1���� Naming of modules
������� 7.2���� Module parameters
������� 7.3���� Module definitions part������
������� 7.4���� Module control part�����������
������� 7.5���� Importing from modules�����
�8����
Test configurations�����������
������� 8.0���� General��
������� 8.1���� Port communication model�
������� 8.2���� Restrictions on connections
������� 8.3���� Abstract test system interface���������
������� 8.4���� Defining communication port types�
������� 8.5���� Defining Component types�
������� 8.6���� Addressing entities inside the SUT��
������� 8.7���� Component references�������
������� 8.8���� Defining the test system interface����
�9����
Declaring constants����������
10���� Declaring variables����������
11���� Declaring timers��
������ 11.0���� General�
������ 11.1���� Timers as parameters��������
12���� Declaring messages���������
13���� Declaring procedure signatures����
������ 13.0���� General�
������ 13.1���� Signatures for blocking and
non-blocking communication���
������ 13.2���� Parameters of procedure signatures�����������
������ 13.3���� Value returning remote procedures
������ 13.4���� Specifying exceptions��������
14���� Declaring templates���������
������ 14.0���� General�
������ 14.1���� Declaring message templates���������
� �����14.2���� Declaring signature templates��������
������ 14.3���� Template matching mechanisms�����
������ 14.4���� Parameterization of templates��������
������ 14.5���� Passing templates as parameters����
������ 14.6���� Modified templates�����������
������ 14.7���� Changing template fields����
������ 14.8���� Match operation���
������ 14.9���� Valueof operation�
15���� Operators�
������ 15.0���� General�
������ 15.1���� Arithmetic operators���������
������ 15.2���� String operators����
������ 15.3���� Relational operators����������
������ 15.4���� Logical operators��
������ 15.5���� Bitwise operators��
������ 15.6���� Shift operators������
������ 15.7���� Rotate operators���
16���� Functions and altsteps�����
������ 16.1���� Functions��
������ 16.2���� Altsteps�
������ 16.3���� Functions and altsteps for
different component types����������
17���� Test cases�
������ 17.0���� General�
������ 17.1���� Parameterization of test cases��������
18���� Overview of program statements and
operations��
19���� Basic program statements�����������
������ 19.0���� General�
������ 19.1���� Expressions����������
��� ���19.2���� Assignments���������
������ 19.3���� The Log statement
������ 19.4���� The Label statement����������
������ 19.5���� The Goto statement����������
������ 19.6���� The If-else statement���������
������ 19.7���� The For statement�
������ 19.8���� The While statement���������
������ 19.9����The Do-while statement����
����� 19.10���� The Stop execution statement�������
20���� Behavioural program statements��
������ 20.0���� General�
������ 20.1���� Alternative behaviour��������
������ 20.2���� The Repeat statement�������
������ 20.3���� Interleaved behaviour��������
� �����20.4���� The Return statement��������
21���� Default handling��
������ 21.0���� General�
������ 21.1���� The default mechanism������
������ 21.2���� Default references�
������ 21.3���� The Activate operation������
������ 21.4���� The Deactivate operation��
22���� Configuration operations�
������ 22.0���� General�
������ 22.1���� The Create operation��������
������ 22.2���� The Connect and Map operations�
������ 22.3���� The Disconnect and Unmap
operations�����
������ 22.4���� The MTC, System and Self
operations������
������ 22.5���� The Start test component operation�����������
������ 22.6���� The Stop test component operation�����������
������ 22.7���� The Running operation������
������ 22.8���� The Done operation����������
������ 22.9���� Using component arrays����
����� 22.10���� Summary of the use of any and all with
components����������
23���� Communication operations����������
������ 23.0���� General�
������ 23.1���� General format of communication
operations���������
������ 23.2���� Message-based communication�����
������ 23.3���� Procedure-based communication��
������ 23.4���� The Check operation��������
������ 23.5���� Controlling communication ports���
������ 23.6���� Use of Any and All with ports�������
24���� Timer operations�
������ 24.0���� General�
������ 24.1���� The Start timer operation��
������ 24.2���� The Stop timer operation��
������ 24.3���� The Read timer operation��
������ 24.4���� The Running timer operation����������
������ 24.5���� The Timeout operation������
������ 24.6���� Summary of use of Any and All with
timers
25���� Test verdict operations����
������ 25.0���� General�
������ 25.1���� Test case verdict���
������ 25.2���� Verdict values and overwriting
rules����������
26���� External actions��
27���� Module control part��������
������ 27.0���� General�
������ 27.1���� Execution of test cases������
������ 27.2���� Termination of test cases���
������ 27.3���� Controlling execution of test
cases�
������ 27.4���� Test case selection
������ 27.5���� Use of timers in control�����
28���� Specifying attributes��������
������ 28.0���� General�
������ 28.1���� Display attributes��
������ 28.2���� Encoding of values
������ 28.3� ���Extension attributes�����������
������ 28.4���� Scope of attributes
������ 28.5���� Overwriting rules for attributes������
������ 28.6���� Changing attributes of imported
language elements�
Annex A � BNF and
static semantics����
������� A.1���� TTCN-3 BNF������
Annex B � Matching
incoming values����
������� B.1���� Template matching mechanisms�����
Annex C � Pre-defined
TTCN-3 functions����
������� C.1���� Integer to character�����������
������� C.2���� Character to integer����������
������� C.3���� Integer to universal character���������
������� C.4���� Universal character to integer��������
������� C.5���� Bitstring to integer�
������� C.6���� Hexstring to integer�����������
������� C.7���� Octetstring to integer���������
������� C.8���� Charstring to integer����������
������� C.9���� Integer to bitstring�
������ C.10���� Integer to hexstring�����������
������ C.11���� Integer to octetstring��������
������ C.12���� Integer to charstring���������
������ C.13���� Length of string type���������
������ C.14���� Number of elements in a structured
type���
������ C.15���� The IsPresent function������
������ C.16���� The IsChosen function������
������ C.17���� The Regexp function��������
������ C.18���� Bitstring to
charstring��������
������ C.19���� Hexstring to
charstring������
������ C.20���� Octetstring
to character string�������
������ C.21���� Character string to octetstring�������
������ C.22���� Bitstring to
hexstring���������
������ C.23���� Hexstring to
octetstring�����
������ C.24���� Bitstring to
octetstring�������
������ C.25���� Hexstring to
bitstring��������
������ C.26���� Octetstring
to hexstring�����
������ C.27���� Octetstring
to bitstring������
������ C.28���� Integer to float�����
������ C.29���� Float to
integer�����
������ C.30���� The random
number generator function�����
������ C.31���� The Substring function������
Annex D � Using other
data types with TTCN-3����
������� D.1���� Using ASN.1 with TTCN-3����������
Annex E (informative)
� Library of useful types����
������� E.1���� Limitations�
������� E.2���� Useful
TTCN-3 types��������
Annex F (informative)
� Bibliography����
Annex G (informative)
� On the use of regular expressions and matching mechanisms in TTCN-3����
������� G.1���� Is a character following the
symbol "" a metacharacter?������
������� G.2���� Does "*" match the
shortest or the longest possible character sequence?����
������� G.3���� Do the metacharacters
"?" and "*" match line terminators?��
������� G.4���� What is the behaviour of unescaped
but "illegal" metacharacters? Does "ab]" match
a-b-right-square-bracket?����
������� G.5���� If foo := "ab", does
pattern "{foo}#(2)" match abb or abab?����������
������� G.6���� How is "^" handled when
it is not the first character of a group?�����
������� G.7���� Are metacharacters allowed within
a set preceded by a ""?
������� G.8���� Can sets be nested?����������
������� G.9���� Can a reference expression be used
inside a set?���
������ G.10���� How are "?" and
"*" used in TTCN-3 regular expressions?�����������