CN104520834B - 用于向第三方应用端到端地暴露原生数据类型的导出的表示的***和方法 - Google Patents
用于向第三方应用端到端地暴露原生数据类型的导出的表示的***和方法 Download PDFInfo
- Publication number
- CN104520834B CN104520834B CN201380041512.6A CN201380041512A CN104520834B CN 104520834 B CN104520834 B CN 104520834B CN 201380041512 A CN201380041512 A CN 201380041512A CN 104520834 B CN104520834 B CN 104520834B
- Authority
- CN
- China
- Prior art keywords
- file
- format
- application
- import
- list
- 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.)
- Active
Links
Classifications
-
- 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/21—Design, administration or maintenance of databases
- G06F16/211—Schema design and 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/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/178—Techniques for file synchronisation in file systems
- G06F16/1794—Details of file format conversion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
这里公开用于向应用导出文件的***和方法。处理器从用户接收对于访问在基于web的存储***上存储的文件的请求。该请求包括对用于打开文件的应用的指明,并且该文件与原生格式关联。处理器确定应用未被配置为导入处于原生格式的文件,并且确定文件是否能被转换成可由应用导入的可导入格式。处理器将文件从原生格式转换成可导入格式,并且向应用导出所转换的、处于可导入格式的文件,该应用打开所转换的文件。
Description
有关申请的交叉引用
本申请要求对于2012年6月26日提交的第61/664,527号美国临时申请和于2013年3月15日提交的第13/833,479号美国非临时申请的权益,其二者通过引用而各自整体结合于此。
技术领域
一般而言,这一公开内容涉及基于web的存储***、具体地涉及用于向第三方应用暴露原生数据类型的导出的表示的***和方法。
背景技术
基于web的存储***是允许用户存储和取回从一个或者多个用户设备可访问的数据的文件托管***。这些存储***可以使用云存储装置以存储用户数据。有时,基于web的存储***存储可以使用原生应用而查看或者编辑的而标准第三方应用不可查看或者编辑的原生文件。因此,在web存储***上的处于原生格式的文件的原始内容并不总是可由第三方应用访问。
发明内容
这里公开用于提供原生数据的导出的表示的***和方法。一个方面涉及一种用于向应用导出文件的***或方法。处理器从用户接收对于访问在基于web的存储***上存储的文件的请求。该请求包括对用于打开文件的应用的指明,并且该文件与原生格式关联。处理器确定应用未被配置为导入处于原生格式的文件,并且确定文件是否能被转换成可由应用导入的可导入格式。处理器将文件从原生格式转换成可导入格式并且向应用导出所转换的、处于可导入格式的文件,该应用打开所转换的文件。
在一个实施例中,确定文件是否能被转换包括标识与文件关联的可导出格式,该可导出格式匹配与应用关联的可导入格式。标识步骤包括交叉引用与文件关联的可导出格式列表和与应用关联的可导入格式列表。可导出格式列表与第一方原生应用或者第三方原生应用关联。交叉引用包括标识在可导出格式列表和可导入格式列表二者中包括的一个或者多个格式。处理器在存在在可导出格式列表与可导入格式列表之间的多个匹配时接收指示期望的格式的用户输入。
在一个实施例中,处理器接收对于关联可导入格式与应用的应用请求。可选地,处理器基于关联请求来更新与应用关联的可导入格式列表。
在一个实施例中,导出步骤包括传输与所转换的文件对应的下载数据。
附图说明
本公开内容的以上和其它特征、包括它的性质和它的各种优点将在考虑与附图结合进行的以下具体描述时更为清楚,在附图中:
图1是根据说明性实施例的用于提供访问文件的表示的计算机化***的框图。
图2是根据说明性实施例的在包括与原生文件有关的数据的原生数据库上存储的示例数据结构。
图3是根据说明性实施例的在包括与第三方应用有关的数据的第三方数据库上存储的示例数据结构。
图4是根据说明性实施例的由处理器用来导出原生文件的表示的方法的流程图。
图5是根据说明性实施例的由处理器用来确定是准许还是拒绝对于访问原生文件的表示的请求的方法的流程图。
图6是根据说明性实施例的由处理器用来转换和导出原生文件的表示的方法的流程图。
图7是根据说明性实施例的由处理器用来更新与第三方应用关联的文件格式列表的方法的流程图。
图8是根据说明性实施例的用于执行这里描述的过程中的任何过程的计算设备的框图。
具体实施方式
为了提供对这里描述的***和方法的全面理解,现在将描述包括基于web的存储***的某些说明性实施例。然而,本领域普通技术人员将理解可以如对于解决的应用而言适合的那样适配和修改这里描述的***和方法并且可以在其它适当应用中运用这里描述的***和方法而且这样的其它添加和修改不会脱离其范围。一般而言,这里描述的计算机化***可以包括一个或者多个引擎,该一个或者多个引擎包括一个或者多个处理设备、比如计算机、微处理器、逻辑设备或者其它设备或者处理器,该一个或者多个处理设备用硬件、固件和软件被配置为实现这里描述的计算机化方法中的一种或者多种方法。
本公开内容提供用于向第三方应用提供访问基于web的存储***上的文件内容的***和方法。有时,第三方应用不能访问特殊地格式化的文件。这里公开的***和方法将特殊地格式化的文件转换成第三方可以访问的表示。具体而言,本公开内容涉及一种存储原生文件并且将原生文件中的文件内容转换成用于第三方的可导出格式的基于web的存储***。在可以通过网络与其它***通信以存储和共享用户数据的基于web的存储***方面描述这里公开的***和方法。一般而言,本领域普通技术人员将理解这里描述的***和方法适用于本地互连的***而未脱离其范围。
图1描绘可以用来实施这里的***和方法的网络和数据库结构的示例。图1是用于允许第三方应用访问在基于web的存储***上存储的文件的表示的计算化***100的框图。***100包括基于web 的存储***101、用户设备114和第三方***103。基于web的存储***101包括服务器104、原生数据库106和元数据数据库109,该服务器包括处理器105。第三方***103包括第三方数据库107、第三方服务器108和开发者设备112,该第三方服务器包括处理器110。如这里所用,术语“处理器”或者“计算设备”是指用硬件、固件和软件配置为执行这里描述的计算机化技术中的一种或者多种技术的一个或者多个计算机、微处理器、逻辑设备、服务器或者其它设备。处理器和处理设备也可以包括用于存储当前正在处理的输入、输出和数据的一个或者多个存储器设备。参照图8具体地描述可以用来实施这里描述的处理器和服务器中的任何处理器和服务器的示例计算设备800。如这里所用,“开发者设备”和“用户设备”包括而不限于一个或者多个输入设备(例如小键盘、触屏、轨迹球、语音识别***等)和/或一个或者多个输出设备(例如可视显示器、扬声器、触觉显示器、打印设备等)的任何适当组合。如这里所用,“服务器”包括而不限于用硬件、固件和软件配置为实现这里描述的计算机化技术中的一种或者多种技术的一个或者多个设备的任何适当组合。在图1中仅示出一个基于web的存储***101、一个用户设备114和一个第三方***103以避免使附图变复杂。一般而言,***100可以支持多个基于web的存储***、第三方***、服务器、数据库、开发者设备和用户设备。
基于web的存储***101是允许用户经由一个或者多个用户设备、比如用户设备114存储、取回和修改数据的文件托管***。这一数据可以称为用户的web数据。作为示例,基于web的存储*** 101可以存储于单个服务器***上或者分布式***中。具体而言,基于web的存储***101可以使用云存储装置来存储用户数据。
元数据数据库109存储若干类型的数据。具体而言,元数据数据库109存储与在基于web的存储***101上或者在第三方***103 上存储的文件内容关联的元数据。元数据可以包括指向关联文件内容的快捷方式(shortcut)、引用或者指针。例如元数据可以包括指向数据库、比如原生数据库106或者第三方数据库107中的原有文件的指针。在示例中,元数据数据库109存储与在原生数据库106 上存储的二进制文件内容关联的二进制文件。在另一示例中,元数据数据库109存储用于原生数据库106上的内部、第三方应用(即与基于web的存储***关联的原生应用)的引用文件。在另一示例中,元数据数据库109例如存储用于在第三方数据库107上存储的第三方应用(即与第三方***103关联)的引用文件。
原生数据库106存储可以使用原生应用而被查看或者编辑的原生文件。原生应用对应于基于web的存储***101中的内部、第一方应用。作为示例,原生应用可以提供通过web浏览器在用户与原生文件之间的访问(即用于查看和/或编辑原生文档)。原生文件可以与文本文档、电子表格文档、演示文档、绘图文档或者任何其它适当文档有关。具体而言,原生数据库106存储处于适合用于基于 web的存储***101的特定格式的原生文件。适当格式可以是基于 web的存储***101特有的格式并且可以被称为“第一方原生”格式。
第三方***103通过网络102与基于web的存储***101通信以访问在原生数据库106上存储的原生文件的表示。如图1中描绘的那样,第三方***103包括第三方数据库107、第三方服务器108 和开发者设备112。第三方数据库107可以存储处于适合用于第三方***103的特定格式的第三方原生文件。适合格式可以是第三方***103特有的格式并且可以被称为“第三方”格式。
有时希望第三方应用访问原生文件的内容,从而第三方应用可以对文件内容操作。如果文件是第一方原生文件或者与分离第三方应用关联的第三方原生文件,则第三方应用可以不能直接地访问文件的原始内容。以下具体地描述在文件是第一方原生文件时的情况。然而,一般而言,本领域普通技术人员将理解这里描述的用于向第三方应用提供文件内容的导出的表示的***和方法也可以应用于与一个或者多个其它第三方应用关联的第三方原生文件。
在文件是第一方原生文件时,第三方应用可以未被配置为直接地读取或者写入第一方原生文件内容,因为第一方原生文件的格式与第三方应用被配置为导入的格式不兼容。此外,第一方原生文件的原始内容可以包括专有信息,并且可能不希望允许第三方***103 具有对原始内容的无限制访问。为了维持基于web的存储***101 中的第一方原生文件的专有性质,不直接地暴露第一方原生文件的原始内容。取而代之,处理器105生成处于适合用于向第三方*** 103导出的一个或者多个格式的第一方原生文件的代理版本。具体而言,原生文件被转换成适当格式(该适当格式可由基于web的存储***101导出并可由第三方***-103 导入),并且允许第三方应用访问原生文件的只读表示而未共享原始内容。第三方应用可以使用一个或者多个应用编程接口(API)访问第一方原生文件的适当表示。
为了向第三方应用提供对原生文件的内容的访问,处理器105 可以标识与原生文件关联的一个或者多个可导出格式。具体而言,为了标识一个或者多个可导出格式,处理器105可以标识与原生文件关联的一个或者多个应用。在示例中,关联应用可以是与基于web的存储***101关联的第一方原生应用。在图2中示出四个原生文件及其关联应用的示例数据结构200。图3示出五个应用以及每个应用的对应可导入格式和可导出格式的列表的示例数据结构300。数据结构200和300可以存储于图1中所示数据库中的任何数据库、比如第三方数据库107、原生数据库106、元数据数据库109或者任何其它适当数据库上。处理器105确定是否有在与原生文件关联的应用的可导出格式集合和与第三方应用关联的可导入格式集合之间的匹配。如果标识出匹配格式,则原生文件被转换成匹配格式。在标识出多个匹配格式时,可以基于用户输入或者默认设置来选择格式。转换的文件然后被导出到第三方应用,该第三方应用打开转换的文件。
作为示例,第三方应用可以是被配置为打开(或者导入)某个类型的文件(如比如图像文件)的基于web的传真程序。用户可能希望使用基于web的传真程序(例如存储于第三方***103上)传输原生文件514(例如存储于原生数据库106上)的内容。如数据结构200中所示,原生文件514的内容包括文本和与应用V关联的原生文件514。应用V可以例如是文本编辑器。基于web的传真程序可以是如数据结构300中所示与一个可导入格式关联而未与可导出格式关联的文本编辑器。在这一情况下,比较与应用V关联的可导出格式列表和与应用W关联的可导入格式列表以标识任何匹配是否在列表之间存在。由于格式pdf是在两个列表中包括的仅有格式,所以处理器105将原生文件514转换成pdf文件并且向第三方基于web的传真程序W导出。
在另一示例中,用户可能希望在第三方原生文件中向未与原生文件关联的第三方应用提供内容访问。为了举例说明这一示例,原生文件1574与第三方应用Y关联,但是用户可以指定希望的第三方应用是W。在这一情况下,W可以是pdf查看器程序,并且由于第三方应用Y能够导出处于pdf格式的文件,所以原生文件1574的内容被转换成pdf格式并且导出到第三方应用W。
在另一示例中,如果在与原生文件的关联应用对应的可导出格式列表和与第三方应用对应的可导入格式列表之间没有找到匹配,则可以拒绝用户的对于在原生文件中向第三方应用提供文件内容的访问的请求。例如用户可能希望向第三方应用X提供访问原生文件 238中的内容。在这一情况下,由于原生文件238与应用Z关联,并且在与应用Z关联的可导出格式和与应用X关联的可导入格式之间无匹配,所以用户的请求被拒绝。
因此,尽管原生文件的原始内容可能不可由第三方***103访问,但是第三方***103仍然可以能够通过导入原生文件的转换版本来访问原生文件的内容。以这一方式,***100可以在不给予对原始原生文件内容的访问的情况下允许第三方应用访问在原生数据库106中存储的原生文件的表示。***100可以向第三方***103 提供只读访问,从而在第三方数据库107上存储的第三方应用可以导入处于第三方原生格式的文件、但是可以未对在原生数据库106 上存储的原始文件进行任何改变。
在一些实施例中,第三方***103的开发者创建软件的第三方应用版本(或者“云”版本)。第三方服务器108可以运行应用版本并且通过网络102向用户设备114提供用户界面(例如通过web浏览器)。在这一情况下,用户通过提供的用户界面与第三方应用交互而无需第三方软件本地安装于用户设备114上。在一些实施例中,第三方应用与在用户设备114上本地安装的软件应用有关。例如软件可以包括文档编辑器或者查看器,并且用户可以在设备、比如个人计算机上本地安装软件。
***100的配置对于用户而言有利,因为***100允许用户使用在不同位置(即第三方***103)运行的第三方应用来访问在一个位置(即基于web的存储***)中存储的文件。以这一方式,不需要软件应用被本地安装在用户设备114上。在设备上安装软件占用本地存储器中的空间并且花费时间来安装。此外,用户可以使用第三方应用以使用任何数目的不同用户设备来访问相同原生文件,只要每个用户设备被配置为与网络102通信。通过允许与网络102通信的任何用户设备114使用第三方应用访问原生文件的表示,这里描述的***和方法允许灵活和方便访问用户的web数据。
图2是根据一个示例实施例的在包括与原生文件有关的数据的原生数据库106上存储的说明性数据结构200。数据结构200包括四个原生文件标识符的列表,每个原生文件标识符对应于在原生数据库106上存储的原生文件。对于每个原生文件,数据结构200具有用于用户标识符的字段条目,该用户标识符指示与文件关联的用户。具体而言,基于web的存储***101可以由各自与基于web的存储***101的一个或者多个部分关联的多个用户和/或应用开发者访问。用户可以通过用户设备114和网络102访问存储空间。
除了存储与原生文件关联的用户标识符之外,数据结构200也包括用于格式的字段条目。具体而言,原生文件514是与用户A关联的原生文本文件,并且原生文件238是与用户C关联的原生演示文件。原生文件765是图像文件,并且原生文件1574是电子表格文件,这两个文件与用户B关联。
数据结构200还包括用于与每个原生文件关联的一个或者多个应用的字段。关联应用可以是第一方应用或者第三方应用。如数据结构200中所示,对于每个原生文件示出一个应用,但是一般而言,任何数目的应用可以与原生文件关联。数据结构200中的附加条目可以包括与这些应用对应的标识符、对应用是第一方还是第三方应用的指示、关联应用对文件内容的先前访问的日期和时间、与原生文件关联的任何其它适当数据或者其组合。除了所示字段之外或者取代所示字段,数据结构200也可以包括用于创建、访问或者编辑文件的日期和时间、有权读取或者写入文件的用户的列表、与在存储***上存储的文件关联的任何其它适当数据或者其任何适当组合的字段。
在一些实施例中,数据结构200中的格式字段是“关联”字段。具体而言,原生文件的关联可以包括一个或者多个可能导出格式的列表,并且原生文件可以具有一个或者多个对应关联。作为示例,对于原生文件514而存储的关联包括“文本”。该关联“文本”可以对应于一组一个或者多个格式、例如包括pdf、明文、html、开放文档 (opendocument)、rtf和doc。作为另一示例,对于原生文件238 而存储的关联包括“演示”。该关联“演示”可以对应于一个或者多个格式(例如包括pdf和ppt)的组。存储用于原生文件的关联而不是存储可能可导出格式的列表可以有利于节省存储空间并且允许更高效地访问数据。在一些实现中,格式字段和关联字段是数据结构200 中的不同字段。
图3是根据说明性实施例的包括与应用有关的数据的示例数据结构300。数据结构300可以存储于原生数据库106、元数据数据库109、第三方数据库107或者任何其它适当数据库上。数据结构300 包括各自与可导入格式列表和可导出格式列表关联的应用的五个记录。应用可以是第一方应用或者第三方应用。作为示例,应用V被配置为导入处于三种格式pdf、明文和开放文档的文件,并且被配置为导出包括处于pdf、明文、html、开放文档、rtf和doc的六种可导出格式的文件。在另一示例中,应用Y被配置为导入处于xls格式的文件。除了数据结构300中所示字段之外或者取代这些字段,可以包括附加字段、比如应用是否为第一方应用或者第三方应用、先前访问的原生文件的列表、该访问的日期和时间、与第三方服务器 108的位置有关的数据、与应用有关的任何其它适当数据或者其组合。如数据结构300中所示,应用可以具有可导入格式(例如应用Z) 和/或可导出格式(例如应用W)的对应空列表。
每个应用具有对应支持的可导入格式列表和对应支持的可导出格式列表。可导入格式可以包括对应应用被配置为打开或者读取的文件格式。可导出格式可以包括对应应用被配置为提供或者写入的文件格式。在应用是第三方应用时,与第三方应用关联的一个或者多个开发者可以如关于图7而描述的那样在任何时间请求更新任一列表。具体而言,列表可以包括第三方应用的开发者已经指定的可以使用对应第三方应用通过开发者的API控制台而导入的可导入文件格式,或者列表可以包括开发者已经指定的可以通过开发者的API控制台导出的可导出文件格式。在存在用于第三方应用的多个开发者时,处理器105可以维持用于每个开发者和/或用于与开发者关联的每个第三方应用的列表。这些列表可以一起或者分离地存储于一个或者多个数据库中。
***100可以更新数据结构300。作为另一示例,第三方应用的开发者可以向基于web的存储***101提交对于更新对应可导入格式列表的请求。例如第三方应用Y的开发者可以已经配置第三方应用除了xls文件之外还导入开放文档文件。在这一情况下,开发者提交对于更新数据结构300的请求。该请求可以包括指示用于向可导入格式列表追加的新格式。相似地,开发者可以提交对于更新数据结构300以从对应可导入格式的列表去除格式的请求。开发者可以使用API以在第三方***103与基于web的存储***101之间通信。作为示例,第三方开发者可以使用一个或者多个API以向基于web 的存储***101注册对应第三方应用用于初始访问任何文件、更新与第三方应用关联的可导入格式列表和/或可导出格式列表、向用户设备114提供用户界面或者在第三方***103、基于web的存储***101与用户设备114之间的任何其它适当交互。
图4-7是处理器、比如处理器105可以用于执行这里描述的技术的方法的流程图。具体而言,图4是用于导出原生文件的表示的高级方法-400 的流程图。图5是用于确定是否准许或者拒绝对于访问原生文件的表示的请求的更具体方法500的流程图,而如果请求被准许,则图6是用于转换和导出原生文件的表示的方法600的流程图。图7是用于更新与第三方应用关联的文件格式列表的方法。
图4是根据一个示例实施例的如处理器105执行的用于导出原生文件的表示的方法400的流程图。方法400包括以下步骤:从用户接收对于访问文件的请求(步骤402),确定原生文件的可导出格式是否与可导入格式匹配(步骤404),以及基于该确定来导出文件的表示(步骤406)。
在步骤402,处理器105使用第三方应用从用户接收对于访问原生文件的内容的请求。该请求可以包括原生文件的标识符和第三方应用的标识符。原生文件存储于原生数据库106上并且可以与用户、比如用户A关联。作为示例,原生文件可以存储于原生数据库106的向用户A分配的一部分上(即原生文件514)。在这一情况中,用户A可以在用户设备114提供用户认证信息(即例如通过向web 浏览器上的用户界面提供用户名和口令或者其它标识信息)。在认证之后,用户设备114可以显示在原生数据库106上存储的与用户A 关联的文件夹和文件、包括原生文件514的列表。在另一示例中,原生文件可以与已经向用户A给予访问原生文件(即原生文件765) 的用户B关联。在这一情况下,用户B可以向用户A提供指向原生文件765的链接或者快捷方式,并且数据结构、比如数据结构200 可以包括用于有权读取或者写入原生文件的用户的列表的数据字段条目。在更新数据结构200以包括用户A有权读取原生文件765之后,用户设备114可以在认证之后向用户A显示原生文件765的形式。为了易于举例说明,这里的描述的其余部分涉及用户A请求使用第三方应用W来访问原生文件514的表示。
用户A可以传输通过用户设备114使用第三方应用W来访问原生文件514的请求。例如用户A可以在用户设备114上的用户界面处使用用户输入设备、比如键盘或者鼠标来指示请求。例如在通过用户界面提供用户认证信息之后,用户设备114显示与原生文件514 关联的元数据。具体而言,元数据可以包括与原生文件关联的文件名、创建日期和时间、原生格式或者任何其它适当元数据。元数据可以存储于元数据数据库109上、原生数据库106上或者与网络102 通信的任何其它适当数据库上。用户A可以选择原生文件514并且通过从可以适合用于导入原生文件514的表示的第三方应用的列表选择来请求访问原生文件514。例如第三方应用列表可以包括在线文档编辑器、在线文档查看器、基于web的传真程序或者被配置为导入与原生文件514关联的可导出格式的任何其它适当第三方应用。例如第三方应用列表可以包括二者都被配置为导入pdf文件的第三方应用W和V,并且用户A选择第三方应用V来访问原生文件514。
在一些实施例中,处理器105执行一些处理以标识将在用户选择原生文件时向用户显示的适当第三方应用列表。例如适当列表可以包括被配置为导入与原生文件对应的格式的文件的每个应用。在这一情况下,无论用户从列表选择哪个应用,处理器105将准许请求。在另一示例中,适当列表可以包括与用户关联的所有应用,从而在用户从列表选择期望的应用之后,处理器105执行附加处理以确定是准许还是拒绝该请求。
在一些实施例中,在用户A选择原生文件514时,所期望的第三方应用没有被列举。作为示例,数据结构300可能不包括pdf作为与第三方应用W关联的可导入格式。在这一情况下,第三方应用W 的开发者可以尚未注册该应用以被配置为导入pdf文件。在这一情况下,用户A可以提交对于注册第三方应用Z以导入pdf文件的请求。用户A可以向基于web的存储***101直接地传输请求。备选地,用户A可以向第三方***103传输请求,该第三方***然后向基于 web的存储***101传输请求。
在步骤404,处理器105确定原生文件是否可以被转换成可由第三方应用导入的格式。具体而言,第三方应用未被配置为导入处于原生格式的文件,但是可以被配置为导入处于第三方格式的文件。为了确定文件是否可以被转换成适当格式,处理器105标识与原生文件关联的应用的可导出格式列表和与第三方应用关联的可导入格式列表(即例如在数据结构300上存储的列表)。在标识可导入和可导出文件格式列表之后,处理器105可以交叉引用两个列表以标识在两个列表上列举的任何文件格式。例如在交叉引用与原生文件 514关联的可导出格式列表(在数据结构200中)和与第三方应用Z 关联的可导入格式列表(在数据结构300中)时,处理器105标识匹配文件格式是pdf。关于图5更具体地描述这一过程。
如果标识多个匹配文件格式,则处理器105可以提示用提供关于应当使用匹配文件格式中的哪个匹配文件格式的输入。备选地,第三方应用可以向处理器105提供指示优选格式顺序的数据,从而与第三方应用关联的可导入格式可以具有相对优先级。在这一情况下,标识具有最高优先级的匹配文件格式。
在步骤406,处理器105将文件内容从原生格式转换成适当可导入格式。在转换原生文件时,处理器105可以被配置为除了原有原生文件之外还保存转换的文件作为新文件。这可以对于允许第三方应用访问原生文件的内容而未改变原有原生文件的格式而言是希望的。为了保存转换的文件,可以生成和在元数据数据库109上存储引用原有原生文件的引用文件或者指针。为了创建新的转换的文件,处理器105然后可以对引用文件操作。处理器可以使用与原生文件关联的应用来执行转换。一般而言,转换原生文件可以包括压缩文件中的数据、执行对图像的光学字符识别以取回文本内容或者任何将文件内容转换成与原有形式不同的形式的其它适当方法。关于图6 更具体地描述这一过程。
在步骤408,处理器105向第三方应用导出所转换的、处于可导入格式的文件。为了导出转换的文件,处理器105可以通过网络102 向第三方***103传输转换的文件,从而第三方应用可以访问文件内容。用户可以通过web浏览器与第三方应用和基于web的存储***101交互以访问转换的文件内容。作为示例,处理器105可以向用户或者向第三方***103传输用于直接下载转换的文件的下载链接。在这一情况下,下载链接可以包括用于提供文件的超链接、url、链接、快捷方式、引用文件或者任何其它适当下载链接。此外,下载链接可以具有对在原生数据库106上存储的原有原生文件的引用而添加对转换的文件格式的指示。关于图6更具体地描述这一过程。
图5是根据一个示例实施例的如处理器105执行的用于确定是准许还是拒绝对于访问原生文件的表示的请求的方法500的流程图。这一请求可以被称为访问请求。方法500包括以下步骤:标识与原生文件关联的支持的可导出文件格式(步骤502),标识与第三方应用关联的支持的可导入文件格式(步骤504),确定在可导出与可导入文件格式之间是否存在匹配(判决块506),并且如果找到匹配,则准许访问请求(步骤508)。备选地,如果未找到匹配,则拒绝访问请求(步骤510)。
在步骤502,处理器105标识与原生文件关联的支持的可导出文件格式。作为示例,可以在数据结构、比如数据结构200中存储支持的可导出文件格式列表。在步骤504,处理器105标识与第三方应用关联的支持的可导入文件格式。作为示例,可以在数据结构、比如数据结构300中存储支持的可导入文件格式列表。
在判决块506,处理器105确定在可导入与可导出文件格式列表之间是否存在匹配。具体而言,处理器105可以交叉引用列表以标识(如果有的话)在两个列表之间的匹配。作为示例,在交叉引用与原生文件关联的可导出格式列表(即在数据结构200中)和与第三方应用关联的可导入格式列表(即在数据结构300中)时,处理器105可以标识多于一个、一个或者零个匹配文件格式。具体而言,如果多个匹配文件格式被标识,则处理器105可以提示用户提供关于应当使用匹配文件格式中的哪个匹配文件格式的输入。备选地,第三方应用可以向处理器105提供指示优选格式顺序的数据,从而与第三方应用关联的可导入格式可以具有相对优先级。在这一情况下,具有最高优先级的匹配文件格式被标识。如果一个匹配文件格式被标识,则在准许访问请求时使用标识的匹配文件格式。在一些实施例中,处理器105通过确定两个列表的交集来交叉引用两个列表。具体而言,两个列表的交集包括在两个列表中出现的文件格式集合。
如果在判决块506标识一个或者多个匹配文件格式,则处理器 105在步骤508准许访问请求。具体而言,为了准许访问请求,处理器105将原生文件转换成标识的文件格式并且向第三方应用导出转换的文件。关于图6更具体地描述这一过程。
如果先前访问的原生文件格式匹配请求的原生文件的文件格式,则处理器105前进至步骤510以拒绝访问请求。具体而言,为了拒绝访问请求,可以向用户显示消息,该消息指示***100不能使用请求的第三方应用来提供请求的原生文件的表示。备选地,处理器105可以在用户选择第三方应用之前执行图5的步骤。在这一情况下,处理器105可以执行方法500的步骤以标识用于向用户显示的适当应用列表,其中在显示的列表中的每个应用被配置为导入与原生文件关联的可导出格式对应的文件格式。在这一情况下,用户从显示的列表进行的任何选择将造成向选择的应用导出文件内容。
图6是根据一个示例实施例的如处理器105执行的用于转换和导出原生文件的表示的方法600的流程图。方法600包括以下步骤:确定准许来自用户的请求(判决块602),将文件转换成标识的文件格式(步骤604),以及向第三方应用导出转换的文件(步骤606)。
在步骤602,处理器105确定是否准许来自用户的对于向第三方应用导出原生文件的表示的请求。对是否准许请求的确定可以基于在两个文件格式列表之间的交叉引用来确定:与请求的原生文件关联的可导出文件格式列表和与第三方应用关联的可导入文件格式列表。如关于图5描述的那样,交叉引用的结果是对在两个列表中包括的任何格式的标识。在一些实施例中,第三方应用具有与用户关联的定义的访问范围。在这一情况下,对是否准许访问请求的确定可以至少部分地基于定义的访问范围。
在步骤604,如果处理器105确定准许访问请求,则处理器105 将请求的原生文件转换成标识的文件格式。在转换原生文件时,处理器105可以被配置为除了原有原生文件之外还保存转换的文件作为新文件。在一些实施例中,处理器105创建引用原有文件的引用文件或者指针。引用文件或者指针可以存储于元数据数据库109或者与网络102通信的任何其它适当数据库上。处理器105然后对引用文件操作以创建新的转换的文件。这可以对于创建文件的转换的表示而允许原有原生文件的格式保持完整而言是期望的。
作为示例,原生文件可以是文本文档,并且第三方应用是被配置为接收pdf文件的基于web的传真程序。用户可以希望经由传真在原生文本文档中传输数据,但是也希望保持处于原有文本格式的原始数据完整。处理器105转换原生文件的一种方式是创建原生文件的副本并且对副本操作(即将副本转换成pdf格式)。用于转换原生文件的另一种方式是创建指向原生文件的指针并且对指针操作以创建原生文件的pdf版本。
一般而言,转换原生文件可以包括如以上对于文本文件而描述的那样将任何类型的文件转换成图像文件、压缩文件、比如图像中的数据、执行对图像的光学字符识别以取回图像文件中的一些文本或者任何将文件内容转换成与原有形式不同的形式的其它适当方法。
在步骤606,处理器105导出转换的文件。作为示例,处理器 105可以向第三方***103传输转换的文件或者其表示,从而用户可以使用第三方应用来访问文件。具体而言,用户可以使用web浏览器访问基于web的存储***101。Web浏览器可以生成具有与第三方应用对应的用户界面的显示屏幕。例如第三方服务器108可以在第三方***103上运行第三方应用并且向基于web的存储***101 提供界面(或者指示期望的用户界面的数据),该基于web的存储***然后向用户设备114显示用户界面。备选地,第三方服务器108 可以通过网络102向用户设备114直接地显示用户界面。
为了传输转换的文件,处理器105可以向用户或者向第三方***103传输用于直接下载转换的文件的下载链接。在这一情况下,下载链接可以包括用于提供文件的超链接、url、链接、快捷方式、引用文件或者任何其它适当下载链接。此外,下载链接可以具有对在原生数据库106上存储的原有原生文件的引用而添加对转换的文件格式的指示。
在已经成功地传输转换的文件之后,基于web的存储***101 可以相应地更新适当数据结构、比如数据结构200和300以指示哪些原生文件已经被哪些第三方应用访问。此外,可以保存、压缩或者删除在转换过程期间创建的转换的文件和/或任何数据(比如可以在元数据存储库109中存储的指针或者引用文件)。
图7是根据一个示例实施例的如处理器105执行的用于更新与第三方应用关联的文件格式列表的方法700的流程图。方法700包括以下步骤:开发者登录***100(步骤702),从开发者接收对第三方应用的选择(步骤704),以及从开发者接收对于添加用于选择的应用的支持的可导入文件格式的请求(步骤706)。如果处理器 105确定准许请求并且更新与应用关联的文件格式列表(判决块 708),则更新列表(步骤712)。否则,拒绝请求(步骤710)。
在步骤702,开发者登录***100。作为示例,开发者可以通过经由开发者设备112输入用户名和口令(或者提供其它标识信息) 来向基于web的存储***101认证。在确定开发者已经登录时,处理器105可以访问与开发者关联的一个或者多个列表。具体而言,开发者可以与第三方***103上的一个或者多个第三方应用关联,并且可以对于每个第三方应用而存储数据结构、比如数据结构300。
在步骤704,开发者选择第三方应用。具体而言,开发者可以与在一个或者多个第三方***103上存储的多个第三方应用关联,并且开发者可以具有与***100的将开发者与这些应用中的每个应用关联的开发者账户。此外,相同第三方应用可以具有不同发布版本,并且相同应用的不同版本可以具有不同的支持的可导入文件格式列表。因此,在步骤704,开发者除了第三方应用之外还可以指定版本标识符。作为示例,在登录之后,可以向开发者呈现关联第三方应用及其版本标识符的菜单。开发者可以通过从菜单选择选项来选择应用。在另一示例中,开发者可以向开发者的账户添加应用或者应用的新版本。在这一情况下,开发者提供指示新应用或者版本的数据,并且基于web的存储***101可以关联开发者的账户与新应用或者版本。
在步骤706,开发者可以传输对于向用于选择的第三方应用的支持的可导入文件格式列表添加文件格式的请求。具体而言,选择的第三方应用可以新近地已经被更新以支持新可导入文件格式。作为另一示例,开发者可以向空的支持的可导入文件格式列表注册新应用或者应用版本。在这一情况下,在步骤706的开发者的请求是对于添加可导入文件格式以与新应用或者版本关联的初始请求。
在判决块708,处理器105确定是否通过更新支持的可导入文件格式列表来准许在步骤706的开发者的请求。作为示例,如果确定开发者无适当访问级别进行对于第三方应用的这样的请求,则处理器105可以在步骤710拒绝请求。备选地,在步骤712,处理器105 更新与选择的第三方应用对应的支持的可导入文件格式列表。具体而言,更新列表以包括请求的文件格式。在一些实施例中,在步骤706的请求可以是对于删除或者替换列表中的现有文件格式的请求,并且在步骤712相应地更新列表。
一般而言,这里公开的用于在开发者与基于web的存储***101 之间的交互的***和方法可以包括使用API用于提供在两个***之间的接口。
可以用多种方式中的任何方式布置、分布和组合图1的***100 的部件。图8是根据一个示例实施例的用于执行这里描述的过程中的任何过程的计算设备、比如图1的***的部件中的任何部件的框图。可以在一个或者多个计算设备800上实施这些***的部件中的每个部件。在某些方面中,可以在一个计算设备800内包括这些***的部件中的多个部件。在某些实现中,可以跨若干计算设备800 实施部件和存储设备。
计算设备800包括至少一个通信接口单元、输入/输出控制器 810、***存储器和一个或者多个数据存储设备。***存储器包括至少一个随机存取存储器(RAM 802)和至少一个只读存储器(ROM 804)。所有这些单元与中央处理单元(CPU 806)通信以有助于计算设备800的操作。可以用许多不同方式配置计算设备800。例如计算设备800可以是常规单独计算机,或者备选地,可以跨多个计算机***和架构分布计算设备800的功能。在图8中,计算设备800 经由网络或者本地网络链接到其它服务器或者***。
可以在分布式架构中配置计算设备800,其中在分离单元或者位置中容纳数据库和处理器。一些单元执行主要处理功能,并且至少包含通用控制器或者处理器和***存储器。在分布式架构实现方式中,这些单元中的每个单元可以经由通信接口单元808附着到通信集线器或者端口(未示出),该通信集线器或者端口用作与其它服务器、客户端或者用户计算机和其它有关设备的主要通信链路。通信集线器或者端口可以自身具有最少处理能力从而主要地用作通信路由器。多种通信协议可以是***的一部分、包括但不限于:以太网、SAP、SASTM、ATP、BLUETOOTHTM、GSM和TCP/IP。
CPU 806包括处理器、比如一个或者多个常规微处理器和一个或者多个补充协同处理器、比如用于从CPU 806分流工作量的数学协同处理器。CPU 806与通信接口单元808和输入/输出控制器810通信,CPU 806通过它们与其它设备、比如其它服务器、用户终端或者设备通信。通信接口单元808和输入/输出控制器810可以包括用于例如与网络818中的其它处理器、服务器或者客户端终端同时通信的多个通信信道。
CPU 806也与数据存储设备通信。数据存储设备可以包括磁、光或者半导体存储器的适当组合并且可以例如包括RAM 802、ROM 804、闪存驱动、光盘、比如紧致盘或者硬盘或者驱动。CPU 806和数据存储设备各自可以例如完全地位于单个计算机或者其它计算设备内;或者由通信介质、比如USB端口、串行端口线缆、同轴线缆、以太网线缆、电话线、射频收发器或者其它相似无线或者有线介质或者前述各项的组合相互连接。例如CPU 806可以经由通信接口单元808连接到数据存储设备。CPU 806可以被配置为执行一个或者多个具体处理功能。
数据存储设备可以例如存储(i)用于计算设备800的操作*** 812;(ii)适于根据这里描述的***和方法并且具体地根据关于CPU 806具体地描述的过程来指引CPU 806的一个或者多个应用814(例如计算机程序代码或者计算机程序产品);或者(iii)适于存储可以用来存储程序所需信息的信息的数据库816。
操作***812和应用814可以例如以压缩、未编译和加密格式来存储并且可以包括计算机程序码。可以从除了数据存储设备之外的计算机可读介质、比如从ROM 804或者从RAM 802向处理器的主存储器中读取程序的指令。尽管执行程序中的指令序列使CPU 806执行这里描述的过程步骤,但是可以取代用于实施本公开内容的过程的软件指令或者与这些软件指令组合使用硬接线电路装置。因此,描述的***和方法不限于硬件和软件的任何具体组合。
可以提供适当计算机程序代码用于执行与如这里描述的那样向第三方***提供访问文件内容有关的一个或者多个功能。程序也可以包括程序单元、比如操作***812、数据库管理***和“设备驱动器”,这些设备驱动器允许处理器经由输入/输出控制器810与计算机***设备(例如视频显示器、键盘、计算机鼠标等)交互。
如这里所用术语“计算机可读介质”是指任何提供或者参与提供指令给计算设备800的处理器(或者这里描述的设备的任何其它处理器)用于执行的非瞬态介质。这样的介质可以采用许多形式、包括但不限于非易失性介质和易失性介质。非易失性介质例如包括光、磁或者光磁盘或者集成电路存储器、比如闪存。易失性介质包括通常构成主存储器的动态随机存取存储器(DRAM)。常见形式的计算机可读介质例如包括软盘、柔性盘、硬盘、磁带、任何其它磁介质、CD-ROM、DVD、任何其它光介质、打孔卡、纸带、具有孔图案的任何其它物理介质、RAM、PROM、EPROM或者EEPROM(电可擦除可编程只读存储器)、FLASH-EEPROM、任何其它存储器芯片或者盒或者计算机可从其读取的任何其它非瞬态介质。
各种形式的计算机可读介质可以参与向CPU 806(或者这里描述的设备的任何其它处理器)输送一个或者多个指令的一个或者多个序列用于执行。例如可以初始地在远程计算机(未示出)的磁盘上承载指令。远程计算机可以向它的动态存储器中加载指令并且通过以太网连接、线缆线或者甚至使用调制解调器的电话线发送指令。在计算设备800本地的通信设备(例如服务器)可以在相应通信线上接收数据并且在用于处理器的***总线上放置数据。***总线向主存储器输送数据,处理器从该主存储器取回和执行指令。主存储器接收的指令可以可选地在由处理器执行之前或者之后存储于存储器中。此外,可以经由通信端口接收指令作为电、电磁或者光信号,这些信号是输送各种类型的信息的无线通信或者数据流的示例形式。
尽管这里已经示出和描述本公开内容的各种实施例,但是本领域技术人员将清楚仅通过示例提供这样的实施例。许多变化、改变和替换现在将为本领域技术人员所想到而未脱离公开内容。应当理解可以在实现公开内容时运用对这里描述的公开内容的实施例的各种备选。
Claims (14)
1.一种用于向应用导出文件的方法,包括:
由处理器从用户接收对于访问在基于web的存储***上存储的文件的请求,其中:
所述请求包括对用于打开所述文件的应用的指明;并且
所述文件与原生格式关联;
由所述处理器确定所述应用并未被配置为导入处于所述原生格式的所述文件;
由所述处理器确定所述文件是否能通过交叉引用与所述文件关联的可导出格式列表和与所述应用关联的可导入格式列表以标识所述可导出格式列表与所述可导入格式列表之间的匹配而被转换成能由所述应用导入的可导入格式,其中;
与所述文件关联的所述可导出格式列表通过标识与所述原生格式关联的一个或多个应用来确定;
所述一个或多个应用中的每个应用与指示所述一个或多个应用被配置为提供的文件格式的对应可导出格式列表关联;
所述一个或多个应用中的每个应用与指示所述一个或多个应用被配置为打开的文件格式的对应可导入格式列表关联;
与所述文件关联的所述可导出格式列表是用于所述一个或多个应用的所述对应可导出格式列表的联合;并且
所述可导出格式列表与所述基于web的存储***特有的第一方原生应用关联,以使得所述原生格式中的所述文件包括所述基于web的存储***特有的且所述应用被禁止访问的专有内容;
由所述处理器将所述文件从所述原生格式转换为与所述匹配对应的所述可导入格式,其中所述转换包括从处于所述原生格式的所述文件去除所述专有内容;
由所述处理器将处于所述可导入格式的转换的所述文件导出至所述应用,其中所述导出包括传输与转换的所述文件对应的下载数据;以及
由所述应用打开转换的所述文件。
2.根据权利要求1所述的方法,其中所述交叉引用包括标识在所述可导出格式列表和所述可导入格式列表二者中包括的一个或者多个格式,所述可导出格式列表包括所述文件针对其能够被转换成的文件格式,并且所述可导入格式列表包括所述应用针对其能够打开的文件格式。
3.根据权利要求1所述的方法,还包括由所述处理器在所述可导出格式列表与所述可导入格式列表之间存在多个匹配时接收指示期望的格式的用户输入。
4.根据权利要求1所述的方法,还包括由所述处理器从所述应用的开发者接收对于关联可导入格式与所述应用的关联请求,其中所述应用的所述开发者传输所述关联请求以指示所述应用与包括在所述关联请求中的所述可导入格式兼容。
5.根据权利要求4所述的方法,还包括由所述处理器基于所述关联请求、通过将包括在所述关联请求中的所述可导入格式添加到所述可导入格式列表来更新与所述应用关联的可导入格式列表。
6.根据权利要求1所述的方法,还包括通过生成指向处于所述原生格式的所述文件的指针而不修改处于所述原生格式的所述文件来保存转换的所述文件。
7.根据权利要求1所述的方法,其中所述可导出格式列表与不同于所述基于web的存储***的第三方***特有的第三方原生应用关联,以使得处于所述原生格式的所述文件包括所述第三方***特有的且所述应用被禁止访问的专有内容,并且将所述文件从所述原生格式转换为所述可导入格式包括去除所述专有内容。
8.一种用于向应用导出文件的***,包括:
接收器,被配置为从用户接收对于访问在基于web的存储***上存储的文件的请求,其中:
所述请求包括对用于打开所述文件的应用的指明;并且
所述文件与原生格式关联;以及
硬件处理器,被配置为:
确定所述应用并未被配置为导入处于所述原生格式的所述文件;
确定所述文件是否能通过交叉引用与所述文件关联的可导出格式列表和与所述应用关联的可导入格式列表以标识所述可导出格式列表与所述可导入格式列表之间的匹配而被转换成能由所述应用导入的可导入格式,其中;
与所述文件关联的所述可导出格式列表通过标识与所述原生格式关联的一个或多个应用来确定;
所述一个或多个应用中的每个应用与指示所述一个或多个应用被配置为提供的文件格式的对应可导出格式列表关联;
所述一个或多个应用中的每个应用与指示所述一个或多个应用被配置为打开的文件格式的对应可导入格式列表关联;
与所述文件关联的所述可导出格式列表是用于所述一个或多个应用的所述对应可导出格式列表的联合;并且
所述可导出格式列表与所述基于web的存储***特有的第一方原生应用关联,以使得所述原生格式中的所述文件包括所述基于web的存储***特有的且所述应用被禁止访问的专有内容;
将所述文件从所述原生格式转换为与所述匹配对应的所述可导入格式,其中所述硬件处理器被配置为通过从处于所述原生格式的所述文件去除所述专有内容来转换所述文件;以及
将处于所述可导入格式的转换的所述文件导出至所述应用,其中所述硬件处理器通过传输与转换的所述文件对应的下载数据来导出。
9.根据权利要求8所述的***,其中所述交叉引用包括标识在所述可导出格式列表和所述可导入格式列表二者中包括的一个或者多个格式,所述可导出格式列表包括所述文件针对其能够被转换成的文件格式,并且所述可导入格式列表包括所述应用针对其能够打开的文件格式。
10.根据权利要求8所述的***,其中所述接收器还被配置为在所述可导出格式列表与所述可导入格式列表之间存在多个匹配时接收指示期望的格式的用户输入。
11.根据权利要求8所述的***,其中所述接收器还被配置为从所述应用的开发者接收对于关联可导入格式与所述应用的关联请求,其中所述应用的所述开发者传输所述关联请求以指示所述应用与包括在所述关联请求中的所述可导入格式兼容。
12.根据权利要求11所述的***,其中所述硬件处理器还被配置为基于所述关联请求、通过将包括在所述关联请求中的所述可导入格式添加到所述可导入格式列表来更新与所述应用关联的可导入格式列表。
13.根据权利要求8所述的***,其中所述硬件处理器还被配置为通过生成指向处于所述原生格式的所述文件的指针而不修改处于所述原生格式的所述文件来保存转换的所述文件。
14.根据权利要求8所述的***,其中所述可导出格式列表与不同于所述基于web的存储***的第三方***特有的第三方原生应用关联,以使得处于所述原生格式的所述文件包括所述第三方***特有的且所述应用被禁止访问的专有内容,并且将所述文件从所述原生格式转换为所述可导入格式包括去除所述专有内容。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261664527P | 2012-06-26 | 2012-06-26 | |
US61/664,527 | 2012-06-26 | ||
US13/833,479 | 2013-03-15 | ||
US13/833,479 US9268802B2 (en) | 2012-06-26 | 2013-03-15 | System and method for end-to-end exposure of exported representations of native data types to third-party applications |
PCT/US2013/043255 WO2014003955A1 (en) | 2012-06-26 | 2013-05-30 | System and method for end-to-end exposure of exported representations of native data types to third-party applications |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104520834A CN104520834A (zh) | 2015-04-15 |
CN104520834B true CN104520834B (zh) | 2017-12-05 |
Family
ID=49775326
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380041512.6A Active CN104520834B (zh) | 2012-06-26 | 2013-05-30 | 用于向第三方应用端到端地暴露原生数据类型的导出的表示的***和方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9268802B2 (zh) |
EP (1) | EP2864900B1 (zh) |
CN (1) | CN104520834B (zh) |
DE (1) | DE202013012465U1 (zh) |
WO (1) | WO2014003955A1 (zh) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9658737B2 (en) * | 2013-08-16 | 2017-05-23 | Disney Enterprises, Inc. | Cross platform sharing of user-generated content |
US9536199B1 (en) * | 2014-06-09 | 2017-01-03 | Google Inc. | Recommendations based on device usage |
EP3258672A4 (en) * | 2015-04-30 | 2018-02-28 | Huawei Technologies Co., Ltd. | Cloud file transmission method, terminal and cloud server |
US10771514B2 (en) | 2015-11-12 | 2020-09-08 | Disney Enterprises, Inc. | Systems and methods for facilitating the sharing of user-generated content of a virtual space |
US10086276B2 (en) | 2015-12-03 | 2018-10-02 | Disney Enterprises, Inc. | Systems and methods for procedural game content generation via interactive non-player game entities |
CN107203574B (zh) * | 2016-03-18 | 2021-01-01 | 伊姆西Ip控股有限责任公司 | 数据管理和数据分析的聚合 |
US10594721B1 (en) | 2016-11-09 | 2020-03-17 | StratoKey Pty Ltd. | Proxy computer system to provide selective decryption |
CN107291673A (zh) * | 2017-05-19 | 2017-10-24 | 广州视源电子科技股份有限公司 | 一种文档的处理方法、***、可读存储介质及计算机设备 |
US10956372B2 (en) * | 2017-08-23 | 2021-03-23 | Bank Of America Corporation | Image capturing and processing for legacy format integration |
CN109002483A (zh) * | 2018-06-22 | 2018-12-14 | 平安科技(深圳)有限公司 | 文档管理方法、装置、计算机设备及存储介质 |
EP3821569A1 (en) * | 2018-07-09 | 2021-05-19 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and system for real-time encrypted video quality analysis |
US10936751B1 (en) | 2018-12-14 | 2021-03-02 | StratoKey Pty Ltd. | Selective anonymization of data maintained by third-party network services |
CN110362630B (zh) * | 2019-07-19 | 2023-11-28 | 深圳前海微众银行股份有限公司 | 数据管理方法、装置、设备与计算机可读存储介质 |
US11698891B2 (en) * | 2019-07-30 | 2023-07-11 | Salesforce.Com, Inc. | Database systems and related multichannel communication methods |
US11741409B1 (en) | 2019-12-26 | 2023-08-29 | StratoKey Pty Ltd. | Compliance management system |
US11416874B1 (en) | 2019-12-26 | 2022-08-16 | StratoKey Pty Ltd. | Compliance management system |
CN113076725B (zh) * | 2020-01-03 | 2023-01-06 | 福建天泉教育科技有限公司 | 一种基于ppt推广第三方软件的方法及终端 |
CN112287265B (zh) * | 2020-12-24 | 2021-05-07 | 深圳市蓝凌软件股份有限公司 | 一种基于异步事件驱动的文件转换方法及*** |
US11388248B1 (en) | 2021-08-18 | 2022-07-12 | StratoKey Pty Ltd. | Dynamic domain discovery and proxy configuration |
CN115190014A (zh) * | 2022-06-18 | 2022-10-14 | 深圳市知学云科技有限公司 | 一种面向企业的文件内容存储及转换方法、***及设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1391694A (zh) * | 1999-08-20 | 2003-01-15 | 汤姆森特许公司 | 数字视频处理和用于视频、音频和辅助数据的存储*** |
CN1604069A (zh) * | 2003-09-29 | 2005-04-06 | 中国人民解放军理工大学通信工程学院 | 兼容移动访问的多媒体网页快速适配技术 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4035872B2 (ja) * | 1997-10-27 | 2008-01-23 | 株式会社日立製作所 | ファイルフォーマット変換方法とこれを用いたファイルシステム及び情報システム及び電子商取引システム |
US6092114A (en) | 1998-04-17 | 2000-07-18 | Siemens Information And Communication Networks, Inc. | Method and system for determining the location for performing file-format conversions of electronics message attachments |
US7613798B2 (en) * | 2001-01-29 | 2009-11-03 | Thinprint Gmbh | Method for processing printing orders in server-based networks, and corresponding server-based network |
US7065588B2 (en) * | 2001-08-10 | 2006-06-20 | Chaavi, Inc. | Method and system for data transformation in a heterogeneous computer system |
US20040030995A1 (en) * | 2002-08-08 | 2004-02-12 | International Business Machines Corporation | Web-based document printing and conversion |
JP2005258669A (ja) * | 2004-03-10 | 2005-09-22 | Riso Kagaku Corp | ダイレクト印刷装置、ダイレクト印刷方法、及びダイレクト印刷プログラム |
US20080222517A1 (en) * | 2007-03-09 | 2008-09-11 | Task Performance Group, Inc. | Applying Patterns to XSD for Extending Functionality to Both XML and non-XML Data Data Structures |
US20090193030A1 (en) * | 2008-01-30 | 2009-07-30 | Gorsev Blagojce | electronic device, a database, system, and method for presenting the content of a file to a user |
US20100325155A1 (en) | 2009-06-23 | 2010-12-23 | James Skinner | Systems and Methods for Providing Access to Various Files Across a Network |
US20110296048A1 (en) | 2009-12-28 | 2011-12-01 | Akamai Technologies, Inc. | Method and system for stream handling using an intermediate format |
KR101788061B1 (ko) * | 2011-06-16 | 2017-10-19 | 엘지전자 주식회사 | 가상 머신이 탑재된 디스플레이 장치 및 그 제어 방법 |
-
2013
- 2013-03-15 US US13/833,479 patent/US9268802B2/en active Active
- 2013-05-30 EP EP13809012.1A patent/EP2864900B1/en active Active
- 2013-05-30 WO PCT/US2013/043255 patent/WO2014003955A1/en unknown
- 2013-05-30 DE DE202013012465.2U patent/DE202013012465U1/de not_active Expired - Lifetime
- 2013-05-30 CN CN201380041512.6A patent/CN104520834B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1391694A (zh) * | 1999-08-20 | 2003-01-15 | 汤姆森特许公司 | 数字视频处理和用于视频、音频和辅助数据的存储*** |
CN1604069A (zh) * | 2003-09-29 | 2005-04-06 | 中国人民解放军理工大学通信工程学院 | 兼容移动访问的多媒体网页快速适配技术 |
Also Published As
Publication number | Publication date |
---|---|
US9268802B2 (en) | 2016-02-23 |
CN104520834A (zh) | 2015-04-15 |
WO2014003955A1 (en) | 2014-01-03 |
EP2864900B1 (en) | 2020-12-09 |
US20130346453A1 (en) | 2013-12-26 |
EP2864900A1 (en) | 2015-04-29 |
DE202013012465U1 (de) | 2017-01-04 |
EP2864900A4 (en) | 2015-12-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104520834B (zh) | 用于向第三方应用端到端地暴露原生数据类型的导出的表示的***和方法 | |
CN105793840B (zh) | 在撰写电子邮件的同时文件预览和许可 | |
US8918447B2 (en) | Methods, apparatus, systems and computer readable mediums for use in sharing information between entities | |
US10262008B2 (en) | Filename-based inference of repository actions | |
US9235636B2 (en) | Presenting data in response to an incomplete query | |
CN101263477B (zh) | 用于管理与计算机生成文档相关联的数据的***和方法 | |
KR101754258B1 (ko) | 마크업 언어 기반 문서에 대한 동시 편집 정합성 검증 장치 및 방법 | |
CN105556533A (zh) | 自动生成证书文档 | |
CN108351766A (zh) | 从移动设备创建和修改应用 | |
US8266589B2 (en) | Optimizing the handling of source code requests between a software configuration management (SCM) system and a software integrated development environment (IDE) using projected ancillary data | |
US11586645B2 (en) | Systems and methods for integrated dynamic runtime ETL tool and scalable analytics server platform | |
US20150081834A1 (en) | Information processing system and method | |
US8245182B2 (en) | Class selectable design sharing | |
US8599397B2 (en) | Access control system, apparatus, and program | |
JP5526991B2 (ja) | 情報処理装置、情報処理方法、プログラム、情報処理システム | |
Eckard et al. | Bridging technologies to efficiently arrange and describe digital archives: the Bentley Historical Library’s ArchivesSpace-Archivematica-DSpace Workflow Integration Project | |
US9195811B2 (en) | Functionality watermarking and management | |
CN102193623A (zh) | 信息输入辅助设备和信息输入辅助方法 | |
US20230036217A1 (en) | Systems and methods for using a structured data database and for exchanging electronic files containing unstructured or partially structered data | |
WO2017147762A1 (zh) | 基于生物特征实现的交互***及装置 | |
CN113515921A (zh) | 专利文本的辅助生成方法及电子终端 | |
CN107491466A (zh) | 客户端设备、信息处理***、以及信息处理方法 | |
JP2013065307A (ja) | マッピングテーブル生成装置 | |
EP4054166B1 (en) | Information processing apparatus, information processing program, and information processing method | |
CN107544750A (zh) | 终端设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder |
Address after: American California Patentee after: Google limited liability company Address before: American California Patentee before: Google Inc. |
|
CP01 | Change in the name or title of a patent holder |