CN101203832B - 提供内容聚合平台的系统和方法 - Google Patents

提供内容聚合平台的系统和方法 Download PDF

Info

Publication number
CN101203832B
CN101203832B CN2006800184210A CN200680018421A CN101203832B CN 101203832 B CN101203832 B CN 101203832B CN 2006800184210 A CN2006800184210 A CN 2006800184210A CN 200680018421 A CN200680018421 A CN 200680018421A CN 101203832 B CN101203832 B CN 101203832B
Authority
CN
China
Prior art keywords
feed
application program
rss
data
platform
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
Application number
CN2006800184210A
Other languages
English (en)
Other versions
CN101203832A (zh
Inventor
A·S·甘迪
E·J·帕蒂斯
J·T·金
S·O·林德赛
W·V·沃科什
W·古尔德
B·A·摩根
C·科怀恩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN101203832A publication Critical patent/CN101203832A/zh
Application granted granted Critical
Publication of CN101203832B publication Critical patent/CN101203832B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1246Job translation or job parsing, e.g. page banding by handling markup languages, e.g. XSL, XML, HTML
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/62Establishing a time schedule for servicing the requests

Landscapes

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

Abstract

诸如web内容聚合平台的内容聚合平台管理、组织从因特网获取的内容,并使之可用于消耗。在至少某些实施例中,平台可以获取和组织web内容,并使得这种内容可由许多不同类型的应用程序用于消耗。这些应用程序可以必须理解特定的聚合格式,也可以不理解。应用程序编程接口(API)暴露对象模型,以允许应用程序和用户方便地完成诸如创建、读取、更新、删除订阅源等许多不同任务。

Description

提供内容聚合平台的系统和方法
背景技术
RSS代表Really Simple Syndication(真正简单聚合),是web内容聚合格式中的一种类型。RSS web订阅源在web上越来越受欢迎,而且多种带RSS支持的软件应用程序也正在开发中。这些多种的应用程序可以具有许多可变特征,并且会引导用户安装几种不同的允许RSS的应用程序。每种RSS应用程序一般会具有其自身的订阅列表。当订阅列表较小时,用户在不同的应用程序间输入和管理这些订阅是相当容易的。然而,随着订阅列表的增长,结合这些不同的允许RSS的应用程序中的每一个来管理订阅变得非常困难。因此,订阅列表很容易变得不同步。 
此外,web订阅源有多种不同的文件格式,流行的是RSS 0.91、0.92、1.0、2.0和Atom。每个允许RSS的应用程序必须支持这些格式中的大多数,并且在将来需要其支持的可能更多。为某些应用程序实现用于RSS环境的解析器会比其他更难。假定并非所有的应用程序开发者都是拥有与每种复杂的格式有关的经验和知识的RSS专家,则所有的开发者就不太可能都能正确地实现解析器。因此可以给出大量的文件格式,某些应用程序开发者将不会选择在此空间内开发应用程序,或者如果他们这样做了,这些应用程序则不会被配置用以完全利用在不同文件格式之间都可用的所有特征。 
RSS和web订阅源的另一方面是有关内容的发布。例如,拥有网络日志(weblog)的用户数目在增加。有许多提供免费网络日志服务的公共可用服务。然而,向网络日志服务发表内容可能是相当麻烦的,因为它可能涉及打开浏览器,导航到网络日志服务,登陆,接着键入条目并将其提交。许多应用程序开发者希望能从他们的特定应用程序中发表,而不是由于必须到某个网站而打断用户流程。此外,有许多不同类型的协议可以用于在客户端设备和特定服务之间通信。由此,应用程序开发者要实现所有的协议是不太可能的。因而用户体验将无法像它可以的那样完全。 
发明内容
诸如web内容聚合平台等内容聚合平台管理、组织从诸如因特网、内联网、 专用网或其他计算设备等获取的内容并使之可用于消耗。在一些实施例中,平台可以获取并组织web内容,并使这种内容能由许多不同类型的应用程序消耗。这些应用程序可以必须理解特定的聚合格式,也可以不理解。应用程序编程接口(API)暴露对象模型,以允许应用程序和用户方便地完成诸如创建、读取、更新、删除订阅源等许多不同的任务。 
此外,平台可以提取特定的订阅源格式以提供提高进入平台的订阅源数据的可用性的通用格式。另外,平台以可使得附件对知道聚合的应用程序和不知道聚合的应用程序都可消耗的方式来处理和管理经由web订阅源接收到的附件。 
附图说明
图1是根据一个实施例示出的包括web内容聚合平台的一系统的高级框图。 
图2是根据一个实施例示出的对象模型的各方面的框图。 
图3是根据一个实施例示出的订阅源同步引擎的框图。 
图4根据一个实施例示出了一示例性订阅源存储器。 
图5根据一个实施例示出了一示例性用户档案。 
图6根据一个实施例示出了一示例性对象。 
图7根据一个实施例示出了一示例性对象。 
具体实施方式
概述 
描述了一种诸如web内容聚合平台的内容聚合平台,该平台用于管理、组织从诸如因特网、内联网、专用网络或其他计算设备等获取的内容,并使之可用于消耗。在本发明的上下文(context)中,平台是在被设计用于RSS web订阅源的上下文中使用的RSS平台的上下文中描述的。应该理解RSS上下文仅是一个示例,并不旨在将所作权利要求的主题的应用仅限为RSS上下文。以下描述假设读者比较熟悉RSS。关于RSS的背景,存在公开可用规范可以向感兴趣的读者提供信息。 
在本发明中,某些术语会在所描述的RSS实施例的上下文中使用。项目(item)是订阅源的基本单位。项目通常表示带有指向网站上实际文章的链接的网络日志条目或者新的文章/摘要。附件(enclosure)类似于电子邮件附件,除了它有指向实际内容的链接之外。订阅源(feed)是资源内的项目列表,通常仅是最近增加的。系统订阅源列表(system feed list)是用户订阅的订阅源的列表。订阅(subscription) 是指签字参加以接收新订阅源项目的通知的动作。 
在本发明所描述的各个实施例中,平台可以获取和组织web内容,并且使得这种内容可以由许多不同类型的应用程序可用于消耗。这些应用程序可以不必须理解特定的聚合格式,也可以不理解。因此,在实施示例中,不理解RSS格式的应用程序仍然可以通过平台来获取和消耗由平台通过RSS订阅源获取的诸如附件的内容。 
平台包括暴露对象模型的应用编程接口(API),从而允许应用程序和用户方便地完成诸如创建、读取、更新、删除订阅源等许多不同的任务。例如,使用API,许多不同类型的应用程序就能够访问、管理和消耗包括订阅源的列表的订阅源列表。 
在至少一个实施例中,平台提供多个不同的订阅源解析器,每个解析器可以解析其中可能接收到web订阅源的特定格式。解析所得的格式随后会被转换成接着可由应用程序和用户利用的通用格式(common format)。通用格式被用于提取由任何一个特定格式具体化的特定概念以得到更为通用的、可理解的格式。 
此外,平台以可使得附件对知道聚合的应用程序和不知道聚合的应用程序都可消耗的方式来处理和管理经由web订阅源接收到的附件。在至少一些实施例中,API允许发现附件及其相关联的订阅源项目之间的关系。 
在以下的讨论中,首先在题目为“web内容聚合平台”之下描述一示例性平台及其组件。在该讨论之后,一实现的示例(在题目“实施示例”之下)被提供,并描述暴露对象模型的一组API,从而使得应用程序和用户能够以一种有意义并强有力的方式与平台交互。 
Web内容聚合平台
图1根据一个实施例在100处总地示出了一个示例性系统。系统100的各方面可以结合任何适用的硬件、软件、固件及其组合实现。在至少一个实施例中,系统的各方面被实现为驻留在某些类型的计算机可读介质上的计算机可读指令。 
在该示例中,系统100包括内容聚合平台102和应用程序104的集合,其中的每个独立个体都可被配置成以不同的方式来利用平台,这在下文中会变得显而易见。在至少一些实施例中,内容聚合平台包括web内容聚合平台。在以下的讨论中,在RSS平台的上下文中描述平台102。应该理解这仅是一个示例,而非旨在将所作权利要求的主题的应用仅限制在RSS环境。相反地,所描述的实施例的原理 可以用在其他环境中,而不背离所作权利要求的主题的精神和范围。 
在该示例中,平台102包括由一组API暴露的对象模型106,使得应用程序104可以与平台交互。提供了同步引擎108并将其配置成获取web内容,并且至少在某些实施例中将web内容转换成所谓的通用格式,将在随后对其做出更详细的描述。 
发布引擎110允许用户以经由API提取用于在用户的应用程序或计算设备和服务器或要接收内容的目标软件之间通信的通信协议的方式发布诸如网络日志的内容。 
此外,在至少一个实施例中,平台102包括存储订阅源列表114和订阅源数据116两者的订阅源存储112。此外,平台102在至少一个实施例中利用文件系统118来存储和维护附件120。使用文件系统有其优点,其中包括能让不必须理解聚合格式的应用程序消耗可能感兴趣的附件。此外,平台102包括持有要到特定web可访问位置上发帖的贴子(post)数据124的贴子队列122。 
如上所述,平台102可以使得应用程序访问、消耗和发布web内容。因此,应用程序104集合可以包括许多不同的应用程序。在至少一些实施例中,应用程序的类型可以包括那些知道聚合的应用程序和那些不知道聚合的应用程序。“知道聚合”是指应用程序至少有些熟悉所使用的聚合格式。因此,在RSS上下文中,知道聚合的应用程序是可以被配置成处理数据或在其他方面与以RSS格式表示的内容交互的应用程序。这可以包括拥有解析的能力并与RSS格式数据有意义地交互。类似地,不知道聚合的应用程序一般不被配置成理解聚合格式。然而,如将在下文中显而易见的,不知道聚合的应用程序仍可以通过平台访问和消耗以聚合格式到达平台的内容。 
更具体地考虑可以与平台交互的不同类型的应用程序,集合104包括web浏览器应用程序122、RSS阅读器应用程序124、数字图像库应用程序126、媒体播放器应用程序128和网络日志服务130。在该示例中,RSS阅读器应用程序124是知道聚合的应用程序,而媒体播放器128无需是知道聚合的应用程序。此外,web浏览器应用程序122可以是知道聚合的应用程序,也可以不是。当然,这些应用程序仅是不同类型可与平台交互的应用程序的示例。同样地,也可以使用与以上所示相同或不同的其他类型的应用程序,而不背离所作权利要求的主题的精神和范围。作为示例而非限制,这些其他类型的应用程序可以包括用于事件订阅源的日历应用程序、用于联系人订阅源的社交网络和电子邮件应用程序、用于图片订阅源的屏幕 保护应用程序。用于文档订阅源的CRM等。 
在以下讨论中,将更详细地在其自己的标题下描述平台102的各独立组件的各方面。 
对象模型
图2根据一个实施例示出了对象模型106的各独立对象。要描述的对象模型仅是可以使用的对象模型的一个示例,而非旨在限制将所作权利要求的主题的应用仅限为以下所描述的对象模型。如上所述,对象模型由API暴露,以下描述了它的一个示例。 
在该特定的对象模型中,提供了被称为订阅源的顶层对象200。订阅源对象200具有被称为订阅的类型文件夹的属性。订阅或文件夹对象202被建模为文件夹分层结构。由此,在该特定实施例中,订阅源或文件夹对象对象具有包括类型文件夹的子文件夹204和类型订阅源的订阅源206的属性。在订阅源对象206之下的是类型项目的项目对象208,而在项目对象206下是类型对象的附件对象210。 
对象模型的各独立对象具有可用于管理由平台接收的web内容的属性、方法和事件(在某些情况下)。上述对象模型允许使用分层结构来进行诸如管理订阅源列表之类的事件。例如,平台可以使用文件夹结构来执行一组订阅源。本领域的技术人员会理解,这为应用程序的开发者带来了方便。例如,执行一组订阅源提供了刷新位于新文件夹中的所有“新闻”订阅源的能力。 
作为一个示例,考虑以下情况。假设用户希望和与他们未实际订阅的订阅源相关联的数据交互或消耗该数据。对于被订阅的订阅源,即对于他们在根层的订阅文件夹中被表示的那些订阅源而言,同步引擎108(图1)会拾取订阅源,并以适当的时间间隔开始读取与订阅源相关联的数据。然而也存在使用平台的应用程序不希望被特定订阅源订阅这样的情况。相反地,应用程序只希望使用平台的功能来访问来自订阅源的数据。在这种情况下,在该特定的实施例中,订阅对象202支持一种允许下载订阅源而非订阅订阅源的方法。在该特定的示例中,应用程序调用该方法并向它提供与订阅源相关联的URL。平台于是使用URL来读取应用程序感兴趣的数据。这样,应用程序就能够以特定(adhoc)方式获取与订阅源相关联的数据,而甚至不用订阅该订阅源。 
进一步考虑对象模型,分别考虑项目和附件对象208和210。这里,这些对象很好地反映出RSS如何构建其自身。即,每个RSS订阅源具有在其内部能够可任 选地出现附近的各独立项目。由此,对象模型的结构被配置用以反应该聚合格式的结构。 
从对象模型的角度看,项目主要有两种不同类型的方法和属性。第一种类型的方法/属性适合只读数据是,而第二种方法/属性适合可读写数据。 
作为第一种类型的方法属性的示例,考虑以下情况。每个订阅源可以具有用XML结构表示的与之相关联的数据。该数据包括诸如标题、作者、语言等这些事件。对象模型将这种数据作为只读对待。例如,由订阅源接收并与各独立项目相关联的数据一般被看作只读。这就防止了应用程序操作该数据。使用XML结构来表示订阅源数据也带来了如下的有点。假设同步引擎不理解已增加的新的XML元素。但是,同步引擎仍然能够存储元素及其相关联数据作为订阅源项目数据的部分。对于理解元素的那些应用程序而言,该元素及其关联数据仍然可由应用程序发现并消耗。 
另一方面,也存在被看作读/写数据的数据,诸如特定订阅源的名称。即,用户可能希望为他们特定的用户界面来个性化特定的订阅源。在这种情况下,对象模型具有读/写的属性。例如,用户可能希望将订阅源的名称从“New York Times”改成“NTY”。在这种情况下,名称属性可以是可读且可写的。 
订阅源同步引擎
在所示和所描述的实施例中,订阅源同步引擎108(图1)负责从源下载RSS订阅源。源可以包括有关订阅源的任何合适的源,诸如网站、订阅源发布站点之类。在至少一个实施例中,任何适当的有效URL或资源标识符可以包括订阅源的源。同步引擎接收订阅源并处理各种订阅源格式,看管进度表,处理内容和附件下载并组织存档活动。 
图3根据一个实施例更为详尽地示出了一示例性订阅源同步引擎108。在该实施例中,同步引擎包括订阅源格式模块300、订阅源进度表模块302、订阅源内容下载模块304、附件下载模块306和存档模块308。应该理解为了清楚地描述他们特定的功能,所示这些模块在逻辑上是分开的模块。这些逻辑上分开的模块并不旨在将所作权利要求的主题仅限制到在本申请中所描述的特定结构或体系结构。 
订阅源格式模块——300
在所示和所描述的实施例中,订阅源能够接收多个不同的订阅源格式。作为 示例而非限制,这些订阅源格式可以包括RSS 1.0、1.1、.9x、2.0、Atom.3等。同步引擎经由订阅源格式模块接收各种格式下的这些订阅源、解析格式并将格式转换成被称为通用格式的标准化格式。通用格式本质上是所有支持格式的超集。使用通用格式的好处之一是知道格式的应用程序现在只需要知道一种格式,即通用格式。此外,对被转换成通用格式的内容进行管理要容易地多,因为平台仅需要关心一种格式而非几种格式。此外,随着将来开发出其他的聚合格式,订阅源格式模块可适于处理该格式,而同时允许完全不知道新格式的应用程序仍然能利用和使用经由新格式到达平台的内容。 
关于通用格式,考虑以下情况。从格式的角度看,通用格式由在不同格式之间通用的XML方案表示。在不同的格式中,某些元素可以具有不同的名称、位于XML格式的分层结构中不同的位置等。相应地,通用格式是为了表示从所有可能的不同格式共同得出的通用结构和语法。由此,在某些情况下,来自一种格式的元素会被映射到通用格式的元素中。 
订阅源进度表模块——302
每个订阅源可以具有何时同步引擎108应该检查以确定是否有新的内容可用的其自身的进度表。相应地,同步引擎通过订阅源进度表模块302来管理这些进度表来考虑站点的以及用户的或系统的要求和限制。 
作为一个示例,考虑以下情况。当首先下载订阅源时,更新进度表(即更新订阅源时的进度表)可被包括在订阅源的报头中。在这种情况下,订阅源进度表模块302为该特定的订阅源维持该更新的进度表,并根据该更新的进度表检查新的内容。然而,如果不包括进度表信息,那么订阅源进度表模块可以使用默认进度表来检查新的内容。任何适当的默认进度表可以用作诸如每24个小时重新下载订阅源内容。在至少一些实施例中,用户可以指定默认的工作进度表。 
此外,在至少某些实施例中,订阅源进度表模块可以支持被称为最小进度表的进度表。最小进度表是指定义更新之间时间段的最小更新时间。即,平台不会比最小进度表定义的更频繁地更新订阅源。在至少一些实施例中,用户可以改变最小时间。此外,用户也可以对任一或所有订阅源启动手动刷新。 
除了支持默认和最小进度表之外,在至少某些实施例中,订阅源进度表模块可以支持发布人指定的进度表。如同名称所暗示的,发布人指定的进步表是特定发布人指定的进度表。例如,发布人指定的进度表典型地能够指定还有多少分钟客户 端才应该下一次更新该订阅源。这也可以使用RSS 0.9x/2.0“ttl”元素指定。同步引擎应该直到经过了这些分钟之后才读取订阅源的新副本。发布人指定的进度表也可以按诸如每小时、每天、每周的不同间隔尺寸级别来指定。 
应该注意订阅源文档的每个副本可以具有不同的发布人指定的进度表。例如,在白天,发布人可以提供15分钟的进度表,而在夜间期间,发布人则可以提供1个小时的进度表。在该情况下,同步引擎在每次下载订阅源时更新其行为。 
此外,在至少某些实施例中,同步引擎经由订阅源进度表模块302支持跳过小时和天的概念。具体地,RSS 0.9和2.0能够让服务器屏蔽某些天和小时,期间客户端不应该作出更新。在这种情况下,同步引擎考虑这些设置(如果由服务器设置)并且在那段时间内不更新订阅源。 
除了默认的、最小的和发布人指定的进度表之外,在至少某些实施例中,同步引擎支持用户指定的进度表和手动更新的概念。更具体地,基于每个订阅源,用户可以指定他们选择的进度表。从平台的角度看,用户指定的进度表可以同服务器指定的一样复杂。在这种情况下,平台经由订阅源进度表模块来维持从订阅源提取的最近进度表以及用户进度表。在至少某些实施例中,用户进度表总是覆盖发布人的进度表。此外,在任何时候,应用程序可以启动对所有订阅源或个别订阅源的强制更新。 
有关带宽和服务器的问题,考虑如下情况。依照一个实施例,设计同步引擎可以考虑两个相关的问题。首先,同步应该考虑到用户的带宽和CPU。第二,由于RSS平台的广泛使用,同步引擎应该考虑到它对服务器的影响。这两个问题对何时和如何下载订阅源都有影响。 
从何时下载订阅源的角度看,同步引擎可以依照以下考虑来设计。在服务器没有进度表且没有来自用户的任何其他指令时,同步引擎在它每隔多久更新的问题上应该非常保守。因此,在至少某些实施例中,默认进度表被设置为24小时。此外,为了保护用户的资源免受低效服务器的不利影响,可以强制最小进度表以便即使在服务器另行指定的情况下仍能防止过分频繁地更新同步引擎。此外,应该谨慎地管理登陆时(以及在通用时间间隔处的,例如从启动时间起每小时)的更新。应该延迟订阅源更新直至完成用户登陆后的指定时间段,并且应该略微地交错以防止每小时准点式的大量更新命中。这可以通过相对用户期望立刻进行所有的更新来平衡。此外,当服务器使用上述的跳过小时或跳过天的特征时,客户端不应该在延期时段过去后马上读取更新。代替地,客户端应该在读取内容前等待至多达15分钟 的随机时间间隔。 
为了在这方面协助同步引擎,订阅源进度表模块302可以为每个订阅源维持状态,诸如新鲜和陈旧。“新鲜”的状态意味着基于发布人的进步表,订阅源是新鲜的。“陈旧”状态意味着发布人的进度表指示了更新,但同步引擎还没有完成更新。对最新内容感兴趣的客户端可以请求立即更新,并在可用时被通知。如果设置了该期望,那么同步引擎可以在更新内容时实现任意的延时,而非严格地根据进度表而损害用户和服务器。 
有关如何下载订阅源,考虑如下情况。在一个实施例中,同步引擎可以使用任务调度器来在预定时刻启动同步引擎程序。在完成同步引擎后,它用它应该再次启动同步引擎的下一次时间(即NextSyncEngineLaunchTime(下一次同步引擎启动时间))来更新任务进度表。 
当同步引擎启动时,它使得所有其NextUpdateTime(下一次更新时间)小于或等于currentTime(当前时间)的“挂起”订阅源列队等候,并接着如下处理它们。对于每个订阅源,跟踪以下特性:LastUpdateTime(上次更新时间)、NextUpdateTime、(用分钟数指定的)Interval(间隔)和LastErrorInterval(上次错误间隔)。 
在成功地同步了订阅源结束时,订阅源的LastUpdateTime被设置成当前时间,而NextUpdateTime被设置成LastUpdateTime加上时间间隔加上随机值(时间间隔的1/10)。具体如下: 
LastUpdateTime=currentTime 
NextUpdateTime=currentTime+Interval+Random(Interval*0.1) 
ErrorInterval=0 
Random(argument)(随机(自变量))被定义成1及其argument(自变量)之间的正值。例如Random(10)返回0到10之间的浮动值。 
如果因为以下原因之一,同步订阅源失败: 
HTTP 4xx response code(响应代码); 
HTTP 5xx response code(响应代码); 
Winsock/network error(网络出错);or(或者) 
HTTP 200,but response body has a parsing error(not a recognized feed format)(响应实体有解析错误(不是公认的订阅源格式)) 
那么如下应用指数补偿算法: 
LastUpdateTime=<unchanged> 
ErrorInterval=min(max(ErrorInterval*2,1min),Interval) 
NextUpdateTime=currentTime+ErrorInterval+Random(ErrorInterval*0.1) 
在完成了所有“挂起”订阅源的同步后,同步引擎判定是否有任一订阅源超过了其NextUpdateTime(NextUpdateTime<=currentTime)。如果有,那么就如同刚启动同步引擎一样来列队并处理那些“挂起”订阅源。 
如果有未完成的“挂起”订阅源,则同步引擎判定是否有任何其NextUpdateTime在当前时间的2分钟之内(currentTime+2min>=NextUpdateTime)的“soon-to-sync(将要同步)”订阅源。如果有任何“soon-to-sync”订阅源,那么同步引擎进程继续运行,并且将定时器设置为在NextUpdateTime时“醒来”,并处理“挂起”订阅源。 
如果没有“soon-to-sync”订阅源,那么NextSyncEngineLaunch被设置成带有最快NextUpdateTime的订阅源的NextUpdateTime。接着任务调度器被设置成NextSyncEngineLaunchTime,并且同步引擎进程结束。 
依照一个实施例,如果在队列中有若干个“挂起”订阅源,那么同步引擎可以并行地同步多个订阅源。然而,并行同步的数目应该是有限的,在某个时间段内执行多少个同步也应该是有限的,以便避免占尽网络带宽和处理器利用率。依照一个实施例,订阅源同步的定形经由令牌存储段(token-bucket)提供。在概念上,令牌存储段如下工作。 
●每1/r秒将令牌加入到存储段中。 
●存储段可以最多持有b个令牌;如果当令牌达到时存储段是满的,就将其丢弃; 
●当订阅源需要被同步时,从存储段中移出令牌并将订阅源同步。 
●如果没有令牌可用,那么订阅源就待在队列中,并且等待直至有令牌变得可用。 
这种方法允许多达b个订阅源的突发订阅源同步。同步终究被限制为恒速r。在实现示例中,同步引擎为b和r使用以下值:b=4且r=2。 
订阅源内容下载模块——304
依照一个实施例,订阅源内容下载模块304处理下载订阅源并将新的订阅源项目与现有订阅源数据合并的进程。 
作为如何实现订阅源内容下载模块的示例,考虑如下情况。在适当的时候,同步引擎经由订阅源内容下载模块连接到服务器并下载适当的内容。 
依照一个实施例,平台被配置成支持不同的协议以下载内容。例如,同步引擎可以支持经HTTP下载订阅源文档。此外,同步引擎可以支持加密的HTTP URL(例如SSL、https等)。同样地,同步引擎也可以支持使用HTTPgzip支持的压缩,并支持从通用命名标准(UNC)中共享的订阅源下载。 
此外,同步引擎经由订阅源内容下载模块可以支持各种类型的认证。例如,同步引擎可以存储每个订阅源的用户名/密码,并可以使用用于HTTP基本认证的该用户名/密码来检索订阅源文档。 
有关更新订阅源,考虑如下情况。为了判定订阅源是否有新的内容,同步引擎为每个订阅源保存如下信息片段: 
●由对HTTP响应的上次修改的报头所报告的上次修改订阅源的时间; 
●上次HTTP响应中Etag报头的值;以及 
●订阅源最近pubDate的值(即订阅源级发布日期和时间)。 
如果站点支持Etag或上次修改,那么同步引擎可以使用这些来检查是否有新内容。站点可以使用HTTP响应代码304来响应,以指示没有新内容。否则,就下载内容。例如,如果站点支持RFC 3229-for-feeds,那么站点可以基于客户端传递的Etag仅返回新的内容。不管使用那种方式,客户端接着将新内容与已存储的内容合并。 
作为如何能够下载订阅源内容的一个实施示例更为详细的描述,考虑如下情况。为了判定特定的站点是否已被改变,同步引擎可以提交带有如下信息的请求: 
●如果客户端有保存的Etag,则是If-None-Match(若无匹配)报头; 
○带有以下值的报头A-IM:订阅源、gzip(用于RFC 3229-for-feeds); 
●如果客户端有保存的上次修改的值,则是If-Modified-Since(若自前有修改)报头。 
如果服务器用HTTP响应代码304响应,则内容尚未被改变,且进程在这里结束。如果服务器用内容(即HTTP代码200或206)响应,则将下载的内容与本地内容合并(注意:代码206指服务器支持RFC 3229-for-feeds,而所下载的内容仅是新内容)。 
如果内容可用且如果同步引擎有已存储的pubDate,并且下载的订阅源文档包含信道级别pubDate元素,那么就比较这两个日期。如果本地pubDate与 下载的pubDate相同,那么内容还没有被更新。于是可以丢弃下载的订阅源文档。 
如果同步引擎每次处理一个项目,那么就将每个项目的pubDate与同步引擎存储(如果有的话)的pubDate作比较,并丢弃较老的项目。接着将每个项目与存储中的项目作比较。比较应该使用引导元素(如果存在的话)或者链接元素(如果不存在引导)。如果发现匹配,那么新项目的内容就替换老项目的内容(如果两者都有pubDate,那么就用它来判定哪个更加新,否则最近下载的是新的)。如果没有发现匹配,那么预先挂起新的项目到存储的订阅源内容中(维持“最近在上”的语义)。如果在本地订阅源中增加或更新了任何项目,那么就认为订阅源是经更新的,并且通知RSS平台的客户端。 
对于出错情况,考虑如下各项。如果服务器用代码500或最多400个出错响应,那么就重置同步进度表并且服务器稍后再试。然而HTTP错误410应该被当作将更新进度表重置为“不再更新”的指示。 
随后应该重定向HTTP级别,但不应对客户端配置作出改变(存在几种偶然地作出重定向的不合理情况)。 
如果服务器用XML重定向来响应,那么应该重定向订阅源,并且向订阅源存储的URL应该被自动更新。这是客户端自动更新订阅源URL的唯一情况。 
对于下载订阅源,当用户参与其他任务时,下载不应该中断机器的普通使用(例如,带宽或CPU)。此外,在依赖于内容的交互式应用程序中,用户应该能够尽快地获取内容。 
附件下载模块——306
依照一个实施例,附件下载模块306负责为订阅源下载附件文件并应用适当的安全区。在下载订阅源内容时,也下载附件。 
可以用几种不同的方式处理下载附件。首先,认为基本附件时RSS 2.0风格的附件。对于基本附件。同步引擎会经由附件下载模块306为附件链接而自动解析下载的订阅源。同步引擎被配置成支持多个基本附件。使用附件链接,附件下载模块于是可以下载附件。在至少某些实施例中,对于任何新的订阅源,默认的动作是不下载基本附件。使用暴露上述对象模型的API,客户端可以作出诸如基于每个订阅源将其行为改变为例如总是下载附件或强制下载特定订阅源中特定项目的特定附件等的动作。 
可以通过使用上述通用格式提供增强的附件处理。具体地,至少在某些实施例中,通用格式为附件定义额外的功能。具体地,通用格式允许对特定内容的多种表示。这包括例如预览内容和默认内容的标准定义以及指示是否应该下载或流入附件的能力。此外,通用格式允许附件和内容表示上的任意元数据。对于任何新的订阅源,默认动作是下载任何附件的“预览”版本,该“预览”版本遵守例如每个项目10k的默认尺寸限制。 
使用API,客户端可以作出诸如基于每个订阅源改变行为等的动作。例如,可以将行为改变为总是下载订阅源中项目的“默认”版本或总是下载具有特定值的元数据元素的任何特定版本。这可以使用为每个附件提供“下载这个?”逻辑的客户端回叫信号来完成。此外,使用API,客户端可以强制立即下载特定订阅源中任意特定项目(或所有项目)的任何特定附件的任何特定表示。 
关于在附件下载过程中提供安全性,考虑以下情况。 
依照一个实施例,下载的附件使用Windows XP SP2附件执行服务(SP2AES)功能。这种功能可以提供文件类型和基于区的安全性。例如,拥有文件名和区信息(即附件来自哪里),AES可以指示是否要阻止、允许或提示。 
对于区持久性而言,当保存文件时,AES可以持续保存区信息,这样当随后被打开时,可以提示用户。 
以下的表格描述了动作映射的AES危险级别/区: 
危险级别 限制 因特网 内联网 本地 受信任
危险,例如EXE 阻止 提示 允许 允许 允许
适中/未知,例如DOC或FOO 提示 提示 允许 允许 允许
低,例如TXT或JPG 允许 允许 允许 允许 允许
在所示和所描述的实施例中,同步引擎将为它下载的每个附件调用一方法,例如::CheckPolicy。基于响应,同步引擎会进行以下之一的操作: 
●阻止:不保存(在订阅源文件中将其标记为失败); 
●允许:保存附件 
●提示:保存,但是持续保存区信息。这意味着如果用户双击该文件,他们会得到“运行/不运行”提示。 
依照一个实施例,同步引擎会首先将附件保存到磁盘上,并且不会将附件下 载到存储器中。保存到盘上触发基于过滤器的反病毒应用程序,并给予这些应用程序隔离附件的机会(如果他们选择)。 
存档模块——308
依照一个实施例,存档模块308负责处理旧的订阅源数据。默认地,订阅源最多持有200个项目。当订阅源超过指定最大值时,存档模块会删除较老的订阅源项目。然而却不删除相关联的附件。 
订阅源存储器 
依照一个实施例,订阅源存储112(图1)持有两种类型的信息——订阅源列表114和订阅源数据116。作为一个示例,考虑图4。其中,订阅源列表114被具体化为订阅源列表的分层树结构400。订阅源数据116包括与特定订阅源相关联的数据。在该示例中,基于每个订阅源来排列订阅源数据116以包括项目和附件的集合402。 
有许多种可以实现订阅源存储的不同方式。在该特定实施例中,订阅源存储器包括文件系统的部分。这样做的理由之一涉及简单性。即在该实施例中,订阅源列表被简单地表示为其下可以有子目录和文件的常规目录。分层则被反映为常规文件系统分层。由此,诸如“新闻”和“网络日志”等的每个文件夹本质上是文件系统中带有子目录和文件的常规目录。 
在该特定示例中,存在表示订阅源订阅的特别文件类型。仅作为示例,考虑这种类型的文件有以下格式:“xyz.stg”。.stg文件存储有关订阅源的所有数据。由此,你会有一个订阅源列表,诸如具体化为树型结构400的列表,且在每个订阅源(或文件)中的是订阅源数据。 
在所示和所描述的实施例中,使用结构化存储技术来实现.stg文件。结构化存储技术是公知的,并且为本领域的技术人员所理解。但作为简要的背景,考虑以下情况。 
结构化存储通过将单个文件作为对象的结构化集合(被称为存储和流)来处理,以提供COM形式的文件和数据的持久性。结构化存储的目的是减少性能损失以及与在不同文件中存储分开的各对象部分的开销。结构化存储提供了一种解决方案,即通过定义如何经由被称为复合文件的标准实现而将单个文件实体作为两种类型的对象(存储和流)的结构化集合来处理。这允许用户如同复合文件是单个文件而非分开对象的嵌套分级一样来与之交互并管理它。本领于的技术人员会理解,存 储对象和流对象用作文件中的文件系统。结构化存储通过当新的对象被增加到复合文件中或现有对象尺寸增加时消除将文件完全地重写到存储器中的需求来解决性能问题。新的数据被写入到永久性存储的下一个可用位置,且存储对象更新它维持的指针表格来跟踪其存储对象和流对象的位置。 
因此,在所示和所描述的实施例中,使用结构化存储技术来实现.stg文件,且订阅源存储顶上的API允许访问不同的流和存储。在该特定示例中,将每个RSS项目写入到一个流中。此外,报头流包含与特定订阅源相关联的信息,诸如标题、订阅、订阅源URL等。此外,另一流存储索引类型的元数据,从而允许出于包括快速将某物标记为可读/不可读、删除项目等目的而快速并有效地访问文件中的内容。 
文件系统——附件
在所示和所描述的实施例中,附件不存储在结构化存储器中或作为订阅源数据的部分,如图1所示。相反地,附件被标识为其他应用程序和用户可能希望访问或操作的项目,诸如一个或一些图片。 
由此,在所示和所描述的实施例中,将附件写入到用户的特定档案中。但要维持附件和所关联的订阅源项目之间的链接。 
作为一个示例,考虑图5。一旦用户开始订阅订阅源,那么就将订阅源内容本地地存储在用户的档案下,在Application Data(应用程序数据)或Knownfolder(已知文件夹)“订阅源”中。 
订阅源列表和订阅源被存储在Application Data中,以便能够更好地控制订阅源列表的格式和订阅源。API被暴露(如下文将描述的)使得应用程序能够访问和管理订阅源。 
订阅源列表是用户订阅的一组订阅源。在该示例中,包括订阅源列表的文件位于: 
C:\Users\<Username>\AppData\Roaming\Microsoft\RSS\ 
文件包含订阅源的属性以及项目和附件属性(指向与项目相关联的文件的URL)。例如,订阅源“NTY”的文件位于: 
C:\Users\<Username>\AppData\Roaming\Microsoft\RSS\NYT.stg 
在该示例中,由订阅源对附件进行分组,并且将其存储在Knownfolder“订阅源”中。这允许用户和其他应用程序方便地访问和使用已下载的文件。 
例如,用户订阅NPR订阅源并希望确保他们的媒体播放器应用程序能够自动地添加那些文件。这样做使得Knownfolder能让用户从媒体播放器浏览它并将其设置为监控的文件夹。附件具有订阅源和贴子的适当的元数据,使得应用程序可以访问相关联的贴子和订阅源。附件位于如下所示: 
C:\Users\<Username>\Feeds\<Feedname>\ 
写入用户的硬盘的每个附件会具有包含有关该附件的元数据的次级流(例如NTFS流)。作为示例而非限制,元数据可以包括附件所来自的订阅源、作者、指向订阅源项目的链接、描述、标题、发布日期和下载日期以及其他合适的元数据。 
发布引擎/贴子队列
通常当人们写常规的网络日志贴子时,本质上正在写入的是RSS项目。这个RSS项目一般被发送到某种类型的服务器,该服务器维持帐号信息、网络日志的位置等。在这种情况下,发布引擎110(图1)被配置用以使得应用程序能够作出张贴或发布内容,而同时从应用程序提取用于与服务器通信的通信协议。因此,应用程序仅需要提供要张贴的数据或内容,而发布引擎会处理格式化以及将内容传递给适当的服务器的剩余任务。 
由于存在可使用的若干种不同的协议,因而从应用程序提取协议提供了在使得许多不同类型的应用程序能够利用发布功能的范围内提供了很大的灵活性。在所示和所描述的实施例中,发布引擎功能被实现为允许应用程序发布网络日志而无需知道用于与服务器通信的协议的API。 
因此,在该示例中,API具有一种创建新的贴子的方法,当调用该方法时就创建RSSItem(RSS项目)对象。该RSSItem对象则具有一种张贴方法,当调用该方法时,将内容(在该情况下为网络日志)存储在临时存储,即贴子队列122(图1)中。内容被存储在临时存储中是因为在创建网络日志时用户可能不在线。接着,当用户作出在线连接时,发布引擎110连接到适当的服务器,并使用适于服务器的协议来将网络日志上传到服务器上。 
实现示例
在以下的描述中,描述了一组示例性API,仅作为提供人们如何实现和结构化API以实现上述功能的一个示例。应该理解也可以使用其他API而不背离 所作权利要求的主题的精神和范围。所述API一般被具体化为驻留在某些类型的计算机可读介质上的计算机可读指令和数据。 
以下描述的API可用于操作用户订阅的订阅源组(系统订阅源列表)和订阅源的属性。此外,订阅源数据API(即项目和附件)提供对存储在订阅源存储器中的订阅源的访问以及对订阅源的对等下载。使用订阅源API,诸如web浏览器、媒体播放器、数字图像库应用程序等应用程序随后能够暴露它们经历内的订阅源数据。 
在要描述的示例中,API被实现为COM双重接口,使得API可用于脚本语言、管理的代码以及原始Win32(C++)代码。 
图6根据一个实施例示出了顶层对象或接口Ifeed(接口订阅源)以及IFeedFolder(接口订阅源文件夹)对象或接口以及它们相关联的属性、方法和事件。 
在该示例中,IFeeds具有一个属性——作为IFeedFolder的订阅。它是所有订阅的根文件夹。对于根对象存在多种方法,诸如DeleteFeed()、DeleteFeedByGuid()、DeleteFolder()等。 
本示例中所感兴趣的是GetFeedByGuid()方法。该方法可以由应用程序调用以通过例如订阅源的GUID来访问特定的订阅源。因此,应用程序无需知道订阅源的分层排序。相反地,应用程序可以使用订阅源的GUID来使得平台能够读取该订阅源。 
此外,ExistFeed()方法按名称检查订阅源的存在。而ExistFeedByGuid()则按GUID检查订阅源的存在。GetFeed()方法按名称或按GUID来获取订阅源。IsSubscribed()方法能让应用程序或调用程序确定特定的订阅源是否被订阅。 
此外,IFeed对象也具有SubscriptionsNotifications(订阅通知)事件,它允许登记系统订阅源列表上改变的通知。 
如上所述,订阅的类型是IFeedFolder。IFeedFolder对象或接口本质上提供目录,并具有相似类型的属性,诸如Name(名称)、Parent(父代)、Path(路径)等。此外,IFeedFolder对象具有类型为IFeed的订阅源属性和类型为IFeedFolder的子文件夹属性。子文件夹属性属于即时文件夹(例如是导出分层结构的文件夹)下的文件夹集合,而订阅源属性属于特定文件夹中的实际订阅源。此外,IFeedFolder具有LastWriteTime(上次写入时间)属性,它指示上次将任何事写入到文件夹中的时间。该属性对于可能暂时还没有运行但是也需 要查看订阅源平台并确定其状态使得(如果需要)它可以同步的应用程序有用。 
存在有关IFeedFolder的多种方法,其中一些属于创建订阅源(创建希望不具有的订阅源并将其增加到特定文件夹中)、创建子文件夹、删除文件夹或子文件夹等。 
图7根据一个实施例示出了额外对象及其相关联的方法。具体地示出了IFeed、Item和Ienclosure(接口对象)对象。 
首先从IFeed对象开始,考虑如下情况。如本领域的技术人员所理解的,许多与该对象相关联的属性来自RSS订阅源自身,例如Title(标题)、Url、Webmaster(Web管理员)、SkipHours(跳过小时)、SkipDays(跳过天数)、ManagingEditor(管理编辑器)、Homepage(主页)、ImageURL(图像URL)等。此外,有另一组感兴趣的属性,即具有所有作为订阅源部分的项目的集合的Items property(项目属性)以及提供所有附件所写入的实际目录的LocalEnclosurePath(本地附件路径)属性。由此,对于应用程序,后一种属性使得应用程序能够非常方便地访问附件。 
此外,该对象支持一小组方法,诸如Delete()和Download()等用于管理特定订阅源的方法。另外,该对象支持方法XML(),它以通用格式返回订阅源的XML。XML数据可以用于诸如创建订阅源的报纸观点等事物。Clone()返回未订阅的订阅源的副本。 
前进到Item对象,该对象具有一组表示常规RSS元素的属性,所述RSS元素例如Description(描述)、Url、Title(标题)、Author(作者)等。此外,有指回到相关联的实际订阅源的Parent(父代)属性,以及使得应用程序能够操作Id而非必须重复所有的项目的Id属性。此外,有Enclosures(附件)属性,它是类型为IEnclosure的项目的附件的集合。另外,IsRead(读了吗)属性使得应用程序能够指示是否读出了特定项目。 
前进到Enclosure对象,考虑以下情况。该对象具有包括Type(类型)属性(例如mp3)和描述特定附件的长度的Length(长度)属性的属性。对于特定的附件也有LocalAbsolutePath(本地绝对路径)。Download()允许应用程序下载和使用个别的附件。 
总结
上述web内容聚合平台可用于管理、组织从因特网获取的内容,并使之可 用于消耗。平台可以获取和组织web内容,并使这样的内容可由许多不同类型的应用程序用于消耗。这些应用程序可以必须理解特定的聚合格式,也可以不理解。应用程序编程接口(API)暴露对象模型,以允许应用程序和用户方便地完成诸如创建、读取、更新、删除订阅源等许多不同任务。此外,平台可以提取特定的订阅源格式,以提供促进进入平台的订阅源数据的可用性的通用格式。另外,平台以可使得附件对知道聚合的应用程序和不知道聚合的应用程序都可消耗的方式来处理和管理经由web订阅源接收到的附件。 
虽然使用特定于结构化特征和/或方法步骤的语言描述了本发明,但是应该理解在所附权利要求书中定义的本发明不是必须限于所描述的特定特征和步骤。相反地,所公开的特定特征和步骤是作为实现所作权利要求的本发明的优选形式。 

Claims (16)

1.一种用于提供内容聚合平台的系统,包括:
RSS平台,被配置用以接收并处理多种不同格式的RSS数据,其中所述RSS平台被配置为将所述多种不同格式的RSS数据转换成一种通用格式;
存储已被处理的RSS数据的订阅源存储,其中,所述订阅源存储还包括至少一个订阅源列表以及与特定订阅源关联的订阅源数据,其中,在所述订阅源存储中的所述至少一个订阅源被具体化为描述订阅源列表的层次结构,并且至少部分所述订阅源数据包括至少一些项目和附件的集合;以及
代码装置,被配置用以使得不同类型的应用程序能够访问由所述RSS平台接收并处理的RSS数据,其中,所述代码装置被配置用以使得未被订阅至订阅源的一个或多个应用程序能够访问由所述RSS平台接收并处理的关联RSS数据。
2.如权利要求1所述的系统,其特征在于,所述不同类型的应用程序包括除RSS阅读器之外的应用程序。
3.如权利要求1所述的系统,其特征在于,所述不同类型的应用程序包括不理解所述平台接收到的RSS数据的格式的应用程序。
4.如权利要求1所述的系统,其特征在于,所述不同类型的应用程序包括不理解所述平台接收到的RSS数据的格式的应用程序,并且其中所述不同类型的应用程序包括web浏览器应用程序、电子邮件应用程序或媒体播放器应用程序中的一种或多种。
5.如权利要求1所述的系统,其特征在于,所述不同类型的应用程序包括web浏览器应用程序、电子邮件应用程序或媒体播放器应用程序中的一种或多种。
6.一种用于提供内容聚合平台的处理方法,包括:
提供一组API,所述API组提供一种或多种方法,使得至少一个应用程序能够访问已被处理并存储在订阅源存储中的RSS数据;以及
其中,所述订阅源存储包括至少一个订阅源列表以及与特定订阅源关联的订阅源数据;
在所述订阅源存储中的至少一个订阅源被具体化为描述订阅源列表的层次结构;
至少一些所述订阅源数据包括至少一些项目和附件的集合;
其中所述至少一个应用程序不理解所述RSS数据最初被具体化成的RSS格式;
所述一种或多种方法包括将多种不同的RSS格式转换成一种通用格式。
7.如权利要求6所述的处理方法,其特征在于,所述一种或多种方法包括一种提供对其中存储有一个或多个附件的数据存储的访问的方法,以及一种能被用于发现附件及其关联订阅源项目之间关系的方法。
8.如权利要求6所述的处理方法,其特征在于,所述一种或多种方法包括提供对多种不同类型的应用程序的访问的方法。
9.如权利要求6所述的处理方法,其特征在于,所述一种或多种方法包括提供对多种不同类型的应用程序的访问的方法,并且其中所述多种不同类型的应用程序中至少有一种理解所述RSS数据最初被具体化成的RSS格式。
10.如权利要求6所述的处理方法,其特征在于,所述一种或多种方法包括提供对多种不同类型的应用程序的访问的方法,并且其中所述多种不同类型的应用程序中至少有一种理解所述RSS数据最初被具体化成的RSS格式并包括RSS阅读器。
11.如权利要求6所述的处理方法,其特征在于,所述一种或多种方法包括提供对多种不同类型的应用程序的访问的方法,并且其中所述多种不同类型的应用程序中至少有一种理解所述RSS数据最初被具体化成的RSS格式并包括web浏览器应用程序。
12.如权利要求6所述的处理方法,其特征在于,所述一种或多种方法包括一种能让应用程序访问与所述应用程序未被订阅至的web订阅源相关联的数据的方法。
13.如权利要求6所述的处理方法,其特征在于,所述一种或多种方法包括将订阅源订阅建模为分层文件夹的方法。
14.如权利要求6所述的处理方法,其特征在于,所述至少一种应用程序包括电子邮件应用程序。
15.如权利要求6所述的处理方法,其特征在于,所述至少一种应用程序包括web浏览器应用程序。
16.如权利要求6所述的处理方法,其特征在于,所述至少一种应用程序包括媒体播放器应用程序。
CN2006800184210A 2005-06-21 2006-06-14 提供内容聚合平台的系统和方法 Active CN101203832B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/158,936 US8661459B2 (en) 2005-06-21 2005-06-21 Content syndication platform
US11/158,936 2005-06-21
PCT/US2006/023184 WO2007001864A1 (en) 2005-06-21 2006-06-14 Content syndication platform

Publications (2)

Publication Number Publication Date
CN101203832A CN101203832A (zh) 2008-06-18
CN101203832B true CN101203832B (zh) 2011-05-04

Family

ID=37574816

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006800184210A Active CN101203832B (zh) 2005-06-21 2006-06-14 提供内容聚合平台的系统和方法

Country Status (6)

Country Link
US (2) US8661459B2 (zh)
EP (1) EP1896940A4 (zh)
JP (1) JP5020949B2 (zh)
KR (1) KR101312850B1 (zh)
CN (1) CN101203832B (zh)
WO (1) WO2007001864A1 (zh)

Families Citing this family (89)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7000230B1 (en) 2000-06-21 2006-02-14 Microsoft Corporation Network-based software extensions
US7415672B1 (en) 2003-03-24 2008-08-19 Microsoft Corporation System and method for designing electronic forms
US7370066B1 (en) 2003-03-24 2008-05-06 Microsoft Corporation System and method for offline editing of data files
US7913159B2 (en) 2003-03-28 2011-03-22 Microsoft Corporation System and method for real-time validation of structured data files
US8200775B2 (en) * 2005-02-01 2012-06-12 Newsilike Media Group, Inc Enhanced syndication
US7406660B1 (en) 2003-08-01 2008-07-29 Microsoft Corporation Mapping between structured data and a visual surface
US7334187B1 (en) 2003-08-06 2008-02-19 Microsoft Corporation Electronic form aggregation
US8487879B2 (en) 2004-10-29 2013-07-16 Microsoft Corporation Systems and methods for interacting with a computer through handwriting to a screen
US20070050446A1 (en) * 2005-02-01 2007-03-01 Moore James F Managing network-accessible resources
US8140482B2 (en) 2007-09-19 2012-03-20 Moore James F Using RSS archives
US8700738B2 (en) 2005-02-01 2014-04-15 Newsilike Media Group, Inc. Dynamic feed generation
US20070168461A1 (en) * 2005-02-01 2007-07-19 Moore James F Syndicating surgical data in a healthcare environment
US8200700B2 (en) * 2005-02-01 2012-06-12 Newsilike Media Group, Inc Systems and methods for use of structured and unstructured distributed data
US8347088B2 (en) 2005-02-01 2013-01-01 Newsilike Media Group, Inc Security systems and methods for use with structured and unstructured data
US9202084B2 (en) 2006-02-01 2015-12-01 Newsilike Media Group, Inc. Security facility for maintaining health care data pools
US20080005086A1 (en) * 2006-05-17 2008-01-03 Moore James F Certificate-based search
US20080040151A1 (en) * 2005-02-01 2008-02-14 Moore James F Uses of managed health care data
US9104773B2 (en) 2005-06-21 2015-08-11 Microsoft Technology Licensing, Llc Finding and consuming web subscriptions in a web browser
US8661459B2 (en) 2005-06-21 2014-02-25 Microsoft Corporation Content syndication platform
US20070011156A1 (en) * 2005-07-05 2007-01-11 Oracle International Corporation RSS enabled logging
US9268867B2 (en) * 2005-08-03 2016-02-23 Aol Inc. Enhanced favorites service for web browsers and web applications
US7412534B2 (en) * 2005-09-30 2008-08-12 Yahoo! Inc. Subscription control panel
US20070100960A1 (en) * 2005-10-28 2007-05-03 Yahoo! Inc. Managing content for RSS alerts over a network
US8001459B2 (en) 2005-12-05 2011-08-16 Microsoft Corporation Enabling electronic documents for limited-capability computing devices
US20070192674A1 (en) * 2006-02-13 2007-08-16 Bodin William K Publishing content through RSS feeds
US20070192401A1 (en) * 2006-02-16 2007-08-16 Gordon Weakliem System and method for synchronizing syndicated content over multiple locations
US8280843B2 (en) * 2006-03-03 2012-10-02 Microsoft Corporation RSS data-processing object
US7979803B2 (en) * 2006-03-06 2011-07-12 Microsoft Corporation RSS hostable control
US8521740B2 (en) * 2006-04-04 2013-08-27 Boomerang Technology Holdings, LLC. Extended correlation methods in a content transformation engine
JP4829662B2 (ja) * 2006-04-05 2011-12-07 キヤノン株式会社 自動レイアウトシステムおよび情報提供方法およびサーバーシステム
US7734586B2 (en) * 2006-04-12 2010-06-08 Newsgator Technologies, Inc. Replication and synchronization of syndication content at an email server
US7734587B2 (en) * 2006-04-12 2010-06-08 Newsgator Technologies, Inc. Syndication of content based upon email user groupings
US20070245020A1 (en) * 2006-04-18 2007-10-18 Yahoo! Inc. Publishing scheduler for online content feeds
US8370423B2 (en) 2006-06-16 2013-02-05 Microsoft Corporation Data synchronization and sharing relationships
US20080052162A1 (en) * 2006-07-27 2008-02-28 Wood Charles B Calendar-Based Advertising
US20080052343A1 (en) * 2006-07-27 2008-02-28 Wood Charles B Usage-Based Prioritization
US20080046437A1 (en) * 2006-07-27 2008-02-21 Wood Charles B Manual Conflict Resolution for Background Synchronization
US8453066B2 (en) 2006-11-06 2013-05-28 Microsoft Corporation Clipboard augmentation with references
US8020112B2 (en) 2006-11-06 2011-09-13 Microsoft Corporation Clipboard augmentation
US20080109464A1 (en) * 2006-11-06 2008-05-08 Microsoft Corporation Extending Clipboard Augmentation
US7627683B2 (en) * 2006-12-27 2009-12-01 At&T Mobility Ii Llc System and method for dynamically refreshing an active home screen
US9367546B2 (en) 2007-01-05 2016-06-14 Thomson Licensing Method and apparatus for customizing syndicated data feeds
US8751442B2 (en) 2007-02-12 2014-06-10 Microsoft Corporation Synchronization associated duplicate data resolution
US8706757B1 (en) * 2007-02-14 2014-04-22 Yahoo! Inc. Device, method and computer program product for generating web feeds
US7933296B2 (en) * 2007-03-02 2011-04-26 Microsoft Corporation Services for data sharing and synchronization
US20080243475A1 (en) * 2007-03-16 2008-10-02 Steven Scott Everhart Web content translation system, method, and software
US7900203B2 (en) * 2007-04-24 2011-03-01 Microsoft Corporation Data sharing and synchronization with relay endpoint and sync data element
US7725456B2 (en) * 2007-04-27 2010-05-25 Microsoft Corporation Item management with data sharing and synchronization
KR100906109B1 (ko) * 2007-06-20 2009-07-07 엔에이치엔(주) 3a 기반의 다양한 어플리케이션 상태를 제공하는유비쿼터스 프리젠스 서비스 방법 및 시스템
US8745142B2 (en) * 2008-03-07 2014-06-03 Aspect Software, Inc. Method and system for publishing ACD specific data
JP5374057B2 (ja) * 2008-03-10 2013-12-25 キヤノン株式会社 情報処理装置及びその制御方法
US8688694B2 (en) * 2008-04-20 2014-04-01 Tigerlogic Corporation Systems and methods of identifying chunks from multiple syndicated content providers
US8296671B2 (en) 2008-05-01 2012-10-23 Microsoft Corporation Enabling access to rich data by intercepting paste operations
US20100005001A1 (en) * 2008-06-30 2010-01-07 Aizen Jonathan Systems and methods for advertising
US9996572B2 (en) 2008-10-24 2018-06-12 Microsoft Technology Licensing, Llc Partition management in a partitioned, scalable, and available structured storage
US8161099B2 (en) 2008-12-17 2012-04-17 Microsoft Corporation Techniques to automatically syndicate content over a network
FR2952204B1 (fr) * 2009-11-05 2012-05-25 Canon Kk Procede de generation d'un flux web et un systeme associe
KR20110063297A (ko) 2009-12-02 2011-06-10 삼성전자주식회사 휴대용단말기 및 그 제어방법
US10156979B2 (en) 2009-12-02 2018-12-18 Samsung Electronics Co., Ltd. Method and apparatus for providing user interface of portable device
CN101854580A (zh) * 2010-05-28 2010-10-06 中兴通讯股份有限公司 一种rss业务自动备份频道未读数据的方法及终端
CN101917456B (zh) * 2010-07-06 2012-10-03 杭州热点信息技术有限公司 一种内容聚合无线发布系统
US9031957B2 (en) 2010-10-08 2015-05-12 Salesforce.Com, Inc. Structured data in a business networking feed
JP5378456B2 (ja) * 2011-06-13 2013-12-25 株式会社エヌ・ティ・ティ・ドコモ 通信端末及びコンテンツ更新方法
CN103001984A (zh) * 2011-09-14 2013-03-27 中兴通讯股份有限公司 一种移动社交网络的离线管理方法及系统
CN103020056A (zh) * 2011-09-20 2013-04-03 佳都新太科技股份有限公司 一种跨开放平台社交消息优化计算的订阅推送引擎
EP2769291B1 (en) 2011-10-18 2021-04-28 Carnegie Mellon University Method and apparatus for classifying touch events on a touch sensitive surface
US20150120661A1 (en) * 2012-04-04 2015-04-30 Scribble Technologies Inc. System and Method for Generating Digital Content
US9524713B2 (en) * 2012-05-30 2016-12-20 Sap Se Business platform voice interactions
CN103491113B (zh) * 2012-06-11 2018-06-08 腾讯科技(深圳)有限公司 一种信息聚合文件的同步方法、装置及系统
KR20140114766A (ko) 2013-03-19 2014-09-29 퀵소 코 터치 입력을 감지하기 위한 방법 및 장치
US9612689B2 (en) 2015-02-02 2017-04-04 Qeexo, Co. Method and apparatus for classifying a touch event on a touchscreen as related to one of multiple function generating interaction layers and activating a function in the selected interaction layer
US9013452B2 (en) 2013-03-25 2015-04-21 Qeexo, Co. Method and system for activating different interactive functions using different types of finger contacts
KR101460788B1 (ko) * 2013-03-28 2014-11-14 주식회사 오비고 웹 어플리케이션의 화면 구성 방법, 서버 및 컴퓨터 판독 가능한 기록 매체
US20140298201A1 (en) * 2013-04-01 2014-10-02 Htc Corporation Method for performing merging control of feeds on at least one social network, and associated apparatus and associated computer program product
US10320873B1 (en) * 2013-10-25 2019-06-11 Tribune Broadcasting Company, Llc Newsroom production system with syndication feature
US9329715B2 (en) 2014-09-11 2016-05-03 Qeexo, Co. Method and apparatus for differentiating touch screen users based on touch event analysis
US11619983B2 (en) 2014-09-15 2023-04-04 Qeexo, Co. Method and apparatus for resolving touch screen ambiguities
US10606417B2 (en) 2014-09-24 2020-03-31 Qeexo, Co. Method for improving accuracy of touch screen event analysis by use of spatiotemporal touch patterns
US10282024B2 (en) 2014-09-25 2019-05-07 Qeexo, Co. Classifying contacts or associations with a touch sensitive device
US10642404B2 (en) 2015-08-24 2020-05-05 Qeexo, Co. Touch sensitive device with multi-sensor stream synchronized data
US10346150B2 (en) * 2015-10-21 2019-07-09 Oracle International Corporation Computerized system and method for patching an application by separating executables and working data using different images
CN105786978A (zh) * 2016-02-05 2016-07-20 百度在线网络技术(北京)有限公司 基于人工智能的移动搜索方法和装置
US10706166B1 (en) * 2017-03-30 2020-07-07 Amazon Technologies, Inc. Application specific schema extensions for a hierarchical data structure
US10417184B1 (en) * 2017-06-02 2019-09-17 Keith George Long Widely accessible composite computer file operative in a plurality of forms by renaming the filename extension
US11009989B2 (en) 2018-08-21 2021-05-18 Qeexo, Co. Recognizing and rejecting unintentional touch events associated with a touch sensitive device
US10942603B2 (en) 2019-05-06 2021-03-09 Qeexo, Co. Managing activity states of an application processor in relation to touch or hover interactions with a touch sensitive device
US11342065B2 (en) 2019-06-24 2022-05-24 Fujifilm Medical Systems U.S.A., Inc. Systems and methods for workstation rendering medical image records
US11231815B2 (en) 2019-06-28 2022-01-25 Qeexo, Co. Detecting object proximity using touch sensitive surface sensing and ultrasonic sensing
US11592423B2 (en) 2020-01-29 2023-02-28 Qeexo, Co. Adaptive ultrasonic sensing techniques and systems to mitigate interference

Family Cites Families (159)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4190773A (en) * 1977-07-01 1980-02-26 Braden Arthur B Shutter for rotating source CT scanner
US4607380A (en) * 1984-06-25 1986-08-19 General Electric Company High intensity microfocus X-ray source for industrial computerized tomography and digital fluoroscopy
US5864146A (en) * 1996-11-13 1999-01-26 University Of Massachusetts Medical Center System for quantitative radiographic imaging
US5404488A (en) * 1990-09-26 1995-04-04 Lotus Development Corporation Realtime data feed engine for updating an application with the most currently received data from multiple data feeds
JPH06205768A (ja) * 1992-08-18 1994-07-26 Philips Electron Nv X線検査装置
JPH06180698A (ja) 1992-12-12 1994-06-28 Brother Ind Ltd 文書処理装置
US5391879A (en) * 1993-11-19 1995-02-21 Minnesota Mining And Manufacturing Company Radiation detector
US5391877A (en) * 1994-01-26 1995-02-21 Marks; Michael A. Combined imaging scanner
US5845090A (en) 1994-02-14 1998-12-01 Platinium Technology, Inc. System for software distribution in a digital computer network
US5819034A (en) 1994-04-28 1998-10-06 Thomson Consumer Electronics, Inc. Apparatus for transmitting and receiving executable applications as for a multimedia system
US5591977A (en) * 1994-04-29 1997-01-07 The United States Of America As Represented By The Secretary Of The Department Of Health And Human Services Variable axial aperture positron emission tomography scanner
US5694546A (en) * 1994-05-31 1997-12-02 Reisman; Richard R. System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list
JP3558385B2 (ja) 1994-10-13 2004-08-25 昭和電工株式会社 クロム系フッ素化触媒、及びフッ素化方法
US5819284A (en) 1995-03-24 1998-10-06 At&T Corp. Personalized real time information display as a portion of a screen saver
US6389105B1 (en) * 1995-06-23 2002-05-14 Science Applications International Corporation Design and manufacturing approach to the implementation of a microlens-array based scintillation conversion screen
US5649186A (en) * 1995-08-07 1997-07-15 Silicon Graphics Incorporated System and method for a computer-based dynamic information clipping service
US5963964A (en) 1996-04-05 1999-10-05 Sun Microsystems, Inc. Method, apparatus and program product for updating visual bookmarks
US6085186A (en) * 1996-09-20 2000-07-04 Netbot, Inc. Method and system using information written in a wrapper description language to execute query on a network
BR9807075A (pt) * 1997-01-09 2000-09-05 Media Metrix Inc Controle de acesso remoto a arquivo em uma rede pública de computador
US6101510A (en) * 1997-01-29 2000-08-08 Microsoft Corporation Web browser control for incorporating web browser functionality into application programs
US5926796A (en) * 1997-05-05 1999-07-20 Walker Asset Management Limited Partnership Method and apparatus for selling subscriptions to periodicals in a retail environment
US5974549A (en) 1997-03-27 1999-10-26 Soliton Ltd. Security monitor
US5936247A (en) * 1997-06-27 1999-08-10 General Electric Company Imaging attenuation correction mechanism
US6057837A (en) * 1997-07-15 2000-05-02 Microsoft Corporation On-screen indentification and manipulation of sources that an object depends upon
US6038601A (en) 1997-07-21 2000-03-14 Tibco, Inc. Method and apparatus for storing and delivering documents on the internet
US5960411A (en) * 1997-09-12 1999-09-28 Amazon.Com, Inc. Method and system for placing a purchase order via a communications network
US6266664B1 (en) * 1997-10-01 2001-07-24 Rulespace, Inc. Method for scanning, analyzing and rating digital information content
US6035336A (en) * 1997-10-17 2000-03-07 International Business Machines Corporation Audio ticker system and method for presenting push information including pre-recorded audio
US6078924A (en) * 1998-01-30 2000-06-20 Aeneid Corporation Method and apparatus for performing data collection, interpretation and analysis, in an information platform
US6205347B1 (en) * 1998-02-27 2001-03-20 Picker International, Inc. Separate and combined multi-modality diagnostic imaging system
US6366912B1 (en) * 1998-04-06 2002-04-02 Microsoft Corporation Network security zones
US6572662B2 (en) * 1998-05-15 2003-06-03 International Business Machines Corporation Dynamic customized web tours
US6057834A (en) * 1998-06-12 2000-05-02 International Business Machines Corporation Iconic subscription schedule controller for a graphic user interface
US6282546B1 (en) * 1998-06-30 2001-08-28 Cisco Technology, Inc. System and method for real-time insertion of data into a multi-dimensional database for network intrusion detection and vulnerability assessment
US6334145B1 (en) 1998-06-30 2001-12-25 International Business Machines Corporation Method of storing and classifying selectable web page links and sublinks thereof to a predetermined depth in response to a single user input
JP3831127B2 (ja) 1998-09-29 2006-10-11 一夫 大坪 交流電力波形中のノイズを除去する装置
US20010051907A1 (en) 1998-12-08 2001-12-13 Srihari Kumar Interactive financial portfolio tracking interface
US6243757B1 (en) 1999-01-11 2001-06-05 Enuntio, Inc. Automated information filtering and distribution system
US20020072951A1 (en) * 1999-03-03 2002-06-13 Michael Lee Marketing support database management method, system and program product
US6613098B1 (en) 1999-06-15 2003-09-02 Microsoft Corporation Storage of application specific data in HTML
US20020174201A1 (en) 1999-09-30 2002-11-21 Ramer Jon E. Dynamic configuration of context-sensitive personal sites and membership channels
US6381597B1 (en) 1999-10-07 2002-04-30 U-Know Software Corporation Electronic shopping agent which is capable of operating with vendor sites which have disparate formats
US7010580B1 (en) * 1999-10-08 2006-03-07 Agile Software Corp. Method and apparatus for exchanging data in a platform independent manner
US6694431B1 (en) * 1999-10-12 2004-02-17 International Business Machines Corporation Piggy-backed key exchange protocol for providing secure, low-overhead browser connections when a server will not use a message encoding scheme proposed by a client
US6775772B1 (en) * 1999-10-12 2004-08-10 International Business Machines Corporation Piggy-backed key exchange protocol for providing secure low-overhead browser connections from a client to a server using a trusted third party
US6732102B1 (en) * 1999-11-18 2004-05-04 Instaknow.Com Inc. Automated data extraction and reformatting
AU1405000A (en) 1999-12-15 2001-06-25 Sun Microsystems, Inc. Preparation of a software configuration using an xml type programming language
US6708172B1 (en) * 1999-12-22 2004-03-16 Urbanpixel, Inc. Community-based shared multiple browser environment
US6523042B2 (en) 2000-01-07 2003-02-18 Accenture Llp System and method for translating to and from hierarchical information systems
US6779154B1 (en) * 2000-02-01 2004-08-17 Cisco Technology, Inc. Arrangement for reversibly converting extensible markup language documents to hypertext markup language documents
US6399951B1 (en) * 2000-02-02 2002-06-04 Ut-Battelle, Llc Simultaneous CT and SPECT tomography using CZT detectors
US20010027472A1 (en) 2000-03-27 2001-10-04 Feng Guan Dynamic information sharing based on unique individual ID
US7702995B2 (en) * 2000-04-24 2010-04-20 TVWorks, LLC. Method and system for transforming content for execution on multiple platforms
US7213204B1 (en) 2000-04-27 2007-05-01 International Business Machines Corporation Method, system, and program for saving object content in a repository file
US6874084B1 (en) * 2000-05-02 2005-03-29 International Business Machines Corporation Method and apparatus for establishing a secure communication connection between a java application and secure server
US20010050658A1 (en) 2000-06-12 2001-12-13 Milton Adams System and method for displaying online content in opposing-page magazine format
US6675212B1 (en) * 2000-06-12 2004-01-06 Gateway, Inc. Method and apparatus for efficient data browsing
US20020019812A1 (en) * 2000-06-16 2002-02-14 Board Karen Eleanor System and service for receiving, customizing, and re-broadcasting high-speed financial data to users operating wireless network-capable devices
US6853997B2 (en) * 2000-06-29 2005-02-08 Infoglide Corporation System and method for sharing, mapping, transforming data between relational and hierarchical databases
US7152058B2 (en) * 2000-07-13 2006-12-19 Biap Systems, Inc. Apparatus for and method of selectively retrieving information and enabling its subsequent display
US7313588B1 (en) 2000-07-13 2007-12-25 Biap Systems, Inc. Locally executing software agent for retrieving remote content and method for creation and use of the agent
IE20010743A1 (en) * 2000-08-04 2002-04-17 Mobileaware Technologies Ltd An e-business mobility platform
US6917937B1 (en) * 2000-11-01 2005-07-12 Sas Institute Inc. Server-side object filtering
US20020108115A1 (en) * 2000-12-11 2002-08-08 The Associated Press News and other information delivery system and method
US6816871B2 (en) 2000-12-22 2004-11-09 Oblix, Inc. Delivering output XML with dynamically selectable processing
US7092992B1 (en) * 2001-02-01 2006-08-15 Mailshell.Com, Inc. Web page filtering including substitution of user-entered email address
GB2377784B (en) * 2001-02-12 2003-11-05 Altio Ltd A presentation server which enables a client device to run a network based application
US7213146B2 (en) * 2001-02-20 2007-05-01 Hewlett-Packard Development Company, L.P. System and method for establishing security profiles of computers
US20020156905A1 (en) 2001-02-21 2002-10-24 Boris Weissman System for logging on to servers through a portal computer
US20020124172A1 (en) * 2001-03-05 2002-09-05 Brian Manahan Method and apparatus for signing and validating web pages
US7096362B2 (en) 2001-06-01 2006-08-22 International Business Machines Corporation Internet authentication with multiple independent certificate authorities
US20030014406A1 (en) * 2001-06-07 2003-01-16 Urbanpixel Inc. Intelligent browser windows in a multi-browser environment
JP2004536643A (ja) * 2001-07-25 2004-12-09 デンツプライ インターナショナル インコーポレーテッド 実時間デジタルx線撮像装置
US7231659B2 (en) * 2001-07-31 2007-06-12 Verisign, Inc. Entity authentication in a shared hosting computer network environment
US7281260B2 (en) * 2001-08-07 2007-10-09 Loral Cyberstar, Inc. Streaming media publishing system and method
US20030033179A1 (en) * 2001-08-09 2003-02-13 Katz Steven Bruce Method for generating customized alerts related to the procurement, sourcing, strategic sourcing and/or sale of one or more items by an enterprise
US7146564B2 (en) * 2001-12-21 2006-12-05 Xmlcities, Inc. Extensible stylesheet designs using meta-tag and/or associated meta-tag information
US20030135553A1 (en) * 2002-01-11 2003-07-17 Ramesh Pendakur Content-based caching and routing of content using subscription information from downstream nodes
US7318238B2 (en) * 2002-01-14 2008-01-08 Microsoft Corporation Security settings for markup language elements
WO2004002044A2 (en) * 2002-02-01 2003-12-31 John Fairweather A system for exchanging binary data
US6941521B2 (en) 2002-03-29 2005-09-06 Intel Corporation Method for dynamically generating a user interface from XML-based documents
AU2003237135A1 (en) * 2002-04-30 2003-11-17 Veridiem Inc. Marketing optimization system
US7562222B2 (en) 2002-05-10 2009-07-14 Rsa Security Inc. System and method for authenticating entities to users
US20030229716A1 (en) 2002-06-08 2003-12-11 David Holland System and method for transferring financial information
US20060184617A1 (en) * 2005-02-11 2006-08-17 Nicholas Frank C Method and system for the creating, managing, and delivery of feed formatted content
US7047488B2 (en) * 2002-07-19 2006-05-16 Open Invention Network Registry driven interoperability and exchange of documents
US20040031052A1 (en) * 2002-08-12 2004-02-12 Liberate Technologies Information platform
AU2003250405A1 (en) 2002-08-19 2004-03-03 Axalto Sa Secured method to exchange data between a browser and a web site
US20040044961A1 (en) * 2002-08-28 2004-03-04 Leonid Pesenson Method and system for transformation of an extensible markup language document
US7146640B2 (en) 2002-09-05 2006-12-05 Exobox Technologies Corp. Personal computer internet security system
US20040073924A1 (en) * 2002-09-30 2004-04-15 Ramesh Pendakur Broadcast scheduling and content selection based upon aggregated user profile information
US7089248B1 (en) 2002-11-04 2006-08-08 Adobe Systems Incorporated Group file delivery including user-defined metadata
US7584208B2 (en) 2002-11-20 2009-09-01 Radar Networks, Inc. Methods and systems for managing offers and requests in a network
KR20030004225A (ko) 2002-12-03 2003-01-14 박용진 원격강의를 위한 상호운영성을 보장하는 세션관리 시스템구축 방법
AU2002953555A0 (en) * 2002-12-23 2003-01-16 Canon Kabushiki Kaisha Method for presenting hierarchical data
US7103600B2 (en) 2003-03-06 2006-09-05 Thought Inc. Displayable presentation page and SQL searchable relational data source implementation of a system, method and software for creating or maintaining distributed transparent persistence of complex data objects and their data relationships
US20040181753A1 (en) 2003-03-10 2004-09-16 Michaelides Phyllis J. Generic software adapter
CN1536483A (zh) 2003-04-04 2004-10-13 陈文中 网络信息抽取及处理的方法及系统
US20040250115A1 (en) 2003-04-21 2004-12-09 Trend Micro Incorporated. Self-contained mechanism for deploying and controlling data security services via a web browser platform
US20040225749A1 (en) 2003-05-08 2004-11-11 Gregory Pavlik Transformation of web site summary via taglibs
US20040237120A1 (en) 2003-05-22 2004-11-25 Lewin Blake P. Systems and methods for dynamically generating and distributing synchronized enhancements to a broadcast signal
WO2004107216A2 (en) 2003-05-23 2004-12-09 Computer Associates Think, Inc. A publish/subscribe mechanism for web services
US7334001B2 (en) * 2003-06-13 2008-02-19 Yahoo! Inc. Method and system for data collection for alert delivery
US7739602B2 (en) 2003-06-24 2010-06-15 Aol Inc. System and method for community centric resource sharing based on a publishing subscription model
US7451392B1 (en) 2003-06-30 2008-11-11 Microsoft Corporation Rendering an HTML electronic form by applying XSLT to XML using a solution
US7308643B1 (en) * 2003-07-03 2007-12-11 Google Inc. Anchor tag indexing in a web crawler system
US20050010595A1 (en) * 2003-07-11 2005-01-13 International Business Machines Corporation System and method for automating an identification mechanism and type information configuration process for a real-time data feed to a database
US20050033657A1 (en) * 2003-07-25 2005-02-10 Keepmedia, Inc., A Delaware Corporation Personalized content management and presentation systems
US8200775B2 (en) * 2005-02-01 2012-06-12 Newsilike Media Group, Inc Enhanced syndication
US7793227B2 (en) * 2003-08-12 2010-09-07 Yahoo! Inc. Method and system of providing customizable buttons
US7310612B2 (en) * 2003-08-13 2007-12-18 Amazon.Com, Inc. Personalized selection and display of user-supplied content to enhance browsing of electronic catalogs
US20050091220A1 (en) * 2003-10-28 2005-04-28 Klemow Jason L. Method and system for syndicating business information for online search and directories
US20050097180A1 (en) * 2003-10-31 2005-05-05 Aaron Abdelhak System and method for improved customized portal web pages
US20050108024A1 (en) * 2003-11-13 2005-05-19 Fawcett John Jr. Systems and methods for retrieving data
US20050119910A1 (en) * 2003-12-01 2005-06-02 International Business Machines Corporation Content update notification
US20050165615A1 (en) * 2003-12-31 2005-07-28 Nelson Minar Embedding advertisements in syndicated content
US20050154978A1 (en) * 2004-01-09 2005-07-14 International Business Machines Corporation Programmatic creation and access of XML documents
US20050182645A1 (en) 2004-01-16 2005-08-18 Holger Ehlis Interactive community website
US8316128B2 (en) * 2004-01-26 2012-11-20 Forte Internet Software, Inc. Methods and system for creating and managing identity oriented networked communication
US20050188078A1 (en) * 2004-02-23 2005-08-25 Kotzin Michael D. System and method for managing and associating dynamic containers of a content providing device
US7433876B2 (en) * 2004-02-23 2008-10-07 Radar Networks, Inc. Semantic web portal and platform
US20050216837A1 (en) * 2004-03-12 2005-09-29 Onfolio, Inc. Unread-state management
US7702678B2 (en) * 2004-03-12 2010-04-20 Microsoft Corporation Search capture
EP1792259A4 (en) 2004-03-15 2009-02-11 Yahoo Inc INTEGRATING CUSTOM PORTALS BY WEB CONTENT SYNDICATION
JP2005284334A (ja) 2004-03-26 2005-10-13 Oki Electric Ind Co Ltd Webページ更新通知方法及び装置
US7568015B2 (en) 2004-04-07 2009-07-28 Hand Held Products, Inc. Routing device and method for use with a HTTP enabled computer peripheral
US20050289147A1 (en) 2004-06-25 2005-12-29 Jessica Kahn News feed viewer
US7865511B2 (en) * 2004-06-25 2011-01-04 Apple Inc. News feed browser
US7437375B2 (en) * 2004-08-17 2008-10-14 Symantec Operating Corporation System and method for communicating file system events using a publish-subscribe model
US7413085B2 (en) * 2004-09-07 2008-08-19 Iconix, Inc. Techniques for displaying emails listed in an email inbox
WO2006031881A2 (en) * 2004-09-14 2006-03-23 Watson Stuart T Method and system for tracking multiple information feeds on a communications network
US7516399B2 (en) 2004-09-30 2009-04-07 Microsoft Corporation Structured-document path-language expression methods and systems
US7412655B2 (en) * 2004-11-02 2008-08-12 Yahoo! Inc. Method and system of providing dynamic dialogs
US20060129917A1 (en) * 2004-12-03 2006-06-15 Volk Andrew R Syndicating multiple media objects with RSS
US20060155698A1 (en) * 2004-12-28 2006-07-13 Vayssiere Julien J System and method for accessing RSS feeds
US20080195483A1 (en) * 2005-02-01 2008-08-14 Moore James F Widget management systems and advertising systems related thereto
US20070050446A1 (en) * 2005-02-01 2007-03-01 Moore James F Managing network-accessible resources
US20060173865A1 (en) * 2005-02-03 2006-08-03 Fong Joseph S System and method of translating a relational database into an XML document and vice versa
US7529766B2 (en) * 2005-02-09 2009-05-05 Conduit Ltd Method and system for use with the internet
US20060206803A1 (en) 2005-03-14 2006-09-14 Smith Jeffrey C Interactive desktop wallpaper system
JP4721740B2 (ja) 2005-03-23 2011-07-13 富士通株式会社 記事又は話題を管理するためのプログラム
US7743254B2 (en) 2005-03-23 2010-06-22 Microsoft Corporation Visualization of trust in an address bar
US20060213979A1 (en) 2005-03-25 2006-09-28 Bluko Information Group Method and system of detecting fraud and incremental commitment of value
US7523137B2 (en) 2005-04-08 2009-04-21 Accenture Global Services Gmbh Model-driven event detection, implication, and reporting system
US20060235885A1 (en) * 2005-04-18 2006-10-19 Virtual Reach, Inc. Selective delivery of digitally encoded news content
US20060242663A1 (en) 2005-04-22 2006-10-26 Inclue, Inc. In-email rss feed delivery system, method, and computer program product
US9582602B2 (en) 2005-05-17 2017-02-28 Excalibur Ip, Llc Systems and methods for improving access to syndication feeds in network browsing applications
US9104773B2 (en) 2005-06-21 2015-08-11 Microsoft Technology Licensing, Llc Finding and consuming web subscriptions in a web browser
US8661459B2 (en) 2005-06-21 2014-02-25 Microsoft Corporation Content syndication platform
US20070011665A1 (en) 2005-06-21 2007-01-11 Microsoft Corporation Content syndication platform
US20070011156A1 (en) * 2005-07-05 2007-01-11 Oracle International Corporation RSS enabled logging
US8688801B2 (en) * 2005-07-25 2014-04-01 Qurio Holdings, Inc. Syndication feeds for peer computer devices and peer networks
US20070033290A1 (en) * 2005-08-03 2007-02-08 Valen Joseph R V Iii Normalization and customization of syndication feeds
US20070079321A1 (en) 2005-09-30 2007-04-05 Yahoo! Inc. Picture tagging
US20070100836A1 (en) * 2005-10-28 2007-05-03 Yahoo! Inc. User interface for providing third party content as an RSS feed
US20070101313A1 (en) * 2005-11-03 2007-05-03 Bodin William K Publishing synthesized RSS content as an audio file
US8280843B2 (en) 2006-03-03 2012-10-02 Microsoft Corporation RSS data-processing object
US7979803B2 (en) * 2006-03-06 2011-07-12 Microsoft Corporation RSS hostable control
DE112017007058T5 (de) 2017-02-14 2019-10-24 Mitsubishi Electric Corporation Wasserabweisende beschichtung und produkt mit einer solchen

Also Published As

Publication number Publication date
CN101203832A (zh) 2008-06-18
US20060288329A1 (en) 2006-12-21
EP1896940A1 (en) 2008-03-12
JP5020949B2 (ja) 2012-09-05
EP1896940A4 (en) 2011-02-23
US20140115109A1 (en) 2014-04-24
WO2007001864A1 (en) 2007-01-04
US8661459B2 (en) 2014-02-25
KR101312850B1 (ko) 2013-09-30
US9762668B2 (en) 2017-09-12
KR20080017338A (ko) 2008-02-26
JP2008547117A (ja) 2008-12-25

Similar Documents

Publication Publication Date Title
CN101203832B (zh) 提供内容聚合平台的系统和方法
CN101288048A (zh) 内容聚合平台
US12117970B2 (en) Systems and methods for providing access to a data file stored at a data storage system
US11630905B2 (en) Collection folder for collecting file submissions in response to a public file request
JP6797290B2 (ja) メッセージングサービス向けのコンテンツ管理機能
JP6482602B2 (ja) 予測ストレージサービス
US8612470B1 (en) Application recommendation using stored files
US20160154964A1 (en) Method and System of Managing Digital Multimedia Content
US20160057241A1 (en) Finding And Consuming Web Subscriptions In A Web Browser
US20110055177A1 (en) Collaborative content retrieval using calendar task lists
CN101933013A (zh) 多客户端搜索方法和系统
US10878089B2 (en) Identifying malware based on content item identifiers
CN112947992B (zh) 代码版本管理的方法和装置
Fuhrmann dCache, the Commodity Cache.
US10452683B2 (en) Selectively synchronizing data on computing devices based on selective sync templates
French Adaptive control of functionally uncertain systems
JP2008250586A (ja) 添付url送受信方法、システム及びプログラム
Boniface et al. Interaction and service design patterns in FLAME
CN118331650A (zh) 电子文档插件、后台管理系统、电子文档管理系统和电子文档管理方法
Vakali Designing a learning-automata-based controller for client/server systems: a methodology

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150428

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150428

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.