
JIA API is a modular add-on for the OSS ASN.1 Tools for Java. It has been included since Version 1.5. JIA API stands for Java Interpretive ASN.1 Application Program Interface. It is a separate runtime library that allows manipulation of ASN.1 data in a generic way.
The OSS ASN.1/Pure Java Tools assume that your application code knows the type of the value that you wish to modify, instantiate, or examine. For the most part, applications using the OSS ASN.1/Pure Java Tools are fully aware of the type of the value to be modified, instantiated, or examined. However, there remain applications which cannot predict the type, which need (so to speak) generic access to data, for instance:
- generic browsers that need to display, edit, or validate an abstract value without prior knowledge of its type;
- learning tools that demonstrate encoding rules (one may interactively enter a value and examine its encoding in another window); and
- LAN analyzers where one can interactively decode the value and see its contents in another window.
Additionally, some applications may wish to work with the value "in terms of ASN.1", such as instantiating a value to provide the name of its ASN.1 type rather than the Java class name, or access a field of a SEQUENCE or SET providing the field name.
Additional JIA API features :
You can check which child components are optional and which are not.
You can edit the list of child components, such as delete the optional components.
You can easily change the value of a node and validate the change. This can be done using ASN.1 value notation or with Java values.
You can easily obtain both primitive and constructed types.
You can easily obtain any metadata information (tags, names, constraints, named numbers or bits, and so on).
The JIA API also includes an ASN.1 parser so that you can read in values in ASCII format. Every self-contained valid ASN.1 value notation is parseable. Self-contained means that each value does not reference other parts of the ASN.1 specification. So for example, a BOOLEAN value can be parsed if it is "TRUE", "FALSE", "T", "F", "0" or "1" (case insensitive).
An OCTET STRING is an Hstring ('12345'H) or a Bstring ('1010101'B). For a CHOICE value the parseable input is 'selector : value'.
Copyright © 2010 OSS Nokalva, Inc. All Rights Reserved.