OLE (Object Linking and Embedding)
【オー・エル・イー(オーレ)】
Windows環境において、アプリケーション間でのデータ連携を行えるようにするしくみ。OLEはWindows 3.1からシステムに実装され、Microsoftのアプリケーションなどを中心にサポートされた。
OLEの前身としてMicrosoftは、アプリケーション間での動的なデータ交換を可能にするDDE(Dynamic Data Exchange)を発表していたが、このDDEでは、データ送受信のメカニズムを定めただけで、送受信されるデータ自体については規定がなく、通信する双方のアプリケーション間で交換するデータの仕様などを決定するため、特定のアプリケーション同士でしか通信できない場合があった。
これに対しOLEでは、データの受信側アプリケーション(OLEコンテナと呼ばれる)ではなく、送信側アプリケーション(OLEサーバと呼ばれる)がデータの表示機能などを受け持つようにし、受信側アプリケーションではそのデータの表示方法などを意識しなくてすむので、汎用的なデータ交換が行えるようになった。
このようにOLEを利用することにより、他のアプリケーションのデータを別のアプリケーションのデータ内部に取り込むことができる。たとえばワードプロセッサの文書中に、スプレッドシートのデータやグラフデータを取り込むことが可能になる(このような文書は複合ドキュメントと呼ばれる)。
データを組み込む方法には、「エンベッド(embed)」と「リンク(link)」の2種類の方法がある。このうちエンベッドは、別アプリケーションのデータを静的に文書中に組み込む方式である。このエンベッドは、一見すると通常のカット&ペーストとよく似ているが、これとの違いは、元のアプリケーションとのリンク情報は残されており、複合ドキュメント中の組み込まれたデータ部分をマウスでダブルクリックすることで、元のアプリケーション(この場合ならスプレッドシート)が起動されることである。
一方のリンクでは、データそのものは組み込まれず、リンク情報だけが複合文書中に張り付けられる。このため組み込まれたデータを更新すると、複合文書中のデータも更新される。このとき、インプレス・アクティベーションと呼ばれる機能をサポートするアプリケーションなら、複合文書をアプリケーションで表示させたまま(この例なら、ワードプロセッサで文書を表示させたまま)、組み込まれたデータ部分をアクティブにすることで、ワードプロセッサのメニューなどを一時的にスプレッドシートのそれにして、直接スプレッドシートのデータを編集できる。
その後OLEは、インターネット環境も想定したActiveXテクノロジの一環として取り込まれ、現在ではOLEという呼称は使われなくなった。
Copyright (C) 2000-2007 Digital Advantage Corp.