ETSI's Bug Tracker - Part 01: TTCN-3 Core Language
View Issue Details
0005417Part 01: TTCN-3 Core LanguageNew Featurepublic29-10-2009 15:3216-12-2011 05:42
tepelmann 
Ina Schieferdecker 
highmajoralways
closedfixed 
v4.3.1 (published 2011-06) 
v4.4.1 (published 2012-04)v4.4.1 (published 2012-04) 
missing
     
0005417: Support of parametrized map/unmap operation for full dynamic mapping
In many situations in the testing world configuration parameters for connections are needed in the real world.
In TTCN-3 the establishment of a connection is announced by using the map operation. This allows dynamic mapping inside the behaviour of a test and should be an advantage in comparison with TTCN-2.
Currently this can be used in all cases where no additional configuration parameters are needed for establishing a connection(in the adaptation). In some cases static configuration parameters like property files are efficient enough, however for fully dynamic configuration and establishing of connections an extension to the existing map operation is needed.
We propose to extend the existing map operation with an optional parameter containing a configuration value. Attached you will find the modified recommendation including proposals for the map statement and additionally for the port type declaration.
The benefit of the proposal would be the full support of dynamic configuration!

We include the modified recommendations for reference(including change bars).
A short example of our proposal:
var MyConfigType MyConfig := { option := 1, lock := false};
     :
map(mtc:Port4, system:PCO2) param MyConfig);

type port PortTypeIdentifier message "{"
        { ( in | out | inout ) { MessageType [ "," ] }+ ";" }
        [ map param "(" FormalPar {"," FormalPar} ")"]
        [ unmap param "(" FormalPar {"," FormalPar} ")"]
"}"
No tags attached.
related to 0005224closed Jens Grabowski Ext Pack: Config & Deployment Support (ES 202 781) Introducing dual faced ports 
parent of 0005985closed Ina Schieferdecker Part 05: TTCN-3 Runtime Interface  Support of parametrized map/unmap operation for full dynamic mapping 
related to 0002105closed Ina Schieferdecker Part 01: TTCN-3 Core Language address should also be bind to port type 
related to 0005923closed Ina Schieferdecker Part 01: TTCN-3 Core Language BNF (rules 50 and 58) in appendix A and port type definition chapter 6.2.9 do not match 
zip es_20187305v040101p_cr_MapParam.zip (282,352) 29-10-2009 15:33
http://oldforge.etsi.org/mantis/file_download.php?file_id=2272&type=bug
zip es_20187306v040101p_crMapParam.zip (1,281,016) 29-10-2009 15:33
http://oldforge.etsi.org/mantis/file_download.php?file_id=2273&type=bug
zip es_20187301v040101p_crMapParam_v2.zip (900,534) 25-03-2010 14:52
http://oldforge.etsi.org/mantis/file_download.php?file_id=2372&type=bug
zip es_20187305v040101p_cr_MapParam_v2.zip (283,102) 25-03-2010 14:52
http://oldforge.etsi.org/mantis/file_download.php?file_id=2373&type=bug
zip CR5417-part1.zip (705,676) 03-09-2010 12:08
http://oldforge.etsi.org/mantis/file_download.php?file_id=2441&type=bug
zip es_20187301v040101p_crMapParam.zip (700,520) 25-05-2011 06:57
http://oldforge.etsi.org/mantis/file_download.php?file_id=2477&type=bug
? core.bnf (55,513) 26-05-2011 12:51
http://oldforge.etsi.org/mantis/file_download.php?file_id=2502&type=bug
zip es_20187305v040101p_cr_MapParam_v3.zip (252,255) 30-11-2011 12:48
http://oldforge.etsi.org/mantis/file_download.php?file_id=2619&type=bug
zip es_20187306v040101p_crMapParam_v2.zip (1,137,061) 30-11-2011 16:15
http://oldforge.etsi.org/mantis/file_download.php?file_id=2622&type=bug
zip es_20187306v040101p_crMapParam_v3.zip (1,131,555) 01-12-2011 09:26
http://oldforge.etsi.org/mantis/file_download.php?file_id=2632&type=bug
zip es_20187306v040101p_crMapParam_v4.zip (1,139,492) 01-12-2011 10:26
http://oldforge.etsi.org/mantis/file_download.php?file_id=2636&type=bug
zip es_20187305v040101p_cr_MapParam_v4.zip (252,774) 01-12-2011 10:26
http://oldforge.etsi.org/mantis/file_download.php?file_id=2637&type=bug
Issue History
29-10-2009 15:32tepelmannNew Issue
29-10-2009 15:32tepelmannStatusnew => assigned
29-10-2009 15:32tepelmannAssigned To => Ina Schieferdecker
29-10-2009 15:32tepelmannFile Added: es_20187301v040101p_crMapParam.zip
29-10-2009 15:32tepelmannClause Reference(s) => missing
29-10-2009 15:32tepelmannSource (company - Author) =>
29-10-2009 15:33tepelmannFile Added: es_20187305v040101p_cr_MapParam.zip
29-10-2009 15:33tepelmannFile Added: es_20187306v040101p_crMapParam.zip
04-01-2010 13:52Ina SchieferdeckerRelationship addedrelated to 0005224
04-01-2010 13:53Ina SchieferdeckerNote Added: 0009157
04-01-2010 13:53Ina SchieferdeckerTarget Version => Edition 5.1.1 (not yet published)
22-03-2010 17:29Gyorgy RethyAssigned ToIna Schieferdecker =>
22-03-2010 17:29Gyorgy RethyStatusassigned => new
23-03-2010 12:45Gyorgy RethyAssigned To => Jacob Wieland - Spirent
23-03-2010 12:45Gyorgy RethyPrioritynormal => low
23-03-2010 12:45Gyorgy RethyStatusnew => assigned
23-03-2010 12:45Gyorgy RethySummarysupport of parametrized map/uinmap operation for full dynamic mapping => Support of parametrized map/unmap operation for full dynamic mapping
24-03-2010 08:56Jacob Wieland - SpirentRelationship addedrelated to 0002105
25-03-2010 14:52Jacob Wieland - SpirentFile Added: es_20187301v040101p_crMapParam_v2.zip
25-03-2010 14:52Jacob Wieland - SpirentFile Added: es_20187305v040101p_cr_MapParam_v2.zip
25-03-2010 14:53Jacob Wieland - SpirentNote Added: 0009310
25-03-2010 15:00Jacob Wieland - SpirentAssigned ToJacob Wieland - Spirent => Gyorgy Rethy
01-07-2010 09:43Gyorgy RethyNote Added: 0009441
01-07-2010 09:44Gyorgy RethyNote Edited: 0009441
01-07-2010 09:48Gyorgy RethyNote Edited: 0009441
02-09-2010 10:13Gyorgy RethyNote Added: 0009692
02-09-2010 10:13Gyorgy RethyAssigned ToGyorgy Rethy => Jacob Wieland - Spirent
02-09-2010 11:27Jacob Wieland - SpirentNote Added: 0009697
03-09-2010 12:08Jacob Wieland - SpirentFile Added: CR5417-part1.zip
03-09-2010 12:08Jacob Wieland - SpirentNote Added: 0009709
03-09-2010 12:08Jacob Wieland - SpirentAssigned ToJacob Wieland - Spirent => Ina Schieferdecker
03-09-2010 12:11Jacob Wieland - SpirentStatusassigned => resolved
03-09-2010 12:11Jacob Wieland - SpirentFixed in Version => Edition 4.3.1 (not yet published)
03-09-2010 12:11Jacob Wieland - SpirentResolutionopen => fixed
14-12-2010 14:48Ina SchieferdeckerNote Added: 0009966
14-12-2010 14:49Ina SchieferdeckerNote Added: 0009967
14-12-2010 14:50Ina SchieferdeckerFile Added: core.bnf
14-12-2010 14:51Ina SchieferdeckerStatusresolved => closed
23-05-2011 08:46Ina SchieferdeckerStatusclosed => feedback
23-05-2011 08:46Ina SchieferdeckerResolutionfixed => reopened
23-05-2011 08:46Ina SchieferdeckerNote Added: 0010003
24-05-2011 17:09Gyorgy RethyNote Added: 0010036
24-05-2011 17:10Gyorgy RethyNote Edited: 0010036
24-05-2011 17:12Gyorgy RethyNote Edited: 0010036
24-05-2011 17:12Gyorgy RethyStatusfeedback => assigned
24-05-2011 19:33Gyorgy RethyPrioritylow => high
25-05-2011 06:33Jacob Wieland - SpirentFile Deleted: es_20187301v040101p_crMapParam.zip
25-05-2011 06:57Jacob Wieland - SpirentFile Added: es_20187301v040101p_crMapParam.zip
25-05-2011 07:36Jacob Wieland - SpirentFile Deleted: core.bnf
25-05-2011 07:36Jacob Wieland - SpirentFile Added: core.bnf
25-05-2011 07:41Jacob Wieland - SpirentNote Added: 0010042
26-05-2011 12:50Jacob Wieland - SpirentFile Deleted: core.bnf
26-05-2011 12:51Jacob Wieland - SpirentFile Added: core.bnf
26-05-2011 12:52Jacob Wieland - SpirentNote Added: 0010084
07-07-2011 12:40Jacob Wieland - SpirentNote Added: 0010213
07-07-2011 12:40Jacob Wieland - SpirentProduct VersionEdition 4.1.1 Published 2009-06-02 => Edition 4.3.1
27-09-2011 14:06Gyorgy RethyFixed in VersionEdition 4.3.1 =>
27-09-2011 14:06Gyorgy RethyTarget VersionEdition 4.3.1 => Edition 4.4.1
29-09-2011 09:45Ina SchieferdeckerRelationship addedrelated to 0005923
30-11-2011 12:47Ina SchieferdeckerNote Added: 0010441
30-11-2011 12:48Ina SchieferdeckerFile Added: es_20187305v040101p_cr_MapParam_v3.zip
30-11-2011 16:08Ina SchieferdeckerNote Added: 0010449
30-11-2011 16:15Ina SchieferdeckerFile Added: es_20187306v040101p_crMapParam_v2.zip
30-11-2011 16:17Ina SchieferdeckerAssigned ToIna Schieferdecker => Jacob Wieland - Spirent
01-12-2011 09:26Jacob Wieland - SpirentFile Added: es_20187306v040101p_crMapParam_v3.zip
01-12-2011 09:28Jacob Wieland - SpirentNote Added: 0010456
01-12-2011 09:28Jacob Wieland - SpirentAssigned ToJacob Wieland - Spirent => Ina Schieferdecker
01-12-2011 10:18Ina SchieferdeckerNote Added: 0010460
01-12-2011 10:26Ina SchieferdeckerFile Added: es_20187306v040101p_crMapParam_v4.zip
01-12-2011 10:26Ina SchieferdeckerFile Added: es_20187305v040101p_cr_MapParam_v4.zip
01-12-2011 11:08Ina SchieferdeckerNote Added: 0010466
01-12-2011 11:08Ina SchieferdeckerStatusassigned => resolved
01-12-2011 11:08Ina SchieferdeckerResolutionreopened => fixed
01-12-2011 11:08Ina SchieferdeckerFixed in Version => Edition 4.4.1
01-12-2011 11:09Ina SchieferdeckerStatusresolved => closed
16-12-2011 05:42Ina SchieferdeckerIssue cloned: 0005985
16-12-2011 05:42Ina SchieferdeckerRelationship addedparent of 0005985

Notes
(0009157)
Ina Schieferdecker   
04-01-2010 13:53   
Needs to be discussed in relation to 5224, hence postponed to 2010.
(0009310)
Jacob Wieland - Spirent   
25-03-2010 14:53   
uploaded corrected versions of part 1 and 3. No corrections for part 4 were necessary. Ready for integration into the standard, if approved.
(0009441)
Gyorgy Rethy   
01-07-2010 09:43   
(edited on: 01-07-2010 09:48)
It is OK up to know, some addition is needed: we specify all "parameterizable" objects and forms of parameterization in clause 5.4, this should also be included there.

I haven't seen the statement the map and unmap operations shall have in value parameters only.

CR5224 on dual-faced ports are set as a related CR but there is only a loose connection between them. CR5224 is about handling situations like this:
1) User tests something above TCP transport and obviously using a TCP adapter. His/her test cases and test data are using the ASPs of the TCP adapter. Then the SUT changes and he/she has to execute the same test cases using e.g. SCTP transport. The SCTP adapter has different ASPs defined than the TCP adapter. In this case the mapping between the two sets of ASPs could be done in a dual-faced port, instead of re-writing the already verified and running test cases.
2) Protocol A carries encoded messages of protocol B, for example a web application carried by SOAP carried by HTTP over TCP. The user is testing the application but from the point of view of the test system, HTTP (or SOAP in case of an HTTP adapter) is the "upper layer protocol", CD will encode/decode only HTTP (or SOAP) messages but not the Application messages. This means that from the point of view of the user no matching is possible by a receive statement (as he/she wants to match the Application messages, which are embedded in an encoded form in the received SOAP or HTTP messages). Dual-faced ports it can handle the whole encoding/decoding chain, i.e. mapping Application ASPs to SOAP/HTTP ASPs and calling external functions for message encoding/decoding, thus the user would be able to send/receive the Application messages directly in his/her test case code.

These are real-life examples, coming from everyday practice. The problem is so real that Titan has implemented a vendor-specific solution for the problem.

(0009692)
Gyorgy Rethy   
02-09-2010 10:13   
Could you look at this pls.
(0009697)
Jacob Wieland - Spirent   
02-09-2010 11:27   
both in and out value parameters are allowed by the proposal. The restriction to value parameter unfortunately can only be seen in the BNF and syntactic description, so maybe this should still be added as a restriction.

The relation to CR5224, though loose, is still there and thus needs to be considered (there), as for port composition, of course, the map/unmap parameters also need to be translated.
(0009709)
Jacob Wieland - Spirent   
03-09-2010 12:08   
added missing sentence
(0009966)
Ina Schieferdecker   
14-12-2010 14:48   
Implemented basically as proposed (just added the syntactic structure for unmap in 21.1.2)
(0009967)
Ina Schieferdecker   
14-12-2010 14:49   
extended the bnf - see uploaded bnf file
(0010003)
Ina Schieferdecker   
23-05-2011 08:46   
The handling of map/unmap parameters in TRI is not yet added. An agreement is needed how to do it.
(0010036)
Gyorgy Rethy   
24-05-2011 17:09   
(edited on: 24-05-2011 17:12)
in Part-1: change the BNF that address, map param, unmap param, in/out message lists could be in any order. Part-5 and part-6 portions to be completed.

(0010042)
Jacob Wieland - Spirent   
25-05-2011 07:41   
changed es_20187301v040101p_crMapParam.zip and core.bnf to allow Port Attributes in any order.

added 3 new rules in core.bnf at the end (because of numbering), please use the tool to shift them to the right position (if possible)

I designed the rules in a way that also easily allows adding additional port attributes to be added (i.e. the address type from CR2105)
(0010084)
Jacob Wieland - Spirent   
26-05-2011 12:52   
uploaded grammar with the right order/numbering
(0010213)
Jacob Wieland - Spirent   
07-07-2011 12:40   
I've changed the Product Version to 4.3.1 as 4.1.1 was obviously wrong (at least it cannot be found in 4.1.1 or 4.2.1, but can be found in 4.3.1.)

I think we should include the still necessary changes also in 4.4.1 (or whatever the next interim version is called) as up till now this is inconsistent grammar-wise in the 4.3.1 version.
(0010441)
Ina Schieferdecker   
30-11-2011 12:47   
TRI extension implemented with small editorial changes.
(0010449)
Ina Schieferdecker   
30-11-2011 16:08   
TCI extension updated:

- TCI operations take tciParameter
- Logging operations log also potential encoder failures
- parameter names unified: parameterList for tciParameterList and tciPars/triPars for logging operations

Please check es_20187306v040101p_crMapParam_v2
(0010456)
Jacob Wieland - Spirent   
01-12-2011 09:28   
changed some references to TciParameterList to TciParameterListType according to the surrounding mapping.
(0010460)
Ina Schieferdecker   
01-12-2011 10:18   
STF decided to name the operations

triMapParam and triUnmapParam in TRI

and

tciMapParamReq, tciMapParam, tciUnmapParamReq, tciUnmapParam in TCI
(0010466)
Ina Schieferdecker   
01-12-2011 11:08   
TRI updated and TCI extended accordingly