知識ベース

ISO 10303-22

ISO 10303-22は、正式なタイトルである標準データアクセスインターフェイスまたは単にSDAIを 使用したSTEPの実装方法の一部です。

SDAIは、EXPRESSで定義された特定のデータモデルに従ってアプリケーションデータを処理する抽象アプリケーションプログラミングインターフェイス(API)を定義します。 SDAI自体は、特定のプログラミング言語から独立して定義されています。言語バインディングが存在します

  • パート23-標準データアクセスインターフェイスのC ++言語バインディング
  • パート24- 標準データアクセスインターフェイスのCバインディング
  • パート27-インターネット/イントラネット拡張機能を備えた標準データアクセスインターフェイスへのJavaバインディング
  • FORTRANの言語バインディングとCORBAのインターフェイス定義言語(IDL)の開発はキャンセルされました。

SDAIとそのプログラミング言語へのバインドの本来の目的は、ある実装から別の実装へのソフトウェアアプリケーションの移植性を実現することでした。商用実装は数個しかなく、詳細なAPIが大きく異なっていたため、これはすぐに中止されました。今日、SDAIという用語は、ISO 10303-22とその実装方法で定義されている厳密な機能に部分的にしか従わない場合でも、STEPをサポートするすべての種類のAPIに使用される場合があります。 STEPのパート35( SDAI実装の抽象テスト方法 )は、 SDAIの実装の適合性を証明する方法を正式に提供します。

SDAIの主なコンポーネントは次のとおりです。

  • SDAI辞書スキーマ 、EXPRESSスキーマを記述するメタレベルEXPRESSスキーマ
  • オブジェクトの管理
    • オプションのトランザクション制御を含む、単一のユーザー/スレッドのSDAI環境全体を制御するSDAIセッション
    • SDAIリポジトリー SDAIモデルおよびスキーマインスタンス(データベースなど)を保管するための物理(通常)コンテナー
    • SDAIは 、特定のEXPRESSスキーマに従ったエンティティインスタンスを含むSDAIリポジトリの下位区分をモデル化します
    • スキーマインスタンス特定のEXPRESSスキーマに従って有効な母集団を構成する、1つまたは複数のSDAIモデルの論理グループ
  • オペレーション
    • 管理オブジェクトに対処する
    • アプリケーションデータ(エンティティインスタンス、属性値、集計、およびそのメンバー)を作成、削除、および変更するため
    • EXPRESSで指定されたすべての制約とルールに従ってアプリケーションデータを検証する

SDAIおよび類似のSTEP-APIの主要なソフトウェアベンダー

  • EPMテクノロジー
  • ユーロステップ
  • LKSoftWare GmbH / JSDAI
  • PDTec AG:Ecco Toolkitは、ISO 10303-11、-14、-21、-28の実装を提供します。
  • STEP Tools、Inc

SDAIのオープンソース実装

NIST STEPクラスライブラリは、ISO 10303-11:1994を使用したISO 10303-21(ASCIIデータ交換ファイル)、-22(SDAI)、-23(C ++ SDAIバインディング)のパブリックドメイン実装です。 NIST STEPクラスライブラリの開発は、1990年代後半に停止されました。 SCLは、BRL-CAD開発者とBSDライセンスの下のgithubで改善されました。 SCLには、実験的なPythonバインディングもあります。

JSDAIは、オープンソースライセンスAGPLに基づくISO 10303-22およびISO 10303-27の完全な実装です。