JP6101269B2 - 同じタイプの複数のメタデーター表現の効率的な提供 - Google Patents

同じタイプの複数のメタデーター表現の効率的な提供 Download PDF

Info

Publication number
JP6101269B2
JP6101269B2 JP2014530710A JP2014530710A JP6101269B2 JP 6101269 B2 JP6101269 B2 JP 6101269B2 JP 2014530710 A JP2014530710 A JP 2014530710A JP 2014530710 A JP2014530710 A JP 2014530710A JP 6101269 B2 JP6101269 B2 JP 6101269B2
Authority
JP
Japan
Prior art keywords
type
metadata
native
computer
reader
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014530710A
Other languages
English (en)
Other versions
JP2014534488A (ja
JP2014534488A5 (ja
Inventor
カプラン,ジェシー・ディー
ファーカス,ショーン
クリシュナスワミー,ラジャ
バイアーズ,リチャード・エム
バイイントン,ライアン・エイ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2014534488A publication Critical patent/JP2014534488A/ja
Publication of JP2014534488A5 publication Critical patent/JP2014534488A5/ja
Application granted granted Critical
Publication of JP6101269B2 publication Critical patent/JP6101269B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/14Details of searching files based on file metadata
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/84Mapping; Conversion
    • G06F16/88Mark-up to mark-up conversion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Human Computer Interaction (AREA)
  • Library & Information Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Description

従来技術
[0001] コンピューターは、労働力、家庭、移動体デバイス、および多くの他の場所に深く統合されつつある。コンピューターは、大量の情報を素早くしかも効率的に処理することができる。コンピューター・システムにおいて実行するように設計されたソフトウェア・アプリケーションは、業務用アプリケーション、学業(schoolwork)、娯楽等を含む広い種々の機能を実行することをユーザーに可能にする。ソフトウェア・アプリケーションは、文書を草稿するためのワープロ・アプリケーション、または電子メールを送信、受信、および編成するための電子メール・プログラムというような、具体的なタスクを実行するように設計されることが多い。
[0002] 場合によっては、ソフトウェア・アプリケーションが種々の形態のメタデーターを実装する(implement)ように設計されることもある。このメタデーターは、異なるメタデーター・タイプによって表されることもある。どのメタデーター・タイプを各ユーザーが見ることを期待しているかに基づいて、異なるタイプを異なるユーザーのために使用することができる。このような状況では、複数の異なるメタデーター・ファイルが格納され、種々のメタデーター・タイプを提供するために使用されるのが通例である。このような多数の(an array of)メタデーターを格納し実装すると、正しいメタデーター・ファイルを引き出して適用するときに非効率を招く虞がある。
[0003] 本明細書において記載する実施形態は、メタデーターをネーティブ・データー・エンコーディングによる使用のために動的に適応化させ、オブジェクト・モデル・タイプ参照を効率的に変更することを目的とする。一実施形態では、コンピューター・システムが、オブジェクト・モデル記述におけるメタデーターの種々の部分にアクセスするために、オブジェクト・モデル記述によってメタデーター・リーダー(metadata reader) をインスタンス化する。メタデーター・リーダーは、ネーティブ・メタデーターを読み取るように構成され、ネーティブ・メタデーターとは、メタデーター・リーダーによって期待されるエンコーディングで表現されたメタデーターである。メタデーター・リーダーは、アクセスされたメタデーターが非ネーティブ・エンコードでエンコードされたことを判定し、次いでこの非ネーティブ・エンコーディングをネーティブ・エンコーディングに変換するためには、どのメタデーター変更を実行すべきか判定する。次いで、計算システムは、オブジェクト・モデルのメタデーターを、非ネーティブ・エンコーディングからネーティブ・エンコーディングに、決定された変更にしたがって動的に適応化する。こうして、オブジェクト・モデルは、ネーティブ・ランタイムによって読み取り可能になる。
[0004] 他の実施形態では、コンピューター・システムが、タイプ参照表をインスタンス化する。このタイプ参照表は、タイプ定義要求を受け、応答してしかるべきタイプ定義を与える。このタイプ参照表は、メタデーター・リーダーによって読み取ることができるメタデーターを含む。インスタンス化されたタイプ参照表は、タイプ要求元から、指定されたタイプに対するタイプ定義要求を受ける。コンピューター・システムは、タイプ参照をタイプ参照表内に実装し、どのタイプが要求されたか、そしてメタデーター・リーダーの現在のコンシューマーにとってどのタイプが適しているかに基づいて、メタデーター・リーダーに対して種々のタイプを動的に交換する。次いで、コンピューター・システムは、動的に交換されたタイプに基づいて、要求されたタイプ定義をタイプ要求元に供給する。
[0005] この摘要は、詳細な説明において以下で更に説明する概念から選択したものを、簡略化した形態で紹介するために設けられている。この摘要は、特許請求する主題の主要な特徴や必須の特徴を特定することを意図するのではなく、特許請求する主題の範囲を判断するときに補助として用いられることを意図するのでもない。
[0006] 追加の特徴および利点は、以下に続く説明において記載され、部分的にこの記載から当業者には明白であり、または本明細書における教示の実践によって学習することもできる。本発明の実施形態の特徴および利点は、添付した特許請求の範囲において特定的に指摘される手段(instruments)および組み合わせによって実現され、得ることができる。本発明の実施形態の特徴は、以下の説明および添付した特許請求の範囲から一層明白となり、以下に記載する本発明の実践によって学習することができる。
[0007] 本発明の実施形態の以上のおよび他の利点や特徴を更に明確化するために、添付図面を参照して、本発明を更に特定した実施形態を描写する(render)。尚、これらの図面は本発明の典型的な実施形態のみを図示するのであり、したがって発明の範囲の限定と考えてはならないことは認められよう。本発明の実施形態について、添付図面の使用によって、更に特定し詳細に説明する(described and explained)。図面において、
図1は、本発明の実施形態が動作することができ、ネーティブ・データー・エンコーディングによる使用のためにメタデーターを動的に適応化し、オブジェクト・モデル・タイプ参照を効率的に変更することを含む、コンピューター・アーキテクチャーを示す。 図2は、ネーティブ・データー・エンコーディングによる使用のためにメタデーターを動的に適応化する方法例のフロー・チャートを示す。 図3は、オブジェクト・モデル・タイプ参照を効率的に変更する方法例のフロー・チャートを示す。 図4は、フォーリン・メタデーター(foreign metadata)をネーティブ・メタデーターに変換する実施形態を示す。 図5は、タイプ参照を使用してメタデーターをエンコードする実施形態を示す。 図6は、タイプ参照の内部変更によって、フォーリン・タイプ・システムをネーティブ・タイプ・システムに変換する実施形態を示す。 図7は、メタデーター・コンテナの実施形態を示す。 図8は、メタデーター・コンテナのビューが与えられる実施形態を示す。 図9は、メタデーター・コンテナのビューが与えられる代替実施形態を示す。
[0017] 本明細書において記載する実施形態は、メタデーターをネーティブ・データー・エンコーディングによる使用のために動的に適応化させ、オブジェクト・モデル・タイプ参照を効率的に変更することを目的とする。一実施形態では、コンピューター・システムが、オブジェクト・モデル記述におけるメタデーターの種々の部分にアクセスするために、オブジェクト・モデル記述によってメタデーター・リーダーをインスタンス化する。メタデーター・リーダーは、ネーティブ・メタデーターを読み取るように構成される。ネーティブ・メタデーターとは、メタデーター・リーダーによって期待されるエンコーディングで表現されたメタデーターである。メタデーター・リーダーは、アクセスされたメタデーターが非ネーティブ・エンコードでエンコードされたことを判定し、次いでこの非ネーティブ・エンコーディングをネーティブ・エンコーディングに変換するためには、どのメタデーター変更を実行すべきか決定する。次いで、計算システムは、オブジェクト・モデルのメタデーターを、非ネーティブ・エンコーディングからネーティブ・エンコーディングに、決定された変更にしたがって動的に適応化する。こうして、オブジェクト・モデルは、ネーティブ・ランタイムによって読み取り可能になる。
[0018] 他の実施形態では、コンピューター・システムが、タイプ参照表をインスタンス化する。このタイプ参照表は、タイプ定義要求を受け、応答においてしかるべきタイプ定義を与える。このタイプ参照表は、メタデーター・リーダーによって読み取ることができるメタデーターを含む。インスタンス化されたタイプ参照表は、タイプ要求元から、指定されたタイプに対するタイプ定義要求を受ける。コンピューター・システムは、タイプ参照をタイプ参照表内に実装し、どのタイプが要求されたか、そしてメタデーター・リーダーの現在のコンシューマーにとってどのタイプが適しているかに基づいて、メタデーター・リーダーに対して種々のタイプを動的に交換する。次いで、コンピューター・システムは、動的に交換されたタイプに基づいて、要求されたタイプ定義をタイプ要求元に供給する。
[0019] 以下の説明では、実行することができる複数の方法および方法の動作に言及する。尚、これらの方法の動作は、ある順序で説明されることがあり、または特定の順序で出てくるようにフロー・チャートにおいて示されることがあるが、特に述べられていない限り、または要求されない限り、特定の順序が必ずしも必要でないことは、注記してしかるべきである。何故なら、ある動作は、この動作が実行される前に完了する他の動作に依存するからである。
[0020] 本発明の実施形態は、例えば、以下で更に詳しく説明する1つ以上のプロセッサーおよびシステム・メモリーというような、コンピューター・ハードウェアを含む、特殊目的コンピューターまたは汎用コンピューターを含むあるいは利用することができる。また、本発明の範囲内の実施形態は、コンピューター実行可能命令および/またはデーター構造を送るまたは格納するために物理コンピューター読み取り可能媒体および他のコンピューター読み取り可能媒体も含む。このようなコンピューター読み取り可能媒体は、汎用コンピューター・システムまたは特殊目的コンピューター・システムによってアクセスすることができる任意の入手可能な媒体とすることができる。コンピューター実行可能命令をデーターの形態で格納するコンピューター読み取り可能媒体は、コンピューター記憶媒体である。コンピューター実行可能命令を送るコンピューター読み取り可能媒体は、送信媒体である。つまり、一例として、そして限定ではなく、本発明の実施形態は、少なくとも2つの別々の異なる種類のコンピューター読み取り可能媒体、即ち、コンピューター記憶媒体および送信媒体を含むことができる。
[0021] コンピューター記憶媒体には、RAM、ROM、EEPROM、CD−ROM、RAMに基づくソリッド・ステート・デバイス(SSD)、フラッシュ・メモリー、位相変化メモリー(PCM)、または他のタイプのメモリー、あるいは他の光ディスク・ストレージ、磁気ディスク・ストレージまたは他の磁気記憶デバイス、あるいは所望のプログラム・コード手段をコンピューター実行可能命令、データー、またはデーター構造の形態で格納するために使用することができ、汎用または特殊目的コンピューターによってアクセスすることができる任意の他の媒体が含まれる。
[0022] 「ネットワーク」は、コンピューター・システムおよび/またはモジュールおよび/または他の電子デバイス間における電子データーの移送(transport)を可能にする1つ以上のデーター・リンクおよび/またはデーター・スイッチと定められる。情報がネットワーク(ハードワイヤ、ワイヤレス、あるいはハードワイヤまたはワイヤレスの組み合わせ)を介してコンピューターに移されるまたは提供されるとき、このコンピューターはこの接続を適正に送信媒体と見なす。送信媒体は、データーまたは所望のプログラム・コード手段をコンピューター実行可能命令の形態またはデーター構造の形態で運ぶ(carry)ために使用することができ、汎用コンピューターまたは特殊目的コンピューターによってアクセスすることができるネットワークを含むことができる。以上の組み合わせも、コンピューター読み取り可能媒体の範囲に含まれてしかるべきである。
[0023] 更に、種々のコンピューター・システム・コンポーネントに達すると、コンピューター実行可能命令またはデーター構造の形態となっているプログラム・コード手段を自動的に送信媒体からコンピューター記憶媒体に(またはその逆)移すことができる。例えば、ネットワークまたはデーター・リンクを介して受信されたコンピューター実行可能命令またはデーター構造は、ネットワーク・インターフェース・モジュール(例えば、ネットワーク・インターフェース・カード、即ち、「NIC」)内においてRAMにバッファし、最終的にコンピューター・システムRAMおよび/またはコンピューター・システムにおいてそれよりも揮発性でないコンピューター記憶媒体に移すことができる。このため、コンピューター記憶媒体は、送信媒体も利用するコンピューター・システム・コンポーネントに(または通信媒体を主に利用するコンピューター・システム・コンポーネントにさえも)含むことができることは言うまでもない。
[0024] コンピューター実行可能(またはコンピューター解釈可能)命令は、例えば、汎用コンピューター、特殊目的コンピューター、または特殊目的処理デバイスに、一定の機能または1群の機能を実行させる命令を含む。コンピューター実行可能命令は、例えば、バイナリー、アセンブリー言語のような中間フォーマット命令、またはソース・コードでさえも含んでもよい。本主題は構造的特徴および/または方法論的動作に特定の文言で説明されているが、添付した特許請求の範囲に定められる本主題は、必ずしも説明した特徴や以上で説明した動作には限定されないことは言うまでもない。逆に、説明される特徴および動作は、特許請求の範囲を実現する形態例として開示されるだけである。
[0025] 尚、本発明は、複数のタイプのコンピューター・システム構成で、ネットワーク計算環境においても実施できることは、当業者には認められよう。コンピューター・システム構成には、パーソナル・コンピューター、デスクトップ・コンピューター、ラップトップ・コンピューター、メッセージ・プロセッサー、ハンドヘルド・デバイス、マルチプロセッサー・システム、マイクロプロセッサー・ベースのまたはプログラマブルコンシューマー用電子機器、ネットワークPC、ミニコンピューター、メインフレーム・コンピューター、移動体電話機、PDA、ページャー、ルーター、スイッチ等が含まれる。また、本発明は分散システム環境においても実施することができ、この場合、ローカル・コンピューター・システムおよびリモート・コンピューター・システムがネットワークを介してリンクされ(ハードワイヤ・データー・リンク、ワイヤレス・データー・リンク、またはハードワイヤおよびワイヤレス・データー・リンクの組み合わせのいずれかによって)、各々がタスクを実行する(例えば、クラウド計算、クラウド・サービス等)。分散システム環境では、プログラム・モジュールはローカルおよびリモート双方のメモリー記憶デバイスに配置されてもよい。
[0026] 図1は、本発明の原理を採用することができるコンピューター・アーキテクチャー100を示す。コンピューター・アーキテクチャー100は、コンピューター・システム101を含む。コンピューター・システム101は、クラウド計算システムを含む、ローカル・コンピューター・システムまたは分散型コンピューター・システムの内任意のタイプであってよい。コンピューター・システムは、種々の異なるタスクを実行するために種々の異なるモジュールを含むことができる。コンピューター・システムは、種々の異なるインターフェースを使用して、本システムとのユーザー対話処理を可能にする。実施形態の中には、コンピューター・システムが、ソフトウェア・プログラムを開発することを開発者に可能にする統合開発環境(IDE)107を設けるものがあってもよい。つまり、場合によっては、ユーザー105が開発者であってもよく、IDEと対話処理するために入力106を送ることができる。IDEは、種々の異なるプログラミング構造(construct)および他のエレメントへのアクセスを与えることができる。場合によっては、これはメタデーター・リーダー115を含むこともできる。
[0027] 本明細書において説明する実施形態の中には、1つのタイプの異なるビューを異なるメタデーター・コンシューマー(metadata consumer)に提示する1つのメタデーター・ファイルを提供するものがある。この異なるビューは、メタデーターが読み取られているときに、実行中にこれらの変更をメタデーター・リーダー115に行うことを強制することなく、提示することができる。メタデーター・リーダーがオブジェクト・モデル記述116によって(over)インスタンス化されるとき、リーダーはそのメタデーターのエンコーディングを検出し、このメタデーターがリーダーのコンシューマーにとって自然に見えるようにするために必要とされ得る変更を決定することができる。リーダーは、このメタデーターをアダプター(例えば、適応化モジュール125)においてラップし(wrap)、このアダプターは、メタデーター・リーダーのコンシューマーが、変更なしに、フォーリン(または、ここでは「非ネーティブ」)エンコーディング(例えば、117)に対して(over)動作できるように、メタデーターのエンコーディングを変更する。また、実施形態は、効率的なやり方で変換を可能にするエンコーディング・メタデーターについても説明する。本明細書において使用する場合、「ネーティブ」エンコーディングとは、メタデーター・リーダーによって期待されるフォーマットになっているメタデーター・エンコーディングを指す。「非ネーティブ」即ちフォーリン・エンコーディングとは、メタデーター・リーダーによって期待されていない任意のメタデーター・エンコーディングを指す。
[0028] 変更が非常に多い場合、メタデーターの複数のコピーを、タイプ毎に作ることができる。これらのコピーの各々は、区別できる特性を含み、メタデーター・リーダーが、どのビューをどのメタデーター・コンシューマーに提示すべきか判断することを可能にする。一旦決定が行われたなら、決定されたビューが各コンシューマーに提供される。メタデーター・コンシューマーは、選択肢をリーダーに渡し、それらの好ましいビュー・タイプを特定することができる。次いで、メタデーター・リーダーはそれを使用して、ビュー・タイプの中から提示するものを選択することができる。次いで、残りのビューは、そのコンシューマーからは隠される。
[0029] 本明細書において説明する実施形態の中には、以下の形態を含むものがある。1)フォーリン・オブジェクト・モデル・エンコーディングをネーティブに適応化するために必要な変更の、メタデーター・リーダーによる自動検出、2)代わりに異なるオブジェクト・モデルからのタイプになるための、オブジェクト・モデルによって参照されるタイプの変更、3)2つの異なるオブジェクト・モデルのタイプ・システム間において効率的な変換を可能にするためのメタデーターのエンコーディング、4)メタデーター・リーダーのコンシューマーによって期待されるメタデーター・エンコーディング規格に沿うような、メタデーター・エンコーディングの変更、5)メタデーター・コンシューマーが、変更なく、様々なメタデーター・エンコーディングを透過的に消費することを可能にする、および6)異なるコンシューマーによる直接使用のための、1つのエンティティの複数のビューを含む1つのメタデーター・ファイル。ビューは、コンシューマー毎に完全で(complete)一貫しており、コンシューマー毎に異なるビューを必要とするエンティティだけが複数のビューを有する(即ち、これは、メタデーター・ファイルのコピーを3つ含む単純なジップ・ファイルではない)。つまり、メタデーター・コンシューマーは、彼らが望むビューのタイプを容易に指定することができる。また、メタデーター・リーダーは、コンシューマーの選択に基づいて、完全で一貫するメタデーター・ビューを選択することもできるとよい。
[0030] メタデーター・アダプター125がオブジェクト・モデル116記述によってインスタンス化されると、このアダプターは、オブジェクト・モデルが特定のネーティブ・エンコーディングになっていることを期待するクライアントによって消費されている。読み取られているオブジェクト・モデルがそのネーティブ・エンコーディングになっていない場合、メタデーター・リーダーは、フォーリン・エンコーディングをネーティブ・エンコーディング126に変換する(transform)ために必要な変更121を検出する(120)ことができる。次いで、クライアントがメタデーターを読み取りながら、このメタデーターを変更するために、アダプターをインスタンス化し、クライアントがメタデーターを種々のフォーリン・エンコーディング117で透過的に読み取ることができるようにする。他のメタデーター・リーダーは、2つのフォーマット間で動的に変換を可能にするのではなく、1つの特定のフォーマットで読むことしかできない。
[0031] メタデーター・リーダー115のクライアントがこのリーダーを使用してオブジェクト・モデルを理解するに連れて、メタデーター・アダプターは、非ネーティブ・メタデーターに対して多くのクラスの変更を透過的に行い、ネーティブ・クライアントがそれを直接理解できるようにすることができる。これは、フォーリン・タイプ・システムによって参照されるタイプを、ネーティブ・タイプ・システムによって使用されるタイプに変更すること、およびメタデーター・フラグのネーティブ・システムにおける等価フラグへの変更を含む。
[0032] オブジェクト・モデル記述116は、必要な処理時間空間を最小限にして、効率的な変換に備えるためにエンコードすることができる。本明細書に含まれる実施形態は、このようなエンコーディングについて説明し、フォーリン・タイプ・システムをインプレースで(in-place)メタデーター・リーダーのネーティブ・タイプ・システムに変換することを可能にする。このエンコーディングでは、オブジェクト・モデルによって使用されるタイプへの参照は、タイプ参照を介して行われる。場合によっては、他のメタデーター・エンコーディングが、トークンおよび定義の相対的位置に基づいて、タイプ参照およびタイプ定義トークンの組み合わせを利用するとよい(例えば、これらが双方とも同じメタデーター・ファイルにある場合、タイプ定義トークンが選択され、一方これらが異なるメタデーター・ファイルにある場合、タイプ参照トークンが選択される)。本明細書における実施形態では、タイプ定義トークンが利用可能なときでも、このトークンは定義と同じメタデーター・ファイルにあるので、タイプ参照トークンが使用される。タイプ定義トークンの代わりにタイプ参照トークンを使用することによって、本明細書におけるシステムは、タイプ参照トークンではなくタイプ定義トークンによって参照すると費用がかかるような方法で、効率的にタイプをリディレクトすることが可能になる。
[0033] 非ネーティブ・オブジェクト・モデルによって使用されるタイプが、タイプ参照を使用してエンコードされる場合、アダプター125は、タイプ参照のターゲットをインプレースで変換することによって、タイプ・システム間で変換を行いつつ、その参照の他のユーザーを、メタデーターにおいて変更しないままにしておく。これによって、メタデーター表全体の走査や更新を必要とせずに、フォーリン・タイプのあらゆる使用のネーティブ・タイプへのリターゲッティングを可能にする。
[0034] 加えて、メタデーター・コンテナにおいて記述されるタイプの殆どは、1つのビューを有し、このビューは多くの異なるコンシューマー間で共有することができ、以上で説明したように、最小限の適応化を必要とするに過ぎない。しかしながら、カスタマー毎に異なるビューを使用することもあるタイプのクラスもある。他の実現例では、通例、メタデーター・ファイル全体の複数の別個のコピーを有するか(ビュー毎に1つの完全なコピー)、あるいはコンシューマーに依存して実行中にメタデーターを適応化するまたは書き直すことを試みたであろう。複数コピーの解決策では、メタデーター・ディプロイヤー(metadata deployer)に2つの別個のファイルを管理させるので、複雑さが増し、双方のコンシューマーに対して共有表現を有するタイプの不要なコピーがあるので、性能を阻害する虞がある。実行中に適応化するまたは書き換えることは、非常に単純な変換でなければうまく行かず、重要な変換はいずれも、読み取りが非常に遅くなり、メタデーター全体の新たなコピーをメモリーまたはディスクにおいて一時的に生成することが必要になる場合さえもある。
[0035] 本明細書において説明する実施形態は、1つのメタデーター・コンテナを含む。このメタデーター・コンテナは、全てのコンシューマーでビューが同じであるはずのタイプに対して、1つのメタデーター定義を保持する。また、このメタデーター・コンテナは、ビューが異なる(または異なる必要がある)タイプの複数のコピーも保持する。次いで、メタデーター・リーダーはこのコンテナの異なるビューを各コンシューマーに提供し、それらを有するタイプに対して包括なビュー、残りに対してコンシューマー特定ビューだけを、そのコンシューマーに示す。これらの概念については、それぞれ、図2および図3の方法200および300に関して、以下で更に説明する。
[0036] 以上で説明したシステムおよびアーキテクチャーに関して、開示する主題にしたがって実現することができる方法は、図2および図3のフロー・チャートを参照すると、一層深く認めることができよう。説明の簡素化に限って、方法は一連のブロックとして示され説明される。しかしながら、特許請求する主題は、これらのブロックの順序には限定されないことは言うまでもないことであり、認められてしかるべきである。何故なら、一部のブロックは本明細書において図示および説明される順序とは異なる順序で現れてもよく、および/または他のブロックと同時に現れてもよいからである。更に、以下で説明する方法を実現するために、図示する全てのブロックが必要ではない場合もある。
[0037] 図2は、ネーティブ・データー・エンコーディングとの使用のためにメタデーターを動的に適応化する方法200のフロー・チャートを示す。これより、環境100のコンポーネントおよびデーターを頻繁に参照しながら、方法200について説明する。
[0038] 方法200は、オブジェクト・モデル記述におけるメタデーターの1つ以上の部分にアクセスするために、オブジェクト・モデル記述によってメタデーター・リーダーをインスタンス化する動作を含み、このメタデーター・リーダーは、ネーティブ・メタデーターを読み取るように構成され、ネーティブ・メタデーターは、メタデーター・リーダーによって期待されるエンコーディングで表されたメタデーターを含む(動作210)。例えば、インスタンス化モジュール110がメタデーター・リーダー115をオブジェクト・モデル記述116によってインスタンス化することができる。オブジェクト・モデル記述におけるメタデーターの部分にアクセスするために、 メタデーター・リーダーをインスタンス化することができる。メタデーターは、ネーティブ・タイプ(126)、またはフォーリン、非ネーティブ・タイプ(117)であってもよい。メタデーター・リーダーは、ネーティブ・フォーマットでエンコードされたメタデーターを読み取るように構成されるが、種々の異なる非ネーティブ・フォーマットの内任意のものでエンコードされたメタデーターを読み取ることができなくてもよい。つまり、メタデーター・リーダーは、アクセスされたメタデーターが非ネーティブ・エンコーディングでエンコードされたことを判定し(動作220)、更にこの非ネーティブ・エンコーディングをネーティブ・エンコーディングに変換するために実行すべきメタデーター変更を決定する(動作230)。
[0039] 変更は、非ネーティブ・エンコーディングによって参照されるタイプを、ネーティブ・エンコーディングによって使用されるタイプに変更する(またはエンコードし直す)ことを含むことができる。また、変更は、非ネーティブ・エンコーディングのメタデーター・フラグを、ネーティブ・エンコーディングのメタデーター・フラグに変更することも含むことができる。したがって、変更の後、メタデーター・リーダーはメタデーター・フラグを認識することができる。他の変更も、別個に、または以上で述べたものに加えて実行することもできる。場合によっては、ネーティブ・エンコーディングに沿うように、データー・タイプを書き直すこともできる。これらのデーター・タイプは、これらをメタデーター・リーダーに対して読み取り可能にするまたそうでなければアクセス可能にするために、動的に書き直すことができる。
[0040] また、方法200は、オブジェクト・モデルがネーティブ・ランタイムによって読み取り可能になるように、決定された変更にしたがって、オブジェクト・モデルのメタデーターを非ネーティブ・エンコーディングからネーティブ・エンコーディングに動的に適応化する動作も含む(動作240)。例えば、適応化モジュール125がモジュール120によって決定された決定変更121を使用して、非ネーティブ・メタデーター117をネーティブ・エンコーディング126に動的に適応化することができる。変更が適用された後、オブジェクト・モデル116はネーティブ・ランタイムによって読み取り可能になる。このように、動的適応化は、ユーザーが複数の異なる非ネーティブ・エンコーディングのメタデーターを読み取ることを可能にする。メタデーターがエンコードされる非ネーティブ・エンコーディングがいずれであっても、記載する本システムは、1つ以上の異なる変更を使用して、メタデーター・リーダーによって読み取り可能なネーティブ・エンコーディングにメタデーターを適応化する。
[0041] 実施形態の中には、動的適応化がメタデーター・インポート−読み取りレベルで行われるとよい場合がある。インポート−読み取りレベルでメタデーターを適応化することによって、ランタイムにおける後続の適応化を回避することができる。場合によっては、動的に適応化されたメタデーターを内部でまたは公に可視化するために、可視化モディファイアー(visibility modifier)を適用するとよい。この可視化モディファイアーは、所望に応じて、開発者105によってメタデーターにおいて変更することもできる。
[0042] 図3は、オブジェクト・モデル・タイプ参照を効率的に変更する方法300のフロー・チャートを示す。これより、環境100のコンポーネントおよびデーターを頻繁に参照しながら、方法300について説明する。
[0043] 方法300は、タイプ参照表をインスタンス化する動作(動作310)を含む。タイプ参照表は、タイプ定義要求を受け、メタデーター・リーダーによって読み取り可能なメタデーターに格納されている1つ以上のタイプ参照トークンを使用して、応答して、適したタイプ定義を与えるように構成される。例えば、インスタンス化モジュール110が、タイプ参照表130をインスタンス化することができる。タイプ参照表130は、タイプ定義要求を受け、応答して、メタデーター117に格納されている種々のタイプ参照トークンを使用して、タイプ定義131を与える。タイプ参照表130は、メタデーター・リーダー115によって読み取り可能なメタデーターを含む。インスタンス化されたタイプ参照表は、指定されたタイプに対するタイプ定義要求を、タイプ要求元から受ける(動作320)。その後、タイプ参照トークンがタイプ参照表130のメタデーターに実装され、要求されたタイプおよびメタデーター・リーダーによって読み取り可能なタイプに基づいて、メタデーター・リーダー115に対して1つ以上のタイプを動的に交換する(動作330)。したがって、タイプは、要求される通りにそして必要に応じて、タイプ参照表を使用して動的に交換される。非ネーティブ・タイプ参照は、インプレースでネーティブ・タイプ参照と交換される。これらの動的な交換は、非ネーティブ・タイプの標準化ビューを、メタデーター・リーダーに供給する。
[0044] また、方法300は、メタデーターにおいてタイプ参照トークンによって与えられる、動的に交換されたタイプに基づいて、要求されたタイプ定義をタイプ要求元に与える動作も含む(動作340)。つまり、タイプ参照表130は、動的に交換されたタイプに基づいて、タイプ定義131をタイプ要求元に与えることができる。タイプ参照表は、タイプ要求元の要求がタイプ参照を介して受け取られたことを確認するために、インスタンス化されてもよい。タイプは、タイプ参照表において交換される。このように、ユーザー要求は不変のままであるが、非ネーティブ定義の代わりにネーティブ・タイプ定義が使用される。
[0045] メタデーターのネーティブおよび非ネーティブ双方のエンコーディングは、同じメタデーター・ファイルにおいて作ることができる。つまり、同じメタデーター・ファイルが1つよりも多いエンコーディングを含むこともできる。1つのメタデーター・ファイルが複数のエンコーディングを有する場合、メタデーター・リーダーは、メタデーター・ファイルを要求しているユーザーを判定し、この判定に基づいて、メタデーター・ファイルの適したエンコーディングをこのユーザーに渡すことができる。したがって、ユーザーがネーティブ・エンコーディングを要求した場合、ネーティブ・ビューまたはネーティブ・エンコーディングがユーザーに送られる。このように、エンコーディングはユーザー毎に完全で一貫する。効率的な実行に備えるために、異なるタイプのユーザーによってアクセスされるメタデーター・ファイルのみが、ネーティブおよび非ネーティブ双方のエンコーディングでエンコードされる。前述のように、動的適応化は、種々の異なる変更方法を含むことができ、非ネーティブ・エンコーディングによって参照されるタイプを、ネーティブ・エンコーディングによって使用されるタイプに変更すること、および非ネーティブ・エンコーディングのメタデーター・フラグを、ネーティブ・エンコーディングのメタデーター・フラグに変更することを含む。このように、種々のタイプの非ネーティブ・メタデーターを、ネーティブ・データー・エンコーディングとの使用のために動的に適応化することができる。
[0046] 追加の実施形態について、図4から図9において説明する。例えば、図4において、ネーティブ・クライアント、メタデーター・リーダー、アダプター、およびフォーリン・オブジェクト・モデル間における相互作用が図示されている。フォーリン・エンコーディング(454)で受け取られるメタデーターは、メタデーター・リーダー452によって読み取り可能なネーティブ・エンコーディングに適応化されるために、メタデーター適応化モジュール453に送られればよい。ネーティブ・メタデーター・クライアント450(API境界451の他方側)は、ネーティブにエンコードされたメタデーターにアクセスするために、メタデーター・リーダーと相互作用することができる(例えば、APIを使用する)。
[0047] 図5は、複数のタイプを使用するときの、タイプ参照を使用するメタデーター・エンコーディングを示す。例えば、タイプ・コンシューマー510は、タイプ1(511A)と、1つ以上の他のタイプ(タイプn(511N))とを含むことができる。これらのタイプは、フォーリン・タイプ定義(例えば、502A)にタイプ参照(506A)を介してリンクすることができる。つまり、タイプ1(511A)をフォーリン・タイプ定義1(502A)にタイプ参照506Aを介してリンクすることができる。同様に、他のタイプ(タイプn)をフォーリン・タイプ定義502Nにタイプ参照506Nを介してリンクすることができる。フォーリン・タイプ定義は、タイプ定義表501に格納され、一方タイプ参照はタイプ参照表505に格納される。
[0048] 図6は、タイプ参照のインプレース変更によるフォーリン・タイプ・システムからネーティブ・タイプ・システムへの変換を示す。したがって、タイプ参照506Aおよび506Nは既にフォーリン・タイプ定義502Aおよび502N(図5)にポイントしたが、異なるネーティブ・タイプ定義にポイントするように、タイプ参照を変更することができる。つまり、タイプ参照506Aは、ネーティブ・タイプ定義626Aにポイントするように変更されてもよく、タイプ参照506Nは、ネーティブ・タイプ定義626Nにポイントするように変更されてもよい。したがって、フォーリン・タイプ・システムをネーティブ・タイプ・システムに変換することができる。
[0049] 図7は、メタデーター・コンテナ内部において、複数のメタデーター・ビューを要求する各エンティティがビューの別個のコピーを有することができることを示す。次いで、これらのコピーは、異なるビューを必要としないエンティティに対する共有ビューを参照する。したがって、メタデーター・コンテナ705におけるエンティティAは、2つの異なるビュー、即ち、第1ビュー710Aおよび第2ビュー710Bを有することができる。そして、エンティティAは2つのビューを有するが、エンティティBおよびCは各々それら自体の包括メタデーター・ビュー(それぞれ、711および712)を有する。更に、図8は、メタデーター・リーダーが第1メタデーター・コンシューマー701Aに、その所望のビューと一貫性があるメタデーター・コンテナ705におけるエンティティのビューを自動的に与えることができることを示す。したがって、コンシューマー701Aはメタデーター・ビュー710Aの方を好むので、メタデーター・リーダー702は、エンティティAにビュー710Aを示し、エンティティBおよびC(711および712)に包括ビューを示す。図9は、メタデーター・リーダー702がメタデーター・コンシューマー710Bに、その所望のビューと一貫性があるメタデーター・コンテナにおけるエンティティのビューを自動的に与えることを示す。したがって、コンシューマー701Bはメタデーター・ビュー701Bの方を好むので、メタデーター・リーダー702はエンティティAにビュー710Bを示し、エンティティBおよびC(711および712)に包括ビューを示す。
[0050] したがって、ネーティブ・データー・エンコーディングでの使用のためにメタデーターを動的に適応化する方法、システム、およびコンピューター・プログラム製品が提供される。更に、オブジェクト・モデル・タイプ参照を効率的に変更する方法、システム、およびコンピューター・プログラム製品が提供される。
[0051] 本発明は、その主旨や本質的な特性から逸脱することなく、他の特定形態においても具体化することができる。説明した実施形態は、あらゆる観点においても、限定ではなく例示として見なされてしかるべきである。したがって、本発明の範囲は、以上の説明によってではなく、添付する特許請求の範囲によって示されることとする。特許請求の範囲の均等の意味および範囲に該当する全ての変更は、その範囲内に含まれるものとする。

Claims (10)

  1. 複数の計算システムを含むコンピューター・ネットワーク環境において、少なくとも1つのプロセッサーとメモリーとを含むコンピューター・システムにおいて、オブジェクト・モデル・タイプ参照を効率的に変更するコンピューター実装方法であって、
    タイプ参照表をインスタンス化する動作であって、前記タイプ参照表が、タイプ定義要求を受け、応答して、メタデーター・リーダーによって読み取り可能なメタデーター・ファイルに格納されている1つ以上のタイプ参照トークンを使用して、しかるべきタイプ定義を与えるように構成され、前記メタデーター・ファイルが、該メタデーター・ファイル内の同じメタデーターのネーティブ・エンコーディングと非ネーティブ・エンコーディングを含む、動作と、
    前記インスタンス化されたタイプ参照表が、タイプ要求元から、指定されたタイプに対するタイプ定義要求を受ける動作と、
    どのタイプが要求されたか、およびどのタイプが前記メタデーター・リーダーの現在のコンシューマーにとって適しているかに基づいて、前記メタデーター・リーダーに対して1つ以上のタイプを動的に交換するために、前記タイプ参照表のメタデーター内にタイプ参照トークンを実装する動作と、
    前記メタデーターにおいて前記タイプ参照トークンによって与えられる、動的に交換されたタイプに基づいて、前記要求されたタイプ定義を前記タイプ要求元に与える動作と、
    を含む、コンピューター実装方法。
  2. 請求項1記載の方法において、非ネーティブ・タイプ参照が、ネーティブ・タイプ参照とインプレースで交換される、方法。
  3. 請求項1記載の方法において、前記動的交換が、非ネーティブ・タイプの標準化ビューを前記メタデーター・リーダーに与える、方法。
  4. 請求項1記載の方法において、前記タイプ参照表は、前記タイプ要求元の要求がタイプ参照を介して受けるのを確実にするようにインスタンス化される、方法。
  5. 請求項1記載の方法において、前記タイプは前記タイプ参照表内で交換されて、ネーティブ・タイプ定義が非ネーティブ定義の代わりに使用される間ユーザー要求が変化しないようにする、方法。
  6. コンピューター・システムであって、
    1つ以上のプロセッサーと、
    システム・メモリーと、
    コンピューター実行可能命令を格納した1つ以上のコンピューター読み取り可能記憶媒体と、
    を含み
    前記コンピューター実行可能命令が前記1つ以上のプロセッサーにより実行されると、前記コンピューター・システムに、オブジェクト・モデル・タイプ参照を効率的に変更する方法を実行させ、該方法が、
    タイプ参照表をインスタンス化する動作であって、前記タイプ参照表が、タイプ定義要求を受け、応答して、メタデーター・リーダーによって読み取り可能なメタデーター・ファイルに格納されている1つ以上のタイプ参照トークンを使用して、しかるべきタイプ定義を与えるように構成され、前記メタデーター・ファイルが、該メタデーター・ファイル内の同じメタデーターのネーティブ・エンコーディングと非ネーティブ・エンコーディングを含む、動作と、
    前記インスタンス化されたタイプ参照表が、タイプ要求元から、指定されたタイプに対するタイプ定義要求を受ける動作と、
    どのタイプが要求されたか、およびどのタイプが前記メタデーター・リーダーの現在のコンシューマーにとって適しているかに基づいて、前記メタデーター・リーダーに対して1つ以上のタイプを動的に交換するために、前記タイプ参照表のメタデーター内にタイプ参照トークンを実装する動作と、
    前記メタデーターにおいて前記タイプ参照トークンによって与えられる、動的に交換されたタイプに基づいて、前記要求されたタイプ定義を前記タイプ要求元に与える動作と、
    を含む、コンピューター・システム。
  7. 請求項記載のコンピューター・システムにおいて、非ネーティブ・タイプ参照が、ネーティブ・タイプ参照とインプレースで交換される、コンピューター・システム。
  8. 請求項記載のコンピューター・システムにおいて、前記動的交換が、非ネーティブ・タイプの標準化ビューを前記メタデーター・リーダーに与える、コンピューター・システム。
  9. 請求項記載のコンピューター・システムにおいて、前記タイプ参照表は、前記タイプ要求元の要求がタイプ参照を介して受けるのを確実にするようにインスタンス化される、コンピューター・システム。
  10. 請求項記載のコンピューター・システムにおいて、前記タイプは前記タイプ参照表内で交換されて、ネーティブ・タイプ定義が非ネーティブ定義の代わりに使用される間ユーザー要求が変化しないようにする、コンピューター・システム。
JP2014530710A 2011-09-12 2012-09-10 同じタイプの複数のメタデーター表現の効率的な提供 Active JP6101269B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201161533744P 2011-09-12 2011-09-12
US61/533,744 2011-09-12
US13/350,604 US8849996B2 (en) 2011-09-12 2012-01-13 Efficiently providing multiple metadata representations of the same type
US13/350,604 2012-01-13
PCT/US2012/054353 WO2013039801A2 (en) 2011-09-12 2012-09-10 Efficiently providing multiple metadata representations of the same type

Publications (3)

Publication Number Publication Date
JP2014534488A JP2014534488A (ja) 2014-12-18
JP2014534488A5 JP2014534488A5 (ja) 2015-11-05
JP6101269B2 true JP6101269B2 (ja) 2017-03-22

Family

ID=47830839

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014530710A Active JP6101269B2 (ja) 2011-09-12 2012-09-10 同じタイプの複数のメタデーター表現の効率的な提供

Country Status (7)

Country Link
US (2) US8849996B2 (ja)
EP (1) EP2756433B1 (ja)
JP (1) JP6101269B2 (ja)
KR (1) KR101941641B1 (ja)
CN (1) CN102999545B (ja)
TW (2) TWI569208B (ja)
WO (1) WO2013039801A2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8849996B2 (en) 2011-09-12 2014-09-30 Microsoft Corporation Efficiently providing multiple metadata representations of the same type
US9959114B2 (en) * 2015-03-16 2018-05-01 Microsoft Technology Licensing, Llc Representation of customizable types in a development environment
US10067755B2 (en) 2015-03-16 2018-09-04 Microsoft Technology Licensing, Llc Model driven customization framework
US10078501B2 (en) 2015-03-16 2018-09-18 Microsoft Technology Licensing, Llc Domain specific language modeling framework in a development environment
US10915531B2 (en) * 2015-08-14 2021-02-09 California Institute Of Technology Algebraic query language (AQL) database management system
JP6398944B2 (ja) * 2015-10-28 2018-10-03 オムロン株式会社 データ流通管理システム
US12019684B2 (en) 2017-01-18 2024-06-25 Microsoft Technology Licensing, Llc Application programming interface arranged to interface with a plurality of data sources
US10838819B2 (en) * 2017-01-18 2020-11-17 Microsoft Technology Licensing, Llc Including personal relationship metadata within duplicated resources shared across partitioned storage
US11222274B2 (en) 2017-12-01 2022-01-11 At&T Intellectual Property I, L.P. Scalable integrated information structure system

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE118661T1 (de) 1990-11-22 1995-03-15 Ascom Tech Ag Empfänger für ein dsss-signal.
EP1066574A4 (en) * 1998-03-27 2006-09-13 Ibm TREATMENT OF PRECALCULATED VIEWS
US6430575B1 (en) 1999-09-10 2002-08-06 Xerox Corporation Collaborative document management system with customizable filing structures that are mutually intelligible
US6904515B1 (en) * 1999-11-09 2005-06-07 Ati International Srl Multi-instruction set flag preservation apparatus and method
KR100865247B1 (ko) 2000-01-13 2008-10-27 디지맥 코포레이션 메타데이터를 인증하고 매체 신호들의 워터마크들 내에 메타데이터를 임베딩하는 방법
US6523046B2 (en) 2000-02-25 2003-02-18 Microsoft Corporation Infrastructure and method for supporting generic multimedia metadata
US6760721B1 (en) 2000-04-14 2004-07-06 Realnetworks, Inc. System and method of managing metadata data
JP3754912B2 (ja) * 2000-11-13 2006-03-15 キヤノン株式会社 マルチメディアコンテンツの配信方法
US8195760B2 (en) * 2001-01-11 2012-06-05 F5 Networks, Inc. File aggregation in a switched file system
US7295755B2 (en) * 2001-06-22 2007-11-13 Thomson Licensing Method and apparatus for simplifying the access of metadata
US7353287B2 (en) * 2001-09-26 2008-04-01 Adobe Systems Incorporated Marked foreign data blocks
US7197158B2 (en) 2002-06-28 2007-03-27 Microsoft Corporation Generation of metadata for acquired images
JP2004133675A (ja) * 2002-10-10 2004-04-30 Murata Mach Ltd 文書管理サーバ
KR100511785B1 (ko) 2002-12-20 2005-08-31 한국전자통신연구원 멀티미디어 컨텐츠 기술 메타데이터 저작 시스템 및 저작방법
US7069270B1 (en) 2003-02-05 2006-06-27 Oracle International Corporation Automated method and mechanism for converting a single instance application to a multiple instance application
TWI227853B (en) * 2003-08-29 2005-02-11 Rdc Semiconductor Co Ltd Data accessing method and system for processing unit
US8374284B2 (en) 2004-02-12 2013-02-12 Apple, Inc. Universal decoder
JP2005234634A (ja) * 2004-02-17 2005-09-02 Sony Corp データ管理方法
US8953908B2 (en) 2004-06-22 2015-02-10 Digimarc Corporation Metadata management and generation using perceptual features
US7730012B2 (en) 2004-06-25 2010-06-01 Apple Inc. Methods and systems for managing data
EP1792256B1 (en) 2004-09-03 2018-03-07 Red Hat, Inc. Methods, systems and computer program products for implementing single-node and cluster snapshots
KR20060025100A (ko) * 2004-09-15 2006-03-20 삼성전자주식회사 다국어를 지원하는 메타 데이터를 기록한 정보저장매체 및메타 데이터 처리방법
US7243207B1 (en) 2004-09-27 2007-07-10 Network Appliance, Inc. Technique for translating a pure virtual file system data stream into a hybrid virtual volume
US7480654B2 (en) 2004-12-20 2009-01-20 International Business Machines Corporation Achieving cache consistency while allowing concurrent changes to metadata
US20060184554A1 (en) 2005-02-17 2006-08-17 Microsoft Corporation System and method for extensible metadata architecture for digital images using in-place editing
US20060184576A1 (en) * 2005-02-17 2006-08-17 Microsoft Corporation System and method for extensible metadata architecture for digital images
US7325007B2 (en) * 2005-03-07 2008-01-29 Microsoft Corporation System and method for supporting non-native data types in a database API
US7743363B2 (en) * 2005-10-13 2010-06-22 Microsoft Corporation Extensible meta-data
US20070231781A1 (en) 2006-03-31 2007-10-04 Birgit Zimmermann Estimation of adaptation effort based on metadata similarity
US8219134B2 (en) 2006-12-13 2012-07-10 Quickplay Media Inc. Seamlessly switching among unicast, multicast, and broadcast mobile media content
JP4901880B2 (ja) * 2007-01-09 2012-03-21 日本電信電話株式会社 符号化装置、復号化装置、それらの方法、その方法のプログラム及びそのプログラムを記録した記録媒体
US8958483B2 (en) * 2007-02-27 2015-02-17 Adobe Systems Incorporated Audio/video content synchronization and display
WO2008130983A1 (en) * 2007-04-16 2008-10-30 Attune Systems, Inc. File aggregation in a switched file system
US20080270451A1 (en) 2007-04-24 2008-10-30 Interse A/S System and Method of Generating a Metadata Model for Use in Classifying and Searching for Information Objects Maintained in Heterogeneous Data Stores
KR101105970B1 (ko) * 2009-09-02 2012-01-17 한국전자통신연구원 다양한 포맷의 컨텐츠를 관리하는 미디어 미디에이터 시스템 및 방법
US20110208761A1 (en) 2010-02-24 2011-08-25 Microsoft Corporation Coordinating content from multiple data sources
US20110264495A1 (en) * 2010-04-22 2011-10-27 Apple Inc. Aggregation of tagged media item information
US20110289445A1 (en) * 2010-05-18 2011-11-24 Rovi Technologies Corporation Virtual media shelf
US8849996B2 (en) 2011-09-12 2014-09-30 Microsoft Corporation Efficiently providing multiple metadata representations of the same type

Also Published As

Publication number Publication date
US20140379740A1 (en) 2014-12-25
US20130067053A1 (en) 2013-03-14
KR101941641B1 (ko) 2019-04-11
WO2013039801A2 (en) 2013-03-21
CN102999545B (zh) 2016-11-23
TWI598813B (zh) 2017-09-11
TW201312464A (zh) 2013-03-16
WO2013039801A3 (en) 2013-05-02
TWI569208B (zh) 2017-02-01
JP2014534488A (ja) 2014-12-18
EP2756433B1 (en) 2020-09-09
EP2756433A4 (en) 2016-01-06
TW201706835A (zh) 2017-02-16
US9390152B2 (en) 2016-07-12
KR20140068966A (ko) 2014-06-09
EP2756433A2 (en) 2014-07-23
CN102999545A (zh) 2013-03-27
US8849996B2 (en) 2014-09-30

Similar Documents

Publication Publication Date Title
JP6101269B2 (ja) 同じタイプの複数のメタデーター表現の効率的な提供
KR101377311B1 (ko) 문서에서의 차트 통합
AU2012352719B2 (en) Autonomous network streaming
US20130311229A1 (en) Proactive risk assessment for system architecture evolutions
US11061739B2 (en) Dynamic infrastructure management and processing
JP5677319B2 (ja) ウェブに基づくダイアグラム視覚性の拡張性
US10970047B2 (en) Lossless bi-directional formatting of program source code
US20180101514A1 (en) Use of temporary optimized settings to reduce cycle time of automatically created spreadsheets
US8959501B2 (en) Type and length abstraction for data types
US8495664B2 (en) System, method and program product for invoking a remote method
JP2011501327A (ja) 宣言型モデルの解釈
US7716653B2 (en) Configurable importers and resource writers for converting data into another format
US12001458B2 (en) Multi-cloud object store access
US20120191650A1 (en) Synchronizing database projects with partner projects
US10482171B2 (en) Digital form optimization
CN115629763A (zh) 目标代码的生成方法、npu指令的显示方法及装置
US20070101261A1 (en) System and method for dynamic model-driven transformations
US20210055971A1 (en) Method and node for managing a request for hardware acceleration by means of an accelerator device
US10956416B2 (en) Data schema discovery with query optimization

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20150513

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150910

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150910

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161012

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161024

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170124

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170127

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170224

R150 Certificate of patent or registration of utility model

Ref document number: 6101269

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250