ETSI's Bug Tracker - Part 07: Using ASN.1 with TTCN-3
View Issue Details

ID | Project | Category | View Status | Date Submitted | Last Update
0005348 | Part 07: Using ASN.1 with TTCN-3 | Clarification | public | 14-09-2009 11:21 | 19-12-2012 13:42

Reporter | Gyorgy Rethy |
Assigned To | Gyorgy Rethy |
Priority | low | Severity | minor | Reproducibility | have not tried
Status | closed | Resolution | fixed |
Platform |  | OS |  | OS Version |
Product Version |  |
Target Version | v4.5.1 (published 2013-04) | Fixed in Version | v4.5.1 (published 2013-04) |
Clause Reference(s) | 9.1
Source (company - Author) | L.M.Ericsson

Summary | 0005348: Transforming set operations in subtype definitions
Description | ASN.1 allows constructing subtypes using set operations; It shall be specified in the transformation rules, how to transform such constraints to TTCN-3.
Steps To Reproduce |
Additional Information |
Tags | No tags attached.

Relationships

related to | 0005938 | closed | Gyorgy Rethy | Part 01: TTCN-3 Core Language | Type restriction by template list

Attached Files |

Issue History
Date Modified | Username | Field | Change
14-09-2009 11:21 | Gyorgy Rethy | New Issue |
14-09-2009 11:21 | Gyorgy Rethy | Status | new => assigned
14-09-2009 11:21 | Gyorgy Rethy | Assigned To | => Ina Schieferdecker
14-09-2009 11:21 | Gyorgy Rethy | Clause Reference(s) | => 9.1
14-09-2009 11:21 | Gyorgy Rethy | Source (company - Author) | => L.M.Ericsson
07-12-2009 14:36 | Ina Schieferdecker | Project | Part 01: TTCN-3 Core Language => Part 07: Using ASN.1 with TTCN-3
07-12-2009 14:36 | Ina Schieferdecker | Target Version | => Edition 4.2.1 (not yet published)
07-12-2009 14:36 | Ina Schieferdecker | Assigned To | Ina Schieferdecker => Gyorgy Rethy
18-03-2010 07:45 | Ina Schieferdecker | Target Version | Edition 4.2.1 (not yet published) => Edition 5.1.1 (not yet published)
22-03-2010 17:28 | Gyorgy Rethy | Assigned To | Gyorgy Rethy =>
22-03-2010 17:28 | Gyorgy Rethy | Status | assigned => new
23-03-2010 12:49 | Gyorgy Rethy | Assigned To | => Gyorgy Rethy
23-03-2010 12:49 | Gyorgy Rethy | Status | new => assigned
24-03-2010 12:23 | Gyorgy Rethy | Priority | normal => low
03-12-2010 10:25 | Gyorgy Rethy | Target Version | Edition 4.3.1 (not yet published) => Edition 4.3.2 (interim)
27-09-2011 14:07 | Gyorgy Rethy | Target Version | Edition 4.3.2 (interim) => Edition 4.4.1
30-11-2011 12:23 | Gyorgy Rethy | Assigned To | Gyorgy Rethy => Jacob Wieland - Spirent
30-11-2011 13:10 | Jacob Wieland - Spirent | Note Added: 0010443 |
30-11-2011 13:10 | Jacob Wieland - Spirent | Relationship added | related to 0005938
30-11-2011 13:19 | Jacob Wieland - Spirent | Assigned To | Jacob Wieland - Spirent => Gyorgy Rethy
10-08-2012 14:29 | Gyorgy Rethy | Note Added: 0011033 |
10-08-2012 14:33 | Gyorgy Rethy | Note Edited: 0011033 |
10-08-2012 14:34 | Gyorgy Rethy | Note Edited: 0011033 |
10-08-2012 14:34 | Gyorgy Rethy | Assigned To | Gyorgy Rethy => Tomas Urban
13-08-2012 12:56 | Jacob Wieland - Spirent | Note Added: 0011036 |
10-12-2012 16:45 | Tomas Urban | Note Added: 0011209 |
10-12-2012 16:45 | Tomas Urban | Assigned To | Tomas Urban => Ina Schieferdecker
10-12-2012 17:00 | Gyorgy Rethy | Target Version | Edition 4.4.1 Published 2012-04-01 => Edition 4.5.1
11-12-2012 14:01 | Ina Schieferdecker | Note Added: 0011225 |
11-12-2012 14:01 | Ina Schieferdecker | Assigned To | Ina Schieferdecker => Gyorgy Rethy
19-12-2012 13:42 | Gyorgy Rethy | Status | assigned => closed
19-12-2012 13:42 | Gyorgy Rethy | Resolution | open => fixed
19-12-2012 13:42 | Gyorgy Rethy | Fixed in Version | => Edition 4.5.1

Notes

(0010443)
Jacob Wieland - Spirent
30-11-2011 13:10

In ASN.1 there are basically three set operations to construct subtype constraints: UNION, INTERSECTION, EXCLUSION
UNION can be mapped to the "value"-list construct:
A UNION B -> (A, B)
INTERSECTION could be mapped to the following
(because A AND B == NOT (NOT A OR NOT B)):
A INTERSECTION B => complement(complement(A), complement(B))
EXCLUSION could be mapped to the following
(because A EXCEPT B == A AND NOT B):
A EXCEPT B => complement(complement(A), B)
So, any set expression should be mappable by using combinations of value-list and complement matching mechanism symbols.
This, of course, would preclude that value-list is in actuality template-list, i.e. that even in type definitions, template constructions beside values and ranges are permitted (see CR5938).

(0011033)
Gyorgy Rethy
10-08-2012 14:29 (edited on: 10-08-2012 14:34)

Considering the issue raised by the CR, my conclusion is that the way of handling set arithmetics doesn't need to be specified. Until the final result is the same, it shall be left as a tool implementation option. Therefore I just propose to add the paragraph below at the end of clause 9.1 (just after table 4):
"ASN.1 allows using set arithmethics in subtype constraints. In many cases these set arithmetics expressions shall be calculated before the translation to be able to convert the ASN.1 subtype into its associated TTCN-3 type. However, in some cases expressions can be translated to TTCN-3 in different ways; e.g. a UNION of consequtive integer values can be translated into a list of values, into a value range or a mixture of the two, while all these forms denote the same set of values. This standard leaves this choice open for tool implementations. The only requirement is that the resulted associated TTCN-3 type shall conform to this clause and clause 6 of ES 201 873 1 [1]."
Pls. review.

(0011036)
Jacob Wieland - Spirent
13-08-2012 12:56

sounds like a pragmatic approach

(0011209)
Tomas Urban
10-12-2012 16:45

I agree with the resolution proposed by GyÃ¶rgy. Assigned to Ina for implementation.

(0011225)
Ina Schieferdecker
11-12-2012 14:01

I agree as well - assigned to the editor for implementation