CONTENTS

 1     Scope
 2     Normative references
        2.1     Identical Recommendations | International Standards
        2.2     Paired Recommendations | International Standards equivalent in technical content
        2.3     Additional references
 3     Definitions
        3.1     Basic terms from ITU-T Rec. X.290
        3.2     Terms from ITU-T Rec. X.200
        3.3     Terms from ITU-T Rec. X.210
        3.4     Terms from ITU-T Rec. X.680
        3.5     Terms from ITU-T Rec. X.690
        3.6     TTCN specific terms
 4     Abbreviations
        4.1     Abbreviations defined in ITU-T Rec. X.290
        4.2     Abbreviations defined in ITU-T Rec. X.291
        4.3     Other abbreviations
 5     The syntax forms of TTCN
 6     Compliance
 7     Conventions
        7.1     Introduction
        7.2     Syntactic metanotation
        7.3     TTCN.GR table proformas
                  7.3.1     Introduction
                  7.3.2     Single TTCN object tables
                  7.3.3     Multiple TTCN object tables
                  7.3.4     Alternative compact tables
                  7.3.5     Specification of proformas
        7.4     Free Text and Bounded Free Text
 8     Concurrency in TTCN
        8.1     Test components
        8.2     Test component configurations
 9     TTCN test suite structure
        9.1     Introduction
        9.2     Test Group References
        9.3     Test Step Group References
        9.4     Default Group References
        9.5     Parts of a TTCN test suite
10     Test Suite Overview
       10.1     Introduction
       10.2     Test Suite Index
       10.3     Test Suite Structure
       10.4     Test Case Index
       10.5     Test Step Index
       10.6     Default Index
       10.7     Test Suite Exports
       10.8     The Import Part
                 10.8.1     Introduction
                 10.8.2     Imports 
11     Declarations part
       11.1     Introduction
       11.2     TTCN types
                 11.2.1     Introduction
                 11.2.2    Predefined TTCN types
                 11.2.3     Test Suite Type Definitions
       11.3     TTCN operators and TTCN operations
                 11.3.1     Introduction
                 11.3.2     TTCN operators
                 11.3.3     Predefined operations
                 11.3.4     Test suite operation definitions and descriptions
       11.4     Test suite parameter declarations
       11.5     Test case selection expression definitions
       11.6     Test Suite Constant Declarations
       11.7     Test Suite Constant Declarations by Reference
       11.8     TTCN variables
                 11.8.1     Test Suite Variable Declarations
                 11.8.2     Binding of Test Suite Variables
                 11.8.3     Test Case Variable Declarations
                 11.8.4     Binding of Test Case Variables
       11.9     PCO Type Declaration
      11.10     PCO declarations
      11.11     CP declarations
      11.12     Timer declarations
      11.13     Test components and configuration declarations
                11.13.1     Test components
                11.13.2     Test component configuration declarations
      11.14     ASP type definitions
                11.14.1     Introduction
                11.14.2     ASP type definitions using tables
                11.14.3     Use of structured types within ASP type definitions
                11.14.4     ASP type definitions using ASN.1
                11.14.5     ASN.1 ASP type definitions by reference
      11.15     PDU type definitions
                11.15.1     Introduction
                11.15.2     PDU type definitions using tables
                11.15.3     Use of Structured Types within PDU definitions
                11.15.4     PDU type definitions using ASN.1
                11.15.5     ASN.1 PDU type definitions by reference
      11.16     Test Suite Encoding Information
                11.16.1     Encoding Definitions
                11.16.2     Encoding variations
                11.16.3     Invalid field encoding definitions
                11.16.4     Application of encoding rules
      11.17     CM type definitions
                11.17.1     Introduction
                11.17.2     CM type definitions using tables
                11.17.3     CM type definitions using ASN.1
      11.18     String length specifications
      11.19     ASP, PDU and CM definitions for SEND events
      11.20     ASP, PDU and CM definitions for RECEIVE events
      11.21     Alias definitions
                11.21.1     Introduction
                11.21.2     Expansion of aliases
12     Constraints part
       12.1     Introduction
       12.2     General principles
       12.3     Parameterization of constraints
       12.4     Chaining of constraints
       12.5     Constraints for SEND events
       12.6     Constraints for RECEIVE events
                 12.6.1     Matching values
                 12.6.2     Matching mechanisms
                 12.6.3     Specific value
                 12.6.4     Instead of Value
                 12.6.5     Inside Values
                 12.6.6     Attributes of values
13     Specification of constraints using tables
       13.1     Introduction
       13.2     Structured type constraint Declarations
       13.3     ASP constraint declarations
       13.4     PDU Constraint Declarations
       13.5     Parameterization of constraints
       13.6     Base constraints and modified constraints
       13.7     Formal parameter lists in modified constraints
       13.8     CM constraint declarations
14     Specification of constraints using ASN.1
       14.1     Introduction
       14.2     ASN.1 type constraint declarations
       14.3     ASN.1 ASP constraint declarations
       14.4     ASN.1 PDU constraint declarations
       14.5     Parameterized ASN.1 constraints
       14.6     Modified ASN.1 constraints
       14.7     Formal parameter lists in modified ASN.1 constraints
       14.8     ASP Parameter and PDU field names within ASN.1 constraints
       14.9     ASN.1 CM constraint declarations
15     The dynamic part
       15.1     Introduction
       15.2     Test Case dynamic behaviour
                 15.2.1     Specification of the Test Case Dynamic Behaviour table
                 15.2.2     The Test Case Dynamic Behaviour proforma
                 15.2.3     Structure of the Test Case behaviour
                 15.2.4     Concurrent Test Case Behaviour description
                 15.2.5     Line numbering and continuation
       15.3     Test Step dynamic behaviour
                 15.3.1     Specification of the Test Step Dynamic Behaviour table
                 15.3.2     The Test Step Dynamic Behaviour proforma
       15.4     Default dynamic behaviour
                 15.4.1     Default behaviour
                 15.4.2     Specification of the Default Dynamic Behaviour table
                 15.4.3     The Default Dynamic Behaviour proforma
       15.5     The behaviour description
       15.6     The tree notation
       15.7     Tree names and parameter lists
                 15.7.1     Introduction
                 15.7.2     Trees with parameters
       15.8     TTCN statements
       15.9     TTCN test events
                 15.9.1     Sending and receiving events
                 15.9.2     Receiving events
                 15.9.3     Sending events
                 15.9.4     Lifetime of events
                 15.9.5     Execution of the behaviour tree
                 15.9.6     The IMPLICIT SEND event
                 15.9.7     The OTHERWISE event
                 15.9.8     OTHERWISE and concurrent TTCN
                 15.9.9     The TIMEOUT event
                15.9.10     Concurrent TTCN events and constructs
      15.10     TTCN expressions
                15.10.1     Introduction
                15.10.2     References for ASN.1 defined data objects
                15.10.3     References for data objects defined using tables
                15.10.4     Assignments
                15.10.5     Qualifiers 
                15.10.6     Event lines with assignments and qualifiers
      15.11     Pseudo-events
      15.12     Timer management
                15.12.1     Introduction
                15.12.2     The START operation
                15.12.3     The CANCEL operation
                15.12.4     The READTIMER operation
      15.13     The ATTACH construct
                15.13.1     Introduction
                15.13.2     Scope of tree attachment
                15.13.3     Tree attachment basics
                15.13.4     The meaning of tree attachment
                15.13.5     Passing parameterized constraints
                15.13.6     Recursive tree attachment
                15.13.7     Tree attachment and Defaults
      15.14     Labels and the GOTO construct
      15.15     The REPEAT construct
      15.16     The Constraints Reference
                15.16.1     Purpose of the Constraints Reference column
                15.16.2     Passing parameters in Constraint References
                15.16.3     Constraints and qualifiers and assignments
      15.17     Verdicts 
                15.17.1     Introduction
                15.17.2     Preliminary results
                15.17.3     Final verdict
                15.17.4     Verdicts and OTHERWISE
                15.17.5     Verdict assignment in concurrent TTCN
      15.18     The meaning of Defaults
                15.18.1     Introduction
                15.18.2     Default References
                15.18.3     The RETURN statement
                15.18.4     The ACTIVATE statement
                15.18.5     Defaults and tree attachment
                15.18.6     Tree Attachment, Defaults, Activate and Return
                15.18.7     Defaults and CREATE
                15.18.8     Defaults and CMs
Annex  A – Syntax and static semantics of TTCN
        A.1     Introduction
        A.2     Conventions for the syntax description
                  A.2.1     Syntactic metanotation
                  A.2.2     TTCN.MP syntax definitions
        A.3     The TTCN.MP syntax productions in BNF
                  A.3.1     TTCN Specification
                  A.3.2     TTCN Module
                  A.3.3     Test suite
        A.4     General static semantics requirements
                  A.4.1     Introduction
                  A.4.2     Uniqueness of identifiers
        A.5     Differences between TTCN.GR and TTCN.MP
                  A.5.1     Differences in syntax
                  A.5.2     Additional static semantics in the TTCN.MP
        A.6     List of BNF production number
Annex  B – Operational semantics of TTCN
        B.1     Introduction
        B.2     Precedence
        B.3     Processing of test case errors
        B.4     Converting a modularized test suite to an equivalent expanded test suite
        B.5     TTCN operational semantics
                  B.5.1     Introduction
                  B.5.2     The pseudo-code notation
                  B.5.3     Execution of a Test Suite
                  B.5.4     Execution of a Test Case
                  B.5.5     Expanding a set of alternatives
                  B.5.6     Evaluation of an Event Line
                  B.5.7     Functions for TTCN events
                  B.5.8     Execution of the SEND event
                  B.5.9     ]Execution of the RECEIVE event
                 B.5.10     Execution of the OTHERWISE event
                 B.5.11     Execution of the TIMEOUT event
                 B.5.12     Execution of the DONE event
                 B.5.13     Execution of the IMPLICIT SEND event
                 B.5.14     Execution of a pseudo-event
                 B.5.15     Execution of BOOLEAN expressions
                 B.5.16     Execution of assignments
                 B.5.17     Execution of TIMER operations
                 B.5.18     Functions for TTCN constructs
                 B.5.19     Execution of the ACTIVATE construct
                 B.5.20     Execution of the CREATE construct
                 B.5.21     Execution of the GOTO construct
                 B.5.22     Execution of the RETURN construct
                 B.5.23     The verdict
                 B.5.24     The Conformance Log
                 B.5.25     Tree handling functions and procedures
                 B.5.26     Miscellaneous functions used by the pseudo-code
Annex C – TTCN modules
        C.1     Introduction
        C.2     TTCN Module Overview Part
                  C.2.1     Introduction
                  C.2.2     TTCN Module Exports
                  C.2.3     TTCN Module Structure
                  C.2.4     Test Case Index
                  C.2.5     Test Step Index
                  C.2.6     Default Index
        C.3     Import Part
                  C.3.1     Introduction
                  C.3.2     External
                  C.3.3     Import
Annex D – Test Suite Index
Annex E – Compact proformas
        E.1     Introduction
        E.2     Compact proformas for constraints
                  E.2.1     Requirements
                  E.2.2     Compact proformas for ASP constraints
                  E.2.3     Compact proformas for PDU constraints
                  E.2.4     Compact proformas for Structured Type constraints
                  E.2.5     Compact proformas for ASN.1 constraints
        E.3     Compact proforma for Test Cases
                  E.3.1     Requirements
                  E.3.2     Compact proforma for Test Case dynamic behaviours
Annex F – Examples
        F.1     Examples of tabular constraints
                  F.1.1     ASP and PDU definitions
                  F.1.2     ASP/PDU constraints
        F.2     Examples of ASN.1 constraints
                  F.2.1     ASP and PDU definitions
                  F.2.2     ASN.1 ASP/PDU constraints
                  F.2.3     Further examples of ASN.1 constraints
        F.3     Base and modified constraints
        F.4     Type definition using macros
        F.5     Use of REPEAT
        F.6     Test suite operations
        F.7     Example of a Test Suite Overview
        F.8     Example of a Test Case in TTCN.MP Form
        F.9     Use of component reference for field value assignment in constraints
       F.10     Multi-party testing
       F.11     Multiplexing/Demultiplexing
       F.12     Splitting and recombining
       F.13     Multi-protocol test cases
       F.14     Example of modular TTCN
Annex G – Style guide
        G.1     Introduction
        G.2     Test case structure
        G.3     Use of TTCN with different abstract test methods
                  G.3.1     Introduction
                  G.3.2     TTCN and the LS test method
                  G.3.3     TTCN and the DS test method
                  G.3.4     TTCN and the CS test method
                  G.3.5     TTCN and the RS test method
        G.4     Use of defaults
        G.5     Limiting the execution time of a Test Case
        G.6     Structured types
        G.7     Abbreviations
        G.8     Test descriptions
        G.9     Assignments on SEND events
       G.10     Multi-service PCOs
Annex H – Index
        H.1     Introduction
        H.2     The index