ETSI's Bug Tracker - Part 01: TTCN-3 Core Language
View Issue Details
0007611Part 01: TTCN-3 Core LanguageClarificationpublic13-02-2017 11:2723-08-2019 09:39
Tomas Urban 
Gyorgy Rethy 
normalminorhave not tried
closedfixed 
v4.9.1 (published 2017-05) 
v4.10.1 (published 2018-05)v4.10.1 (published 2018-05) 
6.2.9, 22.3
STF 521
0007611: Valid port lists for the procedure operations
The clause 6.2.9 and related sections of 22.3 don't provide sufficient rules on how signatures listed in the in-list and out-list of port definitions restrict which signatures can be used in procedure-based communication. The used logic is not straightforward, as the in/out directions are assessed from the caller's point of view. Let's demonstrate it on an example with the following definitions:

type signature S() exception (charstring);
port PClient procedure { out S; }
port PServer procedure { in S; }

With these definitions, the following operations using the signature S shall be possible for a port of the PClient type:
- call
- getreply
- catch

And the following operations using the signature S shall be possible for a port of the PServer type:
- getcall
- reply
- raise

There are some hints on how this should work in the core language specification, especially in the way how system adapter works (in 6.2.9, but getcall, reply, raise are not explicitly mentioned) and in the description of the call (22.3.1 restriction a), getcall (22.3.2 restriction b) and raise (22.3.5 restriction b). However, the reply, getreply and catch operations do not contain any relevant restriction and there's no general explanation of the whole logic in 6.2.9.

Proposal:
1. In 6.2.9, explicitly list procedure-based communication operations associated with the in-list and out-list.
2. Extend the list of in and out directions of the system adapter by adding the missing operations.
3. Add the missing restrictions to the reply, getreply and catch operation clauses
No tags attached.
related to 0007860closed Gyorgy Rethy CR 7611 wasn't properly added to the specification 
doc 7611.doc (171,008) 09-06-2017 08:34
http://oldforge.etsi.org/mantis/file_download.php?file_id=3623&type=bug
doc 7611-v2.doc (159,232) 09-06-2017 09:23
http://oldforge.etsi.org/mantis/file_download.php?file_id=3625&type=bug
doc 7611-v3.doc (175,616) 09-06-2017 09:49
http://oldforge.etsi.org/mantis/file_download.php?file_id=3630&type=bug
doc 7611-v4.doc (146,944) 09-06-2017 10:17
http://oldforge.etsi.org/mantis/file_download.php?file_id=3632&type=bug
Issue History
13-02-2017 11:27Tomas UrbanNew Issue
15-02-2017 11:33Jacob Wieland - SpirentNote Added: 0014528
15-02-2017 12:15Tomas UrbanNote Added: 0014529
06-06-2017 14:56Jens GrabowskiAssigned To => Julien Deltour
06-06-2017 14:56Jens GrabowskiStatusnew => assigned
09-06-2017 08:34Julien DeltourFile Added: 7611.doc
09-06-2017 08:35Julien DeltourNote Added: 0014676
09-06-2017 08:36Julien DeltourStatusassigned => confirmed
09-06-2017 08:36Julien DeltourAssigned ToJulien Deltour => Tomas Urban
09-06-2017 08:36Julien DeltourStatusconfirmed => assigned
09-06-2017 09:23Tomas UrbanFile Added: 7611-v2.doc
09-06-2017 09:24Tomas UrbanNote Added: 0014685
09-06-2017 09:24Tomas UrbanAssigned ToTomas Urban => Julien Deltour
09-06-2017 09:24Tomas UrbanStatusassigned => confirmed
09-06-2017 09:48Julien DeltourFile Added: 7611-v3.doc
09-06-2017 09:48Julien DeltourFile Deleted: 7611-v3.doc
09-06-2017 09:49Julien DeltourFile Added: 7611-v3.doc
09-06-2017 09:50Julien DeltourNote Added: 0014690
09-06-2017 09:53Julien DeltourAssigned ToJulien Deltour => Tomas Urban
09-06-2017 10:17Tomas UrbanFile Added: 7611-v4.doc
09-06-2017 10:18Tomas UrbanNote Added: 0014693
09-06-2017 10:18Tomas UrbanStatusconfirmed => resolved
09-06-2017 10:18Tomas UrbanResolutionopen => fixed
09-06-2017 10:18Tomas UrbanAssigned ToTomas Urban => Gyorgy Rethy
30-12-2017 20:15Gyorgy RethyNote Added: 0014971
30-12-2017 20:15Gyorgy RethyStatusresolved => closed
30-12-2017 20:15Gyorgy RethyProduct Version => v4.9.1 (published 2017-05)
30-12-2017 20:15Gyorgy RethyFixed in Version => v4.10.1 (published 2018-05)
30-12-2017 20:15Gyorgy RethyTarget Version => v4.10.1 (published 2018-05)
23-08-2019 09:39Tomas UrbanRelationship addedrelated to 0007860

Notes
(0014528)
Jacob Wieland - Spirent   
15-02-2017 11:33   
I am confused by this part of the proposal:

" Extend the list of in and out directions of the system adapter by adding the missing operations."

I have no idea what you mean specifically by that statement.
(0014529)
Tomas Urban   
15-02-2017 12:15   
Detailed explanation:

The original sentence "...with the exception of the test system interface, where in identifies the direction of message sending or procedure call and out identifies the direction of message receive, get reply or catch exception from the point of view of the test component connected to the test system interface port."

The proposed sentence: "...with the exception of the test system interface, where the communication operations are seen from the point of view of the test component port mapped to the test system interface port. The in-list of the test system interface port contains messages or signatures for which the mapped component port allows the following operations: receive, trigger, getcall, reply or raise. The out-list of the test system interface port contains messages or signatures for which the mapped component port allows the following operations: send, call, getreply or catch."
(0014676)
Julien Deltour   
09-06-2017 08:35   
Please review the proposal
(0014685)
Tomas Urban   
09-06-2017 09:24   
I made several minor changes in the document. Please review and if you are fine with the resolution, you can mark the CR as resolved and assign it to Gyorgy for implementation.
(0014690)
Julien Deltour   
09-06-2017 09:50   
for consistency in restrictions rules, I have made two more changes. Please review
(0014693)
Tomas Urban   
09-06-2017 10:18   
The last revision contains only cosmetic changes and the resolution is ready to be added to the next version of the core language specification.
(0014971)
Gyorgy Rethy   
30-12-2017 20:15   
Implemented in draft V4.9.2