JP2016517051A - 複数のエディタまたは機能の複数のバージョンを使用した協同作業 - Google Patents

複数のエディタまたは機能の複数のバージョンを使用した協同作業 Download PDF

Info

Publication number
JP2016517051A
JP2016517051A JP2015555394A JP2015555394A JP2016517051A JP 2016517051 A JP2016517051 A JP 2016517051A JP 2015555394 A JP2015555394 A JP 2015555394A JP 2015555394 A JP2015555394 A JP 2015555394A JP 2016517051 A JP2016517051 A JP 2016517051A
Authority
JP
Japan
Prior art keywords
document
service
version
format
merge
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.)
Pending
Application number
JP2015555394A
Other languages
English (en)
Other versions
JP2016517051A5 (ja
Inventor
エー. リトル,ロバート
エー. リトル,ロバート
ラジャビ,ジヤド
エム. スタイルズ,スコット
エム. スタイルズ,スコット
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2016517051A publication Critical patent/JP2016517051A/ja
Publication of JP2016517051A5 publication Critical patent/JP2016517051A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/197Version control
    • 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/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • G06F16/972Access to data in other repository systems, e.g. legacy data or dynamic Web page generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/174Form filling; Merging

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Document Processing Apparatus (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

種々のプラットフォームおよび機能バージョンにまたがった文書へのアクセスおよび協同作業が支援されるシステムが提供される。クライアント機器が、元のファイル形式に関係なく文書を表示し、表示された文書の修正を元の文書に再統合することを可能にする変換およびマージサービスが記載される。表示された文書(全体または一部)がインポートされ、元の文書のファイル形式に変換された後、変更を比較し、元の文書にマージすることができる。ハイライト、コメント、または書式設定などの特定の作業を行うアプリケーションプログラミングインターフェースのセットも提供される。

Description

協同作業ソフトウェアの向上に伴って協同作業やファイルの共有が容易になりつつある。しかし、すべての機器が協同作成や協同作業に対応可能である訳ではない。機器の中には協同作業に対応できないものや、デジタルコンテンツにアクセスし、修正を加えるすべてのシステムが同じプログラムを実行することを必要とするものがある。人がデジタルコンテンツにアクセスし、共有し、協同作成する能力は、一部には、デジタルコンテンツを閲覧、修正し、その修正を伝搬させて別の者(または別のプラットフォームにある同じ人物)がアクセスした時にデジタルコンテンツの一部として修正を反映させることができるように、デジタルコンテンツの形式を認識する適切なソフトウェアプログラムとそのプログラムを実行することができる装置とを有するかどうかに依存する可能性がある。
種々のプラットフォームを使用した機器が普及するのに伴い、ある形式のコンテンツを、別の形式へのアクセスおよび表示だけが可能なプログラムや、機能の以前のバージョンでのみコンテンツの編集が可能なプログラムを実行している機器で共有、アクセス、および編集することが難しい場合がある。また、あるアプリケーションの新しいバージョンに新しい機能が追加されると、新しいバージョンは後方互換性に対応しなければならず、および/または将来のバージョンに対応するための拡張性を組み込まなければならない。
複数のエディタまたは機能の複数のバージョンを使用した協同作業を容易にする変換およびマージサービスが記載される。
一実施形態によると、変換およびマージサービスを行うシステムによってクライアントに提供される文書は、体験のセットおよびその内部にあるコンテンツである。文書は、システムから取り出すことが可能な場所に第1のファイル形式でマスター文書として記憶され、クライアントから要求されると、文書を適切なファイル形式に変換し、クライアントに提供することができる。提供される文書は、クライアントでサポートされる機能のバージョンも考慮することができる。
提供される文書は、クライアント機器で表示することができる。本発明のサービスは、文書の到達範囲を(各種プラットフォームにまたがる機器に)広げ、クライアント機器に適したその文書の体験を作り出す。文書は、各クライアントで全く同じに見える必要はない。代わりに、文書は、ユーザの体験のために、機器に合わせてカスタマイズすることができる。文書がクライアント機器で表示されると、ユーザはローカルに文書に修正を加えることができる。修正は、コンテンツの修正ならびに文書に関連付けられたデータの修正を含むことができる。例えば、注釈、コメント、テキストの編集、画像の編集、およびその他の修正を加えることができる。そしてユーザはその修正をサーバに戻して保存することができる。ユーザが修正を加えた文書が異なるファイル形式である場合、または機能のいくつかの異なるバージョンを含んでいる場合でも、サーバは修正をマージすることができる。
一態様によると、第1のファイル形式の文書を第1のファイル形式と異なる第2のファイル形式の文書に変換することができる変換サービスが提供される。別の態様によると、文書のコンテンツを1つのバージョンから別のバージョンに変換することができる変換サービスが提供される。さらに他の態様によると、この変換サービスは、クライアントの制約および能力に基づいて追加的な適合を提供することができる。さらに別の態様によると、種々のファイル形式またはバージョンの文書に行われた修正をマージするマージサービスが提供される。
変換サービスは、文書のコンテンツをその文書が閲覧される各クライアントに合わせてカスタマイズすることができ、マージサービスは、文書に行われた修正をマスター文書に再統合することを可能にする。マスター文書は、コンテンツと文書に行われた修正とを集約したものとすることができる。場合によっては、マスター文書は最も忠実度が高い文書として見える。そのため、忠実度がより低いエディタから行われた修正、または以前のバージョンの機能を使用して行われた修正がマスター文書に再統合される時に、マージサービスは忠実度の復元を行うことができる。
この概要は、以下の詳細な説明でさらに説明する概念の一部を簡略化した形で紹介するために提供した。この概要は、特許請求の主題の主要な特徴または必須の特徴を明らかにするものでも、特許請求の主題の範囲を限定するために使用すべきものでもない。
特定の実施形態を実施することができる動作環境の図である。 本発明の一実施形態によるエンドポイントの動作環境を示す図である。 本発明の一実施形態によるコンピューティング環境を示す図である。 本発明の一実施形態による変換およびマージサービスの例示的な処理フローを示す図である。 変換およびマージサービスの例示的なシナリオを説明する図である。 変換およびマージサービスの例示的なシナリオを説明する図である。 変換およびマージサービスの例示的なシナリオを説明する図である。 変換およびマージサービスの例示的なシナリオを説明する図である。 本発明の一実施形態によるエディタによって実行される処理の図である。 本発明の一実施形態による複数のエディタを使用して文書の協同作業を行う方法の処理の流れ図である。 一部の実施形態で使用されるコンピューティング機器の構成要素を示すブロック図である。
各種のプラットフォームを介したアクセス可能性および協同作業を可能にするコンテンツアクセスサービスが開示される。コンテンツアクセスサービスを通じて、コンテンツを消費者に提供することができ、消費者は、そのコンテンツが実際には、自身の機器を介して通常使用または閲覧できるファイル形式と異なるファイル形式である可能性があることを意識せずに済む。特定の実施形態によると、ファイル形式の変化から消費者を隔離し、場合によっては、種々のプラットフォームからコンテンツを閲覧、アクセス、および修正する際の制約から隔離することができる。本明細書に記載される技術、インターフェース、および方法を使用することにより、ユーザ体験を、ファイルおよび形式から、シナリオに応じて作り出される体験に移行することを助けることができる。
電子文書は、一般に紙の文書に相当するデジタルの文書と理解され、文書エディタを用いて、コンテンツの作成、注釈付加、修正、そして近年では共有および協同作業を容易にすることができる。
修正は、コンテンツへの修正ならびに文書に関連するデータへの修正を含むことができる。例えば、コメント、文章の編集、画像の編集、およびその他の修正を加えることができる。ファイルへの修正は、内容を足す動作、内容を減らす動作、追加的なコンテンツやリッチコンテンツを提供する動作、コメントを追加する動作、および画像エディタ内で画像に修正を加える動作を含むことができる。
本発明の特定の実施形態は、「サービスとしての文書」という新しい特徴を文書に追加し、文書は、体験のセットとその内部にあるコンテンツを提供する。体験のセットは、変換およびマージサービスのうちコンテンツアクセスサービスを含むサービスのセットに相当する。変換サービスは、文書が閲覧されるクライアントごとに文書の内容をカスタマイズすることを可能にし、マージサービスは、文書に加えた修正をマスター文書と再統合することを可能にする。マスター文書は、コンテンツ、メタデータ、および文書に加えられた修正(コンテンツの修正およびメタデータの修正を含む)を集約したものである。場合によっては、マスター文書は最も忠実度が高い文書として見える。
そのため、より忠実度が低いエディタから行われた修正、または機能の以前のバージョンを使用して行われた修正がマスター文書に再統合される時に、本サービスは忠実度の復元を行うことができる。
忠実度の復元とは、機能の以前のバージョン、すなわち機能性がより少ないエディタを有するファイル形式で修正されたコンテンツを取得し、そのコンテンツを、完全な機能性を持つ最新の機能バージョンに戻すことを言う。一例として、リッチな図表(3Dの図表など)を有する第1のバージョンと、図表を静的な画像としてしか解釈することができない第2のバージョンの2つのバージョンのグラフ機能を仮定すると、第2のバージョンをサポートするエディタでコンテンツが編集された後に、静的な画像を復元して、第1のバージョンをサポートするエディタで閲覧/編集するための3Dの図表に戻すことができる。例えば、第1のバージョンは機能の将来または後のバージョンであり、第2のバージョンは同じ機能の以前のバージョンまたはより古いバージョンである。他の場合には、両方のバージョンが同時に公開されるが、利用可能な機能性を意図的に異ならせる場合がある。
マスター文書は文書と呼ばれるが、マスター文書は、コンテンツと最新の編集機能を追跡するのに適した任意の形式で記憶することができる。
上記のサービスを通じて、消費者機器は、クライアント側ソフトウェアや消費機器に複雑性を増すことなく、各種プラットフォームからコンテンツにアクセスし、修正を加えることができる。
ファイル形式(文書または他のコンテンツおよび関連情報についての)とは、ファイルのコンテンツ(および場合によってはそれに関連付けられた情報)に関連する情報が符号化され、コンピュータ読取り可能媒体に記憶される方式を言う。「ファイルタイプ」は「ファイル形式」と同義で使用される場合があるが、一般にはファイル形式の分類法を指す。例えば、ファイルタイプは文書のファイルタイプであり、文書のファイルタイプには、ハイパーテキストマークアップ言語(HTML)、ADOBEポータブル文書フォーマット(PDF)、MICROSOFT WORD文書(DOC)、オフィスオープン拡張可能マークアップ言語(OOXML)形式(DOCX)等のファイル形式が含まれる。MICROSOFT WORDはMicrosoft社の登録商標であり、ADOBE PDFはAdobe Systems社の登録商標である。
本明細書で使用される場合、「消費形式」は、特定の機器またはソフトウェアプログラムでサポートされるファイル形式を言う(例えば「サポートされるファイル形式」)。サポートされるファイル形式であることに加えて、消費形式は、機器(またはプログラム)が種々に変化させたユーザ体験をどのように支援するかに関連する、ファイルサイズ、機能性等に関連する特性を含むことができる。
サービスとしての文書の枠組みに戻ると、変換およびマージサービスを含むコンテンツアクセスサービスは、クラウドサービス体験の一部として提供することができる。そのようにして、ある形式でコンテンツを作成した後、そのコンテンツの消費者にシームレスな体験をもたらすような形でどのプラットフォームからでもそのコンテンツにアクセスし、編集することができる。
図1は、特定の実施形態を実施することが可能な動作環境の図である。
図1を参照すると、動作環境は1つまたは複数のクラウドサービスまたはウェブサービスを含むことができる。本明細書に記載されるコンテンツアクセスサービス100は、クラウドサービスまたはウェブサービスとすることができる。
クラウドサービスとは、一般に、拡大縮小性のある処理および記憶能力を提供する、ホストされたサービスを言う。クラウドコンピューティングはしばしば仮想化されたリソースを含むことがある。クライアントコンピューティングによって与えられるリソースはそれ自体がサービスとして提供され、クライアントコンピューティングの消費者は、物理的な基盤設備を所有する第3者の提供者からリソースの使用を代価を支払って借りる。
クラウドサービスによってウェブサービスが提供および/またはホストされる場合がある(例えば大規模な分散コンピューティング環境の一部として)。ウェブサービスは、ネットワークを通じた相互動作可能なマシン間対話を支援し、ソフトウェアが他のソフトウェアアプリケーションに接続することを可能にするソフトウェアシステムである。
ウェブサービスは、技術標準およびプロトコルの集まりを提供する。例えば、ウェブサービスは、メッセージを送受信するソフトウェアまたはハードウェアエージェントによって実装することが可能なファンクションを提供する(例えば、コンピューティングプラットフォームが特定のサービスを要求し、提供する)。アプリケーションは、ハイパーテキスト転送プロトコル(HTTP)、XML、JavaScriptオブジェクト表記(JSON)、およびSOAP(元々は「simple object access protocol」の頭字語)などの広く使用されるウェブプロトコルおよびデータ形式を介してウェブサービスにアクセスすることができる。
Representational State Transfer(REST)プロトコルは、名前付けされたリソースにアクセスする場合に有用であり、本発明の特定の実施形態で使用することができる。本発明の他の実施形態ではSOAPを利用することができる。場合によっては、Microsoft社のFile Synchronization Service via SOAP over HTTP(FSSHTTP)を使用することもできる。
コンテンツアクセスサービス100は、ネットワークを介して通信する1つまたは複数の物理的なサーバおよび/または仮想的なサーバを使用して実装することができる。ネットワークは、これらに限定されないが、セルラーネットワーク(例えばワイヤレス電話)、2地点間ダイヤルアップ接続、衛星ネットワーク、インターネット、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、WiFiネットワーク、アドホックネットワーク、またはそれらの組み合わせを含むことができる。そのようなネットワークは、ハブ、ブリッジ、ルータ、スイッチ、サーバ、およびゲートウェイなどの各種ネットワーク要素を接続するために広く使用されている。ネットワークは、インターネットなどの公衆ネットワーク、および/またはセキュリティ保護された企業の私設ネットワークなどの私設ネットワークを含む、1つまたは複数の接続されたネットワーク(例えばマルチネットワーク環境)を含むことができる。ネットワークへのアクセスは、当業者に理解されるように、1つまたは複数の有線または無線のアクセスネットワークを介して提供することができる。
コンテンツアクセスサービス100はインポート/変換部102および表現/変換部104を含むことができる。各種供給元106からの文書をコンテンツアクセスサービス100にインポートすることができる。インポート/変換部102は、コンテンツをリーダに要求される特定の形式にすることに関する制約を軽減または解消することにより、自費出版を容易にすることができる。例えば、作成者が指定されたファイル形式で作業することを必要とすることなく、書店あるいは他の保管場所または店舗への自費出版を実現することができる。作成者がより容易に自身の作品を出版できるようにすることにより、リーダのユーザはより多くのコンテンツを利用することができる。
「リーダ」とは、主として電子書籍(e-book)および/または他の電子コンテンツを読むことを目的として設計されたソフトウェアアプリケーションおよび/または電子機器を指す。リーダは、しばしば、注釈の付加、ハイライト、ブックマーク、および書き込みなどの少なくともいくつかの基本的な編集能力を含む。
ソフトウェアの電子書籍リーダ(またはeリーダ)の例には、Google社のGOOGLE READERアプリケーション、Apple社のAPPLE iBOOKSアプリケーション、Adobe Systems社のADOBE ACROBAT EBOOK READERアプリケーション、およびMicrosoft社のMICROSOFT READERアプリケーションがある。ハードウェアの電子書籍リーダ(またはeリーダ)の例には、Amazon.com社のAMAZON KINDLEブランドのeリーダ、およびBarnes&Noble社から入手可能なBARNES AND NOBLE NOOKブランドのeリーダタブレットがある。電子書籍は、電子書籍リーダで読むことができる、テキストおよび/または画像を用いたデジタル形態の出版物である。コンテンツを作成し、出版するために使用される電子書籍およびデジタルコンテンツの形式には、electronic publication(ePub)、HTML、PDF、プリンタコマンド言語(PCL)、および拡張可能マークアップ言語(XML)など各種の形式が存在する。
場合によっては、(例えばインポート/変換部102を通じて)インポートされた文書を、クラウド(108)の一部として記憶する、または記憶されたように見せることができる(アドレスまたはユニフォームリソース識別子を記憶させることにより)。コンテンツアクセスサービス100は、ストレージ108に対する操作に依拠するか、または特定の操作を別のサービス(ストレージ108に直接または間接的にアクセスすることができる)に委託することができる。
文書ファイルは、コンテンツアクセスサービス100からエクスポートすることができる。エクスポートの前に、リーダ110、プリンタ112、第3者のサイト114、および2次変換サービス116などのエンドポイントで、インポートされた文書の1つなどの文書ファイルを消費のために各種形式に変換することができる(例えば、表示、対話、修正、または印刷やさらなる変換を含む追加的な動作のために表現する)。
エンドポイントとは、消費者がサービスにアクセスするための手段を指し、すなわち対話の入口点である。各種実施形態によると、エンドポイントのカスタマイズが提供され、それにより到達範囲を広げ、コンテンツが消費される方式を機器に基づいて変える。
エンドポイントは、1つまたは複数の消費者機器である場合がある。
消費者機器とは、サービスまたは供給元から取得または購入したデータや文書を消費する(すなわち閲覧/閲読、編集、または注釈の付加を行うために使用する)ために使用されるコンピューティング機器を言う。消費者機器は、電子書籍を読むために使用される主に単一目的のコンピューティング機器(しばしば「リーダ」と呼ばれる)である場合も、電子書籍や他の電子/デジタルコンテンツを読むためのリーダまたはビューワソフトウェアが提供される多目的のコンピューティング機器である場合もある。
「ビューワ」とは、特定のプログラムに関連付けられた形式またはファイルタイプで文書やデータを表示する、または表示しているように見せることが可能なソフトウェアまたはハードウェアのアプリケーションを言う。特定のファイル形式用のビューワは、その特定のファイル形式を理解し、ファイルの視覚化を提示することができる。通例、あるファイル形式の「ビューワ」は、そのファイル形式を高忠実度で視覚的に提示して、作者の当初の意図を保つ能力を持つことが想定される。「リーダ」はビューワの一種であり、ページのめくりを動画として提供する、最後に読んだ場所を記憶する、単語を調べるための辞書を提供する等、主として「読む」体験に関連する機能性を含む。
本発明のサービスは、(各種プラットフォームを介した機器への)文書の到達範囲を広げ、クライアント機器に適したその文書の体験を作り出す。文書は、各クライアントで全く同じに見える必要はない。代わりに、文書は、ユーザの体験のために、機器に合わせてカスタマイズすることができる。
機器を把握することにより、システムはカスタマイズされたファイルの書式設定を(例えばサービス100を通じて)提供することができる。
例示的なシナリオとして、NOOKリーダまたはKINDLEリーダのユーザは、その機器を使用して、読むために利用可能なコンテンツを探すことができる。サービス100は、使用されている機器を判定し、それに応じてコンテンツの提示を調整することができる。例えば、NOOKリーダにはePub2またはePub3形式を送信し、KINDLEリーダにはAZW形式を送信することができる。
カスタマイズされたファイルが機器に送信されると、ファイルは(サービス100を介して)サーバに戻して保存することができる。例えば、クライアントに提供されたファイルに対して特定の動作(NOOKリーダ、KINDLEリーダ、またはエディタアプリケーションを実行しているタブレット上で注釈を付加したり編集したりするなどの修正)を行うことができ、その修正をファイルのマスター文書にマージすることができる。
さらに他の実施形態では、ユーザも把握することにより(例えば、ユーザが機器から自身のアカウントにログインする時等にユーザから識別子を受け取ることによる)、システムはさらに、ユーザが自身の機器が扱うことができるバージョンやファイル形式を気にすることなく、多種の機器からネットワークを通じて自身のファイルにアクセスできるようにすることができる(例えばサービス100を通じて)。ユーザが自身のファイルにアクセスできるようにすることに加えて、ユーザを把握することにより、本システムは、ユーザに関連付けられた作業に関連する文書内で特定のコンテンツを提示するファイルをカスタマイズすることができる。例えば、ユーザがある段落を校閲する作業を課されている場合は、その段落を、その文書にアクセスすることが可能なすべてのユーザではなく、識別された当該ユーザに提供することができる。
エンドポイントは、サービス100との間の通信に2つの広いカテゴリを有することができる。一つは双方向のリッチな体験であり、もう一方はより制限された体験である。どちらの場合でも、本発明の実施形態を使用することにより、エンドポイントはファイル形式の変換を扱う必要がなく、すべての形式を表現することができ、またはコンテンツを協同作成するための層を含むことができる。
様々なリッチ度のエンドポイントを本発明の各種実施形態によって支援することができる。本明細書で使用される場合、「リッチ度」とは、アプリケーションで利用可能な体験と、それが特定のコンテンツおよび機能性をユーザに与える能力の範囲を言う。例えば、最もリッチ度の高い消費体験は、コンテンツの編集と操作が可能な完全な機能を持つアプリケーションをサポートする機器(例えばエンドポイントエディタ118)を通じて得ることができる。より制限された体験には、コンテンツを編集および操作するためのいくらかの機能性が維持されたバイトサイズのオーサリングツール(例えば制限のあるエンドポイントエディタ120)が含まれる。制限のある体験(または「軽量の編集」)と完全な機能を持つエディタ(または「重い編集」)との差は、軽量の編集では注釈の付加とコメントの付加だけがサポートされる場合がある点である。
コンテンツが閲覧されるリーダ(例えば消費者機器122)は、一定範囲のサポートされるリッチ度を有することができる。すべてのエディタの種類ならびに機能のバージョンをサポートすることができる。
アクセスサービス100によって提供される変換およびマージサービスは、クライアント機器または別のサーバ(例えばリーダ110や消費機器122、エンドポイントエディタ118、制限のある消費エンドポイントエディタ120)から直接要求することができる。実施形態によっては、サーバ(図2に関して説明するものなど)または第3者のサイト(例えば114)もしくは2次変換サービス(例えば116)がクライアント機器に代わってサービス100にアクセスすることができる。プリンタ112も、変換およびマージサービス100から直接、または別のクライアント機器を通じて、コンテンツを受け取ることができる。
エンドポイントエディタ118がウェブサービス(例えばサービス100)と通信することができるフレームワークの1つは、FSSHTTPアプリケーションプログラミングインターフェース(API)を使用して、クライアントアプリケーションが、サーバで実行されている文書およびファイル管理および協同作業プログラムと効率的に変更を同期できるようにするフレームワークを介するものであり、そのようなフレームワークにはMICROSOFT SHAREPOINTウェブアプリケーションプラットフォームなどがある。FSSHTTPプロトコルのクライアント側は通過型(pass-through)である。例えば、アプリケーション層などの上位層プロトコルによって行われた呼び出しは直接トランスポート層に渡され、トランスポート層から返された結果は、直接上位層プロトコルまたはアプリケーションに渡される。
APIは一般に、2つ以上のアプリケーションが相互と通信することを可能にするためのプログラミング命令および標準のセットであり、通例は、HTTP要求メッセージのセットおよび応答メッセージのための指定された形式または構造として実装される。メッセージは情報リソースを含むことができる。リソースは、ユニフォームリソース識別子(URI)で識別することができる情報であり、ファイル、動的に生成されるクエリ結果、共通ゲートウェイインターフェース(CGI)スクリプトの出力、数種の言語で利用できる文書等である。
変換およびマージサービス100は、より広いクラウドサービス130ならびにウェブアプリケーションコンポーネント(WAC)132に関連付けることができる。WACは、ユーザがブラウザ内で文書を閲覧、編集することを可能にするコンポーネントである。WACは、コンテンツを消費および編集することによりエンドポイントとして機能すると共に、多少のマージおよび変換サービスの機能性を提供することによりサービスとしても機能することができる。そのような実施形態では、ユーザは、基盤設備およびプラットフォームを管理するクラウド上にあるアプリケーションソフトウェアおよびデータベースにアクセスすることができる。エンドユーザは、ブラウザまたはアプリ(スマートフォンやタブレットなどのモバイル機器向けに設計されたアプリケーション)を通じて、クラウドにホストされたソフトウェアアプリケーションにアクセスすることができる。一例を図2を参照して説明する。
図2は、本発明の一実施形態によるエンドポイントの動作環境を示す。図2を参照すると、クライアント210とサーバ220がネットワーク230を介して通信する。
ネットワーク230は、インターネット、イントラネット、またはエクストラネットであり、これらに限定されないが、セルラー(例えばワイヤレス電話)ネットワーク、インターネット、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、WiFiネットワーク、アドホックネットワーク、またはそれらの組み合わせを含む適切な通信ネットワークを用いることができる。
上記のように、そのようなネットワークは、ハブ、ブリッジ、ルータ、スイッチ、サーバ、およびゲートウェイなどのネットワーク要素の接続を伴う場合がある。ネットワーク230は、インターネットなどの公衆ネットワーク、および/またはセキュリティ保護された企業の私設ネットワークなどの私設ネットワークを含む、1つまたは複数の接続されたネットワーク(例えばマルチネットワーク環境)を含むことができる。ネットワーク230へのアクセスは、当業者に理解されるように、1つまたは複数の有線または無線のアクセスネットワーク(図示せず)を介して提供することができる。
クライアント210およびサーバ220は、1つまたは複数の中央演算処理装置(CPU)、メモリ、大容量記憶装置、およびI/O装置(例えばネットワークインターフェース、ユーザ入力装置)を備えて構成されたコンピューティングシステムを伴う場合がある。コンピューティングシステムの要素はバスを介して相互と通信することができる。コンピューティングシステムのハードウェアプラットフォームは多くの形態で実施することができ、それらには、これらに限定されないが、パーソナルコンピュータ、サーバコンピュータ、手持ち型またはラップトップ機器、マルチプロセッサシステム、マイクロプロセッサを使用したシステム、プログラム可能な消費者電子製品、上記のシステムおよび機器を含む分散コンピューティング環境(例えばクラウド型のコンピューティングシステム)(分散環境では、アプリケーション機能性、メモリ、データの記憶および検索、ならびに各種の処理ファンクションを、インターネットやイントラネットなどの分散コンピューティングネットワークを通じて相互から遠隔から操作することができる)が含まれる。
特定の実施形態では、クライアント210は、これらに限定されないが、パーソナルコンピュータ、タブレット、リーダ、モバイル機器、携帯情報端末(PDA)、スマートフォン、ラップトップ(またはノートブックもしくはネットブック)コンピュータ、ゲーム装置もしくはゲーム機、デスクトップコンピュータ、またはスマートテレビを含むコンピューティング機器として実施することができる。
特定の実施形態では、サーバ220は、これらに限定されないが、サーバコンピュータ、企業コンピュータ、パーソナルコンピュータ、マルチプロセッサシステム、マイクロプロセッサを使用したシステム、およびそれらの組み合わせを含むコンピューティング機器として実施することができる。クライアントコンピューティング機器およびサーバコンピューティング機器の上記一覧は制限的なものではなく、クライアントとサーバは同じ形態で実施される場合も、異なる形態で実施される場合もあることを理解されたい。
クライアントコンピューティング機器210は、オペレーティングシステム211と、図示する実施形態では、文書処理もしくはエディタアプリケーション212、ウェブブラウザアプリケーション213、および/または1つまたは複数の他のアプリケーションなどの1つまたは複数のアプリケーションプログラムとを実行するように構成される。
オペレーティングシステム211は、クライアントコンピューティング機器210の動作を制御するコンピュータプログラムである。アプリケーションプログラムは、オペレーティングシステム211の上で実行されて、本明細書に記載される機能などの各種機能性を提供するように構成された実行可能プログラムである。文書処理アプリケーションは、一般にはタイプ入力、編集、書式設定、保存、印刷、およびコメントの付加を助けるように構成されたアプリケーションプログラムである。エディタアプリケーションは、編集または注釈付加のツールを提供する任意のアプリケーションであり、Microsoft社から入手可能なMICROSOFT OFFICE、Google社から入手可能なGOOGLE DOCS、Apache Software Foundationから入手可能なAPACHE OPENOFFICE、またはZoho社から入手可能なZOHO OFFICEなどの文書処理アプリケーションまたは他の生産性アプリケーションである。
生産性アプリケーションには、これらに限定されないが、文書処理プログラム、協同作業プログラム、プレゼンテーションプログラム、表計算プログラム、および物語/ノート取りプログラムが含まれる。
ウェブブラウザアプリケーション213は、ワールドワイドウェブ(「Web」)上の情報リソース、ならびにネットワーク230を介して私設ネットワーク上のウェブサーバによって提供されるリソースを検索し、リソース内を移動し、その情報リソースをユーザに提示する(例えば表示のために表現する)アプリケーションプログラムである。さらに、ウェブブラウザアプリケーション213は、ユーザがサーバから提供される情報および各種ファンクションにアクセスすることを可能にする。
図のサーバコンピュータ220は、サーバオペレーティングシステム221、サーバ文書処理もしくはエディタアプリケーション222、および/または1つまたは複数の他のアプリケーションなどの1つまたは複数のアプリケーションプログラムを実行するように構成されている。サーバ220はサービスをホストしている場合もある(かつ、図1で説明したWACなどのWAC132を内蔵する)。
サーバオペレーティングシステム221は、サーバコンピュータ220の動作を制御するコンピュータプログラムであり、アプリケーションプログラムは、サーバオペレーティングシステム221の上で実行されて本明細書に記載の各種機能性を提供するように構成された実行可能プログラムである。サーバ文書処理またはエディタアプリケーション222は、実施形態によっては、上記の文書処理またはエディタアプリケーション212と同様に構成されたウェブベースのアプリケーションプログラムである。サーバ文書処理またはエディタアプリケーション222は、文書処理またはエディタアプリケーション212と全く同じ機能性を提供することができる。
実施形態によっては、サーバコンピュータ220はサーバ文書処理またはエディタアプリケーション222を実行するように構成され、クライアントコンピューティング機器210は、クライアント/サーバ構成でサーバコンピュータ220にアクセスしてサーバ文書処理またはエディタアプリケーション222と対話するように構成される。
クライアント−サーバ関係にあるコンピューティング機器間の通信は、クライアントがサーバに要求を送信して、特定のリソースへのアクセスまたは行いたい特定の作業を要求することによって開始することができる。その後、サーバは、要求された動作を行い、クライアントに応答を送り返すことができる。
一実施形態では、ウェブベースの文書処理またはエディタアプリケーション122にアクセスするために、クライアントのウェブブラウザアプリケーション213を使用してサーバ、例えばサーバ220に接続する。
クライアント210およびサーバ220は、ネットワーク230を通じて変換およびマージサービス240にアクセスすることができる。クライアント210およびサーバ220で実行されるアプリケーションは、HTTP、XML、JSONおよびSOAP、またはFSSHTTPプロトコルなどの広く使用されるウェブプロトコルおよびデータ形式を介してサービス240にアクセスすることができる。
図3は本発明の一実施形態によるコンピューティング環境を示す。図3に示すように、ユーザ300のコンピューティング環境は、複数のクライアント310(デスクトップ311、ラップトップ312、スマートフォン313、タブレット314、リーダ(図示せず)、ゲーム機(図示せず)、スマートテレビ(図示せず)等)、およびネットワーク330を通じて接続されたサーバ320を含むことができる。
図2のネットワーク230に関して上述したように、ネットワーク330は、インターネット、イントラネット、またはエクストラネットであり、これらに限定されないが、セルラー(例えばワイヤレス電話)ネットワーク、インターネット、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、WiFiネットワーク、アドホックネットワーク、またはそれらの組み合わせを含む適切な通信ネットワークを用いることができる。
クライアント310およびサーバ320は、クライアント220およびサーバ230に関して説明したように構成されたコンピューティングシステムを伴う場合がある。
各クライアント310は、コンテンツアクセスサービスを通じてサーバ320から提供された文書(およびそのコンテンツ)340を閲覧および編集(および/または注釈を付加)するためのソフトウェアアプリケーションを含むことができる。
ユーザ300は、複数のクライアント310(例えば職場のデスクトップコンピュータ311、自宅のラップトップ312、および携帯電話/スマートフォン313)を有することができ、それらのクライアント310で実行されるソフトウェアの電子書籍リーダまたは文書ビューワまたはエディタを使用して、サーバ320から取得した電子書籍およびその他のデジタルコンテンツを読み、コンテンツを編集したり、注釈を付加したりすることができる。
サーバ320は、(コンテンツアクセスサービスの一部として)変換サービスおよびマージサービスを提供するように構成されたハードウェア機器および/またはソフトウェアプログラムである。変換サービスで、ユーザは、そのコンテンツにアクセスするためにユーザが使用している特定のクライアント310で直接サポートされないファイル形式である可能性のあるコンテンツ(ユーザ自身のコンテンツである場合もある)にアクセスすることができ、マージサービスは、ユーザ300によって行われた変更をデータベース350に記憶されたマスター文書345に再統合する。
サーバ320によって提供されるサービス(またはファンクション)の1つまたは複数は、クラウドコンピューティング環境で実行することができる。また、サーバ320は、APIを通じて公開されるアプリケーションを含む(および/またはサービスをホストする)ことができる。
特定の実施形態によると、クライアント310またはデータベース(データベース350など)から文書をインポートすることができる、サーバ320を含むシステムを提供することができる。インポートされた文書をマスター文書345と見なすか、またはインポートした文書からマスター文書345を作成し、例えばサーバ320に関連付けられたデータベース350に記憶することができる。
サーバ320は文書345を変換して、消費者機器(例えばデスクトップ311、ラップトップ312、スマートフォン313、タブレット314、リーダ(図示せず)、ゲーム機(図示せず)等)に適した形式にすることができる。
ユーザ300は、各機器(例えば311、312、313、314)から適切なバージョンのマスター文書345(例えば文書340の形態)にアクセスすることができる。例えば、文書340はどの機器およびプラットフォームからでも表示することができる。例えばラップトップ312上であるプログラム内で文書340を作業しているユーザ300が、文書と共に変更を保存することができる。文書を保存するとマージサービスを呼び出すことができる。例えば、図5B〜図5Dに示すように、文書全体(図5B)、変更(デルタ)(図5C)、または特定の修正(図5D)をマスター文書にマージするためにサーバに戻すことができる。
実際の物理的なファイルはクラウドに(データベース350などのクラウドストレージの一部として)記憶される場合も、されない場合もある。ファイルは、サーバもしくはコンピュータ、またはネットワークを介して本サービスからアクセスできる任意の記憶場所に記憶することができる。マスター文書(または他のインポートされたファイル)は、アドレス指定することが可能なファイルの集まりとしてサーバ320に記憶することができ、要求があるとファイルをインポートし、変換することができる。
クライアント機器(ラップトップ316など)にある別のユーザ360、またはタブレット314などの第2の機器にある第1のユーザ300が文書340を開くことができ、それらユーザの体験は、文書340が機器316(または第1のユーザ300が文書にアクセスしている第2の機器314)内で作業することが可能な文書になるというものになる。そして、機器316を使用している第2のユーザ360(または第2の機器の第1のユーザ300)が編集後に文書を保存し、サービスが変更をマージする。
各実施形態によると、各クライアント310は、そのクライアントに適した形式で記憶されたファイルを所有していると認識する。ファイルを開き、データにアクセスするために、クライアントでファイルを変更する必要はない。例えば、アプリケーションは予期したように文書を開くことができ、クライアントが適切なファイル形式を受け取るかどうかはサーバが対応する。クライアント310で、ユーザ(300、360)は、予想されたプロセスに従って文書を開き、変更し、保存する。サーバはエンドポイントの制約を理解しており、適切な形式を機器に提供する。
サーバ320と消費者/クライアント機器310は、システムがクライアント310で利用可能な機器またはソフトウェアの種類を把握し、それに応じてユーザ体験を調整するような形で通信する。
サーバ320は、エンドポイントのユーザエージェント/クライアントの特性を識別するように構成することができる。この識別は、エンドポイント(例えばクライアント310)からサーバ320に送られる能動的な通知または暗黙的な通知に基づいて行うことができる。サーバ320はさらに、クライアント体験だけでなく持続的な体験(例えばマスター文書の記憶されたコピー)を調整するように構成することができる。
特定の実施形態によると、提供される文書340は、より小さい(または大きい)ディスプレイサイズに対応するようにリフロー(reflow)されるだけでなく、追加的な適合も行うことができる。
リフローとは、制限のあるディスプレイまたはウィンドウに合わせてコンテンツの閲覧を適合させることを言い、テキストは読みやすいように元の大きさに保たれるが、画像は一目で見ることができるように大きさを縮小する。
追加的な適合の一例として、高解像度の機器には高解像度のコンテンツ(フォームファクタが高いほどより多くのオブジェクトを受け取ることができる)を提供し、対して電話機は(例えば文書に含まれる12メガピクセルバージョンのピクチャの代わりに)低解像度の画像を受け取ることができる。また、タッチ対応型の機器には、文書にタッチに応答する機能を付加することができる。さらにカスタマイズされたエンドポイントサービスも提供することができ(例えばAPIを通じて公開される)、そのようなサービスには、これらに限定されないが、文書へのコメント付加やワークフロー要素(作業項目など)の追加を可能にするサービスが含まれる。セキュリティ設定および著作権の管理もクライアントに合わせて調整することができる。例えば、古いバージョンまたは任意のファイル形式がクライアントに提供される場合には、読み取り専用で機能するように文書を提供して、忠実度の低いバージョンで保存する場合の破壊性を最小に抑えるが、文書をマスターとは別のコピーとして保存することができるようにする。
提供される文書340を、特定の消費者機器で表現するのに適した形式にする(さらにはカスタマイズする)だけでなく、文書340に行われた修正をマスター文書345と再統合することができる。サーバ320は、クライアントで利用可能な機器および/またはソフトウェアの種類を把握することにより、修正を再統合することができる。例えば、各クライアント機器が異なるプラットフォーム(およびファイル形式)を使用する場合、サーバ320は、変換で失われる可能性のある忠実性を把握し、変更が行われた場合はサーバで変更を再構築することができる。
同様に、各クライアント機器がある機能の異なるバージョンを使用している場合、サーバ340は使用されているバージョンを把握し、それに応じて調整することができる。機能には、これらに限定されないが、テキスト、図表、数式、テキスト効果、およびグラフィック(MICROSOFT SMARTARTグラフィックを含む)、デジタルコンテンツ(映像を含む)、参考文献スタイル、スレッド形式のコメント付加、スペルチェック、辞書、言語を操作および編集するためのユーティリティ、ならびにグラフィックを操作および編集するためのユーティリティが含まれる。
本発明のサービスは後方互換性および前方互換性を提供することができる。
例えば、最近のバージョンのMICROSOFT WORDの文書を、以前のバージョンのMICROSOFT WORDを実行しているクライアントに提供することができ、クライアントは以前のバージョンへの変換を行う必要がない。さらに、(忠実度の低いバージョンを再保存することに伴う問題を回避するために)読み取り専用のバージョンを提供する代わりに、以前のバージョンを実行しているクライアントで文書を編集することができる。これは、サーバが、その以前のバージョンが完全な忠実度のバージョンに対してどのような破壊性があるか(および高忠実度のコンテンツの代わりに使用されている画像が表す内容)を把握しており、サーバ上でデータを再構築する(すなわち忠実度の復元を行う)ことができるためである。
コンテンツが提供された形態と、そのファイルが特定のファイル形式にある時にファイルに対して実施され得る特定の制約および動作をサーバが把握しているため、忠実度の復元をサーバで行うことができる。
図4は、本発明の一実施形態による変換およびマージサービスの例示的な処理フローを示す。図4を参照すると、動作(402)でサーバがマージ要求を受信すると、その要求および文書を提供することができる。サーバは、その文書が新しい文書であるか、またはシステムに存在するかを判定することができる(404)。文書が新しい文書(または新しいコピー)である場合、システムは文書からマスターを作成することができる(406)。マスターは、その文書とする(同じファイル形式および機能バージョンを使用する)か、または文書を特定のファイル形式および機能バージョンに変換することによりマスター文書を作成することができる。
マスター文書を作成することにより、特定の実施形態ではユーザに対して「サービスとしての文書」の体験を作り出すことができる。詳細には、マスター文書は、マスター文書を構成するコンテンツと共に、作成者およびその他の者が文書に対して行うことができる動作のセットを含む。カスタマイズされた体験を消費者にもたらすことができ、コンテンツを編集する能力をサービスの一部として公開することができる。
動作(404)に戻ると、(例えばシステムにすでにマスター文書が存在するために)文書が新しい文書ではないと判定された場合、サーバは、文書がマスター文書と同じファイル形式であるか、異なるファイル形式であるかを判定することができる(408)。ファイル形式が異なると判定されると、サーバは、文書のファイル形式をマスター文書のファイル形式またはシステムによって理解される他の形式に変換し(410)、次いで、文書とマスター文書間の差分を自動的に判定し(412)、差分(デルタ)をマージしてマスターを更新することができる(414)。デルタをマスター文書にマージすることにより、ある機器のユーザが文書に何らかの動作を行い、その変更を文書に関連付けることが可能になり、文書にアクセスした次の人物(または第2の機器にある同じ人物)は、その第2の人物(または第2の機器)が受け取る文書にそれらの変更が反映されているのを見ることができる。
動作(408)に戻ると、ファイル形式が同じである場合は、その文書でサポートされる機能バージョンがマスターでサポートされる機能バージョンと同じであるかどうかを判定することができる(416)。機能バージョンが異なると判定されると、サーバは、文書とマスター間の機能に関係しない差分(デルタ)を判定し(418)、判定されたデルタを使用して、忠実性を失うことなくマスターを更新することができる(420)。
ファイル形式および/または機能バージョンを判定することにより、ある文書を別の文書に変換する、またはあるバージョンのコンテンツを別のバージョンに変換するために、ファイル全体とファイル内のコンテンツを分析することができる。文書とマスターの間にファイル形式および機能バージョンの違いがない場合は、マスターで差分を自動的に更新する(422)か、マスターを当該文書に置き換えることができる。
図5A〜図5Dは、変換およびマージサービスの例示的なシナリオを示す。図5Aを参照すると、変換サービス505はデータベース510にある文書にアクセスし、その文書を、サポートされるファイル形式で、例えば表示された文書520としてクライアントに提供することができる。表示された文書520のコンテンツの実際の形式(データベース510に記憶されている)は、これらに限定されないが、PDF、DOC、DOCX、およびePubを含む可能性があるが、変換サービス505は、クライアントでサポートされる形式で、さらにはエンドポイントのためにカスタマイズしてコンテンツを提供することができる。
実施形態は、ユーザが閲覧(または編集)のために文書を選択する時点まで文書が実際にはその形式またはバージョンで存在しない場合でも、文書が特定のクライアントに必要とされる形式であるかのようにユーザに提示されるシステムを提供する。サーバに記憶されたすべてのファイルをあらゆる種類のファイル形式に予め変換しておくのではなく、ユーザから要求があると、文書に対応する特定の形式が送付される。
各実施形態は、コンテンツを消費することができる到達範囲を広げ、そのコンテンツが提供される機器(またはクライアント)に適したコンテンツの体験を作り出すことができる。本サービスは、機器および能力を解釈して、その特定の機器でコンテンツを閲覧するのに望ましい方式、または適切な方式を判定することができる。サービスが考慮することが可能な機能には、これらに限定されないが、ディスプレイの寸法、機器のユーザ入力能力、ネットワーク接続の速度および/または帯域幅、ならびにオペレーティングシステムおよびアプリケーションの制約が含まれる。
例えば、文書によっては、ラップトップでは良好に表示されるが、電話機やタブレットなどの小さな画面では使用性が落ちるものがある。クライアントの種類を判定することにより(クライアントに適した消費形式を判定するなど)、サービスは、機器(またはソフトウェア)に基づいて消費体験を変えることができる。
クライアントで、サービス510から提供された文書520が編集される可能性がある。この例では、編集された文書525を再度マスター文書とマージして、異なるエディタおよび機能バージョンにまたがる協同作業を容易にすることができる。マージサービスを提供するには、協同作業およびマージサービスのための一般的なAPIまたは複数のAPIを使用することができる。APIを使用すると、クライアントは複数のプラットフォームにまたがって文書への変更をマージすることができる。また、本サービスは、例えば独自の形式や新しい形式が開発される場合など、認識可能なファイル形式への中間変換が行われる場合のある状況では、サードパーティのアダプタに合わせて拡張可能にすることができる。
図5B〜図5Dは、編集後の文書525を再度マスター文書とマージする各種シナリオを示す。
図5Bは、修正530が行われた文書全体がマージサービス540に提供される場合を示す。図5Bを参照すると、一般的なAPIを使用することができる。一実施形態では、クライアントが変更と共に文書全体を(文書530として)サーバ(例えばサービス540)に送信することができる。サービス530は文書530を解釈し、差分を判定し、そして自動的にマージする。マージは、編集された文書がマスター文書と異なるファイル形式である場合にも行うことができる。文書530はサービス540により特定の形式に変換して、マージを容易にすることができる。
図5Cは、文書520と編集された文書525との差分(デルタ550)が(一般APIを介して)マージサービス560に提供される場合を示す。サービス560はデルタ550を解釈し、自動的にマージする。マージは、編集された文書がマスター文書と異なるファイル形式である場合にも行うことができる。
図5Dは複数のAPIが使用される場合を示す。APIは、コンテンツをマージするための軽量のオプションの一部としてバンドルすることができる。APIは、個々の修正ファンクションとすることができ、これらに限定されないが、ハイライトのAPI、フォントのAPI、段落のAPI、スタイルのAPI、翻訳のAPI、数式のAPI、表を作成または編集するAPI、画像を挿入、作成、または編集するAPI、色のAPI、コメントのAPI等を含むことができる。それらのAPIの1つまたは複数が、特定のクライアントで利用できる可能性がある。
例えば、クライアントがハイライトのAPIを呼び出し、段落識別子またはテキストを渡し、サービスがハイライト処理を行う。クライアントがコメントのAPIを呼び出し、コメントを挿入する文章、段落、または単語を、コメントとして挿入したいテキストと共に提供することができる。機器は文書のファイル形式を理解する必要はない。例えば、文書はDOCXファイルとして記憶することができるが、クライアントはその文書をPDFファイルまたはePUBファイルとして閲覧(および編集)する。
別の実施形態によると、クライアントがコメントのAPIを呼び出し、コメントのAPIがコメント付加サービスを提供することができる。コメント付加サービスは(例えばコメントのAPIを介して)、制限のあるエンドポイントが、完全な文書にマージするために文書の場所に関するコメントをサービスに送信できるようにする。コメント付加サービスは、コメントおよびそのコメントが関連付けられた文書の場所を示す指示を受け取り、コメントを含むように完全な文書に修正を加えることができる。
図5Dに示す例では、編集後の文書は、第1の段落のハイライト、第3段落のテキストの修正、および文書に関連付けられたメタデータに追加された署名を含んでいる。ハイライトAPIの場合、クライアントは、ハイライトAPIを呼び出し、段落識別子570をハイライトサービス575に渡すことができる。誤記を修正するには、クライアントは、場所の識別子(例えば第3段落の第1文)および置き換え用のテキスト580をテキスト編集サービス585に渡すことができる。署名を追加するには、クライアントは、場所の識別子(例えばメタデータ)および署名590を署名サービス595に渡すことができる。
場所の識別子には、これらに限定されないが、文書内の段落を識別する段落識別子、文書内の行を識別する行識別子、文書内の文字を識別する文字識別子、および文書の部分を識別する部分識別子が含まれる。部分識別子は、文書コンテンツ、コメントコンテンツ、スタイルコンテンツ等、文書の部分間の違いを区別する場所の識別を提供することができる。部分識別子で識別される文書の部分は、文書内で構造的に表されたコンテンツとすることもできる。一実施形態では、部分の識別子は、関連付けられたメタデータで構造的マークアップを通じて修正されている文書部分を識別する。構造的に表されたコンテンツの一例を以下に示す。
ここから1つの段落。
<fill-in region>ユーザが編集してから
サーバに送り返してマージすることができる何らかのコンテンツ</fill-in region>
次の段落。
コンテンツコントロールの外観を有する上記の例では、ユーザにより修正を加えることが可能なコンテンツは、識別された「fill-in region」のマークアップの間の段落内に置かれる。実施形態によっては、修正が行われる文書の部分は、文書内の構造的マークアップを通じて、例えば「fill-in region」として識別することができる。
実施形態によっては、テキストを渡し、テキストを受け取って指定の書式設定を追加することができるAPIを呼び出すことにより、プレーンテキストのファイル形式をサポートするクライアントからのコンテンツが、本サービスを通じてファイルにリッチコンテンツを付加することができる。同様に、メタデータにコンテンツを追加するサービスを呼び出すことにより、メタデータにコンテンツを追加することができる。
図6は、本発明の一実施形態によるエディタによって実行される処理の図である。エディタとは、テキスト、画像、または音声を編集するためのツールを備えたクライアント(ハードウェアまたはソフトウェア)を指す。エディタは、例えば文書処理アプリケーションを含む生産性アプリケーションである。
図6を参照すると、動作(602)で、エディタが文書を要求することができる。この要求は、クラウドデータベース604にあるファイルを開く要求とすることができる。文書はエディタでサポートされるファイル形式と同じファイル形式であるとは限らないので、文書の要求で、変換サービスを提供するアクセスサービス608を呼び出すことができる。アクセスサービス608はデータベース604から文書を取得し、文書を変換して、エディタに適したファイル形式にすることができる。動作(608)で、エディタが、変換された文書をアクセスサービス606から受け取り、受け取った文書を表示のために表現することができる。
データベース604から取得される文書は、マスター文書である場合もある。エディタが使用される過程で、ユーザが受け取った文書に修正を加える可能性がある。受け取った文書に修正が加えられると(610)、マージサービスを呼び出すことによりその修正をマスター文書にマージすることができる(612)。
マージサービスを呼び出すと(612)、アクセスサービス614のマージサービスが呼び出される。マージサービスの呼び出しは、ユーザから保存の指令を受け取るのに応答して行うことができる。別の実施形態では、マージサービスの呼び出しはワークフローの一部として行うことができる。例えば、マージサービスの呼び出しは、システムから行われる自動的な保存など特定のイベントによって行わせることができる。
任意選択により、検証処理(616、618)を含めることにより、ユーザの識別に基づく文書および/またはアクセスサービスへのアクセスを提供することができる。例えば、OATHトークンを使用して、サインインしたユーザをアクセスサービスに対して確認することができる(606、614)。トークンは、エディタからクラウドデータベースおよび/またはアクセスサービスに送信され、それによりユーザを認証し、文書にアクセスすることができる。
さらに他の実施形態では、識別マネジャを利用して、本サービスがユーザの識別およびユーザが関心を持つ文書を把握するのを助けることができる。ユーザの識別を把握することにより、本サービスは、複数の機器(例えばユーザのコンピュータ、ラップトップ、タブレット、スマートフォン、電子書籍リーダ等)にまたがってユーザのコンテンツ(例えば文書)を取得し、サービス(例えば、Dropbox社のDROPBOXサービスやMicrosoft社のMICROSOFT SKYDRIVEなどのファイルホスティングサービス)をユーザに代わって取得することができる。
また、文書が提供されるクライアントを把握することにより、システムは、ある形式で文書を取り出し、文書を変換して、ユーザに使用されているクライアントに合わせてカスタマイズされた形式にすることができる。例えば、ユーザがMICROSOFT WORDで文書の作業をしており、自身の電子書籍リーダからその文書にアクセスしたいとする。そのような場合、本サービスは、ユーザが電子書籍リーダから利用可能なファイルを閲覧する時に、ユーザにその文書を提示することができる(それにより例えばユーザは電子書籍リーダでその文書を読むことができる)。これにより、現在(文書を適切な形式に変換するために)ユーザが文書を電子書籍リーダに送信するために必要な工程を不要にすることができる。
ファイルは、リーダ機器でアプリを開くと利用可能な状態になる。アプリには、そのリーダで実行することが可能な文書のハブを関連付けることができる。別の実施形態では、ユーザが本発明の特定の実施形態のアクセスサービスから文書にアクセスできるように、Kindleリーダ向けにAmazon.comによって提供されるサービスなど、リーダによって提供されるサービスが、拡張層を介してユーザの体験を組み込むことができる。
一実施形態によると、ユーザは、単に文書で作業し、文書(または文書のアドレス)を保存し、ファイルを閉じることができる。識別マネジャがユーザの識別を把握し、したがって文書を利用可能にする対象プラットフォームを把握することにより、文書は、同じクライアントまたは別のクライアントから再度アクセスされた時に適切な形式でユーザに提示される。
図7は、本発明の一実施形態による複数のエディタを使用して文書の協同作業を行う方法の処理の流れ図を示す。協同作業の方法は、アクセスサービスによって管理されるマスター文書700に基づくことができる。第1のエディタ(エディタ1)が動作(710)でアクセスサービスに文書700を要求することができる。マスター文書700は、アクセスサービスに関連付けられたデータベースに記憶されるか、またはアクセスサービスに知られている場所から取得することができる。この例では、第1のエディタはePub形式をサポートするリーダであり、マスター文書はDOCX形式であるとする。アクセスサービスは、第1のエディタに適した形式を判定し(715)、文書を第1のエディタに提供する(720)ことができる。第1のエディタはePub形式をサポートしており、マスター文書のDOCX形式はサポートしていないので、本サービスは、ePub形式で第1のエディタに文書を提供することができる。
第1のエディタはePub形式の文書を受信し(725)、文書を表示する(730)ことができる。第1のエディタのユーザは、例えばコメントを含めることにより、ePub文書に修正を加える(730)ことができる。保存の指令(または他の指定された条件)が発生すると、第1のエディタがアクセスサービスにマージを要求することができる(740)。この要求は、修正が加えられたePub文書全体(例えば文書とコメント)、または修正の場所の識別子および修正内容(例えばコメントの場所と、コメントとして付加するテキスト)を含むことができる。
アクセスサービスはマージ要求を受け取り(745)、修正をマスター文書にマージする動作を行う(750)ことができる。マスター文書は元の形式およびバージョンを保つことができる。
第2のエディタがアクセスサービスに文書を要求する(755)。この例では、第2のエディタは、「DOCX」のファイル拡張子を、マスター文書とは異なる機能バージョンでサポートするコンピューティング機器である。例示として、マスター文書はバージョン5であるが、第2のエディタはバージョン1であるとする。動作(760)に進み、アクセスサービスは、第2のエディタに適した形式を判定し、文書を第2のエディタに提供することができる(765)。第2のエディタはDOCX(機能バージョン1)形式の文書を受け取り(770)、文書を表示する(775)ことができる。第2のエディタのユーザが文書に修正を加えることができる(780)。保存の指令(または他の指定された条件)が発生すると、第1のエディタはアクセスサービスにマージを要求することができる(785)。
アクセスサービスはマージ要求を受け取り(790)、修正をマスター文書にマージする動作を行うことができる(795)。修正は、両方のバージョンでサポートされる機能を使用したコンテンツの一部に対する修正である可能性がある。第2のエディタは古いバージョンのDOCXをサポートしているが、新しい方のバージョンはサポートしていないので、本サービスを使用することにより新しい方のバージョンへの忠実度の復元を実行することができ、新しい機能を使用したコンテンツがマージによって破壊されることはない。
修正が、両方のバージョンにサポートされていない機能を使用してコンテンツの一部分に行われた場合は、ユーザに代わって行われる変更やユーザの決定に応答して行われる変更など、任意の適切な方法で衝突を解消することができる。例えば、場合によっては、修正をどのように取り込むか、どこに取り込むか、および修正を取り込むかどうかに関して、サービスによる決定を行うことができる。決定で決定を行うことができない(または決定を行うように設定されていない)場合、本サービスは、すべての衝突および可能性を見る選択肢を1つまたは複数の機器に与えることができる。そして、衝突を解決するための選択肢をユーザが選ぶことができる。
アクセスサービスは、複数のエディタが同じファイルを閲覧、編集することを可能にする。さらに、第2のエディタと第1のエディタは、両者ともマスター文書にアクセスしているが、異なるプラットフォームから文書にアクセスしている。
以下の例示的なシナリオは、本発明の特定の実施形態およびその多くの効果をよりよく理解できるように提示されるものである。以下の例示的なシナリオは、単に本発明の実施形態の応用例および変形例のいくつかを例示するものである。言うまでもなく、本発明を限定するものとは決して解釈すべきでない。
例示的シナリオA
KINDLEリーダまたはNOOKリーダのユーザが文書を読んでおり、コメントの付加、誤記の修正、ハイライト、または何らかの他の修正や注釈を行うことにより、文書に寄与したいとする。そのようなリーダは、基本的にはエディタではないものの多少の編集能力を有する。そのため、本発明の特定の実施形態では、ユーザが例えば注釈の付加や編集能力などのリーダの能力を利用し、その後修正を文書にマージすることができる。各機器またはアプリケーションが協同作成能力を備えなければならないのではなく、「サービスとしての文書」のマージサービスは、異種のプラットフォームからでも編集/コンテンツを自動的に文書に再マージすることができる。
一実施形態では、マージは、リーダが同期動作(ユーザが、実現される最も遠い場所からデジタルコンテンツを取得しながら、複数の機器からデジタルコンテンツを読めるようにするため等に使用される)を行う時に実現することができる。そのような一事例では、同期サービスへの位置を更新する呼び出しの際に、文書に行われた修正を本発明の一実施形態の変換およびマージサービスに送信することができる。
別の実施形態では、例えばユーザが文書の保存を選択した時など、ユーザが能動的な工程を行うと、リーダが変換およびマージサービスを呼び出すことができる。さらに別の実施形態では、自動保存機能を使用して変更を保存することができる。
クライアントは、協同作成を理解し実行することができる層を含む必要がないため、機器はより「低能力(dumb)」になることができ、または機器のリソースを他のアプリケーションやファンクションに振り向けることができる。
例示的シナリオB
Microsoft社から入手可能なMICROSOFT WORD文書および文書処理ソフトウェアの最近のバージョンに対応するDOCX形式で文書が作成されるが、作者は、ePubファイル形式を使用する可能性のあるNOOKリーダや、独自開発のAZWおよびKF8形式を使用する可能性のあるAMAZON KINDLEリーダなどのリーダでその文書を閲覧し、場合によってはコメントの付加や編集を行いたいとする。本サービスを使用することにより、作者はNOOKリーダまたはKINDLEリーダに適した形式で文書にアクセスし、例えばいくつかのコメントを追加することにより、文書に変更を加えることができる。コメントはマスターファイルに再度保存することができ、この場合のマスターファイルはDOCXファイル形式である。
例示的シナリオC
現在は、文書を作成する際に使用されたバージョンと異なるバージョンでMICROSOFT WORDの文書ファイルを開くと、文書にすべての機能は表示されない場合がある。例えば、特定のフォントや書式設定が変化し、例えば脚注能力や一部のマクロなどのリッチな機能または複雑な機能が表示されない場合がある。場合によっては、MICROSOFT WORD97(「DOC」のファイル形式拡張子を使用する)とMICROSOFT WORD2010(「DOCX」のファイル形式拡張子を使用する)などの場合のように、バージョンが変わるとファイル形式も変わる。他の場合には、バージョンが変わると、MICROSOFT WORD2007とMICROSOFT WORD2010の場合のように、追加的な機能性および/または機能が提供される。
それに比べると、文書が古いバージョンで作成された後により新しいバージョンで開かれる場合は問題は少ないが、後のバージョンでは機能が消える、完全にサポートされないなどのエラーが生じる可能性がある。文書を開くために使用されるバージョンと異なるバージョンで作成された文書を表示することに伴う問題に加えて、後のバージョンで作成された文書が以前のバージョンで開かれ、保存される場合には、文書を後のバージョンで開き直しても後のバージョンの機能が失われる場合がある。例えば、MICROSOFT WORD2010文書処理アプリケーションは、グラフィックを作成および操作する機能を備えている。MICROSOFT WORD2010で凝ったグラフィックを使用して文書を作成したが、文書の最初のページのテキストの誤記を修正するためにMICROSOFT WORD97で開き、その後保存した場合、保存された文書は古い方のバージョン(ファイル形式拡張子「DOC」)に戻り、凝ったグラフィックが失われてしまう。1つの単語が変更されたために、文書全体が古いバージョンのグラフィック画像に戻ってしまう。
特定の実施形態によると、ユーザが古いバージョン内で意図した変更を認識して、新しい機能を維持するような方式で新しいバージョンでサポートされる文書にマージすることができる。
例示的シナリオD
コンテンツアクセスサービスを使用することにより、既存製品の古いバージョンに合わせてコンテンツを調整することができる。例えば、ユーザ(最も新しいプログラムを実行している、またはその逆)が受け取るファイルはエンドポイントに基づいて調整することができるので、ユーザは、ソフトウェアアプリケーションの最新バージョンへのアップグレードを遅らせる、または古い/新しいファイル形式の拡張子を読むために次のバージョンが後方互換性を備えることを要求することができる。
例えば、MICROSOFT OFFICE2013を実行しているクライアントは利用可能なすべての機能を含む完全なビューを受け取ることができるが、同じ文書がMICROSOFT OFFICE2007を実行しているクライアントから開かれる時には、本サービスは、消費ビューのためのコンテンツをMICROSOFT OFFICE2007向けに最適化してパッケージすることができる。最適化は、特定の機能を該当する忠実度の機能に置き換えることを含むことができる。一例として、あるバージョンで提供される数式エディタは後方互換性がない場合がある。したがって、本サービスは、文書パッケージ中の数式を、その数式の画像、または当該文書が提供されるバージョンに適した数式エディタで編集可能な形態に置き換えることができる。
文書処理アプリケーションを含む他の生産性アプリケーションでも同様の体験を提供することができる。例えば、MICROSOFT OFFICE2013を実行しているクライアントは利用可能なすべての機能を含む完全なビューを受け取ることができるが、同じ文書が、Google社から入手可能なGOOGLE DOCSソフトウェア、 Apache Software Foundationから入手可能なAPACHE OPENOFFICE、Zoho社から入手可能なZOHO OFFICEなどの別の生産性アプリケーションを実行しているクライアントから開かれる時には、本サービスは、消費ビューのためのコンテンツをGOOGLE DOCS、OPENOFFICE、またはZOHO OFFICE向けに最適化してパッケージすることができる。
例示的シナリオE
マスターファイルは最も忠実度が高い形式で記憶することができる。例えば、マスター文書は最新バージョンのMICROSOFT WORDで記憶される場合がある。以前のバージョンのMICROSOFT WORDを実行しているクライアントには、DOCX形式ではなくDOC形式のファイルを提供することができる。ユーザがDOC文書に変更を加え、文書を保存する(自動保存の一部として、または能動的な工程により)と、DOC文書に行われた変更はDOCX形式で再度マスターファイルに保存される。一実施形態では、サーバでDOC文書全体がDOCX形式に復元される。別の実施形態では、ユーザによって修正された部分だけ(単に、クライアントにDOCファイルを提供する時にコンテンツに加えられた違いの一部ではなく)が保存時にサーバに戻される。そして、その部分を完全な忠実度の文書に再度関連付けることができる。
例示的シナリオF
実施形態は、同一製品の異なるバージョン間の前方互換性および後方互換性を容易にすることができる。現在、MICROSOFT WORDプログラムで保存されるファイルは複数の対象に対して保存される。例えば、数式用の更新後の機能バージョンがファイル中で使用され、そのファイルが保存される時には、元の数式データが保存され(それにより編集のために対応する忠実度で再度読み出すことができる)、また数式のピクチャが保存されることにより、以前のバージョンのワードプロセッサで数式エディタがサポートされていなくても数式がどのように見えるかを表示することができる。古いバージョンは、新しいバージョンでどのようにして完全な忠実度を取り戻させるかについての情報を含むことができる。例えば、古いバージョンは表示モードにあり、編集が可能でない場合がある。
ワードプロセッサの各バージョンは、将来のバージョンが機能の完全な忠実度を取り戻せるように、特定の機能をどのようにラウンドトリップ(round-trip)するかについての情報を含んでいる。ラウンドトリップとは、文書があるバージョンから別のバージョンになり、その後元のバージョンに戻ることを言う。例えば、機能AがバージョンXであるが、バージョンYでは機能Aは機能A’として表現される。機能A’がバージョンXから閲覧またはアクセスされると、機能はAに戻る。この仕組みでは、以前のバージョンがその機能をどのようにラウンドトリップするかに基づいてレベルを下げた互換性を作り出すことを将来のバージョンに強制すると共に、場合によっては追加的なデータの保存を必要とする。
本発明の実施形態は、各種機能をどのようにラウンドトリップするかを各バージョンに把握させることを強制しないか、または最小に抑えると共に、複数のバージョンをサポートするために保存されるデータ量を減らす。実施形態は、古いバージョンの製品が同じ製品の新しいバージョンからコンテンツを読み込み、維持することを可能にする。
例示的シナリオG
リッチテキストフォーマット(RTF)は、多種の文書処理アプリケーションに適したプラットフォーム間の文書の交換として使用するために、各種文書、テキストおよびグラフィックの書式設定属性を符号化するファイル形式である。現在、RTFファイルは、可能性のあるファイルのクライアント/消費者をサポートするために、ピクチャの複数の別個のバージョンをファイルに保存する。例えば、あるファイルが現在のバージョンのピクチャを提供し、第2の(またはさらに多くの)ファイルが1つまたは複数の以前のバージョンのピクチャを提供し、別のファイルがWORD2.0のバージョンを提供し、さらに別のファイルがWORDPADバージョンを提供する。変換およびマージサービスを提供することにより、文書処理アプリケーションが多くのファイル形式をサポートする、または同じコンテンツの複数のファイルを持つ必要がなくなる。
例示的シナリオH
マージサービスを適用することにより、電子メールで送信された文書内の変更を自動的にマージすることができる。そのような場合は、電子メールサービスまたはサーバがマージサービスと通信することができる。マージサービスは、電子メールサービス(または電子メールサーバ)がエディタであるかのようにマージを管理することができる。
例えば、何人かの人からなるグループが文書の協同作業を行うとする。グループの1人がオフラインで行った変更を電子メールの添付ファイルとして他の者に電子メールで送信する。本サービスおよびシステムは、文書の識別子を把握しているため、電子メールサービスまたは電子メールサービスがマージサービスと通信するように構成されている受信者に電子メール送信する動作により、ユーザに代わって自動的に変更をマスター文書にマージすることができる。
別の例では、グループの1人が第1の電子メールサービスに関連付けられた電子メールアカウントを使用して他の者に電子メールを送信し、文書を添付することができる。受信者の一部は、第1の電子メールサービスと接続されていない第2の電子メールサービスを使用している可能性がある。例えば、第1の電子メールサービスはMicrosoft社のHOTMAIL電子メールサービスであり、第2の電子メールサービスはGoogle社のGMAIL電子メールサービスである。
第1の電子メールサービスに接続されていない第2の電子メールサービスのユーザの1人が文書を編集し、編集した文書を添付して返信すると、第1の電子メールサービスはその変更(オフラインで行われた)をマスター文書に再度マージすることができる。第1の電子メールサービスが添付ファイルを受け取り、文書(および文書の系統)を識別すると、第1の電子メールサービスはマージサービスとの通信を開始することができる。マージサービスは、第1の電子メールサービスがエディタであるかのようにマージを管理することができる。
例示的シナリオI
ユーザが、限られた演算能力と限られた帯域幅(待ち時間等のため)を有する可能性のある機器(電話機など)を使用して校閲するために文書を受け取る。現在は、ユーザがそのような環境で文書にコメントしたい場合は、コメントまたは変更が1か所だけであっても文書全体がサーバに送り返される。一実施形態によると、アクセスサービスは、ユーザの機器の制限に対応する適合を提供し、変更を承認するかについてのコメントチェックボックス(「yes」または「no」)を組み込むことができる。そして、チェックボックスの回答の指示だけをサーバに返すことができる。そのようにして、機器は、必要とするデータをサービスから入手し、再度サービスを呼び出して、コメントを承認された状態に更新することができる。本サービスは、その指示を受け取り、高忠実度の修正および/またはコメントの挿入を行うことができる。制限のある機器のユーザは完全な協同作成体験をしたと感じ、協同作成ソフトウェア/技術全体を機器に送付する代価はかからない。
例示的シナリオJ
消費者機器のためのコンテンツの適合の一例は、消費者機器がタッチ対応型の機器であるが、文書がタッチに対応していない場合である。本サービスは、文書を増強して、例えばズームまたは拡大機能を設けることにより、文書をよりタッチに対応した状態にすることができる。説明のための例として、元は画面の大きな機器で作成されたものの、画面の小さい機器で表現するために提供されようとしている文書中の表に、(閲覧のために)表をズームすることができるタッチ態様を追加することができる。
それに代えて、またはそれに加えて、小型機器の寸法を考慮することにより、本サービスは、3列からなる表のうち1列分のスペースしかないことを判断することができ、小型の画面に適した形態で表を提示する。これは、ズーム機能を追加するか、または一度に一列だけを表示することを含むことができる。
図8は、一部の実施形態で使用されるコンピューティング機器の構成要素を示すブロック図である。例えば、システム800は、1つまたは複数のアプリケーションを実行することができる、デスクトップもしくはノートブックコンピュータまたはタブレットもしくはスマートフォン等の形態のクライアント機器、エディタ、またはリーダを実装する際に使用することができる。実施形態によっては、システム800は、一体型PDAやワイヤレス電話などの一体型コンピューティング機器である。本明細書に記載されるシステムの態様は、モバイルコンピュータおよび従来のデスクトップコンピュータと、サーバコンピュータおよび他のコンピュータシステムの両方に適用可能であることを理解されたい。例えば、タッチ画面またはタッチ対応機器(これらに限定されないがタッチ対応型のトラックパッドやマウスを含む)は、モバイル機器とデスクトップ機器の両方に適用できる可能性がある。
システム800は、1つまたは複数のアプリケーションプログラム810、および/またはオペレーティングシステム820の命令に従ってデータを処理するプロセッサ805を含む。プロセッサ805は、システムオンチップ(SoC)であるか、またはその中に含まれ、センサ(例えば磁力計、周辺光センサ、近接センサ、加速度計、ジャイロスコープ、全地球測位システムセンサ、温度センサ、衝撃センサ)やネットワーク接続の構成要素(例えば無線/ネットワークインターフェース835を含む)など、1つまたは複数の他の構成要素を伴う。
1つまたは複数のアプリケーションプログラム810はメモリ815にロードされ、オペレーティングシステム820上で実行されるか、またはオペレーティングシステム820との関連で実行することができる。アプリケーションプログラムの例には、電話発信プログラム、電子メールプログラム、PIMプログラム、文書処理プログラム、表計算プログラム、インターネットブラウザプログラム、メッセージングプログラム、ゲームプログラム等が含まれる。各種のクライアントおよびサーバアプリケーションを含む他のアプリケーションがメモリ815にロードされ、機器で実行することができる。
メモリ815は、内蔵メモリ構成要素および取り外し可能メモリ構成要素を含む1つまたは複数のメモリ構成要素を伴う場合があり、そのようなメモリ構成要素の1つまたは複数がオペレーティングシステムを記憶できることが理解できよう。各種実施形態によると、オペレーティングシステムには、これらに限定されないが、Symbian社のSYMBIAN OS、Microsoft社のWINDOWS MOBILE OS、Microsoft社のWINDOWS PHONE OS、Microsoft社のWINDOWS、Hewlett−Packard社のPALM WEBOS、Research In Motion社のBLACKBERRY OS、Apple社のAPPLE IOS、およびGoogle社のGOOGLE ANDROID OSが含まれる。他のオペレーティングシステムも企図される。
システム800は、メモリ815の内部に不揮発性ストレージ825も含む。不揮発性ストレージ825は、システム800の電源が切断された場合に失われてはならない永続的な情報を記憶するために使用することができる。アプリケーションプログラム810は、不揮発性ストレージ825の情報を使用し、生産性アプリケーション等におけるコンテンツの作成や修正中に実行されたコマンドの記録などの情報を記憶することができる。ホストコンピュータシステム(サーバなど)上の対応する同期アプリケーションと対話して、不揮発性ストレージ825の情報をホストコンピュータシステムに記憶された対応する情報と同期された状態に保つために、アプリケーションプログラム810の一部として同期アプリケーションも含め、常駐させることができる。
システム800は電源830を有し、これは、1つまたは複数のバッテリおよび/またはエネルギー生成装置(harvester)(環境放熱、光電、圧電、熱電、静電等)として実装することができる。電源830はさらに、ACアダプタや、バッテリを補助または充電する電源付きドッキングクレードルなどの外部電源を含むことができる。
システム800は、無線周波通信の送受信ファンクションを行う無線/ネットワークインターフェース835も含むことができる。無線/ネットワークインターフェース835は、通信事業者またはサービスプロバイダを介したシステム800と「外界」との間のワイヤレス接続を容易にする。無線/ネットワークインターフェース835との間の送信はオペレーティングシステム820の制御下で行われ、オペレーティングシステム820は、無線/ネットワークインターフェース835で受信された通信をアプリケーションプログラム810に伝え、その逆も行う。
無線/ネットワークインターフェース835は、システム800が、ネットワークを介してサーバコンピューティング機器および他のクライアント機器を含む他のコンピューティング機器と通信することを可能にする。
オーディオインターフェース840を使用して、ユーザに可聴信号を提供し、ユーザから可聴信号を受け取ることができる。例えば、オーディオインターフェース840をスピーカに結合して可聴出力を提供し、マイクロフォンに結合して可聴入力を受け取り、それにより電話での会話等を容易にすることができる。ユーザが音声コマンドを介してコンピューティング機器と対話できるように、スピーカが内蔵される場合もある。
システム800はさらに、任意選択のカメラ(図示せず)で静止画像、映像ストリーム等を記録する動作を可能にするビデオインターフェース845を含むことができる。カメラを使用して、コンピューティング機器と対話するために使用されるジェスチャを撮影することもできる。
タッチ画面ディスプレイ855を介して視覚的出力を提供することができる。場合によっては、ディスプレイはタッチ画面ではなく、ボタン、キー、ローラホイール等のユーザ入力要素が使用されて、ディスプレイ855にグラフィカルユーザインターフェースの一部として表示される項目を選択する。
キーパッド860もユーザ入力のために含めることができる。キーパッド860は、物理的キーパッドであっても、タッチ画面ディスプレイ855上に生成されるソフトキーパッドであってもよい。実施形態によっては、ディスプレイとキーパッドを一体にすることができる。実施形態によっては、オーディオインターフェース840およびビデオインターフェース845を含む2つ以上の入出力(I/O)構成要素を一体にすることができる。個別のプロセッサをI/O構成要素と共に含めるか、または処理機能をプロセッサ805に内蔵することができる。
ディスプレイ855は、グラフィカルユーザインターフェース(「GUI」)要素、予測型状況ツールバーユーザインターフェース、テキスト、画像、映像、通知、仮想ボタン、仮想キーボード、メッセージングデータ、インターネットコンテンツ、機器のステータス、時刻、日付、カレンダーデータ、設定、地図情報、位置情報、および視覚的形態で提示可能な他の情報を提示することができる。実施形態によっては、ディスプレイ855は、任意の能動または受動マトリクス技術および任意のバックライト技術(使用される場合)を利用した液晶ディスプレイ(「LCD」)である。実施形態によっては、ディスプレイ855は有機発光ダイオード(「OLED」)ディスプレイである。言うまでもなく他のディスプレイ種類も企図される。
タッチ画面(ディスプレイに関連付けることができる)は、タッチの存在および場所を検出するように構成された入力装置である。タッチ画面としては、抵抗膜式タッチ画面、静電容量式タッチ画面、表面弾性波式タッチ画面、赤外線式タッチ画面、光学イメージング式タッチ画面、分散信号式タッチ画面、音響パルス認識式タッチ画面を用いることができ、または他のタッチ画面技術を利用することができる。実施形態によっては、タッチ画面が透明な層としてディスプレイの上部に組み込まれて、ユーザは1回または複数回のタッチを使用してディスプレイに提示されたオブジェクトや他の情報と対話することができる。
他の実施形態では、ディスプレイを備えないコンピューティング機器の表面上にタッチパッドを組み込むことができる。例えば、コンピューティング機器は、ディスプレイの上面にタッチ画面を組み込み、ディスプレイの反対側の面にタッチパッドを組み込むことができる。
実施形態によっては、タッチ画面はシングルタッチのタッチ画面である。他の実施形態では、タッチ画面はマルチタッチのタッチ画面である。実施形態によっては、タッチ画面は、個別のタッチ、シングルタッチジェスチャ、および/またはマルチタッチジェスチャを検出するように構成される。それらを本明細書では便宜上「ジェスチャ」と総称する。以下数種のジェスチャについて説明する。それらのジェスチャは例示であり、添付の特許請求の範囲を限定するものではないことを理解されたい。さらに、記載されるジェスチャ、さらに他のジェスチャ、および/または代替ジェスチャをタッチ画面で使用するためにソフトウェアで実装することができる。そのため、開発者は特定のアプリケーションプログラムに固有のジェスチャを作成することができる。
実施形態によっては、タッチ画面は、ユーザがディスプレイに提示された項目の場所でタッチ画面を1回叩くタップのジェスチャをサポートする。タップのジェスチャは、これらに限定されないが、ユーザがタップする対象を開く、または起動することを含む各種の理由で使用される。実施形態によっては、タッチ画面は、ユーザがディスプレイに提示された項目の場所でタッチ画面を2回叩くダブルタップのジェスチャをサポートする。ダブルタップのジェスチャは、これらに限定されないが、段階的な拡大または縮小やテキストの単語を選択するなどの各種理由で使用される。実施形態によっては、タッチ画面は、ユーザがタッチ画面を叩き、少なくとも所定の時間にわたって接触を維持する、タップアンドホールドのジェスチャをサポートする。タップアンドホールドのジェスチャは、これらに限定されないが、状況に応じたメニューを開くなどの各種理由で使用される。
実施形態によっては、タッチ画面は、ユーザがタッチ画面上に指を置き、タッチ画面との接触を保ったままタッチ画面上で指を移動させるパンのジェスチャをサポートする。パンのジェスチャは、これらに限定されないが、制御された速度での画面、画像、またはメニュー間の移動などの各種理由で使用される。複数の指を用いたパンジェスチャも企図される。実施形態によっては、タッチ画面は、ユーザが画面を動かしたい方向に指をさっと動かすフリックジェスチャをサポートする。フリックジェスチャは、これらに限定されないが、メニューやページ間を横方向または縦方向にスクロールするなどの各種理由で使用される。実施形態によっては、タッチ画面は、ユーザがタッチ画面上で2本の指(例えば親指と人差し指)でつまむ動作を行う、または2本の指を動かして離す、ピンチアンドストレッチのジェスチャをサポートする。ピンチアンドストレッチのジェスチャは、これらに限定されないが、ウェブサイト、地図、または写真を徐々に拡大または縮小するなどの各種理由で使用される。
上記のジェスチャはそのジェスチャを行うために1本または複数本の指の使用する例を参照して説明したが、足の指、鼻、あごなどの他の身体部分や、スタイラスなどの物体を使用してタッチ画面と対話することもできる。そのため、上記のジェスチャは例示と理解すべきであり、決して制限的なものとは解釈すべきでない。
システム800を実装するモバイル機器またはデスクトップコンピューティング機器が有する機能または機能性の数は、本明細書に記載されるよりも多い場合も少ない場合もあり、本明細書に記載される構成に限定されないことを理解されたい。
例えば、実施形態によっては、ユーザインターフェースおよび各種の情報が、ユーザインターフェースおよび各種の情報が投影される壁面に表示され、それと対話することができる。
各種実装で、システム800を介して記憶されるデータ/情報は、機器でローカルに記憶されるデータキャッシュを含むことができ、または、データは、無線/ネットワークインターフェース835を介して、または、機器と機器に関連付けられた別のコンピューティング機器、例えばインターネットなどの分散コンピューティングネットワーク上のサーバコンピュータとの間の有線接続を介して機器からアクセスできる、任意数の記憶媒体に記憶することができる。理解されるように、そのようなデータ/情報には、無線インターフェース835または分散コンピューティングネットワークを介して、機器を通じてアクセスすることができる。同様に、そのようなデータ/情報は、電子メールおよび協同作業データ/情報供給システムを含む周知のデータ/情報転送および記憶手段に従って、記憶および使用のためにコンピューティング機器間で容易に転送することができる。
本明細書に述べられる特定の技術は、1つまたは複数のコンピューティング機器によって実行されるプログラムモジュールなどのコンピュータ実行可能命令の一般的な文脈で説明することができる。一般に、プログラムモジュールには、特定の作業を行うか、または特定の抽象データ型を実装する、ルーチン、プログラム、オブジェクト、コンポーネント、およびデータ構造が含まれる。
実施形態は、コンピュータプロセス、コンピューティングシステム、または、コンピュータプログラム製品やコンピュータ読取り可能媒体などの製造品として実施することができる。本明細書に記載される特定の方法および処理は、1つまたは複数のコンピュータ読取り可能媒体に記憶することが可能なコードおよび/またはデータとして実施することができる。本発明の特定の実施形態は、命令のセットが実行されるとコンピュータシステムに上記の方法論の1つまたは複数を実行させることができるコンピュータシステムの形態の機械を使用することを企図する。特定のコンピュータプログラム製品は、コンピュータシステムにより読み取ることが可能で、コンピュータプロセスを実行するための命令のコンピュータプログラムを符号化した1つまたは複数のコンピュータ読取り可能記憶媒体とすることができる。
コンピュータ読取り可能媒体は、コンピュータシステムからアクセスできる任意の利用可能なコンピュータ読取り可能記憶媒体または通信媒体とすることができる。
通信媒体には、例えばコンピュータ読取り可能命令、データ構造、プログラムモジュール、または他のデータを含んでいる通信信号が1つのシステムから別のシステムに送信されるために使用される媒体が含まれる。通信媒体は、ケーブルや電線(例えば光ファイバー、同軸ケーブル等)などの誘導伝送媒体と、音響、電磁、RF、マイクロ波および赤外線など、エネルギー波を伝搬することができるワイヤレス(非誘導伝送)媒体とを含む。コンピュータ読取り可能命令、データ構造、プログラムモジュール、または他のデータは、例えば、スペクトル拡散技術の一部として用いられるような搬送波や同様の機構などのワイヤレス媒体中に変調データ信号として実施することができる。用語「変調データ信号」とは、信号中に情報を符号化するような形で特性の1つまたは複数を変更または設定した信号を意味する。変調は、アナログ、デジタル、または混合変調技術を用いることができる。通信媒体、特にコンピュータシステムで使用できるデータを含む搬送波や他の伝搬信号は、コンピュータ読取り可能記憶媒体には含まれない。
限定ではなく例示として、コンピュータ読取り可能記憶媒体は、コンピュータ読取り可能命令、データ構造、プログラムモジュール、または他のデータなどの情報を記憶するための方法または技術で実装された、揮発性および不揮発性、取り外し可能および取り外し不能の媒体を含むことができる。例えば、コンピュータ読取り可能記憶媒体には、これらに限定されないが、ランダムアクセスメモリ(RAM、DRAM、SRAM)などの揮発性メモリと、フラッシュメモリ、各種の読み取り専用メモリ(ROM、PROM、EPROM、EEPROM)、磁気および強磁性/強誘電性メモリ(MRAM、FeRAM)、磁気および光学記憶装置(ハードドライブ、磁気テープ、CD、DVD)などの不揮発性メモリと、コンピュータシステムで使用するためにコンピュータ読取り可能な情報/データを記憶することができる現在知られている、または今後開発される他の媒体とが含まれる。「コンピュータ読取り可能記憶媒体」は、搬送波または伝搬信号からは構成されない。
また、本明細書に記載の方法および処理は、ハードウェアモジュールとして実装することもできる。例えば、ハードウェアモジュールは、これらに限定されないが、特定用途集積回路(ASIC)チップ、利用者書き換え可能ゲートアレイ(FPGA)、および現在知られている、または今後開発される他のプログラム可能ロジック装置を含み得る。そのようなハードウェアモジュールが起動されると、ハードウェアモジュールはそのハードウェアモジュール内に含まれる方法および処理を行う。
本明細書における「一実施形態」、「実施形態」、「例示的実施形態」等の言及は、その実施形態に関連して説明される特定の特徴、構造、または特性が本発明の少なくとも1つの実施形態に含まれることを意味する。本明細書の様々な場所でそのような語句が出現する場合、必ずしもそのすべてが同じ実施形態を指すとは限らない。また、本明細書に開示される発明またはその実施形態の要素または限定事項は、任意の要素、または限定事項および/もしくはすべての他の要素または限定事項(個別に、または任意の組み合わせで)、または本明細書に開示される他の発明またはその実施形態と組み合わせることができ、そのようなすべての組み合わせは制限を加えることなく本発明の範囲にあることが企図される。
本明細書に記載される例および実施形態は単に説明を目的とするものであり、それに照らした各種の改変または変更が当業者に示唆され、それらは本願の主旨および範囲に包含されることを理解されたい。
本明細書に記載される例および実施形態は単に説明を目的とするものであり、それに照らした各種の改変または変更が当業者に示唆され、それらは本願の範囲に包含されることを理解されたい。

Claims (10)

  1. 機能の第1のバージョンを文書内で表示する工程と、
    マージサービスを呼び出して、前記文書に行われた修正をマスター文書とマージすることを要求する工程であって、前記マスター文書は前記機能の第2のバージョンをサポートし、前記機能の前記第2のバージョンはクライアント機器でサポートされない、工程と
    を含む方法。
  2. 前記マージサービスを呼び出す工程が、修正要求と、段落識別子、行識別子、文字識別子、および部分識別子の少なくとも1つなどの場所の識別子とを送信する工程を含む、請求項1に記載の方法。
  3. 前記修正要求は、前記マスター文書の前記場所の識別子で識別される場所に、ハイライト、コメントの付加、またはコンテンツの追加、削除、もしくは置き換えなどの1つまたは複数の特定の修正を行うことを求める要求を含み、
    前記1つまたは複数の特定の修正を行うことを求める要求は、任意選択により、前記1つまたは複数の特定の修正の各々に対応するサービスを呼び出すことを含む、請求項2に記載の方法。
  4. 前記マージサービスを呼び出す工程が、前記修正を有する前記文書を提供する工程を含む、請求項1に記載の方法。
  5. エディタに適した第1の形式で編集のために文書を表示する工程と、
    マージサービスを呼び出して、前記文書に行われた修正をマスター文書とマージすることを要求する工程であって、前記マスター文書は前記第1の形式と異なる第2の形式をサポートする、工程と
    を含む方法。
  6. 前記マージサービスを呼び出す工程が、修正要求と、段落識別子、行識別子、文字識別子、または部分識別子などの場所の識別子とを送信する工程を含み、
    前記修正要求は任意選択により、前記マスター文書の前記場所の識別子で識別される場所に、ハイライト、コメントの付加、またはコンテンツの追加、削除、もしくは置き換えなどの1つまたは複数の特定の修正を行うことを求める要求を含む、請求項5に記載の方法。
  7. 前記マージサービスを呼び出す工程が、前記修正を有する前記文書を提供する工程を含む、請求項5に記載の方法。
  8. コンピューティング機器によって実行されると、
    機能の第1のバージョンをサポートする編集済み文書に行われた修正を、前記機能の第2のバージョンをサポートするマスター文書とマージする要求を受け取るのに応答して、前記機能の前記第1のバージョンをサポートする前記編集済み文書に行われた修正を判定し、前記修正を、前記機能の前記第2のバージョンをサポートする前記マスター文書にマージする工程と、
    第1の形式をサポートする編集済み文書に行われた修正を、前記第1の形式と異なる第2の形式をサポートするマスター文書とマージする要求を受け取るのに応答して、前記第1の形式をサポートする前記編集済み文書に行われた修正を判定し、前記修正を、前記第2の形式をサポートする前記マスター文書にマージする工程と
    を含む方法を行う命令が記憶されているコンピュータ読取り可能記憶媒体。
  9. 前記修正をマージする要求が、前記修正を有する前記文書を含み、前記修正を判定する工程が、前記文書の前記形式または機能バージョンを、前記マスター文書の形式または機能バージョンに変換し、変換後の文書と前記マスター文書との差分を判定する工程を含む、請求項8に記載の媒体。
  10. 前記修正をマージする要求が、前記マスター文書の特定の編集を求める要求を含む、請求項8に記載の媒体。
JP2015555394A 2013-01-30 2014-01-28 複数のエディタまたは機能の複数のバージョンを使用した協同作業 Pending JP2016517051A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/753,527 2013-01-30
US13/753,527 US9471556B2 (en) 2013-01-30 2013-01-30 Collaboration using multiple editors or versions of a feature
PCT/US2014/013253 WO2014120624A1 (en) 2013-01-30 2014-01-28 Collaboration using multiple editors or versions of a feature

Publications (2)

Publication Number Publication Date
JP2016517051A true JP2016517051A (ja) 2016-06-09
JP2016517051A5 JP2016517051A5 (ja) 2017-02-09

Family

ID=50231490

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015555394A Pending JP2016517051A (ja) 2013-01-30 2014-01-28 複数のエディタまたは機能の複数のバージョンを使用した協同作業

Country Status (7)

Country Link
US (2) US9471556B2 (ja)
EP (1) EP2951732A1 (ja)
JP (1) JP2016517051A (ja)
KR (1) KR20150115850A (ja)
CN (2) CN105051730B (ja)
TW (1) TWI598750B (ja)
WO (1) WO2014120624A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021163249A (ja) * 2020-03-31 2021-10-11 恒基 磯部 ドキュメントの作成及び/もしくは修正管理における情報の意味的散逸を防ぐ方法、システム、プログラム、及び記録媒体
US11657221B2 (en) 2018-04-27 2023-05-23 Fujifilm Business Innovation Corp. Display editing apparatus, server apparatus, display editing system, and non-transitory computer readable medium storing program

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2587482A3 (en) 2011-10-25 2013-06-26 Samsung Electronics Co., Ltd Method for applying supplementary attribute information to e-book content and mobile device adapted thereto
US9946691B2 (en) 2013-01-30 2018-04-17 Microsoft Technology Licensing, Llc Modifying a document with separately addressable content blocks
KR20140102386A (ko) * 2013-02-13 2014-08-22 삼성전자주식회사 디스플레이장치 및 그 제어방법
JP6123597B2 (ja) * 2013-09-12 2017-05-10 ブラザー工業株式会社 筆記データ処理装置
US9589067B2 (en) * 2013-09-30 2017-03-07 Konica Minolta Laboratory U.S.A., Inc. Converting electronic documents having visible objects
US10091287B2 (en) 2014-04-08 2018-10-02 Dropbox, Inc. Determining presence in an application accessing shared and synchronized content
US10171579B2 (en) 2014-04-08 2019-01-01 Dropbox, Inc. Managing presence among devices accessing shared and synchronized content
US10270871B2 (en) 2014-04-08 2019-04-23 Dropbox, Inc. Browser display of native application presence and interaction data
US10275505B2 (en) * 2014-06-24 2019-04-30 Adobe Inc. In-application conversion of file versions using cloud services
US20160026614A1 (en) * 2014-07-24 2016-01-28 KCura Corporation Methods and apparatus for annotating documents
US10210149B2 (en) * 2014-07-28 2019-02-19 Ca, Inc. Personalized wiki-book annotation
US9846528B2 (en) 2015-03-02 2017-12-19 Dropbox, Inc. Native application collaboration
US20160321226A1 (en) * 2015-05-01 2016-11-03 Microsoft Technology Licensing, Llc Insertion of unsaved content via content channel
US10198411B2 (en) 2015-05-01 2019-02-05 Microsoft Technology Licensing, Llc Storing additional document information through change tracking
US9953018B2 (en) 2015-05-01 2018-04-24 Microsoft Technology Licensing, Llc Transfer of content between documents of different storage types
US10909080B2 (en) * 2015-05-04 2021-02-02 Microsoft Technology Licensing, Llc System and method for implementing shared document edits in real-time
US10803229B2 (en) 2015-07-16 2020-10-13 Thinxtream Technologies Pte. Ltd. Hybrid system and method for data and file conversion across computing devices and platforms
US10455056B2 (en) * 2015-08-21 2019-10-22 Abobe Inc. Cloud-based storage and interchange mechanism for design elements
CN105184469A (zh) * 2015-08-26 2015-12-23 百度在线网络技术(北京)有限公司 用于文档协作编辑的方法和装置
CN105589693A (zh) * 2015-12-18 2016-05-18 国云科技股份有限公司 一种基于react-native的快速实现移动端数据获取的方法
CN105635265A (zh) * 2015-12-24 2016-06-01 国云科技股份有限公司 一种基于react-native快速实现移动端数据上传的方法
US10248933B2 (en) 2015-12-29 2019-04-02 Dropbox, Inc. Content item activity feed for presenting events associated with content items
US10620811B2 (en) * 2015-12-30 2020-04-14 Dropbox, Inc. Native application collaboration
US11226788B2 (en) * 2016-02-01 2022-01-18 Shapedo Ltd. Comparing and merging complex data structures
EP3335395B1 (en) * 2016-02-01 2021-03-24 Google LLC Systems and methods for dynamically restricting the rendering of unauthorized content included in information resources
US10025625B2 (en) * 2016-03-31 2018-07-17 Microsoft Technology Licensing, Llc Batched tasks
US10382502B2 (en) 2016-04-04 2019-08-13 Dropbox, Inc. Change comments for synchronized content items
US10339211B1 (en) * 2016-05-31 2019-07-02 Google Llc Systems and methods for synchronizing comments to an electronic document across platforms
TWI579720B (zh) * 2016-06-24 2017-04-21 Tronice Co Ltd A system and a method for establishing an electronic file and data
KR101774267B1 (ko) * 2016-06-27 2017-09-04 주식회사 한글과컴퓨터 전자 문서의 공동 편집을 위한 협업 지원 장치 및 그 동작 방법
US10607001B2 (en) 2016-06-29 2020-03-31 Hancom Inc. Web-based electronic document service apparatus capable of authenticating document editing and operating method thereof
JP6859768B2 (ja) * 2017-03-15 2021-04-14 富士ゼロックス株式会社 情報処理装置及び情報処理プログラム
TWI663862B (zh) * 2017-08-31 2019-06-21 金儀國際科技股份有限公司 多樣式健身設備相容之通用資料系統
ES2925896T3 (es) * 2017-10-10 2022-10-20 Rakuten Group Inc Sistema para compartir contenido, método para compartir contenido y programa
US10684997B2 (en) 2017-10-24 2020-06-16 Microsoft Technology Licensing, Llc File consistency across file versions maintained by different services
CN118312259A (zh) * 2018-07-16 2024-07-09 谷歌有限责任公司 将生产力应用嵌入第三方平台
AU2019210538A1 (en) * 2018-08-01 2020-02-20 Accenture Global Solutions Limited Digital content management platform
CN110489156A (zh) * 2019-07-09 2019-11-22 北京字节跳动网络技术有限公司 二进制格式的版本控制方法、装置、介质及电子设备
CN110633461B (zh) * 2019-09-10 2024-01-16 北京百度网讯科技有限公司 文档检测处理方法、装置、电子设备和存储介质
CN110795910B (zh) * 2019-10-10 2023-10-17 北京字节跳动网络技术有限公司 一种文本信息处理方法、装置、服务器及存储介质
CN110708235B (zh) * 2019-10-12 2021-07-06 腾讯科技(深圳)有限公司 消息生成方法、装置、存储介质和计算机设备
CN112738550B (zh) * 2019-10-14 2022-10-11 腾讯科技(深圳)有限公司 内容数据的处理方法、装置、电子设备及介质
CN115858685B (zh) * 2023-02-14 2023-05-23 青岛中科方德软件有限公司 需求文件的在线同步方法和装置、终端、可读存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030182450A1 (en) * 2002-03-05 2003-09-25 Ong Herbert T. Generic Infrastructure for converting documents between formats with merge capabilities
US20040010755A1 (en) * 2002-07-09 2004-01-15 Shinichiro Hamada Document editing method, document editing system, server apparatus, and document editing program
JP2004046357A (ja) * 2002-07-09 2004-02-12 Toshiba Corp 文書編集方法、文書編集システム、サーバ装置および文書編集プログラム
JP2004326176A (ja) * 2003-04-21 2004-11-18 Matsushita Electric Works Ltd 情報サーバ、情報サーバ用プログラムおよび情報システム
JP2006163912A (ja) * 2004-12-08 2006-06-22 Dainippon Printing Co Ltd 編集システム、サーバ及びプログラム
JP2006315801A (ja) * 2005-05-12 2006-11-24 Hitachi Omron Terminal Solutions Corp 紙葉類搬送装置
JP2006318501A (ja) * 2002-01-18 2006-11-24 Internet Disclosure Co Ltd 書類作成システム、書類作成方法及び書類作成プログラム
US20090235161A1 (en) * 2008-03-15 2009-09-17 Microsoft Corporation Lossless Web-Based Editor For Complex Documents

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050033811A1 (en) * 2003-08-07 2005-02-10 International Business Machines Corporation Collaborative email
US20050044145A1 (en) * 2003-08-20 2005-02-24 International Business Machines Corporation Collaboration method and system
US20070067336A1 (en) 2005-09-20 2007-03-22 Innodata Isogen, Inc. Electronic publishing system and method for managing publishing requirements in a neutral format
US7917845B2 (en) * 2005-12-22 2011-03-29 Xerox Corporation System and method for managing dynamic document references
WO2009062252A1 (en) 2007-11-15 2009-05-22 Netcat.Biz Pty Limited System and method for transforming documents for publishing electronically
US7954058B2 (en) * 2007-12-14 2011-05-31 Yahoo! Inc. Sharing of content and hop distance over a social network
US20090249224A1 (en) * 2008-03-31 2009-10-01 Microsoft Corporation Simultaneous collaborative review of a document
US8843616B2 (en) 2010-09-10 2014-09-23 Intel Corporation Personal cloud computing with session migration
US20120101980A1 (en) * 2010-10-26 2012-04-26 Microsoft Corporation Synchronizing online document edits
CN102541825B (zh) * 2010-12-23 2014-11-12 北京大学 一种电子文件留痕信息的记录方法和装置
US9367530B2 (en) 2011-01-21 2016-06-14 Jive Software Distributed document co-authoring and processing

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006318501A (ja) * 2002-01-18 2006-11-24 Internet Disclosure Co Ltd 書類作成システム、書類作成方法及び書類作成プログラム
US20030182450A1 (en) * 2002-03-05 2003-09-25 Ong Herbert T. Generic Infrastructure for converting documents between formats with merge capabilities
US20040010755A1 (en) * 2002-07-09 2004-01-15 Shinichiro Hamada Document editing method, document editing system, server apparatus, and document editing program
JP2004046357A (ja) * 2002-07-09 2004-02-12 Toshiba Corp 文書編集方法、文書編集システム、サーバ装置および文書編集プログラム
JP2004326176A (ja) * 2003-04-21 2004-11-18 Matsushita Electric Works Ltd 情報サーバ、情報サーバ用プログラムおよび情報システム
JP2006163912A (ja) * 2004-12-08 2006-06-22 Dainippon Printing Co Ltd 編集システム、サーバ及びプログラム
JP2006315801A (ja) * 2005-05-12 2006-11-24 Hitachi Omron Terminal Solutions Corp 紙葉類搬送装置
US20090235161A1 (en) * 2008-03-15 2009-09-17 Microsoft Corporation Lossless Web-Based Editor For Complex Documents

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11657221B2 (en) 2018-04-27 2023-05-23 Fujifilm Business Innovation Corp. Display editing apparatus, server apparatus, display editing system, and non-transitory computer readable medium storing program
JP2021163249A (ja) * 2020-03-31 2021-10-11 恒基 磯部 ドキュメントの作成及び/もしくは修正管理における情報の意味的散逸を防ぐ方法、システム、プログラム、及び記録媒体

Also Published As

Publication number Publication date
US9471556B2 (en) 2016-10-18
CN105051730A (zh) 2015-11-11
US20170004117A1 (en) 2017-01-05
WO2014120624A1 (en) 2014-08-07
US9996515B2 (en) 2018-06-12
TW201443671A (zh) 2014-11-16
CN110263284A (zh) 2019-09-20
EP2951732A1 (en) 2015-12-09
CN105051730B (zh) 2019-07-05
TWI598750B (zh) 2017-09-11
KR20150115850A (ko) 2015-10-14
US20140215302A1 (en) 2014-07-31
CN110263284B (zh) 2022-12-13

Similar Documents

Publication Publication Date Title
US9996515B2 (en) Collaboration using multiple editors or versions of a feature
US10162805B2 (en) Application programming interfaces for content curation
US10474740B2 (en) Virtual library providing content accessibility irrespective of content format and type
KR101740071B1 (ko) 컴퓨터 네트워크에서 전자 문서의 렌디션을 배치하기 위한 서버 전처리의 이용
EP2849085A1 (en) System and method for rendering document in web browser or mobile device regardless of third-party plug-in software
US20140136945A1 (en) Automatically Rendering Web Or Hybrid Applications Natively
US20150149410A1 (en) Publishing to a content delivery system
KR20160070254A (ko) 리얼타임 캔버스 제공 시스템, 리얼타임 캔버스 제공방법, 그 프로그램 및 이를 기록한 기록매체
US10303752B2 (en) Transferring a web content display from one container to another container while maintaining state

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161226

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161226

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170913

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170922

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171219

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20180703