ASN.1

Frequently Asked Questions



The following are frequently asked questions and answers about the Talura ASN.1 compiler (TACO) and Talura ASN.1 run-time engine (TARE).


Question:
Are all parts of ASN.1 covered?

Answer:
No, but we are working on it.
From a pure BNF-syntax point of view, it is covered.
Most of the semantics are covered too.
The development focus on the most commonly used ASN.1 constructions and on feedback from our customers about their needs.
If you download our demos, you can try the tools yourself.


Question:
Is Information Object Specification (X.681) supported?

Answer:
Information Object Specification is supported.

Information Objects are typically use to define types and values that can later be used e.g. in relation to Constraints and in particular TableConstraints.

VariableTypeValueFieldSpec and VariableTypeValueSetFieldSpec may cause problems at the moment. Please let us know if you experience such problems.


Question:
Is Constraint Specification (X.682) supported?

Answer:
GeneralConstraint specified in X.682 is supported.

UserDefinedConstraint:
Templates are generated for the UserDefinedConstraint.
Naturally the 'user' must fill-in some additional code to reflect the UserDefinedConstraint.
If the 'user' fails to do so, a 'warning' will be given at compile-time.

TableConstraint:
Requires simple post processing. Please ask for details.

Be aware that constraints are NOT supported by the demo-version.


Question:
Is Parameterization of ASN.1 Specification (X.683) supported?

Answer:
Yes.


Question:
Is the Remote Operations (X.880) (ROS) Information Objects Specification supported?
(ROS-OBJECT-CLASS, CONTRACT, CONNECTION-PACKAGE, OPERATION-PACKAGE, OPERATION and ERROR)

Answer:
Yes.
ROS is an example of use of Information Object Class and other parts of ASN.1.
In the 'old days' when MACROs existed, some compilers supported some uses of macros simply by adding specific code in the compiler and therefore some compilers had built-in support for ROS.


Question:
Is the output generated by the Talura ASN.1 compiler portable?

Answer:
Yes
The generated output follows the
ISO-C99 standard.
The API, TARE etc. are all ISO-C99 compliant.

If you have chosen to use another programming language than 'C', you will in many cases be able to call C-functions from that language too.

If you have problems regarding portability, please let us know. With joined forces, we'll find a satisfying solution.


Question:
Can it be used for real-time applications?

Answer:
Yes.
The run-time product is prepared for POSIX thread handling and scheduling.
Thread handling and scheduling on operating systems not supporting POSIX may cause problems.
(POSIX threads and scheduling are supported on most relevant operating systems for real-time applications, including Unix and winNT.)


Question:
Is it possible to encode/decode directly to/from files without having to load the entire file into memory?

Answer:
Yes.
A special version is available that can work on files (seek-able binary streams).


Question:
Are the products Open Source?

Answer:
No.
Our software is not published under one of these licences simply because this may not fit into our customers need. We make licences based on agreements.
(A number of our customers would not like it, if our software was distributed under e.g. GPL.)

Some providers claim that their ASN.1 products are "Open Source". This may of cause be true, but you should take a look at the Open Source Definition and Categories of Free and Non-Free Software to 'validate' the statements.


Copyright © 1996-2024 Talura ApS