Кіріспе
ISO 10303 22 – STEP іске асыру әдістерінің бір бөлігі болып табылады, ресми атауы Standard data access interface немесе жай ғана SDAI. SDAI, EXPRESS-те анықталған белгілі бір дерек үлгілеріне сәйкес қолданба деректерімен жұмыс істеу үшін абстрактілі қолданба бағдарламалау интерфейсін (API) анықтайды. SDAI-нің өзі нақты бағдарламалау тіліне тәуелді емес. Тіл байланыстары бар:
23-бөлім – Стандартты деректерге қол жеткізу интерфейсінің C++ тіл байланысы
24-бөлім – Стандартты деректерге қол жеткізу интерфейсінің C байланысы
27-бөлім – Интернет/Интранет кеңейтулерімен Стандартты деректерге қол жеткізу интерфейсіне Java байланысы
FORTRAN және CORBA интерфейс анықтама тілі (IDL) үшін тіл байланыстарын жасау тоқтатылды. SDAI және оның бағдарламалау тілдеріне байланысының бастапқы мақсаты – бағдарламалық қолданбаларды бір іске асырудан екіншісіне ауыстыру мүмкіндігін қамтамасыз ету болды. Бірақ бұл көп ұзамай тоқтатылды, себебі коммерциялық іске асырулардың саны аз болды және олардың егжей-тегжейлі API-лары айтарлықтай ерекшеленді. Бүгінде SDAI термині STEP-ті қолдайтын көптеген API түрлеріне қолданылады, тіпті олар ISO 10303 22 және оның іске асыру әдістерінде анықталған қатаң функционалдықты толық орындамаса да, немесе мүлдем орындамаса да. STEP 35-бөлімі (SDAI іске асыруларына сәйкестікті тексерудің абстрактілі әдістері) – іске асырудың SDAI-ға сәйкестігін растаудың формалды тәсілін ұсынады. SDAI-ның негізгі компоненттері:
SDAI сөздік схемасы – EXPRESS схемаларын сипаттауға арналған метадеңгейлі EXPRESS схемасы
Басқару объектілері
SDAI сессиясы – бір пайдаланушы/жіп үшін SDAI ортасын басқару, соның ішінде қосымша транзакциялық басқару
SDAI репозиторийі – SDAI үлгілерін және схема инстанцияларын сақтауға арналған физикалық (әдетте) контейнер, мысалы, деректер базасы
SDAI үлгісі – SDAI репозиторийінің бөлімшесі, белгілі бір EXPRESS схемасына сәйкес нысан инстанцияларын қамтиды
Схема инстанциясы – бір немесе бірнеше SDAI үлгілерінің логикалық тобы, белгілі бір EXPRESS схемасына сәйкес жарамды жиынды құрайды
Операциялар
Басқару объектілерімен жұмыс істеу үшін
Қолданба деректерін (нысан инстанциясы, атрибут мәндері, агрегаттар және олардың мүшелері) жасау, жою және өзгерту үшін
EXPRESS-те көрсетілген барлық шектеулер мен ережелерге сәйкес қолданба деректерін тексеру үшін
ISO 10303 22 is a part of the implementation methods of STEP with the official title Standard data access interface or simply SDAI. SDAI defines an abstract Application Programming Interface (API) to work on application data according to a given data models defined in EXPRESS. SDAI itself is defined independent of a particular programming language. Language bindings exist for
Part 23 C++ language binding of the standard data access interface
Part 24 C binding of the standard data access interface
Part 27 Java binding to the standard data access interface with Internet/Intranet extensions
The development of language bindings for FORTRAN and the interface definition language (IDL) of CORBA 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
SDAI-дің ашық бастапқы кодындағы іске асырылуы
NIST STEP сыныптар кітапханасы – ISO 10303 21 (ASCII деректер алмасу файлдары), 22 (SDAI) және 23 (C++ SDAI байланысы) стандарттарын ISO 10303 11:1994 стандартын қолдана отырып, ашық лицензиямен іске асырылған нұсқасы. NIST STEP сыныптар кітапханасының әзірлемесі 1990 жылдардың соңында тоқтатылды. STEPcode (бұрын STEP сыныптар кітапханасы) BRL CAD әзірлеушілері github платформасында BSD лицензиясы бойынша жақсартылды. STEPcode-та сонымен қатар эксперименталды Python байланысы бар. JSDAI – Ашық бастапқы код лицензиясы AGPL бойынша ISO 10303 22 (SDAI) және ISO 10303 27 (Java SDAI байланысы) стандарттарының толыққанды іске асырылған нұсқасы.