JP6101269B2 - Efficient provision of multiple metadata representations of the same type - Google Patents

Efficient provision of multiple metadata representations of the same type 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
Japanese (ja)
Other versions
JP2014534488A5 (en
JP2014534488A (en
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/en
Publication of JP2014534488A5 publication Critical patent/JP2014534488A5/ja
Application granted granted Critical
Publication of JP6101269B2 publication Critical patent/JP6101269B2/en
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

Description

従来技術Conventional technology

[0001] コンピューターは、労働力、家庭、移動体デバイス、および多くの他の場所に深く統合されつつある。コンピューターは、大量の情報を素早くしかも効率的に処理することができる。コンピューター・システムにおいて実行するように設計されたソフトウェア・アプリケーションは、業務用アプリケーション、学業(schoolwork)、娯楽等を含む広い種々の機能を実行することをユーザーに可能にする。ソフトウェア・アプリケーションは、文書を草稿するためのワープロ・アプリケーション、または電子メールを送信、受信、および編成するための電子メール・プログラムというような、具体的なタスクを実行するように設計されることが多い。   [0001] Computers are being deeply integrated into the workforce, home, mobile devices, and many other places. Computers can process large amounts of information quickly and efficiently. Software applications designed to run on computer systems allow users to perform a wide variety of functions, including business applications, schoolwork, entertainment, and the like. Software applications can be designed to perform specific tasks, such as word processing applications for drafting documents or email programs for sending, receiving, and organizing emails. Many.

[0002] 場合によっては、ソフトウェア・アプリケーションが種々の形態のメタデーターを実装する(implement)ように設計されることもある。このメタデーターは、異なるメタデーター・タイプによって表されることもある。どのメタデーター・タイプを各ユーザーが見ることを期待しているかに基づいて、異なるタイプを異なるユーザーのために使用することができる。このような状況では、複数の異なるメタデーター・ファイルが格納され、種々のメタデーター・タイプを提供するために使用されるのが通例である。このような多数の(an array of)メタデーターを格納し実装すると、正しいメタデーター・ファイルを引き出して適用するときに非効率を招く虞がある。   [0002] In some cases, software applications may be designed to implement various forms of metadata. This metadata may be represented by different metadata types. Different types can be used for different users based on what metadata type each user expects to see. In such situations, a plurality of different metadata files are typically stored and used to provide various metadata types. Storing and implementing such an array of metadata can lead to inefficiencies when extracting and applying the correct metadata file.

[0003] 本明細書において記載する実施形態は、メタデーターをネーティブ・データー・エンコーディングによる使用のために動的に適応化させ、オブジェクト・モデル・タイプ参照を効率的に変更することを目的とする。一実施形態では、コンピューター・システムが、オブジェクト・モデル記述におけるメタデーターの種々の部分にアクセスするために、オブジェクト・モデル記述によってメタデーター・リーダー(metadata reader) をインスタンス化する。メタデーター・リーダーは、ネーティブ・メタデーターを読み取るように構成され、ネーティブ・メタデーターとは、メタデーター・リーダーによって期待されるエンコーディングで表現されたメタデーターである。メタデーター・リーダーは、アクセスされたメタデーターが非ネーティブ・エンコードでエンコードされたことを判定し、次いでこの非ネーティブ・エンコーディングをネーティブ・エンコーディングに変換するためには、どのメタデーター変更を実行すべきか判定する。次いで、計算システムは、オブジェクト・モデルのメタデーターを、非ネーティブ・エンコーディングからネーティブ・エンコーディングに、決定された変更にしたがって動的に適応化する。こうして、オブジェクト・モデルは、ネーティブ・ランタイムによって読み取り可能になる。   [0003] The embodiments described herein are aimed at dynamically adapting metadata for use with native data encoding and efficiently changing object model type references. . In one embodiment, a computer system instantiates a metadata reader with an object model description to access various parts of the metadata in the object model description. The metadata reader is configured to read native metadata, which is metadata expressed in the encoding expected by the metadata reader. The metadata reader determines that the accessed metadata was encoded with non-native encoding, and then what metadata change should be performed to convert this non-native encoding to native encoding judge. The computing system then dynamically adapts the object model metadata from the non-native encoding to the native encoding according to the determined change. Thus, the object model can be read by the native runtime.

[0004] 他の実施形態では、コンピューター・システムが、タイプ参照表をインスタンス化する。このタイプ参照表は、タイプ定義要求を受け、応答してしかるべきタイプ定義を与える。このタイプ参照表は、メタデーター・リーダーによって読み取ることができるメタデーターを含む。インスタンス化されたタイプ参照表は、タイプ要求元から、指定されたタイプに対するタイプ定義要求を受ける。コンピューター・システムは、タイプ参照をタイプ参照表内に実装し、どのタイプが要求されたか、そしてメタデーター・リーダーの現在のコンシューマーにとってどのタイプが適しているかに基づいて、メタデーター・リーダーに対して種々のタイプを動的に交換する。次いで、コンピューター・システムは、動的に交換されたタイプに基づいて、要求されたタイプ定義をタイプ要求元に供給する。   [0004] In other embodiments, a computer system instantiates a type lookup table. This type lookup table receives the type definition request and responds with the appropriate type definition. This type lookup table contains metadata that can be read by a metadata reader. The instantiated type lookup table receives a type definition request for the specified type from the type requester. The computer system implements a type reference in the type reference table, and for the metadata reader based on what type is requested and what type is appropriate for the current consumer of the metadata reader. Different types are exchanged dynamically. The computer system then provides the requested type definition to the type requester based on the dynamically exchanged type.

[0005] この摘要は、詳細な説明において以下で更に説明する概念から選択したものを、簡略化した形態で紹介するために設けられている。この摘要は、特許請求する主題の主要な特徴や必須の特徴を特定することを意図するのではなく、特許請求する主題の範囲を判断するときに補助として用いられることを意図するのでもない。   [0005] This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the detailed description. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.

[0006] 追加の特徴および利点は、以下に続く説明において記載され、部分的にこの記載から当業者には明白であり、または本明細書における教示の実践によって学習することもできる。本発明の実施形態の特徴および利点は、添付した特許請求の範囲において特定的に指摘される手段(instruments)および組み合わせによって実現され、得ることができる。本発明の実施形態の特徴は、以下の説明および添付した特許請求の範囲から一層明白となり、以下に記載する本発明の実践によって学習することができる。   [0006] Additional features and advantages are set forth in the description that follows, and in part will be apparent to those skilled in the art from this description, or may be learned by practice of the teachings herein. The features and advantages of embodiments of the invention may be realized and obtained by means of the instruments and combinations particularly pointed out in the appended claims. Features of embodiments of the present invention will become more apparent from the following description and appended claims, and can be learned by the practice of the invention described below.

[0007] 本発明の実施形態の以上のおよび他の利点や特徴を更に明確化するために、添付図面を参照して、本発明を更に特定した実施形態を描写する(render)。尚、これらの図面は本発明の典型的な実施形態のみを図示するのであり、したがって発明の範囲の限定と考えてはならないことは認められよう。本発明の実施形態について、添付図面の使用によって、更に特定し詳細に説明する(described and explained)。図面において、
図1は、本発明の実施形態が動作することができ、ネーティブ・データー・エンコーディングによる使用のためにメタデーターを動的に適応化し、オブジェクト・モデル・タイプ参照を効率的に変更することを含む、コンピューター・アーキテクチャーを示す。 図2は、ネーティブ・データー・エンコーディングによる使用のためにメタデーターを動的に適応化する方法例のフロー・チャートを示す。 図3は、オブジェクト・モデル・タイプ参照を効率的に変更する方法例のフロー・チャートを示す。 図4は、フォーリン・メタデーター(foreign metadata)をネーティブ・メタデーターに変換する実施形態を示す。 図5は、タイプ参照を使用してメタデーターをエンコードする実施形態を示す。 図6は、タイプ参照の内部変更によって、フォーリン・タイプ・システムをネーティブ・タイプ・システムに変換する実施形態を示す。 図7は、メタデーター・コンテナの実施形態を示す。 図8は、メタデーター・コンテナのビューが与えられる実施形態を示す。 図9は、メタデーター・コンテナのビューが与えられる代替実施形態を示す。
[0007] To further clarify the above and other advantages and features of embodiments of the present invention, with reference to the accompanying drawings, a more specific embodiment of the present invention will be rendered. It will be appreciated that these drawings depict only typical embodiments of the invention and are therefore not to be considered limiting of the scope of the invention. Embodiments of the present invention will be further specified and described in detail through the use of the accompanying drawings (described and explained). In the drawing
FIG. 1 illustrates that embodiments of the present invention can operate, including dynamically adapting metadata for use with native data encoding and efficiently changing object model type references. , Showing computer architecture. FIG. 2 shows a flow chart of an example method for dynamically adapting metadata for use with native data encoding. FIG. 3 shows a flow chart of an example method for efficiently changing an object model type reference. FIG. 4 illustrates an embodiment for converting foreign metadata into native metadata. FIG. 5 illustrates an embodiment of encoding metadata using type references. FIG. 6 illustrates an embodiment for converting a foreign type system to a native type system by internal modification of the type reference. FIG. 7 illustrates an embodiment of a metadata container. FIG. 8 illustrates an embodiment in which a view of a metadata container is provided. FIG. 9 illustrates an alternative embodiment in which a view of the metadata container is provided.

[0017] 本明細書において記載する実施形態は、メタデーターをネーティブ・データー・エンコーディングによる使用のために動的に適応化させ、オブジェクト・モデル・タイプ参照を効率的に変更することを目的とする。一実施形態では、コンピューター・システムが、オブジェクト・モデル記述におけるメタデーターの種々の部分にアクセスするために、オブジェクト・モデル記述によってメタデーター・リーダーをインスタンス化する。メタデーター・リーダーは、ネーティブ・メタデーターを読み取るように構成される。ネーティブ・メタデーターとは、メタデーター・リーダーによって期待されるエンコーディングで表現されたメタデーターである。メタデーター・リーダーは、アクセスされたメタデーターが非ネーティブ・エンコードでエンコードされたことを判定し、次いでこの非ネーティブ・エンコーディングをネーティブ・エンコーディングに変換するためには、どのメタデーター変更を実行すべきか決定する。次いで、計算システムは、オブジェクト・モデルのメタデーターを、非ネーティブ・エンコーディングからネーティブ・エンコーディングに、決定された変更にしたがって動的に適応化する。こうして、オブジェクト・モデルは、ネーティブ・ランタイムによって読み取り可能になる。   [0017] Embodiments described herein aim to dynamically adapt metadata for use with native data encoding and to efficiently change object model type references. . In one embodiment, a computer system instantiates a metadata reader with an object model description to access various parts of the metadata in the object model description. The metadata reader is configured to read native metadata. Native metadata is metadata expressed in the encoding expected by the metadata reader. The metadata reader determines that the accessed metadata was encoded with non-native encoding, and then what metadata change should be performed to convert this non-native encoding to native encoding decide. The computing system then dynamically adapts the object model metadata from the non-native encoding to the native encoding according to the determined change. Thus, the object model can be read by the native runtime.

[0018] 他の実施形態では、コンピューター・システムが、タイプ参照表をインスタンス化する。このタイプ参照表は、タイプ定義要求を受け、応答においてしかるべきタイプ定義を与える。このタイプ参照表は、メタデーター・リーダーによって読み取ることができるメタデーターを含む。インスタンス化されたタイプ参照表は、タイプ要求元から、指定されたタイプに対するタイプ定義要求を受ける。コンピューター・システムは、タイプ参照をタイプ参照表内に実装し、どのタイプが要求されたか、そしてメタデーター・リーダーの現在のコンシューマーにとってどのタイプが適しているかに基づいて、メタデーター・リーダーに対して種々のタイプを動的に交換する。次いで、コンピューター・システムは、動的に交換されたタイプに基づいて、要求されたタイプ定義をタイプ要求元に供給する。   [0018] In other embodiments, a computer system instantiates a type lookup table. This type lookup table receives the type definition request and gives the appropriate type definition in the response. This type lookup table contains metadata that can be read by a metadata reader. The instantiated type lookup table receives a type definition request for the specified type from the type requester. The computer system implements a type reference in the type reference table, and for the metadata reader based on what type is requested and what type is appropriate for the current consumer of the metadata reader. Different types are exchanged dynamically. The computer system then provides the requested type definition to the type requester based on the dynamically exchanged type.

[0019] 以下の説明では、実行することができる複数の方法および方法の動作に言及する。尚、これらの方法の動作は、ある順序で説明されることがあり、または特定の順序で出てくるようにフロー・チャートにおいて示されることがあるが、特に述べられていない限り、または要求されない限り、特定の順序が必ずしも必要でないことは、注記してしかるべきである。何故なら、ある動作は、この動作が実行される前に完了する他の動作に依存するからである。   [0019] The following description refers to a number of methods and method operations that can be performed. Note that the operation of these methods may be described in a certain order, or may be shown in a flow chart as they appear in a particular order, but is not required or required unless otherwise stated. It should be noted that a specific order is not always necessary. This is because certain operations depend on other operations that complete before this operation is performed.

[0020] 本発明の実施形態は、例えば、以下で更に詳しく説明する1つ以上のプロセッサーおよびシステム・メモリーというような、コンピューター・ハードウェアを含む、特殊目的コンピューターまたは汎用コンピューターを含むあるいは利用することができる。また、本発明の範囲内の実施形態は、コンピューター実行可能命令および/またはデーター構造を送るまたは格納するために物理コンピューター読み取り可能媒体および他のコンピューター読み取り可能媒体も含む。このようなコンピューター読み取り可能媒体は、汎用コンピューター・システムまたは特殊目的コンピューター・システムによってアクセスすることができる任意の入手可能な媒体とすることができる。コンピューター実行可能命令をデーターの形態で格納するコンピューター読み取り可能媒体は、コンピューター記憶媒体である。コンピューター実行可能命令を送るコンピューター読み取り可能媒体は、送信媒体である。つまり、一例として、そして限定ではなく、本発明の実施形態は、少なくとも2つの別々の異なる種類のコンピューター読み取り可能媒体、即ち、コンピューター記憶媒体および送信媒体を含むことができる。   [0020] Embodiments of the invention include or utilize a special purpose computer or general purpose computer, including computer hardware, such as, for example, one or more processors and system memory described in more detail below. Can do. Embodiments within the scope of the present invention also include physical computer-readable media and other computer-readable media for sending or storing computer-executable instructions and / or data structures. Such computer-readable media can be any available media that can be accessed by a general purpose or special purpose computer system. Computer-readable media that store computer-executable instructions in the form of data are computer storage media. A computer readable medium that sends computer-executable instructions is a transmission medium. That is, by way of example and not limitation, embodiments of the present invention can include at least two separate and different types of computer readable media: computer storage media and transmission media.

[0021] コンピューター記憶媒体には、RAM、ROM、EEPROM、CD−ROM、RAMに基づくソリッド・ステート・デバイス(SSD)、フラッシュ・メモリー、位相変化メモリー(PCM)、または他のタイプのメモリー、あるいは他の光ディスク・ストレージ、磁気ディスク・ストレージまたは他の磁気記憶デバイス、あるいは所望のプログラム・コード手段をコンピューター実行可能命令、データー、またはデーター構造の形態で格納するために使用することができ、汎用または特殊目的コンピューターによってアクセスすることができる任意の他の媒体が含まれる。   [0021] Computer storage media may include RAM, ROM, EEPROM, CD-ROM, solid state device (SSD) based on RAM, flash memory, phase change memory (PCM), or other types of memory, or Can be used to store other optical disk storage, magnetic disk storage or other magnetic storage devices, or desired program code means in the form of computer-executable instructions, data, or data structures, Any other medium that can be accessed by a special purpose computer is included.

[0022] 「ネットワーク」は、コンピューター・システムおよび/またはモジュールおよび/または他の電子デバイス間における電子データーの移送(transport)を可能にする1つ以上のデーター・リンクおよび/またはデーター・スイッチと定められる。情報がネットワーク(ハードワイヤ、ワイヤレス、あるいはハードワイヤまたはワイヤレスの組み合わせ)を介してコンピューターに移されるまたは提供されるとき、このコンピューターはこの接続を適正に送信媒体と見なす。送信媒体は、データーまたは所望のプログラム・コード手段をコンピューター実行可能命令の形態またはデーター構造の形態で運ぶ(carry)ために使用することができ、汎用コンピューターまたは特殊目的コンピューターによってアクセスすることができるネットワークを含むことができる。以上の組み合わせも、コンピューター読み取り可能媒体の範囲に含まれてしかるべきである。   [0022] A "network" is defined as one or more data links and / or data switches that allow the transport of electronic data between computer systems and / or modules and / or other electronic devices. It is done. When information is transferred or provided to a computer over a network (hardwire, wireless, or a combination of hardwire or wireless), the computer properly regards this connection as a transmission medium. Transmission media can be used to carry data or desired program code means in the form of computer-executable instructions or data structures and can be accessed by a general purpose or special purpose computer Can be included. Combinations of the above should also be included within the scope of computer-readable media.

[0023] 更に、種々のコンピューター・システム・コンポーネントに達すると、コンピューター実行可能命令またはデーター構造の形態となっているプログラム・コード手段を自動的に送信媒体からコンピューター記憶媒体に(またはその逆)移すことができる。例えば、ネットワークまたはデーター・リンクを介して受信されたコンピューター実行可能命令またはデーター構造は、ネットワーク・インターフェース・モジュール(例えば、ネットワーク・インターフェース・カード、即ち、「NIC」)内においてRAMにバッファし、最終的にコンピューター・システムRAMおよび/またはコンピューター・システムにおいてそれよりも揮発性でないコンピューター記憶媒体に移すことができる。このため、コンピューター記憶媒体は、送信媒体も利用するコンピューター・システム・コンポーネントに(または通信媒体を主に利用するコンピューター・システム・コンポーネントにさえも)含むことができることは言うまでもない。   [0023] Further, upon reaching various computer system components, program code means in the form of computer-executable instructions or data structures are automatically transferred from a transmission medium to a computer storage medium (or vice versa). be able to. For example, computer-executable instructions or data structures received over a network or data link are buffered in RAM within a network interface module (eg, a network interface card, or “NIC”), and finally Computer system RAM and / or computer storage media that is less volatile in the computer system. Thus, it will be appreciated that a computer storage medium may be included in a computer system component that also utilizes a transmission medium (or even a computer system component that primarily utilizes a communication medium).

[0024] コンピューター実行可能(またはコンピューター解釈可能)命令は、例えば、汎用コンピューター、特殊目的コンピューター、または特殊目的処理デバイスに、一定の機能または1群の機能を実行させる命令を含む。コンピューター実行可能命令は、例えば、バイナリー、アセンブリー言語のような中間フォーマット命令、またはソース・コードでさえも含んでもよい。本主題は構造的特徴および/または方法論的動作に特定の文言で説明されているが、添付した特許請求の範囲に定められる本主題は、必ずしも説明した特徴や以上で説明した動作には限定されないことは言うまでもない。逆に、説明される特徴および動作は、特許請求の範囲を実現する形態例として開示されるだけである。   [0024] Computer-executable (or computer-interpretable) instructions include, for example, instructions that cause a general purpose computer, special purpose computer, or special purpose processing device to perform a certain function or group of functions. Computer-executable instructions may include, for example, binary, intermediate format instructions such as assembly language, or even source code. Although the subject matter is described in language specific to structural features and / or methodological operations, the subject matter defined in the claims appended hereto is not necessarily limited to the features described or the operations described above. Needless to say. On the contrary, the described features and acts are only disclosed as example forms of implementing the claims.

[0025] 尚、本発明は、複数のタイプのコンピューター・システム構成で、ネットワーク計算環境においても実施できることは、当業者には認められよう。コンピューター・システム構成には、パーソナル・コンピューター、デスクトップ・コンピューター、ラップトップ・コンピューター、メッセージ・プロセッサー、ハンドヘルド・デバイス、マルチプロセッサー・システム、マイクロプロセッサー・ベースのまたはプログラマブルコンシューマー用電子機器、ネットワークPC、ミニコンピューター、メインフレーム・コンピューター、移動体電話機、PDA、ページャー、ルーター、スイッチ等が含まれる。また、本発明は分散システム環境においても実施することができ、この場合、ローカル・コンピューター・システムおよびリモート・コンピューター・システムがネットワークを介してリンクされ(ハードワイヤ・データー・リンク、ワイヤレス・データー・リンク、またはハードワイヤおよびワイヤレス・データー・リンクの組み合わせのいずれかによって)、各々がタスクを実行する(例えば、クラウド計算、クラウド・サービス等)。分散システム環境では、プログラム・モジュールはローカルおよびリモート双方のメモリー記憶デバイスに配置されてもよい。   It will be appreciated by those skilled in the art that the present invention can be implemented in a network computing environment with a plurality of types of computer system configurations. Computer system configurations include personal computers, desktop computers, laptop computers, message processors, handheld devices, multiprocessor systems, microprocessor-based or programmable consumer electronics, network PCs, minicomputers , Mainframe computers, mobile phones, PDAs, pagers, routers, switches, etc. The present invention can also be implemented in a distributed system environment, in which a local computer system and a remote computer system are linked via a network (hardwire data link, wireless data link). Or any combination of hardwire and wireless data links), each performing a task (eg, cloud computing, cloud services, etc.). In a distributed system environment, program modules may be located in both local and remote memory storage devices.

[0026] 図1は、本発明の原理を採用することができるコンピューター・アーキテクチャー100を示す。コンピューター・アーキテクチャー100は、コンピューター・システム101を含む。コンピューター・システム101は、クラウド計算システムを含む、ローカル・コンピューター・システムまたは分散型コンピューター・システムの内任意のタイプであってよい。コンピューター・システムは、種々の異なるタスクを実行するために種々の異なるモジュールを含むことができる。コンピューター・システムは、種々の異なるインターフェースを使用して、本システムとのユーザー対話処理を可能にする。実施形態の中には、コンピューター・システムが、ソフトウェア・プログラムを開発することを開発者に可能にする統合開発環境(IDE)107を設けるものがあってもよい。つまり、場合によっては、ユーザー105が開発者であってもよく、IDEと対話処理するために入力106を送ることができる。IDEは、種々の異なるプログラミング構造(construct)および他のエレメントへのアクセスを与えることができる。場合によっては、これはメタデーター・リーダー115を含むこともできる。   [0026] FIG. 1 illustrates a computer architecture 100 that can employ the principles of the present invention. Computer architecture 100 includes a computer system 101. The computer system 101 may be any type of local computer system or distributed computer system, including a cloud computing system. A computer system can include a variety of different modules to perform a variety of different tasks. The computer system uses a variety of different interfaces to allow user interaction with the system. In some embodiments, a computer system may provide an integrated development environment (IDE) 107 that allows a developer to develop a software program. That is, in some cases, user 105 may be a developer and input 106 can be sent to interact with the IDE. The IDE can provide access to a variety of different programming constructs and other elements. In some cases, this can also include a metadata reader 115.

[0027] 本明細書において説明する実施形態の中には、1つのタイプの異なるビューを異なるメタデーター・コンシューマー(metadata consumer)に提示する1つのメタデーター・ファイルを提供するものがある。この異なるビューは、メタデーターが読み取られているときに、実行中にこれらの変更をメタデーター・リーダー115に行うことを強制することなく、提示することができる。メタデーター・リーダーがオブジェクト・モデル記述116によって(over)インスタンス化されるとき、リーダーはそのメタデーターのエンコーディングを検出し、このメタデーターがリーダーのコンシューマーにとって自然に見えるようにするために必要とされ得る変更を決定することができる。リーダーは、このメタデーターをアダプター(例えば、適応化モジュール125)においてラップし(wrap)、このアダプターは、メタデーター・リーダーのコンシューマーが、変更なしに、フォーリン(または、ここでは「非ネーティブ」)エンコーディング(例えば、117)に対して(over)動作できるように、メタデーターのエンコーディングを変更する。また、実施形態は、効率的なやり方で変換を可能にするエンコーディング・メタデーターについても説明する。本明細書において使用する場合、「ネーティブ」エンコーディングとは、メタデーター・リーダーによって期待されるフォーマットになっているメタデーター・エンコーディングを指す。「非ネーティブ」即ちフォーリン・エンコーディングとは、メタデーター・リーダーによって期待されていない任意のメタデーター・エンコーディングを指す。   [0027] Some embodiments described herein provide a single metadata file that presents one type of different views to different metadata consumers. This different view can be presented when the metadata is being read without forcing the metadata reader 115 to make these changes during execution. When a metadata reader is instantiated (over) by the object model description 116, the reader is required to detect the encoding of that metadata and make this metadata appear natural to the reader's consumer. You can determine the changes to get. The reader wraps this metadata in an adapter (eg, adaptation module 125), which allows the metadata reader consumer to be foreign (or “non-native” here) without modification. Change the encoding of the metadata so that it can operate over the encoding (eg, 117). Embodiments also describe encoding metadata that enables conversion in an efficient manner. As used herein, “native” encoding refers to metadata encoding that is in the format expected by the metadata reader. “Native” or foreign encoding refers to any metadata encoding that is not expected by the metadata reader.

[0028] 変更が非常に多い場合、メタデーターの複数のコピーを、タイプ毎に作ることができる。これらのコピーの各々は、区別できる特性を含み、メタデーター・リーダーが、どのビューをどのメタデーター・コンシューマーに提示すべきか判断することを可能にする。一旦決定が行われたなら、決定されたビューが各コンシューマーに提供される。メタデーター・コンシューマーは、選択肢をリーダーに渡し、それらの好ましいビュー・タイプを特定することができる。次いで、メタデーター・リーダーはそれを使用して、ビュー・タイプの中から提示するものを選択することができる。次いで、残りのビューは、そのコンシューマーからは隠される。   [0028] If the changes are very frequent, multiple copies of the metadata can be made for each type. Each of these copies includes distinguishable characteristics that allow the metadata reader to determine which views should be presented to which metadata consumers. Once a decision has been made, the determined view is provided to each consumer. Metadata consumers can pass choices to the reader and identify their preferred view type. The metadata reader can then use it to select what to present from among the view types. The remaining views are then hidden from the consumer.

[0029] 本明細書において説明する実施形態の中には、以下の形態を含むものがある。1)フォーリン・オブジェクト・モデル・エンコーディングをネーティブに適応化するために必要な変更の、メタデーター・リーダーによる自動検出、2)代わりに異なるオブジェクト・モデルからのタイプになるための、オブジェクト・モデルによって参照されるタイプの変更、3)2つの異なるオブジェクト・モデルのタイプ・システム間において効率的な変換を可能にするためのメタデーターのエンコーディング、4)メタデーター・リーダーのコンシューマーによって期待されるメタデーター・エンコーディング規格に沿うような、メタデーター・エンコーディングの変更、5)メタデーター・コンシューマーが、変更なく、様々なメタデーター・エンコーディングを透過的に消費することを可能にする、および6)異なるコンシューマーによる直接使用のための、1つのエンティティの複数のビューを含む1つのメタデーター・ファイル。ビューは、コンシューマー毎に完全で(complete)一貫しており、コンシューマー毎に異なるビューを必要とするエンティティだけが複数のビューを有する(即ち、これは、メタデーター・ファイルのコピーを3つ含む単純なジップ・ファイルではない)。つまり、メタデーター・コンシューマーは、彼らが望むビューのタイプを容易に指定することができる。また、メタデーター・リーダーは、コンシューマーの選択に基づいて、完全で一貫するメタデーター・ビューを選択することもできるとよい。   [0029] Some embodiments described in this specification include the following embodiments. 1) Automatic detection by metadata reader of changes required to natively adapt foreign object model encoding, 2) By object model to become a type from different object models instead Referenced type changes, 3) metadata encoding to enable efficient conversion between two different object model type systems, 4) metadata expected by metadata reader consumers -Metadata encoding changes to conform to the encoding standard, 5) Allows metadata consumers to transparently consume various metadata encodings without change, and 6) Different consumption For direct use by mer, one meta data file comprising a plurality of views of a single entity. Views are complete and consistent for each consumer, and only entities that require different views for each consumer have multiple views (ie this is a simple containing 3 copies of the metadata file) Not a simple zip file). That is, metadata consumers can easily specify the type of view they want. The metadata reader may also be able to select a complete and consistent metadata view based on consumer choices.

[0030] メタデーター・アダプター125がオブジェクト・モデル116記述によってインスタンス化されると、このアダプターは、オブジェクト・モデルが特定のネーティブ・エンコーディングになっていることを期待するクライアントによって消費されている。読み取られているオブジェクト・モデルがそのネーティブ・エンコーディングになっていない場合、メタデーター・リーダーは、フォーリン・エンコーディングをネーティブ・エンコーディング126に変換する(transform)ために必要な変更121を検出する(120)ことができる。次いで、クライアントがメタデーターを読み取りながら、このメタデーターを変更するために、アダプターをインスタンス化し、クライアントがメタデーターを種々のフォーリン・エンコーディング117で透過的に読み取ることができるようにする。他のメタデーター・リーダーは、2つのフォーマット間で動的に変換を可能にするのではなく、1つの特定のフォーマットで読むことしかできない。   [0030] When the metadata adapter 125 is instantiated with an object model 116 description, the adapter is consumed by a client that expects the object model to be in a specific native encoding. If the object model being read is not in its native encoding, the metadata reader detects (120) the change 121 necessary to transform the foreign encoding to the native encoding 126. be able to. An adapter is then instantiated to modify this metadata as it is read by the client, allowing the client to transparently read the metadata in various foreign encodings 117. Other metadata readers can only read in one specific format, rather than dynamically converting between the two formats.

[0031] メタデーター・リーダー115のクライアントがこのリーダーを使用してオブジェクト・モデルを理解するに連れて、メタデーター・アダプターは、非ネーティブ・メタデーターに対して多くのクラスの変更を透過的に行い、ネーティブ・クライアントがそれを直接理解できるようにすることができる。これは、フォーリン・タイプ・システムによって参照されるタイプを、ネーティブ・タイプ・システムによって使用されるタイプに変更すること、およびメタデーター・フラグのネーティブ・システムにおける等価フラグへの変更を含む。   [0031] As clients of the metadata reader 115 use this reader to understand the object model, the metadata adapter transparently allows many class changes to non-native metadata. Yes, so that the native client can understand it directly. This includes changing the type referenced by the foreign type system to the type used by the native type system, and changing the metadata flag to an equivalent flag in the native system.

[0032] オブジェクト・モデル記述116は、必要な処理時間空間を最小限にして、効率的な変換に備えるためにエンコードすることができる。本明細書に含まれる実施形態は、このようなエンコーディングについて説明し、フォーリン・タイプ・システムをインプレースで(in-place)メタデーター・リーダーのネーティブ・タイプ・システムに変換することを可能にする。このエンコーディングでは、オブジェクト・モデルによって使用されるタイプへの参照は、タイプ参照を介して行われる。場合によっては、他のメタデーター・エンコーディングが、トークンおよび定義の相対的位置に基づいて、タイプ参照およびタイプ定義トークンの組み合わせを利用するとよい(例えば、これらが双方とも同じメタデーター・ファイルにある場合、タイプ定義トークンが選択され、一方これらが異なるメタデーター・ファイルにある場合、タイプ参照トークンが選択される)。本明細書における実施形態では、タイプ定義トークンが利用可能なときでも、このトークンは定義と同じメタデーター・ファイルにあるので、タイプ参照トークンが使用される。タイプ定義トークンの代わりにタイプ参照トークンを使用することによって、本明細書におけるシステムは、タイプ参照トークンではなくタイプ定義トークンによって参照すると費用がかかるような方法で、効率的にタイプをリディレクトすることが可能になる。   [0032] The object model description 116 can be encoded to prepare for efficient conversion with minimal required processing time space. Embodiments included herein describe such encoding and allow for the conversion of a foreign type system to an in-place metadata reader native type system. . In this encoding, references to the types used by the object model are made via type references. In some cases, other metadata encodings may use a combination of type references and type definition tokens based on the relative position of the token and definition (for example, if they are both in the same metadata file) , Type definition tokens are selected, while if they are in different metadata files, type reference tokens are selected). In the embodiments herein, a type reference token is used even when a type definition token is available because it is in the same metadata file as the definition. By using type reference tokens instead of type definition tokens, the system herein can efficiently redirect types in a way that is expensive to reference by type definition tokens rather than type reference tokens. Is possible.

[0033] 非ネーティブ・オブジェクト・モデルによって使用されるタイプが、タイプ参照を使用してエンコードされる場合、アダプター125は、タイプ参照のターゲットをインプレースで変換することによって、タイプ・システム間で変換を行いつつ、その参照の他のユーザーを、メタデーターにおいて変更しないままにしておく。これによって、メタデーター表全体の走査や更新を必要とせずに、フォーリン・タイプのあらゆる使用のネーティブ・タイプへのリターゲッティングを可能にする。   [0033] When a type used by a non-native object model is encoded using a type reference, adapter 125 converts between type systems by converting the type reference target in-place. While leaving other users of the reference unchanged in the metadata. This allows retargeting of all foreign types to native types without the need to scan or update the entire metadata table.

[0034] 加えて、メタデーター・コンテナにおいて記述されるタイプの殆どは、1つのビューを有し、このビューは多くの異なるコンシューマー間で共有することができ、以上で説明したように、最小限の適応化を必要とするに過ぎない。しかしながら、カスタマー毎に異なるビューを使用することもあるタイプのクラスもある。他の実現例では、通例、メタデーター・ファイル全体の複数の別個のコピーを有するか(ビュー毎に1つの完全なコピー)、あるいはコンシューマーに依存して実行中にメタデーターを適応化するまたは書き直すことを試みたであろう。複数コピーの解決策では、メタデーター・ディプロイヤー(metadata deployer)に2つの別個のファイルを管理させるので、複雑さが増し、双方のコンシューマーに対して共有表現を有するタイプの不要なコピーがあるので、性能を阻害する虞がある。実行中に適応化するまたは書き換えることは、非常に単純な変換でなければうまく行かず、重要な変換はいずれも、読み取りが非常に遅くなり、メタデーター全体の新たなコピーをメモリーまたはディスクにおいて一時的に生成することが必要になる場合さえもある。   [0034] In addition, most of the types described in the metadata container have one view, which can be shared among many different consumers, and as explained above, the minimum It only needs to be adapted. However, there are types of classes that may use different views for different customers. Other implementations typically have multiple separate copies of the entire metadata file (one complete copy per view), or adapt or rewrite metadata during execution depending on the consumer Would have tried. The multiple copy solution allows the metadata deployer to manage two separate files, increasing complexity and having a type of unwanted copy that has a shared representation for both consumers. There is a risk of hindering performance. Adapting or rewriting on-the-fly will only work if it is a very simple conversion, and any important conversion will be very slow to read, and a new copy of the entire metadata will be temporarily stored in memory or disk. It may even be necessary to generate automatically.

[0035] 本明細書において説明する実施形態は、1つのメタデーター・コンテナを含む。このメタデーター・コンテナは、全てのコンシューマーでビューが同じであるはずのタイプに対して、1つのメタデーター定義を保持する。また、このメタデーター・コンテナは、ビューが異なる(または異なる必要がある)タイプの複数のコピーも保持する。次いで、メタデーター・リーダーはこのコンテナの異なるビューを各コンシューマーに提供し、それらを有するタイプに対して包括なビュー、残りに対してコンシューマー特定ビューだけを、そのコンシューマーに示す。これらの概念については、それぞれ、図2および図3の方法200および300に関して、以下で更に説明する。   [0035] The embodiments described herein include one metadata container. This metadata container holds one metadata definition for types that should have the same view on all consumers. The metadata container also holds multiple copies of types with different (or need to be different) views. The metadata reader then provides each consumer with a different view of this container, showing that consumer a comprehensive view for the type that has them and only a consumer specific view for the rest. These concepts are further described below with respect to the methods 200 and 300 of FIGS. 2 and 3, respectively.

[0036] 以上で説明したシステムおよびアーキテクチャーに関して、開示する主題にしたがって実現することができる方法は、図2および図3のフロー・チャートを参照すると、一層深く認めることができよう。説明の簡素化に限って、方法は一連のブロックとして示され説明される。しかしながら、特許請求する主題は、これらのブロックの順序には限定されないことは言うまでもないことであり、認められてしかるべきである。何故なら、一部のブロックは本明細書において図示および説明される順序とは異なる順序で現れてもよく、および/または他のブロックと同時に現れてもよいからである。更に、以下で説明する方法を実現するために、図示する全てのブロックが必要ではない場合もある。   [0036] With respect to the systems and architectures described above, the methods that can be implemented in accordance with the disclosed subject matter can be more fully appreciated with reference to the flow charts of FIGS. For simplicity of explanation, the method is shown and described as a series of blocks. However, it should be appreciated that the claimed subject matter is not limited to the order of these blocks. This is because some blocks may appear in a different order than shown and described herein and / or may appear simultaneously with other blocks. Further, not all illustrated blocks may be required to implement the methods described below.

[0037] 図2は、ネーティブ・データー・エンコーディングとの使用のためにメタデーターを動的に適応化する方法200のフロー・チャートを示す。これより、環境100のコンポーネントおよびデーターを頻繁に参照しながら、方法200について説明する。   [0037] FIG. 2 shows a flow chart of a method 200 for dynamically adapting metadata for use with native data encoding. The method 200 will now be described with frequent reference to the components and data of the environment 100.

[0038] 方法200は、オブジェクト・モデル記述におけるメタデーターの1つ以上の部分にアクセスするために、オブジェクト・モデル記述によってメタデーター・リーダーをインスタンス化する動作を含み、このメタデーター・リーダーは、ネーティブ・メタデーターを読み取るように構成され、ネーティブ・メタデーターは、メタデーター・リーダーによって期待されるエンコーディングで表されたメタデーターを含む(動作210)。例えば、インスタンス化モジュール110がメタデーター・リーダー115をオブジェクト・モデル記述116によってインスタンス化することができる。オブジェクト・モデル記述におけるメタデーターの部分にアクセスするために、 メタデーター・リーダーをインスタンス化することができる。メタデーターは、ネーティブ・タイプ(126)、またはフォーリン、非ネーティブ・タイプ(117)であってもよい。メタデーター・リーダーは、ネーティブ・フォーマットでエンコードされたメタデーターを読み取るように構成されるが、種々の異なる非ネーティブ・フォーマットの内任意のものでエンコードされたメタデーターを読み取ることができなくてもよい。つまり、メタデーター・リーダーは、アクセスされたメタデーターが非ネーティブ・エンコーディングでエンコードされたことを判定し(動作220)、更にこの非ネーティブ・エンコーディングをネーティブ・エンコーディングに変換するために実行すべきメタデーター変更を決定する(動作230)。   [0038] The method 200 includes an act of instantiating a metadata reader with an object model description to access one or more portions of the metadata in the object model description, the metadata reader comprising: Configured to read native metadata, the native metadata includes metadata represented in an encoding expected by the metadata reader (operation 210). For example, the instantiation module 110 can instantiate the metadata reader 115 with the object model description 116. A metadata reader can be instantiated to access the metadata portion of the object model description. The metadata may be a native type (126), or a foreign, non-native type (117). The metadata reader is configured to read metadata encoded in the native format, but may not be able to read metadata encoded in any of a variety of different non-native formats Good. That is, the metadata reader determines that the accessed metadata has been encoded with non-native encoding (operation 220), and further performs the meta-data to be performed to convert this non-native encoding to native encoding. Data change is determined (operation 230).

[0039] 変更は、非ネーティブ・エンコーディングによって参照されるタイプを、ネーティブ・エンコーディングによって使用されるタイプに変更する(またはエンコードし直す)ことを含むことができる。また、変更は、非ネーティブ・エンコーディングのメタデーター・フラグを、ネーティブ・エンコーディングのメタデーター・フラグに変更することも含むことができる。したがって、変更の後、メタデーター・リーダーはメタデーター・フラグを認識することができる。他の変更も、別個に、または以上で述べたものに加えて実行することもできる。場合によっては、ネーティブ・エンコーディングに沿うように、データー・タイプを書き直すこともできる。これらのデーター・タイプは、これらをメタデーター・リーダーに対して読み取り可能にするまたそうでなければアクセス可能にするために、動的に書き直すことができる。   [0039] The modification may include changing (or re-encoding) a type referenced by non-native encoding to a type used by native encoding. The modification may also include changing a non-native encoding metadata flag to a native encoding metadata flag. Thus, after the change, the metadata reader can recognize the metadata flag. Other modifications can also be performed separately or in addition to those described above. In some cases, the data type can be rewritten to conform to the native encoding. These data types can be dynamically rewritten to make them readable and otherwise accessible to the metadata reader.

[0040] また、方法200は、オブジェクト・モデルがネーティブ・ランタイムによって読み取り可能になるように、決定された変更にしたがって、オブジェクト・モデルのメタデーターを非ネーティブ・エンコーディングからネーティブ・エンコーディングに動的に適応化する動作も含む(動作240)。例えば、適応化モジュール125がモジュール120によって決定された決定変更121を使用して、非ネーティブ・メタデーター117をネーティブ・エンコーディング126に動的に適応化することができる。変更が適用された後、オブジェクト・モデル116はネーティブ・ランタイムによって読み取り可能になる。このように、動的適応化は、ユーザーが複数の異なる非ネーティブ・エンコーディングのメタデーターを読み取ることを可能にする。メタデーターがエンコードされる非ネーティブ・エンコーディングがいずれであっても、記載する本システムは、1つ以上の異なる変更を使用して、メタデーター・リーダーによって読み取り可能なネーティブ・エンコーディングにメタデーターを適応化する。   [0040] The method 200 also dynamically changes the object model metadata from a non-native encoding to a native encoding according to the determined change so that the object model is readable by the native runtime. Also includes an action to adapt (act 240). For example, the adaptation module 125 can dynamically adapt the non-native metadata 117 to the native encoding 126 using decision changes 121 determined by the module 120. After the changes are applied, the object model 116 becomes readable by the native runtime. In this way, dynamic adaptation allows the user to read multiple different non-native encoding metadata. Regardless of the non-native encoding in which the metadata is encoded, the system described uses one or more different modifications to adapt the metadata to the native encoding readable by the metadata reader Turn into.

[0041] 実施形態の中には、動的適応化がメタデーター・インポート−読み取りレベルで行われるとよい場合がある。インポート−読み取りレベルでメタデーターを適応化することによって、ランタイムにおける後続の適応化を回避することができる。場合によっては、動的に適応化されたメタデーターを内部でまたは公に可視化するために、可視化モディファイアー(visibility modifier)を適用するとよい。この可視化モディファイアーは、所望に応じて、開発者105によってメタデーターにおいて変更することもできる。   [0041] In some embodiments, dynamic adaptation may be performed at the metadata import-read level. By adapting the metadata at the import-read level, subsequent adaptation at runtime can be avoided. In some cases, a visibility modifier may be applied to visualize dynamically adapted metadata internally or publicly. This visualization modifier can also be changed in the metadata by the developer 105 as desired.

[0042] 図3は、オブジェクト・モデル・タイプ参照を効率的に変更する方法300のフロー・チャートを示す。これより、環境100のコンポーネントおよびデーターを頻繁に参照しながら、方法300について説明する。   FIG. 3 shows a flow chart of a method 300 for efficiently changing object model type references. The method 300 will now be described with frequent reference to the components and data of the environment 100.

[0043] 方法300は、タイプ参照表をインスタンス化する動作(動作310)を含む。タイプ参照表は、タイプ定義要求を受け、メタデーター・リーダーによって読み取り可能なメタデーターに格納されている1つ以上のタイプ参照トークンを使用して、応答して、適したタイプ定義を与えるように構成される。例えば、インスタンス化モジュール110が、タイプ参照表130をインスタンス化することができる。タイプ参照表130は、タイプ定義要求を受け、応答して、メタデーター117に格納されている種々のタイプ参照トークンを使用して、タイプ定義131を与える。タイプ参照表130は、メタデーター・リーダー115によって読み取り可能なメタデーターを含む。インスタンス化されたタイプ参照表は、指定されたタイプに対するタイプ定義要求を、タイプ要求元から受ける(動作320)。その後、タイプ参照トークンがタイプ参照表130のメタデーターに実装され、要求されたタイプおよびメタデーター・リーダーによって読み取り可能なタイプに基づいて、メタデーター・リーダー115に対して1つ以上のタイプを動的に交換する(動作330)。したがって、タイプは、要求される通りにそして必要に応じて、タイプ参照表を使用して動的に交換される。非ネーティブ・タイプ参照は、インプレースでネーティブ・タイプ参照と交換される。これらの動的な交換は、非ネーティブ・タイプの標準化ビューを、メタデーター・リーダーに供給する。   [0043] The method 300 includes an act of instantiating a type lookup table (act 310). The type reference table receives a type definition request and responds with one or more type reference tokens stored in metadata that can be read by the metadata reader to provide a suitable type definition Composed. For example, the instantiation module 110 can instantiate the type lookup table 130. The type reference table 130 receives the type definition request and responds to provide a type definition 131 using the various type reference tokens stored in the metadata 117. The type lookup table 130 includes metadata that can be read by the metadata reader 115. The instantiated type lookup table receives a type definition request for the specified type from the type requester (operation 320). A type reference token is then implemented in the metadata of the type reference table 130 to move one or more types to the metadata reader 115 based on the requested type and the type readable by the metadata reader. (Operation 330). Thus, the types are dynamically exchanged using type look-up tables as required and as needed. Non-native type references are exchanged in-place with native type references. These dynamic exchanges provide a non-native type standardized view to the metadata reader.

[0044] また、方法300は、メタデーターにおいてタイプ参照トークンによって与えられる、動的に交換されたタイプに基づいて、要求されたタイプ定義をタイプ要求元に与える動作も含む(動作340)。つまり、タイプ参照表130は、動的に交換されたタイプに基づいて、タイプ定義131をタイプ要求元に与えることができる。タイプ参照表は、タイプ要求元の要求がタイプ参照を介して受け取られたことを確認するために、インスタンス化されてもよい。タイプは、タイプ参照表において交換される。このように、ユーザー要求は不変のままであるが、非ネーティブ定義の代わりにネーティブ・タイプ定義が使用される。   [0044] The method 300 also includes an act of providing the requested type definition to the type requester based on the dynamically exchanged type provided by the type reference token in the metadata (act 340). That is, the type reference table 130 can give the type definition 131 to the type requester based on the dynamically exchanged type. The type reference table may be instantiated to confirm that the type requester's request was received via the type reference. Types are exchanged in the type lookup table. In this way, the user request remains unchanged, but the native type definition is used instead of the non-native definition.

[0045] メタデーターのネーティブおよび非ネーティブ双方のエンコーディングは、同じメタデーター・ファイルにおいて作ることができる。つまり、同じメタデーター・ファイルが1つよりも多いエンコーディングを含むこともできる。1つのメタデーター・ファイルが複数のエンコーディングを有する場合、メタデーター・リーダーは、メタデーター・ファイルを要求しているユーザーを判定し、この判定に基づいて、メタデーター・ファイルの適したエンコーディングをこのユーザーに渡すことができる。したがって、ユーザーがネーティブ・エンコーディングを要求した場合、ネーティブ・ビューまたはネーティブ・エンコーディングがユーザーに送られる。このように、エンコーディングはユーザー毎に完全で一貫する。効率的な実行に備えるために、異なるタイプのユーザーによってアクセスされるメタデーター・ファイルのみが、ネーティブおよび非ネーティブ双方のエンコーディングでエンコードされる。前述のように、動的適応化は、種々の異なる変更方法を含むことができ、非ネーティブ・エンコーディングによって参照されるタイプを、ネーティブ・エンコーディングによって使用されるタイプに変更すること、および非ネーティブ・エンコーディングのメタデーター・フラグを、ネーティブ・エンコーディングのメタデーター・フラグに変更することを含む。このように、種々のタイプの非ネーティブ・メタデーターを、ネーティブ・データー・エンコーディングとの使用のために動的に適応化することができる。   [0045] Both native and non-native encodings of metadata can be created in the same metadata file. That is, the same metadata file can contain more than one encoding. If a metadata file has multiple encodings, the metadata reader determines the user requesting the metadata file, and based on this determination, determines the appropriate encoding for the metadata file. Can be passed to the user. Thus, when a user requests native encoding, a native view or native encoding is sent to the user. In this way, the encoding is complete and consistent for each user. To prepare for efficient execution, only metadata files that are accessed by different types of users are encoded in both native and non-native encodings. As mentioned above, dynamic adaptation can include a variety of different modification methods, changing the type referenced by non-native encoding to the type used by native encoding, and non-native encoding. Changing the encoding metadata flag to the native encoding metadata flag. In this way, various types of non-native metadata can be dynamically adapted for use with native data encoding.

[0046] 追加の実施形態について、図4から図9において説明する。例えば、図4において、ネーティブ・クライアント、メタデーター・リーダー、アダプター、およびフォーリン・オブジェクト・モデル間における相互作用が図示されている。フォーリン・エンコーディング(454)で受け取られるメタデーターは、メタデーター・リーダー452によって読み取り可能なネーティブ・エンコーディングに適応化されるために、メタデーター適応化モジュール453に送られればよい。ネーティブ・メタデーター・クライアント450(API境界451の他方側)は、ネーティブにエンコードされたメタデーターにアクセスするために、メタデーター・リーダーと相互作用することができる(例えば、APIを使用する)。   [0046] Additional embodiments are described with reference to FIGS. For example, in FIG. 4, the interaction between a native client, a metadata reader, an adapter, and a foreign object model is illustrated. Metadata received in the foreign encoding (454) may be sent to the metadata adaptation module 453 in order to be adapted to native encoding readable by the metadata reader 452. Native metadata client 450 (the other side of API boundary 451) can interact with a metadata reader (eg, using an API) to access natively encoded metadata.

[0047] 図5は、複数のタイプを使用するときの、タイプ参照を使用するメタデーター・エンコーディングを示す。例えば、タイプ・コンシューマー510は、タイプ1(511A)と、1つ以上の他のタイプ(タイプn(511N))とを含むことができる。これらのタイプは、フォーリン・タイプ定義(例えば、502A)にタイプ参照(506A)を介してリンクすることができる。つまり、タイプ1(511A)をフォーリン・タイプ定義1(502A)にタイプ参照506Aを介してリンクすることができる。同様に、他のタイプ(タイプn)をフォーリン・タイプ定義502Nにタイプ参照506Nを介してリンクすることができる。フォーリン・タイプ定義は、タイプ定義表501に格納され、一方タイプ参照はタイプ参照表505に格納される。   [0047] FIG. 5 illustrates metadata encoding using type references when using multiple types. For example, type consumer 510 may include type 1 (511A) and one or more other types (type n (511N)). These types can be linked to a foreign type definition (eg, 502A) via a type reference (506A). That is, type 1 (511A) can be linked to foreign type definition 1 (502A) via type reference 506A. Similarly, other types (type n) can be linked to foreign type definition 502N via type reference 506N. Foreign type definitions are stored in a type definition table 501, while type references are stored in a type reference table 505.

[0048] 図6は、タイプ参照のインプレース変更によるフォーリン・タイプ・システムからネーティブ・タイプ・システムへの変換を示す。したがって、タイプ参照506Aおよび506Nは既にフォーリン・タイプ定義502Aおよび502N(図5)にポイントしたが、異なるネーティブ・タイプ定義にポイントするように、タイプ参照を変更することができる。つまり、タイプ参照506Aは、ネーティブ・タイプ定義626Aにポイントするように変更されてもよく、タイプ参照506Nは、ネーティブ・タイプ定義626Nにポイントするように変更されてもよい。したがって、フォーリン・タイプ・システムをネーティブ・タイプ・システムに変換することができる。   [0048] FIG. 6 illustrates the conversion from a foreign type system to a native type system with in-place change of type reference. Thus, while type references 506A and 506N already pointed to foreign type definitions 502A and 502N (FIG. 5), the type references can be changed to point to different native type definitions. That is, the type reference 506A may be changed to point to the native type definition 626A, and the type reference 506N may be changed to point to the native type definition 626N. Thus, a foreign type system can be converted to a native type system.

[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)に包括ビューを示す。   [0049] FIG. 7 illustrates that within a metadata container, each entity requesting multiple metadata views can have a separate copy of the view. These copies then reference shared views for entities that do not require different views. Thus, entity A in the metadata container 705 can have two different views: a first view 710A and a second view 710B. And entity A has two views, while entities B and C each have their own generic metadata views (711 and 712, respectively). Further, FIG. 8 shows that the metadata reader can automatically give the first metadata consumer 701A a view of the entity in the metadata container 705 that is consistent with its desired view. Thus, since consumer 701A prefers metadata view 710A, metadata reader 702 shows view 710A to entity A and shows generic views to entities B and C (711 and 712). FIG. 9 illustrates that the metadata reader 702 automatically gives the metadata consumer 710B a view of the entity in the metadata container that is consistent with its desired view. Thus, since consumer 701B prefers metadata view 701B, metadata reader 702 shows view 710B to entity A and shows generic views to entities B and C (711 and 712).

[0050] したがって、ネーティブ・データー・エンコーディングでの使用のためにメタデーターを動的に適応化する方法、システム、およびコンピューター・プログラム製品が提供される。更に、オブジェクト・モデル・タイプ参照を効率的に変更する方法、システム、およびコンピューター・プログラム製品が提供される。   [0050] Accordingly, methods, systems, and computer program products are provided for dynamically adapting metadata for use in native data encoding. In addition, methods, systems, and computer program products are provided for efficiently changing object model type references.

[0051] 本発明は、その主旨や本質的な特性から逸脱することなく、他の特定形態においても具体化することができる。説明した実施形態は、あらゆる観点においても、限定ではなく例示として見なされてしかるべきである。したがって、本発明の範囲は、以上の説明によってではなく、添付する特許請求の範囲によって示されることとする。特許請求の範囲の均等の意味および範囲に該当する全ての変更は、その範囲内に含まれるものとする。   [0051] The present invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof. The described embodiments are to be considered in all respects only as illustrative and not restrictive. The scope of the invention is, therefore, indicated by the appended claims rather than by the foregoing description. All changes that fall within the meaning and range of equivalency of the claims are to be embraced within their scope.

Claims (10)

複数の計算システムを含むコンピューター・ネットワーク環境において、少なくとも1つのプロセッサーとメモリーとを含むコンピューター・システムにおいて、オブジェクト・モデル・タイプ参照を効率的に変更するコンピューター実装方法であって、
タイプ参照表をインスタンス化する動作であって、前記タイプ参照表が、タイプ定義要求を受け、応答して、メタデーター・リーダーによって読み取り可能なメタデーター・ファイルに格納されている1つ以上のタイプ参照トークンを使用して、しかるべきタイプ定義を与えるように構成され、前記メタデーター・ファイルが、該メタデーター・ファイル内の同じメタデーターのネーティブ・エンコーディングと非ネーティブ・エンコーディングを含む、動作と、
前記インスタンス化されたタイプ参照表が、タイプ要求元から、指定されたタイプに対するタイプ定義要求を受ける動作と、
どのタイプが要求されたか、およびどのタイプが前記メタデーター・リーダーの現在のコンシューマーにとって適しているかに基づいて、前記メタデーター・リーダーに対して1つ以上のタイプを動的に交換するために、前記タイプ参照表のメタデーター内にタイプ参照トークンを実装する動作と、
前記メタデーターにおいて前記タイプ参照トークンによって与えられる、動的に交換されたタイプに基づいて、前記要求されたタイプ定義を前記タイプ要求元に与える動作と、
を含む、コンピューター実装方法。
A computer-implemented method for efficiently changing an object model type reference in a computer network environment including a plurality of computing systems in a computer system including at least one processor and memory, comprising:
One or more types stored in a metadata file readable by a metadata reader in response to a type definition request, in response to instantiating a type lookup table An operation configured to use a reference token to provide an appropriate type definition, wherein the metadata file includes native and non-native encodings of the same metadata in the metadata file;
An operation in which the instantiated type reference table receives a type definition request for a specified type from a type requester;
In order to dynamically exchange one or more types for the metadata reader, based on which type is requested and which type is suitable for the current consumer of the metadata reader, Implementing a type reference token in the metadata of the type reference table;
Providing the requested type definition to the type requester based on a dynamically exchanged type provided by the type reference token in the metadata;
Including a computer-implemented method.
請求項1記載の方法において、非ネーティブ・タイプ参照が、ネーティブ・タイプ参照とインプレースで交換される、方法。   The method of claim 1, wherein non-native type references are exchanged in-place with native type references. 請求項1記載の方法において、前記動的交換が、非ネーティブ・タイプの標準化ビューを前記メタデーター・リーダーに与える、方法。   The method of claim 1, wherein the dynamic exchange provides a non-native type standardized view to the metadata reader. 請求項1記載の方法において、前記タイプ参照表は、前記タイプ要求元の要求がタイプ参照を介して受けるのを確実にするようにインスタンス化される、方法。   The method of claim 1, wherein the type lookup table is instantiated to ensure that the type requester's request is received via a type reference. 請求項1記載の方法において、前記タイプは前記タイプ参照表内で交換されて、ネーティブ・タイプ定義が非ネーティブ定義の代わりに使用される間ユーザー要求が変化しないようにする、方法。   The method of claim 1, wherein the types are exchanged in the type lookup table so that user requests do not change while native type definitions are used instead of non-native definitions. コンピューター・システムであって、
1つ以上のプロセッサーと、
システム・メモリーと、
コンピューター実行可能命令を格納した1つ以上のコンピューター読み取り可能記憶媒体と、
を含み
前記コンピューター実行可能命令が前記1つ以上のプロセッサーにより実行されると、前記コンピューター・システムに、オブジェクト・モデル・タイプ参照を効率的に変更する方法を実行させ、該方法が、
タイプ参照表をインスタンス化する動作であって、前記タイプ参照表が、タイプ定義要求を受け、応答して、メタデーター・リーダーによって読み取り可能なメタデーター・ファイルに格納されている1つ以上のタイプ参照トークンを使用して、しかるべきタイプ定義を与えるように構成され、前記メタデーター・ファイルが、該メタデーター・ファイル内の同じメタデーターのネーティブ・エンコーディングと非ネーティブ・エンコーディングを含む、動作と、
前記インスタンス化されたタイプ参照表が、タイプ要求元から、指定されたタイプに対するタイプ定義要求を受ける動作と、
どのタイプが要求されたか、およびどのタイプが前記メタデーター・リーダーの現在のコンシューマーにとって適しているかに基づいて、前記メタデーター・リーダーに対して1つ以上のタイプを動的に交換するために、前記タイプ参照表のメタデーター内にタイプ参照トークンを実装する動作と、
前記メタデーターにおいて前記タイプ参照トークンによって与えられる、動的に交換されたタイプに基づいて、前記要求されたタイプ定義を前記タイプ要求元に与える動作と、
を含む、コンピューター・システム。
A computer system,
One or more processors;
System memory and
One or more computer- readable storage media storing computer- executable instructions ;
Including
When the computer- executable instructions are executed by the one or more processors, the computer system executes a method for efficiently changing an object model type reference, the method comprising:
One or more types stored in a metadata file readable by a metadata reader in response to a type definition request, in response to instantiating a type lookup table An operation configured to use a reference token to provide an appropriate type definition, wherein the metadata file includes native and non-native encodings of the same metadata in the metadata file;
An operation in which the instantiated type reference table receives a type definition request for a specified type from a type requester;
In order to dynamically exchange one or more types for the metadata reader, based on which type is requested and which type is suitable for the current consumer of the metadata reader, Implementing a type reference token in the metadata of the type reference table;
Providing the requested type definition to the type requester based on a dynamically exchanged type provided by the type reference token in the metadata;
Including computer systems.
請求項記載のコンピューター・システムにおいて、非ネーティブ・タイプ参照が、ネーティブ・タイプ参照とインプレースで交換される、コンピューター・システム。 7. The computer system of claim 6 , wherein non-native type references are exchanged in-place with native type references. 請求項記載のコンピューター・システムにおいて、前記動的交換が、非ネーティブ・タイプの標準化ビューを前記メタデーター・リーダーに与える、コンピューター・システム。 7. The computer system of claim 6 , wherein the dynamic exchange provides a non-native type standardized view to the metadata reader. 請求項記載のコンピューター・システムにおいて、前記タイプ参照表は、前記タイプ要求元の要求がタイプ参照を介して受けるのを確実にするようにインスタンス化される、コンピューター・システム。 The computer system of claim 6 , wherein the type lookup table is instantiated to ensure that the type requester's request is received via a type reference. 請求項記載のコンピューター・システムにおいて、前記タイプは前記タイプ参照表内で交換されて、ネーティブ・タイプ定義が非ネーティブ定義の代わりに使用される間ユーザー要求が変化しないようにする、コンピューター・システム。 7. The computer system of claim 6 , wherein the types are exchanged in the type lookup table so that user requirements do not change while native type definitions are used instead of non-native definitions. .
JP2014530710A 2011-09-12 2012-09-10 Efficient provision of multiple metadata representations of the same type Active JP6101269B2 (en)

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 JP2014534488A (en) 2014-12-18
JP2014534488A5 JP2014534488A5 (en) 2015-11-05
JP6101269B2 true JP6101269B2 (en) 2017-03-22

Family

ID=47830839

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014530710A Active JP6101269B2 (en) 2011-09-12 2012-09-10 Efficient provision of multiple metadata representations of the same type

Country Status (7)

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

Families Citing this family (8)

* 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
US10078501B2 (en) 2015-03-16 2018-09-18 Microsoft Technology Licensing, Llc Domain specific language modeling framework in a development environment
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
WO2017031082A1 (en) * 2015-08-14 2017-02-23 California Institute Of Technology Algebraic query language (aql) database management system
JP6398944B2 (en) * 2015-10-28 2018-10-03 オムロン株式会社 Data distribution 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

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0486833B1 (en) 1990-11-22 1995-02-15 Ascom Tech Ag Receiver for DS-SS-signal
JP2002510088A (en) * 1998-03-27 2002-04-02 インフォミックス ソフトウェア, インコーポレイテッド Processing precomputed 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
EP2352120B1 (en) 2000-01-13 2016-03-30 Digimarc Corporation Network-based access to auxiliary data based on steganographic information
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 (en) * 2000-11-13 2006-03-15 キヤノン株式会社 Multimedia content distribution method
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 (en) * 2002-10-10 2004-04-30 Murata Mach Ltd Document management server
KR100511785B1 (en) 2002-12-20 2005-08-31 한국전자통신연구원 A System and A Method for Authoring Multimedia Content Description Metadata
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 (en) * 2004-02-17 2005-09-02 Sony Corp Method for managing data
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
WO2006029032A2 (en) 2004-09-03 2006-03-16 Red Hat, Inc. Methods, systems, and computer program products for implementing single-node and cluster snapshots
KR20060025100A (en) * 2004-09-15 2006-03-20 삼성전자주식회사 Information storage medium recording meta data supporting multi-language and manipulation method thereof
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
EP2177010B1 (en) 2006-12-13 2015-10-28 Quickplay Media Inc. Mobile media platform
US8341197B2 (en) * 2007-01-09 2012-12-25 Nippon Telegraph And Telephone Corporation Encoder, decoder, their methods, programs thereof, and recording media having programs recorded thereon
US8958483B2 (en) * 2007-02-27 2015-02-17 Adobe Systems Incorporated Audio/video content synchronization and display
US20090077097A1 (en) * 2007-04-16 2009-03-19 Attune Systems, Inc. File Aggregation in a Switched File System
US20080270381A1 (en) 2007-04-24 2008-10-30 Interse A/S Enterprise-Wide Information Management System for Enhancing Search Queries to Improve Search Result Quality
KR101105970B1 (en) * 2009-09-02 2012-01-17 한국전자통신연구원 Media mediator system and method for managing contents of various format
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
US20110289094A1 (en) * 2010-05-18 2011-11-24 Rovi Technologies Corporation Integrating media content databases
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
WO2013039801A2 (en) 2013-03-21
TW201706835A (en) 2017-02-16
TWI569208B (en) 2017-02-01
CN102999545B (en) 2016-11-23
WO2013039801A3 (en) 2013-05-02
US9390152B2 (en) 2016-07-12
TWI598813B (en) 2017-09-11
JP2014534488A (en) 2014-12-18
EP2756433A4 (en) 2016-01-06
TW201312464A (en) 2013-03-16
CN102999545A (en) 2013-03-27
US8849996B2 (en) 2014-09-30
EP2756433B1 (en) 2020-09-09
US20130067053A1 (en) 2013-03-14
KR101941641B1 (en) 2019-04-11
KR20140068966A (en) 2014-06-09
EP2756433A2 (en) 2014-07-23

Similar Documents

Publication Publication Date Title
JP6101269B2 (en) Efficient provision of multiple metadata representations of the same type
KR101377311B1 (en) Integrating charts in documents
US9483261B2 (en) Software documentation generation with automated sample inclusion
AU2012352719B2 (en) Autonomous network streaming
US9798738B2 (en) Custom compound types in declarative programs
US20130311229A1 (en) Proactive risk assessment for system architecture evolutions
JP5677319B2 (en) Web-based diagram visual extensibility
US10970047B2 (en) Lossless bi-directional formatting of program source code
US8959501B2 (en) Type and length abstraction for data types
US11061739B2 (en) Dynamic infrastructure management and processing
US20180101514A1 (en) Use of temporary optimized settings to reduce cycle time of automatically created spreadsheets
JP2011501327A (en) Declarative model interpretation
US20120191650A1 (en) Synchronizing database projects with partner projects
US10482171B2 (en) Digital form optimization
US20220284371A1 (en) Method, device and medium for a business function page
CN115629763A (en) Target code generation method and NPU instruction display method and device
US20070236369A1 (en) Configurable importers and resource writers
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