Hello Paul,
 
-----Original Message-----
From: Paul Allen [mailto:[EMAIL PROTECTED]
Sent: Wednesday, March 12, 2003 9:58 PM
To: [EMAIL PROTECTED]
Subject: [ASN.1] ASN1 MAP questions

Hi all,

I'm trying to write layer 3 GSM messages based on the 3GPP TS 04.80.
In Annex A, there are a set of ASN.1 SS Protocols that I can use to generate layer 3 messages.
I've been having a few problems, trying to work out how certain ASN1 elements work.

1) I'm not sure how to approach CHOICE elements.

Sometimes I think I should use the tag value of the chosen element for the CHOICE and a length value of whole of the chosen element.(When the chosen element is SEQUENCE)
Other times it seems that the CHOICE element shouldn't have it's own tag or length values. (When the chosen element is NULL, INTEGER, OCTET STRING)

[Vasa] For Tagging concepts you may refer to the following link

http://www.larmouth.demon.co.uk/tutorials/tagging.ppt
[Vasa] Courtesy: Mr.Larmouth J

2) Is an element with zero length always a NULL type or can other types have zero length?


The problems I am having are with the following examples

Facility  Invoke=NotifySS(ss-code=CNAP, nameUnavailable)

Should this be 30 09 81 01 19 b4 04 80 02 82 00 (with callingName choice tag/le! ngth)[Vasa]  for BER 

[Vasa] This seems to be appropriate from the sructure you  illustrated below(removed by me)
or 30 07 81 01 19 b4 02 82 00 (without callingName choice tag/length)
[Vasa] This is missing the callingName choice tag !!  



The other example is Facility (ReturnResult=interrogateSS(ss-Status=12)

Should this be 80 03 80 01 0C (with interrogateSS-Res tag/length)
[Vasa] This is not proper! 0x80 0x01 0x0C will the job for BER encoding  
or 80 01 0C ([Vasa] " without interrogateSS-Res tag/length" 
---> ??? What is this  for??!!
 

[Vasa] If you want to have either basicServiceGroupList then it's slightly different.
   RESULT
      interrogateSS-Res CHOICE {
         ss-Status                 [0] IMPLICIT OCTET STRING (  SIZE (1 ) ),
         basicServiceGroupList     [2] IMPLICIT SEQUENCE  (  SIZE (1 .. 13 ) ) OF
            CHOICE {
               bearerService     [2] IMPLICIT OCTET STRING (  SIZE (1 ) ),
            &n! bsp;  teleservice       [3] IMPLICIT OCTET STRING (  SIZE (1 ) )},
              ....
             }
      .......
      }

[Vasa] In case of any modifications/correction, ASN.1 experts please let us know. 

 

Warm regards,

Vasa

Thanks for any help you can offer

Paul
 



With Yahoo! Mail you can get a bigger mailbox -- choose a size that fits your needs

Reply via email to