CONTENTS

1 Scope
1.1 Objective
1.2 Application
1.3 System specification
1.4 Differences between SDL-88 and SDL-92
1.5 Differences between SDL-92 and SDL‑2000
2 References
3 Definitions
4 Abbreviations
5 Conventions
5.1 SDL grammars
5.2 Basic definitions
5.2.1 Definition, type and instance
5.2.2 Environment
5.2.3 Error
5.3 Presentation style
5.3.1 Division of text
5.3.2 Titled enumeration items
5.4 Metalanguages
5.4.1 Meta IV
5.4.2 BNF
5.4.3 Metalanguage for graphical grammar
6 General rules
6.1 Lexical rules
6.2 Macro
6.2.1 Additional Lexical rules
6.2.2 Macro definition
6.2.3 Macro call
6.3 Visibility rules, names and identifiers
6.4 Informal text
6.5 Drawing rules
6.6 Partitioning of drawings
6.7 Comment
6.8 Text extension
6.9 Text symbol
7 Organization of SDL specifications
7.1 Framework
7.2 Package
7.3 Referenced definition
8 Structural Concepts
8.1 Types, instances and gates
8.1.1 Structural type definitions
8.1.2 Type expression
8.1.3 Definitions based on types
8.1.4 Abstract type
8.1.5 Type references
8.1.6 Gate
8.2 Context parameters
8.2.1 Agent type context parameter
8.2.2 Agent context parameter
8.2.3 Procedure context parameter
8.2.4 Remote procedure context parameter
8.2.5 Signal context parameter
8.2.6 Variable context parameter
8.2.7 Remote variable context parameter
8.2.8 Timer context parameter
8.2.9 Synonym context parameter
8.2.10 Sort context parameter
8.2.11 Exception context parameter
8.2.12 Composite state type context parameter
8.2.13 Gate context parameter
8.2.14 Interface context parameter
8.3 Specialization
8.3.1 Adding properties
8.3.2 Virtual type
8.3.3 Virtual transition/save
8.3.4 Virtual methods
8.3.5 Virtual default initialization
8.4 Associations
9 Agents
9.1 System
9.2 Block
9.3 Process
9.4 Procedure
10 Communication
10.1 Channel
10.2 Connection
10.3 Signal
10.4 Signal list definition
10.5 Remote procedures
10.6 Remote variables
11 Behaviour
11.1 Start
11.2 State
11.2.1 Basic State
11.2.2 Composite state application
11.3 Input
11.4 Priority Input
11.5 Continuous signal
11.6 Enabling condition
11.7 Save
11.8 Implicit transition
11.9 Spontaneous transition
11.10 Label
11.11 State machine and Composite state
11.11.1 Composite State Graph
11.11.2 State aggregation
11.11.3 State connection point
11.11.4 Connect
11.12 Transition
11.12.1 Transition body
11.12.2 Transition terminator
11.13 Action
11.13.1 Task
11.13.2 Create
11.13.3 Procedure call
11.13.4 Output
11.13.5 Decision
11.14 Statement list
11.14.1 Compound statement
11.14.2 Transition actions and terminators as statements
11.14.3 Expressions as Statements
11.14.4 If statement
11.14.5 Decision statement
11.14.6 Loop statement
11.14.7 Break and labelled statements
11.14.8 Empty Statement
11.14.9 Exception Statement
11.15 Timer
11.16 Exception
11.16.1 Exception handler
11.16.2 On-Exception
11.16.3 Handle
12 Data
12.1 Data definitions
12.1.1 Data type definition
12.1.2 Interface definition
12.1.3 Specialization of data types
12.1.4 Operations
12.1.5 Any
12.1.6 Pid and pid sorts
12.1.7 Data type constructors
12.1.8 Behaviour of operations
12.1.9 Additional data definition constructs
12.2 Passive use of data
12.2.1 Expressions
12.2.2 Literal
12.2.3 Synonym
12.2.4 Extended primary
12.2.5 Equality expression
12.2.6 Conditional expression
12.2.7 Operation application
12.2.8 Range check expression
12.3 Active use of data
12.3.1 Variable definition
12.3.2 Variable access
12.3.3 Assignment and assignment attempt
12.3.4 Imperative expressions
12.3.5 Value returning procedure call
13 Generic system definition
13.1 Optional definition
13.2 Optional transition string
Annex A Index of non-terminals
Annex B Reserved for future use
Annex C Reserved for future use
Annex D SDL Predefined data
D.1 Introduction
D.2 Notation
D.2.1 Axioms
D.2.2 Conditional equations
D.2.3 Equality
D.2.4 Boolean axioms
D.2.5 Conditional term
D.2.6 Error term
D.2.7 Unordered literals
D.2.8 Literal equations
D.3 Package Predefined
D.3.1 Boolean sort
D.3.2 Character sort
D.3.3 String sort
D.3.4 Charstring sort
D.3.5 Integer sort
D.3.6 Natural syntype
D.3.7 Real sort
D.3.8 Array sort
D.3.9 Vector
D.3.10 Powerset sort
D.3.11 Duration sort
D.3.12 Time sort
D.3.13 Bag sort
D.3.14 ASN.1 Bit and Bitstring sorts
D.3.15 ASN.1 Octet and Octetstring sorts
D.3.16 Predefined Exceptions
Annex E Reserved for examples
Annex F Formal Definition
Appendix I Status of Z.100, related documents and Recommendations
Appendix II Guidelines for the maintenance of SDL
II.1 Maintenance of SDL
II.1.1 Terminology
II.1.2 Rules for Maintenance
II.1.3 Change request procedure
Appendix III Systematic conversion of SDL-92 to SDL-2000