首页 / 动态数据导航

动态数据导航无效专利 发明

技术内容

背景技术 由于存储设备能够在更小的空间内存储更大量的数据,用户通过在存储的 数据中有效地导航以找到感兴趣的项目变得日益困难。例如,现在的MP3播放 器能够存储几千首歌曲,而且大概这个数字在几年内只可能增加。虽然几千首 存储的歌曲可供选择为用户提供了很大范围的多样性,在用户试图找到一首要 听的特定歌曲时也会增加用户可能感受到的复杂性和挫折。此外,除非用户脑 子里有明确的选择,有时全部数量的选择使得用户几乎不可能决定去听什么。 另外,由于MP3播放器通常是便携式的,生产越来越小的播放器是十分紧迫的, 这将导致越来越小的显示屏,其使得项目的选择更加困难,因为用户可能必须 在许多不同的显示屏之间导航以找到期望的项目。 而且,在某些情况下,用户被提供一些项目的集合,而用户对于其中的内 容完全是未知的。这类“盲”数据导航的情形经常会遇到,例如,在互联网上。 例如,博物馆可能提供包括一些或者所有他们的物品的图片的网站目录。用户 可能希望在博物馆目录中导航,寻找特定的项或兴趣,或者仅仅浏览该集合。 然而,即使小博物馆在他们的馆藏中也有成千上万的不同物品,在如此巨大的 集合中寻找特定项或者浏览如此多的项目是一项令人畏惧的任务。 因此,提出了用于大规模数据导航的系统。典型地,这些系统依赖于与每 个数据项相关的信息以便分类给定的数据项,该信息通常被称为“元数据”。元 数据通常包括大量的正交属性,这些属性可能被或者不被分层或者分类。例如, 给定的MP3歌曲可能包括提供该歌曲名称、艺术家、专辑名称、发行商、流派 等的元数据。 一些数据导航工具使用严格的元数据属性层级结构。例如,音乐浏览方案 可能需要用户首先选择艺术家,然后是专辑名称,再然后是歌曲。然而,这样 的分层方法不一定在所有的情况下都奏效,例如当用户不知道演唱特定歌曲的 艺术家的名字,或者当给定歌曲的元数据不包括艺术家的名字时。 分面(faceted)元数据系统不使用层级系统,而是将所有不同的属性作为 项目的平等分面来考虑。典型地,分面系统允许用户查看集合中的项可用的所 有不同的分面或者元数据类别,然后以任意顺序渐进地挑选缩小集合的分面。 分面元数据系统的例子包括UC Berkeley的Flamenco系统以及HPL Bristol的 SWAD-E系统。同样参见Ranganathan,S.R.Elements of Library Classification.第 三版.New York,Asia Publishing House(1962)。然而,虽然这些分面系统允许 用户基于所有可用的元数据选择项目,但是至于在可能的数百个分面中哪个分 面对于在集合中导航最有用,通常这些系统对用户只有很少的指导。而且许多 这样的系统使用元数据类别的静态预分配列表,因此,只有这些项目包括符合 预分配的元数据类别之一的元数据,它们才能被恰当的分类。此外,当与具有 有限尺寸的用户显示屏或界面的系统进行交互时,为用户提供大量从中进行选 择的选项的系统是繁琐并且通常是不实用的。因此,可以理解的是,期待替代 的数据导航方法和系统。 附图说明 图1提供了根据本发明的一个实施例的数据导航系统的流程图。 图2提供了根据本发明的另一个实施例的数据导航系统的流程图。 图3提供了根据本发明实施例的系统的框图。 图4提供了根据本发明实施例的另一个系统的框图。 具体实施方式 本公开提供了用于动态导航数据集的方法和系统。 根据一个或多个实施例,本公开可用于帮助希望在项目的静态和动态集合 中导航的用户。 图1是描述根据本发明的一个示例方法10的流程图。如图所示,在12, 该方法提供接收来自用户的数据集请求。为了本公开的目的,数据集请求可以 是任意形式,其中用户以任何方式指定他想要浏览一集合和/或找到集合中的项 目。因此,数据集请求可以采取被输入到搜索引擎工具栏的搜索请求的形式。 可选地,可以简单地通过选择菜单项或打开一个或多个包含项目集合的文件来 进行数据集请求。本领域技术人员熟知用户能够指示浏览项目集合和/或识别或 找到特定项目的愿望的其他方式。为了本公开的目的,术语“集合”意指被识别 为对用户的数据集请求的结果或者响应的项目的集。例如,如果数据集请求是 提供给搜索引擎的搜索查询,“集合”是搜索结果中所有的项目,例如搜索“命中”。 如果数据集请求是打开目录(例如,存储有照片的目录),“集合”则是该文件中 的所有项目(例如,所有照片)。 无论形式为MP3文件、照片、文档或其他类似形式的电子数据典型地包括 元数据,或者关于数据的数据,所述元数据提供关于数据的描述信息。例如, 如上所述,MP3歌曲可能包括例如艺术家、作曲家、轨道数、专辑名称、发行 商、长度等信息,而数字照片可能包括提供照片拍摄日期和时间、用于拍摄该 照片的相机型号等的元数据。类似的,电子文档可提供例如出版社、出版日期、 作者、标题、关键字、文档长度等的信息。可以理解的是,特定的项目可以具 有与之相关的任意数量的元数据属性。因此,项目的元数据属性的数量可能非 常大,例如,几百个。 为了本发明的目的,术语“元数据属性”用于表示正提供的信息类型的描述 符。例如,术语“艺术家”和“歌曲名”每一个都可以是元数据属性。相应地,术语 “属性值”用于表示提供给特定项目的实际信息,即“The Beatles”和“Yesterday”每 一个分别代表属性“艺术家”和“歌曲名”的值。 尽管并非必要,以上示例提供的元数据可以通过最初创建该数据的软件程 序自动地创建。例如,相机的内部软件可以在拍摄照片的时候自动为许多不同 元数据属性分配属性值。然而,目前没有自动与不同文件类型相关联的属性的 标准化。因此,第一相机(或者其他设备)可以识别和分配第一属性集(set), 而第二相机(或者其他设备)可以识别和分配第二属性集,这些属性集之间有 某些重叠或者没有重叠。 另外,元数据也可以或可选地通过人工方式与给定项目相关联。例如,在 显示来自博物馆的艺术品照片的博物馆网站中,博物馆馆长可以包括关于正展 示的特定艺术品的元数据,这些元数据包括例如艺术品名称,艺术家名字,艺 术品的流派,艺术品的拥有者等属性。 因此,由于缺乏标准化以及由于一些或所有信息可以通过人工方式添加, 可以理解的是,即使对于相同或类似类型的数据(例如,照片,MP3),其元数 据属性也可能不同。另外,可以理解的是,即使给定类型的数据内存在标准化, 某些数据集请求(例如,搜索请求)可能返回具有与之相关的不同属性的许多 不同类型的数据。 因此,在14,该方法提供识别对于该集合中包含的项目可用的元数据属性。 作为解释,而不期望任何方式的限制,用户可以访问提供可下载文件的文件共 享网站。每个文件可能具有与之相关的元数据,但是所提供的元数据类型可能 不采取任何常规的形式。例如,如果文件共享网站上的数据是歌曲,其中一些 歌曲可能具有提供艺术家名字、歌曲名、轨道数、专辑名称和轨道长度的元数 据属性。另一些歌曲可能具有提供音乐流派、作曲家、艺术家名字、歌曲名和 专辑名称的元数据属性。 如上所述,方法10提供了对与用户请求的集合中的所有数据相关的所有不 同元数据属性的识别。因此,在上面所提供的文件共享网站的示例中,该方法 要识别以下元数据属性:艺术家名字、歌曲名、轨道数、专辑名称、轨道长度、 音乐流派和作曲家。 根据某些实施例,元数据属性的识别可以动态发生。这意味着元数据属性 的识别可以在每次接收到来自用户的数据集请求时执行。这允许该方法合并任 何新的数据项,以及因此自从上次数据集请求已经被添加到集合中的任何新的 元数据属性。例如,用户可在任何时候将歌曲上传至文件共享网站或者使得歌 曲在文件共享网站上可用。因此,用户可在上午访问该网站,此时该网站可访 问1000首歌曲,这些歌曲组合起来与以下元数据属性相关联:艺术家、歌曲名、 专辑名称和作曲家。同一个用户或不同的用户可在另一个时间访问该网站,例 如1分钟之后,10分钟之后,下午,或者几天或几个月以后。在这个随后的时 间里,该网站可访问5000首歌曲,并且这些歌曲组合起来与以下元数据属性相 关联:艺术家、歌曲名、专辑名称、作曲家、轨道数和音乐流派。在这个例子 中,上午可获得的歌曲中没有一首具有与之相关的轨道数和音乐流派元数据属 性。然而,在第一时间可获得的一些或全部歌曲在随后的时间内仍可用,因为 在这个例子中,该方法识别所有可用的元数据属性,而不管某些数据项是否缺 乏一些元数据属性。当然,可以理解的是,该方法也可以仅识别所有项目共享 的那些元数据属性。可选地,该方法可以识别集合中至少某一数量或某一百分 比的项目所共享的元数据属性。 在16,识别的元数据属性与相关的属性值一起然后被用于创建基于有用的 元数据分组的区别分面。为了本公开的目的,术语“区别”意为分面,子分组等 以一种“良好”的方式来组织该集合,即对于该分面的值的分配使得用户易于通 过浏览不同的值或范围来找到期望的内容。 根据一个实施例,当集合中的数据被划分为分布相当均匀的类别时,实现 有用的元数据分组。可以理解的是,该方法识别将数据集合划分为完全相等比 例的元数据分组并不是必须的,相反,每个元数据分组包括来自该集合的合理 数量的项目或项目类别。在给定情况下,合理的是通常由给定应用来确定。 确定有用的元数据分组应该是什么以及多少分面应当被显示给用户的一个 因素是将要显示该分面的客户端的能力。例如,与该客户端相关的显示屏的尺 寸,或用户输入设备的类型和能力,将影响或确定应当被显示的分面的恰当数 量。例如,在上面的文件共享场景中,让我们假定该文件共享网站具有10,000 首可获得的歌曲,并且具有总共30个元数据属性。如果用户通过具有标准监视 器的家用计算机访问该网站,将所有30个可用的元数据属性作为分面显示是有 用的。可选择的,如果用户通过具有小显示屏的蜂窝电话或PDA访问该网站, 根据显示屏的尺寸和滚动能力显示更少量的分面(例如2,3,4或更多个)将 更加有用。当然,应当理解的是,用户,甚至是使用家用计算机的用户,可能 没有兴趣查看所有30个元数据属性,因此恰当数量的分面可以被提供给用户。 根据一个实施例,恰当数量的分面可以在5至12之间。然而,可以理解的是, 显示的分面的数量可以依赖于任何数量的因素,包括用户偏好,将在其上显示 类别的设备,特定的应用等。因此,本公开考虑了其中两个至几百个(或者更 多)元数据属性被识别并且其中每个识别的元数据属性作为单个分面被显示的 应用,以及其中两个至几百个(或者更多)元数据属性被识别并且其中仅有一 些元数据属性作为分面被显示的应用。 当显示的分面数量小于识别的元数据属性的总数量时,选择那些将项目划 分为更容易管理的分组的元数据属性是有用的。例如,在具有10000首可获得 的歌曲并且其中有15个识别的属性的文件共享场景中,可能发现有两个属性是 没有用的,要么因为它们对于每首歌曲都具有相同的值,要么因为他们对于每 首歌曲具有不同的值,因而有10个属性对于大部分歌曲具有相同的值,并且有 3个属性提供分别在总共5,10和15个值上相对平均的歌曲分布。因此,这3 个属性作为区别分面被提供给用户。 作为具体的例子,可以理解的是,在仅由Beatles演唱的歌曲构成的集合中, 元数据属性“艺术家名字”作为分面可能不是非常有用,因为集合中大概每一首 歌曲或者几乎每一首歌曲都具有作为艺术家名字属性的值而列出的Beatles,并 且用户通过选择这个分面不能节省任何时间或精力。然而,专辑名称的元数据 属性可能是有用的分面,其导致该集合中的歌曲相当均匀的分布(即,每个专 辑名称可能具有大约1-20首歌曲与之相关)。另一方面,在仅由一首歌星(例如, 只拥有一首在商业上成功的歌曲的艺术家)构成的集合中,专辑名称元数据类 别可能不是非常有用,因为大概没有专辑与多于一首的歌曲相关联,此外,用 户通过选择这个类别不能节省任何时间或精力。然而,元数据属性发行年代可 能是有用的分面,因为其导致该集合中的歌曲相当均匀的分布。 使用的术语“更容易管理的分组”不应解释为暗示用户应该、或者甚至可以 浏览该分组中所有的项目,而仅仅是允许用户快速识别和选择其中更可能(或 者更不可能)存在感兴趣的项目的类别。此外,应当理解的是,如以下更加详 细地描述的,一旦选择一个分组,将向用户呈现附加的分组以便更加细化要查 看的项目。 应当理解的是,任何数量的方法可用于建立有用的分组。根据一个实施例, 给定已经被识别为来自用户的数据集请求的项目集合,元数据属性的候选列表 被先验确定,但是允许某些人为干预。对于每一个候选属性,存储数据类型。 类型可以是例如数字、字符串、或枚举列表。对于每一个属性,计算在当前的 项目集合上的属性区别能力的度量,并且前X个区别属性作为分面被呈现。 在如何选择区别分面的非限制性示例中,驻留在服务器上的10000个数字 图像的集合可能包括用于每个图像的50个不同属性。这些属性可能是例如日期 /时间戳(指示该照片拍摄的日期和时间),脸的数量,用于拍摄该照片的相机类 型,将该图像提交至该集合的人的名字,焦距,曝光时间,相机焦距,拍摄照 片地点的经度和纬度等。想要浏览该集合的用户可能不熟悉该集合或者其使用 具有有限能力,例如小的显示屏尺寸的设备。在这两种情况的任意一种情况下, 该系统可以被设计为自动选择可用的50个属性中的两个作为分面显示给用户。 为了选择这50个属性中的哪个属性作为这两个分面被显示,为该集合中的每个 属性确定区别分数,该区别分数是使用该属性作为分面的区别能力的反映。 例如,日期/时间戳的区别分数可以通过运行一个算法来确定,该算法对该 集合内作为日期/时间戳属性值而出现的日期的不同数字进行计数。可选地或者 附加地,日期/时间值可使用恰当的算法进行聚类(cluster),并且可以对聚类的 数量进行计数。然后,可以对不同日期(或聚类)的数量进行计数以获得该日 期/时间属性的区别分数。如果日期或者聚类的数量落入匹配用户接口需求(例 如,易于用户从中选择的小的数量和/或适于或者方便在显示屏上查看的数量) 的范围内,那么日期/时间戳将被赋予高的区别分数。 可通过对每个图象中脸的数量进行计数以及确定有多少图像显示被分组到 一起的相同数量的脸(例如,只有1张脸,2张脸,3张脸等)来确定脸的数量 属性的区别分数。如果组的数量在匹配用户接口需求(例如,易于用户从中选 择的小的数量和/或适于或者方便在显示屏上查看的数量)的范围内,那么脸的 数量属性将被赋予高的区别分数。在这种情况下,每个组将包括特定数量的图 像。如果组之间的图像分布相当均匀,脸的数量属性将被赋予高的区别分数, 因为将集合划分为具有分布相对均匀的项目的分组允许用户选择子组时能够更 快的缩小集合。相反,如果组之间的图像分布非常不对称,脸的数量属性将被 赋予低的区别分数,因为其对于用户的帮助很小,因为选择具有许多项目的子 组不能缩小集合,而选择具有很少项目的子组不能使用户找到感兴趣的内容。 通过确定该属性中的项目是否可以被聚类到能够满足用户意图的、良好分 开的分组中,其他的属性也能够以类似的方式被赋予区别分数。 然后,比较区别分数,并且与最高的两个分数相关的属性作为分面被显示 给用户。根据一个实施例,如果属性属于相同的类型,区别分数被直接比较。 如果属性属于不同的类型,该系统被配置为从每种属性类型中选择一个分面(例 如,最高分数的属性),或者采用任何其他恰当的、用于在具有足够高的区别分 数的属性中进行选择的方法。 如果用户选择两个被显示的分面中的一个,例如,如果脸的数量属性作为 分面被显示并且被选择,对应于脸的数量(即,1张脸,2张脸,3张脸等)的 子分组被显示。然后用户可以选择这些子分组中的一个以查看相应的照片。可 选地或者附加地,如果需要,所选择的子分组中的照片的数量可以受到附加的 聚类或者分组。例如,如果2张脸的子分组包括2000张照片,该系统可以识别 与这2000张照片相关的属性,并且以上述方式选择恰当的、用于向用户显示的 分面。 如上所示,区别能力可以使用基于属性中的数据类型的各种不同计算来确 定。例如,方差测量可用于判断数值型分面的区别能力。对于时间日期值,时 间聚类算法可用于项目的聚类,而且如果聚类的数量在期望的范围内,该分面 可被赋予高分。对于字符串型和枚举列表类型,区别能力可以是不同值的数量。 对于日期/时间值(例如,数字照片的拍摄日期),不同日期的数量可以被计数。 可选地或者附加地,该日期/时间值可使用恰当的算法被聚类,并且聚类的数量 可被计数。可选地,如以下描述,可采用用于字符串类型分面的字符串相异度 度量。 可以理解的是,一些元数据类别可能包括大量的值,这些值适用于同一个 项目的同一个元数据属性。例如,利用上述文件共享场景,“音乐流派”类别可 能包括多种值,这些值实际上是相当主观的,例如摇滚,流行,另类,和/或top 40,可能都被用于识别同一段音乐的流派。类似地,来自音乐歌剧魅影里的歌 曲很容易被标识为音乐,摇滚,歌剧,经典的流派值,和/或音轨。 本领域技术人员对字符串相异度很熟悉,其生成两个字符串彼此相似或者 不相似的概率统计度量。因此,方法10可以利用字符串相异度将相似的描述符 聚集到一起。例如,字符串相异度可用于显示流派描述符“高音摇滚”和“另类 (alternative)”应该被聚集到一起并被视为相同。此外,字符串相异度可用于所 有属性类别以及描述符,以统计地识别如何基于差别对属性分组。因此,恰当 的聚类算法,例如字符串相异度或者其他算法可用于对项目或属性分组。 可以理解的是,具有包括给定类别中元数据的能力的特定文件可能在该类 别中不包括任何信息。例如,一首给定的歌曲可能不包括作曲家的名字,即使 当这首歌与作曲家元数据属性相关联。然而,由于现在所描述的方法不依赖于 元数据属性的静态或者层级列表,对于给定属性具有空数据集的歌曲可以仅根 据它们确实具有的元数据数据集进行分类。 应当注意的是,区别能力不仅可基于方差,还可基于用于该分面的值的分 布。例如,很好地聚集到5至10个聚类的分面可能比聚集到100个聚类的分面 排序更高。另外,每个范围参数的聚类数量应当由接口约束来确定。 还应当注意的是,对于给定集合的无效分面(例如不是为音乐集合而定义 的图像属性)将自动具有低的(0)区别能力,因为它们都具有相同的值(null)。 另外,非内在(non-intrinsic)度量可用于选择区别分面。例如,该方法可 以被实施,以将选择了特定分面的其它用户的数量列入衡量该分面分数的因素。 一旦识别了有用的分面,在18将这些分面显示给用户。如上所述,该方法 不需要依赖任何特定的显示设备,并且可以修改以适应所使用的显示设备和控 制器的尺寸和需求。因此,恰当的显示设备包括但不限于,计算机显示器,蜂 窝电话和PDA显示器,远程控制,车内显示器例如GPS系统,DVD显示屏, 其他的桌上型、膝上或手持设备,或者任何其他适当的设备。 在20,该方法接收来自用户的分面选择。一旦接收到分面选择,一系列属 性值将被显示给用户。然后,每个属性值可能被链接到具有选择的分面值的所 有项目(例如,文档,歌曲文件,图片等)。 例如,在歌曲集合中,如果分面“艺术家名字”和“专辑名称”被呈现,并且 用户选择了“专辑名称”,那么用户将被呈现该集合中所有专辑的列表。每个专 辑名称可能进一步附带有关于该集合中项目(例如,歌曲)数量的信息,所述 项目具有作为专辑名称的属性值而列出的专辑名称,并且可能进一步链接到每 一个相应的歌曲文件。 可选地,如果用户选择的分面所具有的值的数量小于某个阈值,一系列关 于该分面的属性值(或范围)被显示给用户。另一方面,如果用户选择的分面 所具有的值的数量超过该阈值,可执行聚类算法将整个值的集合分为聚类或者 多个范围。在用户进一步选择聚类或范围后,与用户选择相对应的值(或者项 目)可以被显示。该阈值可通过任何数量的恰当因素被确定,这些因素包括但 不限于,显示屏尺寸,用户偏好,应用,审美品位等。 可选地或者附加地,一些或所有的项目可与分面、值、聚类或范围一起被 显示,或者替代这些内容被显示。此外,显示的分面可能与一系列子类别同时 被呈现,这些子类别显示相关的值以及属于每个子类别的项目的数量。 一旦被呈现属性值,用户可以选择一个值(例如,特定的专辑名称)以限 制当前搜索参数,或者选择不同的分面(即艺术家名字)从而查看以不同的方 式分布的该集合。 可以理解的是,该方法很容易被修改以用于具有任何类型的用户接口的任 何类型的设备,所述用户接口包括但不限于,鼠标,键盘,远程控制按钮,滚 轮,凹形垫,操纵杆等。因为该方法将集合的项目划分为易于管理的子类别, 该方法自身适于用户在各种菜单之间滚动以选择特定的期望项目的应用。因此, 虽然该方法必然适用于涉及大显示屏和高可操作性用户输入设备的应用,其同 样适用于涉及小显示屏和具有非常有限的可操作性的用户输入设备(例如,使 用操纵杆或者仅几个控制按钮的那些输入设备)的应用。 可以理解的是,用于分组项目的信息不限于元数据。或者,可选地,可以 考虑该方法被配置为将从其他源获得的程序或者数据合并到给定项目的元数 据。例如,如果该方法被用于导航照片的集合,能够对照片中脸的数量计数的 脸部检测程序可被用作分类方式。例如,用户能够选择“脸的数量”分面,然后 从其中被识别有1,2,3或4+张脸的照片中选择。 可以理解的是,用户可能希望在迭代的过程中使用方法10,该过程中,随 着每次迭代用户缩小集合的大小。图2显示了迭代方法11的示例。为了便于讨 论,方法10和11中相同或相似的步骤被给予相同的标识。 因此,图2中在12处,接收来自用户的数据集请求。在14对整个数据集 (即,集合)识别元数据属性。在16基于有用的分组创建分面,并且在18这些 分面被显示给用户。在20接收来自用户的分面选择,在22与所选择的分面相 对应的值或者值的范围作为一系列可选择的子类别被显示。为了缩小该集合, 用户可以选择其中一个子类别。因此,在24接收来自用户的子类别选择。 在26确定由用户选择的子类别是否包含可管理的项目数量。可以理解的 是,仅仅减少可能感兴趣的项目的数量,比如从10000减少到4000,可能不会 将项目的数量减少至用户可管理的项目数量。此外,可管理的项目数量是多少 可由用户偏好支配和/或基于用户偏好和/或基于实施该方法的应用/设备。因此, 在一些应用中4000可以被认为是项目的可管理数量,而在另一些应用中则需要 或希望项目的可管理数量是2。照此,该方法的特定实施例可能允许识别阈值数 量,其用于确定所选择的子类别中的项目数量对于用户而言是否是可管理的。 该阈值数量可由应用或者用户动态调节,或者可以是静态的预定数量。 如果确定由用户选择的子类别包括可管理数量的项目(例如,如果该分面 中的项目数量超过阈值数量),该方法进入步骤28并将项目显示给用户。 可选地,如果确定由用户选择的子类别包括大于可管理数量的项目,该方 法进入步骤30。 可以理解的是,步骤14中曾经出现在集合中的某些元数据属性可能在缩小 后的项目列表中不存在。因此,在30识别所选择的子类别中项目的元数据属性。 在32,该方法基于步骤30中识别的属性和相应的属性值对所选择的子类 别中的项目重新分组,以创建新的分面集合。此外,项目被分组为有用数量的 分面,该分面包含数量分布相当均匀的属性。可以理解的是,步骤32中项目被 分组的分面的数量可与步骤18中提供的分面的数量相同,类似或者不同,其取 决于用户偏好、应用、设备尺寸或者其他因素。进一步可以理解的是,可以采 用与如上参考图1中的步骤16所述的那些相同或者不同的方法来创建分组。 进一步可以理解的是,既然数据集已经被削减,步骤16中创建分组时被认 为无用的元数据属性可能是有用的。例如,适用于最初10000首歌曲中75%的 给定属性值可能仅适用于4000首歌曲的削减后列表中的25%。因此,尽管在步 骤16中该属性没有用,但在步骤26中该属性是有用的。 在34,步骤32中所识别的分面被显示给用户。如图所示,如果期望并且 必要的话,该方法将迭代地重复。 可以理解的是,虽然作为例子所示方法10和11包括若干步骤,并不应该 假设根据本公开的方法需要所有公开的步骤或者排除了补充其他步骤。并且也 不应该假设些步骤必须以所描述的顺序执行。 图3提供了适于执行动态数据导航的系统40。如图所示,系统40包括具 有显示器44和用户输入46的设备42。设备42可以是个人计算机,PDA,蜂窝 电话,远程控制,汽车导航系统,DVD播放器,或任何其他能够存储和/或检索 数据的便携或非便携设备。显示器44可以是计算机监视器,显示屏,或者类似 的形式。用户输入46可以是键盘,操纵杆,控制垫或者任何其他适合的设备的 形式。设备42可以分别与一个或多个数据源48、50,也即分别如图所示的数据 源A和B,进行电子通信。作为示例,设备42可以是个人计算机并且数据源A 和B可以是服务器或者其他能够通过互联网与该个人计算机通信的其他计算 机。如图所示,设备42也可以与数据导航程序52通信。应当理解的是,数据 导航程序52可以驻留(hosted on)在通过网络与设备42通信的计算机或服务器 上。设备42与数据和导航程序之间的通信可以是有线的,无线的或者其组合方 式。 图4提供了适于执行动态数据导航的系统41的可替代实施例。系统41中, 数据48和导航程序52驻留在设备42内。如图所示,设备42可进一步包含显 示器44和用户输入46。设备42可以是例如但不限于,数码相机,PDA,蜂窝 电话,远程控制,家用计算机,或者类似设备。 可以理解的是,可使用图3和4所示的设备和系统的各种组合和子组合。例 如,设备42可以是无线PDA或者能够通过有线或无线互联网连接访问数据和 导航程序以及内部驻留数据和/或导航程序的其他设备。另外,可以理解的是, 适于执行动态数据导航的系统可能是各种其他的配置,图3和4所示的系统作 为非限制性的示例被提供。 此外,应当理解的是,虽然所示系统具有示例的各种组件,本发明不应被 理解为需要所示的所有组件或者不允许添加其他组件。 虽然参照示例性实施例对本发明进行了描述,本领域技术人员能够对所描 述的实施例进行的各种修改而不脱离本发明的本质精神和范围。因此,此处使 用的术语和描述仅仅是为了解释而做的阐述,而不意味作为限制。