プロジェクトの基本機能は、メッセージの処理とルーティングであり、コラボレーションによって行われます。コラボレーションでメッセージを操作するには、メッセージの構造と形式に関する記述が必要です。この記述は、コラボレーション定義に組み込まれるオブジェクト型定義 (OTD) のインスタンスで具体化されます。
コラボレーションは、通常、特定の OTD の外部表現を含むメッセージを受信します。コラボレーションは、その OTD のインスタンスの unmarshal メソッドを使用してデータを解析し、階層データ構造を介してそのデータにアクセスできるようにします。次に、何らかの処理 (たとえば、データの一部を別の OTD インスタンスにコピーするなど) を実行します。最後に、ほかの OTD インスタンス上の marshal メソッドを呼び出して、そのデータ構造の内容をその後のトランスポートのために 1 つのシリアル化されたデータストリームとしてレンダリングします。
外部データソース自体に基づいて半自動的に OTD が生成される場合もありますが、それ以外の場合は、Netbeans IDE で提供されるツールを使用して OTD を作成する必要があります。