(57)【要約】  端末に備えられるマルチメディアミドルウェアにおいて、メタデータを受信し、新たなサービスの追加、削除、及び変更を容易にし、ミドルウェアコンポーネントの保持及び管理を効率的にすることができるメタデータを使用するマルチメディアミドルウェア装置、制御方法、及び記憶媒体を提供する。開放型マルチメディア端末がマルチメディアコンテンツを処理する際に、マルチメディアミドルウェアサービスの名前、構成、バージョン、及びアプリケーションプログラミングインターフェース（ＡＰＩ）アップデートに関する情報を表現するためのマルチメディアミドルウェアサービス構造をメタデータの形態で構成する。その後、マルチメディアミドルウェアの標準サービス及び非標準サービスのリストを生成して管理する。
2009512058.tif 000002
【特許請求の範囲】
【請求項１】
マルチメディアアプリケーションを支援する端末のマルチメディアミドルウェア装置であって、
前記マルチメディアアプリケーションの実行のための少なくとも１つのマルチメディアミドルウェアサービスの構造情報としてミドルウェアアプリケーションプログラミングインターフェース（ＡＰＩ）情報を含むメタデータを受信するサービスメタデータ受信部と、
前記少なくとも１つのマルチメディアミドルウェアサービスのための前記メタデータに関連したサービス実現コードを取得するサービス実現コード取得部と、
前記受信されたメタデータから前記少なくとも１つのマルチメディアミドルウェアサービスのためのサービス実現コードを識別し、前記サービス実現コード取得部により取得されたサービス実現コードを対応するマルチメディアミドルウェアサービスに適用する動作を制御するサービス管理部と、
を含むことを特徴とするマルチメディアミドルウェア装置。
【請求項２】
前記サービスメタデータ受信部は、所定の通信ネットワークを介して接続されたマルチメディアアプリケーションプロバイダーのサーバから前記メタデータを受信することを特徴とする請求項１に記載のマルチメディアミドルウェア装置。
【請求項３】
前記サービスメタデータ受信部は、所定の記憶媒体を介して前記メタデータをダウンロードすることを特徴とする請求項１に記載のマルチメディアミドルウェア装置。
【請求項４】
前記メタデータは、前記ミドルウェアＡＰＩの設置、削除、及び更新情報のうちの少なくとも１つに対応する前記ミドルウェアＡＰＩの変更情報をさらに含み、
前記サービス管理部は、前記ミドルウェアＡＰＩの変更情報を対応するマルチメディアミドルウェアサービスに適用することを特徴とする請求項１に記載のマルチメディアミドルウェア装置。
【請求項５】
前記サービス管理部は、前記メタデータ及び前記サービス実現コードが標準サービス及び非標準サービスのうちの少なくとも１つに関連するか否かを確認するようにさらに構成されることを特徴とする請求項１に記載のマルチメディアミドルウェア装置。
【請求項６】
前記サービス管理部は、前記サービス実現コードが前記標準サービスに関連する場合に、前記サービス実現コードを対応するメタデータと比較することにより有効性を検証し、有効なサービス実現コードを対応するマルチメディアミドルウェアサービスに適用するようにさらに構成されることを特徴とする請求項５に記載のマルチメディアミドルウェア装置。
【請求項７】
前記メタデータは、前記少なくとも１つのマルチメディアミドルウェアサービスのセットに関する情報を提供するミドルウェアサービスコンテナをさらに含むことを特徴とする請求項１に記載のマルチメディアミドルウェア装置。
【請求項８】
前記ミドルウェアサービスコンテナは、各マルチメディアミドルウェアサービスで、対応するＡＰＩ情報を記述するマルチメディアミドルウェアサービス方法情報と対応するパラメーターを記述するパラメーター情報とを含むことを特徴とする請求項７に記載のマルチメディアミドルウェア装置。
【請求項９】
前記メタデータは、少なくとも１つの追加情報、修正情報、及び削除情報を含む変更履歴情報をさらに含むことを特徴とする請求項１に記載のマルチメディアミドルウェア装置。
【請求項１０】
前記変更履歴情報で追加され、修正され、または削除されるミドルウェアＡＰＩ情報は、マルチメディアミドルウェアサービスパラメータークラスタイプに関する情報、支援されるマルチメディアミドルウェアサービスに関する情報、及びマルチメディアミドルウェアサービス方法に関する情報のうちの少なくとも１つを含むことを特徴とする請求項９に記載のマルチメディアミドルウェア装置。
【請求項１１】
マルチメディアアプリケーションを支援する端末のマルチメディアミドルウェアを制御する方法であって、
前記マルチメディアアプリケーションの実行のための少なくとも１つのマルチメディアミドルウェアサービスの構造情報としてミドルウェアアプリケーションプログラミングインターフェース（ＡＰＩ）情報を含むメタデータを受信するステップと、
前記少なくとも１つのマルチメディアミドルウェアサービスのためのメタデータに関連したサービス実現コードを取得するステップと、
前記取得されたサービス実現コードを対応するマルチメディアミドルウェアサービスに適用するステップと、
を含むことを特徴とする方法。
【請求項１２】
前記メタデータは、所定の通信ネットワークを介して接続されたマルチメディアアプリケーションプロバイダーのサーバから受信されることを特徴とする請求項１１に記載の方法。
【請求項１３】
前記メタデータは、所定の記憶媒体を介してダウンロードされることを特徴とする請求項１１に記載の方法。
【請求項１４】
前記メタデータは、前記ミドルウェアＡＰＩの設置、削除、及び更新情報のうちの少なくとも１つに対応する前記ミドルウェアＡＰＩの変更情報をさらに含み、
前記ミドルウェアＡＰＩの変更情報を対応するマルチメディアミドルウェアサービスに適用するステップをさらに含むことを特徴とする請求項１１に記載の方法。
【請求項１５】
前記メタデータ及び前記サービス実現コードが標準サービス及び非標準サービスのうちの少なくとも１つに関連するか否かを確認するステップをさらに含むことを特徴とする請求項１１に記載の方法。
【請求項１６】
前記サービス実現コードが前記標準サービスに関連する場合に、前記サービス実現コードを対応するメタデータと比較することにより、有効性を検証するステップと、
有効なサービス実現コードを対応するマルチメディアミドルウェアサービスに適用するステップと、
をさらに含むことを特徴とする請求項１５に記載の方法。
【請求項１７】
前記メタデータは、前記少なくとも１つのマルチメディアミドルウェアサービスのセットに関する情報を提供するミドルウェアサービスコンテナをさらに含むことを特徴とする請求項１１に記載の方法。
【請求項１８】
前記ミドルウェアサービスコンテナは、各マルチメディアミドルウェアサービスで、対応するＡＰＩ情報を記述するマルチメディアミドルウェアサービス方法情報と対応するパラメーターを記述するパラメーター情報とを含むことを特徴とする請求項１７に記載の方法。
【請求項１９】
前記メタデータは、少なくとも１つの追加情報、修正情報、及び削除情報を含む変更履歴情報をさらに含むことを特徴とする請求項１１に記載の方法。
【請求項２０】
前記変更履歴情報で追加され、修正され、または削除されるミドルウェアＡＰＩ情報は、マルチメディアミドルウェアサービスパラメータークラスタイプに関する情報、支援されるマルチメディアミドルウェアサービスに関する情報、及びマルチメディアミドルウェアサービス方法に関する情報のうちの少なくとも１つを含むことを特徴とする請求項１９に記載の方法。
【請求項２１】
マルチメディアアプリケーションを支援するマルチメディアミドルウェアを記録する記憶媒体であって、
前記マルチメディアアプリケーションの実行のための少なくとも１つのマルチメディアミドルウェアサービスの構造情報としてミドルウェアアプリケーションプログラミングインターフェース（ＡＰＩ）情報を含むメタデータを受信するサービスメタデータ受信部と、
前記少なくとも１つのマルチメディアミドルウェアサービスのための前記メタデータに関連したサービス実現コードを取得するサービス実現コード取得部と、
前記受信されたメタデータから前記少なくとも１つのマルチメディアミドルウェアサービスのためのサービス実現コードを識別し、前記サービス実現コード取得部により取得されたサービス実現コードを対応するマルチメディアミドルウェアサービスに適用する動作を制御するサービス管理部と、
を含むことを特徴とする記憶媒体。
【請求項２２】
前記サービスメタデータ受信部は、所定の通信ネットワークを介して接続されたマルチメディアアプリケーションプロバイダーのサーバから前記メタデータを受信するように実現されることを特徴とする請求項２１に記載の記憶媒体。
【請求項２３】
前記サービスメタデータ受信部は、所定の記憶媒体を介して前記メタデータをダウンロードするように実現されることを特徴とする請求項２１に記載の記憶媒体。
【請求項２４】
前記メタデータは、前記ミドルウェアＡＰＩの設置、削除、及び更新情報のうちの少なくとも１つに対応する前記ミドルウェアＡＰＩの変更情報をさらに含み、
前記サービス管理部は、前記ミドルウェアＡＰＩの変更情報を対応するマルチメディアミドルウェアサービスに適用することを特徴とする請求項２１に記載の記憶媒体。
【請求項２５】
前記サービス管理部は、前記メタデータ及び前記サービス実現コードが標準サービス及び非標準サービスのうちの少なくとも１つに関連するか否かを確認するようにさらに構成されることを特徴とする請求項２１に記載の記憶媒体。
【請求項２６】
前記サービス管理部は、前記サービス実現コードが前記標準サービスに関連する場合に、前記サービス実現コードを対応するメタデータと比較することにより有効性を検証し、有効なサービス実現コードを対応するマルチメディアミドルウェアサービスに適用するようにさらに構成されることを特徴とする請求項２５に記載の記憶媒体。
【請求項２７】
前記メタデータは、前記少なくとも１つのマルチメディアミドルウェアサービスのセットに関する情報を提供するミドルウェアサービスコンテナをさらに含むことを特徴とする請求項２１に記載の記憶媒体。
【請求項２８】
前記ミドルウェアサービスコンテナは、各マルチメディアミドルウェアサービスで、対応するＡＰＩ情報を記述するマルチメディアミドルウェアサービス方法情報と対応するパラメーターを記述するパラメーター情報とを含むことを特徴とする請求項２７に記載の記憶媒体。
【請求項２９】
前記メタデータは、少なくとも１つの追加情報、修正情報、及び削除情報を含む変更履歴情報をさらに含むことを特徴とする請求項２１に記載の記憶媒体。
【請求項３０】
前記変更履歴情報で追加され、修正され、または削除されるミドルウェアＡＰＩ情報は、マルチメディアミドルウェアサービスパラメータークラスタイプに関する情報、支援されるマルチメディアミドルウェアサービスに関する情報、及びマルチメディアミドルウェアサービス方法に関する情報のうちの少なくとも１つを含むことを特徴とする請求項２９に記載の記憶媒体。
【請求項３１】
マルチメディアアプリケーションを支援する端末のマルチメディアミドルウェアを制御する方法を遂行するコンピュータプログラムコードを格納するコンピュータ読み取り可能な記録媒体であって、
前記マルチメディアアプリケーションの実行のための少なくとも１つのマルチメディアミドルウェアサービスの構造情報としてミドルウェアアプリケーションプログラミングインターフェース（ＡＰＩ）情報を含むメタデータを受信するステップと、
前記少なくとも１つのマルチメディアミドルウェアサービスのための前記メタデータに関連したサービス実現コードを取得するステップと、
前記取得されたサービス実現コードを対応するマルチメディアミドルウェアサービスに適用するステップと、
を含むことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、有線／無線通信ネットワークにおいて、物理的なネットワークと上位アプリケーションとの間のインタワーキングのためのミドルウェア技術に関し、特に、マルチメディアミドルウェアサービスコンポーネントの保持及び管理を容易にすることができるメタデータを用いるマルチメディアミドルウェア装置とその制御方法及び記憶媒体に関する。
【背景技術】
【０００２】
一般的に、ミドルウェア（Middleware）は、ネットワーク上のデバイスと関連した識別、認証、保安、制御、及びマルチメディアなどのサービスを提供するネットワークとアプリケーションとの間、またはアプリケーション間のデータ交換などのインタワーキングのためのソフトウェアレイヤーを意味する。すなわち、ネットワークがアプリケーションに接続するか、またはアプリケーションが相互に直接接続する場合には、一般的に、対応するコードは、アプリケーションがネットワークデバイスまたは他のアプリケーションと相互に通信することができるように関連したアプリケーションの全てに追加されなければならない。上記ミドルウェアがネットワークとアプリケーションとの間またはアプリケーション間のインタワーキングを支援するので、上記のように関連したアプリケーションに対応するコードを追加しなければならないなどの煩雑な作業を省略することができる。
【０００３】
多様なミドルウェア技術の中で、マルチメディアミドルウェア技術は、例えば、オンラインコンテンツ、インターネットブロードキャスト、またはデジタルデータブロードキャスト受信を支援する。例えば、上記マルチメディアミドルウェアを用いる通信ネットワークは、携帯電話などのような移動端末に各種パケットサービスを提供する移動通信ネットワークであることができる。
【０００４】
従来の移動端末製造業者は、ユーザーが要求する機能及びサービスを考慮して、必要とされるハードウェア及びソフトウェアが含まれた移動端末を設計し、製造し、販売した。しかしながら、移動通信市場の急激な発展及びユーザーの様々な要求に伴い、設計変更が毎回要求されるので、移動端末を設計する従来の方法は、市場の要求を満足することができる十分な柔軟性を提供することができなかった。
【０００５】
したがって、移動端末製造業者は、従来の移動端末設計方法の限界を認識し、移動端末のプラットフォームと上位アプリケーションとの間をインターフェースするミドルウェア技術を提案した。新たなアプリケーションが上記ミドルウェア技術を用いて搭載される度に、様々なミドルウェアアプリケーションは、移動端末の設計を大きく変更しなくても支援されることができる。
【０００６】
しかしながら、移動通信ネットワークの例において、従来のマルチメディアミドルウェア技術は、ミドルウェアサービスコンポーネント（middleware service component）が単純に実現されたバイナリ（Binary）実行ファイルまたはバイナリライブラリー（Library）ファイルの形態で提供される。したがって、従来のマルチメディアミドルウェアは、マルチメディアアプリケーションが実行している間に、対応するバイナリ実行ファイルまたはバイナリライブラリーファイルを呼び出して使用される。新たな機能が上記サービスコンポーネントに追加される場合に、ミドルウェアのマルチメディア処理機能は、サービスコンポーネントを再構成し、既存のサービスコンポーネントファイルに置き換えることにより管理される。
【０００７】
従来のマルチメディアミドルウェアは、新たな機能が上記サービスコンポーネントに追加される度に、上記サービスコンポーネントを再構成しなければならないため、上記サービスコンポーネントを保持することが難しい。さらに、既存のサービスコンポーネントが新たなマルチメディアアプリケーションのために置き換えられなければならないため、ミドルウェアの管理に相当な不便さがあった。
【０００８】
したがって、マルチメディアミドルウェアサービスコンポーネットを保持し、上記マルチメディアミドルウェアを管理する改善したマルチメディアミドルウェア装置及び方法が必要とされる。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
上述のような背景に鑑みてなされたものであり、本発明の目的は、マルチメディアミドルウェアサービスコンポーネントの保持及び管理を容易にすることができるメタデータを使用するマルチメディアミドルウェア装置とその制御方法及び記憶媒体を提供することにある。
【００１０】
本発明の他の目的は、マルチメディアミドルウェアサービスのリストを管理することにより、サービスの追加／削除／変更を容易にすることができるメタデータを用いるマルチメディアミドルウェア装置とその制御方法及び記憶媒体を提供することにある。
【課題を解決するための手段】
【００１１】
上記のような目的を達成するために、本発明の一の側面によれば、マルチメディアアプリケーションを支援する端末のマルチメディアミドルウェア装置は、上記マルチメディアアプリケーションの実行のための少なくとも１つのマルチメディアミドルウェアサービスの構造情報としてミドルウェアアプリケーションプログラミングインターフェース（ＡＰＩ）情報を含むメタデータを受信するサービスメタデータ受信部と、上記少なくとも１つのマルチメディアミドルウェアサービスのための上記メタデータに関連したサービス実現コードを取得するサービス実現コード取得部と、上記受信されたメタデータから上記少なくとも１つのマルチメディアミドルウェアサービスのためのサービス実現コードを識別し、上記サービス実現コード取得部により取得されたサービス実現コードを対応するマルチメディアミドルウェアサービスに適用する動作を制御するサービス管理部と、を含むことを特徴とする。
【００１２】
本発明の他の側面によれば、マルチメディアアプリケーションを支援する端末のマルチメディアミドルウェアを制御する方法は、上記マルチメディアアプリケーションの実行のための少なくとも１つのマルチメディアミドルウェアサービスの構造情報としてミドルウェアアプリケーションプログラミングインターフェース（ＡＰＩ）情報を含むメタデータを受信するステップと、上記少なくとも１つのマルチメディアミドルウェアサービスのためのメタデータに関連したサービス実現コードを取得するステップと、上記取得されたサービス実現コードを対応するマルチメディアミドルウェアサービスに適用するステップと、を含むことを特徴とする。
【００１３】
本発明のさらに他の側面によれば、マルチメディアアプリケーションを支援するマルチメディアミドルウェアを記録する記憶媒体は、上記マルチメディアアプリケーションの実行のための少なくとも１つのマルチメディアミドルウェアサービスの構造情報としてミドルウェアアプリケーションプログラミングインターフェース（ＡＰＩ）情報を含むメタデータを受信するサービスメタデータ受信部と、上記少なくとも１つのマルチメディアミドルウェアサービスのための上記メタデータに関連したサービス実現コードを取得するサービス実現コード取得部と、上記受信されたメタデータから上記少なくとも１つのマルチメディアミドルウェアサービスのためのサービス実現コードを識別し、上記サービス実現コード取得部により取得されたサービス実現コードを対応するマルチメディアミドルウェアサービスに適用する動作を制御するサービス管理部と、を含むことを特徴とする。
【発明の効果】
【００１４】
本発明の実施形態は、マルチメディアミドルウェアサービスの名前、構成、バージョン、及びＡＰＩアップデートなどの情報構成をメタデータの形態でモデリングすることにより、新たなサービスの追加、削除、または変更などを容易にし、ミドルウェアコンポーネントの保持及び管理を効率的にすることができる。
【発明を実施するための最良の形態】
【００１５】
本発明の詳細な説明及び構成要素のように、本発明の詳細な説明で定義される特徴は、本発明の実施形態の包括的な理解を助けるために提供される。したがって、本発明の範囲及び精神を逸脱することなく、ここに説明された実施形態の様々な変更及び変形が可能であるということは、当該技術分野における通常の知識を有する者には明らかである。また、明瞭性と簡潔性の観点から、本発明に関連した公知の機能や構成に関する具体的な説明が本発明の要旨を不明瞭にすると判断される場合には、その詳細な説明を省略する。
【００１６】
本発明の基本概念を簡略に説明すると、本発明の実施形態は、マルチメディアアプリケーションを必要とする端末のミドルウェアサービスをメタデータの形態で表現する。一般的に、上記メタデータは、他のデータを説明するのに使用された構造化されたデータであり、大量の情報の中で、所望する情報が効率的に検索されて使用されるように、一定の規則でコンテンツに割り当てられたデータである。本発明の実施形態において、上記メタデータは、マルチメディアミドルウェア（multimedia middleware：ＭＭ）サービスの構造情報（structural information）を含む。
【００１７】
また、本発明の実施形態は、マルチメディアミドルウェアにおいて、標準サービス及び非標準サービスの構造のメタデータを生成して管理することにより、マルチメディアミドルウェアでの新たな標準または非標準サービスを実現するモジュールの設置と、既存の標準及び非標準サービスを実現するモジュールの削除及び変更を容易にすることができるように、標準サービス及び非標準サービスの構造リストを参照することにより、サービス実現モジュールの削除及び変更を遂行する開放型マルチメディアミドルウェアとを提案する。
【００１８】
上記マルチメディアミドルウェアサービスをモデリングするために、本発明の実施形態は、マルチメディアミドルウェアサービスの名前、構成、バージョン、及びアプリケーションプログラミングインターフェース（Application Programming Interface：ＡＰＩ）アップデート情報などを拡張可能マークアップ言語（Extensible Markup Language：ＸＭＬ）スキーマ（Schema）の形態で表現する。ここで、ＸＭＬは、ウェブ上でデータを使用するための汎用言語（universal language）の中の１つである。本発明の実施形態は、このようなＸＭＬスキーマ形態のモデルに基づいて、マルチメディアミドルウェアサービス構造のメタデータを生成し、サービス構造情報に関するメタデータをマルチメディアミドルウェアで管理する。ここで、サービスまたはマルチメディアサービスがマルチメディアミドルウェアサービスであると仮定する。図１は、本発明の実施形態によるミドルウェアサービスのリストを表現するためのメタデータ（すなわち、Moving Pictures Experts Group（ＭＰＥＧ）multimedia middleware logical service（Ｍ３ＷＬＳ））構造を示す。
【００１９】
本発明の実施形態で定義されたメタデータ（Ｍ３ＷＬＳ）１００は、図１に示すように、マルチメディアミドルウェアサービスコンテナ、すなわち、ＭＭサービス１１０（MM Services）の要素と、マルチメディアミドルウェアアプリケーションプログラミングインタフェース（ＡＰＩ）の変更履歴（Change History）１３０の要素（element）と、を含む。また、図１には図示されていないが、図１のメタデータ（Ｍ３ＷＬＳ）１００は、マルチメディアミドルウェアサービスの管理のためのバージョン情報の属性（attribute）と、マルチメディアミドルウェアの発表日（issue date）の属性と、対応するサービス文書を参照する位置情報（documentationRef）の属性と、を含む。
【００２０】
本発明において、マルチメディアミドルウェアサービスのメタデータ構造を表現するためのＸＭＬディスクリプションは、次の通りである。
＜ミドルウェアサービスのメタデータ構造を表現するＸＭＬディスクリプション＞
<element name="M3WLS" type="m3w:M3WLSType"/>
<complexType name="M3WLSType">
<sequence>
<element ref="m3w:MMServices"/>
<element ref="m3w:ChangeHistory" minOccurs="0"/>
</sequence>
<attribute name="version" type="string" use="required"/>
<attribute name="date" type="date" use="optional"/>
<attribute name="documentationRef" type="anyURI" use="optional"/>
</complexType>
【００２１】
図１のメタデータ構造を表現するＸＭＬディスクリプションにおいて、上記マルチメディアミドルウェアサービスコンテナ１１０は、マルチメディアミドルウェアで支援されるマルチメディアミドルウェアサービスのセットである。図１に点線で示すように、上記マルチメディアミドルウェアＡＰＩの変更履歴１３０は、マルチメディアミドルウェア内のアイテムの追加（addition）、修正（modification）、及び削除（deletion）を記述するコンテナである。例えば、下記のように、上記アイテムは、マルチメディアミドルウェアパラメータークラスタイプ（ParamClassType）、ＭＭサービス、及びマルチメディアミドルウェアサービス方法（Method）のうちの少なくとも１つを含む。
【００２２】
上記ＸＭＬディスクリプションにおいて、“バージョン（version）”は、対応するメタデータ（Ｍ３ＷＬＳ）のバージョン情報であり、“日付（date）”は、対応するメタデータ（Ｍ３ＷＬＳ）の発表日であり、“文書参照位置（documentationRef）”は、対応するメタデータ（Ｍ３ＷＬＳ）に関連した文書の参照位置である。
【００２３】
図２は、図１に示したマルチメディアミドルウェアサービスコンテナ、すなわち、ＭＭサービス１１０のメタデータ構造の一例を示す。
【００２４】
図２において、マルチメディアミドルウェアサービスコンテナ、すなわち、ＭＭサービス１１０は、マルチメディアミドルウェアパラメータークラスタイプ（ParamClassTypes）１１１と、ＭＭサービス１１３と、を含む。まず、マルチメディアミドルウェアパラメータークラスタイプ１１１については、図３を参照して詳細に説明する。ＭＭサービス１１３は、各マルチメディアミドルウェアサービスのサービスＩＤ（service ID）の属性と、名前（name）の属性と、Ｍ３Ｗ標準サービス（M3W Standard Service）情報の属性と、を含み、マルチメディアミドルウェアサービス方法１１７の要素値と各マルチメディアミドルウェアサービス方法の説明（Description）１１５の要素値と、を含む。この場合に、各マルチメディアミドルウェアサービス方法１１９は、パラメーター１２１の要素を含む。また、各マルチメディアミドルウェアサービス方法１１９は、その名前の属性と、対応する方法（すなわち、ＡＰＩ）の結果（すなわち、出力）タイプの属性と、を含む。マルチメディアミドルウェアサービス方法１１９は、対応するＡＰＩを記述する。パラメーター１２１は、対応するパラメーターの名前と、タイプと、オプション（optional）属性と、を含む。パラメーター１２１は、対応するＡＰＩのパラメーターである。
【００２５】
上記マルチメディアミドルウェアサービスを表現するためのＸＭＬディスクリプションは、次の通りである。
＜マルチメディアミドルウェアサービスを表現するＸＭＬディスクリプション＞
<element name="MMServices" type="m3w:MMServicesType"/>
<complexType name="MMServicesType">
<sequence>
<element ref="m3w:ParamClassTypes" minOccurs="0"/>
<element ref="m3w:MMService" maxOccurs="unbounded"/>
</sequence>
</complexType>
<element name="MMService" type="m3w:MMServiceType"/>
<complexType name="MMServiceType">
<sequence>
<element ref="m3w:Description" minOccurs="0"/>
<element ref="m3w:Methods"/>
</sequence>
<attribute name="serviceID" type="string" use="required"/>
<attribute name="name" type="string" use="required"/>
<attribute name="M3WStandardService" type="boolean" use="optional" default="true"/>
</complexType>
<element name="Methods" type="m3w:MethodsType"/>
<complexType name="MethodsType">
<sequence>
<element ref="m3w:Method" maxOccurs="unbounded"/>
</sequence>
</complexType>
<element name="Method" type="m3w:MethodType"/>
<complexType name="MethodType">
<sequence>
<element ref="m3w:Parameter" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
<attribute name="name" type="string" use="required"/>
<attribute name="output" type="string" use="required"/>
</complexType>
<element name="Parameter" type="m3w:ParameterType"/>
<complexType name="ParameterType">
<attribute name="name" type="string" use="required"/>
<attribute name="type" type="string" use="required"/>
<attribute name="optional" type="boolean" use="optional" default="false"/>
</complexType>
【００２６】
図３は、図２に示したマルチメディアミドルウェアパラメータークラスタイプ１１１のメタデータ構造の一例を示す図である。図３において、上記マルチメディアミドルウェアパラメータークラスタイプ１１１は、各マルチメディアミドルウェアサービス方法１１９のために使用されたパラメーターのクラスタイプのセットである。個々のマルチメディアミドルウェアパラメータークラスタイプ１１１１は、対応するパラメータークラスタイプのディスクリプション１１１３の要素値を有し、パラメータークラスタイプの名前の属性を有する。マルチメディアミドルウェアパラメータークラスタイプ１１１１を表現するためのＸＭＬディスクリプションは、次の通りである。
＜マルチメディアミドルウェアパラメータークラスタイプを表現するＸＭＬディスクリプション＞
<element name="ParamClassTypes" type="m3w: ParamClassTypesType"/>
<complexType name=" ParamClassTypesType ">
<sequence>
<element ref="m3w:ParamClassType" maxOccurs="unbounded"/>
</sequence>
</complexType>
<element name="ParamClassType" type="m3w: ParamClassTypeType"/>
<complexType name="ParamClassType">
<sequence>
<element ref="m3w:Description" minOccurs="0"/>
</sequence>
<attribute name="name" type="string" use="required"/>
</complexType>
【００２７】
図４は、図１に示したマルチメディアミドルウェアＡＰＩの変更履歴のメタデータ構造の一例を示す図である。
【００２８】
図４において、上記マルチメディアミドルウェアＡＰＩの変更履歴１３０は、追加情報１３０１と、修正情報１３０３と、削除情報１３０５と、を含む。例えば、追加され、修正され、または削除されるデータ（またはオブジェクト）は、次のＸＭＬディスクリプションに説明されている通りに、上記マルチメディアミドルウェアパラメータークラスタイプ、ＭＭサービス、及びマルチメディアミドルウェアサービス方法のうちの少なくとも１つを含む。
【００２９】
まず、追加情報１３０１は、マルチメディアミドルウェアパラメータークラスタイプ１１１１、ＭＭサービス１１３、及びマルチメディアミドルウェアＡＰＩを記述するマルチメディアミドルウェアサービス方法１１９の中で、どんなデータ（または、オブジェクト）が新たに追加されたかを示すように追加されたデータ（または、オブジェクト）の名前の属性を有する。同様に、修正情報１３０３は、マルチメディアミドルウェアパラメータークラスタイプ１１１１、ＭＭサービス１１３、及びマルチメディアミドルウェアＡＰＩを記述するマルチメディアミドルウェアサービス方法１１９の中で、どんなデータ（または、オブジェクト）が修正されたかを示すように修正されたデータ（または、オブジェクト）の名前の属性を有する。また、削除情報１３０５は、マルチメディアミドルウェアパラメータークラスタイプ１１１１、マルチメディアミドルウェアサービス１１３、及びマルチメディアミドルウェアＡＰＩを記述するマルチメディアミドルウェアサービス方法１１９の中で、どんなデータ（または、オブジェクト）が削除されたかを示すように削除されたデータ（または、オブジェクト）の名前の属性を有する。
【００３０】
上記マルチメディアミドルウェアＡＰＩの変更履歴１３０を表現するためのＸＭＬディスクリプションは、次の通りである。
＜マルチメディアミドルウェアＡＰＩの変更履歴を表現するＸＭＬディスクリプション＞
<element name="ChangeHistory" type="m3w:ChangeHistoryType"/>
<complexType name="ChangeHistoryType">
<sequence>
<element ref="m3w:Addition" minOccurs="0" maxOccurs="unbounded"/>
<element ref="m3w:Modification" minOccurs="0" maxOccurs="unbounded"/>
<element ref="m3w:Deletion" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
<simpleType name="DataTypeType">
<restriction base="string">
<enumeration value=" ParamClassType "/>
<enumeration value="MMService"/>
<enumeration value="Method"/>
</restriction>
</simpleType>
<element name="Addition" type="m3w:DataChangeType"/>
<complexType name="DataChangeType">
<attribute name="object" type="m3w:DataTypeType" use="required"/>
<attribute name="name" type="string" use="required"/>
</complexType>
<element name="Modification" type="m3w:DataChangeType"/>
<complexType name="DataChangeType">
<attribute name="object" type="m3w:DataTypeType" use="required"/>
<attribute name="name" type="string" use="required"/>
</complexType>
<element name="Deletion" type="m3w:DataChangeType"/>
<complexType name="DataChangeType">
<attribute name="object" type="m3w:DataTypeType" use="required"/>
<attribute name="name" type="string" use="required"/>
</complexType>
【００３１】
図５は、本発明の実施形態によるメタデータを用いるマルチメディアミドルウェアが適用されるネットワークシステムの構成を示すブロック図である。図５は、ユーザーの端末５１０と、ネットワーク５２０と、マルチメディアアプリケーションプロバイダー５３０と、を含むシステムのアプリケーションフレームワークを示す。
【００３２】
図５において、端末５１０は、有線端末（例えば、ネットワーク接続手段を有するコンピュータ）または無線端末（例えば、携帯電話、デジタル携帯電話（personal communications service（ＰＣＳ）phone）、個人用デジタル補助装置（personal digital assistant：ＰＤＡ）、世界共通の次世代携帯電話（International Mobile Telecommunications-2000（ＩＭＴ-２０００）phone）、ＰＤＡフォン、またはスマートフォンなど）である。ネットワーク５２０は、様々な有線／無線通信ネットワークとなることができる。また、マルチメディアアプリケーションプロバイダー５３０は、マルチメディアアプリケーションを提供するサーバまたはマルチメディアアプリケーションを含んでいる記憶媒体となることができる。上記アプリケーションは、コンテンツ、メタデータ、またはマルチメディアミドルウェアサービスの実行コード、すなわち、サービス実現コードである。また、端末５１０は、上位レイヤーでアプリケーションを実行するマルチメディアサービスアプリケーション（プロセッシング）ブロック５１１と、ネットワーク５２０または記憶媒体を介して受信されたメタデータ及びサービス実現コードを処理するマルチメディアミドルウェアブロック５１３と、端末５１０のマルチメディアサービスを支援する基本的な運営体制（ＯＳ）が搭載されたプラットフォームブロック５１５と、を含む。
【００３３】
図６は、本発明の実施形態によるメタデータを用いるマルチメディアミドルウェアが備えられた端末５１０の構成を示すブロック図である。
【００３４】
図６を参照すると、端末５１０のマルチメディアミドルウェアブロック５１３は、アプリケーションレイヤーインターフェースＩ１を介してマルチメディアサービスアプリケーションブロック５１１に接続し、プラットフォームレイヤーインターフェースＩ２を介してプラットフォームブロック５１５に接続する。
【００３５】
マルチメディアミドルウェアブロック５１３の制御器に対応するサービス管理部５１３３は、本発明の実施形態によって、マルチメディアミドルウェアサービスのメタデータを管理する。ネットワーク５２０を介して送信されたマルチメディアアプリケーションの実行に必要とされるメタデータは、メタデータ送受信部５１３１で受信される。サービスメタデータパーサー５１３２は、上記受信されたメタデータを解析した後に、上記解析されたメタデータをサービス管理部５１３３に出力する。サービス管理部５１３３は、上記解析されたメタデータから対応するマルチメディアミドルウェアサービスに必要とされるサービス実現コードを識別し、対応するサービス実現コードを、サービス実現コード取得部５１３４を介して取得する。この場合に、上記対応するサービス実現コードは、ダウンロードされるか、または記憶媒体を介してコピーされる。サービス実現コード取得部５１３４により取得された上記サービス実現コードは、上記サービス実現コードの設置／削除／更新部（以下、“サービス実現コード変更部”と称する。）５１３５を介したサービス実現コードレイヤー５１３７での設置／削除／更新（以下、“変更”と称する。）がなされる。
【００３６】
上記サービス実現コードの変更は、サービス実現コードの設置、削除、及び更新動作を包括する意味で解析する。上記取得されたサービス実現コードを設置する過程において、サービス管理部５１３３は、上記取得されたサービス実現コードが標準サービスに関連するか、または非標準サービスに関連するかを確認する。上記確認の結果、上記サービス実現コードが上記標準サービスに関連する場合には、サービス管理部５１３３は、上記取得されたサービス実現コードを上記標準サービスのメタデータと比較することにより、上記コードの有効性を検証する。上記検証の結果、上記取得されたサービス実現コードが有効である場合に、サービス管理部５１３３は、上記取得されたサービス実現コードがサービス実現コードレイヤー５１３７に設置されるようにすることができる。上記取得されたサービス実現コードが設置された後に、サービス管理部５１３３は、上記対応する標準サービスのメタデータを使用可能なサービスリストに登録する。
【００３７】
また、上記マルチメディアアプリケーションが上記非標準サービスに関連する場合に、サービス管理部５１３３は、サービスメタデータ送受信部５１３１を介して上記非標準サービスのメタデータを受信し、サービス実現コード取得部５１３４を介して対応する非標準サービスのサービス実現コードを取得し、上記取得されたサービス実現コードをサービス実現コードレイヤー５１３７に適用し、対応する非標準サービスのメタデータを使用可能なサービスリストに登録する。
【００３８】
上記マルチメディアミドルウェアサービスの一部マルチメディアＡＰＩの追加／削除／更新が行われる場合に、サービス管理部５１３３は、対応するマルチメディアＡＰＩをサービスメタデータに追加し、削除し、更新（すなわち、“変更”）する。サービス管理部５１３３は、上記変更されたマルチメディアＡＰＩのサービス実現コードを、サービス実現コード取得部５１３４を介して取得し、上記取得されたサービス実現コードを、サービスコード変更部５１３５を介してサービス実現コードレイヤー５１３７に適用する。マルチメディアミドルウェアブロック５１３は、マルチメディアアプリケーションの実行に必要とされるマルチメディアミドルウェアサービスを、サービス準備部５１３６を介して初期化して準備する。上記マルチメディアアプリケーションが実行される際に、上記マルチメディアミドルウェアサービスが呼び出されることができる。
【００３９】
本発明の実施形態のマルチメディアミドルウェアブロック５１３は、マルチメディアミドルウェアサービスのメタデータを追加することができ、サービスリストに新たなサービスを追加することができる。あるいは、マルチメディアミドルウェアブロック５１３は、既存のサービスの変更及び削除を遂行することができる。
【００４０】
図７は、本発明の実施形態によるメタデータを用いるマルチメディアミドルウェアを管理する方法を示すフローチャートである。図７は、端末５１０のマルチメディアミドルウェアブロック５１３の動作を示す。
【００４１】
ステップ７０１で、マルチメディアミドルウェアブロック５１３のサービス管理部５１３３は、外部から受信されたデータのタイプを識別する。ステップ７０３で、上記受信されたデータがマルチメディアアプリケーションに必要なメタデータである場合に、サービスメタデータ送受信部５１３１は、対応するメタデータを受信する。ステップ７０５で、サービス管理部５１３３は、上記受信されたメタデータを、サービスメタデータパーサー５１３２を介して解析する。ステップ７０７で、サービス管理部５１３３は、上記受信されたメタデータが標準サービスに関連するか、または非標準サービスに関連するかを確認し、対応するサービスに必要とされるサービス実現コードを識別する。上記受信されたメタデータが上記標準サービスに関連する場合には、ステップ７０９で、サービス管理部５１３３は、対応する標準サービスのメタデータを使用可能なサービスリストに登録する。一方、上記受信されたメタデータが上記非標準サービスに関連する場合には、ステップ７１１で、サービス管理部５１３３は、対応する非標準サービスのメタデータを使用可能なサービスリストに登録する。
【００４２】
一方、ステップ７０１で、マルチメディアミドルウェアブロック５１３のサービス管理部５１３３は、外部から受信されたデータのタイプを識別する。上記受信されたデータが対応するサービスに必要とされるメタデータ（Ｍ３ＷＬＳ）のサービス実現コードである場合に、サービス管理部５１３３は、ステップ７１３で、対応するサービス実現コードを、サービス実現コード取得部５１３４を介して取得する。この場合に、上記対応するサービス実現コードは、ダウンロードされるか、または記憶媒体を介してコピーされる。ステップ７１５で、サービス管理部５１３３は、上記サービス実現コードを対応するメタデータと比較することにより、上記コードの有効性を検証する。ステップ７１７での検証の結果、上記サービス実現コードが標準サービスに関連する場合には、上記コードの有効性は、ステップ７１９で、上記コードを標準サービスメタデータと比較することにより検証される。ステップ７２１で、上記コードが上記標準に適合した有効なサービス実現コードである場合には、サービス管理部５１３３は、ステップ７２３で、上記コードがサービス実現コードレイヤー５１３７に設置されるようにすることができる。上記取得されたサービス実現コードが設置された後に、サービス管理部５１３３は、ステップ７０９で、対応する標準サービスのメタデータを使用可能なサービスリストに登録する。一方、ステップ７１７での検証の結果、上記サービス実現コードが非標準サービスに関連する場合には、サービス管理部５１３３は、有効性の検査を省略する。ステップ７１８で、対応するサービス実現コードは、サービス実現コードレイヤー５１３７に設置される。対応する非標準サービスのメタデータは、使用可能なサービスリストに登録される。
【００４３】
一方、上記有効性の検証のためのステップ７１５及び上記サービス実現コードを標準サービスのメタデータと比較するステップ７１９は、選択的に遂行されてもよく、または１つのステップに統合されてもよい。
【００４４】
上述したように、開放型マルチメディアミドルウェア構造は、マルチメディアミドルウェアサービスをモデリングすることができるように、サービスの名前、構成、バージョン、及びＡＰＩアップデート情報などを拡張可能マークアップ言語（Extensible Markup Language：ＸＭＬ）スキーマの形態で表現する。このようなＸＭＬスキーマ形態のモデルに基づいて、マルチメディアミドルウェアサービス構造のメタデータを生成する。マルチメディアミドルウェアブロックは、サービス構造情報のメタデータを管理する。新たな標準または非標準サービスの実現モジュール（すなわち、サービス実現コード）が端末でマルチメディアアプリケーションを実行するために設置され、既存の標準または非標準サービスのサービス実現コードが削除されて変更される際には、対応するサービスメタデータ及び対応するサービスリストを参照して更新することができる。
【００４５】
また、本発明の実施形態は、標準または非標準サービスの実現がマルチメディアミドルウェアで効率的に管理されることができるようにする開放型ミドルウェア構成を提供することができるプログラムまたはアルゴリズムを特定のデバイスに搭載可能な記憶媒体に記録して使用することができる。このような記憶媒体は、コンピュータなどのようなデバイスを用いて読み取られることができる。
【００４６】
本発明は、コンピュータ可読記憶媒体上でコンピュータ可読コードとして実現されることもできる。コンピュータ可読記憶媒体は、コンピュータシステムにより読み出されることができるデータを記憶することができる任意のデータ記憶装置である。コンピュータ可読記憶媒体の例としては、読出し専用メモリ(ＲＯＭ）、ランダムアクセスメモリ(ＲＡＭ）、ＣＤ−ＲＯＭ、磁気テープ、フロッピー（登録商標）ディスク、光学データ記憶装置、及び搬送波（有線又は無線送信経路上のインターネットを介したデータ送信のような）が含まれるが、これらに限定されるものではない。また、上記コンピュータ可読記憶媒体は、コンピュータ可読コードが分配される方式で記憶されて実行されることができるように、ネットワーク結合型コンピュータシステムを介して分配されることができる。さらに、本発明を遂行するための関数プログラム、コード及びコードセグメントは、本発明が属する技術分野で熟練したプログラマーにより本発明の範囲内で容易に解析されることができるであろう。  
【００４７】
以上、本発明を具体的な実施形態を参照して詳細に説明してきたが、本発明の範囲及び精神を逸脱することなく様々な変形が可能であるということは、当該技術分野における通常の知識を持つ者には明らかであり、本発明の範囲は、上述の実施形態に限定されるべきではなく、特許請求の範囲の記載及びこれと均等なものの範囲内で定められるべきである。
【図面の簡単な説明】
【００４８】
【図１】本発明の実施形態によるミドルウェアサービスのリストを表現するためのマルチメディアミドルウェアサービスのメタデータ構造を示す図である。
【図２】図１に示したマルチメディアミドルウェアサービスコンテナのメタデータ構造の一例を示す図である。
【図３】図２に示したマルチメディアミドルウェアパラメータークラスタイプのメタデータ構造の一例を示す図である。
【図４】図１に示したマルチメディアミドルウェアＡＰＩの変更履歴のメタデータ構造の一例を示す図である。
【図５】本発明の実施形態によるメタデータを用いるマルチメディアミドルウェアが適用されるネットワークシステムの構成を示すブロック図である。
【図６】本発明の実施形態によるメタデータを用いるマルチメディアミドルウェア装置が備えられた端末の構成を示すブロック図である。
【図７】本発明の実施形態によるメタデータを用いるマルチメディアミドルウェアを管理する方法を示すフローチャートである。
【符号の説明】
【００４９】
１００  メタデータ（Ｍ３ＷＬＳ）
１１０  ＭＭサービス
１３０  変更履歴
【図１】
2009512058.tif 000003
【図２】
2009512058.tif 000004
【図３】
2009512058.tif 000005
【図４】
2009512058.tif 000006
【図５】
2009512058.tif 000007
【図６】
2009512058.tif 000008
【図７】
2009512058.tif 000009
【国際調査報告】
2009512058.tif 000010
2009512058.tif 000011