JSDAI features

This page gives an overview of the main features of the JSDAI toolkit and applications.

Standard conformance

JSDAI conforms to the following international standards:

  • ISO 10303-11, EXPRESS
  • ISO 10303-14, EXPRESS-X (under preparation)
  • ISO 10303-21, STEP File (all editions and features)
  • ISO 10303-22, Standard Data Access Interface SDAI
  • ISO 10303-27, Java binding to the SDAI
  • ISO 10303-28, STEP XML
  • ISO 10303-35, SDAI conformance test

Application Programming Interfaces (API)

JSDAI supports in parallel four different APIs which are tightly related with each other:

  • Early binding: For each EXPRESS entity a dedicated Java class and interface with dedicated access methods for each entity attribute is available.
  • SDAI dictionary: An API on meta level to query schema/data model information at runtime.
  • Late binding: Generic Java classes for every kind of EXPRESS entity and methods to access attribute values.
  • ARM-AIM mapping: Operations to switch between ARM and AIM data models (STEP specific).

Data storage and exchange

STEP application data can be stored and exchanged in a various of ways:

Data handling and transaction control

As a fully conformant application JSDAI takes full advantage of the SDAI concepts to organize and control application data with essential extensions:

  • Separation of physical (SdaiRepository) and logical grouping (Schema Instance) of application instances.
  • Workspace concept (SchemaInstance + SdaiModel) to control access rights and logical grouping of data.
  • Direct support of distributed data between several repositories for reuse in several workspaces.
  • Explicit support of AP-Interoperability (between different schemas) by using EXPRESS short forms.
  • Full transaction support controled by commit and abort operations.
  • For multi-user support SDAI transactions are mapped to DB transactions.

Express Compiler

The JSDAI Express Compiler makes any valid EXPRESS schema (ISO 10303-11) available for the JSDAI Runtime:

  • Parses EXPRESS and reports syntax errors;
  • Generates Java classes, interfaces and dictionary data for JSDAI Runtime;
  • Supports expressions used in procedures, functions, derived attributes and where rules;
  • Direct support of the original EXPRESS short forms (USE/REFERENCE FROM). No need to rely on the derived long forms;
  • Used to build the JSDAI Library;
  • ExpressDoc tool to generate HTML documentation for one or several related Express schemas.

JSDAI Library

Includes practically all relevant Express schemas from STEP and PLIB standards.

  • Includes more than 100 EXPRESS schemas;
  • AIM schemas are based on EXPRESS short forms;
  • Includes ARM and extended ARM schemas for direct implementation;
  • HTML documentation with index accross all AIM types.

3D Viewer module

The JSDAI 3D Viewer makes STEP 3D geometry as defined in ISO 10303-42 and their specialization in the Application Interpreted Constructs (AIC 5xx) available for viewing by using Java 3D.

  • Includes tessellation (triangulation) of the provided geometry. No need to rely on other geometric toolkits.
  • Wireframe and solid representation of ABREPs and manifold surfaces.
  • Picking and highlighting of components, surfaces, edges.
  • Debug application.
  • Enhanced user controls for viewing, including making components transparent, or invisible, clipping, etc.

STEP-Book

STEP-Book is a framework used to build up end user applications, working on STEP database using JSDAI.

  • Operates in standalone mode or as client server application via web-browser;
  • An XML driven engine to build graphical user interfaces (GUI), supporting underlying business logic;
  • Provides full viewing and editing support, including support for wizards;
  • A set of standardized controls are provided such as tables, trees, linked fields, etc. All controls can be extended by Java classes to support custom behavior;
  • Support for multi-language user interface;
  • Optional automatic generation of pages for each EXPRESS entity for initial start of development;
  • Used by IDA-STEP up to v3, STEP-Book AP210 and others;

Supported platforms

As true Java toolkit and applications, JSDAI is able to run on any Java platform supporting:

  • Java Runtime Environment (JRE) 1.4.
  • older versions of JSDAI are available for JRE 1.2 and 1.3.
  • Java 3D for JSDAI 3D viewer.

SdaiEdit and SdaiTerm

Low level tools to edit, and debug application data:

  • SdaiTerm running in a terminal mode.
  • SdaiEdit, a GUI enabled editor to view and manipulate data.