CN100561473C - 用于同步对共享对象的多个用户修订的方法和系统 - Google Patents
用于同步对共享对象的多个用户修订的方法和系统 Download PDFInfo
- Publication number
- CN100561473C CN100561473C CNB2005101316657A CN200510131665A CN100561473C CN 100561473 C CN100561473 C CN 100561473C CN B2005101316657 A CNB2005101316657 A CN B2005101316657A CN 200510131665 A CN200510131665 A CN 200510131665A CN 100561473 C CN100561473 C CN 100561473C
- Authority
- CN
- China
- Prior art keywords
- revision
- shared object
- current version
- user
- version
- 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
Links
- 230000001360 synchronised effect Effects 0.000 title claims abstract description 47
- 238000000034 method Methods 0.000 title claims description 34
- 230000005540 biological transmission Effects 0.000 abstract description 8
- 230000008569 process Effects 0.000 description 21
- 238000004891 communication Methods 0.000 description 20
- 230000007704 transition Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000007373 indentation Methods 0.000 description 1
- 239000004615 ingredient Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000004513 sizing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F16/273—Asynchronous replication or reconciliation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99944—Object-oriented database structure
- Y10S707/99945—Object-oriented database structure processing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
Abstract
多个不同的用户可通过数种不同传输同时访问、修订和更新同一共享对象。对共享对象的修订被自动地同步,以使所有用户可查看对该共享对象的修订。冲突的修订被调解并合并到共享对象的当前版本中。当共享对象的当前版本不能从存储中获得时,客户机可向该存储请求共享对象的当前版本。当存储接收到共享对象的当前版本时,可将共享对象的当前版本与客户机同步。
Description
背景技术
文件共享应用程序允许数个不同用户共同分享信息。许多用户可同时访问同一文件。所有这些用户都可查看该文件,但仅第一个访问该文件的用户具有编辑的特权。后续访问该文件的用户被阻塞而不得编辑该文件。对很大的共享文件而言,向除了一个用户以外的其它所有用户供应文件的只读版本是不方便的。这在用户想要离线地在共享文件上工作时尤为严重。例如,如果第一个访问共享文件的用户出差在外,则其它用户可能会在很长的一段时间被锁在该文件之外。
发明内容
本发明针对于一种用于同步对共享对象的多个用户修订的方法和系统。对象可以是诸如文件等任何能够被共享的实体。许多不同的用户可通过数种不同的传输来同时访问、修订和更新同一共享对象。当一个用户可访问共享对象时,其它用户不会被阻塞而不得访问和修订该共享对象。任何经授权的用户可同时修订共享对象。不要求用户在进行修订的同时被连接到共享对象。可离线地对该对象的本地高速缓存的版本进行修订。然后当该共享对象可用时,这些修订与其它用户修订同步。对共享对象的修订被自动同步,以使所有用户可查看对该共享对象的修订。不同的用户可在不同的时间修订共享对象,从而共享对象的多个版本可共存。共享对象的最新版本是包括对其它经授权用户可用的最近同步的修订的版本。
当两个用户修订共享对象的同一个部分时,可能会发生冲突。如果修订的部分与另一个用户对同一部分的修订冲突,则它不能与共享对象同步。共享对象中具有冲突修订的部分被显示在冲突页面上。冲突页面和共享文件的最新版本的对应的主页面类似,不同之处在于共享对象中具有冲突的修订的部分被加亮并显示以代替已同步的修订。冲突指示器被显示在共享对象的主页面上。当冲突指示器被选中时,在主页面旁边显示冲突页面。同时向用户呈现主页面的已同步状态和对应的冲突页面两者。用户可调解冲突的修订并将其合并到主页面中。被标识为不相关的冲突的修订可被清除。
在本发明的一个方面,对共享对象的修订被接收。确定该修订是否与该共享对象的主页面上的已同步修订冲突。当确定要将修订与共享对象的当前版本相关联,并且当确定修订不与已同步版本冲突时,修订与该共享对象同步。
附图说明
图1示出可以根据本发明的一个示例性实施例使用的计算设备。
图2根据本发明示出用于同步对共享对象的多个用户修订的系统的框图。
图3根据本发明示出指示共享对象的不同部分的链接节点的分层结构图。
图4根据本发明示出共享对象的主页面和相关联的冲突页面。
图5根据本发明示出用于同步对共享对象的多个用户修订的系统的框图。
图6根据本发明示出一操作流程图,该操作流程图示出用于同步对共享对象的多个用户修订的过程。
图7根据本发明示出一操作流程图,该操作流程图示出用于在共享对象中调解与合并来自多个用户的冲突的修订的过程。
图8根据本发明示出一操作流程图,该操作流程图示出用于同步对共享对象的多个用户修订的过程。
图9根据本发明示出一操作流程图,该操作流程图示出用于从异步通信模式无缝地过渡到同步通信模式的过程。
图10根据本发明示出一操作流程图,该操作流程图示出用于从同步通信模式无缝地过渡到异步通信模式的过程。
具体实施方式
本发明针对一种用于同步对共享对象的多个用户修订的方法和系统。对象可以是诸如文件等任何能够被共享的实体。许多不同的用户可通过数种不同的传输来同时访问、修订和更新同一共享对象。当一个用户可访问共享对象时,其它用户不会被阻塞而不得访问和修订该共享对象。任何经授权的用户可同时修订共享对象。不要求用户在进行修订的同时被连接到共享对象。可离线地对该对象的本地高速缓存的版本进行修订。然后当该共享对象可用时,这些修订与其它用户修订同步。对共享对象的修订被自动同步,以使所有用户可查看对该共享对象的修订。不同的用户可在不同的时间修订共享对象,从而共享对象的多个版本可共存。共享对象的最新版本是包括对其它经授权用户可用的最近期的已同步的修订的版本。
当两个用户修订共享对象的同一个部分时,可能会发生冲突。如果修订的部分与另一个用户对同一部分的修订冲突,则它不能与共享对象同步。共享对象中具有冲突修订的部分被显示在冲突页面上。冲突页面和共享文件的最新版本的对应的主页面类似,不同之处在于共享对象中具有冲突的修订的部分被加亮并显示以代替已同步的修订。冲突指示器被显示在共享对象的主页面上。当冲突指示器被选中时,在主页面旁边显示冲突页面。同时向用户呈现主页面的已同步状态和对应的冲突页面两者。用户可调解冲突的修订并将其合并到主页面中。被标识为不相关的冲突的修订可被清除。
示例性操作环境
参考图1,一种用于实现本发明的示例性系统包括诸如计算设备100等计算设备。计算设备100可被配置成客户机、服务器、移动设备、或在基于网络的合作系统中与数据交互的任何其它计算设备。在最基本的配置中,计算设备100通常包括至少一个处理单元102和系统存储器104。取决于计算设备的确切配置和类型,系统存储器104可以是易失性的(诸如RAM等)、非易失性的(诸如ROM、闪存等)、或这两者的某种组合。系统存储器104通常包括操作系统105、一个或多个应用程序106,还可包括程序数据107。在以下详细描述的修订同步模块108在应用程序106内实现。
计算设备100还可具有其它特征或功能。例如,计算设备100还可包括其它数据存储设备(可移动和/或不可移动的),诸如磁盘、光盘或磁带等。这些其它存储在图1中由可移动存储109和不可移动存储110示出。计算机存储介质可包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据等任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。系统存储器104、可移动存储109和不可移动存储110都是计算机存储介质的示例。计算机存储介质包括,但不限于,RAM、ROM、EEPROM、闪存或其它存储器技术,CD-ROM、数字多功能盘(DVD)或其它光存储,磁带盒、磁带、磁盘存储或其它磁存储设备、或可用来存储所需信息并可由计算设备100访问的任何其它介质。任何此类计算机存储介质都可以是设备100的部件。计算设备100还可具有诸如键盘、鼠标、笔、语音输入设备、触摸输入设备等输入设备112。还可包括诸如显示器、扬声器、打印机等输出设备114。
计算设备100还包含允许该设备诸如通过网络等与其它计算设备118通信的通信连接116。网络包括局域网和广域网,以及其它大规模网络,包括但不限于,内联网和外联网。通信连接116是通信介质的一个示例。通信介质通常可具体化为诸如载波或其它传输介质等已调制数据信号中的计算机可读指令、数据结构、程序模块或其它数据,并包括任何信息传递介质。术语“已调制数据信号”是指以在信号中将信息编码的方式设置或改变其一个或多个特征的信号。作为示例,而非限制,通信介质包括诸如有线网络或直接连线连接等有线介质,以及诸如声学、RF、红外及其它无线介质等无线介质。如本文中所使用的,术语计算机可读介质包括存储介质和通信介质两者。
同步对共享文件的多个用户修订
图2示出一种用于同步对共享对象的多个用户修订的系统的框图。对象可以是诸如文件等任何能够被共享的实体。该系统包括客户机200、210、220、230,诸如交换服务器240等具有文件存储能力的电子邮件服务器,web服务器250,对等网络260以及电子邮件附件270。客户机200、210被耦合到交换服务器240。客户机210、220被耦合到web服务器250。客户机210、220还通过对等网络260被耦合在一起。电子邮件附件270被安排为由web服务器250向客户机230或从客户机230传输。客户机200、210都与同一用户(用户1)相关联。例如,客户机200由用户1在家中访问,而客户机210由用户1在工作中访问。客户机220、230与不同的用户(分别与用户2和用户3)相关联。客户机200、210、220、230每一个包括高速缓存202、212、222、232,用于本地存储共享对象。对等网络260包括虚拟服务器262,用于在客户机210、220之间传递共享对象。修订文件242和共享对象252、264、272分别被存储在交换服务器240、web服务器250、虚拟服务器262和电子邮件附件270中。修订文件242和共享对象252、264、272可与对等组标识符相关联。对等组标识符标识被授权可访问和修订特定共享对象的那些用户(即,对等组)。在一个实施例中,对等组标识符是可被解析到任何web客户机的、指向对等组的统一资源定位器(URL)。共享对象252、264分别与清单文件254、266相关联。
许多不同的用户可通过数种不同传输来同时访问、编辑和更新同一共享对象。例如,在客户机210处的用户1和在客户机220处的用户2可从web服务器250访问共享对象252。共享对象被本地存储在对应的高速缓存212、222中。用户1和用户2都可修订共享对象252。这些修订与web服务器250上的共享对象252同步,从而用户1可看到用户2所作的修订,而用户2也可看到用户1所作的修订。
在另一个示例中,用户3可通过电子邮件附件270与用户2共享对共享对象272的访问。用户2可修订本地存储的共享对象,并向用户3发送附带了整个共享对象或仅附带了对共享对象的修订的电子邮件消息。用户2所作的修订与web服务器250上的共享对象252同步。当电子邮件在客户机230处接收时,用户2所作的修订自动地与存储在高速缓存232中的本地共享对象同步。用户3随即可对共享对象272进行其它修订,并用作为电子邮件附件270包括的整个共享对象或仅对共享对象的修订来回复用户2。用户3所作的修订与web服务器250上的共享对象252同步。客户机220处的共享对象也被更新以包括用户3所作的修订。
在另一个示例中,用户1可在家中在客户机200上访问共享对象,或在工作中通过交换服务器240在客户机210上访问共享对象。当对外部服务器的访问不被允许或不可用时,常常使用交换服务器。修订文件242包括对共享对象的修订。修订文件242可通过通用串行总线(USB)驱动器、电子邮件应用程序、或允许修订被往返传送的某种其它机制在客户机200、210之间传送。修订被应用于客户机200、210,以使存储在高速缓存202、212中的本地共享对象可被更新。
交换服务器240可对其能够处理的文件的大小有所限制(例如,最多2兆字节)。用户1可将包括对共享对象的任何修订的修订文件242从客户机200上传到交换服务器240。当修订文件242超过交换服务器240的大小限制时,可按分段将修订文件242从客户机200传送到客户机210。文件协议允许用于传送分段的请求/满足过程。在一个实施例中,交换服务器240与电子邮件应用程序相关联。由另一用户(用户2)所作的修订可通过web服务器250或对等网络260从客户机220传送到客户机210,然后通过发给用户1的电子邮件账户传送到客户机200。在另一个实施例中,客户机200周期性地轮询交换服务器240来获得当前的修订文件。
在另一个示例中,当从客户机210、220到web服务器250的连接丢失时,或当用户1和用户2宁愿实时地直接并同步地通信时,可在客户机210、220之间建立对等网络260。用户1和用户2可能会宁愿通过对等网络260通信,因为通过web服务器250的对象共享可能会导致在客户机210处作出修订的时间和该修订在客户机220处可用的时间之间的滞后。滞后可能是繁忙的服务器通信量的结果。对等网络260允许对共享对象的修订在客户机210、220之间直接传送,而不是通过web服务器250。在一个实施例中,对等网络260是传输控制协议/网际协议(TCP/IP)直接网络。TCP/IP直接网络允许修订被快速存储和检索。
当web服务器250连接被中断时,客户机210、220的每一个都可将共享对象252的一个副本本地存储在高速缓存212、222中。与共享对象252相关联的对等组标识符指示用户1和用户2都在同时访问共享对象。当两个用户都访问所建立的对等网络时(例如,两个用户在同一飞机上都用膝上计算机工作),他们就知道彼此的存在。对等网络260允许用户1和用户2同时访问对虚拟服务器262上的共享对象264的修订,以及实现其它修订。这些修订在客户机210、220上被即时复制,以使用户1和用户2可在共享对象264上积极地合作。当用户1和用户2不再位于同一附近地区时(例如,每个用户都返回他们各自的办公室),或当用户1和用户2不再想要实时通信时,对等网络260可被禁用。然后共享对象252可从web服务器250访问。访问对等网络260上的共享对象修订与访问web服务器250上的共享对象修订之间的过渡是自动且无缝的。
客户机210、220既可从web服务器250,也可从对等网络260接收当前修订。对共享对象所作的每个修订都与一全局唯一标识符(GUID)和一时间戳相关联。时间戳标识作出该修订的时间。客户机210可修改web服务器250上的共享对象252。客户机220通过将与高速缓存的对象相关联的GUID及时间戳和与web服务器250上的共享对象252相关联的GUID及时间戳进行比较,来确定高速缓存222中的共享对象的本地版本是否是当前的。如果当前版本未被本地存储,则尚未在已高速缓存的对象中实现的最新修订从web服务器250加载到客户机220,并与本地文件同步。由此,无需在每次共享对象的本地版本被更新时将完整的共享对象加载到客户机220。
在一个实施例中,客户机220可从与修订相关联的GUID和时间戳来确定相同的修订可从对等网络260中获得。但是,这不导致任何动作,因为客户机220已经实现了修改。在另一个实施例中,客户机220可从与修订相关联的GUID和时间戳确定相同的修改不能从对等网络260中获得。由此,客户机220向对等网络260提交修订,以使连接到对等网络260的其它用户可与共享对象的当前版本同步。
客户机220可从对等网络260接收另一版本。高速缓存222中的共享对象被更新。客户机222使用与修订相关联的GUID和时间戳来确定共享对象的当前状态在web服务器250上是否也可用。如果web服务器250上的共享对象252未与共享文档的当前状态同步,则客户机220向web服务器250提交最新修订,以使共享对象252可被更新。
当客户机在通过物理服务器连接到系统的同时修订共享对象时可发生异步通信。服务器限制可能使共享对象的同步从用户实现修订的时候起被延迟。在一个实施例中,客户机可在不连接到系统时修订共享对象的本地高速缓存的版本。当客户机通过服务器重新连接到系统时,客户机所作的任何修订可与共享对象同步。客户机可在本地访问、同步和异步通信之间无缝过渡,从而用户不知道通信模式已改变。用户可改变位置,且任何可用的数据共享传输(例如,对等网络、服务器)被自动标识。由此,用户可通过各种不同机制来访问共享对象并与其它经授权的用户合作。
每个共享对象都与一清单文件相关联。清单文件标识共享对象的其它版本和实例在系统内存储的位置。在一个实施例中,清单文件是可扩展标记语言(XML)文件。在另一个实施例中,清单文件标识多个共享对象。在又一个实施例中,清单文件可与能在客户机之间共享的任何对象相关联。例如,清单文件可与整个共享对象,或共享对象的任何部分(例如,内容容器、章、页、大纲、等等)相关联。
清单文件可存储在系统内的任何地方。如图中所示,清单文件254与共享对象252相关联。共享对象252和清单文件254都存储在web服务器250上。在另一个实施例中,清单文件存储在共享对象中。在又一个实施例中,清单文件存储在现用目录中。在再一个实施例中,清单文件存储在系统内的多个位置。清单文件存储在唯一位置标识符所标识的位置。唯一位置标识符可标识文件服务器、服务器的共享区域、web服务器、或对等组。
共享对象可从高速缓存来本地访问,或者通过服务器或通过对等网络来访问。客户机从对应的共享对象中的唯一位置标识符所标识的位置检索清单文件。在一个实施例中,客户机可本地存储清单文件以供将来引用。清单文件指示共享对象的任何其它版本和实例在系统内的位置(例如,在副存储或对等组中)。如果共享对象的另一个版本/实例存储在对等组中,则清单文件可包括对应的对等组标识符。
在一个实施例中,客户机220访问web服务器250上的共享对象252。客户机220被自动连接到同样访问共享对象252的其它客户机(例如,对等组)。客户机220检索与共享对象252相关联的清单文件254。清单文件254标识共享对象252的不同版本和实例的位置。由此,当对等组中的任何客户机访问清单文件254所标识的共享对象252的一个版本/实例时,客户机220可与对等组中的任何其它客户机建立对等网络。客户机220随即可从web服务器250断开,并继续访问对等网络上的共享对象252。
在另一个实施例中,客户机210可从对等网络260访问共享对象264。客户机210检索与共享对象264相关联的清单文件266。客户机210可连接到服务器并确定哪些客户机也连接到该服务器。当对等网络260不可用时,可通过服务器访问所连接的那些客户机。共享对象264(或252)和相关联的清单文件266(或254)允许客户机210(或客户机220)在异步和同步通信模式之间自动且无缝地过渡。
当一用户可访问共享对象时,并不会阻塞其它用户访问和修订该共享对象。任何经授权的用户可同时修订共享对象。在一个实施例中,可发生阻塞的短暂情况来确保修订事务的完整性。例如,用户可在从服务器断开的同时大范围修订共享文档。当用户重新连接到服务器时,可短暂地阻塞其它客户机访问共享对象,直至在共享对象中实现了该用户的所有修订。
图3示出指示共享对象的不同部分的链接节点的分层结构图。在一个实施例中,共享对象是在数个用户之间共享的笔记本。笔记本节点300象征整个共享对象。文件夹节点310被包括在笔记本节点300内。章节点320被包括在文件夹节点310内。页节点330、335被包括在章节点310内。表节点340、墨水节点342、大纲节点344和图像节点346被包括在页节点330内。大纲元素节点350被包括在大纲节点344内。文本节点360被包括在大纲元素节点350内。可在内容容器内将不同的节点组合在一起。例如,大纲节点344、大纲元素节点350和文本节点360可被组合在一起成为内容容器R0。内容容器R0被分配一个GUID(例如,GUID-0)。该GUID唯一地标识内容容器R0。
内容容器包括共享对象的内容(例如,单词、句子、段落、页、表、图片、手写笔迹、统一资源定位器、或共享对象中所包括的数据的任意组合)。内容容器为被组合在一起的对象内容提供维度。例如,内容容器可对应于线条、段落、页、或特定的页元素(例如,仅特定页上的表)。
共享对象存储图的初始版本。然后可对个别的内容容器执行特定的操作。例如,用户可修订内容容器的数据。对共享对象的修订可被标识为内容容器的状态。共享对象存储图的修订后的内容容器。使用GUID和时间戳将内容容器的当前状态与先前状态进行比较,从而可确定内容容器是否已被修订。
例如,两个不同的用户的每一个都可访问共享文档并修改内容容器R0。一个用户可通过删除文本节点360(如修订R1中所示)来修订内容容器R0。修订R1被存储在共享对象中。修订R1被分配一GUID(例如,GUID-1)来唯一地标识修订后的容器,并被分配标识修订R1被写到共享对象的时间和日期的时间戳。另一个用户可通过向大纲元素节点350添加文本节点380(如修订R2中所示)来修订内容容器R0。修订R2被存储在共享对象中。修订R2被分配时间戳和GUID(例如,GUID-2)来唯一地标识修订后的内容容器。
不同的用户可在不同的时间修订共享对象,从而共享对象的多个版本可能共存。但是,共享对象只有一个最新版本。在一个实施例中,共享对象的最新版本是包括与共享对象同步的最近期的修订并已对其它经授权的用户可用的那个版本。
例如,用户可通过向大纲节点344添加大纲元素节点370(如修订R3中所示)来修订共享对象被标识为修订R1的内容容器。修订R3被存储在共享对象中。修订R3也被分配时间戳和GUID(例如,GUID-3)来唯一地标识修订后的内容容器。修订R3是修订R1的扩展。由此,修订R1是用户所知悉的共享对象的最新版本(例如,本地存储的版本)。共享对象被检查,以确定共享对象的最新版本是否仍然是修订R1。在一个实施例中,可通过比较不同的内容容器的时间戳和GUID来确定共享对象的最新版本。如果共享对象的最新版本与比修订R1更近期的时间戳相关联,则另一个用户(例如,创建修订R2的用户)已在随后修改了同一内容容器。
如果自修订R1与共享对象同步以来,已有另一个用户修改了同一内容容器,则作为对修订R1的扩展的任何修订(例如,修订R3)只可在任何随后的修订都与共享对象同步且任何冲突的修订都被解决和合并以后才可与共享对象同步。例如,修订R2在修订R1后与共享对象同步。由此,共享对象的最新版本包括修订R2。在修订R3与共享对象同步以前,将修订R3与修订R2进行比较以确定是否有任何修订相冲突。比较是必需的,因为修订R3是修订R1的扩展,而后者不再与共享对象的最新版本相关联。修订R3被确定不与修订R2冲突,因为大纲元素节点370可被添加到大纲节点344而不会干扰修订R2。
在一个实施例中,共享对象是通过将内容容器从共享对象内的一个位置移到另一个位置来修订的。例如,可将表节点340从页节点330移到页节点335。确定表节点340已被移动,但新的位置无法被确定。在表节点340的原始位置创建代理节点。当表节点340的新位置被确定时,在表节点340的新位置处实现代理节点。如果表节点340在新位置被确定以前被删除,则将代理节点丢弃。
不同的用户可同时编辑共享对象。通常,用户修订共享对象的不同内容容器。由此,每个用户的修订无需进一步处理即可与共享对象同步。当两个用户编辑共享对象的同一内容容器时(例如,同一表值、同一句子)可能发生冲突。不同的用户修订之间的冲突可能异步地产生。例如,用户可能在不连接到服务器的时候修订共享对象被本地高速缓存的版本。当用户重新连接到服务器时,这些修订与共享对象同步。但是,这些修订可能与已与共享对象同步的其它修订冲突。
例如,修订R4是修订R3的扩展。修订R4从大纲节点344删除大纲元素节点350。确定了共享对象的最新版本包括修订R2。修订R2和修订R4之间的比较标识冲突,因为大纲元素节点350存在于修订R2中,但在修订R4中已被删除。
在内容容器的主版本和该内容容器的两个有分歧的版本之间执行三方合并来解决冲突。例如,合并内容容器R0(即,主版本)、修订R2和修订R4以建立共享对象的当前版本。内容容器的主版本可以是最后与服务器上的共享对象同步的那个版本。主版本包括非冲突的修订。
通过遵循由一种合并算法所建立的一组规则,冲突的内容容器被调解并合并到共享对象中。该合并算法确定哪些修订已与共享对象同步。例如,可根据优先级将不同的用户分级,从而一用户的修订优先于所有其它用户(即,主编辑)。当较低优先级的用户试图修订共享对象中已被较高优先级的用户修订过的内容容器时,该用户将被通知这些修订(即,次编辑)将不会被与共享对象同步。由此,主编辑被显示在共享对象的主页面上,而任何次编辑被标记为未与共享对象同步。
在另一个示例中,对服务器上的共享对象所作的修订优先于客户机上本地所作的修订。共享对象的服务器副本被认为是主版本,因为许多不同的用户可能已访问并修订了服务器上的共享对象。只有一个用户访问并修订了本地存储的版本。未与共享对象同步的修订后的内容容器(例如,次编辑)被标识为冲突的。冲突的内容容器通过被存储在与共享对象对应的主页面相关联的冲突页面上来保持。
图4示出共享对象的主页面和相关联的冲突页面。主页面400包括诸如内容容器410、420等非冲突的修订。任何未合并的冲突的修订在主页面400上由冲突指示器标识。在一个实施例中,冲突指示器是下拉菜单430。下拉菜单430的第一个条目可以是用户所生成的最近期的冲突。下拉菜单430的条目可包括用户名和对应的时间戳。下拉菜单430中的另一个条目可包括用户所生成的但未调解的其它冲突页面。下拉菜单430中的其它条目可对应于其它用户所生成冲突页面。从下拉菜单430选择一个条目将显示对应的冲突页面,其中冲突的修订被加亮,以将用户的注意力吸引到未被合并到共享对象的主版本中的那些修订。由此,用户或可调解并将冲突与主页面400合并,或可决定这些冲突是不相关的。
在另一个实施例中,冲突指示器是选项卡。主页面可与选项卡440相关联。对应的冲突页面也可与和选项卡440不同的选项卡相关联。例如,冲突页面选项卡可相对于选项卡440缩进,或在选项卡440以下层叠。包括与特定用户相关联的未被合并的冲突的冲突页面可由与其它选项卡不同的选项卡标识,以使用户的注意力被吸引到该用户所生成的冲突页面上。该用户随即可选择选项卡来导航到对应的冲突页面。
可在共享对象对应的主页面旁边显示所选择的冲突页面,以使用户可鉴于已合并的修订来调解并合并任何冲突的修订。冲突页面450与主页面400相关联。冲突页面450和主页面400相似,不同之处在于任何冲突的内容容器都被加亮以指示该冲突尚未被解决。例如,内容容器460用加亮的背景来呈现,以将用户的注意力吸引到未被合并的冲突上。在用户修订内容容器460中的数据以前,内容容器460可能已被删除并与共享对象同步,从而造成冲突。该用户可选择内容容器460以在主页面400上合并修订。
在一个实施例中,冲突页面与特定用户相关联。由此,当一个以上用户对页面作出不能被合并的修订时,可令一个以上的冲突页面与主页面相关联。为被授权可访问共享对象的所有用户存储所有冲突的修订。可假定访问冲突页面的用户最关注该用户所生成的冲突,从而该用户可调解那些冲突。例如,当用户1选择冲突指示器时,向用户1呈现其对应的冲突页面。用户还可查看与另一个用户相关联的冲突页面。例如,用户1可选择选项卡470以导航到与用户2相关联的冲突页面。
随着时间的推移,可能积累起与共享对象的一个主页面相关联的多个冲突页面。在该时间段期间,用户可能已将数个修订与共享对象位于服务器上的主版本同步,而同时忽略了任何对应的冲突页面。由此,可假定用户未调解的较早的冲突页面不再相关。在一个实施例中,在预定的时间段过去以后,任何被标识为不相关的冲突页面可被清除,而用户在该时间段期间已同步了该页面的修订。例如,与任何主页面相关联的三个最近期的冲突页面被保留,而任何其它相关联的冲突页面在自创建起一个月后被清除。
在一个实施例中,冲突页面不是在实时通信期间创建的,因为与异步通信期间相比,冲突可能更频繁地发生。相反,用户可合作地修订同一内容容器。任何冲突都可被立即解决,因为所有用户都可迅速确定他们的修订是否已被实现。或者,通知一用户另一用户正在修订特定的内容容器。可鼓励该用户在另一个用户的修订完成以前修订不同的内容容器。
图5示出用于同步对共享对象的多个用户修订的系统的框图。该系统包括客户机500、510、540、550和服务器520、530。客户机500被耦合到服务器520、530。客户机510被耦合到服务器520。客户机540、550被耦合到服务器530。客户机540包括存储542和子存储544。服务器520包括存储522和子存储524、526。服务器530包括存储532。存储532包括副存储534、536。
存储522、532,子存储524、526和副存储534、536可存储与共享对象相关联的修订。存储522、532,子存储524、526和副存储534、536是分层结构。例如,存储522可与整个共享笔记本文档相关联。子存储524可与共享笔记本文档的一章相关联。子存储526可与共享笔记本文档的一页相关联。在一个实施例中,仅顶层共享对象的最近期版本被包括在存储522中。存储532可存储整个顶层共享对象。副存储534、536与共享对象的各部分相关联。例如,副存储534可与共享对象的一章相关联,而副存储536可与共享对象不同的一章相关联。
应用程序无需共享对象的特定内容容器的当前版本即可将共享对象从服务器520或服务器530加载到客户机500。例如,客户机500向存储522请求共享对象。该共享对象的最近期的可用版本在客户机500处存在。共享对象最近期的可用版本可能不对应于共享对象的当前版本,因为最近期版本的数据在对应的子存储526中不可用。子存储526被赋予请求标签,以指示客户机500要求最近期的修订数据以更新共享对象。子存储526还可被赋予时间戳,它标识客户机500从子存储526请求修订数据的时间和日期。子存储还可被分配GUID,它标识请求该数据的客户机(例如,客户机500)。请求标签、时间戳和GUID被用来在另一个客户机访问子存储526时通知客户机500。例如,客户机510可用最新修订的数据访问子存储526。由此,客户机500被通知共享对象的最新修订数据在子存储526中可用。
客户机500可以是用户的家庭计算机,而客户机540可以是用户的工作计算机。服务器530可以是在客户机500、540之间传送修订文件的交换服务器。修订文件可被用来更新存储在客户机500、550上的共享对象。在一个实施例中,客户机500被限制不得处理大于预定大小(例如,2兆字节)的文件。例如,客户机500可包括限制可被接收的电子邮件消息的大小的电子邮件应用程序。存储542包括与顶层共享对象相关联的修订。子存储544包括与共享对象的内容容器相关联的修订。
客户机540可轮询服务器530以确定是否有另一个客户机提交了数据修订请求。当被请求的数据修订的最新版本在存储542或子存储544中可用时,客户机540可满足该请求。如果修订文件的大小小于客户机500可处理的限制,则客户机540可向客户机500传送整个所请求的修订。如果修订文件的大小大于该限制,则文件可被分成小于该限制的较小的文件。或者,可通过删除先前的请求来减少修订文件的大小。然后这些较小的文件通过服务器530从客户机540发送到客户机500。
对修订数据的多个请求可在服务器上等待。在一个实施例中,这些请求可从不同的客户机(例如,客户机500、550)作出。每个请求的客户机可与一不同的文件大小限制相关联。例如,客户机500被限于小于2兆字节的文件,而客户机550可处理多达20兆字节的文件。因此,当修订文件大于2兆字节时,不能通过一个传输事务来同时满足两个请求。在一个实施例中,将一优先级位与每个请求的客户机相关联,以建立满足请求的次序。
这些请求是通过将修订文件与客户机500、550同步来满足的。取决于修订文件的大小,可在一个修订事务中或通过一系列多个事务来将修订文件与客户机500、550同步。当整个修订被同步时,每个客户机500、550都确定请求已被满足。客户机540可清除所请求的数据,因为请求已被满足。稍后客户机540可轮询服务器530以确定是否有任何其它请求等待满足。
图6示出一操作流程图,该图示出用于同步对共享对象的多个用户修订的过程。该过程在开始框开始,在此多个用户被授权可同时访问并修订共享对象(即,对等组)。对象可以是诸如文件等能够被共享的任何实体。对等组可由对等组标识符来标识。共享对象的不同版本由对应的GUID和时间戳来标识。时间戳标识共享对象最后与修订同步的时间。
移到框600,用户修订共享对象。可在服务器上,在本地高速缓存中,或在对等网络上修订共享对象。在一个实施例中,修订被存储为修订文件。前进至框610,将修订与GUID和时间戳相关联。时间戳标识用户修订共享对象的时间。
前进至框620,共享对象的最新版本被定位。共享对象的最新版本是包括与共享对象同步的最近期的修订并对其它经授权的用户可用的那个版本。共享对象的最新版本可从与共享对象的不同版本相关联的时间戳和GUID确定。
转移至判定框630,确定是否存在任何冲突的修订。当不同用户修订同一内容容器时,修订可能会冲突。如果存在冲突的修订,则不能将修订与共享对象同步。如果存在冲突的修订,则处理前进至框640,在此冲突的修订被调解并合并(如参考图7所讨论的)。如果不存在任何冲突的修订,则处理前进至框650,在此将修订与共享对象同步,以使其它用户可查看该修订。然后处理在结束框终止。
图7示出一操作流程图,该图示出用于调解并合并对共享对象的多个用户修订的过程。该过程在开始框开始,在此一个以上用户修订了共享对象中的同一内容容器。当将修订后的内容容器中的一个与共享对象同步时产生冲突,从而对该内容容器的任何其它修订都无法被同步。
移到框700,冲突的修订被显示在冲突页面上。冲突页面和对应的主页面相似,不同之处在于冲突的修订被加亮并显示以代替同步后的修订以外。
前进至框710,冲突指示器被显示在共享对象的主页面上。该冲突指示器可以是下拉菜单、选项卡、或通知用户主页面有冲突页面可用的任何其它机制。与特定用户相关联的冲突页所用的冲突指示器可与和其它用户相关联的冲突页面所用的冲突指示器不同,以使当前用户可迅速标识当前用户所生成的冲突页面。
前进至框720,当选择冲突指示器时,在主页面旁边显示冲突页面。向用户同时呈现主页面的同步后状态和对应的冲突页面两者。
转移至框730,用户调解冲突的修订并将其合并到主页面中。在一个实施例中,用户可选择内容容器,以使该内容容器与主页面合并。在另一个实施例中,用户可直接将修订实现到主页面上。在又一个实施例中,用户可将冲突的修订标识为不相关的。
前进至框740,被标识为不相关的冲突的修订被清除。在一个实施例中,冲突的修订可由用户标识为不相关的。在另一个实施例中,冲突的修订可被自动标识为不相关的。例如,用户可能已将数个修订与位于服务器上的共享对象主版本同步,而同时忽略任何对应的冲突页面。用户未调解的较早的冲突页面在预定时间段过去以后被标识为不相关的。然后处理在结束框终止。
图8示出一操作流程图,该图示出用于同步对共享对象的多个用户修订的过程。该过程在开始框开始,在此共享对象的不同版本被存储在整个系统上的不同位置。移至框800,共享对象从存储被下载到客户机。
前进至判定框810,确定该共享对象是否是共享对象的当前版本。如果该共享对象是共享对象的当前版本,则处理在结束框终止。如果该共享对象不是共享对象的当前版本,则处理前进至框820。该共享对象可能不是当前版本,因为对共享对象的内容容器最近期的修订不能从该存储中获得。
前进至框820,向该存储赋予请求标记和客户机信息,以指示该客户机要求最近期的修订以更新共享对象。客户机信息可包括标识请求的客户机的GUID,以及标识客户机向存储请求共享对象的当前版本的时间的时间戳。
转移至框830,在存储处接收共享对象的当前版本。当另一个客户机用最近期的修订数据访问该存储时,该存储可接收共享对象的当前版本。请求的客户机被通知共享对象的当前版本已被该存储接收。前进至框840,将共享对象的当前版本与请求的客户机同步。处理随即在结束框终止。
图9示出一操作流程图,该图示出用于从异步通信模式无缝地过渡到同步通信模式的过程。该过程在开始框开始,在此建立标识经授权可访问共享对象的用户的对等组。
移至框900,客户机访问服务器上的共享对象。该客户机被自动连接到同样访问该共享对象的其它客户机(即,对等组)。令共享对象与清单文件相关联。共享对象包括唯一位置标识符,它标识对应的清单文件存储在系统内的位置。
前进至框910,从由唯一位置标识符所标识的位置检索清单文件。清单文件标识共享对象的其它版本和实例存储在系统内的位置。清单文件包括存储共享对象的一个版本的对等组的对等组标识符。
前进至框920,当对等组中的任何其它客户机访问由清单文件所标识的共享对象的一个版本或实例时建立对等网络。由此,客户机可从服务器断开,并继续访问对等网络上的共享文件。处理随即在结束框终止。
图10示出一操作流程图,该图示出用于从同步通信模式无缝地过渡到异步通信模式的过程。该过程在开始框开始,在此在至少两个经授权可访问共享对象的用户之间建立对等网络。
移至框1000,客户机访问对等网络上的共享对象。共享对象与清单文件相关联。共享对象包括唯一位置标识符,它标识对应的清单文件存储在系统中的位置。
前进至框1010,从由唯一位置标识符所标识的位置检索与共享对象相关联的清单文件。清单文件标识共享对象的其它版本和实例存储在系统内的位置。前进至框1020,客户机连接到服务器。客户机确定其它哪些客户机也连接到该服务器。跳至框1030,客户机标识经授权可从对等网络访问共享对象的其它客户机。前进至框1040,当对等网络不可用时,客户机连接到一经授权的客户机。处理随即在结束框终止。
以上说明书、实例和数据提供了制造和使用本发明的组成部分的完整描述。因为可作出本发明的许多实施例而不会偏离本发明的精神和范围,所以本发明驻留在所附权利要求书中。
Claims (13)
1.一种用于同步对共享对象的多个用户修订的计算机实现的方法,包括:
生成清单文件,其中所述清单文件与唯一的位置标识符相关联,所述位置标识符识别所述清单文件所存储的位置,而共享对象包括与对应的清单文件相关联的唯一的位置标识符,其中,所述清单文件包括共享对象的多个版本的每个版本的网络位置;
接收对具有多个版本的所述共享对象的修订,其中所述修订与一个修订时间戳和修订标识符相关联;
通过从唯一的位置标识符访问所述清单文件,获得所述共享对象的当前版本,其中通过对所述清单文件中包括的网络位置进行访问来定位所述多个版本的每个版本,其中当前版本是包括与共享对象同步的最近期的修订并对其它经授权的用户可用的最近版本,并且通过比较来自所述多个版本的每个版本的版本时间戳和版本标识符来获得当前版本;
确定所述修订是否与所述共享对象的主页面上的已同步修订冲突;
当确定所述修订与所述共享对象的当前版本相关联,且当确定所述修订不与已同步修订冲突时,将所述修订与所述共享对象同步;以及
更新所述当前版本以包括所述修订时间戳和修订标识符。
2.如权利要求1所述的计算机实现的方法,其特征在于,还包括:
当确定所述修订与已同步修订冲突时,在与所述主页面相关联的冲突页面上显示所述修订;
在所述主页面上显示冲突指示器,其中,所述冲突指示器指示所述主页面与所述冲突页面相关联;以及
将所述修订合并到所述共享对象中。
3.如权利要求2所述的计算机实现的方法,其特征在于,显示所述修订还包括:
在所述冲突页面上的一个位置处显示所述修订,所述位置对应于在所述主页面上显示所述已同步修订处的位置;以及
在所述冲突页面上加亮所述修订。
4.如权利要求2所述的计算机实现的方法,其特征在于,还包括在所述冲突指示器被选中时显示所述冲突页面和所述相关联的主页面。
5.如权利要求1所述的计算机实现的方法,其特征在于,还包括:
确定冲突的修订是否是不相关的;以及
清除被确定为不相关的所述修订。
6.如权利要求1所述的计算机实现的方法,其特征在于,还包括:
在存储处接收客户机对所述共享对象的当前版本的请求;
在所述存储处接收所述共享对象的当前版本;以及
将所述共享对象的当前版本与所述客户机同步。
7.如权利要求6所述的计算机实现的方法,其特征在于,所述接收客户机的请求还包括向所述存储赋予请求标记和客户机信息。
8.如权利要求6所述的计算机实现的方法,其特征在于,接收所述共享对象的当前版本还包括在另一个客户机用所述共享对象的当前版本访问所述存储时接收所述共享对象的当前版本。
9.一种用于同步对共享对象的多个用户修订的系统,包括:
用于生成清单文件的装置,其中所述清单文件与唯一的位置标识符相关联,所述位置标识符识别所述清单文件所存储的位置,而共享对象包括与对应的清单文件相关联的唯一的位置标识符,其中,所述清单文件包括共享对象的多个版本的每个版本的网络位置;
用于接收对具有多个版本的所述共享对象的修订的装置,其中所述修订与一个修订时间戳和修订标识符相关联;
用于通过从唯一的位置标识符访问所述清单文件,获得所述共享对象的当前版本的装置,其中通过对所述清单文件中包括的网络位置进行访问来定位所述多个版本的每个版本,其中当前版本是包括与共享对象同步的最近期的修订并对其它经授权的用户可用的最近版本,并且通过比较来自所述多个版本的每个版本的版本时间戳和版本标识符来获得当前版本;
用于确定所述修订是否与所述共享对象的主页面上的已同步修订冲突的装置;
用于在确定所述修订与所述共享对象的当前版本相关联,且当确定所述修订不与已同步修订冲突时,将所述修订与所述共享对象同步的装置;以及
用于更新所述当前版本以包括所述修订时间戳和修订标识符的装置。
10.如权利要求9所述的系统,其特征在于,还包括:
用于在存储处接收客户机对所述共享对象的当前版本的请求的装置;
用于在所述存储处接收所述共享对象的当前版本的装置;以及
用于将所述共享对象的当前版本与所述客户机同步的装置。
11.如权利要求10所述的系统,其特征在于,用于接收客户机的请求的装置还包括用于向所述存储赋予请求标记和客户机信息的装置。
12.如权利要求10所述的系统,其特征在于,用于接收所述共享对象的当前版本的装置还包括用于在另一个客户机用所述共享对象的当前版本访问所述存储时接收所述共享对象的当前版本的装置。
13.如权利要求9所述的系统,其特征在于,还包括用于确定所述修订是否与所述共享对象的当前版本相关联的装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/035,698 | 2005-01-14 | ||
US11/035,698 US7593943B2 (en) | 2005-01-14 | 2005-01-14 | Method and system for synchronizing multiple user revisions to a shared object |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1804836A CN1804836A (zh) | 2006-07-19 |
CN100561473C true CN100561473C (zh) | 2009-11-18 |
Family
ID=35520225
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005101316657A Expired - Fee Related CN100561473C (zh) | 2005-01-14 | 2005-12-14 | 用于同步对共享对象的多个用户修订的方法和系统 |
Country Status (17)
Country | Link |
---|---|
US (1) | US7593943B2 (zh) |
EP (1) | EP1681652B1 (zh) |
JP (1) | JP4874640B2 (zh) |
KR (1) | KR101153052B1 (zh) |
CN (1) | CN100561473C (zh) |
AU (1) | AU2005234676B2 (zh) |
BR (1) | BRPI0505187A (zh) |
CA (1) | CA2528070C (zh) |
IL (1) | IL172571A (zh) |
MX (1) | MXPA05013617A (zh) |
MY (1) | MY144510A (zh) |
NO (1) | NO336905B1 (zh) |
NZ (1) | NZ544151A (zh) |
RU (1) | RU2404450C2 (zh) |
SG (1) | SG124349A1 (zh) |
TW (1) | TWI368171B (zh) |
ZA (1) | ZA200510084B (zh) |
Families Citing this family (150)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7617278B1 (en) | 2003-01-29 | 2009-11-10 | Adobe Systems Incorporated | Client controllable server-side playlists |
US7246356B1 (en) | 2003-01-29 | 2007-07-17 | Adobe Systems Incorporated | Method and system for facilitating comunications between an interactive multimedia client and an interactive multimedia communication server |
US7272658B1 (en) | 2003-02-13 | 2007-09-18 | Adobe Systems Incorporated | Real-time priority-based media communication |
US7287256B1 (en) | 2003-03-28 | 2007-10-23 | Adobe Systems Incorporated | Shared persistent objects |
US7953794B2 (en) * | 2005-01-14 | 2011-05-31 | Microsoft Corporation | Method and system for transitioning between synchronous and asynchronous communication modes |
JP4696721B2 (ja) * | 2005-06-27 | 2011-06-08 | 富士ゼロックス株式会社 | 文書管理サーバ、文書管理システム |
US7925701B2 (en) * | 2005-07-25 | 2011-04-12 | Sony Ericsson Mobile Communications Ab | Mobile communication terminal supporting information sharing |
US8161159B1 (en) | 2005-10-31 | 2012-04-17 | Adobe Systems Incorporated | Network configuration with smart edge servers |
US7945615B1 (en) * | 2005-10-31 | 2011-05-17 | Adobe Systems Incorporated | Distributed shared persistent objects |
JP2007122609A (ja) * | 2005-10-31 | 2007-05-17 | Ricoh Co Ltd | 構造化文書、コンテンツ配信サーバ装置及びコンテンツ配信システム |
JP4876734B2 (ja) * | 2006-06-22 | 2012-02-15 | 富士ゼロックス株式会社 | 文書利用管理システム及び方法、文書管理サーバ及びそのプログラム |
JP4816281B2 (ja) * | 2006-06-22 | 2011-11-16 | 富士ゼロックス株式会社 | 文書利用管理システム、文書管理サーバ及びそのプログラム |
US8090944B2 (en) * | 2006-07-05 | 2012-01-03 | Rockstar Bidco Lp | Method and apparatus for authenticating users of an emergency communication network |
US20080103977A1 (en) * | 2006-10-31 | 2008-05-01 | Microsoft Corporation | Digital rights management for distributed devices |
US20080104206A1 (en) * | 2006-10-31 | 2008-05-01 | Microsoft Corporation | Efficient knowledge representation in data synchronization systems |
US7966426B2 (en) * | 2006-11-14 | 2011-06-21 | Microsoft Corporation | Offline synchronization capability for client application |
JP5003131B2 (ja) * | 2006-12-04 | 2012-08-15 | 富士ゼロックス株式会社 | 文書提供システム及び情報提供プログラム |
US20080140732A1 (en) * | 2006-12-11 | 2008-06-12 | Bentley System, Inc. | Method and system for sharing file based data |
US7836429B2 (en) | 2006-12-19 | 2010-11-16 | International Business Machines Corporation | Data synchronization mechanism for change-request-management repository interoperation |
JP4305510B2 (ja) * | 2006-12-28 | 2009-07-29 | 富士ゼロックス株式会社 | 情報処理システム、情報処理装置及びプログラム |
JP4943166B2 (ja) * | 2007-01-05 | 2012-05-30 | 株式会社ants | Webブラウザ上に表示されたオブジェクトをWebブラウザから取り出したように見せる方法及びプログラム |
US7954008B2 (en) * | 2007-01-15 | 2011-05-31 | Microsoft Corporation | Objective assessment of application crashes from a customer environment |
JP5082460B2 (ja) * | 2007-01-19 | 2012-11-28 | 富士ゼロックス株式会社 | 情報処理装置及びプログラム及び情報処理システム |
JP5023715B2 (ja) * | 2007-01-25 | 2012-09-12 | 富士ゼロックス株式会社 | 情報処理システム、情報処理装置及びプログラム |
US7620659B2 (en) * | 2007-02-09 | 2009-11-17 | Microsoft Corporation | Efficient knowledge representation in data synchronization systems |
US8131670B2 (en) * | 2007-02-22 | 2012-03-06 | Microsoft Corporation | Techniques to cross-synchronize data |
US20080222508A1 (en) * | 2007-03-08 | 2008-09-11 | Huy Nguyen | Method and system for comparing spreadsheets |
US7949938B2 (en) * | 2007-03-20 | 2011-05-24 | International Business Machines Corporation | Comparing and merging multiple documents |
JP2008257317A (ja) * | 2007-04-02 | 2008-10-23 | Fuji Xerox Co Ltd | 情報処理装置、情報処理システム及びプログラム |
US8677270B2 (en) | 2007-05-04 | 2014-03-18 | Microsoft Corporation | Live companion user interface |
KR101546639B1 (ko) * | 2007-05-15 | 2015-08-21 | 메리얼 리미티드 | 아릴로아졸-2-일 시아노에틸아미노 화합물, 이의 제조방법 및 이의 사용방법 |
US8954507B2 (en) * | 2007-06-22 | 2015-02-10 | Microsoft Corporation | Gathering and using awareness information |
US8782527B2 (en) | 2007-06-27 | 2014-07-15 | Microsoft Corp. | Collaborative phone-based file exchange |
JP2009042856A (ja) * | 2007-08-07 | 2009-02-26 | Fuji Xerox Co Ltd | 文書管理装置、文書管理システム及びプログラム |
US7890472B2 (en) | 2007-09-18 | 2011-02-15 | Microsoft Corporation | Parallel nested transactions in transactional memory |
JP5119840B2 (ja) * | 2007-10-02 | 2013-01-16 | 富士ゼロックス株式会社 | 情報処理装置、情報処理システム、及びプログラム |
US20090112870A1 (en) * | 2007-10-31 | 2009-04-30 | Microsoft Corporation | Management of distributed storage |
US7941399B2 (en) | 2007-11-09 | 2011-05-10 | Microsoft Corporation | Collaborative authoring |
US8825758B2 (en) | 2007-12-14 | 2014-09-02 | Microsoft Corporation | Collaborative authoring modes |
US9501453B2 (en) * | 2007-12-23 | 2016-11-22 | Salesforce.Com Inc. | Method and system for a flexible-data column user interface |
US8185495B2 (en) * | 2008-02-01 | 2012-05-22 | Microsoft Corporation | Representation of qualitative object changes in a knowledge based framework for a multi-master synchronization environment |
US8301588B2 (en) | 2008-03-07 | 2012-10-30 | Microsoft Corporation | Data storage for file updates |
US8489566B2 (en) * | 2008-04-08 | 2013-07-16 | International Business Machines Corporation | Optimistic locking in online and offline environments |
US8352870B2 (en) * | 2008-04-28 | 2013-01-08 | Microsoft Corporation | Conflict resolution |
US8347061B2 (en) * | 2008-04-29 | 2013-01-01 | International Business Machines Corporation | Method for protecting user-managed memory using an exception |
US7974948B2 (en) * | 2008-05-05 | 2011-07-05 | Microsoft Corporation | Automatically capturing and maintaining versions of documents |
US8825594B2 (en) | 2008-05-08 | 2014-09-02 | Microsoft Corporation | Caching infrastructure |
US8429753B2 (en) | 2008-05-08 | 2013-04-23 | Microsoft Corporation | Controlling access to documents using file locks |
US9418054B2 (en) | 2008-05-12 | 2016-08-16 | Adobe Systems Incorporated | Document comment management |
US9176943B2 (en) | 2008-05-12 | 2015-11-03 | Adobe Systems Incorporated | Comment presentation in electronic documents |
US10055392B2 (en) * | 2008-05-12 | 2018-08-21 | Adobe Systems Incorporated | History-based archive management |
US8996621B2 (en) | 2008-05-12 | 2015-03-31 | Adobe Systems Incorporated | Asynchronous comment updates |
US7949633B1 (en) | 2008-05-12 | 2011-05-24 | Adobe Systems Incorporated | Shared edit access of electronic content |
US7945595B1 (en) | 2008-05-12 | 2011-05-17 | Adobe Systems Incorporated | System and method for generating an item list in electronic content |
US10417051B2 (en) * | 2008-05-23 | 2019-09-17 | International Business Machines Corporation | Synchronizing shared resources in an order processing environment using a synchronization component |
US7899883B2 (en) * | 2008-06-13 | 2011-03-01 | Microsoft Corporation | Merging versions of documents using multiple masters |
US8612520B2 (en) | 2008-06-16 | 2013-12-17 | Microsoft Corporation | Online/offline proto link behavior and proto page conflict resolution |
US8700301B2 (en) | 2008-06-19 | 2014-04-15 | Microsoft Corporation | Mobile computing devices, architecture and user interfaces based on dynamic direction information |
US9200901B2 (en) * | 2008-06-19 | 2015-12-01 | Microsoft Technology Licensing, Llc | Predictive services for devices supporting dynamic direction information |
US8467991B2 (en) | 2008-06-20 | 2013-06-18 | Microsoft Corporation | Data services based on gesture and location information of device |
US20090319166A1 (en) * | 2008-06-20 | 2009-12-24 | Microsoft Corporation | Mobile computing services based on devices with dynamic direction information |
US20090315775A1 (en) * | 2008-06-20 | 2009-12-24 | Microsoft Corporation | Mobile computing services based on devices with dynamic direction information |
US8417666B2 (en) | 2008-06-25 | 2013-04-09 | Microsoft Corporation | Structured coauthoring |
US8489999B2 (en) | 2008-09-02 | 2013-07-16 | Accenture Global Services Limited | Shared user interface surface system |
US20100064004A1 (en) * | 2008-09-10 | 2010-03-11 | International Business Machines Corporation | Synchronizing documents by designating a local server |
US20100082560A1 (en) * | 2008-09-19 | 2010-04-01 | Sony Computer Entertainment America Inc. | Software change management, configuration substitution and remote administration of datacenters |
US8051287B2 (en) | 2008-10-15 | 2011-11-01 | Adobe Systems Incorporated | Imparting real-time priority-based network communications in an encrypted communication session |
US8656290B1 (en) * | 2009-01-08 | 2014-02-18 | Google Inc. | Realtime synchronized document editing by multiple users |
US9396279B1 (en) | 2009-02-17 | 2016-07-19 | Jpmorgan Chase Bank, Na | Collaborative virtual markup |
US8639762B2 (en) | 2009-03-23 | 2014-01-28 | Google Inc. | Providing access to a conversation in a hosted conversation system |
US8346768B2 (en) | 2009-04-30 | 2013-01-01 | Microsoft Corporation | Fast merge support for legacy documents |
US9665413B2 (en) * | 2009-05-01 | 2017-05-30 | Microsoft Technology Licensing, Llc | Shared job scheduling in electronic notebook |
US8296338B2 (en) * | 2009-05-05 | 2012-10-23 | Entangled Media Corp. | Method for a cloud-based meta-file system to virtually unify remote and local files across a range of devices' local file systems |
US9269102B2 (en) * | 2009-05-21 | 2016-02-23 | Nike, Inc. | Collaborative activities in on-line commerce |
US9298834B2 (en) | 2009-05-26 | 2016-03-29 | Adobe Systems Incorporated | User presence data for web-based document collaboration |
US8612380B2 (en) * | 2009-05-26 | 2013-12-17 | Adobe Systems Incorporated | Web-based collaboration for editing electronic documents |
US9602444B2 (en) | 2009-05-28 | 2017-03-21 | Google Inc. | Participant suggestion system |
US9021386B1 (en) | 2009-05-28 | 2015-04-28 | Google Inc. | Enhanced user interface scrolling system |
US8527602B1 (en) | 2009-05-28 | 2013-09-03 | Google Inc. | Content upload system with preview and user demand based upload prioritization |
US8872767B2 (en) | 2009-07-07 | 2014-10-28 | Microsoft Corporation | System and method for converting gestures into digital graffiti |
US9569254B2 (en) * | 2009-07-28 | 2017-02-14 | International Business Machines Corporation | Automatic checkpointing and partial rollback in software transaction memory |
US8412841B1 (en) | 2009-08-17 | 2013-04-02 | Adobe Systems Incorporated | Media content streaming using stream message fragments |
US8166191B1 (en) | 2009-08-17 | 2012-04-24 | Adobe Systems Incorporated | Hint based media content streaming |
US8201094B2 (en) * | 2009-09-25 | 2012-06-12 | Nokia Corporation | Method and apparatus for collaborative graphical creation |
CA2684225A1 (en) * | 2009-10-30 | 2011-04-30 | Ibm Canada Limited - Ibm Canada Limitee | Selective delta validation of a shared artifact |
US8510399B1 (en) | 2010-05-18 | 2013-08-13 | Google Inc. | Automated participants for hosted conversations |
US8719845B2 (en) * | 2010-05-19 | 2014-05-06 | Microsoft Corporation | Sharing and synchronization of objects |
US9026935B1 (en) | 2010-05-28 | 2015-05-05 | Google Inc. | Application user interface with an interactive overlay |
US9380011B2 (en) | 2010-05-28 | 2016-06-28 | Google Inc. | Participant-specific markup |
CN103238150B (zh) | 2010-11-02 | 2016-08-17 | 谷歌公司 | 由多个用户对博客的实时同步文档编辑 |
US20120136839A1 (en) * | 2010-11-30 | 2012-05-31 | Peter Eberlein | User-Driven Conflict Resolution Of Concurrent Updates In Snapshot Isolation |
US9165285B2 (en) | 2010-12-08 | 2015-10-20 | Microsoft Technology Licensing, Llc | Shared attachments |
US9009726B2 (en) * | 2010-12-10 | 2015-04-14 | Microsoft Technology Licensing, Llc | Deterministic sharing of data among concurrent tasks using pre-defined deterministic conflict resolution policies |
US9436502B2 (en) | 2010-12-10 | 2016-09-06 | Microsoft Technology Licensing, Llc | Eventually consistent storage and transactions in cloud based environment |
EP2793130B1 (en) | 2010-12-27 | 2015-12-23 | Amplidata NV | Apparatus for storage or retrieval of a data object on a storage medium, which is unreliable |
CN102739703A (zh) * | 2011-04-02 | 2012-10-17 | 中兴通讯股份有限公司 | 一种对等网络中数据迁移的方法及系统 |
US10552799B2 (en) | 2011-04-28 | 2020-02-04 | Microsoft Technology Licensing, Llc | Upload of attachment and insertion of link into electronic messages |
US9137185B2 (en) | 2011-04-28 | 2015-09-15 | Microsoft Technology Licensing, Llc | Uploading attachment to shared location and replacing with a link |
US11308449B2 (en) | 2011-04-28 | 2022-04-19 | Microsoft Technology Licensing, Llc | Storing metadata inside file to reference shared version of file |
US8682989B2 (en) | 2011-04-28 | 2014-03-25 | Microsoft Corporation | Making document changes by replying to electronic messages |
US10185932B2 (en) | 2011-05-06 | 2019-01-22 | Microsoft Technology Licensing, Llc | Setting permissions for links forwarded in electronic messages |
US8965983B2 (en) | 2011-05-06 | 2015-02-24 | Microsoft Technology Licensing, Llc | Changes to documents are automatically summarized in electronic messages |
US9378138B2 (en) | 2011-06-29 | 2016-06-28 | International Business Machines Corporation | Conservative garbage collection and access protection |
US9716744B2 (en) * | 2011-10-27 | 2017-07-25 | Microsoft Technology Licensing, Llc | Remote access from mobile devices |
CA2769773C (en) * | 2011-11-04 | 2018-01-09 | Gemcom Software International Inc. | System and method for data communication over a network |
US9355115B2 (en) * | 2011-11-21 | 2016-05-31 | Microsoft Technology Licensing, Llc | Client application file access |
US8825722B2 (en) * | 2012-01-13 | 2014-09-02 | Microsoft Corporation | Calculation of properties of objects/shapes across versions of applications |
KR101919008B1 (ko) | 2012-02-24 | 2018-11-19 | 삼성전자주식회사 | 정보 제공 방법 및 이를 위한 이동 단말기 |
KR102008495B1 (ko) | 2012-02-24 | 2019-08-08 | 삼성전자주식회사 | 데이터 공유 방법 및 이를 위한 이동 단말기 |
KR101894395B1 (ko) | 2012-02-24 | 2018-09-04 | 삼성전자주식회사 | 캡쳐 데이터 제공 방법 및 이를 위한 이동 단말기 |
CN102629221B (zh) * | 2012-02-28 | 2014-11-19 | 华为技术有限公司 | 用于分布式共享存储的任务同步方法、装置及系统 |
US20130238552A1 (en) * | 2012-03-12 | 2013-09-12 | Joseph Saib | Systems and methods for synchronizing files in a networked communication system |
US9519631B2 (en) | 2012-03-30 | 2016-12-13 | Microsoft Technology Licensing, Llc | Semantic diff and automerge |
US9286597B2 (en) | 2012-03-30 | 2016-03-15 | Microsoft Technology Licensing, Llc | Tracking co-authoring conflicts using document comments |
US10089323B2 (en) | 2012-04-05 | 2018-10-02 | Microsoft Technology Licensing, Llc | Telemetry system for a cloud synchronization system |
US8700569B1 (en) | 2012-05-09 | 2014-04-15 | Bertec Corporation | System and method for the merging of databases |
US8543540B1 (en) * | 2012-05-09 | 2013-09-24 | Bertec Corporation | System and method for the merging of databases |
US9043278B1 (en) | 2012-05-09 | 2015-05-26 | Bertec Corporation | System and method for the merging of databases |
FI20125700A (fi) * | 2012-06-21 | 2013-12-22 | Tekla Corp | Yhteisdata suhdetiedolla |
US8504519B1 (en) * | 2012-06-27 | 2013-08-06 | Dropbox, Inc. | Determining a preferred modified version from among multiple modified versions for synchronized files |
CN102946403B (zh) * | 2012-07-20 | 2015-09-09 | 珠海金山办公软件有限公司 | 一种用于云存储系统的解决文件冲突的方法及装置 |
US9058311B1 (en) | 2012-08-08 | 2015-06-16 | Sprint Communications Company L.P. | User timeframe selection for delivery of media resources |
US9542177B1 (en) * | 2012-10-30 | 2017-01-10 | Amazon Technologies, Inc. | Peer configuration analysis and enforcement |
US20140136985A1 (en) * | 2012-11-12 | 2014-05-15 | Moondrop Entertainment, Llc | Method and system for sharing content |
TWI464580B (zh) * | 2012-12-24 | 2014-12-11 | Ind Tech Res Inst | 資料儲存方法、採用此方法的資料儲存系統及需求節點 |
US9460073B2 (en) * | 2013-02-27 | 2016-10-04 | Google Inc. | Systems and methods for mutations and operational transforms in a collaborative spreadsheet environment |
US10635638B2 (en) | 2013-03-13 | 2020-04-28 | Ivanti Us Llc | Systems, methods and media for deferred synchronization of files in cloud storage client device |
US9544351B1 (en) * | 2013-03-15 | 2017-01-10 | Steven Sanghoon Lee | Media sharing and consumption |
US10642928B2 (en) * | 2013-06-03 | 2020-05-05 | International Business Machines Corporation | Annotation collision detection in a question and answer system |
CN103345482A (zh) * | 2013-06-20 | 2013-10-09 | 上海爱数软件有限公司 | 一种网络存储系统及其文件访问冲突处理方法 |
CN104657358B (zh) * | 2013-11-15 | 2018-11-23 | 腾讯科技(深圳)有限公司 | 实现网页程序离线缓存的方法和系统 |
US9898520B2 (en) | 2014-03-25 | 2018-02-20 | Open Text Sa Ulc | Systems and methods for seamless access to remotely managed documents using synchronization of locally stored documents |
US20160048548A1 (en) * | 2014-08-13 | 2016-02-18 | Microsoft Corporation | Population of graph nodes |
US9503402B2 (en) | 2014-08-18 | 2016-11-22 | Dropbox, Inc. | Managing drafts of electronic documents across client devices |
US20170031661A1 (en) | 2015-04-15 | 2017-02-02 | Alpha Software Corporation | Systems and methods for transactional applications in an unreliable wireless network |
US10218709B2 (en) * | 2016-03-11 | 2019-02-26 | Microsoft Technology Licensing, Llc | Share permissions and organization of content in an application with multiple levels of organizational hierarchy |
US10298656B2 (en) * | 2016-06-08 | 2019-05-21 | Western Digital Technologies, Inc. | Extending representational state transfer application program interface (REST API) functionality |
US10095674B2 (en) * | 2016-07-08 | 2018-10-09 | Google Llc | Maintaining state of document concurrently edited by two computing systems by determining locations of edits based on inverse transformations |
US10498741B2 (en) | 2016-09-19 | 2019-12-03 | Box, Inc. | Sharing dynamically changing units of cloud-based content |
US11003632B2 (en) | 2016-11-28 | 2021-05-11 | Open Text Sa Ulc | System and method for content synchronization |
CN106708521B (zh) * | 2016-12-21 | 2020-07-17 | 金蝶软件(中国)有限公司 | 一种页面元数据的保存方法及装置 |
TWI735511B (zh) * | 2017-01-19 | 2021-08-11 | 香港商斑馬智行網絡(香港)有限公司 | 代碼提交方法和設備 |
US11301431B2 (en) * | 2017-06-02 | 2022-04-12 | Open Text Sa Ulc | System and method for selective synchronization |
US11016937B2 (en) * | 2017-07-17 | 2021-05-25 | Microsoft Technology Licensing, Llc | Updateable distributed file framework |
CN109408081A (zh) * | 2017-08-17 | 2019-03-01 | 佳能企业股份有限公司 | 数据传输方法及通讯系统 |
JP6573686B2 (ja) * | 2018-02-02 | 2019-09-11 | eXTEM Software Japan株式会社 | 複数のユーザにアクセスされるデータを処理する情報管理システム、情報管理方法、およびプログラム |
CN109462661B (zh) * | 2018-12-19 | 2021-08-10 | 深圳市卡牛科技有限公司 | 数据同步方法、装置、计算机设备和存储介质 |
CN111950981B (zh) * | 2020-08-07 | 2023-07-18 | 中国联合网络通信集团有限公司 | 文档修订管理方法 |
US11880650B1 (en) * | 2020-10-26 | 2024-01-23 | Ironclad, Inc. | Smart detection of and templates for contract edits in a workflow |
WO2022107248A1 (ja) * | 2020-11-18 | 2022-05-27 | 三菱電機株式会社 | 監視画面作成支援装置、監視画面作成支援方法、および監視画面作成支援プログラム |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06324928A (ja) * | 1993-05-14 | 1994-11-25 | Mitsubishi Electric Corp | ログ生成装置とファイルの異なるバージョンの調停のための装置及び異なる場所にあるコンピュータファイルの異なるバージョンを調停するための装置 |
US5806078A (en) * | 1994-06-09 | 1998-09-08 | Softool Corporation | Version management system |
US6006239A (en) * | 1996-03-15 | 1999-12-21 | Microsoft Corporation | Method and system for allowing multiple users to simultaneously edit a spreadsheet |
US5890177A (en) * | 1996-04-24 | 1999-03-30 | International Business Machines Corporation | Method and apparatus for consolidating edits made by multiple editors working on multiple document copies |
JP3022326B2 (ja) * | 1996-06-18 | 2000-03-21 | 日本電気株式会社 | ファイル変更履歴管理システム |
US5787262A (en) * | 1996-06-26 | 1998-07-28 | Microsoft Corporation | System and method for distributed conflict resolution between data objects replicated across a computer network |
US6226652B1 (en) | 1997-09-05 | 2001-05-01 | International Business Machines Corp. | Method and system for automatically detecting collision and selecting updated versions of a set of files |
US6240414B1 (en) * | 1997-09-28 | 2001-05-29 | Eisolutions, Inc. | Method of resolving data conflicts in a shared data environment |
US6067551A (en) * | 1997-11-14 | 2000-05-23 | Microsoft Corporation | Computer implemented method for simultaneous multi-user editing of a document |
US6058416A (en) * | 1998-05-22 | 2000-05-02 | International Business Machines Corportion | Flexible state sharing and consistency mechanism for interactive applications |
US6317754B1 (en) | 1998-07-03 | 2001-11-13 | Mitsubishi Electric Research Laboratories, Inc | System for user control of version /Synchronization in mobile computing |
US6341291B1 (en) * | 1998-09-28 | 2002-01-22 | Bentley Systems, Inc. | System for collaborative engineering using component and file-oriented tools |
US6212534B1 (en) * | 1999-05-13 | 2001-04-03 | X-Collaboration Software Corp. | System and method for facilitating collaboration in connection with generating documents among a plurality of operators using networked computer systems |
US6662212B1 (en) | 1999-08-31 | 2003-12-09 | Qualcomm Incorporated | Synchronization of a virtual workspace using E-mail extensions |
AU1450901A (en) | 1999-11-01 | 2001-05-14 | Mangosoft Corporation | Internet-based shared file service with native pc client access and semantics |
US20030112273A1 (en) * | 2001-12-17 | 2003-06-19 | Workshare Technology, Ltd. | Document collaboration suite using a common database |
AU2003228416A1 (en) | 2002-04-02 | 2003-10-20 | Collabo-Technology, Inc. | Method and apparatus for synchronous project collaboration |
US6938042B2 (en) | 2002-04-03 | 2005-08-30 | Laplink Software Inc. | Peer-to-peer file sharing |
US7366460B2 (en) | 2003-01-23 | 2008-04-29 | Dexterra, Inc. | System and method for mobile data update |
JP2004326176A (ja) | 2003-04-21 | 2004-11-18 | Matsushita Electric Works Ltd | 情報サーバ、情報サーバ用プログラムおよび情報システム |
AU2003903994A0 (en) * | 2003-07-31 | 2003-08-14 | Canon Kabushiki Kaisha | Collaborative editing with automatic layout |
US7296023B2 (en) | 2004-01-15 | 2007-11-13 | International Business Machines Corporation | Method and apparatus for persistent real-time collaboration |
US20060059481A1 (en) * | 2004-09-16 | 2006-03-16 | Rodney Smith | Presenting, delivering and installing electronic downloads with an installed list |
-
2005
- 2005-01-14 US US11/035,698 patent/US7593943B2/en active Active
- 2005-11-16 TW TW094140357A patent/TWI368171B/zh not_active IP Right Cessation
- 2005-11-16 NO NO20055422A patent/NO336905B1/no not_active IP Right Cessation
- 2005-11-18 AU AU2005234676A patent/AU2005234676B2/en not_active Ceased
- 2005-11-21 SG SG200508288A patent/SG124349A1/en unknown
- 2005-11-25 BR BRPI0505187-8A patent/BRPI0505187A/pt not_active Application Discontinuation
- 2005-11-28 KR KR1020050114108A patent/KR101153052B1/ko active IP Right Grant
- 2005-11-28 CA CA2528070A patent/CA2528070C/en not_active Expired - Fee Related
- 2005-12-12 ZA ZA200510084A patent/ZA200510084B/en unknown
- 2005-12-13 JP JP2005359520A patent/JP4874640B2/ja not_active Expired - Fee Related
- 2005-12-14 IL IL172571A patent/IL172571A/en active IP Right Grant
- 2005-12-14 MX MXPA05013617A patent/MXPA05013617A/es active IP Right Grant
- 2005-12-14 NZ NZ544151A patent/NZ544151A/en not_active IP Right Cessation
- 2005-12-14 CN CNB2005101316657A patent/CN100561473C/zh not_active Expired - Fee Related
- 2005-12-14 RU RU2005139140/09A patent/RU2404450C2/ru not_active IP Right Cessation
- 2005-12-14 MY MYPI20055857A patent/MY144510A/en unknown
- 2005-12-16 EP EP05112294.3A patent/EP1681652B1/en active Active
Also Published As
Publication number | Publication date |
---|---|
ZA200510084B (en) | 2007-10-31 |
TW200630891A (en) | 2006-09-01 |
EP1681652A2 (en) | 2006-07-19 |
KR20060083118A (ko) | 2006-07-20 |
CA2528070C (en) | 2015-12-29 |
AU2005234676A1 (en) | 2006-08-03 |
RU2005139140A (ru) | 2007-06-20 |
RU2404450C2 (ru) | 2010-11-20 |
CN1804836A (zh) | 2006-07-19 |
MY144510A (en) | 2011-09-30 |
JP4874640B2 (ja) | 2012-02-15 |
NO20055422L (no) | 2006-07-17 |
EP1681652B1 (en) | 2020-11-18 |
JP2006195972A (ja) | 2006-07-27 |
US20060161516A1 (en) | 2006-07-20 |
NZ544151A (en) | 2009-01-31 |
AU2005234676B2 (en) | 2010-10-28 |
IL172571A0 (en) | 2006-04-10 |
NO336905B1 (no) | 2015-11-23 |
MXPA05013617A (es) | 2006-07-13 |
KR101153052B1 (ko) | 2012-07-03 |
IL172571A (en) | 2010-12-30 |
NO20055422D0 (no) | 2005-11-16 |
CA2528070A1 (en) | 2006-07-14 |
BRPI0505187A (pt) | 2006-09-12 |
US7593943B2 (en) | 2009-09-22 |
SG124349A1 (en) | 2006-08-30 |
TWI368171B (en) | 2012-07-11 |
EP1681652A3 (en) | 2007-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100561473C (zh) | 用于同步对共享对象的多个用户修订的方法和系统 | |
CN1805394B (zh) | 在同步和异步通信模式之间过渡的方法和系统 | |
CN1517885B (zh) | 关于利用原子性更新的中央高速缓冲存储器的方法和系统 | |
US5251314A (en) | System for converting from one document type to a plurality of document types allowing accurate reversal therefrom using tables containing indications regarding non-transformable elements | |
US7584199B2 (en) | System and server for managing shared files | |
CN101405991B (zh) | 控制数据消息保留的方法、装置和计算机程序 | |
CN1531303B (zh) | 协议无关的客户端高速缓存系统和方法 | |
CN101331488A (zh) | 基于盘的高速缓存 | |
CN1848849B (zh) | 复制目录修改的方法和装置 | |
JP2004511840A (ja) | 他のノードのキャッシュに基づくあるノードのキャッシュ内のデータの置換管理 | |
CN101483577B (zh) | 数据共享系统、数据共享方法及信息处理装置 | |
CN100487676C (zh) | 分布式共享磁盘系统中的磁盘写操作 | |
JP2004362166A (ja) | データ管理システム、データ管理方法、サーバ、コンピュータプログラム及びコンピュータプログラムを記録した記録媒体 | |
JPH11161660A (ja) | 文書管理方法及びその実施システム並びにその処理プログラムを記録した媒体 | |
JPH10240606A (ja) | 文書要求装置及び文書管理方法 | |
JPH08137642A (ja) | フォントサービスシステム、フォントサーバ管理装置、フォントサーバ及びフォント管理方法 | |
JP2000127546A (ja) | オーバーレイフォームサーバ、クライアントコンピュータおよびネットワークプリンタ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
ASS | Succession or assignment of patent right |
Owner name: MICROSOFT TECHNOLOGY LICENSING LLC Free format text: FORMER OWNER: MICROSOFT CORP. Effective date: 20150422 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20150422 Address after: Washington State Patentee after: MICROSOFT TECHNOLOGY LICENSING, LLC Address before: Washington State Patentee before: Microsoft Corp. |
|
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20091118 |