ASN.1/Java Runtime Package Overview
Contents
Overview
The OSS runtime package includes the following:
- The ASN.1/Java universal classes
- A Java package (created by the ASN.1 Java compiler). Its name is derived from the name of the last input .asn file or the name specified with the -output option.
Here are some of the features available with the runtime package:
- Printing of ASN.1 values
- Implementing coding services for BER, CER, DER, JSON, OER, C-OER, PER, XER, CXER, E-XER, encoding rules
- Constraint checking
For information about individual classes, see the OSS TOED API or OSS SOED API section.
The runtime library classes in the .jar files in the lib directory of the OSS ASN.1 Tools for Java installation folder are different. The library used at runtime must match the Java class generating option that was specified while running ASN.1 compiler, as follows:
| Command-line option | Class library file |
|---|---|
| -soed (default) | oss.jar |
| -soed (default) -lean | osslean.jar |
| -toed | osstoed.jar |
Limitations
| Encoding Rules | Limitations |
|---|---|
| DER | There is no support for encoding a SET OF type with a ValueInFile directive (HugeSetOf). |
| CER | There is no support for the ValueInFile compiler directive. |
| JSON | There is no support for:
|
| OER/C-OER | There is no trace support for the OERCoder/COERCoder with the TOED runtime. Strict constraint validation is not available with the TOED runtime. The OER/C-OER TOED does only basic checks of the values that are passed to the encoder. For integer types, the encoder ensures that the value fits the number of octets computed from the subtype constraints. For restricted KMC character strings, BIT STRINGs and OCTET STRINGs that are constrained to a fixed size, the encoder ensures that the length of the value matches the fixed size. The OER/C-OER TOED provides limited support for automatic coding of BIT STRINGs and OCTET STRINGs with contents constraint. Automatic coding is supported only when a contents constraint omits the ENCODED BY clause. The following compiler directives are not supported:
|
| PER | There is no support for the DeferDecoding compiler directive. |
| XER | There is no support for:
|
| E-XER | There is no support for:
|
| Other limitations |
In some cases, the ASN.1 compiler generates a huge amount of Java code, which might cause the Java compiler to report a code too large error. The error can occur in the following situations:
|
SOED versus TOED
The following table summarizes the important differences between SOED and TOED.
| Feature | SOED | TOED |
|---|---|---|
| Command-line options |
The following command-line options are ignored:
|
|
| Directives |
The following directives are ignored:
|
|
| Runtime Packages |
The UNSIGNED class is not present in the SOED com.oss.asn1 package. The following interfaces are not present in the SOED com.oss.asn1 package:
|
Generic applications that rely on using the JIA API are not compatible with the TOED runtime. The TOED runtime currently provides support for BER, DER, JSON, OER, C-OER, PER Aligned, PER Unaligned, XER, and CXER. The following classes are not present in the TOED com.oss.asn1 package:
The following interfaces are not present in the TOED com.oss.asn1 package:
The following classes are not present in the TOED com.oss.util package:
The com.oss.storage package is not present in the TOED runtime. The com.oss.metadata package is reduced and is intended only for internal use in the TOED runtime. |
| Java Representations |
The following ASN.1 types are represented differently when compiled for the TOED runtime:
|
|
| Coding Services |
The following coding services are not available with the TOED runtime:
|
Version Information
The JSON encoding rules are supported in the SOED runtime in version 7.0 and later.
This documentation applies to the OSS® ASN.1 Tools for Java release 7.1 and later.
Copyright © 2025 OSS Nokalva, Inc. All rights reserved.
No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by any means electronic, mechanical, photocopying, recording or otherwise, without the prior permission of OSS Nokalva, Inc.
Every distributed copy of the OSS® ASN.1 Tools for Java is associated with a specific license and related unique license number. That license determines, among other things, what functions of the OSS ASN.1 Tools for Java are available to you.

