Title:
|
USING XSL TRANSFORMATIONS FOR JAVA CODE GENERATION OF ASN.1 DATA STRUCTURES |
Author(s):
|
Frank Lautenschläger , Peter Ebinger |
ISBN:
|
978-972-8924-56-0 |
Editors:
|
Nuno Guimarães and Pedro Isaías |
Year:
|
2008 |
Edition:
|
Single |
Keywords:
|
Code Generation, ASN.1, XSLT, Pipes and Filters, Parser Generator |
Type:
|
Full Paper |
First Page:
|
19 |
Last Page:
|
26 |
Language:
|
English |
Cover:
|
|
Full Contents:
|
click to dowload
|
Paper Abstract:
|
This article describes a system that automatically generates Java classes from a given declaration of Abstract Syntax
Notation One (ASN.1) data structures in order to code and decode the corresponding ASN.1 structures. The ASN.1
standard is a formal notation used for describing data transmitted by telecommunication systems. Whenever a new
telecommunications protocol is developed all previously undefined data structures have to be constructed, a process
requiring substantial programming resources to generate the translation code. Due to the iterative nature of this process
there is significant potential to automate this process.
Taking into consideration the complexity of ASN.1, the goal of this project was to develop a program design that was
modular in structure which would later allow for ease of extension. The forthcoming concept is based on the Pipes and
Filters design pattern which provides good expandability and flexible configuration, a model well suited to integrate a
template mechanism for the production of desired ASN.1 data types. The parser generator JavaCC and Extensible
Stylesheet Language Transformations (XSLT) are used as base technologies for the implementation of this concept,
whereas specific pipeline filters are implemented using XSL style sheets.
Each building block of the generation process is analyzed and assigned to an independent module (called filter).
Afterwards the implementation of the code generator is explained in connection with the concept mentioned above.
Prototype classes are defined as a basis for realizing different ASN.1 data types. Implementation of the defined concepts
uses the CODEC library, a Java library for coding and decoding ASN.1 data structures when implementing network
protocols or other tasks within cryptographic environments, e.g. X.509 certificates. |
|
|
|
|