JP4313432B2 - ファイルのコピーおよび更新 - Google Patents

ファイルのコピーおよび更新 Download PDF

Info

Publication number
JP4313432B2
JP4313432B2 JP2008526287A JP2008526287A JP4313432B2 JP 4313432 B2 JP4313432 B2 JP 4313432B2 JP 2008526287 A JP2008526287 A JP 2008526287A JP 2008526287 A JP2008526287 A JP 2008526287A JP 4313432 B2 JP4313432 B2 JP 4313432B2
Authority
JP
Japan
Prior art keywords
file
copy
update
addresses
address
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.)
Expired - Fee Related
Application number
JP2008526287A
Other languages
English (en)
Other versions
JP2009505244A (ja
JP2009505244A5 (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 JP2009505244A publication Critical patent/JP2009505244A/ja
Publication of JP2009505244A5 publication Critical patent/JP2009505244A5/ja
Application granted granted Critical
Publication of JP4313432B2 publication Critical patent/JP4313432B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/178Techniques for file synchronisation in file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • G06F16/184Distributed file systems implemented as replicated file system
    • G06F16/1844Management specifically adapted to replicated file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6236Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database between heterogeneous systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)
  • Document Processing Apparatus (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は一般的にソフトウェアに関する。
ファイルは完全な、名前付きの情報集合であり、例えばプログラム、プログラムが使用する一連のデータ、またはユーザ生成ドキュメントがある。ファイルは典型的にコンピュータディスクドライブに存在するフォルダに構造化される。ファイルおよびフォルダは一般に階層的な名前空間に編成され、これらファイルおよびフォルダをアクセスおよび管理するための一貫した効率的方法をユーザおよびアプリケーションに提供する。名前空間を単一のツリー構造の階層と見なすことができる。名前空間のファイルにアクセスするために、最初にファイルを特定しなければならない。ファイルを特定する1つの方法はパスを用いることである。パスは、ディスク上のファイルを発見、ソート、および取り出す際にオペレーティングシステムがディレクトリを通ってたどる経路である。例えば、オブジェクトは「MyFile.htm」のような名前を有する場合がある。名前空間の他の場所にその名前を有する他のファイルがある可能性があるので、ファイルを「C./MyDocs/MyFile.htm」または「http://MyDocs/MyFile.htm」のようなアドレスを用いて一意に特定することができる。
アドレス「http://MyDocs/」にあるソースファイル「MyFile.htm」が、「http://HisDocs/」のような別のアドレスにも現れる必要があると仮定する。従来は、ソースファイル「MyFile.htm」をアドレス「http://MyDocs/」からコピーしてアドレス「http://HisDocs/」に貼り付けていた。コピーしたファイルはソースファイルとこれ以上関係を持たない。ソースファイルに変更が加えられた場合には、ソースファイルとコピーしたファイルとの間に継続した関係がないため、コピーしたファイルを更新することができない。求められているものすべてが静的なファイルである場合には、従来のコピーは良く動作する。静的なファイルが望まれておらず、更新可能である動的ファイル、またはコピーしたファイルの適切なユーザに変更を通知可能な動的ファイルが望まれるとき、問題が生ずる。
コピーしたファイルにダイナミズムを与える従来技術の1つはシンボリックリンクを使用することである。シンボリックリンクは、コピーしたファイルのディレクトリエントリの位置を取るが実際には別ディレクトリ内のソースファイルへの参照である、エリアディレクトリエントリである。したがって、シンボリックリンクを用いると、アドレス「http://HisDocs/」にあるコピーしたファイル「MyFile.htm」は、実際はアドレス「http://MyDocs/」にある「MyFile.htm」を参照する。これは、ソースファイルとコピーしたファイルの両方に対するアドレスを含む単一の名前空間が存在する場合に良く動作する。しかしながら、コピーしたファイルを含む名前空間と異なる名前空間にソースファイルが存在しうる場合には、シンボリックリンクの使用はうまくいかない。
本発明によって、ファイルをコピーおよび更新するためのコンピュータ可読媒体、システム、および方法を提供する。本発明のシステム形態には、第1のアドレスにファイルを含む第1のセキュリティポリシーを伴う第1のサーバを備える、ネットワークシステムが含まれる。ネットワークシステムはさらに、第1のアドレスにあるファイルを、第1のセキュリティポリシーを伴うサーバ内部の第2のアドレスにあるファイルのコピーとして再生成するために選択可能なオプションを表示するブラウザを備える。このオプションには、ファイルが変更されたときに自動的にファイルのコピーを更新するオプションが含まれる。ネットワークシステムは、第1のサーバの第1のセキュリティポリシーと異なる第2のセキュリティポリシーを伴う第2のサーバをさらに備える。ネットワークシステムは、第2のサーバ上の別のコピーとして、ファイルの再生成を容易にするコントロールをさらに備える。
本発明の更なる態様によると、本発明のコンピュータ可読媒体の形態には、ファイルのコピーを追跡するため、自身の上に記憶した1つまたは複数のデータ構造を有するコンピュータ可読媒体が含まれる。コンピュータ可読媒体は、ファイルのコピーのアドレスを含む宛先データ構造へのポインタを記憶する宛先フィールドと、ファイルのバージョンを記憶するバージョンフィールドと、ファイルのコピー元である別のファイルのアドレスを含むソースフィールドとを備える。宛先データ構造には、ファイルのコピーのアドレスを含む1つまたは複数のコピー宛先タグが含まれる。アドレスにはウェブアドレスを含む。宛先データ構造には、ファイルが変更されたときにコピーを更新すべきか否かを指定する属性と、コピーを作成したユーザのエイリアスを指定する別の属性とが含まれる。
本発明の更なる態様によると、本発明の方法の形態には、ファイルをコピーするための、コンピュータで実施される方法が含まれる。この方法は、ポインタをファイル上でホバリングさせてコンテキストメニューを起動する動作を指示するイベントを受け取ることを備える。コンテキストメニューは、ファイルのコピーをあるアドレスに送信するオプションと、ファイルのソースに行く別のオプションとを表示する。この方法は、ファイルのコピーをあるアドレスに送信するオプションが選択されたときにフライアウトメニューを表示することをさらに備える。フライアウトメニューは、提示した宛先にコピーすること、コピーをアップグレードすること、および新規の位置を指定することから成るグループから選択したメニュー項目の3つのカテゴリを表示する。
この方法は、新規の位置を指定するメニュー項目が選択されたときに第1のウィンドウを提示することを備える。第1のウィンドウは、アドレスを受け取るよう適合させた第1のテキストボックスと、コピーに対する名前を受け取るよう適合させた第2のテキストボックスと、コピーが更新を受け取るか否かの指示と、更新が利用可能なときに警告を送信するか否かを指示する別の指示とを備える。この方法は、コピーをアップグレードするメニュー項目が選択されたときに第2のウィンドウを提示することを備える。第2のウィンドウはファイルのそれぞれのコピーに対するクリックボックスを特定のアドレスに備える。クリックボックスが選択可能であることは、アップグレードが送信されることを示す。この方法は、ファイルのコピーが再生成される名前空間下の名前空間とアドレスとを列挙する第3のウィンドウを提示することを備える。第3のウィンドウには、コピーが進行すべきであることを示すために選択可能なボタンと、コピーを終了させるために選択可能な別のボタンとが含まれる。この方法は、ファイルのコピーを再生成する試みがなされた名前空間下の名前空間とアドレスとを列挙する第4のウィンドウを提示することを備える。このウィンドウは、それぞれのアドレスでのコピーが無事に終了したかまたは失敗して終了したかを示す。第4のウィンドウには、失敗して終了したコピーに対してコピーを再度試みるべきであることを示すために選択可能なボタンが含まれる。この方法は、ファイルは別のファイルのコピーであることを示すテキストボックスを提示することを備える。このテキストボックスは別のファイルのアドレスをさらに示す。このテキストボックスは、別のファイルのコピーをアップグレードするために選択可能なアップグレードリンクをさらに提示する。この方法は、更新を要求したコピーと更新を要求しなかったコピーとを表示するウィンドウを提示することを備える。
前述の態様および本発明の多数の付随する利点は、付属図面と関連させて考慮し以下の詳細な説明を参照することで、より容易に理解でき、より良く理解できるであろう。
図1はサーバ100−114を含むシステム100を示す。インターネットまたは他のネットワーク上では、これらサーバ100−114は、クライアントからのコマンドに応答するコンピュータまたはプログラムである。例えば、ファイルサーバはデータまたはプログラムファイルのアーカイブを含むことができる。クライアントがファイルに対する要求を送信すると、サーバはファイルのコピーをクライアントに送信する。
サーバ100はアドレス「http://ServerA」にある。サーバ110はアドレス「http://ServerB」にある。サーバ112はアドレス「http://ServerC」にある。サーバ114はアドレス「http://ServerD」にある。SOAP層100A−114Aはそれぞれサーバ100−114に連結される。これらSOAP層100A−114Aは、単純で、カスタマイズ可能なタグベースのプロトコルを使用してウェブ上の構造化および型付けした情報を交換する。ウェブブラウザ104は、ユーザにタグ付けしたドキュメントを参照させ、これらドキュメントに関連するファイルおよびソフトウェアにアクセスさせる1つのソフトウェアである。ウェブブラウザは元々、ワールドワイドウェブ上の閲覧可能なドキュメントをユーザが閲覧できるように開発され、ネットワーク、インターネット、またはローカルハードドライブ上のドキュメントへのアクセスも与えることで、ユーザに対してローカルなリソースとリモートのリソースとの間の違いを曖昧にすることができる。ウェブブラウザ104はハイパーリンクの概念を元に構築されている。ハイパーリンクにより、ユーザはマウスでポイントおよびクリックして、希望するどのような順序でもドキュメントからドキュメントへジャンプすることができる。大部分のウェブブラウザはファイルのダウンロードおよび転送、ドキュメントに埋め込まれたグラフィックの表示、ドキュメントに関連付けられたオーディオおよびビデオファイルの再生、プログラマによりドキュメントに含められたJava(登録商標)アプレットまたはActiveXコントロールのような小型プログラムの実行を行うこともできる。
システム100は、ウェブページに対話性を追加する手段106(「コントロール106」)も含む。コントロール106の多数の適切な実装が可能である。1つの適切な実装にはActiveXコントロールが含まれる。本発明の様々な実施形態はウェブブラウザ104またはコントロール106を使用して、ファイルをあるアドレスから別のアドレスにコピーすることを容易にする。これらのアドレスはサーバ100の名前空間のような1つの名前空間下にあることができるか、またはサーバ100−114下で編成した名前空間のような複数の名前空間下であることができる。コピー動作がサーバ100の名前空間のような単一の名前空間で実施される場合には、ウェブブラウザ104またはコントロール106のいずれかを使用して所望のコピーを作成することができる。コピー動作を実施して1つの名前空間から1つまたは複数の他の名前空間にファイルを再生成する場合には、コントロール106を使用して上記の転送を実施しセキュリティ問題を回避することが望ましい。コントロール106は、異なるセキュリティポリシーを有しうる2つのサーバ間に介在することができる。コントロール106は自身をあるサーバおよび別のサーバに対して認証して、あるサーバ上のファイルと別のサーバ上のファイルのコピーとに対するコピープロセスおよび更新プロセスを容易にすることができる。
GetItem()関数102を、ウェブブラウザ104またはコントロール106により使用して所望のファイルを得る。CopyItems()関数108A−108Cを使用してGetItem()関数102により取得したファイルを他の名前空間に再生成することができる。GetItem()関数102およびCopyItems()関数108A−108Cの両方はSOAP層100A−114Aを使用して、サーバ100−114上の様々な名前空間を読み書きする。ウェブブラウザ104およびコントロール106の両方を、サーバ100とサーバ110−114との間で通信および介在するパーソナルコンピュータのようなクライアント上で実行することが望ましい。
図2Aはユーザインタフェース要素の集まり202を示す。ユーザインタフェース要素の集まり202には、アイコンおよびテキスト要素「紫」を含む別のユーザインタフェース要素の集まり204が含まれる。別のユーザインタフェース要素の集まり208には、アイコンおよびテキスト要素「デスクトップを表示」が含まれる。ユーザインタフェース要素の集まり206にはアイコンおよびテキスト要素「スケジュール」が含まれ、これらからコンテキストメニュー210が起動される。メニュー210にはメニュー項目212「プロパティを閲覧」が含まれ、これを選択してテキスト要素「スケジュール」により名付けたファイルのプロパティを閲覧することができる。メニュー項目214「プロパティを編集」を選択して、テキスト要素「スケジュール」により名付けたファイルのプロパティを編集することができる。テキスト要素「スケジュール」により名付けたファイルを、メニュー項目216「削除」を選択することで削除することができる。テキスト要素「スケジュール」により名付けたファイルが別のファイルのコピーである場合には、テキスト要素「スケジュール」により名付けてコピーされたファイルからソースファイルを発見できるように、メニュー項目220「ソース項目に移動」を選択することができる。
テキスト要素「スケジュール」により名付けたファイル上でコピー動作または更新動作が実施される場合には、メニュー項目218「送信」を選択してメニュー222をフライアウトさせる。メニュー項目224A「ローカルハードドライブ」、メニュー項目224B「電子メール」、メニュー項目224C「リスティング」、メニュー項目224D「知識ストア」、およびメニュー項目224E「マイサイト」は、テキスト要素「スケジュール」により名付けたファイルをユーザがコピーできる位置を提示したものである。メニュー項目226を選択することで、ユーザはテキスト要素「スケジュール」により名付けたファイルのコピーを更新することを指定できる。メニュー項目228「その他の位置」を選択してウィンドウ230(図2B)を前面に表示し、テキスト要素「スケジュール」により名付けたファイルのコピーを記憶するアドレスを指定できる。
図2Bに示すように、ユーザがメニュー項目228「その他の位置」を選択したときにウィンドウ230を提示する。ウィンドウ230にはテキスト要素232「Copy:bebop.doc」が含まれる。このテキスト要素は、「bebop.doc」という名のファイルがパネル234に指定した宛先にコピーされることを示す。パネル234内部で、テキストボックス234Aが現れ、ユーザはファイル「bebop.doc」のコピーが再生成される宛先アドレスを入力することができる。別のテキストボックス234Bにより、ユーザはファイル「bebop.doc」のコピーの名前を変更することができる。パネル236により、ユーザは2つのラジオボタン236A(はい/いいえ)のうちの1つを選択することができる。これらのラジオボタンは、新しいメジャーバージョンが生成されるときにコピーしたファイルを自動的に更新すべきか否かを示す。行236Bはクリックボックスを含む。クリックボックスを選択して、メジャーバージョンが生成されたときに電子メールのような警告を発行することができ、それによりユーザは特定ファイルの1つまたは複数のコピーを更新すべきか否かを決定することができる。自動更新が望ましくなく、警告の受信後に更新を行うべき時点を制御することをユーザが望むとき、警告を適切に使用することができる。例えば、ファイルとそのコピーに責任を有する個人が、更新がそのファイルのコピーすべてに渡る前に更新をレビューすることを望む場合がある。ユーザがコピー動作を終了することを決定する場合には、キャンセルボタン240を選択できる。または、ユーザがコピー動作を進めることを望む場合には、OKボタン238を選択できる。
図2Cは、ユーザがメニュー項目226「複数コピー」を選択するときに起動されるウィンドウ242を示す。ウィンドウ242にはテキスト要素244「Update Copies:bebop.doc」が含まれる。このテキスト要素は、更新動作を指定してファイル「bebop.doc」の様々なコピーの更新を開始できることを示す。パネル246はファイル「bebop.doc」の様々なコピーの宛先アドレスを示す。アドレス246A−246Dはそれらに隣接するクリックボックスを有する。そのクリックボックスをユーザが選択して、特定のコピーが更新されることを示すことができる。
図2Dはウィンドウ248を示す。ウィンドウ248はユーザにコピー動作の進捗を通知する。テキストボックス250は様々な名前空間またはサーバを、「http://office」または「http://windows」のような太字で示す。それぞれの名前空間下のアドレスを次いで指定して、ファイルのコピーが再生成される様々な位置を示す。例えば、アドレス「.../docs/bebop.doc」、「.../teams/wss/expenses/bebop rpt.doc」、「.../specs/specs2/bebop.doc」でファイル「bebop.doc」の再生成が行われる。スクロールバー252は、更なるテキストがスクロールにより利用可能な際に現れ、それによりユーザは更なるテキストを閲覧することができる。ユーザがコピー動作の終了を決定する場合には、キャンセルボタン256を選択できる。または、コピー動作を進める場合には、ユーザはOKボタン254を選択できる。
図2Eはコピー動作の進捗を報告するためのウィンドウ258を示す。テキストボックス260は、様々な名前空間またはサーバでのコピー動作の成功または失敗の状態を示す。例えば、名前空間「http://office」下でアドレス「.../teams/wss/expenses/bebop rpt.doc」にコピーする試みは、書込みアクセスが拒否されたため失敗して終了した。クリックボックス262はユーザにより選択可能で、コピー動作を再試行するための宛先アドレスを示すことができる。名前空間「http://windows」へのコピー動作は無事に終了したことに留意されたい。ユーザが、失敗したコピー動作を再試行したい場合には、「再試行を選択」ボタン264をクリックして、コピー動作プロセスを再開することができる。または、ユーザは完了ボタン266を選択して、ウィンドウ258の表示とコピー動作の状態の表示とを許可することもできる。
図2Fはウィンドウ268を示す。ウィンドウ268には、ファイル「bebop.doc」のコピーにおける様々な結果を示すテキスト要素270「Copy Results:Bebop.doc」が含まれる。名前空間272−276を「http://office」、「http://arsenal」、および「http://bebop」のような太字で表す。チェックボックス272A、272Bを選択して、コピー動作をこれら宛先アドレスで反復および再試行すべきことを示すことができる。行272Cは、宛先アドレス「...docs/orange/bebop.doc」へのコピー動作が無事に終了したことを示す。様々なエラーを報告することができる。そのエラーには例えば、書込みアクセスが拒否されること、ファイルが既にチェックアウトされており利用不可能であること、またはある名前空間またはサーバから別の名前空間または別のサーバにファイルをコピーするためにコントロール106を提示しなければならないこと、がある。
図3Aはユーザインタフェース要素の集まり302を示す。ユーザインタフェース要素の集まり302には、ファイルが別のファイルのコピーであるか否かを示すテキスト要素302Aが含まれる。テキスト要素302Aは、「http://office/personal/jmorrill/docs/bebop.doc」のような、ソースファイルを発見しうるアドレスを示す。さらに、テキスト要素302A内にはハイパーリンク「更新」および「アンリンク」を含み、これらにより、ユーザはコピーしたファイルを更新すること、またはコピーしたファイルとソースファイルとの間の関係をアンリンクすることができる。行302Bは、コピーしたファイルが生成された日付、時間およびコピー生成者を示す。行302Cは、日付、時間、およびコピーしたファイルを最後に修正した個人を示す。
図3Bはウィンドウ304を示す。ウィンドウ304により、ユーザはファイルのコピーを管理することができる。テキスト要素306「Manage Copies:Bebop.doc」は、様々な宛先アドレスにある様々なコピーしたファイルをウィンドウ304により管理できることを示す。パネル308は、オリジナルの「bebop.doc」に変更を加えるときは常にコピーを更新するよう要求した「bebop.doc」のコピーを示す。パネル310は、コピーしたファイルまたは更新を受け取らないよう要求したファイル「bebop.doc」のコピーを列挙する。ハイパーリンク312をユーザが選択して、ファイル「bebop.doc」の更新を、更新を要求した複数のコピーファイルに渡すことができる。
図4Aはメタデータのマトリクス400を示す。メタデータのマトリクス400は、様々なファイルと関連付けた数個のメタデータを含む。ファイルをコピーすると、マトリクス400により記述されるそのメタデータが、所望の宛先でコピーおよび再生成される。ファイルは、ストリームフィールド404が参照するビットストリームで表される。IDフィールド402は、様々なソースファイルおよびコピーファイルと関連付けた識別情報を含む。ストリームフィールド404はファイル自身のバイナリコンテンツである。それぞれのファイルは典型的にタイトルを有し、タイトルはタイトルフィールド406により記述される。また、それぞれのファイルは作成者を有し、作成者は作成者フィールド408により記述される。宛先フィールド410は、カスタマイズ可能なタグベースの言語で適切に形成されるデータ構造に対するポインタである。このデータ構造のスキーマを図4Bにより説明する。バージョンフィールド412はユーザがファイルを上書きすることを防止する。ファイルを更新する度にバージョンフィールド412をチェックして、更新されたバージョンが適切であることを保証する。バージョンフィールド412は、適切なバージョンの更新時に常に増加する整数を適切に含むことができる。第1のユーザがバージョン1のファイルを得ると仮定する。第2のユーザもバージョン1のファイルを得る。第2のユーザはファイルを保存し、したがってバージョンがバージョン2に増加する。ここで第1のユーザがファイルを保存するが、保存しようとしているバージョンがファイルの現在のバージョン(バージョン2)より古いバージョン(バージョン1)であるので、保存操作は不成功に終了する。マトリクス400には、コピーファイルの生成元であるソースファイルのアドレスを含むソースフィールド414も含まれる。任意のアドレッシングスキームが使用できる。適切なアドレッシングスキームの1つにはユニフォームリソースロケータがある。
図4Bはスキーマ416を示す。スキーマ416は、ファイルのコピーが作成された宛先アドレスを含む。スキーマ416を任意の適切な言語から形成することができる。適切な言語の1つには、XMLのようなカスタマイズ可能なタグベースの言語が含まれる。タグ<copy destinations>418は1つまたは複数のタグの開始を示す。この1つまたは複数のタグの開始は、ファイルの様々なコピーの宛先アドレスを指定する1つまたは複数のタグを指定する。タグ<copydest>420には属性URLが含まれる。属性URLは「http://office.bebop.doc」のようなファイルbebop.docのコピーを発見しうるアドレスを含む。タグ420には行422上に定義されるような更新属性が含まれる。更新属性は、自動更新がファイルのコピーに渡るか否かに依存して真または偽のいずれかであることができる。行424は別の属性ModifiedByを記述する。属性ModifiedByは、ファイルのコピーを作成した個人の名前または電子メールアドレスを含む。属性ModifiedByは、ファイルのコピーを誰が作成したかを明らかにする。
図5A−5Eはファイルをコピーする方法500を示す。開始ブロックから、方法500はブロック502に進み、そこでカーソルを、コピーされるファイル上でホバリングして、コンテキストメニューを起動する。次に、ブロック504で送信メニュー項目を選択して、別のメニューを送信メニュー項目からフライアウトさせる。フライアウトメニューは、3つのカテゴリ、すなわち、提示した宛先、複数のコピー、および他の位置、に分類しうるメニュー項目を表示する。ブロック506を参照のこと。次に、方法500は決定ブロック508に進み、提示した宛先メニュー項目が選択されたか否かを判定するテストを実施する。決定ブロック508でのテストに対する回答がいいえの場合には、方法500は継続ターミナル(「ターミナルA1」)に進む。決定ブロック508でのテストに対する回答がはいの場合には、ユニフォームリソースロケータのようなファイルの残りを記憶する。ブロック510を参照のこと。方法500は次いで別の継続ターミナル(「ターミナルA4」)に続く。
ターミナルA1(図5B)から、方法500は決定ブロック512に進み、複数コピーメニュー項目が選択されたか否かを判定するためのテストを実施する。決定ブロック512でのテストに対する回答がいいえの場合には、方法500は別の継続ターミナル(「ターミナルA2」)に続く。または、決定ブロック512でのテストに対する回答がはいの場合には、方法500はブロック514に進み、ユーザインタフェーススクリーンはファイルのコピー位置の隣にチェックボックスを表示する。次に、ブロック516で、更新しなければならないファイルのコピー位置の隣にあるチェックボックスを選択する。更新しなければならないファイルのコピー位置のURLのようなアドレスを記憶する。ブロック518を参照のこと。方法500は次いでターミナルA4に続く。
ターミナルA2(図5C)から、方法500は決定ブロック520に進み、別位置メニュー項目が選択されたか否かを判定するためのテストを実施する。決定ブロック520でのテストに対する回答がいいえの場合には、方法500は別の継続ターミナル(「ターミナルA3」)に続く。決定ブロック520でのテストに対する回答がはいの場合には、方法500はブロック522に進み、ユーザインタフェーススクリーンは宛先アドレスを受け取るためのテキストボックスと、ファイル名を受け取るための別のテキストボックスとを表示する。ユーザインタフェーススクリーンは、コピーした項目が更新されるかどうかを指示するために選択可能なラジオボタン(はい/いいえ)も表示する。ブロック524を参照のこと。ブロック526で、URLのようなファイルのコピーの宛先アドレスと、ファイルのコピーの名前とを記憶する。方法500は次いでターミナルA4に続く。
ターミナルA4(図5D)から、方法500は決定ブロック528に進み、コピーを容易にするためのコントロールをインストールするか否かを判定するためのテストを実施する。決定ブロック528でのテストに対する回答がはいの場合には、方法500は別の継続ターミナル(「ターミナルA5」)に続く。決定ブロック528でのテストに対する回答がいいえの場合には、宛先アドレスがソースファイルと同じサーバまたは名前空間上にあるか否かを判定するための別のテストを決定ブロック530で実施する。決定ブロック530でのテストに対する回答がいいえの場合には、方法500はファイルをコピーするためのコントロールがないことを示すエラーを表示する。ブロック532を参照のこと。方法500は次いで実行を終了する。決定ブロック530でのテストに対する回答がはいの場合には、方法は別の継続ターミナル(「ターミナルA6」)に続く。
ターミナルA5(図5E)から、方法500はブロック534に進み、コントロールはGetItem関数を起動して、コピーされるファイルが存在するアドレス(例えば、ソースURL)を指定する。ブロック536で、GetItem関数はファイルのバイナリストリームを取得し、ファイルのプロパティを返す。コントロールはCopyItems関数を起動して、ソースURL、バイナリストリーム、プロパティ、およびコピーされる宛先アドレスのリストを指定する。ブロック538を参照のこと。次に、ブロック540で、CopyItems関数はファイルを宛先アドレスにコピーする。ファイルに関連付けた宛先のメタデータをリフレッシュしてそのコピーのアドレスと、更新を行うべきか否かを含める。ブロック542を参照のこと。ファイルのコピーに関連付けたソースメタデータを修正して、ファイルのコピー元のアドレスを含める。ブロック544を参照のこと。方法500は次いで実行を終了する。ターミナルA6(図5E)から、方法500はブロック546に進み、ブロック534−544をコントロールではなくブラウザにより実行して、CopyIntoItemsLocal関数をCopyItems関数の代わりに起動する。ファイルが、そのファイルを含む同一の名前空間にコピーされるときにブロック546を実行する。上記の場合には、ビットを送信することは非効率的であるので、代わりに参照を用いることで、バイナリストリーム全体を複製してそれを別の位置で再生成する必要なく、ファイルのバイナリストリームを得る。
本発明の好適な実施形態を図示および説明したが、本発明の精神および範囲から逸脱することなく様々な変更をそれらの中で加えうることは理解されよう。
ファイルをコピーし、ソースファイルとコピーしたファイルとの間の関係を生成する例示的なシステムを示すブロック図である。 コピー動作を指定する例示的ユーザインタフェースを示す絵図である。 ソースファイルのコピーを置く宛先およびコピーしたファイルが更新可能か否かをユーザが指定する例示的ユーザインタフェースを示す絵図である。 更新されるコピーしたファイルを示す例示的ユーザインタフェースを示す絵図である。 コピーの進捗を示す例示的ユーザインタフェースを示す絵図である。 コピーエラーを報告する例示的ユーザインタフェースを示す絵図である。 コピーエラーを報告する例示的ユーザインタフェースを示す絵図である。 コピーしたファイルのコピー元であるソースファイルを示す例示的ユーザインタフェースを示す絵図である。 コピーしたファイルを管理する例示的ユーザインタフェースを示す絵図である。 コピーしたファイルまたはソースファイルに関する情報を記憶するメタデータのマトリクスを示す絵図である。 コピーしたファイルのアドレスを記憶するスキーマを示すテキスト図である。 ファイルをコピーする方法を示すプロセス図である。 ファイルをコピーする方法を示すプロセス図である。 ファイルをコピーする方法を示すプロセス図である。 ファイルをコピーする方法を示すプロセス図である。 ファイルをコピーする方法を示すプロセス図である。

Claims (6)

  1. ファイルのコピーをアップデートするために、コンピュータが実施する方法であって、
    ポインタをファイル上でホバリングさせて、前記ファイルのコピーをあるアドレスに送信するためのメニューオプションを表示するコンテキストメニューを起動する動作を指し示す1つまたは複数のイベントを受信するステップと、
    前記メニューオプションを選択する動作を指し示す1つまたは複数のイベントを受信することに応答して、宛先に前記ファイルをコピーするための第1のメニューアイテムと複数の既存のファイルのコピーをアップデートするための第2のメニューアイテムとを含むフライアウトメニューを表示するステップと、
    前記第1のメニューアイテムを選択する動作を指し示す1つまたは複数のイベントを受信することに応答して、前記ファイルの新たなコピーを格納するための新たなアドレスを受信するように適合された第1のテキストボックスと、前記ファイルの新たなコピーの名前を受信するように適合された第2のテキストボックスと、前記ファイルがアップデートを受信するか否かを選択するためのアイテムと、前記ファイルのアップデートが可能な場合にユーザーに対してアラートを送信するか否かを選択するためのアイテムとを含むウィンドウを表示するステップと、
    前記ファイルの新たなコピーを前記新たなアドレスにて格納するステップと、
    前記ファイルのコピーがアップデートを受信するか否かのインジケーションに関連して前記新たなアドレスを格納するステップと、
    前記第2のメニューアイテムを選択する動作を指し示す1つまたは複数のイベントを受信することに応答して、前記複数の既存のファイルのコピーに対応する複数のアドレスを含むウィンドウを表示するステップと、
    前記複数のアドレスの少なくとも二つを選択する動作を指し示す1つまたは複数のイベントを受信するステップと、
    前記複数のアドレスの少なくとも二つに対応する前記ファイルのコピーをアップデートするステップと
    を含むことを特徴とする方法。
  2. 前記複数のアドレスの少なくとも二つに対応する名前空間(namespace)を含むウィンドウを表示するステップをさらに含むことを特徴とする請求項1に記載の方法。
  3. 前記複数の既存のファイルのコピーに対応する複数のアドレスを含む前記ウィンドウは、アップデートを実行するために選択可能なボタンと、アップデートを終了するために選択可能な他のボタンとをさらに含むことを特徴とする請求項2に記載の方法。
  4. 前記複数のアドレスの少なくとも二つに対応する前記ファイルのコピーをアップデートしようとする1つまたは複数の試み(attempt)がトライされた、前記複数のアドレスの少なくとも二つに対応する名前空間を含むウィンドウを表示するステップをさらに含み、
    前記名前空間を含むウィンドウは、前記1つまたは複数の試みが成功裏に終わるか、あるいは失敗に終わるかを指し示し、
    前記名前空間を含むウィンドウは、アップデートが再度試みられることを指し示すために選択可能なボタンをさらに含むことを特徴とする請求項1に記載の方法。
  5. 前記複数の既存のファイルのコピーに対応する複数のアドレスを含む前記ウィンドウは、個々のコピーのそれぞれがアップデートを受信するか否かのインジケーションをさらに含むことを特徴とする請求項1に記載の方法。
  6. 前記複数の既存のファイルのコピーに対応する複数のアドレスを含む前記ウィンドウは、それぞれが選択可能である、前記複数のアドレスに対応する複数のクリック用のボックスをさらに含むことを特徴とする請求項1に記載の方法。
JP2008526287A 2005-08-12 2006-08-11 ファイルのコピーおよび更新 Expired - Fee Related JP4313432B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/202,999 US7490300B2 (en) 2005-08-12 2005-08-12 Copying and updating files
PCT/US2006/031684 WO2007022103A2 (en) 2005-08-12 2006-08-11 Copying and updating files

Publications (3)

Publication Number Publication Date
JP2009505244A JP2009505244A (ja) 2009-02-05
JP2009505244A5 JP2009505244A5 (ja) 2009-05-14
JP4313432B2 true JP4313432B2 (ja) 2009-08-12

Family

ID=37743811

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008526287A Expired - Fee Related JP4313432B2 (ja) 2005-08-12 2006-08-11 ファイルのコピーおよび更新

Country Status (6)

Country Link
US (2) US7490300B2 (ja)
EP (3) EP2444904A3 (ja)
JP (1) JP4313432B2 (ja)
KR (1) KR100922640B1 (ja)
CN (1) CN101243430B (ja)
WO (1) WO2007022103A2 (ja)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9207717B2 (en) 2010-10-01 2015-12-08 Z124 Dragging an application to a screen using the application manager
US7490300B2 (en) * 2005-08-12 2009-02-10 Microsoft Corporation Copying and updating files
US20110203720A1 (en) * 2006-07-28 2011-08-25 E. I. Du Pont De Nemours And Company Process for making fiber-on-end materials
US8266706B2 (en) * 2007-01-26 2012-09-11 Microsoft Corporation Cryptographically controlling access to documents
US8887297B2 (en) * 2007-07-13 2014-11-11 Microsoft Corporation Creating and validating cryptographically secured documents
US8887298B2 (en) * 2007-07-13 2014-11-11 Microsoft Corporation Updating and validating documents secured cryptographically
US9524525B2 (en) * 2008-04-30 2016-12-20 Oracle International Corporation Method, system, and graphical user interface for presenting an interactive hierarchy and indicating entry of information therein
US8775465B2 (en) * 2008-07-30 2014-07-08 Yahoo! Inc. Automatic updating of content included in research documents
US10983665B2 (en) * 2008-08-01 2021-04-20 Samsung Electronics Co., Ltd. Electronic apparatus and method for implementing user interface
US8539353B2 (en) * 2010-03-30 2013-09-17 Cisco Technology, Inc. Tabs for managing content
JP2011242943A (ja) * 2010-05-17 2011-12-01 Canon Inc 情報処理装置および制御方法およびプログラム
US9990253B1 (en) * 2011-03-31 2018-06-05 EMC IP Holding Company LLC System and method for recovering file systems without a replica
US9026499B1 (en) 2011-03-31 2015-05-05 Emc Corporation System and method for recovering file systems by restoring partitions
US9049176B2 (en) 2011-06-22 2015-06-02 Dropbox, Inc. File sharing via link generation
US8842057B2 (en) * 2011-09-27 2014-09-23 Z124 Detail on triggers: transitional states
CN103678319B (zh) * 2012-09-03 2019-03-26 腾讯科技(深圳)有限公司 资源文件更新方法、装置和系统及服务器
US9632771B2 (en) * 2012-12-13 2017-04-25 Microsoft Technology Licensing, Llc Association of metadata with source code and applications and services premised thereon
CN103034587B (zh) * 2012-12-19 2015-09-30 华为技术有限公司 一种复制文件的方法及装置
US20140229578A1 (en) * 2013-02-11 2014-08-14 Dropbox, Inc. Asynchronously communicating a link to a shared collection
JP2016046598A (ja) * 2014-08-20 2016-04-04 キヤノン株式会社 通信装置、通信方法、及び、プログラム
CN105656980A (zh) * 2014-12-08 2016-06-08 深圳云之家网络有限公司 一种文件处理的方法、装置及系统
CN107679142A (zh) * 2017-09-25 2018-02-09 广东欧珀移动通信有限公司 一种文件拷贝方法、服务器、网络设备及存储介质
US10528342B2 (en) * 2017-10-16 2020-01-07 Western Digital Technologies, Inc. Function tracking for source code files
US10922375B2 (en) * 2019-02-04 2021-02-16 Citrix Systems, Inc. File portability across SaaS applications
US11561672B1 (en) * 2020-07-24 2023-01-24 Tableau Software, LLC Compatibility-based feature management for data prep applications
US11599506B1 (en) * 2021-10-28 2023-03-07 EMC IP Holding Company LLC Source namespace and file copying

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5339392A (en) 1989-07-27 1994-08-16 Risberg Jeffrey S Apparatus and method for creation of a user definable video displayed document showing changes in real time data
US5664133A (en) * 1993-12-13 1997-09-02 Microsoft Corporation Context sensitive menu system/menu behavior
US5845293A (en) * 1994-08-08 1998-12-01 Microsoft Corporation Method and system of associating, synchronizing and reconciling computer files in an operating system
US5917491A (en) * 1997-08-29 1999-06-29 Netscape Communications Corporation Page proxy
US6728712B1 (en) * 1997-11-25 2004-04-27 International Business Machines Corporation System for updating internet address changes
US7065784B2 (en) * 1999-07-26 2006-06-20 Microsoft Corporation Systems and methods for integrating access control with a namespace
US6941510B1 (en) 2000-06-06 2005-09-06 Groove Networks, Inc. Method and apparatus for efficient management of XML documents
US6553391B1 (en) * 2000-06-08 2003-04-22 International Business Machines Corporation System and method for replicating external files and database metadata pertaining thereto
US6826729B1 (en) * 2001-06-29 2004-11-30 Microsoft Corporation Gallery user interface controls
DE60319229T2 (de) * 2002-07-11 2008-07-10 International Business Machines Corp. Verfahren und system zur erweiterung der api eines dateisystems
US20040068523A1 (en) 2002-10-07 2004-04-08 Keith Robert Olan Method and system for full asynchronous master-to-master file synchronization
CN100440204C (zh) * 2002-11-28 2008-12-03 国际商业机器公司 用于将文件超链接的方法和系统
US7739233B1 (en) * 2003-02-14 2010-06-15 Google Inc. Systems and methods for replicating data
JP2004266568A (ja) 2003-02-28 2004-09-24 Nec Corp 名前解決サーバおよびパケット転送装置
US7660833B2 (en) * 2003-07-10 2010-02-09 Microsoft Corporation Granular control over the authority of replicated information via fencing and unfencing
US6973299B2 (en) * 2003-08-01 2005-12-06 Microsoft Corporation Unified contact list
US8527896B2 (en) * 2003-10-23 2013-09-03 Microsoft Corporation User interface menu with hovering icons
US20050165912A1 (en) * 2004-01-23 2005-07-28 Colbeck Scott J. GUI-based grid computing data management apparatus method and system
US20060095470A1 (en) * 2004-11-04 2006-05-04 Cochran Robert A Managing a file in a network environment
US7490300B2 (en) * 2005-08-12 2009-02-10 Microsoft Corporation Copying and updating files

Also Published As

Publication number Publication date
WO2007022103A3 (en) 2007-05-03
KR20080039393A (ko) 2008-05-07
US7490300B2 (en) 2009-02-10
CN101243430B (zh) 2010-09-29
EP2450802A3 (en) 2014-12-03
US20090006420A1 (en) 2009-01-01
JP2009505244A (ja) 2009-02-05
EP2450802A2 (en) 2012-05-09
WO2007022103A2 (en) 2007-02-22
EP1913495A2 (en) 2008-04-23
EP2444904A3 (en) 2014-12-03
US8219525B2 (en) 2012-07-10
KR100922640B1 (ko) 2009-10-19
US20070038688A1 (en) 2007-02-15
CN101243430A (zh) 2008-08-13
EP2444904A2 (en) 2012-04-25
EP1913495A4 (en) 2009-11-18

Similar Documents

Publication Publication Date Title
JP4313432B2 (ja) ファイルのコピーおよび更新
TWI450107B (zh) 用於網路資料使用平臺之方法及電腦可讀儲存媒體
RU2464639C2 (ru) Управление ссылками на web-страницы, использующие структурированные данные
JP5813499B2 (ja) ドキュメントの同時共同レビュー
JP7150830B2 (ja) クライアントデバイスによって実施されるコンテンツ管理システムのワークフロー機能
KR101344101B1 (ko) 서버 파일을 서버 파일의 로컬 저장된 카피에 매핑하기위한 방법 및 컴퓨터 판독가능 매체
US6684227B2 (en) Electronic content store
US8719691B2 (en) Document providing system and computer-readable storage medium
CN100414547C (zh) 用于访问文件系统快照的方法和文件系统
US10387535B2 (en) System and method for selectively displaying web page elements
US20060212792A1 (en) Synchronously publishing a web page and corresponding web page resources
US8583658B2 (en) Creating and managing reference elements of deployable web archive files
US20080168340A1 (en) Method of Efficiently Managing File Location Awareness for Client Applications
US7100115B1 (en) Method and apparatus for providing computer-based help
JP7424986B2 (ja) ファイルブラウザインタフェース内に表示される集約された詳細
JP4952119B2 (ja) ファイルサーバを用いたコンテンツ管理システムと方法およびプログラム
US20230094648A1 (en) Backup feature provided by bidirectional synchronized content management system
WO2004072864A1 (en) Dynamically configurable file display system

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090318

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090318

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20090318

TRDD Decision of grant or rejection written
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20090413

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090417

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090514

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120522

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130522

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130522

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

LAPS Cancellation because of no payment of annual fees