CN111433759A - 在基于云的环境中管理对二进制文件预览视图的评论 - Google Patents

在基于云的环境中管理对二进制文件预览视图的评论 Download PDF

Info

Publication number
CN111433759A
CN111433759A CN201880078488.6A CN201880078488A CN111433759A CN 111433759 A CN111433759 A CN 111433759A CN 201880078488 A CN201880078488 A CN 201880078488A CN 111433759 A CN111433759 A CN 111433759A
Authority
CN
China
Prior art keywords
file
content
graphical image
version
document
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.)
Granted
Application number
CN201880078488.6A
Other languages
English (en)
Other versions
CN111433759B (zh
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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Priority to CN202410622318.7A priority Critical patent/CN118535541A/zh
Publication of CN111433759A publication Critical patent/CN111433759A/zh
Application granted granted Critical
Publication of CN111433759B publication Critical patent/CN111433759B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/106Display of layout of documents; Previewing
    • 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
    • G06F16/1794Details of file format conversion
    • 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/1873Versioning file systems, temporal file systems, e.g. file system supporting different historic versions of files
    • 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/0483Interaction with page-structured environments, e.g. book metaphor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/151Transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/169Annotation, e.g. comment data or footnotes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences

Landscapes

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

Abstract

提供了一种用于在预览用户界面内编辑和更新协作文档的内容的方法。该方法包括内容管理平台接收对以第三方应用格式存储的所存储的文件的请求。系统使文件的渲染图形图像呈现在预览用户界面内。文件的渲染图形图像表示文件的如同在第三方应用内打开的视图。系统从预览用户界面接收与文件的一部分相关联的内容。系统生成文件的新版本,其包括与文件的该部分相关联的内容。

Description

在基于云的环境中管理对二进制文件预览视图的评论
背景技术
在电子文档的开发过程中,通常希望让多个审阅者阅读、评论和/或编辑电子文档的草稿。例如,作者可以创建电子文档的初始草稿,并且与可以同时编辑电子文档(例如,对电子文档进行更改和/或评论)的多个编辑者共享电子文档。编辑者可以在电子文档中创建评论。这些评论可以在特定电子文档中对于做出评论的编辑者、其他协作者(例如,与其共享电子文档的用户)和/或电子文档的作者是可见的。
发明内容
以下是本公开的简化概述,以便于提供对本公开的一些方面的基本理解。此发明内容不是本公开的广泛概述。它既不旨在标识本公开的关键或重要元素,也不旨在描绘本公开的特定实施方式的任何范围或权利要求的任何范围。其唯一目的是以简化的形式呈现本公开的一些概念,作为稍后呈现的更详细描述的序言。
本公开的实施方式可以包括一种由内容管理平台接收对存储在内容管理平台内的文件的请求的方法。该文件可以以第三方应用格式存储。内容管理平台可以使文件的渲染图形图像呈现在客户端设备上的预览用户界面内。文件的渲染图形图像可以表示文件的如同在第三方应用中打开的视图。该方法可以进一步包括内容管理平台从预览用户界面接收与文件的一部分相关联的内容。然后内容管理平台可以生成文件的新版本,其包括与文件的该部分相关联的内容,其中该文件的新版本以第三方应用格式存储。
在一些实施方式中,第三方应用格式可以包括但不限于文字处理应用程序格式(例如,
Figure BDA0002524034130000011
Markdown文本、纯文本、富文本格式、电子邮件草稿格式和任何其他格式的文本)、电子表格应用格式(例如,
Figure BDA0002524034130000021
)、幻灯片演示文稿应用格式(例如,
Figure BDA0002524034130000022
)、工程图演示文稿应用格式(例如,
Figure BDA0002524034130000023
便携式文档格式(PDF)、图形文件格式、视频文件、3D渲染文件、计算机辅助设计(CAD)渲染文件或任何其他第三方文件格式。
在一些实施方式中,使文件的渲染图形图像呈现在客户端设备上的预览用户界面内包括,基于与第三方应用格式相关联的一个或多个规则从文件生成多个字节的一个或多个渲染图像。使用多个字节的一个或多个渲染图像来执行文件的渲染图形图像的生成。可以将文件的渲染图形图像提供给客户端设备以在预览用户界面内呈现。
在一些实施方式中,客户端设备上的预览用户界面允许客户端设备的用户执行以下一项或多项动作:突出显示与渲染图形图像一起显示的文本、使用位置坐标突出显示渲染图形图像的一部分、创建与渲染图形图像的一部分相关联的新评论、以及编辑预览用户界面中显示的针对文件的现有评论。
在一些实施方式中,内容管理平台在接收到对存储在内容管理平台内的文件的请求时,可以从文件中提取表示一个或多个评论的数据。内容管理平台可以生成表示来自文件的一个或多个评论的一个或多个内容对象。内容管理平台可以生成表示一个或多个内容对象的一个或多个渲染图像,其可以与文件的渲染图形图像一起提供给客户端设备以在预览用户界面中呈现。
在一些实施方式中,表示一个或多个内容对象的一个或多个渲染图像与渲染图形图像的一个或多个部分相关联。
在一些实施方式中,当内容管理平台接收与文件的该部分相关联的内容时,内容管理平台可以生成包含接收到的内容的内容对象。然后内容管理平台可以基于文件的该部分在文件的渲染图形图像内的位置坐标将内容对象与文件的该部分相关联。
在一些实施方式中,包括与文件的该部分相关联的内容的文件的新版本的生成可以包括内容管理平台从文件中检索与对应于内容的部分相对应的多个字节。然后内容管理平台可以生成一个或多个新字节,所述一个或多个新字节表示与其中基于第三方应用格式格式化一个或多个新字节的部分相关联的内容。内容管理平台可以生成文件的新版本,其包括来自文件的多个字节和表示与对应于接收到的内容的部分相关联的内容的一个或多个新字节。
在一些实施方式中,内容管理平台可以接收用于存储文件的第二版本的请求,其中文件的第二版本包含更新内容(例如,新的/更新后的评论)。然后,内容管理平台可以从文件的第二版本中提取新内容,并将新内容与文件的当前存储版本中的现有内容合并。然后内容管理平台可以将文件的第二版本和合并的内容存储在内容管理平台内。
在一些实施方式中,内容管理平台可以接收用于预览存储在内容管理平台内的文件的第二版本的请求。内容管理平台可以生成文件的第二版本的渲染图形图像,并且可以将文件的第二版本的渲染图形图像提供给客户端设备的预览用户界面。文件的第二版本的渲染图形图像也可以包括新内容的渲染的图像。
一些实施方式可以包括由客户端设备接收对以第三方应用格式存储在内容管理平台内的文件的请求的方法。客户端设备可以在预览用户界面内呈现文件的渲染图形图像。文件的渲染图形图像可以表示文件的如同在第三方应用中打开的视图。该方法可以进一步包括经由预览用户界面接收与文件的一部分相关联的内容。客户端设备可以向内容管理平台提供与文件的该部分相关联的内容,以使得创建文件的新版本,该文件的新版本包括与该文件的该部分相关联的内容并且该内容以第三方应用格式。
附图说明
根据在下面给出的详细描述并且根据本公开的各个方面和实现方式的附图,本公开的各方面和实现方式将被更充分地理解,然而这不应当被认为将本公开限于具体方面或实现方式,而是仅用于说明和理解。
图1图示用于本公开的实施方式的系统架构的示例。
图2描绘根据本公开的一个实施方式的用于在基于云的环境内接收和存储协作文档的方法的流程图。
图3A描绘根据本公开的一个实施方式的用于提供预览界面以显示所请求的协作文档的预览并接收来自用户的内容输入并且生成包括来自用户的内容输入的协作文档的新版本的方法的流程图。
图3B描绘根据本公开的一个实施方式的用于提供预览界面以显示所请求的协作文档的预览并接收来自用户的内容输入并且将内容输入提供给基于云的环境以生成包括来自用户的内容输入的协作文档的新版本的方法的流程图。
图4图示根据本公开的一种实现方式的在预览用户界面内的协作文档的渲染图形图像的示例。
图5图示根据本公开的一个实施方式的预览用户界面内的预览协作图像文档的示例。
图6图示根据本公开的一个实施方式的预览用户界面内的预览协作文档的示例。
图7描绘根据本公开的一个实施方式的用于使用包含新的/更新后的数据对象的协作文档的新版本来更新与协作文档相关联的内容对象的集合的方法的流程图。
图8描绘根据本公开的一个或多个方面进行操作的示例计算系统的框图。
具体实施方式
基于云的内容管理平台可以提供文件存储和同步服务等。例如,基于云的内容管理平台可以使用户能够在基于云的环境中的一个或多个服务器上存储文件,跨越用户的各种设备同步文件,并且与一个或多个其他用户共享文件。在某些情况下,基于云的内容管理平台可以提供单个位置来为用户管理文件。这些文件可以包括以各种文件格式存储的电子文档,各种文件格式诸如Microsoft Office(Word、Excel、PowerPoint和OneNote)、PDF、图像文件格式、音频文件格式、视频文件、3D渲染文件、CAD渲染文件或任何其他第三方应用格式。
电子文档是指以电子形式使用的媒体内容。媒体内容可以包括文本、表格、视频、音频、图像、图形、幻灯片、图表、软件编程代码、设计、列表、计划、蓝图、地图等。基于云的内容管理平台可以使电子文档的作者关于基于云的环境中存储的电子文档邀请其他用户作为协作者加入。已经向用户授予同时访问和/或编辑的权限的电子文档可以在本文中称为协作文档。协作者可以指的是能够与一个或多个其他用户一起执行与协作文档有关的操作(例如,查看编辑、评论等)的用户。
协作者可以经由由基于云的环境中的一个或多个服务器托管的基于云的内容管理平台来访问协作文档。每个协作者都可以在用户的客户端设备处在由内容管理平台提供的预览用户界面内或者使用与协作文档的文件格式兼容的第三方应用查看协作文档。例如,用户可以使用与基于云的内容管理平台相关联的网站或在客户端设备上安装的第三方应用的UI中通过它们的客户端设备上的Web浏览器预览协作文档。
通常,为了使协作者向协作文档提供诸如评论的反馈,协作者将协作文档下载到客户端设备,并且然后在能够编辑协作内容的第三方应用内打开协作文档。例如,如果协作文档是Microsoft Word文档,则用户可以将协作文档下载到它们的客户端设备,并且然后打开协作文档以在诸如Microsoft Word的第三方应用中进行编辑。因此,为了使协作者能够在协作文档内修改或添加评论,协作者将必须启动能够本地打开协作文档的第三方应用。但是,如果协作者的设备不具有能够本地打开协作文档的第三方应用,或者不具有必需的第三方应用许可证,则协作者将无法在协作文档本身内添加评论或注释。
另外,在协作文档中添加评论或注释的过程通常需要协作者下载协作文档,在第三方应用内本地编辑文档,生成协作文档的新版本并将协作文档的新版本上载到基于云的内容管理平台。但是,如果数个协作者向协作文档提供评论或注释,则本地编辑和上载协作文档的新版本的此过程可能会导致同时分发协作文档的多个不同版本。分发协作文档的多个不同版本可能会导致在协作文档的多个版本之间发生冲突,并且如果协作文档的版本未正确协调,则可能会导致评论丢失或被覆写。
本公开的各方面通过能够在基于云的内容管理平台提供的预览用户界面内进行内容输入而至少解决这些缺陷。预览用户界面可以允许多个协作者在其相应客户端设备上显示的预览用户界面内提供输入。从预览用户界面,每个协作者将能够在协作文档中添加或编辑内容(例如,评论和/或注释),而无需在客户端设备上具有第三方应用并在客户端设备上的第三方应用中打开文档。特别地,基于云的内容管理平台可以解析现有文档,从现有文档中提取特定数据对象,诸如包含评论的对象,并提供包括评论的预览用户界面。协作者可以通过在预览用户界面内编辑所显示的评论或添加新评论来与所显示的评论进行交互。基于云的内容管理平台可以经由预览用户界面接收评论,并将这些评论转换成文档兼容的数据对象,然后可以将其与文档的现有版本合并以生成文档的新版本,其包括来自于用户界面的更新的评论和新创建的评论。
根据本公开的一些方面,基于云的内容管理平台生成并维护用于存储在基于云的环境内的协作文档的内容对象。内容对象可以表示从协作文档中提取的特定数据对象。所提取的数据对象可以包括但不限于表示电子文档内的评论、注释、突出显示、可填充数据字段、单元格或任何其他特定数据类型的数据对象。例如,文本文档可能包含指协作文档中的编辑或笔记的评论集。内容管理平台可以从协作文档中提取评论集,并创建内容对象集,每个内容对象表示来自于协作文档的评论。例如,每个内容对象都可以包含来自所提取的数据对象中的数据,其中包括来自评论的文本、评论的作者、与评论关联的时间戳、描述协作文档中与评论相关联的部分的位置信息、以及属于从协作文档中提取的评论的任何其他属性。如所描述的,内容对象不限于表示评论。即使所描述的示例可以指来自协作文档的数据对象和所生成的内容对象作为表示文档内的评论,但是内容对象可以表示来自协作文档的任何定义的属性或对象。
根据本公开的一些方面,预览界面可以用电子文档的图形表示来显示内容对象集的图形表示。预览用户界面可以允许用户与内容对象集进行交互,使得用户可以编辑内容对象内的内容。例如,用户可以更改显示在内容对象中的评论文本,如同用户正在第三方应用内编辑评论一样。另外,预览用户界面可以被配置成允许用户提供新评论或其他输入。例如,用户可以选择协作文档的一部分并创建与该部分相关联的新评论。内容管理平台可以接收新评论和标识协作文档的所选部分的信息,并创建新内容对象,该新内容对象包含新评论的文本、标识创建该评论的用户的用户标识符、何时创建评论的时间戳、以及标识创建评论时选择的文档的部分的位置信息。这样,内容管理平台可以从客户端设备接收表示用户输入的内容(例如,编辑或新内容),并且可以更新现有内容对象或生成新内容对象,其被插入到与当前协作文档相关联的内容对象集中。
根据本公开的一些方面,内容管理平台可以从预览用户界面生成包括新的/更新后的内容对象的协作文档的新版本。内容管理平台可以将内容对象集转换成与和协作文档相关联的第三方文件格式兼容的数据对象。例如,如果电子文档是包含OpenXML数据对象的Microsoft Word文档,则内容管理平台可以将内容对象集转换成OpenXML数据对象,使得可以将转换后的内容对象集合并到协作文档中。内容管理平台可以配置成生成包含内容对象集的协作文档的新版本。然后,可以将协作文档的新版本存储在基于云的环境中,在基于云的环境中其他协作者可以查看和/或编辑协作文档的新版本。另外,可以在本地下载和打开协作文档的协作者可能能够在第三方应用内查看新/更新后的数据对象。例如,如果协作文档是Microsoft Word文档并且电子文档的新版本包含附加评论,则协作者可能在诸如Microsoft Word的第三方应用内查看附加评论,因为在预览用户界面中生成的新评论被转换和合并到新协作文档中作为新OpenXML数据对象,第三方应用可以识别和显示该OpenXML数据对象。
根据本公开的一些方面,内容管理平台可以维护表示从协作文档的不同版本提取的数据对象的一致的内容对象集。内容管理平台可以检查从协作文档的新版本或不同版本中提取的数据对象,并将该数据对象与内容管理平台维护的现有内容对象集进行比较。内容管理平台可以通过基于一个或多个对象属性标识重复评论来实施重复数据删除技术。例如,如果来自协作文档的数据对象是评论,则内容管理系统可以通过基于评论文本、作者、时间戳、位置信息以及可以用于唯一地标识评论的任何其他唯一属性将数据对象与现有内容对象进行匹配来标识重复对象。
在本公开的预览用户界面内实现内容输入的一些益处可以提供由针对技术问题的技术解决方案引起和/或导致的技术效果。例如,一个技术问题可能涉及通过使用第三方独立应用提供输入来管理由多个协作者产生的协作文件的多个版本导致资源(例如,处理,内存)的效率低下和/或过度消耗。针对该技术问题的技术解决方案之一可以包括在集中式预览用户界面内实现特定输入。可能由针对该技术问题的技术解决方案引起和/或导致的技术效果可以包括,通过在单个用户界面中管理协作文档中包括的输入内容而无需每个协作者打开单独的第三方应用在协作文档中输入评论和/或其他数据,增强处理速度并减少内存消耗。而且,在单个用户界面中聚集和显示评论可以使多个协作者能够更有效且高效地查看来自其他协作者的评论。另外,如所讨论的,常规的解决方案让具有不同评论的协作文档的多个版本分发,导致版本之间的冲突,并且如果没有正确协调协作文档的版本则导致评论丢失或被覆写。本公开的各方面通过允许经由用户设备上的预览界面提供多个评论,聚集和转换这些评论并将它们合并到协作文档的单个版本中来解决该问题,从而防止评论丢失或被覆写。
图1图示用于本公开的实施方式的示例系统架构100。系统架构100包括经由网络140连接到客户端设备130A-130Z的基于云的环境110。基于云的环境110是指物理机器的集合,该物理机器托管经由网络140向多个客户端设备130提供一个或多个服务(例如,内容管理)的应用。网络140可以是公共网络(例如,互联网)、专用网络(例如,局域网(LAN)或广域网(WAN))或其组合。网络140可以包括无线基础设施,该无线基础设施可以由一个或多个无线通信系统提供,诸如与网络140连接的无线保真(WiFi)热点和/或可以使用各种数据处理设备、通信塔等实现的无线载波系统。附加地或可替选地,网络140可以包括有线基础设施(例如,以太网)。
基于云的环境110可以包括一个或多个服务器130A-130Z和数据存储114。数据存储114可以与服务器130A-130Z分离并且通信地耦合到服务器130A-130Z或数据存储114可以是服务器130A-130Z中的一个或多个的一部分。在一些实施例中,可以包括数据存储114作为客户端设备130A-130Z的一部分。数据存储114可以存储各种协作文档,诸如协作幻灯片演示113、协作文本文档115、协作电子表格116、协作图像文档117或可以与用户共享和/或由用户同时编辑的任何合适的协作文档(例如,包括文本、表格、视频、图像、图形、幻灯片、图表、软件编程代码、设计、列表、计划、蓝图、地图等的协作文档)。术语“同时可编辑”可以指的是用户同时修改(例如,添加、删除、更改等)内容(例如,文本、单元格、图像、数据、幻灯片等)、同时建议对内容进行更改、同时对内容进行评论等。数据存储114还可以存储从协作文档中提取和/或在预览用户界面内创建的一个或多个内容对象119。
协作文档可以由作者创建,并且作者可以与其他用户(例如,协作者)共享协作文档。共享协作文档可以指向其他用户授予访问协作文档的权限。共享协作文档可以包括经由包括到协作文档的链接的消息(例如,电子邮件)向其他用户通知协作文档。授予每个用户的权限的级别可以基于每个特定用户的用户类型。例如,具有编辑者用户类型的用户可能能够打开协作文档并直接对协作文档进行更改。此外,可以允许编辑者用户类型将内容输入到客户端设备的预览用户界面中,从而使得创建包括输入内容的内容对象119。
当在预览用户界面中为协作文档创建内容对象119时,内容对象119可以与使内容对象119被创建(例如,直接经由选择表示将评论添加到协作文档的指示符,或者间接当用户回复现有评论或将评论指配给另一用户时)的用户以及一个或者多个其它用户相关联。例如,协作文档可以由作者创建并与具有审阅者用户类型的另一个用户共享。审阅者可以打开协作文档,并使在协作文档中创建内容对象119。内容对象119可以与审阅者的用户ID和作者的用户ID相关联。在某些情况下,内容对象119的创建者可以将内容对象119指配给特定用户。因此,当用户使内容对象119被指配给另一用户时,受让人用户(例如,评论被指配到的用户)也可以与内容对象119相关联。
创建的内容对象119可以存储在数据存储114中作为在其中创建内容对象119的协作文档的一部分或作为在数据存储114中的单独数据结构中的其自己的数据条目。各种属性可以在存储期间与内容对象119相关联,例如创建内容对象119的用户的用户ID、拥有协作文档的用户的所有者ID、内容对象119的正文(可以包含链接)、能够将任务指配给其他协作者的指配标志、与评论相关联的用户的其他用户ID、指示评论是否已解析的标记(如果用户重新打开已解析的评论,则此标志可能会从已解析切换到未解析)、当创建内容对象119时的时间戳、指示内容对象119是否包括建议或与建议相关联的标记、与包括内容项目119的协作文档相关联的项目的项目ID、与创建内容项目119的用户相关联的团队的团队ID、将内容对象119与协作文档的一部分相关联的位置信息以及任何其他描述性属性。
服务器130A-130Z可以是物理机器(例如,服务器机器、台式计算机等),每个物理机器都包括通信耦合到存储设备和输入/输出(I/O)设备的一个或多个处理设备。服务器130A-130Z可以托管内容管理平台(125A-125Z)。内容管理平台125可以被实现为可由服务器130A-130Z中的每一个上的一个或多个处理设备执行的计算机指令。在替代实施方式中,内容管理平台125A-125Z可以被安装在客户端设备130A-130Z上(例如,作为独立应用),并且在对等环境中作为对等体来操作。在又一替代实施方式中,客户端设备130A-130Z上的应用可以与内容管理平台125交互并且可以执行内容管理平台125的一些功能。
服务器130A-130Z中的一个或多个可以托管内容管理平台125A-125Z。被选择以托管内容管理平台125A-125Z的服务器130A-130Z可以基于某些负载平衡技术、服务水平协议、性能指标等。应理解,基于云的环境110的服务器130A-130Z托管内容管理平台125A-125Z,并且因此,内容管理平台125A-125Z可以在此被称为基于云的内容管理平台122A-122Z。
内容管理平台125A-125Z可以使用户能够在相应的预览用户界面134A-134Z内查看和/或管理与它们相关联的协作文档。另外,在一些实施例中,基于云的内容管理平台125A-125Z可以提供预览用户界面134A-134Z,该预览用户界面134A-134Z显示与由用户创建的协作文档相关联或与在相应的预览用户界面134A-134Z中的用户相关联的内容对象119。
内容管理平台125A-125Z还可以使使用不同客户端设备130A-130Z的用户能够同时访问协作文档(113、115或116)以在预览用户界面134A-134Z中评论、编辑(例如,修改或建议更改)并且/或者查看协作文档。在实施方式中,内容管理平台125A-125Z的预览用户界面134A-134Z可以是由web浏览器渲染并在web浏览器窗口中显示在客户端设备130A-130Z上的网页。在另一实施方式中,预览用户界面134A-134Z可以由移动应用或桌面应用显示。例如,预览用户界面134A-134Z可以由在客户端设备130A-130Z上执行的本机应用显示。本机应用可以与web浏览器分离。
在实现方式中,内容管理平台125A-125Z可以包括文档处理组件127A-127Z和内容对象处理组件129A-129Z。文档处理组件127A-127Z可以被配置成处理包含在协作文档中的字节数据对象,并将处理后的字节存储在数据存储114中。然后文档处理组件127A-127Z可以将存储的字节转换成一个或多个渲染图像,所述一个或多个渲染图像提供来自于协作文档的数据对象的图形表示。例如,如果协作文档是包含文本、图形和图片的PDF文件,则文档处理组件127A可以将存储的PDF文件的字节转换成表示文件的不同部分的渲染图像,诸如不同的字符、单词、线条或段落的文本图像,以及表示PDF文件内的不同图形和图片的图形图像。文档处理组件127A可以将不同的渲染图像格式化并将其排列成提供协作文档的图形显示的形式,就像使用第三方应用格式在第三方应用内打开协作文档一样。例如,文档处理组件127A可以格式化和排列PDF文件的不同对象的图形表示,以生成看起来如同PDF文件在PDF兼容应用中被打开的PDF文件的图形表示。
在实现方式中,内容对象处理组件129A-129Z可以从协作文档中提取数据对象,并创建表示所提取的数据对象的内容对象119的集合。例如,如果内容对象处理组件129A提取表示Microsoft Word文档内的评论的数据对象,则内容对象119的集合将均表示来自Microsoft Word文档的评论。内容对象处理组件129A-129Z可以将内容对象119的集合存储在数据存储114中。当内容管理系统125A-125Z接收并存储协作文档的新版本时,内容对象处理组件129A-129Z可以进一步比较和更新与协作文档关联的内容对象119的集合。例如,如果用户将协作文档的新版本上载到基于云的环境110,则内容对象处理组件129A可以从协作文档的新版本中提取指代评论的数据对象,并将来自新版本的数据对象与和协作文档的先前版本相关联的内容对象119的现有集合进行比较。
客户端设备130A-130Z可以包括通信地耦合到存储器设备和I/O设备的一个或多个处理设备。客户端设备130A-130Z可以是台式计算机、膝上型计算机、平板计算机、移动电话(例如,智能电话)或任何合适的计算设备。如在上面所讨论的,客户端设备130A-130Z可以均包括web浏览器和/或客户端应用(例如,移动应用或桌面应用)。被邀请并成为协作文档的协作者的用户可以请求经由Web浏览器或客户端应用访问协作文档。例如,用户可以从由内容管理平台125A提供并且由web浏览器或客户端应用呈现的预览用户界面134A中选择协作文档。这样,与用户相关联的客户端设备130A可以从基于云的环境110请求协作文档。
图2描绘根据一些实施方式的用于在基于云的环境110内接收和存储协作文档的方法200的流程图。尽管内容管理平台125A被用于方法200的讨论,但是应理解,代替内容管理平台125A或者除了内容管理平台125A之外,可以使用任何其他内容管理平台125B-125Z来接收和存储协作文档。方法200及其各个单独的函数、例程、子例程或操作可以由执行该方法的计算机设备的一个或多个处理设备执行。在某些实施方式中,方法200可以由单个处理线程执行。可替选地,方法200可以由两个或更多个处理线程执行,每个线程执行方法的一个或多个单独的函数、例程、子例程或操作。在说明性示例中,可以使实现方法200的处理线程同步(例如,使用信号量、临界段和/或其他线程同步机制)。可替选地,实现方法200的过程可以相对于彼此被异步地执行。
为了简单的说明,本公开的方法被描绘和描述为一系列动作。然而,根据本公开的动作能够以各种顺序和/或同时地发生,并且同时未在本文中呈现和描述其它动作。此外,可能不要求所有图示的动作来实现根据所公开的主题的方法。此外,本领域的技术人员将理解并显而易见的是,这些方法能够可替选地经由状态图或事件被表示为一系列相关状态。另外,应当理解,本说明书中公开的方法能够被存储在制品上以促进将此类方法输送和转移到计算设备。如本文中所使用的术语“制品”旨在包含可从任何计算机可读设备或存储介质访问的计算机程序。在一个实现方式中,方法400可以由内容管理平台125A执行。可替选地,方法200的至少一些操作可以由由客户端设备130A-130Z的一个或多个处理设备执行的客户端应用来执行。
在块202处,处理设备可以接收用于在基于云的环境110内存储协作文档的用户请求。在一个实施例中,该用户请求可以从客户端设备130A生成并发送。例如,配置成与内容管理平台125A通信的web浏览器或任何其他应用可以生成并发送用于存储协作文档的用户请求。用户请求可以包括协作文档本身、标识文档的所有者的信息、可能被给予对协作文档进行评论和/或编辑的权限的潜在协作者。如先前所讨论的,协作文档可以是任何类型的第三方格式化文件,诸如文本文档、幻灯片演示、电子表格、图像文件或任何其他协作文档。
在块204处,处理设备可以从数据存储114中的协作文档中提取并标识文档对象。在实施例中,内容管理平台125A的文档处理组件127A可以从协作文档中提取字节,并且识别组成协作文档的一个或多个文档对象。文档对象可以指协作文档内的任何已定义的对象,其包括诸如字符、单词、线条、段落、表格,单元格、图像、字体、嵌入图片或任何其他文档特定对象。可以使用基于协作文档的第三方应用格式配置的规则来标识一个或多个文档对象。例如,如果协作文档以Microsoft Excel电子表格格式存储,则文档处理组件127A可以使用定义Microsoft Excel电子表格内的对象结构的规则来识别协作文档内的一个或多个文档对象。用于不同的第三方文件格式的规则可以从诸如经由应用程序编程接口(API)可用的那些的不同第三方应用库推导。
在实施例中,在标识文档对象之后,文档处理组件127A可以将文档对象连同协作文档一起格式化并存储在数据存储114中。例如,如果协作文档是Microsoft Excel电子表格,则该文档处理组件127A可以将协作文档连同所提取的对象一起存储为协作电子表格116。
在块206处,处理设备可以标识协作文档内的特定数据对象,以进行处理以生成要与协作文档相关联的一个或多个内容对象。特定数据对象可以包括表示来自协作文档的评论、注释、文本字段或任何其他特定属性的数据对象。在实施例中,内容对象处理组件129A可以标识并从协作文档的字节中提取指定评论、注释、文本字段或任何其他感兴趣属性的一个或多个数据对象。由文档处理组件127A标识的数据对象的类型可以在来自客户端设备130A的存储请求内指定,或者可以基于协作文档的第三方应用格式来标识。例如,如果协作文档是Microsoft Word文件类型,则文档处理组件127A可以标识并提取指代MicrosoftWord文件内的评论的数据对象。文档处理组件127A可以使用特定于第三方应用格式的规则来标识数据对象。在实施例中,内容对象处理组件129A可以标识不同类型的数据对象。
在块208处,处理设备可以从协作文档中生成与所标识的数据对象相对应的一个或多个内容对象119。在实施例中,内容对象处理组件129A可以生成内容对象119,该内容对象119包括来自所标识的数据对象的每个属性。例如,如果所标识的数据对象是评论,则内容对象119可以包括评论内的文本、最初创建评论的用户的用户ID、与评论相关联的时间戳、到与评论相关联的协作文档的一部分的锚点、或任何其他第三方应用评论属性。在另一示例中,如果所标识的数据对象是PDF协作文档内的文本字段,则内容对象119可以包括与文本字段的位置、文本字段内的任何现有文本、文本字段的格式化信息和其他任何属性有关的位置信息。
在块210处,处理设备可以将创建的内容对象119存储在数据存储114中。在实施例中,内容对象处理组件129A将一个或多个内容对象119存储在数据存储中,并将一个或多个内容对象119与数据存储114内存储的协作文档相关联。此关联允许内容管理平台125A在请求时检索相关的内容对象119连同协作文档。例如,可以在客户端设备130A的预览用户界面134A内将相关联的内容对象119与协作文档的表示一起呈现。
图3A描绘根据一些实施方式的用于提供预览用户界面134A以显示与协作文档相关联的内容对象119的集合并接收来自用户的内容输入并且生成包括来自用户的内容输入的协作文档的新版本的方法300的流程图。在一个实施方式中,方法300可以由内容管理平台125A执行。
在块302处,处理设备可以接收对存储在基于云的环境110内的协作文档的用户请求。文件可以表示任何存储的文档,包括但不限于协作幻灯片演示113、协作文本文档115、协作电子表格116、协作图像文档117或以第三方应用格式存储在数据存储114中的任何其他协作文档。在实施例中,可以生成并发送从客户端设备130A接收到的用户请求。该请求可以在预览用户界面134A或配置成与内容管理平台125A通信的任何其他用户界面或应用内生成。
在块304处,处理设备可以使协作文档的渲染图形图像被呈现在客户端设备130A的预览用户界面134A上,该协作文档的渲染图形图像表示协作文档的如同在第三方应用中打开的视图。在实施方式中,处理设备可以生成协作文档的渲染图形图像,该渲染图形图像表示协作文档的如同在第三方应用内打开的视图。在实施例中,文档处理组件127A可以从数据存储114中检索一个或多个存储的文档对象,并生成文档对象的一个或多个图形表示。一个或多个图形表示可以被格式化以看起来像文档对象的图形表示,如同它们将在与协作文档相关联的第三方应用内出现。例如,如果协作文档是Microsoft Word文档,则将呈现一个或多个存储的文档对象,以看起来像Microsoft Word应用内的对象。文档处理组件127A可以基于与第三方应用格式相关联的库和其他API来使用渲染规则,以确定每个渲染对象看起来像什么。例如,渲染规则可以定义Times New Roman字体的文本对于Microsoft Word应用看起来像什么。
在实施方式中,内容对象处理组件129A可以检索与所请求的协作文档相关联的存储的内容对象119,并生成内容对象119的一个或多个图形表示。可以生成内容对象119的图形表示以看起来像对象,如同这些对象将出现在协作文档的相关联的第三方应用中。例如,如果内容对象119是Microsoft Word评论,则图形表示可能看起来像Microsoft Word评论,并且可能已经将图形锚或其他连接线渲染到协作文档的文档对象的图形表示。例如,如果评论与协作文档内的第一段相关联,则评论的渲染图形图像可以包括到协作文档的第一段的图形表示的锚点或连接线。
在实施方式中,内容管理平台125A可以组合文档对象的图形表示和内容对象119的图形表示以生成协作文档的渲染图形图像以在预览用户界面134A内查看。
在实施方式中,处理设备可以将包括协作文档的渲染图形图像的预览用户界面134A提供给客户端设备130A以供呈现,或者使预览用户界面134A被更新为包括协作文件的渲染图形图像。在实施例中,内容管理平台125A经由网络140将包括相关联的内容对象119的图形表示的协作文档的渲染图形图像发送到预览用户界面134A。预览用户界面134A可以向客户端设备130A的用户呈现协作文档的渲染图形图像。在其他实施方式中,客户端设备130A可以被配置成处理表示协作文档的数据,以便于生成渲染图形图像并将渲染图形图像呈现在预览用户界面134A内。下面结合图3B更详细地讨论执行渲染图形图像的生成的客户端设备130A的实现。
图4描绘预览用户界面134A内的协作文档的渲染图形图像的示例。预览文档405可以表示协作文档的渲染图形图像。例如,协作文档可以是Microsoft Word格式化的文档,并且预览文档405可能已经由内容管理平台125A渲染以看起来像Microsoft Word文档。通过使预览文档405看起来像Microsoft Word文档,协作者可以在预览用户界面134A内准确地查看协作文档并以评论或其他注释的形式提供反馈。评论415是内容对象119的图形表示,其表示来自协作文档的评论。评论415可以包括显示最初提供评论的协作者的用户ID的用户ID 420。用户ID 420可以是来自内容对象119的属性。时间戳422可以显示与评论相关联的时间戳,诸如最初创建或最近修改评论的时间戳。评论文本425表示来自内容对象119的描述性文本。评论415与文本部分410相关联,其可以基于内容对象119内的位置锚定或文本关联属性。在当前示例中,用于内容对象119的文本关联属性可以指定内容对象119与协作文档中的文本对象“[Party One名称]”相关联。
图5描绘预览用户界面134A内的预览协作图像文档的另一示例。预览文档505由特定城市的地铁系统的图像文件表示。相关联的协作文档可以是与第三方应用图像查看器兼容的任何类型的图像文件。评论515可以代表由用户在预览用户界面134A内生成的评论。部分510代表与评论515相关联的预览文档505的选定部分。在这种情况下,该关联可以基于与预览文档505相关联的位置坐标。针对部分510的位置坐标是指地铁图图例。
图6描绘预览用户界面134A内的预览协作文档的示例,该预览协作文档是PDF文档。预览文档605由可以包括可填充字段的PDF文档的渲染图形图像表示。可填充字段610表示内容对象119的图形表示,其是可填充字段。预览用户界面134A显示可填充字段610作为用户可以与其交互的字段。可填充字段610可以基于相应内容对象119的属性来格式化和显示。如果用户在可填充字段610内输入内容,则预览用户界面134A可以将输入文本显示在可填充字段410本身内或作为评论615显示在被显示的预览文档605的边距内。
在实施例中,由预览用户界面134A呈现的渲染图形图像可以允许用户输入与协作文档和/或所显示的内容对象119有关的内容。例如,用户可以能够通过突出显示协作文档的文本或渲染图形图像的一部分创建新评论。用户还可以通过将附加文本作为回复消息添加到评论中来编辑现有评论。再次参考图4,文本框430图示示例文本框,其中用户可以通过以回复消息的形式添加附加文本来编辑现有评论。
参考图3A,在块306处,处理设备可以经由预览用户界面134A接收与协作文档的一部分相关联的内容。例如,用户可以通过选择在评论415内显示的解析按钮435将内容输入到现有评论415中。在选择解析按钮435之后,用户可以在文本框430中输入文本以便于向现有评论415添加附加评论。在一个实施例中,预览用户界面134A可以在文本框430处接收用户的输入,并且然后将输入的内容发送到内容管理平台125A。然后内容管理平台125A可以将输入的内容中继到内容对象处理组件129A,然后该内容对象处理组件129A可以更新与评论415相关联的内容对象119。内容对象处理组件129A可以将具有相关联的用户ID和时间戳的输入的内容作为附加文本添加到内容对象119中。
由用户提供的内容的另一示例可以包括用于创建新评论的输入。在实施例中,用户可以在预览用户界面134A内突出显示文本或渲染图形图像的一部分,并选择添加新评论。再次参考图4,突出显示的文本440是用户在预览用户界面134A内突出显示所显示的文本的一部分并创建新评论445的示例。预览用户界面134A可以将输入的内容发送到内容管理平台125A。在此示例中,输入的内容可以包括生成新评论的请求,具有作为“请将此更改为“数字营销”的输入文本、作为用户B的相关联的协作者、时间戳11:26AM、并且与以“与披露方有关的信息”开头的突出显示的段落相关联的位置锚点属性。内容管理平台125A可以接收输入请求,并将该请求发送到内容对象处理组件129A。然后内容对象处理组件129A可以生成新内容对象119,该新内容对象119包含所接收的输入请求和与所请求的新评论相关联的属性。
在实施例中,在生成新内容对象119或更新现有内容对象119时,内容对象处理组件129A可以生成内容对象119的集合的更新的渲染图形图像,并通知内容管理平台125A。内容管理平台125A可以更新协作文档的渲染图形图像以包括内容对象119的集合的更新的图形表示,并且发送更新的渲染图形图像以在预览用户界面134A中呈现。另外,如果任何预览用户界面134B-134Z当前正在显示协作文档的预览,则内容管理平台125A可以发送协作文档的更新的图形图像以在预览用户界面134B-134Z中呈现。通过这样做,内容管理平台125A可以能够将更新推送到正在预览用户界面134a-134Z内查看协作文档的每个客户端设备130A-130Z。
在另一个实施例中,当用户输入从预览用户界面134A发送到内容管理平台125A时,预览用户界面134A可以本地更新协作文档的渲染图形图像和渲染内容项119(块308)。
再次参考图3A,在块308处,处理设备可以生成协作文档的新版本,该新版本包括从预览用户界面134A接收到的输入内容(块308)。在实施例中,在创建新内容对象119或更新现有内容对象119时,内容管理平台125A可以发起协作文档的新版本的生成。内容管理平台125A可以分别从文档处理组件127A和内容对象处理组件129A请求与从数据存储114当前存储的协作文档相关联的文档对象和更新的内容对象119的集合。
文档处理组件127A可以从数据存储114中检索构成当前存储的协作文档的文档对象的集合。如前所述,数据存储114可以包含如以第三方格式接收到的协作文档,以及表示协作文档内的数据对象的提取的文档对象的集合。例如,如果协作文档是Microsoft Word文档,则Microsoft Word文档可以作为文本文档115存储在数据存储114中。在实施例中,文档处理组件127A可以将检索到的文档对象的集合发送给内容管理平台125A。内容管理平台125A可以使用检索到的文档对象的集合来生成协作文档的新版本以及更新的内容对象的集合。
内容对象处理组件129A可以从数据存储114中检索更新的内容对象119的集合。在实施例中,内容对象处理组件129A可以将更新的内容对象119的集合格式化为第三方应用兼容对象。例如,如果协作文档是Microsoft Word文档,则内容对象处理组件129A可以使用诸如Microsoft Word API或OpenXML APIs库的存储的库,以生成表示通过由更新的内容对象119的集合表示的每个评论和/或注释的诸如OpenXML元素的Microsoft Word兼容的对象。然后内容对象处理组件129A可以将表示更新的内容对象119的集合的第三方应用兼容对象发送到内容管理平台125A。
在实施例中,内容管理平台125A可以将构成当前存储的协作文档的文档对象与表示更新的内容对象119的集合的第三方应用兼容对象相结合,以生成协作文档的新版本,其包括从预览用户界面134A接收到的更新内容。内容管理平台125A可以使用第三方应用库来编译协作文档的新版本。例如,如果协作文档是Microsoft Word文档,则内容管理平台125A可以使用Microsoft Word API来编译构成Microsoft Word文档的各种XML文件和/或其他元素文件。
在生成协作文档的新版本时,内容管理平台125A可以在数据存储114内存储协作文档的新版本。在实施例中,内容管理平台125A可以生成用于协作文档的新版本的新对象,诸如新文本文档115,或者可以用协作文档的新版本替换协作文档的现有版本。在实施例中,数据存储114可以被配置成管理协作文档的多个版本。
在实施例中,内容管理平台125A可以被配置成基于内容对象119的集合是否包含新内容对象119或对现有内容对象119的更改来周期性地生成协作文档的新版本。例如,内容管理平台125A可以周期性地(例如,每1、5或10分钟)检查对内容对象119的集合的更改。另外,内容管理平台125A可以在接收到用于预览协作文档的新请求或用于下载协作文档的请求时发起协作文档的新版本的生成。例如,如果预览用户界面134B发送对协作文档的请求,则内容管理平台125A可以发起协作文档的最新版本的生成,以便为预览用户界面134B生成协作文档的最新图形表示。
当生成协作文档的新版本时,内容对象处理组件129A可以将协作文档的内容对象119的集合保留在数据存储114内。保留内容对象119的集合节省计算资源,因为内容对象处理组件129A不必重复提取数据对象并生成用于预览请求的对应内容对象119的过程。在实施例中,如果协作者上载可以包括诸如附加评论或注释的附加数据对象的协作文档的新版本,则内容管理平台125A可以合并来自新上载的协作文档的附加对象和与现有协作对象相对应的内容对象119的现有集合。合并附加数据对象和内容对象119的现有集合可以包括更新内容对象119的现有集合内的内容和对内容对象119的现有集合进行重复数据删除的过程。
图3B描绘根据一些实施方式的用于在预览用户界面134A内呈现协作文档的渲染图形图像,接收来自用户的内容输入并将内容输入提供给内容管理平台以使得生成包括来自用户的内容输入的协作文档的新版本的方法350的流程图。方法350可以由客户端设备130A-130Z的一个或多个处理设备执行的客户端应用执行。
在块352处,客户端设备130A可以接收对存储在基于云的环境110内的协作文档的用户请求。该文件可以表示任何存储的文档,其包括但不限于协作幻灯片演示113、协作文本文档115、协作电子表格116、协作图像文档117或以第三方应用格式存储在数据存储114中的任何其他协作文档。可以在客户端设备130A上的被配置成与内容管理平台125A进行通信的预览用户界面134A或任何其他用户界面或应用内生成接收到的用户请求。客户端设备130A可以将用户请求发送到内容管理平台125A。
在实施方式中,内容管理平台125A可以将协作文档发送回客户端设备130A。在块354处,客户端设备130A可以在预览用户界面134A中呈现协作文档的渲染图形图像,其表示协作文档的如同在第三方应用内打开的视图。在实施方式中,内容管理平台125A可以将协作文档作为构成协作文档的一个或多个文档对象的集合和内容对象119的集合发送到客户端设备130A。客户端设备130A可以被配置成从一个或多个文档对象生成文档对象的一个或多个图形表示。一个或多个图形表示可以被格式化以看起来像文档对象的图形表示,如同它们会出现在与协作文档相关联的第三方应用内。
在实施方式中,客户端设备130A可以生成内容对象119的图形表示,以看起来像协作文档的相关联的第三方应用中的对象。例如,客户端设备130A可以生成Microsoft Word评论的图形表示,以看起来像Microsoft Word评论,如同它们会出现在Microsoft Word应用内一样。客户端设备130A可以组合文档对象的图形表示和内容对象119的图形表示以生成协作文档的渲染图形图像以在预览用户界面134A内查看。可替选地,协作文档的渲染图形图像可以由内容管理平台125A生成,并且被提供给客户端设备130A以在预览用户界面134A内呈现。
再次参考图3B,在块356处,客户端设备130A可以经由预览用户界面134A接收与协作文档的一部分相关联的内容。在实施方式中,客户端设备130A可以生成表示接收到的内容的对应内容对象119。可以基于当接收到内容时选择的部分的位置坐标将对应内容对象119与协作文件的位置坐标相关联。
在块358处,客户端设备130A可以将内容提供给内容管理平台125A,用于生成包括与文件的该部分相关联的内容的文件的新版本。在实施方式中,客户端设备130A可以将内容作为可以包括相关联的部分的位置坐标的新内容对象119发送到内容管理平台125A。内容对象119可以被格式化使得与协作文件的第三方应用格式兼容。例如,如果协作文件是Microsoft Word文档,则生成的新内容对象119可以是Microsoft Word格式化的评论对象。
在实施方式中,内容管理平台125A可以从客户端设备130A接收内容,并且可以生成包括新内容对象119的协作文件的新版本。
图7描绘根据一些实施方式的用于使用新协作文档来更新内容对象119的集合的示例流程图,该新协作文档包含与内容对象119的集合相对应的新的/更新的数据对象。在块702处,处理设备可以接收用于上载具有第三方应用格式的协作文档的新版本的请求。例如,基于云的环境110存储现有协作文档(Microsoft Word文档),并且内容管理平台125A可以接收Microsoft Word文档的新版本,其可以包含附加内容或包括更新评论的更新内容。协作文档的新版本可以由客户端设备130A发送,其中客户端设备130A的用户可能已经使用第三方应用(诸如Microsoft Word或任何其他兼容的第三方应用)生成协作文档的新版本。
在块704处,处理设备可以从协作文档的新版本中提取字节并将其存储在数据存储114中。在实施例中,内容管理平台125A可以将协作文档的新版本的字节发送到文档处理组件127A。然后,文档处理组件127A可以从协作文档的新版本中提取并标识文档对象的更新集合。例如,如果协作文档是Word文档,则文档处理组件127A可以使用针对Word文档格式指定的规则来标识和存储文档对象的更新集合。文档对象的更新集合可以用于生成更新的协作文档的图形表示。
在实施例中,内容管理平台125A可以将协作文档的新版本的字节发送到内容对象处理组件129A以标识与内容对象119的现有集合相对应的数据对象的集合。例如,如果内容对象119的集合是指协作文档内的评论,则内容对象处理组件129A可以从协作文档的新版本的字节中标识协作文档的新版本内的评论。在实施例中,文档处理组件127A可以使用特定于与协作文档的新版本相关联的第三方应用格式的规则来标识数据对象的集合。
一旦标识出数据对象的集合,则处理设备可以将来自协作文件的新版本的数据对象的集合与对应于协作文件的当前版本的内容对象119的现有集合进行比较(块706)。执行比较以用基于协作文档的新版本的现有内容更新现有内容对象119,并生成与协作文档的新版本内的数据对象相对应的新内容对象119。在实施例中,内容对象处理设备129A可以通过使用存在于数据对象和内容对象119两者中的可用属性来确定可以通过删除重复来合并的潜在匹配对象,将来自协作文档的新版本的数据对象的集合与内容对象119的现有集合进行比较。
在块708处,处理设备确定在来自协作文档的新版本的数据对象与现有内容对象119之间是否存在匹配。在实施例中,用于将数据对象与现有内容对象进行匹配的属性可以包括但不限于内容对象标识符、用户ID、数据对象和内容对象119内的文本、来自数据对象和内容对象119的位置信息、任何其他可用属性或多个属性的组合。
在一个这样的示例中,内容对象处理组件129A可以使用内容对象标识符将数据对象与现有内容对象进行匹配。每个内容对象119包含在第一次创建内容对象119时生成的唯一标识符。当内容管理平台125A创建协作文档的新版本时,然后可以将内容对象标识符导出到协作文档。内容对象标识符可以作为第三方应用未实现的不可见属性嵌入到第三方应用格式中。如果来自协作文档的新版本的数据对象是例如由内容管理平台125A先前管理的评论,则该数据对象可以具有与特定内容对象119中的内容对象标识符相匹配的内容对象标识符。
如果来自协作文档的新版本的数据对象不包含内容对象标识符,则可以使用数据对象的相关联的用户ID将数据对象与特定内容对象进行比较。例如,如果数据对象是评论,则该评论可以包含作者属性,该作者属性可以用于将数据对象与对应内容对象119进行匹配。另外,数据对象内的文本内容也可以用于将数据对象与对应内容对象119进行匹配。也可以组合使用其他属性来确定是否存在匹配。例如,如果用户ID、评论内的文本、时间戳和文档的关联部分匹配,则内容对象处理组件129A可以确定数据对象和对应内容对象之间的匹配。内容对象处理组件129A还可被配置成部分地匹配属性。例如,用户ID、数据对象的时间戳和对应内容对象可以匹配,但两者之间的评论文本可能仅部分匹配,并且位置信息也可能不同。这可能指示匹配,但是数据对象包含更新的文本,或相反已经基于对更改评论的定位位置的协作文档的其他编辑被更新。
如果处理设备确定存在匹配,则处理设备进入块714以确定是否需要更新匹配内容对象119内的内容。例如,如果内容对象处理组件129A确定匹配但还确定评论内的文本已更改和/或协作文档内的评论的定位位置已更改,则内容对象处理组件129A可以更新存储在内容对象119内的数据。
在块716处,处理设备更新内容对象119内的数据以反映来自协作文档的新版本的新数据对象内的数据。在实施例中,内容对象处理组件129A更新内容对象119。在块720处,处理设备将更新的内容对象119添加到内容对象119的更新集合,其是指用于协作文档的新版本的内容对象。在实施例中,内容对象处理组件129A可以保存更新的内容对象119,并将更新的内容对象119添加到更新的内容对象的集合中。
再次参考714,如果处理设备确定新数据对象和匹配内容对象119中的数据相同,则处理设备直接进入块720,以将现有内容对象119添加到更新的内容对象119的集合。
再次参考块708,如果处理设备确定数据对象与现有内容对象119之间不存在匹配,则处理设备进入块710。在块710处,处理设备确定数据对象是否是新数据对象。例如,内容对象处理组件129A可以确定数据对象是指先前未呈现协作文档的当前版本的新评论。然后内容对象处理组件129A可以进入块718。在块718处,内容对象处理组件129A可以生成指新评论或其他内容的新内容对象119。新生成的内容对象119可以包括来自所标识的数据对象的每个属性,诸如用户ID、评论文本、时间戳、位置信息以及数据对象中存在的任何其他属性。在生成新内容对象119之后,内容对象处理组件129A可以将新内容对象119存储在数据存储114内,并将新内容对象添加到内容对象119的新集合(块720)。
如果在块710处,处理设备确定不存在新数据对象,但是存在还没有被匹配的现有内容对象,则处理设备进入块712。在块712处,处理设备更新当前内容对象119的状态,以反映其在协作文档的新版本中的状态。
在实施例中,内容对象处理组件129A可以被配置成去除在协作文档的新版本内当前不存在的当前内容对象119的相关联的位置信息。通过这样做,当前内容对象119可以在预览用户界面134A内显示为“浮动”评论。浮动评论可能会警告协作者该评论以前已删除,而没有从协作文档中完全删除它的存在。此特征可以防止使用第三方应用的协作者意外删除内容对象119。在另一个实施例中,内容对象处理组件129A可以更新当前内容对象119内的显示属性,当在预览用户界面134A内呈现该显示属性时,其与其他评论不同地显示。例如,当前内容对象可以用不同的颜色变灰或画阴影以指示该评论已从先前版本中删除。在又一个实施例中,内容对象处理组件129A可以从数据存储114中删除当前内容对象。可以基于协作文档所有者或其他协作者用户偏好来配置内容对象处理组件129A,以处理已从协作文档的更新版本中去除的内容对象119。
在块720处,将新的或更新的内容对象119添加到更新的内容对象119的集合中。然后,处理设备在块706处针对要比较的每个内容对象和数据对象重复该过程。在已编译更新的内容对象119的集合之后,将更新的内容对象119的集合保存在数据存储114中,并且在生成用于在预览用户界面134A-134Z内的预览或用于下载到客户端设备130A-130Z的协作文档的图形表示时,将更新的内容对象119的集合与协作文档的新版本相关联以供将来检索。
图8描绘根据本公开的一个或多个方面操作的示例计算系统的框图。在各种说明性示例中,计算机系统800可以与图1的系统架构100内的计算设备中的任一个相对应。在一个实现方式中,计算机系统800可以是服务器130A-130Z中的每一个。在另一实现方式中,计算机系统800可以是客户端设备130A-130Z中的每一个。
在某些实现方式中,计算机系统800可以(例如,经由诸如局域网(LAN)、内联网、外联网、或互联网的网络)连接到其它计算机系统。计算机系统800可以在客户端-服务器环境中以服务器或客户端计算机的身份操作,或者在对等或分布式网络环境中作为对等计算机操作。计算机系统800可以由能够执行指定要由该设备采取的动作的一组指令(顺序的或其它的)的个人计算机(PC)、平板PC、机顶盒(STB)、个人数字助理(PDA)、蜂窝电话、web设备、服务器、网络路由器、交换机或桥接器、或任何设备来提供。另外,术语“计算机”应当包括单独地或联合地执行一组(或多组)指令,以执行本文中描述的方法中的任何一个或多个的计算机的任何集合。
在另一个方面中,计算机系统800可以包括可以经由总线808彼此通信的处理设备802、易失性存储器804(例如,随机存取存储器(RAM))、非易失性存储器806(例如,只读存储器(ROM)或电可擦除可编程ROM(EEPROM))、和数据存储设备816。
处理设备802可以由诸如以下各项目的一个或多个处理器提供:通用处理器(诸如例如,复杂指令集计算(CISC)微处理器、精简指令集计算(RISC)微处理器、甚长指令字(VLIW)微处理器、实现其它类型的指令集的微处理器,或实现各种类型的指令集的组合的微处理器)或专用处理器(诸如例如,专用集成电路(ASIC)、现场可编程门阵列(FPGA)、数字信号处理器(DSP)、或网络处理器)。
计算机系统800还可以包括网络接口设备822。计算机系统800还可以包括视频显示单元810(例如,LCD)、字母数字输入设备812(例如,键盘)、光标控制设备814(例如,鼠标)、和信号生成设备820。
数据存储设备816可以包括非暂时性计算机可读存储介质824,在其上可以存储对本文中描述的方法或功能中的任何一个或多个进行编码的指令826,该数据存储设备816包括实现用于实现本文中描述的方法的图1的基于云的内容管理平台125(125A-125Z)和/或用户界面134(134A-134Z)。
指令826还可以在其由计算机系统800执行期间完全地或部分地驻留在易失性存储器804内和/或在处理设备802内,因此,易失性存储器804和处理设备802还可以构成机器可读存储介质。
虽然计算机可读存储介质824在说明性示例中作为单个介质被示出,但是术语“计算机可读存储介质”应当包括存储一组或多组可执行指令的单个介质或多个介质(例如,集中式或分布式数据库,和/或相关联的高速缓存和服务器)。术语“计算机可读存储介质”还应当包括能够存储一组指令或者对用于由计算机执行的一组指令进行编码的任何有形介质,所述指令使计算机执行本文中描述的方法中的任何一个或多个。术语“计算机可读存储介质”应当包括但不限于固态存储器、光介质、和磁介质。
在前面的描述中,阐述了许多细节。然而,对于受益于本公开的本领域的普通技术人员而言将显而易见的是,能够在没有这些具体细节的情况下实践本公开。在一些情况下,众所周知的结构和设备是以框图形式而不是详细地示出,以便避免使本公开模糊。
已经在对计算机存储器内的数据比特的操作的算法和符号表示方面呈现了详细描述的一些部分。这些算法描述和表示是由数据处理领域的技术人员使用来最有效地将其工作的实质传达给本领域的其它技术人员的手段。算法在这里且一般地被认为是导致期望结果的步骤的自相一致序列。这些步骤是要求物理量的物理操纵的步骤。通常,尽管不一定,然而这些量采取能够被存储、转移、组合、比较并以其它方式操纵的电信号或磁信号的形式。出于通用的原因,有时将这些信号称为比特、值、元素、符号、字符、项、数字等已经证明是方便的。
然而,应当记住的是,所有这些和类似的术语将与适当的物理量相关联并且仅仅是应用于这些量的方便标签。除非像从以下讨论中显而易见的那样具体地陈述,否则应当显而易见的是在整个说明书中,利用诸如“接收”、“显示”、“移动”、“调整”、“替换”、“确定”、“播放”等的术语的讨论指的是计算机系统或类似的电子计算设备的动作和过程,所述计算机系统或类似的电子计算设备将表示为计算机系统的寄存器和存储器内的物理(例如,电子)量的数据操纵并转换成类似地表示为计算机系统存储器或寄存器或其它这种信息存储、传输或显示设备内的物理量的其它数据。
为了说明的简单,方法在本文中被描绘和描述为一系列动作。然而,根据本公开的动作可以以各种次序发生和/或同时发生,并且同时在本文中未呈现和描述其它动作。此外,可能不要求所有图示的动作来实现根据所公开的主题的方法。此外,本领域的技术人员应当理解并显而易见的是,这些方法能可替选地经由状态图或事件被表示为一系列相关状态。附加地,应当显而易的是,本说明书中公开的方法能够被存储在制品上以方便将此类方法输送并转移到计算设备。如本文中所使用的术语“制品”旨在包含可从任何计算机可读设备或存储介质访问的计算机程序。
本公开的某些实现方式还涉及一种用于执行本文的操作的装置。此装置能够被构造用于预定目的,或者它能够包括通过在计算机中存储的计算机程序选择性地激活或者重新配置的通用计算机。这种计算机程序能够被存储在计算机可读存储介质中,所述计算机可读存储介质诸如但不限于包括适合于存储电子指令的软盘、光盘、CD-ROM、和磁光盘的任何类型的盘、只读存储器(ROM)、随机存取存储器(RAM)、EPROM、EEPROM、磁卡或光卡,或任何类型的介质。
贯穿本说明书对“一个实现方式”或“实现方式”的参考意味着连同该实现方式一起描述的特定特征、结构或特性被包括在至少一个实现方式中。因此,短语“在一个实现方式中”或“在实现方式中”贯穿本说明书在各个地方中的出现不一定全部都参考相同的实现方式。此外,术语“或”旨在意指包含性“或”而不是排他性“或”。此外,单词“示例”或“示例性”在本文中用于意指用作示例、实例或图示。在本文中描述为“示例性”的任何方面或设计不一定被解释为优于其它方面或设计为优选的或有利的。相反,单词“示例”或“示例性”的使用旨在以具体方式呈现构思。
应当理解的是,以上描述旨在为说明性的,而不是限制性的。在阅读和理解以上描述后,许多其它实现方式对于本领域的技术人员而言将是显而易见的。因此,应当参考所附权利要求以及此类权利要求所赋予的等同物的完全范围来确定本公开的范围。
除以上描述之外,可以给用户提供有允许用户关于本文中描述的系统、程序或特征是否并何时可以使得能够收集用户信息(例如,关于用户的社交网络、社交动作或活动、专业、用户的偏好、或用户的当前位置的信息)并且用户是否被从服务器发送了内容或通信做出选择的控制。此外,某些数据可以在它被存储或者使用之前被以一个或多个方式处理,使得个人可识别的信息被移除。例如,可以处理用户的身份,使得对用户来说不能够确定个人可识别的信息,或者用户的地理位置可以在获得位置信息的情况下被一般化(诸如到城市、邮政编码、或州级别),使得不能够确定用户的特定位置。因此,用户可以具有对收集关于用户的什么信息、如何使用该信息并且向用户提供什么信息的控制。

Claims (25)

1.一种方法,包括:
由内容管理平台接收对以第三方应用格式存储在所述内容管理平台内的文件的请求;
由所述内容管理平台使所述文件的渲染图形图像呈现在客户端设备上的预览用户界面内,其中,所述文件的所述渲染图形图像表示所述文件的如同在第三方应用内打开的视图;
经由所述预览用户界面接收与所述文件的一部分相关联的内容;以及
由所述内容管理平台生成所述文件的新版本,所述文件的新版本包括与所述文件的所述一部分相关联的内容,所述文件的新版本具有所述第三方应用格式。
2.根据权利要求1所述的方法,其中,所述第三方应用格式是文字处理应用格式、电子表格应用格式文档、幻灯片演示应用格式、绘图演示应用格式、图形文件、视频文件、3D渲染文件或计算机辅助设计渲染文件中的一种。
3.根据权利要求1所述的方法,其中,使所述文件的所述渲染图形图像呈现在所述客户端设备上的所述预览用户界面内包括:
基于与所述第三方应用相关联的一个或多个规则从所述文件生成多个字节的一个或多个渲染图像;从所述多个字节的所述一个或多个渲染图像生成所述文件的渲染图形图像,其中所述文件的渲染图形图像表示所述文件的如同在所述第三方应用内打开的视图;以及
将所述文件的渲染图形图像提供给所述客户端设备以在所述预览用户界面内呈现。
4.根据权利要求1所述的方法,其中,所述客户端设备上的所述预览用户界面允许所述客户端设备的用户执行突出显示在所述渲染图形图像内显示的文本、使用位置坐标突出显示所述渲染图形图像的一部分、创建与所述渲染图形图像的一部分相关联的新评论以及编辑现有评论中的一个或多个动作。
5.根据权利要求1所述的方法,其中,接收对以所述第三方应用格式存储在所述内容管理平台内的所述文件的请求包括:
从所述文件中提取表示一个或多个评论的数据对象;
在所述内容管理平台内生成表示来自于所述文件的一个或多个评论的一个或多个内容对象;并且
其中,提供所述文件的渲染图形图像以在所述客户端设备上的所述预览用户界面内呈现包括:生成并提供表示与所述渲染图形图像的一个或多个部分相关联的一个或多个内容对象的一个或者多个渲染图像。
6.根据权利要求1所述的方法,其中,接收与所述文件的所述一部分相关联的内容包括:
生成包含接收到的所述内容的内容对象;和
基于所述文件的所述一部分在所述文件的渲染图像内的位置坐标,将所述内容对象与所述文件的所述一部分相关联。
7.根据权利要求1所述的方法,其中,生成包括与所述文件的所述一部分相关联的内容的所述文件的新版本包括:
检索表示当前存储在所述内容管理平台内的所述文件的内容的多个字节;
生成表示与所述一部分相关联的所述内容的一个或多个新字节,其中所述一个或多个新字节基于所述第三方应用格式被格式化;以及
生成所述文件的新版本,所述文件的新版本包括来自所述文件的所述多个字节以及表示与所述一部分相关联的所述内容的所述一个或多个新字节。
8.根据权利要求1所述的方法,进一步包括:
接收用于存储所述文件的第二版本的请求,其中所述文件的第二版本包含更新内容并且以所述第三方应用格式被格式化;
从所述文件的第二版本中提取表示所述更新内容的新数据对象;
将所述文件的第二版本的新数据对象与来自所述内容管理平台内存储的所述文件的现有数据对象合并以生成合并的数据对象的集合;以及
在所述内容管理平台中存储所述文件的第二版本,所述文件的第二版本包括所述合并的数据对象的集合。
9.根据权利要求8所述的方法,进一步包括:
接收用于预览存储在所述内容管理平台内的所述文件的第二版本的请求;
生成所述文件的第二版本的渲染图形图像,所述渲染图形图像表示所述文件的第二版本的如同在所述第三方应用内打开的视图;
其中,所述文件的第二版本的渲染图形图像包括所述更新内容的渲染图像;以及
提供所述文件的渲染图形图像,以在所述客户端设备上的预览用户界面中呈现。
10.一种存储指令的非暂时性机器可读存储介质,所述指令在被执行时使处理设备执行包括以下的操作:
接收对以第三方应用格式存储在内容管理平台内的文件的请求;
由所述内容管理平台使所述文件的渲染图形图像呈现在客户端设备上的预览用户界面内,其中,所述文件的渲染图形图像表示所述文件的如同在第三方应用内打开的视图;
经由所述预览用户界面接收与所述文件的一部分相关联的内容;以及
生成包括与所述文件的所述一部分相关联的所述内容的所述文件的新版本,所述文件的新版本具有所述第三方应用格式。
11.根据权利要求10所述的非暂时性机器可读存储介质,其中,生成表示所述文件的如同在第三方应用内打开的视图的所述文件的渲染图形图像包括:
基于与所述第三方应用相关联的一个或多个规则从所述文件生成多个字节的一个或多个渲染图像;以及
从所述多个字节的一个或多个渲染图像生成所述文件的渲染图形图像,其中所述文件的渲染图形图像表示所述文件的如同在所述第三方应用内打开的视图。
12.根据权利要求10所述的非暂时性机器可读存储介质,其中,所述客户端设备上的所述预览用户界面允许所述客户端设备的用户执行突出显示在所述渲染图形图像内显示的文本、使用位置坐标突出显示所述渲染图形图像的一部分、创建与所述渲染图形图像的一部分相关联的新评论以及编辑现有评论中的一个或多个动作。
13.根据权利要求10所述的非暂时性机器可读存储介质,其中,接收对以所述第三方应用格式存储在所述内容管理平台内的所述文件的请求包括:
从所述文件中提取表示一个或多个评论的数据对象;
在所述内容管理平台内生成表示来自所述文件的所述一个或多个评论的一个或多个内容对象;并且
其中,提供所述文件的渲染图形图像以在所述客户端设备上的所述预览用户界面内呈现包括:生成并提供表示与所述渲染图形图像的一个或多个部分相关联的所述一个或多个内容对象的一个或者多个渲染图像。
14.根据权利要求10所述的非暂时性机器可读存储介质,其中,接收与所述文件的所述一部分相关联的内容包括:
生成包含接收到的所述内容的内容对象;以及
基于所述文件的所述一部分在所述文件的渲染图像内的位置坐标,将所述内容对象与所述文件的所述一部分相关联。
15.根据权利要求10所述的非暂时性机器可读存储介质,其中,生成包括与所述文件的所述一部分相关联的内容的所述文件的新版本包括:
检索表示当前存储在所述内容管理平台内的所述文件的内容的多个字节;
生成表示与所述一部分相关联的所述内容的一个或多个新字节,其中所述一个或多个新字节基于所述第三方应用格式被格式化;以及
生成所述文件的新版本,所述文件的新版本包括来自所述文件的所述多个字节以及表示与所述一部分相关联的所述内容的所述一个或多个新字节。
16.根据权利要求10所述的非暂时性机器可读存储介质,进一步包括:
接收用于存储所述文件的第二版本的请求,其中所述文件的第二版本包含更新内容并且以所述第三方应用格式被格式化;
从所述文件的第二版本中提取表示所述更新内容的新数据对象;
将所述文件的第二版本的新数据对象与来自所述内容管理平台内存储的所述文件的现有数据对象合并以生成合并的数据对象的集合;以及
在所述内容管理平台中存储所述文件的第二版本,所述文件的第二版本包括所述合并的数据对象的集合。
17.根据权利要求16所述的非暂时性机器可读存储介质,包括附加存储介质指令,所述附加存储介质指令在被执行时进一步使所述处理设备执行包括以下的操作:
接收用于预览存储在所述内容管理平台内的所述文件的第二版本的请求;
生成所述文件的第二版本的渲染图形图像,所述渲染图形图像表示所述文件的第二版本的如同在所述第三方应用内打开的视图;
其中,所述文件的第二版本的渲染图形图像包括所述更新内容的渲染图像;以及
提供所述文件的渲染图形图像,以在所述客户端设备上的预览用户界面内呈现。
18.一种系统,包括:
存储器;和
处理设备,所述处理设备可操作地耦合所述存储器以:
接收对以第三方应用格式存储在内容管理平台内的文件的请求;
使所述文件的渲染图形图像呈现在客户端设备上的预览用户界面内,其中,所述文件的渲染图形图像表示所述文件的如同在所述第三方应用内打开的视图;
经由所述预览用户界面接收与所述文件的一部分相关联的内容;以及
生成所述文件的新版本,所述文件的新版本包括与所述文件的所述一部分相关联的所述内容,所述文件的新版本具有所述第三方应用格式。
19.根据权利要求18所述的系统,其中,使所述文件的渲染图形图像呈现在所述客户端设备上的所述预览用户界面内包括:
基于与所述第三方应用相关联的一个或多个规则从所述文件生成多个字节的一个或多个渲染图像;
从所述多个字节的一个或多个渲染图像生成所述文件的渲染图形图像,其中所述文件的渲染图形图像表示所述文件的如同在所述第三方应用内打开的视图;以及
将所述文件的渲染图形图像提供给所述客户端设备,以在所述预览用户界面内呈现。
20.根据权利要求18所述的系统,其中,接收对以所述第三方应用格式存储在所述内容管理平台内的所述文件的请求包括:
从所述文件中提取表示一个或多个评论的数据对象;
在所述内容管理平台内生成表示来自所述文件的一个或多个评论的一个或多个内容对象;并且
其中,提供所述文件的渲染图形图像以在所述客户端设备上的所述预览用户界面内呈现包括:生成并提供表示与所述渲染图形图像的一个或多个部分相关联的一个或多个内容对象的一个或者多个渲染图像。
21.根据权利要求18所述的系统,其中,所述处理设备进一步:
接收用于存储所述文件的第二版本的请求,其中所述文件的第二版本包含更新内容并且以所述第三方应用格式被格式化;
从所述文件的第二版本中提取表示所述更新内容的新数据对象;
将所述文件的第二版本的新数据对象与来自所述内容管理平台内存储的所述文件的现有数据对象合并以生成合并的数据对象的集合;并且
在所述内容管理平台中存储所述文件的第二版本,所述文件的第二版本包括所述合并的数据对象的集合。
22.一种方法,包括:
由客户端设备接收对以第三方应用格式存储在内容管理平台内的文件的请求;
由所述客户端设备在预览用户界面内呈现所述文件的渲染图形图像,其中,所述文件的渲染图形图像表示所述文件的如同在所述第三方应用内打开的视图;
经由所述预览用户界面接收与所述文件的一部分相关联的内容;以及
由所述客户端设备向所述内容管理平台提供与所述文件的所述一部分相关联的所述内容以使得生成所述文件的新版本,所述文件的新版本包括与所述文件的所述一部分相关联的所述内容并且具有所述第三方应用格式。
23.根据权利要求22所述的方法,其中,接收与所述文件的所述一部分相关联的所述内容包括:
生成包含接收到的所述内容的内容对象;以及
基于所述文件的所述一部分在所述文件的渲染图像内的位置坐标,将所述内容对象与所述文件的所述一部分相关联。
24.根据权利要求22所述的方法,其中,在所述预览用户界面内呈现所述文件的渲染图形图像包括:
从服务器接收表示所述文件的多个字节;
基于与所述第三方应用相关联的一个或多个规则从所述文件生成所述多个字节的一个或多个渲染图像;以及
从所述多个字节的一个或多个渲染图像在所述预览用户界面内生成并且呈现所述文件的渲染图形图像,其中所述文件的渲染图形图像表示所述文件的如同在所述第三方应用内打开的视图。
25.根据权利要求22所述的方法,其中,所述预览用户界面允许所述客户端设备的用户执行突出显示在所述渲染图形图像内显示的文本、使用位置坐标突出显示所述渲染图形图像的一部分、创建与所述渲染图形图像的一部分相关联的新评论以及编辑现有评论中的一个或多个动作。
CN201880078488.6A 2017-12-12 2018-09-14 在基于云的环境中管理对二进制文件预览视图的评论 Active CN111433759B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410622318.7A CN118535541A (zh) 2017-12-12 2018-09-14 在基于云的环境中管理对二进制文件预览视图的评论

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/839,803 US11295060B2 (en) 2017-12-12 2017-12-12 Managing comments on binary files preview view in a cloud-based environment
US15/839,803 2017-12-12
PCT/US2018/051226 WO2019118033A1 (en) 2017-12-12 2018-09-14 Managing comments on binary files preview view in a cloud-based environment

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202410622318.7A Division CN118535541A (zh) 2017-12-12 2018-09-14 在基于云的环境中管理对二进制文件预览视图的评论

Publications (2)

Publication Number Publication Date
CN111433759A true CN111433759A (zh) 2020-07-17
CN111433759B CN111433759B (zh) 2024-06-11

Family

ID=64902365

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202410622318.7A Pending CN118535541A (zh) 2017-12-12 2018-09-14 在基于云的环境中管理对二进制文件预览视图的评论
CN201880078488.6A Active CN111433759B (zh) 2017-12-12 2018-09-14 在基于云的环境中管理对二进制文件预览视图的评论

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202410622318.7A Pending CN118535541A (zh) 2017-12-12 2018-09-14 在基于云的环境中管理对二进制文件预览视图的评论

Country Status (4)

Country Link
US (2) US11295060B2 (zh)
EP (2) EP3607461A1 (zh)
CN (2) CN118535541A (zh)
WO (1) WO2019118033A1 (zh)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11216568B2 (en) * 2018-01-10 2022-01-04 Dropbox, Inc. Server-side rendering password protected documents
US11249950B2 (en) 2018-04-27 2022-02-15 Dropbox, Inc. Aggregated details displayed within file browser interface
US11112948B2 (en) * 2018-04-27 2021-09-07 Dropbox, Inc. Dynamic preview in a file browser interface
US11151086B2 (en) 2018-04-27 2021-10-19 Dropbox, Inc. Comment previews displayed in context within content item
US11270069B1 (en) * 2018-04-30 2022-03-08 InVisionApp Inc. Collaboration synchronization across devices
CN111937000B (zh) * 2018-07-23 2024-07-02 谷歌有限责任公司 基于用户评论的智能文档通知
US12056436B2 (en) * 2019-02-18 2024-08-06 Pro Quick Draw LLC Document transformation between program formats and templates system and method
US10757171B1 (en) * 2019-05-03 2020-08-25 Microsoft Technology Licensing, Llc Merge trees for collaboration
US20220272058A1 (en) * 2019-08-02 2022-08-25 Jonathan S. Woods System and Method for Electronic Messaging
US11544215B2 (en) * 2019-09-05 2023-01-03 Visa International Service Association System, method, and computer program product for generating a file structure
US11074400B2 (en) * 2019-09-30 2021-07-27 Dropbox, Inc. Collaborative in-line content item annotations
JP7443779B2 (ja) * 2020-01-16 2024-03-06 富士フイルムビジネスイノベーション株式会社 情報処理装置及び情報処理プログラム
US10810361B1 (en) * 2020-02-09 2020-10-20 Bhaskar Mannargudi Venkatraman Role-agnostic interaction management and real time workflow sequence generation from a live document
CN111651416B (zh) * 2020-06-04 2023-06-13 携程旅游信息技术(上海)有限公司 Sketch项目文件上传预览方法、系统、设备及介质
US11763258B2 (en) 2021-12-29 2023-09-19 Slack Technologies, Llc Workflows for documents
US12021805B2 (en) 2021-12-31 2024-06-25 Salesforce, Inc. Collaboration software development kit
US11727190B1 (en) * 2022-01-31 2023-08-15 Salesforce, Inc. Previews for collaborative documents
US11538500B1 (en) * 2022-01-31 2022-12-27 Omgiva, LLC Distributed video creation
US12019775B2 (en) 2022-01-31 2024-06-25 Salesforce, Inc. Managing permissions for collaborative shared documents
US11875081B2 (en) 2022-01-31 2024-01-16 Salesforce, Inc. Shared screen tools for collaboration
US20240184976A1 (en) * 2022-12-05 2024-06-06 Saudi Arabian Oil Company Visualizing document annotations in the context of the source application

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101350009A (zh) * 2008-09-05 2009-01-21 中国工商银行股份有限公司 一种协同文档编写系统
CN101983380A (zh) * 2008-03-31 2011-03-02 微软公司 文档的同步协作审阅
US20110258538A1 (en) * 2010-03-31 2011-10-20 Heng Liu Capturing DOM Modifications Mediated by Decoupled Change Mechanism
CN102792244A (zh) * 2010-01-13 2012-11-21 洛克迈特公司 用于增加浏览速度的预览功能
US20140281872A1 (en) * 2013-03-14 2014-09-18 Workshare, Ltd. System for Tracking Changes in a Collaborative Document Editing Environment
US20150082148A1 (en) * 2013-09-13 2015-03-19 Box, Inc. System and method for rendering document in web browser or mobile device regardless of third-party plug-in software
CN106133766A (zh) * 2014-03-18 2016-11-16 谷歌公司 用于计算、应用和显示文档增量的系统和方法
CN106471487A (zh) * 2014-11-24 2017-03-01 谷歌公司 用于使用应用引擎来编辑非本原应用中的文件的系统和方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040221231A1 (en) * 2003-04-30 2004-11-04 Madril Robert John Editing a document within web-based production system
US20060282762A1 (en) * 2005-06-10 2006-12-14 Oracle International Corporation Collaborative document review system
US9176943B2 (en) * 2008-05-12 2015-11-03 Adobe Systems Incorporated Comment presentation in electronic documents
US20100095198A1 (en) * 2008-10-15 2010-04-15 Apple Inc. Shared comments for online document collaboration
US20110258535A1 (en) 2010-04-20 2011-10-20 Scribd, Inc. Integrated document viewer with automatic sharing of reading-related activities across external social networks
US8996985B1 (en) * 2011-03-16 2015-03-31 Google Inc. Online document processing service for displaying comments
US11232481B2 (en) 2012-01-30 2022-01-25 Box, Inc. Extended applications of multimedia content previews in the cloud-based content management system
US9817805B1 (en) * 2014-06-24 2017-11-14 Google Inc. Systems and methods for providing a collaborative document environment
US10417309B2 (en) * 2014-10-16 2019-09-17 Liquidtext, Inc Facilitating active reading of digital documents
US9535883B2 (en) * 2014-10-24 2017-01-03 Dropbox, Inc. Modifying native document comments in a preview
US10042832B1 (en) * 2015-01-16 2018-08-07 Google Llc Systems and methods for stacking marginal annotations
US10013396B2 (en) * 2015-01-29 2018-07-03 Dropbox, Inc. Modifying native documents with formulas in a preview
US10248933B2 (en) * 2015-12-29 2019-04-02 Dropbox, Inc. Content item activity feed for presenting events associated with content items
US10719188B2 (en) * 2016-07-21 2020-07-21 Palantir Technologies Inc. Cached database and synchronization system for providing dynamic linked panels in user interface
US11449470B2 (en) * 2017-06-02 2022-09-20 Tibco Software Inc. Patching JSON documents that contain arrays undergoing concurrent modification
US10657228B1 (en) * 2018-11-06 2020-05-19 Dropbox, Inc. Technologies for integrating cloud content items across platforms

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101983380A (zh) * 2008-03-31 2011-03-02 微软公司 文档的同步协作审阅
CN101350009A (zh) * 2008-09-05 2009-01-21 中国工商银行股份有限公司 一种协同文档编写系统
CN102792244A (zh) * 2010-01-13 2012-11-21 洛克迈特公司 用于增加浏览速度的预览功能
US20110258538A1 (en) * 2010-03-31 2011-10-20 Heng Liu Capturing DOM Modifications Mediated by Decoupled Change Mechanism
US20140281872A1 (en) * 2013-03-14 2014-09-18 Workshare, Ltd. System for Tracking Changes in a Collaborative Document Editing Environment
US20150082148A1 (en) * 2013-09-13 2015-03-19 Box, Inc. System and method for rendering document in web browser or mobile device regardless of third-party plug-in software
CN106133766A (zh) * 2014-03-18 2016-11-16 谷歌公司 用于计算、应用和显示文档增量的系统和方法
CN106471487A (zh) * 2014-11-24 2017-03-01 谷歌公司 用于使用应用引擎来编辑非本原应用中的文件的系统和方法

Also Published As

Publication number Publication date
WO2019118033A1 (en) 2019-06-20
US20190179876A1 (en) 2019-06-13
EP4231193A1 (en) 2023-08-23
EP3607461A1 (en) 2020-02-12
CN111433759B (zh) 2024-06-11
US11295060B2 (en) 2022-04-05
CN118535541A (zh) 2024-08-23
US20220335206A1 (en) 2022-10-20

Similar Documents

Publication Publication Date Title
CN111433759B (zh) 在基于云的环境中管理对二进制文件预览视图的评论
CN111448566B (zh) 在基于云的环境中管理批注
US10936648B2 (en) Generating slide presentations using a collaborative multi-content application
US10783326B2 (en) System for tracking changes in a collaborative document editing environment
US10248933B2 (en) Content item activity feed for presenting events associated with content items
AU2009251763B2 (en) Simultaneous collaborative review of a document
US20150193492A1 (en) Editing sub-section of an electronic document via notification message
US11960525B2 (en) Automatically formatting content items for presentation
KR102549399B1 (ko) 개발자 협업 제어 시스템
US20140310613A1 (en) Collaborative authoring with clipping functionality
US10198411B2 (en) Storing additional document information through change tracking
US20230229857A1 (en) Tracking attribution of content in an online collaborative electronic document
CN115079872B (zh) 一种文档处理方法、装置、设备和介质
US20190294659A1 (en) Embedding a portion of a source content item
US20170060830A1 (en) System and process for generating an internet application
US20150142859A1 (en) Document collections distribution and publishing
Crowther et al. HTML5 in Action
US10627997B1 (en) System and method for highlighting dependent slides while editing master slides of a presentation
US20210133392A1 (en) System and process for generating an internet application
US11119975B2 (en) Digital design application plugin for content updates and delivery
CN116955289A (zh) 一种文件处理方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant