IBM
Contents Index Previous Next



Language Compatibility


Compatibility with ITU SDL

The SDL language support in the SDL Suite includes nearly all of SDL'92, as defined in the ITU-T Z.100 recommendation.

The main divergencies between SDL supported in the SDL Suite and the Z.100 recommendation are:

More detailed limitations can be found in SDL Restrictions and SDL Editor.

The SDL Editor supports a few extensions to the SDL/GR notation:

The SDL Suite supports several new SDL concepts, some of which are defined in an addendum to the latest Z.100 Recommendation, known as SDL-96, and some others which are IBM Rational-specific extensions to SDL. The extensions are supported in all relevant tools.

SDL-96 Extensions

Other SDL-96 features are not supported in the SDL Suite.

SDL Suite specific Extensions

The following extensions to SDL are SDL Suite-specific. A detailed description of these extensions can be found in Data Types and Using SDL Extensions.

SDL-2000 Extensions

Compatibility with ITU MSC

The MSC language support in the SDL Suite includes full support for basic MSCs (MSC'93), and also parts of MSC'96, as defined in the ITU-T Z.120 recommendation.

The key points for the MSC'96 support are:

Limitations to the MSC support can be found in UML and MSC Restrictions and MSC Editor.

The MSC Editor also supports a few extensions to Z.120:

MSC'96 Reserved Words

The following words are reserved in MSC'96:

action, all, alt, as, before, begin, block, by, comment, concurrent, condition, connect, create, decomposed, empty, end, endconcurrent, endmsc, endexpr, env, exc, expr, external, found, from, gate, in, inf, inline, inst, instance, loop, lost, msc, mscdocument, msg, opt, order, par, process, reference, related, reset, service, seq, set, shared, stop, subst, system, text, timeout, tim, to, via

The reserved words may not be used as names/identifiers even if the MSC Editor does not support the corresponding language construct; this to avoid compatibility problems either when the editors support more of the MSC'96 language or if the MSC/PR is to be exported to other tools with a different subset of the language supported.

MSC'93 Reserved Words

The following words are also treated as reserved words in the (H)MSC Editors but are mapped to (corresponding) MSC'96 reserved words.

MCS'93 MSC'96

instancehead

instance

This mapping is done to give old scripts and MSC/PR generators a chance to work.

Unsupported Reserved words

The following reserved words are not supported by the (H)MSC Editors (i.e. they are treated as reserved words with respect to names/identifiers but the Editors have no support for the constructs that can be created with these words).

before, begin, external, found, gate, lost, order, related, via

In addition, the SDL Explorer does not support the following reserved words:

subst, by, msg

Parameter Lists

Note that MSC/PR import allows empty parameter lists and an empty duration name when setting a timer, due to backward compatibility. This is not in accordance with either MSC'93 or MSC'96.

SDL Restrictions

This section describes the major SDL restrictions with respect to the ITU-T Z.100 recommendation of 1992. The restrictions lie in one or several specific tools. This means that even if a concept is not fully supported, it may sometimes be possible to use it in a limited part of the tool set.

This listing deals with restrictions in the following tools:

For more detailed information on the SDL restrictions in the Analyzer and the SDL to C Compiler, see SDL Analyzer and Cadvanced SDL to C Compiler.

For a description of SDL restrictions regarding the Simulator, the SDL Explorer, the TTCN Link kernels and the Cmicro SDL to C Compiler, please see the following sections in the User's Manual:

Z.100 Chapter Concept and Restriction Affected Tools

2.2.2 Visibility rules, names and identifiers

<name>: spaces in <name>s are not supported (a space is a shorthand for <underline>)

SDL Editor, Analyzer, SDL to C Compiler

2.4.1.2 Package

<interface> definitions, and <definition selection list> in use statements, are not supported.

Analyzer, SDL to C Compiler

2.5.1 Channel

nodelay: channels with delay and channels with nodelay are treated the same.

SDL to C Compiler

2.7.4 Output

via all to a <block instance set> only sends a single signal.

SDL to C Compiler

2.9 Internal input and output

The <internal input symbol> and the <internal output symbol> are not available.

SDL Editor

3.2 Partitioning

<channel substructure definition> is not supported in generated code.

SDL to C Compiler

In substructures with both process definitions and block definitions, the process definitions will be ignored.

Analyzer, SDL to C Compiler

3.3 Refinement

<signal refinement> is not supported.

SDL to C Compiler

4.2 Macro

<macro definition>: macros and macro calls are transformed to PR and expanded in PR form, which restricts the usability of macros.

Analyzer

<any area>: graphical macros can only contain flow symbols in one single flow.

SDL Editor, GR to PR converter

<macro call>: graphical macro calls are not allowed in a higher scope than processes.

SDL Editor, GR to PR converter

4.3.3 Optional definition

<select definition>: textual optional definitions are supported, but not graphical. Any (external) synonyms used in the select expression must be defined in the system definition which may not be type based.

SDL Editor, Analyzer, SDL to C Compiler

4.3.4 Optional transition string

<alternative question>: question part in transition option must not contain external synonyms.

Analyzer, SDL to C Compiler

5.2.3 Axioms

<axioms>: not supported.

Analyzer, SDL to C Compiler

5.2.4 Conditional equations

<conditional equation>: not supported.

Analyzer, SDL to C Compiler

5.3.1.14 Name class literals

<name class literal>: not supported.

Analyzer, SDL to C Compiler

5.3.1.15 Literal mapping

<literal mapping>: not supported.

Analyzer, SDL to C Compiler

5.4.4.5 Timer active expression

<timer active expression>: cannot be used for timers with parameter.

SDL to C Compiler

6.2 Context parameter

<formal context parameters> and <actual context parameters> are not supported.

Analyzer, SDL to C Compiler

UML and MSC Restrictions

This section lists the major UML and MSC restrictions in the SDL Suite, with respect to the OMG specification for UML, and the ITU-T recommendation for MSC.

References below are to sections in the OMG document "ad/99-06-08" (UML Notation Guide, version 1.3, June 1999), and the Z.120 recommendation.

UML Class Diagrams

The following features of UML 1.3 Static Structure (Class) diagrams are not supported:

UML Statechart Diagrams

The following features of UML 1.3 Statechart diagrams are not supported:

UML Implementation Diagrams

The notation used in the DP Editor diagrams is based on UML 1.3 Implementation diagrams. The major differences are the following:

MSC and HMSC

TTCN Restrictions


http://www.ibm.com/rational
Contents Index Previous Next