CSN.1

From Wikipedia, the free encyclopedia

In telecommunications and computer networking, Concrete Syntax Notation One (CSN.1) is a standard and flexible notation that describes data structures for representing, encoding, transmitting, and decoding data, specifically GPRS used for cell phones. Many examples of CSN.1 can be found in 3GPP 04.60.

Here is an example of a CSN.1 description of a message. If the first bit is 1, an apple structure follows, which is a 5-bit Apple code. If the first bit is 0, on the other hand, a 3-bit orange code, and a 2-bit peel type follow.

<Example> ::= { 1 <Apple struct> | 0 <Orange struct> } 0;

<Apple struct> ::= < Apple Code : bit(5) >;

<Orange struct> ::= <Orange Code : bit(3) > <PeelType: bit(2)>;

[edit] Advantages

  • The notation is very compact, compared to other languages like ASN.1
  • It is relatively simple to understand.

[edit] Disadvantages

  • Creating a compiler for the language is very difficult, because the language can include expressions that refer to any named elements previously decoded.
  • The CSN.1 structures listed in communication standards are not checked and are often filled with errors and non-standard notation.

[edit] See also