JP5537571B2 - コンピュータにおけるコンテンツレンダリング - Google Patents

コンピュータにおけるコンテンツレンダリング Download PDF

Info

Publication number
JP5537571B2
JP5537571B2 JP2011552998A JP2011552998A JP5537571B2 JP 5537571 B2 JP5537571 B2 JP 5537571B2 JP 2011552998 A JP2011552998 A JP 2011552998A JP 2011552998 A JP2011552998 A JP 2011552998A JP 5537571 B2 JP5537571 B2 JP 5537571B2
Authority
JP
Japan
Prior art keywords
document
content
rendered
rendering
computer
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
JP2011552998A
Other languages
English (en)
Other versions
JP2012519907A (ja
JP2012519907A5 (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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=42679330&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP5537571(B2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2012519907A publication Critical patent/JP2012519907A/ja
Publication of JP2012519907A5 publication Critical patent/JP2012519907A5/ja
Application granted granted Critical
Publication of JP5537571B2 publication Critical patent/JP5537571B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/123Storage facilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9574Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/151Transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Business, Economics & Management (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Tourism & Hospitality (AREA)
  • Mathematical Physics (AREA)
  • Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)
  • Digital Computer Display Output (AREA)
  • Image Generation (AREA)
  • Processing Or Creating Images (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Auxiliary Devices For Music (AREA)

Description

本発明は、コンピュータにおけるコンテンツレンダリングに関する。
文書処理アプリケーション、表計算アプリケーション、およびプレゼンテーションアプリケーションなどの生産性アプリケーションプログラムにより、ユーザは、様々なタイプのドキュメントを作成することが可能になる。こうしたドキュメントは、ある特定のドキュメントタイプに、さらにはある特定のアプリケーションプログラムにも固有のデータを含む。この固有データを閲覧するためには、ユーザは、ドキュメントを作成した生産性アプリケーションプログラムによりドキュメントを閲覧すればよい。たとえば、ユーザは、ある特定の文書処理アプリケーションに依拠して、その文書処理アプリケーションによって作成された文書処理ドキュメントを閲覧する。
ウェブブラウザによりワールドワイドウェブ(これ以降、「ウェブ」と呼ばれる)全体でドキュメントが共有される場合、問題が起こる。具体的には、典型的なウェブブラウザは、所与のドキュメントをその固有形式で読むことができない場合がある。この問題に対処するために、ドキュメントを、その固有形式から、ウェブブラウザにより閲覧することができるウェブ互換形式にレンダリング(編集)することが可能なコードを実行するウェブサーバを実装することが可能である。
このようなウェブサーバの従来の実装では、レンダリングバージョンをウェブブラウザに与えるのに先立って、ドキュメントの全体をレンダリングする。これは、ドキュメント事前レンダリングと呼ばれる。事前レンダリングの間、所与のドキュメントの閲覧をリクエストするユーザは、ドキュメントが完全にレンダリングされるまで、かなりの時間待つように強制される。この遅れは、ユーザを相当いら立たせ、不便を感じさせる。
本明細書において提示される開示内容は、こうした検討事項および他の検討事項に関連するものである。
ドキュメントなどのコンテンツをレンダリングする技術について、本明細書で説明する。ドキュメントおよび他のコンテンツを、固有ドキュメント形式から、ウェブブラウザまたは他の適切なアプリケーションにより閲覧されることが可能なウェブ互換形式にレンダリングするアプリケーションサーバが提供される。アプリケーションサーバは、レンダリングモジュールを含み、レンダリングモジュールは、ドキュメントを増分レンダリングするように動作する。増分レンダリングにより、アプリケーションサーバは、固有ドキュメントがまだレンダリングされている最中に、レンダリングされているドキュメントの部分をウェブブラウザに与えることができる。本明細書で説明する技術の他の実装形態例は、ある形式から、別の形式へのドキュメントのコンバート(たとえば、バイナリファイル形式から、Office Open XML形式、Portable Document Fromat(「PDF」)などへのドキュメントの変換)を含む。
レンダリングモジュールのスループットを増すためのダウンロードマネージャも提供される。レンダリングモジュールが、あるドキュメントをレンダリングしている間、ダウンロードマネージャは、後でレンダリングされるべき他のドキュメントを検索し始めることができる。こうした他のドキュメントは、記憶サーバからダウンロードし、アプリケーションサーバ上のレンダリングキューに格納することができる。レンダリングモジュールが利用可能になると、レンダリングモジュールは、ドキュメントが検索されるのを待つ間、いかなるダウン時間もなしで、こうした他のドキュメントをレンダリングキューから直接、直ちにレンダリングし始めてよい。
ドキュメントおよび他のコンテンツを検索するのに使用される作業の量を削減するために、1つまたは複数のキャッシュも提供される。キャッシュの例は、ドキュメントキャッシュ、認可キャッシュ、および位置キャッシュを含む。ドキュメントキャッシュは、レンダリングドキュメントをフロントエンドに格納するように動作することができ、そうすることによって、バックエンド内の他の記憶ユニットから、レンダリングドキュメントを検索する必要をなくす。認可キャッシュは、認可および認証データを格納するように動作することができ、そうすることによって、同じドキュメントに後でアクセスするユーザを認可し直し、または認承し直す必要をなくす。位置キャッシュは、レンダリングドキュメントの位置を格納するように動作することができる。位置キャッシュの使用により、複数の記憶ユニットに問い合わせる必要なく、レンダリングドキュメントが、関連する記憶ユニットから効率的に検索される。
一実施形態によると、コンピュータ上で動作するウェブブラウザによる閲覧用にコンテンツをレンダリングする方法が、本明細書において提供される。コンテンツの部分は、レンダリングコンテンツの部分に変換される。コンテンツの部分が、レンダリングコンテンツの部分に変換されている間、レンダリングコンテンツの部分の少なくとも1つが、アプリケーションプログラムに与えられる。
上述した対象は、コンピュータ制御機器、コンピュータプロセス、コンピューティングシステム、またはコンピュータ可読媒体などの製造品として実装されることを理解されたい。こうした特徴および他の様々な特徴が、以下の「発明を実施するための形態」を読み、関連する図面を精査することによって明らかになるであろう。
本概要は、「発明を実施するための形態」において後でさらに説明する概念一式を、簡略化された形で紹介するためのものである。本概要は、本特許請求対象の主要な特徴または本質的な特徴を識別することは意図しておらず、本概要が本特許請求対象の範囲を限定するのに使われることも意図していない。さらに、本特許請求対象は、本開示の任意の部分に記される一部またはすべての欠点を解決する実装形態に限定されない。
いくつかの実施形態による、ウェブブラウザによる閲覧用にドキュメントをレンダリングするように動作する例示的システムアーキテクチャを示すブロック図である。 いくつかの実施形態による、図1のシステムアーキテクチャにあるアプリケーションマネージャの例示的実装形態を示すブロック図である。 いくつかの実施形態による、図1のシステムアーキテクチャにあるフロントエンドの例示的実装形態を示すブロック図である。 いくつかの実施形態による、ウェブブラウザによる閲覧用にコンテンツをレンダリングする例示的プロセスを示すフロー図である。 いくつかの実施形態による、レンダリングコンテンツの一部分を取得する例示的プロセスを示すフロー図である。 本明細書で提示する実施形態を実装することが可能なコンピューティングシステムのための例示的コンピュータハードウェアアーキテクチャを示すコンピュータアーキテクチャ図である。
以下の詳細な説明は、ドキュメントなどのコンテンツをレンダリングする技術を対象とする。本明細書で提示する技術および概念の利用により、ドキュメントまたは他のコンテンツを、その固有形式から、ウェブ互換形式などの別の形式に増分レンダリングするように動作するアプリケーションサーバが提供される。事前レンダリングとは対照的に、コンテンツが増分レンダリングされているとき、レンダリング済みの、ドキュメントまたは他のコンテンツの各個別部分が、ユーザに対して利用可能となる。レンダリングコンテンツを検索するのに使用される作業量を削減するために、1つまたは複数のキャッシュも提供される。
本明細書で説明する実施形態では、ドキュメントおよびレンダリングドキュメントの個別部分として、ページおよびスライドに言及する。ただし、ページおよびスライドは、個別部分の例に過ぎず、限定的であることは意図していないことを理解されたい。当業者によって企図されるような他の種類の個別部分も、同様に実装することができる。
そのように限定されているわけではないが、本明細書で説明する実施形態では主として、ドキュメントおよびドキュメントレンダリングに言及する。ただし、本明細書で説明する実施形態は、固有形式から別の形式にレンダリングすることができる適切などのコンテンツにも同様に適用可能であることを理解されたい。このようなコンテンツは、テキスト、画像、音声、映像、およびその組合せなど、どのマルチメディアも含む。さらに、本明細書で説明する実施形態では主として、レンダリング形式を、ウェブブラウザにより閲覧されることが可能なウェブ互換形式と呼ぶ。ただし、レンダリング形式は、当業者によって企図されるような、他の適切な形式でもよいことを理解されたい。
本明細書で説明する本特許請求対象は、コンピュータシステム上のオペレーティングシステムおよびアプリケーションプログラムの実行とともに実行するプログラムモジュールという一般的状況において提示されるが、他の実装形態も、他のタイプのプログラムモジュールと組み合わせて実施されることが当業者には理解されよう。概して、プログラムモジュールは、特定のタスクを実施し、または特定の抽象データタイプを実装するルーチン、プログラム、コンポーネント、データ構造、および他のタイプの構造を含む。さらに、本明細書で説明する本特許請求対象は、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースまたはプログラム可能な家電製品、ミニコンピュータ、メインフレームコンピュータなどを含む他のコンピュータシステム構成を用いて実施されることが、当業者には理解されよう。
以下の詳細な説明において、本説明の一部をなすとともに、例示のために具体的な実施形態または例を示している添付の図面に対して参照が行われる。ここで、いくつかの図面を通して同じ番号が同じ要素を表している図面を参照し、オンデマンドなコンテンツ閲覧を提供する概念および技術について説明する。具体的には、図1は、いくつかの実施形態による、ドキュメントをレンダリングするように、およびレンダリングドキュメントを検索するように動作するシステムアーキテクチャ100を示すブロック図である。アーキテクチャ100は、コンピュータ104と通信するように動作するフロントエンド102を含む。フロントエンド102は、インターネットなどのネットワーク108を介してウェブブラウザ106からリクエストを受け取り、処理することができる。たとえば、フロントエンド102は、ドキュメントストア112に格納されたドキュメント110Aなどの具体的ドキュメントを求めるリクエストを伴うハイパーテキスト転送プロトコル(「HTTP」)メッセージを受け取ることができる。アーキテクチャ100のコンポーネントは、これ以外の実施形態によると、同じサーバ上に存在可能であることを理解されたい。アーキテクチャ100をフロントエンドおよびアプリケーションサーバに分けることは、実装設計上の選択に過ぎず、限定的であることは意図していない。
HTTPリクエストの受取りに応答して、ウェブフロントエンド102は、出力ストア114から、リクエストされたドキュメント110Aに対応するウェブ互換のレンダリングドキュメント110Bを検索することを試みてよい。たとえば、レンダリングドキュメント110Bは、ドキュメント110Aが最近レンダリングされた場合、出力ストア114に格納されている場合がある。出力ストア114が、ドキュメント110Aに対応するレンダリングドキュメント110Bを含んでいる場合、出力ストア114は、レンダリングドキュメント110Bをフロントエンド102に戻せばよい。
出力ストア114が、レンダリングドキュメント110Bを含まない場合、アプリケーションサーバ116、およびより具体的にはレンダリングモジュール118が、ドキュメントストア112からドキュメント110Aを検索してよい。いくつかの実施形態によると、アプリケーションサーバ116内のレンダリングモジュール118は、ドキュメント110Aを、レンダリングドキュメント110Bにレンダリングする(すなわち、コンバートし、変換する)ように動作する。レンダリングモジュール118は、レンダリングドキュメント110Bを、適切なウェブブラウザによって表示されることが可能などの形式でも生成することができる。形式例は、画像形式(たとえば、Portable Network Graphics(「PNG」)、Joint Photographic Experts Group(「JPEG」)など)、MICROSOFT SILVERLIGHT、ADOBE FLASHなどを含む。レンダリングモジュール118は、ウェブ対応描画における個々のデータタイプがウェブブラウザによって集合的に理解されるように、レンダリングドキュメント110Bを、拡張マークアップ言語(「XML」)、スクリプト、ハイパーテキストマークアップ言語(「HTML」)、画像などを含むウェブ対応描画に生成することもできる。こうしたデータタイプはそれぞれ、本明細書で説明する増分レンダリングプロセスによって生成されると、ユーザに対して利用可能となる。レンダリングモジュール118は、複数のドキュメントを同時にレンダリングするようにも動作する。レンダリングドキュメント110Bを生成すると、アプリケーションサーバ116は、レンダリングドキュメント110Bを出力ストア114に格納し、レンダリングドキュメント110Bをフロントエンド102に戻すことができる。
レンダリングドキュメント110Bを受け取ると、フロントエンド102は、HTTPプロトコルにより、レンダリングドキュメント110Bをウェブブラウザ106に与えることによってHTTPリクエストに応答することができる。ウェブブラウザ106は次いで、レンダリングドキュメント110Bを表示することができ、ドキュメント110Bは、対応するドキュメント110Aの完全忠実度表現である。完全忠実度表現は、元の表現において見られる同じフォーマッティング(たとえば、レイアウト、解像度、コンテンツなど)を含む。したがって、ユーザは、ドキュメントが生産性アプリケーションプログラムにより、またはウェブブラウザ106などのウェブブラウザにより閲覧するかに関わらず、所与のドキュメントを閲覧する場合に同じ体験を期待することができる。完全忠実度表現は、低忠実度表現とは対照的でよく、低忠実度表現では、たとえば、レイアウトが変更される場合も、解像度およびコンテンツが削減される場合もある。他の実施形態では、レンダリングドキュメント110Bは、編集用にバイナリファイルから別のドキュメントタイプへのコンバートなど、非閲覧シナリオ用に使用することができる。たとえば、MICROSOFT OFFICEバイナリファイルが、OPEN OFFICE拡張マークアップ言語(「OOXML」)ファイルにレンダリングされる。
図1のアーキテクチャ100内部のコンポーネントおよびコンポーネントの構成は例示に過ぎず、限定的であることは意図していないことを理解されたい。他の実施形態では、アーキテクチャ100は、追加フロントエンドおよび/または追加アプリケーションサーバを含む。さらに、複数のフロントエンドおよび/または複数のアプリケーションサーバが、同じサーバ上にあってよい。たとえば、ウェブブラウザからの比較的大量のリクエストを扱うのに、追加フロントエンドが使用される。一実施形態では、比較的重い負荷のレンダリングを扱うように、追加アプリケーションサーバが展開される。別の実施形態では、追加アプリケーションサーバが、様々なタイプのドキュメントをレンダリングするように展開される。たとえば、あるアプリケーションサーバは、文書処理ドキュメントのレンダリングに専用でよく、別のアプリケーションサーバは、プレゼンテーションのレンダリングに専用でよい。さらに別の実施形態では、追加アプリケーションサーバが、所与のドキュメントの様々な要素をレンダリングするように展開される。レンダリングされた要素は次いで、合成されて、レンダリングドキュメントを作成する。たとえば、あるアプリケーションサーバは、プレゼンテーションにおける映像をレンダリングすることができ、別のアプリケーションサーバは、プレゼンテーションにおけるテキストをレンダリングすることができる。この場合、フロントエンド102は、2つのアプリケーションサーバの結果を合成して、レンダリングプレゼンテーションを形成するように動作する。
いくつかの実施形態では、ドキュメントを所与の形式でレンダリングするための単一のリクエストに応答して、フロントエンド102は、複数のデバイスタイプおよびウェブクライアント構成に渡る様々な用途をサポートするために、ドキュメントを複数の形式にレンダリングするよう、アプリケーションサーバ116に指令する。たとえば、ウェブブラウザ106は、フロントエンド102に対して、ADOBE FLASHでレンダリングされた所与のドキュメントをリクエストする。フロントエンド102は、ウェブブラウザ106を操作するユーザに関連づけられたユーザプロファイルにより、ADOBE FLASH、MICROSOFT SILVERLIGHT、Portable Network Graphics(「PNG」)、モバイル、および完全バージョンのドキュメントにユーザが頻繁にアクセスすると判定する。フロントエンド102は、ユーザプロファイルにより、XML、スクリプト、HTML、画像などの組合せを含むウェブ対応描画のドキュメントにユーザが頻繁にアクセスすると判定する場合もある。この場合、フロントエンド102は、こうしたバージョンの1つまたは複数でドキュメントをレンダリングすることによって、リクエストを満たすことができる。他の適切なデータが、単一のレンダリングリクエストに応答してドキュメントを複数の形式にレンダリングするよう、フロントエンド102がアプリケーションサーバ116に指令するかどうか判定するのに同様に使用される。追加形式を求める特定の複数のリクエストに応答してドキュメントをレンダリングするのではなく、単一のリクエストに応答してドキュメントを複数の形式に積極的にレンダリングすることによって、アーキテクチャ100は、レンダリングドキュメントをより迅速に提供することができる。
いくつかの実施形態によると、アプリケーションサーバ116は、アプリケーションマネージャ120をさらに含む。アプリケーションマネージャ120は、ドキュメント110Aからレンダリングドキュメント110Bへの増分レンダリングを管理するように動作する。本明細書で使用する「増分レンダリング」は、ドキュメント110Aがレンダリングモジュール118によってレンダリングされているときに、レンダリングドキュメント110Bの部分を提供することを指す。たとえば、文書処理ドキュメントのレンダリングされた第1のページまたはプレゼンテーションのレンダリングされた第1のスライドを、フロントエンド102に与えることができ、フロントエンド102は次いで、レンダリングされた第1のページまたはレンダリングされた第1のスライドを、表示用にウェブブラウザ106に与えることができる。他の実施形態では、ドキュメント中の特定のどのページまたはスライドもレンダリングすることができる。他の実施形態では、ページまたはスライドに加え、コンテンツの他の部分をレンダリングすることもできる。文書処理ドキュメントまたはプレゼンテーションの残りがレンダリングモジュール118によってレンダリングされているとき、アプリケーションマネージャ120は、追加のレンダリングページおよびレンダリングスライドをウェブブラウザ106に与えることができる。
増分レンダリングを実現するために、アプリケーションマネージャ120は、ドキュメント110Aがレンダリングモジュール118によってレンダリングされているとき、レンダリングドキュメント110Bの部分を利用可能にすればよい。フロントエンド102は次いで、レンダリングドキュメント110Bのこうした部分を、必要に応じてアプリケーションサーバ116から検索すればよい。一実施形態では、レンダリングドキュメント110Bの部分は、アプリケーションサーバ116内のバックエンドキャッシュ122に格納されている。
増分レンダリングの間、ドキュメントのページまたはスライドは、予め定義されたどの順序でレンダリングされてもよい。レンダリングページまたはスライドは次いで、レンダリングされたときと同じ順序で、フロントエンド102に対して利用可能にされる。一実施形態では、ドキュメントは、ドキュメントの冒頭からドキュメントの末尾に向かってレンダリングされる。
ドキュメント全体がレンダリングされるまでユーザが待たなければならない従来の事前レンダリングとは対照的に、増分レンダリングは、ドキュメントの、冒頭や他の何らかの部分などの一部分をユーザが閲覧できるようになるまでのレンダリング時間量を削減する。たとえば、従来の事前レンダリングでは、文書処理ドキュメントの第1のページまたはプレゼンテーションの第1のスライドを閲覧することを望むユーザは、文書処理ドキュメントまたはプレゼンテーション全体がレンダリングされるまで待つ必要があったであろう。増分レンダリングの例示的実施では、ユーザは、第1のページまたは第1のスライドを、文書処理ドキュメントまたはプレゼンテーションの残りがレンダリングされるのに先立って、より早く閲覧することができる。
いくつかの実施形態では、ユーザは、ドキュメントのページNまたはスライドNをリクエストすることができ、ここで変数Nは、ドキュメント内の任意のページまたはスライドを表す。リクエストは、ドキュメントがレンダリングされるのに先立って、またはレンダリングされている間に起こる。ページNまたはスライドNを求めるリクエストを受け取ると、アプリケーションマネージャ120は、ドキュメント内の特定のページまたはスライドを探すことによって、ページNまたはスライドNをレンダリングするよう、レンダリングモジュール118に指令すればよい。レンダリングページNまたはスライドNは次いで、フロントエンド102に対して利用可能となる。レンダリングページNまたはスライドNを利用可能にすると、アプリケーションマネージャ120は、ドキュメントの残りのレンダリングを進めることができる。
いくつかの実施形態では、レンダリングモジュール118は、ドキュメント全体がまだダウンロードされていないときでも、ドキュメントを増分レンダリングするように動作する。つまり、レンダリングモジュール118は、ファイル全体がダウンロードされるまで待つのではなく、ドキュメントを、ドキュメントストア112からダウンロードされている間にレンダリングし始めることができる。ドキュメントを、全体をダウンロードする前にレンダリングするこの手法により、特にドキュメントが比較的大きい場合、レンダリングモジュール118がドキュメントをレンダリングするのにかかる時間量を削減することができる。
ここで図2に移り、アプリケーションマネージャ120に関する追加詳細を説明する。具体的には、図2は、いくつかの実施形態によるアプリケーションマネージャ120を示すブロック図である。アプリケーションマネージャ120は、ダウンロードマネージャ202およびレンダリングキュー204を含む。いくつかの実施形態によると、ダウンロードマネージャ202は、レンダリングモジュール118がドキュメントをレンダリングするのに先立って、ドキュメントストア112からそのドキュメントをダウンロードするように動作する。ダウンロードマネージャ202は次いで、レンダリングモジュール118が、ドキュメントをレンダリングするのに利用可能になるまで、ダウンロードされたドキュメントをレンダリングキュー204に格納すればよい。レンダリングキュー204は、ダウンロードマネージャ202なしで動作することを理解されたい。ただし、レンダリングキュー204による高速処理に、ダウンロードマネージャ202が使用される。さらに、ダウンロードマネージャ202が存在する場合でも、レンダリングキュー204は、アプリケーションマネージャ120に過負荷がかかっている場合にはダウンロードマネージャ202に依存せずにインスタンスを扱うように動作する。
説明のための例において、第1のドキュメント206Aおよび第2のドキュメント206Bをレンダリングするためのリクエストが行われた場合、ダウンロードマネージャ202は、ドキュメントストア112から第1のドキュメント206Aをダウンロードすることができ、レンダリングモジュール118は、第1のドキュメント206Aをレンダリングし始めることができる。レンダリングモジュール118が第1のドキュメント206Aをレンダリングするとき、ダウンロードマネージャ202は同時に、ドキュメントストア112から第2のドキュメント206Bをダウンロードし、第2のドキュメント206Bをレンダリングキュー204に格納してよい。第1のドキュメント206Aをレンダリングすると、レンダリングモジュール118は次いで、第2のドキュメント206Bがダウンロードされるのを待たずに、レンダリングキュー204にある第2のドキュメント206Bのレンダリングに直ちに進んでよい。このようにして、レンダリングモジュール118が第2のドキュメント206Bをダウンロードするのを待つことになる従来の実施形態において見られるいかなるアイドル時間もなくすことによって、レンダリングモジュール118のスループットが改善される。
レンダリングキュー204は、当業者によって企図されるように、任意の数のドキュメントを格納するように構成されることを理解されたい。いくつかの実施形態では、同時にダウンロードされるドキュメントの数およびレンダリングを待ち受けている、レンダリングキュー204に格納されるドキュメントの最大数を調整するように、ダウンロードマネージャ202がユーザによって構成(設定)される。このようにして、ユーザは、所与の任意のときにダウンロードされ、および/または格納されるドキュメントの数により、システムリソースに過度の負担がかからないようにすることができる。
ここで図3に移り、フロントエンド102に関する追加詳細を説明する。具体的には、図3は、いくつかの実施形態によるフロントエンド102を示すブロック図である。フロントエンド102は、リクエストマージモジュール302と、ドキュメントキャッシュ304A、認可キャッシュ304B、および位置キャッシュ304Cを含むいくつかのキャッシュ304とを含む。いくつかの実施形態によると、リクエストマージモジュール302は、所与のドキュメントを現在レンダリングしている、ある特定のアプリケーションサーバを識別するデータの追跡を持続する。リクエストマージモジュール302は、この追跡データを使用して、同じドキュメントを求める追加リクエストを、同じアプリケーションサーバに向けることができる。同じドキュメントを求める追加リクエストを同じアプリケーションサーバに向けることによって、アプリケーションサーバの間の冗長作業が削減され、他のアプリケーションサーバは、他のドキュメントを自由にレンダリングする。
上で説明したように、図1のシステムアーキテクチャ100は、複数のフロントエンドおよび複数のアプリケーションサーバを含む。こうしたフロントエンドは、互いと通信することが可能であっても可能でなくてもよい。フロントエンドが互いと通信しないケースにおいて、リクエストマージモジュール302は、ある特定のドキュメントリクエスト用のある特定のアプリケーションサーバを識別するために、コンシステントハッシュを実施するように構成される。コンシステントハッシュにおいて、所与のドキュメントリクエストの1つまたは複数の側面が分析されて、こうした側面が、ある特定のアプリケーションサーバにマップされる。このようにして、フロントエンドが互いと通信することができない場合でも、別々のフロントエンドが、同じドキュメントを求める複数のリクエストを同じアプリケーションサーバに向けることができる。ドキュメントリクエストの側面の例は、リクエストされるドキュメントの名称である。この場合のコンシステントハッシュは、異なるアプリケーションサーバ上ではドキュメントが何度もレンダリングされない可能性を大幅に高めることを理解されたい(たとえば、複数のフロントエンドが、同じドキュメントを求めるリクエストを受け取る場合がある)。コンシステントハッシュがない場合、多くのアプリケーションサーバは、こうしたリクエストを受け取り、同じドキュメントを処理することができる。ドキュメントリクエストをアプリケーションサーバにマップすることが可能な他のハッシュ技法も、同様に使用することができる。
キャッシュ304は、出力ストア114およびアプリケーションサーバ116など、システムアーキテクチャ100の他のパーツにフロントエンド102がアクセスする必要性を低減させることによって、フロントエンド102の性能を向上させる。いくつかの実施形態によると、ドキュメントキャッシュ304Aは、レンダリングドキュメントの少なくともいくつかの部分を、人気によってキャッシュするように動作する。たとえば、頻繁にリクエストされるドキュメントは、出力ストア114またはアプリケーションサーバ116にアクセスするのではなく、ドキュメントキャッシュ304Aから直接検索することができる。様々な要因および方法論のいずれも、当業者によって企図されるように、ドキュメントの人気を判定するのに使用することができる。
いくつかの実施形態によると、認可キャッシュ304Bは、ユーザに関連づけられた認可または認証情報を格納するように動作する。ドキュメントおよびレンダリングドキュメントへのアクセスは、ユーザ名およびパスワードなどの識別情報をユーザが入れるための認可プロセスに基づいて制限される。たとえば、ユーザが、ある特定のドキュメントへのアクセスを試みると、フロントエンド102は、認可モジュール(図示せず)にアクセスすればよく、このモジュールは、ユーザを識別する、ログイン識別子およびパスワードなどの情報をリクエストする。認可モジュールは次いで、ドキュメントにアクセスするための許可をユーザが得ているかどうか判定すればよい。認可モジュールは、ユーザが許可を得ていることを認可モジュールが確認した場合にのみ、ドキュメントへのアクセスを許可するように構成される。
認可モジュールがユーザの確認に成功すると、認可キャッシュ304Bは、ユーザが確認済みであることを示す状態情報を格納してよい。フロントエンド102は、この状態情報を使用して、ドキュメントにアクセスするための許可をユーザが得ているか、得ていないかを、認可モジュールにアクセスする必要なく、確認することができる。このように、フロントエンド102は、リモート認可サービスに証明を送ることを求められず、そうすることによって、フロントエンド102の性能が最適化される。さらに、ユーザは、同じドキュメントにアクセスするための追加リクエスト用に識別情報を入れ直す必要がない。
認可キャッシュ304Bに格納された状態情報は、一度に所与のドキュメントの一部分のみをユーザがリクエストする場合は特に有用である。たとえば、ユーザは最初に、多ページドキュメントの第1のページのみをリクエストする場合がある。ドキュメントの第1のページを求めるリクエストを提出すると、ユーザは、第1のページを閲覧するために、識別情報(すなわち、証明)を入れるよう求められる場合がある。ユーザが続いて、ドキュメントの追加ページをリクエストする場合、フロントエンド102は、認可キャッシュ304Bに格納された証明に基づいて、ユーザを迅速に認可することができる。したがって、ユーザの各認証の結果、必ずしもユーザは証明を要求されるわけではない。さらに、ユーザを認証し認可するために他のサーバに問合せし直す必要をなくすことができる。認可キャッシュ304Bは、任意の時間量だけ状態情報を格納するように構成することができ、その時間量の後で状態情報は消去してよい。
いくつかの実施形態によると、「辞書」とも呼ばれる位置キャッシュ304Cは、所与のレンダリングドキュメントの位置を格納するように動作する。たとえば、位置キャッシュ304Cは、ある特定のレンダリングドキュメントを格納している特定の記憶ユニットを示す。記憶ユニットの例は、出力ストア114およびバックエンドキャッシュ122を含む。記憶ユニットは、システムアーキテクチャ100の一部でもよく、システムアーキテクチャ100から独立していてもよい。レンダリングドキュメントの位置を位置キャッシュ304Cに格納することによって、フロントエンド102は、各記憶ユニットに個別に問い合わせ、記憶ユニットに対する追加負荷を引き起こすのとは反対に、レンダリングドキュメントを求めるリクエストを特定の記憶ユニットに向けることができる。
ここで図4A、4Bを参照し、ウェブブラウザによる閲覧用にドキュメントをレンダリングする、本明細書で提示した実施形態に関する追加詳細を挙げる。具体的には、図4Aは、コンピュータ上で動作するウェブブラウザによる閲覧用にコンテンツをレンダリングする一方法を示すフロー図である。図4Bは、コンテンツのレンダリング部分を取得する一方法を示すフロー図である。図4Bの方法は、図4Aの方法が実施されるのと同時に、またはその後で実施することができる。本明細書で説明する論理演算は、(1)コンピューティングシステム上で稼動する一連のコンピュータ実施作用もしくはプログラムモジュールとして、および/または(2)コンピューティングシステム内の、相互接続されたマシン論理回路もしくは回路モジュールとして実装されることを理解されたい。この実装は、コンピューティングシステムの性能および他の要件に依存する選択の問題である。したがって、本明細書で説明する論理演算は、状態、動作、構造デバイス、作用、またはモジュールと、様々に呼ばれる。こうした動作、構造デバイス、作用およびモジュールは、ソフトウェア、ファームウェア、特殊目的デジタル論理、およびそのどの組合せの形でも実装することができる。図面に示し本明細書で説明するよりも多い、または少ない動作が実施されることを理解されたい。こうした動作は、本明細書で説明するのとは異なる順序で実施してもよい。
図4Aにおいて、ルーチン400は動作402で始まり、ここでフロントエンド102は、ドキュメント110Aなどのドキュメントを求めるウェブブラウザ106からのリクエストを受け取る。ルーチン400は次いで、動作404に進み、ここでフロントエンド102は、ドキュメント110Aを増分レンダリングし始めるよう、レンダリングモジュール118に指令する。具体的には、レンダリングモジュール118は、ドキュメントストア112からドキュメント110Aを検索すればよい。ドキュメントストア112からドキュメント110Aを検索すると、レンダリングモジュール118は、ドキュメント110Aの第1のページまたは第1のスライドをレンダリングすることができる。いくつかの実施形態では、リクエストは、ドキュメント110Aのある特定のスライドまたはページを指定することができる。この場合、レンダリングモジュール118は、第1のページまたは第1のスライドではなく、特定のページまたは特定のスライドをレンダリングすればよい。レンダリングドキュメント110Bの第1のページまたは第1のスライドを生成すると、ルーチンは動作406に進む。
動作406で、レンダリングモジュール118は、ドキュメント110Aが完全にレンダリングされたかどうか判定する。ドキュメント110Aが完全にレンダリングされている場合、ルーチン400Aは終了する。ドキュメント110Aが完全にレンダリングされているわけではない場合、ルーチン400は動作404に戻り、ここでドキュメント110Aの次のページまたは次のスライドがレンダリングされる。ドキュメント110Aがレンダリングドキュメント110Bに完全にレンダリングされるまで、動作404が必要な回数だけ繰り返される。
図4Bにおいて、ルーチン400Bが動作408で始まり、ここでフロントエンド102は、ドキュメント110Aなどのドキュメントを求めるウェブブラウザ106からのリクエストを受け取る。ルーチン400Bは次いで、動作410に進み、ここで、レンダリングドキュメント110Bのページまたはスライドがレンダリングモジュール118によってレンダリングされるとき、アプリケーションマネージャ120は、レンダリングドキュメント110Bのこうしたページまたはスライドを、フロントエンド102に対して利用可能にしてよい。ある特定のページまたは特定のスライドがリクエストされる場合、アプリケーションマネージャ120は、その特定のページまたは特定のスライドを利用可能にしてもよい。レンダリングモジュール118は、レンダリングドキュメント110Bのページまたはスライドを、バックエンドキャッシュ122により利用可能にすることができる。フロントエンド102は次いで、レンダリングドキュメント110Bのページまたはスライドをバックエンドキャッシュ122から検索し、レンダリングドキュメント110Bのページまたはスライドを、表示のためにウェブブラウザ106に伝送すればよい。
ドキュメント110Aがルーチン400Aにより増分レンダリングされている間に、ルーチン400Bが実施されることを理解されたい。つまり、レンダリングモジュール118がルーチン400Aによりドキュメント110Aのページまたはスライドをレンダリングしている間、アプリケーションマネージャ120は、ルーチン400Bにより、こうしたレンダリングページまたはスライドを求めるリクエストを満たすことができる。このようにして、フロントエンド102は、レンダリングドキュメント110B全体が生成されるのを待たずに、レンダリングドキュメント110Bの追加ページまたはスライドを検索し続けることができる。さらに、アプリケーションマネージャ120が、レンダリングドキュメント110Bのページまたはスライドを求めるリクエストを満たしている間、レンダリングモジュール118は、ドキュメント110Aからの追加ページまたはスライドをレンダリングし続けることができる。
一部の実施形態によると、他のドキュメントを求める追加リクエストが、フロントエンド102によって受け取られる。レンダリングモジュール118がドキュメント110Aをレンダリングドキュメント110Bにレンダリングし終えるのを待つのではなく、ダウンロードマネージャ202は、レンダリングモジュール118がまだドキュメント110Aをレンダリングしている間に、ドキュメントストア112から他のドキュメントを検索し、ドキュメントをレンダリングキュー204に格納してよい。ドキュメント110Aをレンダリングドキュメント110Bにレンダリングすると、レンダリングモジュール118は、こうした他のドキュメントを、ドキュメントストア112から検索されるのを待たずに、レンダリングし始めることができる。
一部の実施形態によると、ドキュメント110Aを求める追加リクエストが、同じアプリケーションサーバ116に向けられる。このようにして、他のアプリケーションサーバが、他のドキュメントをレンダリングするのに利用可能になる。さらに、一部の実施形態によると、レンダリングモジュール118は、単一のリクエストに応答して、ドキュメント110Aを複数の形式にレンダリングすることができる。
ここで図5を参照すると、コンピュータ500を示す例示的なコンピュータアーキテクチャ図が示されている。コンピュータ500は、処理ユニット502(「CPU」)、システムメモリ504、およびメモリ504をCPU502に結合するシステムバス506を含む。コンピュータ500は、レンダリングモジュール118など、1つまたは複数のプログラムモジュール514と、ドキュメントストア112など、1つまたは複数のデータベース516とを格納する大容量記憶デバイス512をさらに含む。他のプログラムモジュール514は、ウェブブラウザ106、ダウンロードマネージャ202、およびリクエストマージモジュール302を含む。他のデータベース516は、出力ストア114、レンダリングキュー204、およびキャッシュ304を含む。大容量記憶デバイス512は、バス506に接続された大容量記憶コントローラ(図示せず)を介してCPU502に接続される。大容量記憶デバイス512およびそれに関連するコンピュータ可読媒体は、コンピュータ500のための不揮発性記憶を実現する。本明細書に含まれるコンピュータ可読媒体の説明では、ハードディスクやCD−ROMドライブなどの大容量記憶デバイスに言及するが、コンピュータ可読媒体は、コンピュータ500によってアクセスすることができる、市販されているどのコンピュータ記憶媒体でもよいことを当業者は理解されたい。
限定ではなく例として、コンピュータ可読媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報を格納するためのどの方法でも技術でも実現される揮発性媒体および不揮発性媒体、取外し可能媒体および固定式媒体を含む。たとえば、コンピュータ可読媒体は、RAM、ROM、EPROM、EEPROM、フラッシュメモリもしくは他の固体メモリ技術、CD−ROM、デジタル多用途ディスク(「DVD」)、HD−DVD、BLU−RAY、もしくは他の光学記憶デバイス、磁気カセット、磁気テープ、磁気ディスク記憶デバイスもしくは他の磁気記憶デバイス、または所望の情報を格納するのに使われるとともにコンピュータ500によってアクセスされる他のどの媒体も含むが、それに限定されない。
様々な実施形態によると、コンピュータ500は、ネットワーク108などのネットワークを介した、リモートコンピュータへの論理接続を用いて、ネットワーク接続された環境において動作することができる。バス506に接続されたネットワークインターフェイスユニット510を介して、コンピュータ500がネットワーク108に接続される。他のタイプのネットワークおよびリモートコンピュータシステムに接続するのにも、ネットワークインターフェイスユニット510が使用されることを理解されたい。コンピュータ500は、キーボード、マウス、マイクロホンおよびゲームコントローラを含むいくつかの入力デバイス(図示せず)からの入力を受け取り、処理する入出力コントローラ508も含む。同様に、入出力コントローラ508は、ディスプレイまたは他のタイプの出力デバイス(図示せず)に出力を与える。
上記に基づいて、ウェブブラウザによる閲覧用にドキュメントなどのコンテンツをレンダリングする技術を本明細書に提示したことを理解されたい。本明細書に提示した対象は、コンピュータの構造的特徴、方法論的作用、およびコンピュータ可読媒体に特有の言葉で説明したが、添付の特許請求の範囲において定義される本発明は、本明細書で説明した具体的な特徴、作用、または媒体に必ずしも限定されないことを理解されたい。そうではなく、具体的な特徴、作用および媒体は、請求項を実施する形の例として開示してある。
上述した対象は、例示のために示したに過ぎず、限定的と企図されるべきでない。例示し説明した実施形態および適用形態例に従うことなく、および添付の請求項で説明される本発明の真の精神および範囲から逸脱することなく、様々な修正および変更を本特許請求対象に対して行うことができる。

Claims (17)

  1. コンピュータ上でコンテンツをレンダリングするコンピュータ実行方法であって、
    アプリケーションプログラムから、前記コンテンツの閲覧要求を受け取るコンピュータ実行操作と、
    前記コンテンツの閲覧要求の受け取りに応答して第1のファイルフォーマットで表現されている前記コンテンツの複数の部分を、第2のファイルフォーマットで表現するレンダリングコンテンツの複数の部分に変換するコンピュータ実行操作であって、前記第1のファイルフォーマットで表現されている前記コンテンツの複数の部分は、ユーザに関連付けられたユーザプロファイルに基づいて、ユーザが頻繁にアクセスする1つ又は複数のファイルフォーマットに変換され、前記第2のファイルフォーマットは前記1つ又は複数のファイルフォーマットに含まれる、コンピュータ実行操作と、
    前記コンテンツの前記複数の部分を、前記レンダリングコンテンツの複数の部分に変換する間、前記レンダリングコンテンツの前記複数の部分の少なくとも1つをアプリケーションプログラムに与えるコンピュータ実行操作であって、
    前記アプリケーションプログラムは前記第2のファイルフォーマットの前記レンダリングコンテンツを表示し、前記第1のファイルフォーマットのコンテンツを表示することはできないように構成されており、
    前記アプリケーションプログラムはウェブブラウザを有し、
    前記レンダリングコンテンツは、前記ウェブブラウザとは別個のビューワを起動して前記ウェブブラウザ内で前記レンダリングコンテンツを見せることなく、前記ウェブブラウザにより当該コンテンツの完全忠実度表現を提供するように適合されており、
    前記レンダリングコンテンツの前記複数の部分の少なくとも1つをアプリケーションプログラムに与えることは、当該レンダリングコンテンツの複数の部分の少なくとも1つを前記ウェブブラウザに与えることを含む、コンピュータ実行操作と
    を含むことを特徴とするコンピュータ実行方法。
  2. 前記コンテンツは、ドキュメントを含み、前記コンテンツの複数の部分を前記レンダリングコンテンツの部分に変換することは、前記ドキュメントのページを、レンダリングドキュメントのページに変換することを含むことを特徴とする請求項1に記載のコンピュータ実行方法。
  3. 前記コンテンツはプレゼンテーションを含み、前記コンテンツの複数の部分を前記レンダリングコンテンツの部分に変換することは、前記プレゼンテーションのスライドをレンダリングプレゼンテーションのスライドに変換することを含むことを特徴とする請求項1に記載のコンピュータ実行方法。
  4. 前記レンダリングコンテンツをドキュメントキャッシュに格納するコンピュータ実行操作をさらに含むことを特徴とする請求項1に記載のコンピュータ実行方法。
  5. 前記ウェブブラウザを操作するユーザが、前記コンテンツを閲覧するための許可を得ているかどうか判定するコンピュータ実行操作をさらに含み、
    前記コンテンツの複数の部分を前記レンダリングコンテンツの複数の部分に変換することは、前記ウェブブラウザを操作する前記ユーザが、前記コンテンツを閲覧するための許可を得ているという判定に応答して、前記コンテンツの部分を前記レンダリングコンテンツの部分に変換することを含むことを特徴とする請求項1に記載のコンピュータ実行方法。
  6. 前記ウェブブラウザを操作する前記ユーザが、前記コンテンツを閲覧するための許可を得ているという判定に応答して、状態情報を認可キャッシュに格納するコンピュータ実行操作をさらに含み、該状態情報は前記ユーザが前記許可を得ているか得ていないかを示すことを特徴とする請求項5に記載のコンピュータ実行方法。
  7. 前記ウェブブラウザから、前記コンテンツの指定部分を求めるリクエストを受け取るコンピュータ実行操作をさらに含み、
    前記コンテンツの複数の部分を前記レンダリングコンテンツの複数の部分に変換することは、前記コンテンツの前記指定部分を、前記レンダリングコンテンツの指定部分に変換することを含むことを特徴とする請求項1に記載のコンピュータ実行方法。
  8. 前記ウェブブラウザから前記コンテンツの指定部分を求めるリクエストを受け取ることは、前記ウェブブラウザから前記コンテンツおよび第2のコンテンツを求めるリクエストを受け取ることを含み、
    前記コンテンツの複数の部分を前記レンダリングコンテンツの複数の部分に変換している間、コンテンツストアから前記第2のコンテンツを取り出し、前記第2のコンテンツをレンダリングキューに格納するコンピュータ実行操作をさらに含むことを特徴とする請求項7に記載のコンピュータ実行方法。
  9. 前記コンテンツの複数の部分を前記レンダリングコンテンツの複数の部分に変換するのに先立って、前記コンテンツをドキュメントストアから取り出すコンピュータ実行操作をさらに含み、
    前記コンテンツの部分をレンダリングコンテンツの部分に変換することは、前記ドキュメントストアから前記コンテンツを取り出している間、前記コンテンツの複数の部分を前記レンダリングコンテンツの複数の部分に変換することを含むことを特徴とする請求項1に記載のコンピュータ実行方法。
  10. 前記コンテンツの複数の部分を前記レンダリングコンテンツの複数の部分に変換することは、
    第1のレンダリングモジュールにより、前記コンテンツの一部分にある第1の要素を、前記レンダリングコンテンツの第1の要素に変換することと、
    第2のレンダリングモジュールにより、前記コンテンツの前記一部分にある第2の要素を、前記レンダリングコンテンツの第2の要素に変換することと、
    前記レンダリングコンテンツの前記第1の要素と前記レンダリングコンテンツの前記第2の要素を合成して、前記レンダリングコンテンツの前記一部分を形成することと
    を含むことを特徴とする請求項1に記載のコンピュータ実行方法。
  11. 前記レンダリングコンテンツを、複数の記憶ユニットの1つに格納するコンピュータ実行操作と、
    前記レンダリングコンテンツの位置を位置キャッシュに格納するコンピュータ実行操作であって、前記位置は前記複数の記憶ユニットの1つと対応している、位置キャッシュに格納するコンピュータ実行操作と
    をさらに含むことを特徴とする請求項1に記載のコンピュータ実行方法。
  12. 第1のファイルフォーマットで表現されたドキュメントを格納するように動作するドキュメントストアと、
    少なくとも1つのプロセッサおよび1つのメモリを有するアプリケーションサーバであって、該アプリケーションサーバは、
    (i)ネットワークを通じてウェブブラウザから前記ドキュメントの閲覧要求を受信し、
    (ii)前記ウェブブラウザから前記ドキュメントの閲覧要求を受信することに応答して前記ドキュメントストアから前記ドキュメントを取り出し、
    (iii)前記第1のファイルフォーマットで表現されたドキュメントの複数の部分を第2のファイルフォーマットで表現されるレンダリングドキュメントの部分に変換するように動作し、
    記レンダリングドキュメントは、前記ウェブブラウザとは別個のビューワを起動して前記ウェブブラウザ内で前記レンダリングドキュメントを見せることなく、前記ウェブブラウザにより前記ドキュメントの完全忠実度表現を提供するように適合されており、
    (iv)前記第1のファイルフォーマットで表現されたドキュメントの複数の部分を前記第2のファイルフォーマットで表現されるレンダリングドキュメントの複数の部分に変換している間、前記レンダリングドキュメントの複数の部分の1つまたは複数を前記ネットワークを介して前記ウェブブラウザに提供し、
    記ウェブブラウザは、前記第2のファイルフォーマットで表現されたレンダリングドキュメントを表示し、および、前記第1のファイルフォーマットのドキュメントを表示することはできないように構成されている、アプリケーションサーバと、
    前記アプリケーションサーバからの前記レンダリングドキュメントを格納するように動作する出力ストアと、
    前記ウェブブラウザと前記アプリケーションサーバとの間の通信を実行させるフロントエンドであって、前記フロントエンドは、ユーザに関連付けられたユーザプロファイルに基づいて、前記第1のファイルフォーマットで表現されたドキュメントの複数の部分を、ユーザが頻繁にアクセスする1つ又は複数のファイルフォーマットに変換するよう、前記アプリケーションサーバに指令するように構成され、前記第2のファイルフォーマットは前記1つ又は複数のファイルフォーマットに含まれる、フロントエンド
    を備えることを特徴とするレンダリング用コンピュータシステム。
  13. 前記アプリケーションサーバは、
    (i)前記ウェブブラウザから、前記ネットワークを介して、前記ドキュメントを求めるリクエストを受け取り、(ii)前記ドキュメントを求める前記リクエストの受取りに応答して、前記ドキュメントの複数の部分を前記レンダリングドキュメントの複数の部分に変換するように動作するレンダリングモジュールと、
    前記レンダリングモジュールによるレンダリングのために、前記ドキュメントストアからのドキュメントの取り出しを管理するように動作するアプリケーションマネージャであって、
    (i)前記ウェブブラウザから、前記ネットワークを介して、前記ドキュメントを求める前記リクエストを受け取り、
    (ii)前記ドキュメントを求める前記リクエストの受取りに応答して、前記ネットワークを介して、前記レンダリングドキュメントの1つの部分を、前記ウェブブラウザによる表示用に前記ウェブブラウザに与えるようにさらに動作する、アプリケーションマネージャと、
    前記レンダリングドキュメントを格納するバックエンドキャッシュと
    を備えることを特徴とする請求項12に記載のレンダリング用コンピュータシステム。
  14. 前記アプリケーションマネージャは、
    前記ドキュメントストアから追加ドキュメントを取り出すように動作するダウンロードマネージャと、
    前記ダウンロードマネージャによって取り出された前記追加ドキュメントを格納するように動作するレンダリングキューであって、前記追加ドキュメントを、レンダリング用に前記レンダリングモジュールに与えるように動作する、レンダリングキューと
    を備えることを特徴とする請求項13に記載のレンダリング用コンピュータシステム。
  15. 前記フロントエンドは、
    前記レンダリングドキュメントを格納するように動作するドキュメントキャッシュと、
    前記ウェブブラウザを操作するユーザが、前記ドキュメントにアクセスするための許可を得ているかどうかを示す認可情報を格納するように動作する認可キャッシュと、
    前記レンダリングドキュメントの位置を、1つまたは複数の記憶ユニットに格納するように動作する位置キャッシュと
    を備えることを特徴とする請求項12に記載のレンダリング用コンピュータシステム。
  16. 前記フロントエンドは、前記ドキュメントをレンダリングしているアプリケーションサーバを示す追跡データを保持するように動作するリクエストマージモジュールをさらに備え、前記フロントエンドは、同じドキュメントを求める追加リクエストを同じアプリケーションサーバに向けるようにさらに動作することを特徴とする請求項15に記載のレンダリング用コンピュータシステム。
  17. コンピュータ実行可能命令を格納したコンピュータ読み取り可能媒体であって、コンピュータにより実行されたときに前記コンピュータ実行可能命令は前記コンピュータに、
    ネットワークを介してウェブブラウザから第1のドキュメントおよび第2のドキュメントの要求を受け取ることであって、前記第1のドキュメントおよび前記第2のドキュメントは第1のファイルフォーマットで表現されている、要求を受け取ることと
    前記要求の受け取りに応答してドキュメントストアから前記第1のドキュメントを取り出すことと、
    前記ドキュメントストアからの前記第1のドキュメントの取り出しに応答して前記第1のドキュメントのページを第2のファイルフォーマットで表現されるレンダリングドキュメントのページに変換することであって、前記レンダリングドキュメントは、前記ウェブブラウザとは別個のビューワを起動して前記ウェブブラウザ内で前記レンダリングドキュメントを見せることなく、前記ウェブブラウザにより前記ドキュメントの完全忠実度表現を提供するように適合され、前記第1のファイルフォーマットで表現されている前記第1のドキュメントは、ユーザに関連付けられたユーザプロファイルに基づいて、ユーザが頻繁にアクセスする1つ又は複数のファイルフォーマットに変換され、前記第2のファイルフォーマットは前記1つ又は複数のファイルフォーマットに含まれる、レンダリングドキュメントのページに変換することと、
    前記第のドキュメントのページを前記レンダリングドキュメントのページに変換している間、前記ドキュメントストアから前記第2のドキュメントを取り出すことと、
    前記ドキュメントの追加のページを前記レンダリングドキュメントの追加のページに変換することと、
    前記ドキュメントの追加のページを前記レンダリングドキュメントの追加のページに変換している間、前記ウェブブラウザから前記レンダリングドキュメントのページについての要求を受け取ることと、
    当該レンダリングドキュメントのページについての要求に応答して、前記レンダリングドキュメントのページを前記ウェブブラウザに、該ウェブブラウザによる表示用に提供することであって、前記ウェブブラウザは前記第2のファイルフォーマットのレンダリングドキュメントを表示するように、および、第1のファイルフォーマットのドキュメントを表示することはできないように構成されている、前記レンダリングドキュメントのページを提供することと
    を実行させることを特徴とするコンピュータ読み取り可能媒体。
JP2011552998A 2009-03-04 2010-02-26 コンピュータにおけるコンテンツレンダリング Active JP5537571B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/397,351 US8347208B2 (en) 2009-03-04 2009-03-04 Content rendering on a computer
US12/397,351 2009-03-04
PCT/US2010/025678 WO2010101790A2 (en) 2009-03-04 2010-02-26 Content rendering on a computer

Publications (3)

Publication Number Publication Date
JP2012519907A JP2012519907A (ja) 2012-08-30
JP2012519907A5 JP2012519907A5 (ja) 2013-04-04
JP5537571B2 true JP5537571B2 (ja) 2014-07-02

Family

ID=42679330

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011552998A Active JP5537571B2 (ja) 2009-03-04 2010-02-26 コンピュータにおけるコンテンツレンダリング

Country Status (17)

Country Link
US (2) US8347208B2 (ja)
EP (1) EP2404276A4 (ja)
JP (1) JP5537571B2 (ja)
KR (1) KR101626639B1 (ja)
CN (1) CN102341823B (ja)
AU (1) AU2010221620B2 (ja)
BR (1) BRPI1007813A2 (ja)
CA (1) CA2749683C (ja)
CL (1) CL2011002084A1 (ja)
IL (1) IL214057A (ja)
MX (1) MX2011009158A (ja)
MY (1) MY163751A (ja)
RU (1) RU2571512C2 (ja)
SG (1) SG172952A1 (ja)
TW (1) TWI493441B (ja)
WO (1) WO2010101790A2 (ja)
ZA (1) ZA201105214B (ja)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080028302A1 (en) * 2006-07-31 2008-01-31 Steffen Meschkat Method and apparatus for incrementally updating a web page
US8776038B2 (en) 2008-08-07 2014-07-08 Code Systems Corporation Method and system for configuration of virtualized software applications
US8434093B2 (en) 2008-08-07 2013-04-30 Code Systems Corporation Method and system for virtualization of software applications
TWI471742B (zh) * 2009-05-13 2015-02-01 Alibaba Group Holding Ltd Web access / send method, client, server and network system
CN102487456B (zh) 2009-11-30 2015-06-17 国际商业机器公司 用于提供网络视频访问热度的方法和装置
US8954958B2 (en) 2010-01-11 2015-02-10 Code Systems Corporation Method of configuring a virtual application
US9104517B2 (en) 2010-01-27 2015-08-11 Code Systems Corporation System for downloading and executing a virtual application
US8959183B2 (en) * 2010-01-27 2015-02-17 Code Systems Corporation System for downloading and executing a virtual application
US9229748B2 (en) 2010-01-29 2016-01-05 Code Systems Corporation Method and system for improving startup performance and interoperability of a virtual application
US8763009B2 (en) 2010-04-17 2014-06-24 Code Systems Corporation Method of hosting a first application in a second application
US9047030B2 (en) * 2010-04-29 2015-06-02 Hewlett-Packard Development Company, L.P. Caching network service resources
US9218359B2 (en) 2010-07-02 2015-12-22 Code Systems Corporation Method and system for profiling virtual application resource utilization patterns by executing virtualized application
US9021015B2 (en) 2010-10-18 2015-04-28 Code Systems Corporation Method and system for publishing virtual applications to a web server
US9209976B2 (en) 2010-10-29 2015-12-08 Code Systems Corporation Method and system for restricting execution of virtual applications to a managed process environment
US8996985B1 (en) 2011-03-16 2015-03-31 Google Inc. Online document processing service for displaying comments
US8266245B1 (en) * 2011-10-17 2012-09-11 Google Inc. Systems and methods for incremental loading of collaboratively generated presentations
US8397153B1 (en) 2011-10-17 2013-03-12 Google Inc. Systems and methods for rich presentation overlays
US10430388B1 (en) 2011-10-17 2019-10-01 Google Llc Systems and methods for incremental loading of collaboratively generated presentations
US20150199308A1 (en) 2011-10-17 2015-07-16 Google Inc. Systems and methods for controlling the display of online documents
US8434002B1 (en) 2011-10-17 2013-04-30 Google Inc. Systems and methods for collaborative editing of elements in a presentation document
US8812946B1 (en) 2011-10-17 2014-08-19 Google Inc. Systems and methods for rendering documents
US10108737B2 (en) * 2012-01-25 2018-10-23 Microsoft Technology Licensing, Llc Presenting data driven forms
US9367522B2 (en) 2012-04-13 2016-06-14 Google Inc. Time-based presentation editing
US10546047B1 (en) * 2012-09-27 2020-01-28 Open Text Corporation Method and system for stashing of document alteration information for quicker web preview
US9372840B1 (en) * 2012-09-28 2016-06-21 Emc Corporation Method and system for accelerated transformation of content based on predictive chunking
US9529785B2 (en) 2012-11-27 2016-12-27 Google Inc. Detecting relationships between edits and acting on a subset of edits
CA2878238C (en) 2013-01-11 2015-07-07 La Presse, Ltee Device, method and system for displaying digital editions
US9069986B2 (en) * 2013-06-18 2015-06-30 International Business Machines Corporation Providing access control for public and private document fields
US20150007041A1 (en) * 2013-06-26 2015-01-01 M-Files Oy Method and technical equipment for providing a user interface implementation
US9383902B2 (en) * 2013-06-28 2016-07-05 Successfactors, Inc. Systems and methods for presentations with live application integration
JP6192423B2 (ja) * 2013-08-12 2017-09-06 キヤノン株式会社 情報処理装置及び情報処理方法、情報処理システム、プログラム
US9971752B2 (en) 2013-08-19 2018-05-15 Google Llc Systems and methods for resolving privileged edits within suggested edits
JP6464587B2 (ja) * 2013-08-21 2019-02-06 株式会社リコー 情報処理システム、情報処理装置、情報送信方法及びプログラム
US9348803B2 (en) 2013-10-22 2016-05-24 Google Inc. Systems and methods for providing just-in-time preview of suggestion resolutions
JP6703370B2 (ja) * 2014-03-14 2020-06-03 国立大学法人 東京大学 ドキュメント提供システム、提供側装置、表示側装置、及びプログラム
US11783120B2 (en) 2015-08-26 2023-10-10 Roar Software Pty Ltd. System and process for generating an internet application
AU2015255223B2 (en) * 2015-08-26 2021-02-25 Roar Software Pty Ltd System and process for generating an internet application
CN107295052B (zh) 2016-04-11 2020-06-09 阿里巴巴集团控股有限公司 一种业务处理方法及装置
KR102036715B1 (ko) * 2018-04-02 2019-10-25 주식회사 한글과컴퓨터 브라우저를 통해 프레젠테이션 문서의 빠른 로딩이 가능한 웹 기반의 프레젠테이션 편집 장치 및 그 동작 방법

Family Cites Families (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5838906A (en) * 1994-10-17 1998-11-17 The Regents Of The University Of California Distributed hypermedia method for automatically invoking external application providing interaction and display of embedded objects within a hypermedia document
US5737599A (en) * 1995-09-25 1998-04-07 Rowe; Edward R. Method and apparatus for downloading multi-page electronic documents with hint information
US5778372A (en) * 1996-04-18 1998-07-07 Microsoft Corporation Remote retrieval and display management of electronic document with incorporated images
US6119137A (en) * 1997-01-30 2000-09-12 Tumbleweed Communications Corp. Distributed dynamic document conversion server
US6401131B1 (en) * 1997-06-19 2002-06-04 International Business Machines Corporation Web server enabling attachment of HTML and non-HTML files to web pages
US6336124B1 (en) * 1998-10-01 2002-01-01 Bcl Computers, Inc. Conversion data representing a document to other formats for manipulation and display
US20020111973A1 (en) * 1998-10-15 2002-08-15 John Maddalozzo Method of controlling web browser document image downloads and displays
US6565609B1 (en) * 1999-06-15 2003-05-20 Microsoft Corporation Translating data into HTML while retaining formatting and functionality for returning the translated data to a parent application
US6613098B1 (en) * 1999-06-15 2003-09-02 Microsoft Corporation Storage of application specific data in HTML
GB9917554D0 (en) * 1999-07-27 1999-09-29 Schlumberger Holdings Publishing system for intranet
US6658462B1 (en) * 1999-08-26 2003-12-02 International Business Machines Corporation System, method, and program for balancing cache space requirements with retrieval access time for large documents on the internet
US6590674B1 (en) * 1999-09-23 2003-07-08 Agile Software Method and apparatus for creating and maintaining graphic representations of documents under a universal format
US6654032B1 (en) * 1999-12-23 2003-11-25 Webex Communications, Inc. Instant sharing of documents on a remote server
EP1269307A4 (en) * 2000-03-01 2006-05-31 Celltrex Ltd SYSTEM AND METHOD FOR RAPID DOCUMENT CONVERSION
US6725426B1 (en) * 2000-03-17 2004-04-20 Broadvision, Inc. Mechanism for translating between word processing documents and XML documents
US7024621B1 (en) * 2000-05-19 2006-04-04 Renderx Methods and systems for rendering electronic data
US6763501B1 (en) * 2000-06-09 2004-07-13 Webex Communications, Inc. Remote document serving
US6704024B2 (en) * 2000-08-07 2004-03-09 Zframe, Inc. Visual content browsing using rasterized representations
US6745163B1 (en) 2000-09-27 2004-06-01 International Business Machines Corporation Method and system for synchronizing audio and visual presentation in a multi-modal content renderer
US6988241B1 (en) * 2000-10-16 2006-01-17 International Business Machines Corporation Client side, web-based spreadsheet
CA2349905A1 (en) * 2001-06-07 2002-12-07 Ibm Canada Limited-Ibm Canada Limitee System and method of mapping between software objects and structured language element based documents
US20020198963A1 (en) * 2001-06-21 2002-12-26 Wu Alex C. Method of timer based download and playback scheme for internet browser
US7346843B2 (en) * 2001-09-18 2008-03-18 International Business Machines Corporation Low-latency, incremental rendering in a content framework
JP2003108428A (ja) * 2001-09-27 2003-04-11 Nippon Telegr & Teleph Corp <Ntt> キャッシュ協調データ取得方法及びプロキシサーバ及びキャッシュ協調データ取得プログラム及びキャッシュ協調データ取得プログラムを格納した記憶媒体
US20050080804A1 (en) 2001-10-30 2005-04-14 Bradshaw Robert David System and method for maintaining componentized content
US20030106021A1 (en) * 2001-11-30 2003-06-05 Tushar Mangrola Apparatus and method for creating PDF documents
AUPR962001A0 (en) * 2001-12-19 2002-01-24 Redbank Manor Pty Ltd Document display system and method
KR100576487B1 (ko) 2002-02-08 2006-05-10 인터우븐 인코포레이티드 컴포넌트화된 콘텐츠를 유지하기 위한 시스템 및 방법
US20030191858A1 (en) * 2002-04-05 2003-10-09 Koteshwerrao Adusumilli Response time of transformed documents based on caching and dynamic transformation
US7398464B1 (en) * 2002-05-31 2008-07-08 Oracle International Corporation System and method for converting an electronically stored document
US7181682B1 (en) * 2002-06-27 2007-02-20 Siebel Systems, Inc. Document publishing and rendering
US20040030995A1 (en) * 2002-08-08 2004-02-12 International Business Machines Corporation Web-based document printing and conversion
US7721202B2 (en) * 2002-08-16 2010-05-18 Open Invention Network, Llc XML streaming transformer
US7409452B2 (en) * 2003-02-28 2008-08-05 Xerox Corporation Method and apparatus for controlling document service requests from a mobile device
JP4191063B2 (ja) * 2003-05-08 2008-12-03 株式会社リコー 画像処理装置、画像処理方法、画像処理プログラム
US20060259524A1 (en) * 2003-03-17 2006-11-16 Horton D T Systems and methods for document project management, conversion, and filing
FR2853788A1 (fr) * 2003-04-08 2004-10-15 Canon Kk Procede et dispositif d'acces a un document numerique dans un reseau de communication du type poste a poste
US20060156220A1 (en) * 2003-05-05 2006-07-13 Dreystadt John N System and method for managing dynamic content assembly
US20050216846A1 (en) 2004-03-26 2005-09-29 Mika Kalenius Normal versus small screen rendering with given URL
US20050268215A1 (en) * 2004-06-01 2005-12-01 Microsoft Corporation Method and apparatus for viewing and interacting with a spreadsheet from within a web browser
US7584422B2 (en) * 2004-07-12 2009-09-01 Informatica Corporation System and method for data format transformation
US7188312B2 (en) * 2004-08-12 2007-03-06 Ap-Mobile Technology Inc. Remote document viewing system, device, and method thereof
US20060069746A1 (en) * 2004-09-08 2006-03-30 Davis Franklin A System and method for smart persistent cache
US9298675B2 (en) * 2004-09-30 2016-03-29 Adobe Systems Incorporated Smart document import
US20140250361A1 (en) * 2004-09-30 2014-09-04 Macromedia, Inc. Preserving document construct fidelity in converting graphic-represented documents into text-readable documents
US7411693B2 (en) * 2004-10-15 2008-08-12 Agfa Inc. Image data dissemination system and method
US20060106822A1 (en) * 2004-11-17 2006-05-18 Chao-Chun Lee Web-based editing system of compound documents and method thereof
US7627592B2 (en) * 2004-12-16 2009-12-01 Microsoft Corporation Systems and methods for converting a formatted document to a web page
US20060212798A1 (en) 2005-01-12 2006-09-21 Lection David B Rendering content natively on local operating system
US20060242572A1 (en) * 2005-04-22 2006-10-26 Microsoft Corporation Viewer for protected content as a programming platform component
US7814410B2 (en) 2005-09-12 2010-10-12 Workman Nydegger Initial server-side content rendering for client-script web pages
US8775520B1 (en) * 2005-09-30 2014-07-08 Google Inc. Systems and methods for viewing non-HTML email attachments
US20070220417A1 (en) * 2006-03-17 2007-09-20 Sonolink Communications Systems, Llc System and method for editing online documents
CN101055577A (zh) * 2006-04-12 2007-10-17 龙搜(北京)科技有限公司 可扩展标记语言集中器
US20080120283A1 (en) * 2006-11-17 2008-05-22 Oracle International Corporation Processing XML data stream(s) using continuous queries in a data stream management system
US8745486B2 (en) * 2007-01-25 2014-06-03 Microsoft Corporation Streamable interactive rendering-independent page layout
JP5312349B2 (ja) * 2007-02-09 2013-10-09 ノキア コーポレイション 情報コンテンツの一部分をクライアント装置に与える方法およびシステム
US9880980B2 (en) * 2007-03-05 2018-01-30 International Business Machines Corporation Document transformation performance via incremental fragment transformations
US8069433B2 (en) * 2007-04-18 2011-11-29 Microsoft Corporation Multi-format centralized distribution of localized resources for multiple products
WO2009026727A2 (en) * 2007-08-31 2009-03-05 Tree Technologies Inc. System and method for the automated creation of a virtual publication
US8561116B2 (en) * 2007-09-26 2013-10-15 Charles A. Hasek Methods and apparatus for content caching in a video network
WO2009073682A1 (en) * 2007-12-03 2009-06-11 Vuzit, Llc System and method for enabling viewing of documents not in html format
US8266524B2 (en) * 2008-02-25 2012-09-11 Microsoft Corporation Editing a document using a transitory editing surface
US20090235161A1 (en) * 2008-03-15 2009-09-17 Microsoft Corporation Lossless Web-Based Editor For Complex Documents
US20090276696A1 (en) * 2008-04-30 2009-11-05 Microsoft Corporation High-fidelity rendering of documents in viewer clients
US20090313574A1 (en) * 2008-06-16 2009-12-17 Microsoft Corporation Mobile document viewer
US8407576B1 (en) * 2008-09-02 2013-03-26 Sitscape, Inc. Situational web-based dashboard
US20110258535A1 (en) * 2010-04-20 2011-10-20 Scribd, Inc. Integrated document viewer with automatic sharing of reading-related activities across external social networks
US8549167B2 (en) * 2011-06-21 2013-10-01 Net Power And Light, Inc. Just-in-time transcoding of application content

Also Published As

Publication number Publication date
WO2010101790A3 (en) 2011-01-13
US20100229086A1 (en) 2010-09-09
US8347208B2 (en) 2013-01-01
CA2749683A1 (en) 2010-09-10
IL214057A (en) 2016-02-29
TWI493441B (zh) 2015-07-21
JP2012519907A (ja) 2012-08-30
IL214057A0 (en) 2011-08-31
TW201035861A (en) 2010-10-01
KR101626639B1 (ko) 2016-06-02
CL2011002084A1 (es) 2012-02-03
ZA201105214B (en) 2012-09-26
AU2010221620B2 (en) 2014-07-10
WO2010101790A2 (en) 2010-09-10
CN102341823B (zh) 2014-11-26
CA2749683C (en) 2019-01-08
EP2404276A2 (en) 2012-01-11
KR20110134401A (ko) 2011-12-14
RU2571512C2 (ru) 2015-12-20
BRPI1007813A2 (pt) 2017-01-17
MY163751A (en) 2017-10-31
SG172952A1 (en) 2011-08-29
AU2010221620A1 (en) 2011-08-04
RU2011136691A (ru) 2013-03-10
CN102341823A (zh) 2012-02-01
US20120331377A1 (en) 2012-12-27
EP2404276A4 (en) 2018-01-24
MX2011009158A (es) 2011-09-28

Similar Documents

Publication Publication Date Title
JP5537571B2 (ja) コンピュータにおけるコンテンツレンダリング
US9176953B2 (en) Method and system of web-based document service
JP5911304B2 (ja) ウェブ上の文書を閲覧するためのフォントの取扱い
US9740435B2 (en) Methods for managing content stored in cloud-based storages
US10275538B2 (en) Name hierarchies for mapping public names to resources
US8078693B2 (en) Inserting a multimedia file through a web-based desktop productivity application
US20080218808A1 (en) Method and System For Universal File Types in a Document Review System
JP5042693B2 (ja) マークアップ言語ファイルの格納及び送信の最適化
RU2555219C2 (ru) Использование предварительной обработки на сервере для развертывания представлений электронных документов в компьютерной сети
CN108090078B (zh) 文档在线预览方法及装置、存储介质、电子设备
JP2008547106A (ja) 検索用バックオフメカニズム
US20130238730A1 (en) Online backup system
CN103051706A (zh) 应用于动态网站的动态网页请求处理系统和方法
US11307984B2 (en) Optimized sorting of variable-length records
US20090327303A1 (en) Intelligent allocation of file server resources
US8156428B1 (en) Method and apparatus for merging digital content
US20160150038A1 (en) Efficiently Discovering and Surfacing Content Attributes
US10432549B1 (en) Method and system for scope-sensitive loading of software resources
CN104936044A (zh) 一种基于html5的传输视频文件的方法、客户端及服务器

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130218

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130218

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20130701

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20130718

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131219

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131225

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140220

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: 20140328

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140425

R150 Certificate of patent or registration of utility model

Ref document number: 5537571

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

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