基于上下文动态可调整的内容的制作方法

文档序号:26785808发布日期:2021-09-28 09:57阅读:150来源:国知局
基于上下文动态可调整的内容的制作方法

在本文中所公开的主题总体涉及动态地调整共享文档的内容的专用机器,包括这样的专用机器的计算机化变体以及对这样的变体的改进。具体而言,本公开涉及用于基于文档的接收者的上下文来动态地调整文档的内容的系统和方法。

希望将文档共享给一组接收者的文档作者可能必须手动地调整文档的内容以与所述一组接收者中的特定受众相关。例如,作者可以针对对敏感信息不知情的一些接收者从文档中删除敏感信息。在另一示例中,作者可以添加或者修改与其他接收者相关的其他内容。这样,作者可能必须生成多个文档并且将其发送给所述一组接收者(例如,给老板的电子邮件概要、针对合作伙伴团队的幻灯片以及针对同行工程师的详细文档)。此外,一旦作者已经接收到来自不同接收者的反馈,作者就必须手动地将来自不同版本的反馈重新组合成单个文档。

附图说明

为了容易地识别对任意特定元素或动作的讨论,附图标记中的一个或多个最高有效数位指代首次引入该元素的附图标记。

图l是根据一些示例性实施例的可以部署本公开的联网环境的图解表示。

图2是图示了根据一个示例性实施例的动态内容应用的操作示例的框图。

图3是图示了根据一个示例性实施例的动态内容客户端应用的框图。

图4是图示了根据一个示例性实施例的动态内容服务器应用的框图。

图5是图示了根据一个示例性实施例的用于向多个接收者发布经修改的文档的方法的流程图。

图6是图示了根据一个示例性实施例的用于显示具有为接收者定制的内容的经修改的文档的方法的流程图。

图7是图示了根据一个示例性实施例的用于将文档的版本发布给对应接收者的方法的流程图。

图8是图示了根据一个示例性实施例的用于向接收者发布具有经调整的内容的文档的方法的流程图。

图9是图示了根据一个示例性实施例的用于解锁和显示经修改的文档的先前被阻挡部分的方法的流程图。

图10是图示了根据一个示例性实施例的用于向多个接收者发布经修改的文档的方法的流程图。

图11是图示了根据一个示例性实施例的用于基于经解析的元数据来显示经修改的文档的部分的方法的流程图。

图12图示了根据一个示例性实施例的屏幕截图。

图13图示了根据一个示例性实施例的屏幕截图。

图14图示了根据一个示例性实施例的屏幕截图。

图15图示了根据一个示例性实施例的共享文档的各分支。

图16是根据示例性实施例的计算机系统形式的机器的图解表示,在所述计算机系统内可以执行指令的集合以使得机器执行在本文中所讨论的方法中的任意一种或多种方法。

具体实施方式

“处理器”指代根据控制信号(例如,“命令”、“操作码”、“机器码”、等)来操纵数据值并且产生被应用以操作机器的对应输出信号的任意电路或虚拟电路(由在实际处理器上执行的逻辑仿真的物理电路)。例如,处理器可以是中央处理单元(CPU)、精简指令集计算(RISC)处理器、复杂指令集计算(CISC)处理器、图形处理单元(GPU)、数字信号处理器(DSP)、专用集成电路(ASIC)、射频集成电路(RFIC)或者其任意组合。处理器还可以是具有可以同时执行指令的两个或更多独立处理器(有时被称为“核心”)的多核心处理器。

“信号介质”指代能够存储、编码或承载用于由机器执行的指令的任意无形介质,并且包括数字或模拟通信信号或者其他无形介质以促进对软件或数据的传送。术语“信号介质”应当被理解为包括任意形式的经调制的数据信号、载波等。术语“经调制的数据信号”意指以编码信号中的信息的方式设置或改变其特性中的一个或多个特性的信号。术语“传输介质”和“信号介质”意指相同的事物并且可以在本公开中互换地使用。

“机器存储介质”指代存储可执行指令、例程和/或数据的单个或多个存储设备和/或介质(例如,集中式或分布式数据库,和/或相关联的高速缓存和服务器)。因此,该术语应当被视为包括但不限于:固态存储器以及光和磁介质,包括处理器内部或外部的存储器。机器存储介质、计算机存储介质和/或设备存储介质的具体示例包括非易失性存储器,例如包括半导体存储设备,例如,可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、FPGA和闪存设备;磁盘,诸如内部硬盘和可移动磁盘;磁光盘;以及CD-ROM和DVD-ROM盘。术语“机器存储介质”、“设备存储介质”、“计算机存储介质”意指相同的事物,并且可以在本公开中互换地使用。术语“机器存储媒体”、“计算机存储介质”和“设备存储介质”明确排除了载波、经调制的数据信号以及其他这样的介质,其中的至少一些被涵盖在术语“信号介质”之下。

“计算机可读介质”指代机器存储介质和传输介质两者。因此,所述术语包括存储设备/媒体和载波/经调制的数据信号两者。术语“机器可读介质”、“计算机可读介质”和“设备可读介质”意指相同的事物并且可以在本公开中互换地使用。

“组件”指代具有由函数或子程序调用、分支点、API或者其他技术定义的边界的设备、物理实体或逻辑,所述技术提供对特定处理或控制功能的分区或模块化。组件可以经由其接口与其他部件相组合以执行机器过程。组件可以是被设计用于与其他组件以及通常执行相关功能中的特定功能的程序的一部分一起使用的封装功能硬件单元。组件可以构成软件组件(例如,被体现在机器可读介质上的代码)或硬件组件。“硬件组件”是能够执行特定操作并且可以以特定物理方式配置或布置的有形单元。在各种示例性实施例中,一个或多个计算机系统(例如,独立计算机系统、客户端计算机系统或服务器计算机系统)或者计算机系统的一个或多个硬件组件(例如,处理器或一组处理器)可以由软件(例如,应用或应用部分)配置为操作用于执行如在本文中所描述的特定操作的硬件组件。硬件组件也可以机械地、电子地或者其任意合适的组合来实现。例如,硬件组件可以包括被永久地配置为执行特定操作的专用电路或逻辑。硬件组件可以是专用处理器,诸如现场可编程门阵列(FPGA)或专用集成电路(ASIC)。硬件组件还可以包括由软件临时配置以执行特定操作的可编程逻辑或电路。例如,硬件组件可以包括由通用处理器或者其他可编程处理器执行的软件。一旦被这样的软件配置,硬件组件就变成了为执行所配置功能而独有地定制的特定机器(或者机器的特定组件),而不再是通用处理器。将意识到,在专用和永久配置的电路中或者在临时配置的电路中(例如,由软件配置)机械地实现硬件组件的决定可能由成本和时间考虑来驱动。因此,短语“硬件组件”(或者“硬件实现的组件”)应当被理解为包含有形实体,因为是物理构造的、永久配置的(例如,硬连线的)或临时配置的(例如,编程的)以某种方式操作或者执行在本文中所描述的特定操作的实体。考虑其中硬件组件被临时配置(例如,编程)的实施例,所述硬件组件中的每个硬件组件不需要在任何一个时刻被配置或实例化。例如,在硬件组件包括由软件配置成为专用处理器的通用处理器的情况下,所述通用处理器可以在不同时间分别被配置为不同的专用处理器(例如,包括不同的硬件组件)。软件相应地配置一个或多个特定处理器,例如,以在一个时刻构成特定硬件组件并且在不同时刻构成不同的硬件组件。硬件组件能够向其他硬件组件提供信息以及从其他硬件组件接收信息。因此,所描述的硬件组件可以被认为是通信耦合的。在多个硬件组件同时存在的情况下,可以通过两个或更多个硬件组件之间的信号传输(例如,通过适当的电路和总线)来实现通信。在多个硬件组件在不同时间被配置或实例化的实施例中,在这样的硬件组件之间的通信可以例如通过在多个硬件组件可访问的存储器结构中存储和取回信息来实现。例如,一个硬件组件可以执行操作,并且将该操作的输出存储在其被通信地耦合到的存储器设备中。然后,另外的硬件组件可以在稍后的时间访问存储器设备以取回和处理所存储的输出。硬件组件还可以发起与输入设备或输出设备的通信,并且能够对资源(例如,信息集合)进行操作。在本文中所描述的示例性方法的各种操作可以至少部分地由临时配置(例如,通过软件)或永久配置为执行相关操作的一个或多个处理器来执行。无论是临时配置还是永久配置,这样的处理器都可以构成处理器实现的组件,其操作用于执行在本文中所描述的一个或多个操作或功能。如在本文中所使用的,“处理器实现的组件”指代使用一个或多个处理器实现的硬件组件。类似地,在本文中所描述的方法可以至少部分地由处理器实现的,其中,一个或多个特定处理器是硬件的示例。例如,一种方法的操作中的至少一些操作可以由一个或多个处理器或处理器实现的组件来执行。此外,所述一个或多个处理器还可以操作用于支持在“云计算”环境中的相关操作的性能或者作为“软件即服务”(SaaS)。例如,所述操作中的至少一些操作可以由一组计算机(作为包括处理器的机器的示例)来执行,其中,这些操作可经由网络(例如,互联网)以及经由一个或多个适当的接口(例如,API)来访问。所述操作中的特定操作的性能可能分布在处理器之间,不仅驻留在单个机器内,而是跨多个机器来部署。在一些示例性实施例中,处理器或处理器实现的组件可以位于单个地理位置中(例如,在家庭环境、办公室环境或服务器群内)。在其他示例性实施例中,处理器或处理器实现的组件可以跨多个地理位置分布。

“载体信号”指代能够存储、编码或承载用于由机器执行的指令的任何无形介质,并且包括数字或模拟通信信号或者其他无形介质以促进对这样的指令的传送。可以使用传输介质经由网络接口设备在网络上发送或接收指令。

“通信网络”指代网络的一个或多个部分,所述网络可以是自组织网络、内联网、外联网、虚拟专用网(VPN)、局域网(LAN)、无线LAN(WLAN)、广域网(WAN)、无线WAN(WWAN)、城域网(MAN)、互联网、互联网的一部分、公共交换电话网(PSTN)的一部分、普通旧式电话服务(POTS)网络、蜂窝电话网络、无线网络、网络、另一种类型的网络或者两个或更多这样的网络的组合。例如,网络或网络的一部分可以包括无线或蜂窝网络,并且耦合可以是码分多址(CDMA)连接、全球移动通信系统(GSM)连接或者其他类型的蜂窝或无线耦合。在该示例中,所述耦合可以实现多种类型的数据传输技术中的任意一种,诸如单载波无线电传输技术(1xRTT)、演进数据优化(EVDO)技术、通用分组无线电服务(GPRS)技术、增强型数据GSM演进(EDGE)技术、包括3G的第三代合作伙伴计划(3GPP)、第四代无线(4G)网络、通用移动电信系统(UMTS)、高速分组接入(HSPA)、全球微波接入互操作性(WiMAX)、长期演进(LTE)标准、各种标准设置组织定义的其他标准、其他远程协议或者其他数据传输技术。

下文的描述描述了说明本主题的示例性实施例的系统、方法、技术、指令序列和计算机器程序产品。在以下描述中,出于解释的目的,阐述了许多具体细节以便提供对本主题的各种实施例的理解。然而,对于本领域技术人员显而易见的是,可以在没有这些具体细节中的一些或者其他细节的情况下实践本主题的实施例。示例仅代表可能的变化。除非另有明确说明,否则结构(例如,结构组件,如模块)是可选的并且可以组合或细分,并且操作(例如,在过程、算法或者其他函数中)可以顺序地变化或者组合或细分。

本申请描述了一种系统,所述系统为不同的受众创建、定制和共享具有不同内容的文档。例如,作者能够发布或共享同一文档以不同的方式传送到不同的受众(例如,会计人员、组织的工程师、组织的主管),而无需为每个受众起草单独的版本。这样,所述系统使得作者能够从单个文档自动地生成多种类型的输出。例如,单个文档可能包括不同的内容(例如,同一原始内容的多个分支),同时保持单个文档同步。

在另一示例中,所述系统使得作者能够通过由将消费所述内容的人添加注释(例如,作者选择段落以将其与会计部门相关联)来将其内容聚焦到个体受众,由此创建文档的更多目标视图。

在另一示例中,所述系统通过指示特定内容是私密的或敏感的并且允许选择接收者登录并且请求查看机密内容,使得作者能够共享机密内容。该机密内容能够被模糊、涂黑、汇总、或者以其他视觉方式表示共享或发布文档中的受限访问。在另一示例中,接收者从作者所属的组织继承权限级别。

在另一示例中,所述系统使得读者/接收者能够快速地将共享文档过滤为所述共享文档中与接收者相关的人、事物和事件。常见的突出和关键点能够帮助读者快速地识别文档的重要部分。当接收者过滤共享文档时,关键点和突出点相应地调整以与接收者感兴趣的实体相关。

本申请描述了用于基于接收者的上下文而发布动态可调整的内容的文档的系统和方法。在一个示例性实施例中,计算设备被配置为接收对于将文档共享给多个接收者的请求,确定针对每个接收者的受众类型,基于针对所述多个接收者中的每个接收者的受众类型来修改所述文档,并且将经修改的文档提供给所述多个接收者。

结果,在本文中所描述的方法中的一种或多种方法促进解决为不同受众起草(使用在计算设备中操作的文档应用)单个文档的多个版本的技术问题。这样,在本文中所描述的方法中的一种或多种方法可以消除针对特定努力或计算资源的需要。这样的计算资源的示例包括处理器周期、网络流量、存储器使用、数据存储容量、功耗、网络带宽和冷却能力。

图1是其中可以实现或部署本公开的一些示例性实施例的网络环境的图解表示。一个或多个应用服务器104经由网络102向客户端设备106的形式的联网用户设备提供服务器侧功能。客户端设备106包括网络客户端112(例如,浏览器)、在客户端设备106上托管和执行的编程客户端108(例如,Microsoft Word(TM)“app”)、以及生成图形用户界面以可视化对共享文档的改变的动态内容客户端应用110。动态内容客户端应用110可以与网络客户端112和/或程序客户端108一起操作。在另一示例性实施例中,动态内容客户端应用110是程序客户端108或网络客户端112的一部分。

应用程序接口(API)服务器120和网络服务器122向应用服务器104提供各自的编程接口和网络接口。特定应用服务器118托管动态内容服务器应用124,其包括组件、模块和/或应用。动态内容服务器应用124接收文档,基于接收者来修改所述文档,并且发布经修改的文档。在另一示例性实施例中,动态内容服务器应用124从客户端设备106接收对于发布共享文档的请求。动态内容服务器应用124识别接收者并且将共享文档转发给接收者。在又一示例性实施例中,动态内容服务器应用124接收共享文档的多个版本。每个版本与对应的受众或接收者组相关联。动态内容服务器应用124将每个版本发送到其对应的受众或接收者组。在又一示例性实施例中,动态内容服务器应用124从动态内容客户端应用110接收单个文档,所述单个文档具有识别与不同受众或接收者组相对应的文档部分的元数据。动态内容服务器应用124基于所述元数据为每个受众创建单个文档的版本,并且将该版本转发给对应的受众。在另一示例中,动态内容服务器应用124从动态内容客户端应用110接收具有元数据的单个文档并且将其转发给所述接收者组。

在一个示例性实施例中,动态内容客户端应用110与由网络服务器122支持的动态内容服务器应用124通信以访问图形用户界面。在一个示例中,网络客户端112经由由应用程序接口(API)服务器120提供的编程接口与动态内容服务器应用124通信。在另一示例中,动态内容客户端应用110与动态内容服务器应用124通信。

例如,第三方应用116可以是另一云存储系统或另一媒体提供商。应用服务器118被示为被通信地耦合到促进访问信息存储库或数据库128的数据库服务器126。在示例性实施例中,数据库128包括存储将由动态内容服务器应用124发布和/或处理的信息的存储设备。

另外,在第三方服务器114上执行的第三方应用116被示为经由由应用程序接口(API)服务器120提供的编程接口对应用服务器118进行编程访问。例如,使用从应用服务器118取回的信息,第三方应用116可以支持在由第三方托管的网站上的一个或多个特征或功能。

图2是图示了根据一个示例性实施例的动态内容服务器应用的操作的示例的框图。用户130在客户端设备106处操作文档应用206(例如,Microsoft Word TM)以生成文档并且将所述文档共享或发布到所选择的接收者。例如,用户130选择会计组、工程组和人力资源组作为文档的接收者。文档应用206向动态内容客户端应用110提供接收者列表/组和文档。动态内容客户端应用110将文档发布到动态内容服务器应用124。动态内容服务器应用124基于与每个接收者相对应的输出类型(例如,受众类型)针对用户来定制所述文档。例如,一种类型的输出可以基于职务、工作状态、组织的部门或者对接收者进行分类的任何任意方式。例如,动态内容服务器应用124针对具有“非执行董事”工作级别的接收者从文档中移除财务报告或财务内容。相反,动态内容服务器应用124为具有“执行董事”工作级别的接收者在文档中添加或保留财务内容。动态内容服务器应用124可以为组织外部的接收者(例如,不在组织处工作的接收者)替换文档的部分。

在一个示例性实施例中,动态内容服务器应用124基于与用户212相关联的工作部门为用户212定制所述共享文档。动态内容服务器应用124将定制的文档发布到与用户212相关联的客户端设备202的文档应用204。类似地,动态内容服务器应用124基于与用户214相关联的工作部门为用户214定制所述共享文档。动态内容服务器应用124将定制的文档发布到与用户212相关联的客户端设备208的文档应用210。

在另一示例性实施例中,用户212读取定制的文档并且利用文档应用204执行一些改变(例如,编辑文档)。文档应用204将改变发送到动态内容服务器应用124。类似地,用户212利用文档应用210阅读定制的文档并且执行一些改变(例如,编辑文档)。文档应用210将改变发送到动态内容服务器应用124。动态内容服务器应用124从用户212和用户214接收改变,并且将所述改变同步到所述共享文档。动态内容服务器应用124将所述共享文档发送给动态内容客户端应用110。

在另一示例性实施例中,动态内容客户端应用110基于与用户212相关联的工作部门为用户212定制所述共享文档。动态内容客户端应用110将所述定制的文档发布到动态内容服务器应用124。动态内容服务器应用124将所述定制的文档转发到与用户212相关联的客户端设备202的文档应用204。类似地,动态内容客户端应用110基于与用户214相关联的工作部门为用户214定制所述共享文档。动态内容客户端应用110将所述定制的文档发布到动态内容服务器应用124。动态内容服务器应用124将所述定制的文档转发到与用户214相关联的客户端设备208的文档应用210。

在另一示例性实施例中,动态内容客户端应用110将所述共享文档发送到动态内容服务器应用124。所述共享文档可以包括元数据,所述元数据指示与每种受众类型相关的内容的部分(例如,与会计部门相关的财务数据、与主管级别相关的执行概要)。动态内容服务器应用124将所述共享文档转发给接收者(例如,用户212、用户214)。用户212使用文档应用204来查看所述共享文档。文档应用204解析所述共享文档的元数据并且仅显示与用户212相关或有关的文档的部分。在另一示例中,文档应用204基于用户212的查看权限和所述共享文档的一部分的机密级别来省略或阻挡所述共享文档的一部分(例如,第一段是绝密的,第二段是敏感的,第三段是公开信息)。用户212可以提交访问共享文档的被阻挡部分的许可请求。用户214使用文档应用210来查看所述共享文档。文档应用210解析所述共享文档的元数据,并且仅显示与用户214相关或有关的文档的部分。

在另一示例性实施例中,文档应用204使用经解析的元数据来识别与用户212相关或有关的文档的部分。例如,文档应用204基于用户212的受众类型(例如,主管级别)为用户212显示所述共享文档的突出项和概要。

图3是图示了根据一个示例性实施例的动态内容客户端应用110的框图。动态内容客户端应用110包括客户端发布模块302、客户端受众特定内容模块304和客户端机密内容模块306。客户端发布模块302向一组接收者发布或传送文档(也被称为共享文档)。在一个示例中,客户端发布模块302将单个文档共享给动态内容服务器应用124。在另一示例中,客户端发布模块302将单个文档的多个版本共享给动态内容服务器应用124。

客户端受众特定内容模块304基于接收者的简档来识别所述受众类型。例如,一种受众类型可能基于工作状态(例如,受雇、休假)或工作级别(例如,助理、经理、主管、主任)或者任何其他类型。在一个示例中,用户130识别针对所述文档的一个或多个部分的受众类型。例如,用户130识别包含具有主管级别受众的财务结果的段落。在另一示例中,文档中未被用户130选择或识别的部分为每个接收者保留相同的内容。例如,如果客户端受众特定内容模块304检测到用户130没有为特定受众关联文档的结论段落,则所述结论段落针对每个接收者保持相同。

在一个示例性实施例中,客户端受众特定内容模块304修改所述文档以生成具有元数据的单个文档,所述元数据指示所述文档的各部分以及其对应的受众。在另一示例性实施例中,客户端受众特定内容模块304基于接收者的受众类型来生成所述文档的多个版本。

客户端机密内容模块306确定文档的一部分是否包含机密或敏感信息。在一个示例中,客户端机密内容模块306确定用户130已经将特定段落标识为机密的并且已经指示针对机密内容的受众类型(例如,仅主管)。

客户端消费模块308生成对所述共享文档的改变的突出项或概要。在另一示例中,客户端受众特定内容模块304基于用户212的上下文(例如,用户凭证、用户简档、用户兴趣、相关文档)或用户212的隐私设置来确定与用户相关的改变。在另一示例中,客户端受众特定内容模块304基于上下文来显示或突出可能与用户212相关的文档部分。

在另一示例中,客户端消费模块308接收对共享文档的一部分的选择,并且生成与所述共享文档的所选择的部分有关的相关信息的概要。相对于所述共享文档的部分仅显示相关信息的概要(以使得用户212能够过滤所述共享文档中的任何不相关内容或噪声)。

图4图示了根据一个实施例的动态内容服务器应用。动态内容服务器应用124包括服务器发布模块402、服务器受众特定内容模块404和服务器机密内容模块406。服务器发布模块402的操作类似于动态内容客户端应用110的客户端发布模块302。在一个示例中,服务器发布模块402从客户端发布模块302接收单个文档。在另一示例中,服务器发布模块402从客户端发布模块302接收文档的多个版本。

服务器受众特定内容模块404的操作类似于动态内容客户端应用110的客户端受众特定内容模块304。在一个示例性实施例中,服务器受众特定内容模块404修改从动态内容客户端应用110接收的单个文档,并且生成具有元数据的单个文档,所述元数据指示文档的各个部分以及其对应的受众。在另一示例性实施例中,服务器受众特定内容模块404修改从动态内容客户端应用110接收的单个文档,并且基于接收者的受众类型来生成所述文档的多个版本。

服务器机密内容模块406的操作类似于动态内容客户端应用110的客户端机密内容模块306。服务器消费模块408的操作类似于动态内容客户端应用110的服务器机密内容模块406。

图5是图示了根据一个示例性实施例的用于向接收者发布经修改的文档的方法500的流程图。方法500中的操作可以由动态内容客户端应用110使用上文关于图3所描述的组件(例如,模块、引擎)来执行。因此,方法500是参考动态内容客户端应用110以示例的方式来描述的。然而,应当意识到,方法500的操作中的至少一些操作可以被部署在各种其他硬件配置上或者由驻留在别处的类似组件来执行。例如,所述操作中的一些操作可以在动态内容服务器应用124处执行。

在框502中,动态内容客户端应用110接收对于将文档共享给多个接收者的请求。在框504处,动态内容客户端应用110确定针对每个接收者的受众类型。在框506处,动态内容客户端应用110基于所述受众类型来修改所述文档以包括不同的内容。在框508处,动态内容客户端应用110将经修改的文档发布给接收者。

图6是图示了根据一个示例性实施例的显示具有为接收者定制的内容的经修改的文档的方法600的流程图。方法600中的操作可以由文档应用204、动态内容客户端应用110或动态内容服务器应用124使用上文关于图3和图4所描述的组件(例如,模块、引擎)来执行。然而,将意识到,方法600的操作中的至少一些操作可以被部署在各种其他硬件配置上或者由驻留在别处的类似组件来执行。例如,所述操作中的一些操作可以在动态内容服务器应用124处和动态内容客户端应用110处执行。

在框602中,文档应用204接收经修改的文档。在框604处,文档应用204确定与接收者(例如,用户212)相对应的受众类型。在框606处,文档应用204基于与用户212相对应的受众类型来定制经修改的文档中的内容。在框608处,文档应用204显示经修改的文档,其内容被定制给接收者。

图7是图示了根据一个示例性实施例的用于将共享文档的版本发布到对应接收者的方法700的流程图。方法700中的操作可以由动态内容客户端应用110使用上文关于图3所描述的组件(例如,模块、引擎)来执行。因此,方法700是参考动态内容客户端应用110以示例的方式来描述的。然而,应当意识到,方法700的操作中的至少一些操作可以被部署在各种其他硬件配置上或者由驻留在别处的类似组件来执行。例如,所述操作中的一些操作可以在动态内容服务器应用124处执行。

在框702中,动态内容客户端应用110接收对于将文档共享给多个接收者的请求。在框704处,动态内容客户端应用110确定针对每个接收者(例如,主管、会计人员)的输出类型。在框706处,动态内容客户端应用110基于针对每个接收者的输出类型来形成或生成所述共享文档的版本(例如,为主管添加简短概要并且移除详细财务数据,为会计人员保留详细财务数据)。在框708处,动态内容客户端应用110向对应的接收者发布共享文档的版本。

图8是图示了根据一个示例性实施例的用于将具有经调整的内容的文档发布给接收者的方法800的流程图。方法800中的操作可以由动态内容客户端应用110使用上文关于图3所描述的组件(例如,模块、引擎)来执行。因此,方法800是参考动态内容客户端应用110以示例的方式来描述的。然而,应当意识到,方法800的操作中的至少一些操作可以被部署在各种其他硬件配置上或者由驻留在别处的类似组件来执行。例如,所述操作中的一些操作可以在动态内容服务器应用124处执行。

在框802中,动态内容客户端应用110接收对于将文档共享给接收者的请求。在框804处,动态内容客户端应用110确定接收者的受众类型。在框806处,动态内容客户端应用110基于接收者的受众类型来调整所述文档的内容。在框808处,动态内容客户端应用110将具有经调整的内容的所述文档发布给接收者。

图9是图示了根据一个示例性实施例的用于解锁和显示文档的被阻挡部分的方法900的流程图。方法900中的操作可以由文档应用204、动态内容客户端应用110或动态内容服务器应用124使用上文关于图3和图4所描述的组件(例如,模块、引擎)来执行。因此。方法900是参考动态内容客户端应用110以示例的方式来描述的。然而,应当意识到,方法900操作中的至少一些操作可以被部署在各种其他硬件配置上或者由驻留在别处的类似组件来执行。例如,所述操作中的一些操作可以在动态内容服务器应用124处执行。

在框902中,文档应用204在接收者(例如,用户212)的客户端设备202处接收所述经修改的文档。文档应用204(或者动态内容服务器应用124或动态内容客户端应用110)确定与用户212相对应的受众类型。文档应用204(或者动态内容客户端应用110或动态内容服务器应用124)阻止显示经修改的文档的一部分。在框908处,动态内容客户端应用110或动态内容服务器应用124从用户212接收对于查看被阻挡部分的请求。在框910处,动态内容客户端应用110或动态内容服务器应用124(或文档应用204)确定接收者的文档访问权限。在框912处,文档应用204或动态内容客户端应用110或动态内容服务器应用124解锁被阻挡的部分并且使文档应用204显示所述经修改的文档的先前被阻挡的部分。

图10是图示了根据一个示例实施例的用于将经修改的文档发布给接收者的方法1000的流程图。方法1000中的操作可以由动态内容客户端应用110使用上文关于图3所描述的组件(例如,模块、引擎)来执行。因此,方法1000是参考动态内容客户端应用110以示例的方式来描述的。然而,应当意识到,方法1000的操作中的至少一些操作可以被部署在各种其他硬件配置上或者由驻留在别处的类似组件来执行。例如,所述操作中的一些操作可以在动态内容服务器应用124处执行。

在框1002中,动态内容客户端应用110接收对于将文档共享给多个接收者的请求。在框1004处,动态内容客户端应用110解析所述文档以确定与受众类型相关或有关的内容(例如,例如通过识别文档中的关键词或者使用元数据;一些关键词可以与特定受众相关联)。在框1006处,动态内容客户端应用110为文档的部分形成元数据。所述元数据指示与所述文档的一部分相对应的受众类型。在框1008处,动态内容客户端应用110修改所述文档以包括所述元数据。在框1010处,动态内容客户端应用110向多个接收者发布所述经修改的文档。

图11是图示了根据一个示例性实施例的用于基于经解析的元数据来使得显示经修改的文档的部分的方法的流程图。方法1100中的操作可以由文档应用204、动态内容客户端应用110或动态内容服务器应用124使用上文关于图3和图4所描述的组件(例如,模块、引擎)来执行。因此。方法1100是参考动态内容客户端应用110以示例的方式来描述的。然而,应当意识到,方法1100的操作中的至少一些操作可以被部署在各种其他硬件配置上或者由驻留在别处的类似组件来执行。例如,所述操作中的一些操作可以在动态内容服务器应用124处执行。

在框1102中,与用户212相关联的文档应用204接收所述经修改的文档。在框1104处,文档应用204从用户212接收对过滤器的选择。例如,用户212选择概述或者仅显示与用户212相关的信息的突出过滤器(基于用户212的受众类型)。在框1106处,文档应用204基于所选择的过滤器来解析经修改的文档中的元数据。在框1108处,文档应用204基于经解析的元数据来显示或突出所述经修改的文档的部分。在另一示例中,文档应用204阻挡在突出部分外部的所述经修改的文档的部分。

图12图示了根据一个实施例的屏幕截图1200。屏幕截图1200图示了共享文档1202。共享文档1202基于接收者的受众类型来显示与接收者相关的内容的一部分。例如,共享文档1202显示不同受众类型(例如,主管受众1206、工程受众1208和公共受众1210)。当接收者选择主管受众1206时,所述文档的对应相关部分被显示或突出(例如,与主管1204相关的部分)。

在一个示例性实施例中,接收者能够看到针对每个受众的共享文档1202的不同部分。在另一示例性实施例中,接收者可能仅能够看到与被分配给接收者的受众相关的共享文档1202的部分。

图13图示了根据一个实施例的屏幕截图1300。屏幕截图1300图示了包括机密部分1306的共享文档1302。机密部分1306可以被涂黑或者修订以防止接收者查看机密部分1306。然而,接收者可能能够提交对于查看机密部分1306的许可(例如,对于查看请求的许可1304)的请求。

图14图示了根据一个实施例的屏幕截图1400。屏幕截图1400图示了具有过滤器1404的共享文档1402。例如,所述文档的接收者可能能够通过使用过滤器1404来容易地识别相关信息。过滤器1404的示例包括共同突出1406、关键优先级1408和评论1410。

图15图示了根据一个示例性实施例的共享文档的分支。主分支1510拆分成另一分支1512。主分支1510的主分支共享文档1502与用户A和B共享。分支1512的分支共享文档1504与用户C共享。主分支共享文档1502包括修订内容1506。用户A和B不能够查看修订内容1506的内容(因为其已经被省略)。分支共享文档1504包括未修订内容1508。用户C能够查看未修订内容1508的内容。

图16是机器1600的图解表示,在其之内可以执行用于使得机器1600执行在本文中所讨论的方法中的任意一种或多种方法的指令1608(例如,软件、程序、应用、小程序、app或者其他可执行代码)。例如,指令1608可以使得机器1600执行在本文中所描述的方法中的任意一种或多种方法。指令1608将通用的、非编程机器1600转换成特定机器1600,特定机器1600被编程为以所描述的方式执行所描述和图示的功能。机器1600可以作为独立设备操作或者可以被耦合(例如,联网)到其他机器。在联网部署中,机器1600可以在服务器-客户端网络环境中以服务器机器或客户端机器的能力来操作,或者作为在对等(或分布式)网络环境中的对等机器来操作。机器1600可以包括但不限于:服务器计算机、客户端计算机、个人计算机(PC)、平板计算机、膝上型计算机、上网本、机顶盒(STB)、PDA、娱乐媒体系统、蜂窝电话、智能手机、移动设备、可穿戴设备(如智能手表)、智能家居设备(如智能家电)、其他智能设备、网络设备、网络路由器、网络交换机、网桥或者能够顺序地或以其他方式执行指定机器1600将采取的动作的指令1608的任意机器。此外,尽管仅图示了单个机器1600,但是术语“机器”还应当被视为包括个体或联合执行指令1608以执行在本文中所讨论的方法中的任意一种或多种方法的机器的集合。

机器1600可以包括处理器1602、存储器1604和I/O组件1642,其可以被配置为经由总线1644彼此通信。在示例性实施例中,处理器1602(例如,中央处理单元(CPU)、精简指令集合计算(RISC)处理器、复杂指令集计算(CISC)处理器、图形处理单元(GPU)、数字信号处理器(DSP)、ASIC、射频集成电路(RFIC)、另一处理器或者其任意合适的组合)可以包括例如执行指令1608的处理器1606和处理器1610。术语“处理器”旨在包括多核心处理器,其可以包括可以同时执行指令的两个或更多个独立处理器(有时被称为“核心”)。尽管图16图示了多个处理器1602,但是机器1600可以包括具有单个核心的单处理器、具有多个核心的单处理器(例如,多核心处理器)、具有单个核心的多个处理器、具有多个核心的多个处理器或者其任意组合。

存储器1604包括主存储器1612、静态存储器1614和存储单元1616,两者都能经由总线1644被处理器1602访问。主存储器1604、静态存储器1614和存储单元1616存储体现在本文中所描述的方法或功能中的任意一种或多种方法或功能的指令1608。在由机器1600对其执行期间,指令1608还可以完全或部分地驻留在主存储器1612内、在静态存储器1614内、在存储单元1616内的机器可读介质1618内、在处理器1602中的至少一个处理器内(例如,在处理器的高速缓存内)或者其任意合适的组合。

I/O组件1642可以包括多种组件以接收输入、提供输出、产生输出、传输信息、交换信息、捕获测量结果等。被包含在特定机器中的特定I/O组件1642将取决于机器的类型。例如,诸如移动电话的便携式机器可以包括触摸输入设备或者其他这样的输入机制,而无头服务器机器将可能不包括这样的触摸输入设备。将意识到,I/O组件1642可以包括在图16中未示出的许多其他组件。在各种示例性实施例中,I/O组件1642可以包括输出组件1628和输入组件1630。输出组件1628可以包括视觉组件(例如,诸如等离子显示面板(PDP)的显示器、发光二极管(LED)显示器、液晶显示器(LCD)、投影仪或阴极射线管(CRT))、声学组件(例如,扬声器)、触觉组件(例如,振动电机、阻力机制)、其他信号发生器等。输入组件1630可以包括字母数字输入组件(例如,键盘、被配置为接收字母数字输入的触摸屏、光电键盘或者其他字母数字输入组件)、基于点的输入组件(例如,鼠标、触摸板、轨迹球、操纵杆、运动传感器或者其他定点仪器)、触觉输入组件(例如,物理按钮、提供位置和/或触摸力或触摸手势的触摸屏,或者其他触觉输入组件)、音频输入组件(例如,麦克风)等。

在另外的示例性实施例中,I/O组件1642可以包括生物统计组件1632、运动组件1634、环境组件1636或位置组件1638、以及其他各种组件。例如,生物统计组件1632包括用于检测表情(例如,手部表情、面部表情、声音表情、身体姿势或眼动追踪)、测量生物信号(例如,血压、心率、体温、汗水或脑波)、识别人(例如,语音识别、视网膜识别、面部识别、指纹识别或基于脑电图的识别)等的组件。运动组件1634包括加速度传感器组件(例如,加速度计)、重力传感器组件、旋转传感器组件(例如,陀螺仪)等等。环境组件1636包括例如照明传感器组件(例如,光度计)、温度传感器组件(例如,检测环境温度的一个或多个温度计)、湿度传感器组件、压力传感器组件(例如,气压计)、声学传感器组件(例如,检测背景噪声的一个或多个麦克风)、接近度传感器组件(例如,检测附近物体的红外传感器)、气体传感器(例如,气体检测传感器,其用于检测危险气体的浓度以确保安全或者测量大气中的污染物),或者可以提供与周围物理环境相对应的指示、测量结果或信号的其他组件。位置组件1638包括位置传感器组件(例如,GPS接收器组件)、高度传感器组件(例如,检测可以根据其导出高度的气压的高度计或气压计)、取向传感器组件(例如,磁力计)等。

可以使用多种技术来实现通信。I/O组件1642还包括通信组件1640,其可操作用于分别经由耦合1624和耦合1626来将机器1600耦合到网络1620或设备1622。例如,通信组件1640可以包括网络接口组件或者与网络1620进行接口的另一合适的设备。在另外的示例中,通信组件1640可以包括有线通信组件、无线通信组件、蜂窝通信组件、近场通信(NFC)组件、组件(例如,低能量)、组件以及其他通信组件,以经由其他模态来提供通信。设备1622可以是另一机器或者多种外围设备(例如,经由USB耦合的外围设备)中的任一个。

此外,通信组件1640可以检测标识符或者包括可操作用于检测标识符的组件。例如,通信组件1640可以包括射频识别(RFID)标签读取器组件、NFC智能标签检测组件、光学读取器组件(例如,光学传感器,其用于检测诸如通用产品代码(UPC)条码的一维条形码、诸如快速响应(QR)码的多维条形码、Aztec码、数据矩阵、Dataglyph、MaxiCode、PDF417、Ultra Code、UCC RSS-2D条形码和其他光学代码)或声学检测组件(例如,麦克风,其用于识别经标记的音频信号)。另外,可以经由通信组件1640导出各种信息,诸如经由互联网协议(IP)地理的位置、经由信号三角测量的位置、经由检测可以指示特定位置的NFC信标信号的位置等。

各种存储器(例如,存储器1604、主存储器1612、静态存储器1614和/或处理器1602的存储器)和/或存储单元1616可以存储体现或者由在本文中所描述的方法或功能中的任意一种或多种方法或功能的指令和数据结构(例如,软件)的一个或多个集合。这些指令(例如,指令1608)当由处理器1602运行时引起各种操作来实现所公开的实施例。

可以通过网络1620使用传输介质经由网络接口设备(例如,被包含在通信组件1640中的网络接口组件)并且使用许多已知传输协议中的任意一种传输协议(例如,超文本传输协议(HTTP))来发送或接收指令1608。类似地,可以使用传输介质经由耦合1626(例如,对等耦合)将指令1608发送或接收到设备1622。

示例

示例1是一种计算机实现的方法,包括:接收对于将文档共享给多个接收者的请求;确定针对每个接收者的受众类型;基于针对所述多个接收者中的每个接收者的受众类型来修改所述文档;以及将经修改的文档提供给所述多个接收者。

在示例2中,示例1的主题包括:其中,修改所述文档还包括:基于针对所述多个接收者中每个接收者的所述受众类型在所述文档中包括不同的内容。

在示例3中,示例1的主题包括:其中,所述经修改的文档是在所述接收者的客户端设备处接收的,所述客户端设备被配置为:确定与所述接收者相对应的所述受众类型;基于与所述接收者相对应的所述受众类型来定制所述经修改的文档的内容;以及显示经定制的内容。

在示例4中,示例1的主题包括:其中,修改所述文档还包括:基于针对每个接收者的输出类型来形成共享文档的版本,所述输出类型基于所述受众类型,其中,提供所述经修改的文档还包括:将所述共享文档的所述版本发布给对应的接收者。

在示例5中,示例1的主题包括:其中,修改所述文档还包括:形成所述共享文档的多个分支,每个分支与所述受众类型相对应,每个分支能由对应的受众类型查看。

在示例6中,示例5的主题包括:其中,所述多个分支的第一分支中的内容仅能由来自第一受众类型的第一接收者查看,其中,所述多个分支的第二分支中的内容仅能由来自第二受众类型的第二接收者查看。

在示例7中,示例5的主题包括:其中,所述多个分支的第一分支包括所述共享文档的第一共享部分,所述第一共享部分能由所述多个接收者查看并且能由所述多个接收者编辑,其中,所述多个分支的第二分支包括所述共享文档的第二共享部分,所述第二共享部分仅能由所述多个接收者的子集查看,所述子集具有查看所述第二共享部分的许可。

在示例8中,示例5的主题包括:其中,所述多个分支的第一分支包括来自所述多个分支的第二分支的修订内容。

在示例9中,示例1的主题还包括:确定所述多个接收者中的第一接收者的第一受众类型;确定所述第一受众类型与第一类型的文档输出相对应;基于针对所述第一接收者的第一类型的文档输出来形成所述共享文档的第一版本;将所述共享文档的所述第一版本发布给所述第一接收者;确定所述多个接收者中的第二接收者的第二受众类型;确定所述第二受众类型与第二类型的文档输出相对应;基于针对所述第二接收者的第二类型的文档输出来形成所述共享文档的第二版本;以及将所述共享文档的所述第二版本发布给所述第二接收者。

在示例10中,示例1的主题包括:还包括:将所述经修改的文档的一部分检测为机密内容;为第一受众类型分配访问权限;确定第一接收者与所述第一受众类型相对应;并且响应于确定所述第一接收者与所述第一受众类型相对应而显示所述机密内容。

在示例11中,示例10的主题包括:还包括:确定第二接收者与第二受众类型相对应,所述第二受众类型对所述机密内容没有访问权限;以及响应于确定所述第二接收者与所述第二受众类型相对应而阻止对所述机密内容的显示。

在示例12中,示例11的主题包括:还包括:从所述第二接收者接收对于查看所述机密内容的查看请求;接收响应于所述查看请求的授权;以及响应于接收到所述授权而引起对所述机密内容的显示。

在示例13中,示例1的主题包括:其中,修改所述文档还包括:解析所述文档并且确定与对应受众类型相关的内容;为所述文档的对应部分形成元数据,所述元数据指示与所述文档的所述部分相对应的受众类型和所述文档的关键点;以及在所述文档中包括所述元数据。

在示例14中,示例1的主题包括:其中,修改所述文档还包括:向所述文档添加第一内容,所述第一内容与第一受众类型相对应;从所述文档中移除第二内容,所述第二内容与所述第一受众类型相对应;将所述文档中的第三内容修改为第四内容,所述第三内容与所述第一受众类型相对应;在添加所述第一内容、移除所述第二内容和修改所述第三内容之后,形成所述经修改的文档;以及将所述经修改的文档提供给与所述第一受众类型相关联的每个用户。

尽管已经参考特定示例性实施例描述了本主题的概述,但是可以在不背离本发明实施例的更宽泛范围的情况下对这些实施例进行各种修改和改变。例如,本领域普通技术人员可以混合和匹配各种实施例或者其特征或使其可选。本主题的这样的实施例在本文中可以单独或统称为术语“发明”,仅仅是为了方便起见,并且当实际上公开了多于一个时不打算自愿将本申请的范围限制为任何单个发明或本发明。

已经认为足够详细地描述了本文说明的实施例以使本领域技术人员能够实践所公开的教导。可以使用其他实施例并且从中导出其他实施例,从而可以在不背离本公开的范围的情况下进行结构和逻辑替换和改变。因此,详细描述不应当被理解为限制性的,并且各种实施例的范围仅由所附权利要求以及这些权利要求所赋予的等效物的全部范围限定。

此外,可以为在本文中作为单个实例描述的资源、操作或结构提供多个实例。此外,在各种资源、操作、模块、引擎和数据存储之间的边界在某种程度上是任意的,并且在特定说明性配置的上下文中示出了特定操作。可以设想其他功能分配并且可以落入本发明的各种实施例的范围内。一般而言,在示例性配置中作为单独资源呈现的结构和功能可以实现为组合结构或资源。类似地,呈现为单个资源的结构和功能可以实现为单独的资源。这些和其他变化、修改、添加和改进落入由所附权利要求表示的本发明的实施例的范围内。因此,说明书和附图被认为是说明性的而非限制性的。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1