SDAI
   HOME

TheInfoList



OR:

ISO 10303-22 is a part of the ''implementation methods'' of
STEP Step(s) or STEP may refer to: Common meanings * Stairs#Step, Steps, making a staircase * Walking * Dance move * Military step, or march ** Marching Arts Films and television * Steps (TV series), ''Steps'' (TV series), Hong Kong * Step (film), ' ...
with the official title Standard data access interface or simply SDAI. SDAI defines an ''abstract''
Application Programming Interface An application programming interface (API) is a way for two or more computer programs to communicate with each other. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how t ...
(API) to work on application data according to a given data models defined in
EXPRESS Express or EXPRESS may refer to: Arts, entertainment, and media Films * '' Express: Aisle to Glory'', a 1998 comedy short film featuring Kal Penn * '' The Express: The Ernie Davis Story'', a 2008 film starring Dennis Quaid Music * ''Express'' ...
. SDAI itself is defined independent of a particular programming language.
Language binding In programming and software design, binding is an application programming interface (API) that provides glue code specifically made to allow a programming language to use a foreign library or operating system service (one that is not native to th ...
s exist for * Part 23 - ''
C++ C++ (pronounced "C plus plus") is a high-level general-purpose programming language created by Danish computer scientist Bjarne Stroustrup as an extension of the C programming language, or "C with Classes". The language has expanded significan ...
language binding of the standard data access interface'' * Part 24 - '' C binding of the standard data access interface'' * Part 27 - ''
Java Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's List ...
binding to the standard data access interface with Internet/Intranet extensions'' * The development of language bindings for FORTRAN and the
interface definition language interface description language or interface definition language (IDL), is a generic term for a language that lets a program or object written in one language communicate with another program written in an unknown language. IDLs describe an inter ...
(IDL) of
CORBA The Common Object Request Broker Architecture (CORBA) is a standard defined by the Object Management Group (OMG) designed to facilitate the communication of systems that are deployed on diverse platforms. CORBA enables collaboration between sys ...
were canceled. The original intent of SDAI and its bindings to programming languages was to achieve portability of software applications from one implementation to another. This was soon abandoned because there were only a few commercial implementations and they differed significantly in their detailed APIs. Today the term SDAI is sometimes used for many types of APIs supporting STEP, even if they only partially follow the strict functionality as defined in ISO 10303-22 and its implementation methods, or not at all. Part 35 of STEP (''Abstract test methods for SDAI implementations'') provides a formal way how to prove the conformance of an implementation with SDAI. The main components of SDAI are: * SDAI dictionary schema, a meta level EXPRESS schema to describe EXPRESS schemas * Managing objects ** SDAI session to control the whole SDAI environment for a single user/thread including optional transaction control ** SDAI repository the physical (typically) container to store SDAI models and Schema instances, e.g. a database ** SDAI model a subdivision of an SDAI repository, containing entity instance according to a particular EXPRESS schema ** Schema instance a logical grouping of one or several SDAI models, making up a valid population according to a particular EXPRESS schema * Operations ** to deal with the managing objects ** to create, delete and modify application data (entity instance, attribute values, aggregates and their members) ** to validate application data according to all the constraints and rules specified in EXPRESS


Major software vendors for SDAI and similar STEP-APIs


Eurostep

EPM Technology

LKSoftWare GmbH / JSDAI

Open Design Alliance STEP SDK
Open Design Alliance STEP SDK
PDTec AG
The Ecco Toolkit provides implementation of ISO 10303-11, -14, -21, -28.
STEP Tools, Inc


Open-source implementations of SDAI

Th
NIST STEP Class Library
is a
public domain The public domain (PD) consists of all the creative work A creative work is a manifestation of creative effort including fine artwork (sculpture, paintings, drawing, sketching, performance art), dance, writing (literature), filmmaking, ...
implementation of
ISO 10303-21 STEP-File is a widely used data exchange form of STEP. ISO 10303 can represent 3D objects in Computer-aided design (CAD) and related information. Due to its ASCII structure, a STEP-file is easy to read, with typically one instance per line. The ...
(ASCII data exchange files), -22(SDAI), -23 (C++ SDAI binding) using ISO 10303-11:1994. The development of the NIST STEP Class Library has been stopped in the late 1990s. SCL has been improved by the
BRL-CAD BRL-CAD is a constructive solid geometry (CSG) solid modeling computer-aided design (CAD) system. It includes an interactive geometry editor, ray tracing support for graphics rendering and geometric analysis, computer network distributed frameb ...
developers an
on github
under the
BSD license BSD licenses are a family of permissive free software licenses, imposing minimal restrictions on the use and distribution of covered software. This is in contrast to copyleft licenses, which have share-alike requirements. The original BSD lic ...
. SCL also has an experimental Python binding.
JSDAI
is a complete implementation of ISO 10303-22 and ISO 10303-27 under the Open Source license AGPL.


See also

*
List of STEP (ISO 10303) parts An incomplete list of parts making up STEP (ISO 10303): Descriptions methods * Part 1 - ''Overview and fundamental principles'' (1994). Unfortunately outdated, not covering the role of AICs and modules. * Part 11 - ''EXPRESS language reference ma ...

JSDAI


References

{{Reflist #022 *