The Standard Data Access Interface (SDAI) defines a low level application programming interface to EXPRESS defined data, such as STEP Application Protocols. STEP defines the set of general SDAI operations in ISO 10303-22. These operations are then implemented in a specific programming language by a language binding. SDAI bindings have been defined for C, C++, and Java.
Our ST-Developer product contains SDAI programming environments for C++ and C. These bindings can be used to build software that works with STEP data in object-oriented databases, relational databases, and traditional files. In addition, ST-Developer contains tools for information modeling and view definition, conformance testing, and legacy data migration.
The SDAI API is a low-level way for manipulating data based on EXPRESS (set attribute A with value B), so it can be used with any application protocol or other EXPRESS information model. The SDAI does not provide any functions that understand the higher-level semantics (get/set the owner of a product, get/set the length unit that applies to the product geometry).
Other, higher-level libraries have been built on top of the SDAI to provide those type of operation. In particular, the STEP-NC Machine product provides higher-level functions for working with STEP-NC AP-238 machining information.