LANSA開発環境では、RDML が多くの異なる目的に利用されます。次のような場面でRDMLが使用できます。
アプリケーション・プログラム(LANSAファンクション)、コンポーネント
これは最も典型的な使い方です。業務内容に沿った処理をRDMLで記述することになります。なお、Visual LANSAでコンポーネントを開発する場合は、コンポーネント用に特化したRDMLXコマンドを使います。
トリガー・ファンクション
データベースのトリガー・ファンクションの記述にも、可搬性に優れたRDMLを使います。これを第3世代言語 (例えば IBM i であれば RPG ) で記述したとすれば、別のデータベースに移行する場合、Cなど別の言語で書き直さなければならない可能性があります。
検証ファンクション
妥当性規則のうち、リポジトリに直接登録できない複雑なものは、RDMLで記述することになります。
組み込み関数
頻繁に実行される特別な処理を、組み込み関数として記述することができます。
ストアド・プロシージャ
ストアド・プロシージャも可搬性に優れた RDML が使えます。第3世代言語で記述したとすれば、別のデータベースに移行する場合、別の言語で書き直さなければならない可能性があります。
システム変数
これはLANSAファンクションからアクセスされる特別な変数です。日付、時刻、企業名などをシステム変数とすることができます。変数の値を決める処理を、RDMLで記述することになります。
RDMLプログラムは、クライアント側でもサーバー側でも動作します。抽象度が高く、特定のプラットフォームに依存しない形で、業務処理を記述できます。複数のプラットフォームにリポジトリを配布する場合、このプラットフォーム非依存性が重要な役割を果たします。