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

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

Info

Publication number
JP2014534488A
JP2014534488A JP2014530710A JP2014530710A JP2014534488A JP 2014534488 A JP2014534488 A JP 2014534488A JP 2014530710 A JP2014530710 A JP 2014530710A JP 2014530710 A JP2014530710 A JP 2014530710A JP 2014534488 A JP2014534488 A JP 2014534488A
Authority
JP
Japan
Prior art keywords
metadata
native
type
encoding
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.)
Granted
Application number
JP2014530710A
Other languages
English (en)
Other versions
JP2014534488A5 (ja
JP6101269B2 (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)

Abstract

実施形態は、ネーティブ・データー・エンコーディングでの使用のためにメタデーターを動的に適応化し、オブジェクト・モデル・タイプ参照を効率的に変更することを目的とする。1つのシナリオでは、コンピューター・システムが、オブジェクト・モデル記述におけるメタデーターの種々の部分にアクセスするために、オブジェクト・モデル記述によってメタデーター・リーダーをインスタンス化する。メタデーター・リーダーは、ネーティブ・メタデーターを読み取るように構成される。このネーティブ・メタデーターは、メタデーター/リーダーによって期待されるエンコーディングで表されたメタデーターである。メタデーター・リーダーは、アクセスされたメタデーターが非ネーティブ・エンコーディングでエンコードされたと決定し、次いで非ネーティブ・エンコーディングをネーティブ・エンコーディングに変換するために、実行すべきメタデーター変更を決定する。次いで、コンピューター・システムは、決定した変更にしたがって、オブジェクト・モデルのメタデーターを非ネーティブ・エンコーディングからネーティブ・エンコーディングに動的に適応化する。こうして、オブジェクト・モデルはネーティブ・ランタイムによって読み取り可能となる。【選択図】図1

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 (15)

  1. 複数の計算システムを含むコンピューター・ネットワーク環境において、少なくとも1つのプロセッサーとメモリーとを含むコンピューター・システムにおいて、ネーティブ・データー・エンコーディングでの使用のためにメタデーターを動的に適応化するコンピューター実装方法であって、
    オブジェクト・モデル記述におけるメタデーターの1つ以上の部分にアクセスするために、前記オブジェクト・モデル記述によってメタデーター・リーダーをインスタンス化する動作であって、前記メタデーター・リーダーが、ネーティブ・メタデーターを読み取るように構成され、前記ネーティブ・メタデーターが、前記メタデーター・リーダーによって期待されるエンコーディングで表されたメタデーターを含む、動作と、
    前記メタデーター・リーダーが、前記アクセスされたメタデーターが非ネーティブ・エンコーディングでエンコードされたと決定する動作と、
    前記非ネーティブ・エンコーディングをネーティブ・エンコーディングに変換するために、どのメタデーター変更を実行すべきか前記メタデーター・リーダーが決定する動作と、
    前記オブジェクト・モデルがネーティブ・ランタイムによって読み取り可能となるように、前記決定された変更にしたがって、前記オブジェクト・モデルのメタデーターを非ネーティブ・エンコーディングからネーティブ・エンコーディングに動的に適応化する動作と、
    を含む、コンピューター実装方法。
  2. 請求項1記載の方法において、前記動的適応化が、ユーザーがメタデーターを複数の異なる非ネーティブ・エンコーディングで読み取ることを可能にする、方法。
  3. 請求項1記載の方法において、前記動的適応化が、メタデーター・インポート−読み取りレベルで行われる、方法。
  4. 請求項3記載の方法において、前記メタデーター・インポート−読み取りレベルにおける動的適応化が、ランタイム・レベルにおける1つ以上の後続の適応化を回避する、方法。
  5. 請求項1記載の方法において、前記動的に適応化されたメタデーターを内部でまたは公に可視化するために、可視化モディファイアーが適用される、方法。
  6. 請求項1記載の方法において、前記ネーティブ・コーディングに沿うために、1つ以上のデーター・タイプが書き換えられる、方法。
  7. 請求項1記載の方法において、前記メタデーターのネーティブおよび非ネーティブ・エンコーディングが、同じメタデーター・ファイルにおいて作られる、方法。
  8. 請求項7記載の方法において、前記メタデーター・リーダーが、どのユーザーが前記メタデーター・ファイルを要求しているのか決定し、この決定に基づいて、前記メタデーター・ファイルの適したエンコーディングを前記ユーザーに渡すように構成される、方法。
  9. 請求項7記載の方法において、前記エンコーディングが、ユーザー毎に完全で一貫する、方法。
  10. 請求項7記載の方法において、ネーティブおよび非ネーティブ・ユーザーに対して異なってエンコードされるメタデーター・エンティティのみが、ネーティブ・エンコーディングおよび非ネーティブ・エンコーディングの両方でエンコードされる、方法。
  11. 請求項10記載の方法において、前記ユーザーが、どのタイプのエンコーディングが彼らに提供されるべきか指定する、方法。
  12. 複数の計算システムを含むコンピューター・ネットワーク環境において、少なくとも1つのプロセッサーとメモリーとを含むコンピューター・システムにおいて、オブジェクト・モデル・タイプ参照を効率的に変更するコンピューター実装方法であって、
    タイプ参照表をインスタンス化する動作であって、前記タイプ参照表が、タイプ定義要求を受け、応答して、メタデーター・リーダーによって読み取り可能なメタデーターに格納されている1つ以上のタイプ参照トークンを使用して、しかるべきタイプ定義を与えるように構成される、動作と、
    前記インスタンス化されたタイプ参照表が、タイプ要求元から、指定されたタイプに対するタイプ定義要求を受ける動作と、
    どのタイプが要求されたか、およびどのタイプが前記メタデーター・リーダーの現在のコンシューマーにとって適しているかに基づいて、前記メタデーター・リーダーに対して1つ以上のタイプを動的に交換するために、前記タイプ参照表のメタデーター内にタイプ参照トークンを実装する動作と、
    前記メタデーターにおいて前記タイプ参照トークンによって与えられる、動的に交換されたタイプに基づいて、前記要求されたタイプ定義を前記タイプ要求元に与える動作と、
    を含む、コンピューター実装方法。
  13. 請求項12記載の方法において、非ネーティブ・タイプ参照が、ネーティブ・タイプ参照とインプレースで交換される、方法。
  14. 請求項12記載の方法において、前記動的交換が、非ネーティブ・タイプの標準化ビューを前記メタデーター・リーダーに与える、方法。
  15. コンピューター・システムであって、
    1つ以上のプロセッサーと、
    システム・メモリーと、
    コンピューター実行可能命令が格納されている1つ以上のコンピューター読み取り可能記憶媒体であって、前記命令を前記1つ以上のプロセッサーによって実行すると、ネーティブ・データー・エンコーディングでの使用のためにメタデーターを動的に適応化する方法を、前記計算システムに実行させる、1つ以上のコンピューター読み取り可能記憶媒体と、
    を含み、前記方法が、
    オブジェクト・モデル記述におけるメタデーターの1つ以上の部分にアクセスするために、メタデーター・リーダーを前記オブジェクト・モデル記述によってインスタンス化する動作であって、前記メタデーター・リーダーがネーティブ・メタデーターを読み取るように構成され、前記ネーティブ・メタデーターが、前記メタデーター・リーダーによって期待されるエンコードで表されたメタデーターを含む、動作と、
    前記メタデーター・リーダーが、前記アクセスされたメタデーターが非ネーティブ・エンコーディングでエンコードされていると決定する動作と、
    前記非ネーティブ・エンコーディングをネーティブ・エンコーディングに変換するためには、どのメタデーター変更を実行すべきか、前記メタデーター・リーダーが決定する動作と、
    前記オブジェクト・モデルがネーティブ・ランタイムによって読み取り可能となるように、前記決定された変更にしたがって、前記オブジェクト・モデルのメタデーターを非ネーティブ・エンコーディングからネーティブ・エンコーディングに動的に適応化する動作であって、前記メタデーターのネーティブおよび非ネーティブ・エンコーディングが、同じメタデーター・ファイルにおいて作られる、動作と、
    前記メタデーター・リーダーが、どのユーザーが前記メタデーター・ファイルを要求しているのか決定する動作と、
    前記決定に基づいて、前記メタデーター・ファイルの適したエンコーディングを前記ユーザーに渡す動作と、
    を含む、コンピューター・システム。
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 2012-01-13
US13/350,604 US8849996B2 (en) 2011-09-12 2012-01-13 Efficiently providing multiple metadata representations of the same type
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 true JP2014534488A (ja) 2014-12-18
JP2014534488A5 JP2014534488A5 (ja) 2015-11-05
JP6101269B2 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) TWI598813B (ja)
WO (1) WO2013039801A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017073660A1 (ja) * 2015-10-28 2017-05-04 オムロン株式会社 データ流通管理システム

Families Citing this family (7)

* 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
US10078501B2 (en) 2015-03-16 2018-09-18 Microsoft Technology Licensing, Llc Domain specific language modeling framework in a development environment
US10067755B2 (en) 2015-03-16 2018-09-04 Microsoft Technology Licensing, Llc Model driven customization framework
US10915531B2 (en) * 2015-08-14 2021-02-09 California Institute Of Technology Algebraic query language (AQL) database management system
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

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020107973A1 (en) * 2000-11-13 2002-08-08 Lennon Alison Joan Metadata processes for multimedia database access
JP2004133675A (ja) * 2002-10-10 2004-04-30 Murata Mach Ltd 文書管理サーバ
JP2005234634A (ja) * 2004-02-17 2005-09-02 Sony Corp データ管理方法
WO2008084738A1 (ja) * 2007-01-09 2008-07-17 Nippon Telegraph And Telephone Corporation 符号化復号化装置、方法、プログラム、記録媒体
US20110055176A1 (en) * 2009-09-02 2011-03-03 Korea Advanced Institute Of Science And Technology Media mediator system and method for managing contents of various formats

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0486833B1 (de) 1990-11-22 1995-02-15 Ascom Tech Ag Empfänger für ein DSSS-Signal
BR9909896A (pt) * 1998-03-27 2001-09-11 Informix Software Inc Processamento de vistas pré-computadas
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
EP1249002B1 (en) 2000-01-13 2011-03-16 Digimarc Corporation Authenticating metadata and embedding metadata in watermarks of media signals
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
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
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
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
US20060184576A1 (en) 2005-02-17 2006-08-17 Microsoft Corporation System and method for extensible metadata architecture for digital images
US20060184554A1 (en) 2005-02-17 2006-08-17 Microsoft Corporation System and method for extensible metadata architecture for digital images using in-place editing
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
US9064010B2 (en) 2006-12-13 2015-06-23 Quickplay Media Inc. Encoding and transcoding for mobile media
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
US20080270351A1 (en) 2007-04-24 2008-10-30 Interse A/S System and Method of Generating and External Catalog for Use in Searching for Information Objects in Heterogeneous Data Stores
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

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020107973A1 (en) * 2000-11-13 2002-08-08 Lennon Alison Joan Metadata processes for multimedia database access
JP2002236695A (ja) * 2000-11-13 2002-08-23 Canon Inc マルチメディアデータベースアクセスのメタデータ処理
JP2004133675A (ja) * 2002-10-10 2004-04-30 Murata Mach Ltd 文書管理サーバ
JP2005234634A (ja) * 2004-02-17 2005-09-02 Sony Corp データ管理方法
WO2008084738A1 (ja) * 2007-01-09 2008-07-17 Nippon Telegraph And Telephone Corporation 符号化復号化装置、方法、プログラム、記録媒体
US20100017373A1 (en) * 2007-01-09 2010-01-21 Nippon Telegraph And Telephone Corporation Encoder, decoder, their methods, programs thereof, and recording media having programs recorded thereon
US20110055176A1 (en) * 2009-09-02 2011-03-03 Korea Advanced Institute Of Science And Technology Media mediator system and method for managing contents of various formats

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017073660A1 (ja) * 2015-10-28 2017-05-04 オムロン株式会社 データ流通管理システム
JP2017084134A (ja) * 2015-10-28 2017-05-18 オムロン株式会社 データ流通管理システム

Also Published As

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

Similar Documents

Publication Publication Date Title
JP6101269B2 (ja) 同じタイプの複数のメタデーター表現の効率的な提供
JP7406606B2 (ja) テキスト認識モデルの訓練方法、テキスト認識方法及び装置
KR101377311B1 (ko) 문서에서의 차트 통합
AU2012352719B2 (en) Autonomous network streaming
US8949785B2 (en) Custom compound types in declarative programs
US10970047B2 (en) Lossless bi-directional formatting of program source code
US20080071887A1 (en) Intelligent translation of electronic data interchange documents to extensible markup language representations
US11061739B2 (en) Dynamic infrastructure management and processing
US8756487B2 (en) System and method for context sensitive content management
CN111796727A (zh) 一种界面数据处理方法及装置
US20180101514A1 (en) Use of temporary optimized settings to reduce cycle time of automatically created spreadsheets
US10482171B2 (en) Digital form optimization
US20220284371A1 (en) Method, device and medium for a business function page
US20070101261A1 (en) System and method for dynamic model-driven transformations
US10956416B2 (en) Data schema discovery with query optimization
US11573960B2 (en) Application-based query transformations
US20220253455A1 (en) Reducing character set conversion
CN114564231A (zh) 数据查询方法、装置、电子设备、介质和程序产品
CN110018824A (zh) 一种将领域对象转换为视图对象的方法和装置

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