JSDAI is an Application Programming Interface (API) for writing, reading and runtime manipulation of object oriented data defined by an EXPRESS based data model. Such models are widely used in STEP (ISO 10303), PLIB (ISO 13584) and other ISO, IEC and DIN standards.
Data can be validated according to the rules defined in an EXPRESS schema. Another practical usage of JSDAI is for object oriented data models, where a fast start-up is required to produce prototype to validate concepts (e.g. quality of datamodel).
Here are some key features of "JSDAI":
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:
· STEP File, ISO 10303-21
· STEP XML, ISO 10303-28
· SDAI File
· Local repositories
· Multi-user remote repositories via JSDAI Database
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.
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.
· 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.
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.
What's New in This Release: [ read full changelog ]
· The new JSDAI v4.2.0 provides enhanced integration with Eclipse, improved general validation of p21 files in general and new validation on ARM/XIM level for STEP files with a focus for AP210. Changes on the core runtime API allows to build up a hierachy of SchemaInstances and the database interface is optimized to work with many SdaiModels. One of the main enhancements for developers of ISO 10303 Application Modules (400 and 1000 series) are pre-configured compilation projects that directly reference the Express files out of stepmod-CVS (on www.sourceforge.net) and drawing of Express-G diagrams for these modules, underlying Integrated Resources (IR) and Application Interpreted Constructs (AIC). As before the complete JSDAI product with the exception of the database interface is available under the free open source license A-GPL.