CN1148681C - 呈现分层结构的方法和系统以及一个计算机系统 - Google Patents
呈现分层结构的方法和系统以及一个计算机系统 Download PDFInfo
- Publication number
- CN1148681C CN1148681C CNB001350544A CN00135054A CN1148681C CN 1148681 C CN1148681 C CN 1148681C CN B001350544 A CNB001350544 A CN B001350544A CN 00135054 A CN00135054 A CN 00135054A CN 1148681 C CN1148681 C CN 1148681C
- Authority
- CN
- China
- Prior art keywords
- node
- focus
- attribute
- hierarchy
- presents
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- 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/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9577—Optimising the visualization of content, e.g. distillation of HTML documents
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Human Computer Interaction (AREA)
- User Interface Of Digital Computer (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
- Document Processing Apparatus (AREA)
Abstract
本发明提供用于呈现(显示)分层结构的几个不同的方法和系统。分层结构包括多个元素并且定义元素之间的层次关系。分层结构可以在诸如Web文档、交互式应用程序或分成几部分的地图等电子文档中实施。每个元素有一个“呈现属性”,可以是数值或函数。一个单一的元素具有“焦点”(例如根据由作者编码的文档或缺省)。本发明采用分枝隔离方法形成分层结构的树形模型。
Description
技术领域
本发明涉及计算机,更具体地说,涉及访问文档并向用户呈现文档的计算机系统和网络。
背景技术
小型计算设备和/或通信设备正变得更加普及。这种相对小型的设备包括掌上计算机、手持计算机,以及诸如蜂窝电话等的无线通信设备。这种相对小型的设备不具有显示装置,或者显示装置较小。这种相对小型的设备的存储器和/或处理能力也是有限的。
万维网(简称“Web”)是向各种客户机提供专用格式化的电子文档的因特网服务器。Web服务器当前支持基于文本的置标语言(称为超文本置标语言(HTML))格式的文档。
为了向具有有限能力的客户机(例如掌上和手持计算机)提供Web访问,通常在客户机和因特网服务器之间设置“代码转换器代理(transcoder proxy)。代码转换器代理例如根据客户机能力为客户机提供请求的Web文档的选定部分。这样,代码转换器代理将一个或多Web文档的选定部分从一种数字格式翻译成另一种格式。
图1是当前用于向客户机14提供电子文档12的系统10的方框图。电子文档12例如可以是Web页或交互应用程序(例如,应由用户填写的电子表格以获取用户信息)。系统10包括互联网服务器16和设置在客户机14和互联网服务器16之间的代码转换器代理18。代码转换器代理18从客户机14向互联网服务器16传递对文档12的请求。这样的请求通常包括用于指定文档12的互联网协议(IP)地址和包括文档12的文件名称的统一资源定位器(URL)。
互联网服务器16取出文档12并将文档12提供给代码转换器代理18。代码转换器代理18将文档12从一种数字格式(例如超文本置标语言或HTML)翻译成以运行在客户机14内的Web测览器应用程序可以理解的脚本语言编写的脚本。Web浏览器程序可以使用脚本传递的信息在客户机14的显示装置上显示文档12。替代地,Web浏览器程序可以使用脚本传递的信息通过客户机14的扬声器以语音形式输出文档12的内容。
这样当客户机14具有的存储器、处理能力和/或显示能力是有限的,并且文档12大到超过了客户机14的一个或多个有限能力时就会出现问题。例如客户机14可能是具有有限的存储器、处理能力和/或显示能力的掌上或手持计算机。人们正在付出巨大努力来研究一种使大文档的内容适于客户机14的有限能力的方法。已知的内容变换方法包括代替图象显示短的文本说明、将图象转换成链接、将表转换成条列表、去掉设备不支持的特性(例如,JAVASCRIPTTM小应用程序),去掉设备不支持的对图象的引用、将联合图形专家组(JPEG)图象转换成图形互换格式(GIF)图形用于只支持GIF图象的设备,通过降低尺寸和/或彩色等级对GIF和JPEG图象进行代码转换以及摘录文本元素。
还希望具有能够根据文档12的结构和/或客户机14的能力向客户机14传递电子文档12(例如Web页)的系统和方法。
发明内容
本发明提供用于呈现(显示)分层结构的几个不同的方法和系统。分层结构包括多个元素并且定义元素之间的层次关系。分层结构可以在诸如Web文档、交互式应用程序或分成几部分的地图等电子文档中实施。每个元素有一个“呈现属性”,可以是数值或函数。一个单一的元素具有“焦点”(例如根据由作者编码的文档或缺省)。
“分技隔离”方法的第一实施例用于呈现分层结构,其形成了分层结构的一个模型。该模型包括:相对于其他层排列的多层;多个节点;以及至少一个分枝。每个节点代表单一元素。一个节点是根节点并占据分层结构的最高层。一个给定的分枝将第一层中的第一节点连接到第一层的直接下一层的第二节点上。每个分枝代表了分枝连接的节点之间的分层关系。
术语“焦点节点”用于描述表示接收焦点的元素的节点。在分枝隔离方法的实施例中,确定模型中从根节点到焦点节点的路径。路径是从根节点至焦点节点沿分枝形成的路由。由根节点表示的元素的呈现属性被有选择地提供。例如,分层结构可能是HTML文档,并且根节点的呈现属性可能简单地为“<BODY>”。在此情况下,根节点的呈现属性传递少的信息并可能不提供。
一旦由根节点表示的元素的呈现属性已被有选择地呈现,则根节点之外的沿着从根节点到焦点节点路径上的其他节点表示的每个元素的呈现属性被呈现。然后每个由一低于焦点节点层的节点代表并且被一个或多个分枝连接到焦点节点的元素的呈现属性被呈现。
模型可以是树形结构。在此情况下,低于焦点节点层的并由一个或多个分枝连接到焦点节点的节点包括树结构的“子树”,其中焦点节点为子树的根节点。于是将低于焦点节点层的并由一个或多个分枝连接到焦点节点的节点描述成“树结构的子树中的结点,其中焦点节点是子树的根节点”。
电子文档传递系统的一个实施例包括耦合(有线或无线通信)到代码转换器代理的客户机。该客户机例如可以是具有有限存储器和/或处理能力的掌上或手持计算机或无线通信设备。耦合代码转换器代理用于接收电子文档。每个电子文档包括一个或多个元素,并且以第一数字格式(例如,诸如HTML或扩展置标语言XML的基于文本的置标语言)表示。
可以在代码转换器代理中实施的分枝隔离方法的第二实施例,包括以第一数字格式(例如HTML或扩展XML的基于文本的置标语言)表示的分层结构。如上所述地形成分层结构的树形模型。该树形模型用于产生以第二数字格式(例如脚本语言)表示的原始脚本。原始脚本包括由以下节点表示的元素的至少一部分的呈现属性:(i)沿着从根节点至原焦点节点的第一路径上的节点,其中原焦点节点是表示具有焦点的元素的节点;和(ii)树形模型的第一子树中的节点,其中原焦点节点是第一子树的根节点。然后提供(例如向客户机)原始脚本。
该方法还包括接收一事件,其中事件表示在有焦点的元素中发生了变化。响应该事件,可以使用树形模型产生以第二数字格式表示的新的脚本。该新的脚本包括由以下节点表示的元素的至少一部分的呈现属性:(i)沿着从根节点至新焦点节点的第二路径上的节点,其中新焦点节点是表示具有焦点的元素的节点作为由事件表明的焦点中变化结果;和在第二子树中的节点,其中新焦点节点是第二子树的根节点。提供(例如向客户机)新的脚本。
分枝隔离方法的第三实施例可以在客户机上实施,包括接收从如上所述的分层结构的树模型推导出的原始脚本。呈现原始脚本中的呈现属性。第三方法还可以包括响应用户输入产生事件,其中事件表明有焦点的元素中的变化。(例如向代码转换器代理)提供事件。可以(例如从代码转换器代理)接收以第二种数字格式并如上所述从树模型推导出的新脚本。可以呈现新脚本中的呈现属性。
还描述一种用于呈现分层结构的观察深度方法。可以将分枝隔离方法和观察深度方法组合起来。该组合的一个实施例包括访问分层结构并形成如上所述的分层结构的模型。根据分枝隔离方法选择模型的第一部分,并包括:(i)沿着从根节点至焦点节点的路径上的节点,和(ii)在低于焦点节点层的层中并由一个或多个分枝连接到焦点的节点。根据观察深度方法选择模型的第二部分,包括:与焦点节点处于同层的节点;和(ii)高于焦点节点层的选定的一些层中的节点。提供在模型第一和第二部分中由节点表示的元素的呈现属性。当根节点在模型的第一和第二部分中,可以有选择地呈现根节点所表示的元素的呈现属性。
下面描述用于呈现分层结构的分枝隔离和/或观察深度方法所应用的计算机系统的两个实施例。这两个计算机系统的实施例包括与客户应用耦合的主机应用。主机应用和客户应用可以是在计算机系统中同时执行(运行)的单独的软件程序。主机应用例如可以是Web浏览器。客户应用例如可以是辅助技术接口。在两个实施例中,计算机系统包括如上所述的分层结构。该主机应用耦合到分层结构。在其他实施例中,分层结构可以在计算机系统的外部,并且主机应用可以耦合接收或访问访分层结构。
主机应用访问分层结构并形成分层结构的树形模型(即:树)。在计算机系统的第一实施例中,树驻留在主机应用中。如上所述,树包括节点和分枝。
为了提供分层结构的一部分,该客户应用访问主机应用中的树。该客户应用可以实施如上所述的分枝隔离方法。在此情况下,客户应用确定模型中从根节点到焦点节点的路径。客户应用产生呈现属性集。因为如上所述的原因,呈现属性可以包括或不包括根节点的呈现属性。呈现属性集包括沿着从根节点到焦点节点的路径上除根节点之外的节点所表示的每个元素的呈现属性。呈现属性集还包括低于焦点节点层并通过一个或多个分枝耦合到焦点的节点(即:树的子树,其中焦点节点是子树的根节点)所表示的每个元素的呈现属性。客户应用还可以实施如上所述的分枝隔离和观察深度方法的组合。
客户应用向计算机系统的用户代理提供呈现属性集。客户应用可以作为主机应用和用户代理之间的接口。用户代理可以用作客户应用和计算机系统的输出装置之间的接口。输出装置例如可以是布莱叶(Braille)显示或文本-语音转换器。Braille显示可以是用于可视挑战用户(例如永久或暂时视觉损坏的用户)选择的输出装置。用户代理可以用作客户应用和计算机系统的输入装置之间的接口。输入装置例如可以是语音-文本转换器。语音-文本转换器例如可以作为物理挑战用户(例如永久或暂时不能操作诸如鼠标或键盘等传统输入装置的用户)的输入装置。用户代理使用呈现属性集来产生输出命令并向输出装置提供输出命令。结果,显示部分分层结构,或者由输出设备呈现部分分层结构。
在计算机系统的第二实施例中,树驻留在客户应用中。客户应用通过主机应用访问分层结构并形成树。客户应用访问树以形成如上所述的呈现属性集,并向用户代理提供呈现属性集。
在参照附图阅读了有关本发明的说明后,会更加理解本发明的目标和其他优点。
附图说明
图1是当前用于向客户机提供电子文档的系统的方框图;
图2是用于向客户机提供电子文档的系统的一个实施例的方框图,其中电子文档具有分层结构,并且其中使用树模型或树来表示电子文档的分层结构;
图3示意了图2中的树的例子;
图4示意了图3中的树的例子,进一步说明了树的结构;
图5是用于表示分层结构的“分枝隔离”方法的一个实施例的流程图;
图6示意了图3中的树的例子,强调了树的多层次;
图7是用于表示分层结构的“观察深度”方法的一个实施例的流程图;
图8是实施用于表示分层结构的分枝隔离和/或观察深度方法的计算机系统的第一实施例的方框图;以及
图9是图8的计算机系统的第二实施例的方框图。
具体实施方式
尽管通过图中的例子示出的本发明适于各种修改和变型,然而也应理解,这些附图和说明不应将本发明限制于所公开的形式,相反,本发明涵盖了落入由所附权利要求限定的本发明的精神实质和范围内的所有修改、等价物和变型。
图2是用于向客户机22提供电子文档12的系统20的实施例的方框图。通常,电子文档12具有包括多个元素的分层结构,并定义元素之间的分层关系。电子文档12例如可以是Web页、交互式应用程序(例如由用户填写以获得用户信息的电子表格),或划分成各部分的地图。客户机22例如可以是掌上计算机、手持计算机、个人数字助理(PDA)或无线通信设备,并且可能具有有限的存储器和/或处理能力。在图2所示的实施例中,客户机22包括输出装置24。输出装置24可能包括具有有限显示能力的相对小型的显示装置。输出装置24可能还包括用于产生语音的扬声器。
在图2的实施例中,系统20包括互联网服务器16和耦合于客户机22和因特网服务器16之间的过渡服务器26。过渡服务器26包括代码转换器代理28。代码转换器代理28从客户机22向互联网服务器16传递对电子文档(例如:文档12)的请求。如上所述,这样的请求通常包括用于指明文档12的网间协议(IP)地址和包含文档12的文件的名称的统一资源定位器(URL)。互联网服务器16取出文档12并将文档12提供给代码转换器代理28。代码转换器代理28接收来自互联网服务器16的以数字格式表示的文档12。已知的数字格式包括诸如超文本置标语言(HTML)和扩展置标语言(XML)的基于文本的置标语言格式。其他常用的数字格式包括POSTSCRIPT(TM AdobeSys.Inc.,San Jose,CA),便携文档格式(PDF)和先进功能打印(AFP)。
电子文档12包括表示文档结构的多元素。例如,电子文档可以是包括诸如段、超文本链接、列表、表和/或图象的Web页。文档12的元素形成分层,并且电子文档12定义元素之间的分层关系。电子文档可以由树形结构来表示。代码转换器代理28对文档12的元素进行语法分析,形成树30并存储树30,其中树30是文档12的分层结构的表示或模型。代码转换器代理使用树30产生以用户代理32(运行在客户机22内的Web浏览器应用程序)理解的脚本语言写成的脚本。
脚本语言例如可以是代码转换器代理28从互联网服务器16接收文档所使用的数字格式的子集(例如,HTML、XML、POSTSCRIPT,或PDF的子集)。在生成脚本时,代码转换器代理28可以将电子文档12中的图形图象从一种格式转换成另一种格式(例如:从联合图形专家组/JPEG格式转换成图形交换格式/GIF格式,从JPEG和GIF格式转换成定标向量图形/SVG格式等)。脚本可以包括声频数据文件(例如,wav文件),代码转换的Braille和/或非格式化文本。
电子文档12的每个元素具有“呈现属性”。一个给定元素的呈现属性可以是值(例如元素的名称或标题)或函数(例如一个或多个被执行的指令或语句以呈现元素)。代码转换器代理28例如可以将图象翻译成用于呈现图象的一组绘图命令。在此情况下,图象的呈现属性是包括绘图命令集的函数。如以下详细说明的,由代码转换器代理28产生的脚本包括文档12的选定部分内的元素的呈现属性。代码转换器代理28向用户代理32提供生成的脚本。响应接收到的脚本,客户机22的用户代理32产生呈现信息34。用户代理32使用呈现信息34向输出装置24发出输出命令。
图3是图2中表示相应的电子文档12的分层结构的示例树30的示意图。树30包括文档12的元素并传递文档12的元素之间的分层关系。就技术术语来说,树30是不包括环与回路的连接图。图形是由有限个通过称为“分枝”或“边”的线段连接的“节点”或“顶点”构成的几何图形。连接图是其中有可能形成任意两节点或顶点之间的“路径”的图形。回路或环路是以相同的节点或顶点开始或结束的路径。
图3中的树30包括节点40和分枝42。节点40代表文档12的元素。节点40存在于树30内的不同层次上。每个分枝42在不同层次上互连两节点。节点30包括在图3的树30上在层次0上标记为“0”的“根”节点。节点0是层1中节点1A和1B的父节点,而节点1A和1B是“同胞”。节点2A、2B和2C是节点1A的“子节点”。类似地,节点2D-2F是节点1B的子节点。节点3A-3C是节点2A的子节点,节点3D-3F是节点2B的子节点,节点3G-3I是节点2C的子节点。节点2D-2F和节点3A-3I无子节点,并称为“叶子”或“外部”节点。所有至少具有一个子节点的节点40称为“内部”节点。
例如,文档12可以是包含表元素和列表元素的HTML文档。树30的节点0可以代表整个文档12(例如,文档12的体元素)。节点1A可能表示表元素,而节点1B可能代表列表元素。节点1A的子节点2A-2C可能分别代表第一行的行元素(第一行内的提供的值)、第二行的行元素以及表元素的标题元素。节点2A、节点3A-3C的三个子节点可能分别表示表元素的第一行的不同行元素。节点2B、节点3D-3F的三个子节点可能分别表示表元素的第二行的不同行元素。节点2C、节点3G-3I的三个子节点可能分别表示表元素的不同标题元素。
图2和图4现在将用于描述基于文档12的结构和/或客户机22的能力向客户机22提供文档12的一部分第一“分枝隔离”方法。分枝隔离方法可以在图2的代码转换代理28内实施。在系统初始化和/或系统运行时,用户代理32可以向代码转换器代理28提供客户数据。客户数据可能包括客户机22的信息传递能力(例如:存储器大小、处理能力、显示器大小等)。代码转换器代理28可以基于从客户机22接收到的客户数据实现分枝隔离方法。
图4是进一步描述图3中的示例树30的结构的图。如上所述,节点0是树30的根节点。图4的树30包括第一子树44和第二子树46。节点0的子节点1A是第一子树44的根。节点0的其他子节点1B是第二子树46的根。子树44包括节点1A和节点1A的子节点2A-2C,节点2A的子节点3A-3C,节点2B的子节点3D-3F以及节点2C的子节点3G-3I。子树46包括节点1B和节点1B的子节点2D-2F。
图4的树30还包括一个第三子树48、第四子树50和第五子树52。节点1A的子节点2A是第三子树48的根节点。子树48包括节点2A和节点2A的子节点3A-3C。节点1A的另一子节点2B是第四子树50的根。子树50包括节点2B和2B的子节点3D-3F。节点1A的第三子节点2C是第五子树52的根。子树52包括节点2C和节点2C的子节点3G-3I。
根据作者对文档12的编码,文档12的元素的单个元素最初具有文档12内的焦点。在图4中,由节点1A表示的元素最初具有焦点。如以下详细地说明的那样,使用通过用户输入可变更的焦点向客户机22提供文档12的选择部分。实施分枝隔离方法,代码转换器代理28可以将文档12的选定部分从一种数字格式(例如HTML、POSTSCRIPT、PDF等)翻译成客户机22内的用户代理32(例如Web浏览器)理解的脚本语言编写的脚本,并将脚本提供给用户代理32。
分枝隔离方法包括确定从树的根节点(树30的节点0)到表示接收焦点的元素的节点的路径。例如,在图4中,由节点1A表示的元素最初具有如上所述的焦点。从节点A到节点B的路径是从节点A至节点B的序列。在树形结构中,从根节点至树中任何其它节点只能有一条路径。在图4中,从树30的根节点(节点0)到节点1A的路径是节点序列(0,1A)。
分枝隔离方法还包括调用以下节点表示的元素:沿着从根节点至表示接收焦点的元素的节点的路径上的节点以及表示接收焦点的元素的节点为根的任何子树中的节点。调用一个元素是实施该元素的呈现属性(例如,函数值)。
例如,参照图2和图4,代码转换器代理28接收文档12并形成树30,文档12的分层表示。例如文档12可以是HTML文档并且节点0可能表示文档12的主体。节点1A可以表示文档12的表元素,并且最初具有如图4所述的焦点。在此情况下,代码转换器代理28可以实施分枝隔离方法:基于接收到的客户数据,通过调用由沿着从根节点0至节点1A的路径上的节点表示的元素,表示接收焦点的元素,以及子树44的节点以产生脚本。
例如,节点0表示的元素可以具有值,该值是HTML标记“<BODY>”。代码转换器代理28可以调用节点0表示的元素,从而获得元素的值“<BODY>”。代码转换器代理28可以包括也可以不包括脚本上“<BODY>”值。
由节点1A表示的元素可以具有值,该值是HTML标记“<TABLE>”。代码转换器代理28可以调用节点1A表示的元素,从而获得元素的值“<TABLE>”。代码转换器代理28可以包括脚本中的“<TABLE>”值以提供表。
接收初始焦点的节点1A是子树44的根节点。在实施分枝隔离法时,代码转换器代理28可以调用子树44的所有元素。这样调用产生表的第一和第二行的行元素,以及表的标题元素。代码转换器代理28可以在脚本中包括第一和第二行的行元素,以及标题元素以提供表。
如上所述,由代码转换器代理28产生的脚本包括文档12的选定部分中的元素的呈现属性(例如,值或函数)。代码转换器代理28向用户代理32提供产生的脚本。响应接收到的脚本,客户机22的用户代理32产生呈现信息34。用户代理32使用呈现信息34向输出装置24发出输出命令。如上所述,输出装置24可以包括具有有限显示能力的相对小型的显示装置。输出装置24还包括用于产生语音的扬声器。
参照图2,客户机22还包括耦合到用户代理32的输入装置36。输入装置36例如可以是一个或多个键或按钮,诸如鼠标的指点装置或语音-文本转换器。通过输入装置36的用户输入可以使用户代理32产生事件。事件可以导致文档12内焦点的变化。例如,在用户按鼠标按钮而指示或光标处于当前不接收焦点的表的行元素上,这就将焦点改变到表的行元素。如图2所指出的,用户代理32可以向代码转换器代理28提供事件。用户还可以按下键,将焦点传送给文档12中的下一链路。
注意,客户机22可能包括其他没有示出的输入、输出和/或输入/输出(I/O)装置。还应注意,输入装置36和输出装置24可能是组合的I/O装置,如语音引擎,用于将表示文本的数字信号转换成语音,还将语音转换成表示文本的数字信号,或者是触摸屏I/O装置,包括可视显示屏幕和通过施与显示屏幕的压力(例如通过铁笔)接收用户输入。
响应焦点的改变,代码变换器代理28可以使用当前接收焦点的元素再应用分枝隔离方法,从而通过产生新的脚本并向客户机22提供新的脚本来响应焦点的变化。响应新的脚本,客户机22的用户代理32可以产生新的呈现信息,并使用新的呈现信息向输出装置24发出新的输出命令。
例如,在图4中,如果焦点从节点1A表示的表元素变化成由节点3A表示的表的第一行的行元素(例如通过响应用户输入产生的事件),代码转换器代理28可以重新应用分枝隔离方法。代码转换器代理28于是可以确定从根节点0到节点3A的路径,调用沿该路径的元素,以及由以节点3A为根的任何子树中的节点表示的元素,以产生新的脚本,并向客户机22提供新的脚本。
图5是用于表示分层结构(例如,诸如Web页和交互式应用程序的电子文档,或分成若干部分的地图)的“分枝隔离”方法60的一个实施的流程图。在步骤62,访问分层结构。分层结构包括多元素并定义元素之间的分层关系。如上所述,每个元素具有呈现属性,并且单个元素具有焦点。
在步骤64形成分层结构的模型。模型包括相对于其他层排列的多层、多个节点以及至少一个分枝。每个节点表示单一元素。节点中的一个是根节点并占据最高层(图3和4中的层0的节点0)。一个给定的分枝将第一层中的第一节点连接到第一层的直接下一层中的第二节点上。每个分枝表示分枝连接的节点之间的分层关系。
模型可以是树形结构。在此情况下,低于焦点节点层并且通过一个或多个分枝连接到焦点节点的节点包括树结构中的“子树”,其中焦点节点是子树的根节点。低于焦点节点层并且通过一个或多个分枝连接到焦点节点的节点于是可以描述为“树结构的子树中的节点,其中焦点节点是子树的根节点”。
在步骤66,确定模型中从根节点到“焦点节点”的路径,其中焦点节点是表示具有焦点的元素的节点。路径是从根节点到焦点由分枝形成的路由。由根节点表示的元素的呈现属性被有选择地提供。例如,分层结构可以是超文本置标语言(HTML)文档,并且根节点的呈现属性可以简单地为“<BODY>”。在此情况下,根节点的呈现属性传递很少的信息,并可能不提供。
由非根节点表示的每个元素的呈现属性在步骤70提供,这些节点是从根节点至焦点节点的路径上的节点。在步骤72,提供由低于焦点节点层并由一个或多个分枝连接到焦点节点表示的每个元素的呈现属性。
现在使用图2和图6来描述基于文档12的结构和/或客户机22的能力向客户机22提供文档12的一部分的第二“观察深度”法。观察深度法可以实施在图2的代码转换代理28中。代码转换器代理28可以根据从客户机22接收到的客户数据实施观察深度方法。
图6是图3中例示树30,强调树30的多层。如上所述,由节点1A表示的元素最初具有焦点,根据作者对文档12的编码。在观察深度法中,提供给客户机22的那部分文档取决于包含表示接收焦点的元素的节点的树30的层。具体地说,提供给客户机22的文档12部分包括在树30中包含表示接收焦点的元素的节点所在的层中的节点表示的元素。提供给客户机22的文档12部分还包括层数大于树30上包括表示接收焦点的元素的节点所在的层中节点表示的元素和/或层数小于树30上包括表示接收焦点的元素的节点所在的层中节点表示的元素。
在图6中,节点1A表示如上所述根据作者对文档12的编码接收初始焦点的元素。代码转换器代理28可以通过调用由树30的层1、包括表示接收焦点的元素的节点1A的树30中的层中的节点1A和1B表示的元素。根据客户数据(例如由客户机22传递的客户机22的能力),代码转换器代理还可以调用层数大于树30中层1和于小层1的层中节点表示的元素。
例如,代码转换器代理28调用层数大于树30中包括表示接收焦点的元素的节点的层中以及层树小于包括表示接收焦点的元素的节点的层中的节点表示的元素(例如根据客户机22提供的客户数据)。由于图6的节点1A表示接收初始焦点的元素,代码转换器代理28可以通过调用由以下节点表示的元素来实施观察深度法:(i)层0中的节点,(ii)层1中的节点1A和1B,(iii)层2中的节点2A-2F。
由节点0表示的元素可以具有值是HTML标记“<BODY>”。代码转换器代理28可以调用由节点0表示的元素,从而获得元素的值“<BODY>”。代码转换器28可以包括也可以不包括脚本中的值“<BODY>”。
由节点1A表示的元素可以具有值是HTML标记“<TABLE>”。代码转换器代理28可以调用节点1A表示的元素,从而获得元素的值“<TABLE>”。代码转换器代理28可以选择包括脚本中的“<TABLE>”值以向客户机22的用户表明文档12包括表。
由节点1B表示的元素可以具有值是HTML标记“<LI>”用于列表。代码转换器代理28可以调用节点1A表示的元素,从而获得元素的值“<LI>”。代码转换器代理28可以包括脚本中的值“<LI>”,以便于提供列表。
由节点2A表示的元素可以具有值是HTML标记“<TR>”用于表行。代码转换器代理28可以调用节点2A表示的元素,从而获得元素的值“<TR>”。代码转换器28可以包括脚本中的值“<TR>”,以向客户机22的用户表明表元素包括第一行。
由节点2B表示的元素也可以具有值是HTML标记“<TR>”用于表行。代码转换器代理28可以调用节点2B表示的元素,从而获得元素的值“<TR>”。代码转换器代理28可以包括脚本中的值“<TR>”,以向客户机22的用户表明表元素包括第二行。
由节点2C表示的元素可以具有值“<HEADER>”用于表标题。代码转换器代理28可以调用节点2C表示的元素,从而获得元素的值“<HEADER>”。代码转换器代理28可以选择包括脚本中的“<HEADER>”值以向客户机22的用户表明表元素包括至少一个标题。
由节点2D-2F表示的元素可以具有列表项目值。代码转换器代理28可以调用节点2D-2F表示的元素,从而获得元素的列表项目值。代码转换器代理28可以包括脚本中的列表项目值以提供该列表。
如上所示,代码转换器代理28向用户代理32提供生成的脚本。响应接收到的脚本,客户机22的用户代理32产生呈现信息34。用户代理32使用呈现信息34向输出装置24发出输出命令。
如上所述,通过输入装置36的用户输入可以使用户代理32产生一事件。该事件引起文档12中的焦点变化。响应焦点的变化,代码转换器代理28使用当前接收焦点的元素再应用观察深度方法,从而通过产生新脚本响应焦点中的变化并且将新脚本提供给客户机22。响应新的脚本,客户机22的用户代理32可以产生新的呈现信息34,并使用新的呈现信息34向输出装置24发出新的输出命令。
例如,在图6中,如果通过响应用户输入产生的事件将焦点从层1中的节点1A表示的表元素改变成层2中的节点(例如节点2A),代码转换器代理28可以再应用观察深度法。代码转换器代理28可以调用层2中的节点表示的元素(即:节点2A-2F)。根据由客户机22提供的客户数据传递的客户机22的能力,代码转换器代理28还可以调用在层数大于树30的层2的层中的节点表示的元素和/或层数小于层2的层中节点表示的元素。
在系统运行期间,用户代理32可以向代码转换器代理28提供新的客户数据。新的客户数据可以由用户代理32产生以增加或降低详细呈现量,并且可以根据用户输入产生新的客户数据。响应新的客户数据,代码转换器代理28可以改变大于表示接收焦点的元素的节点的层的层数和/或小于表示接收焦点的元素的节点的层的层数。
图7是用于提供分层结构(诸如Web页的电子文档和交互应用程序或分成各部分的地图)的“观察深度”法80的一个实施例的流程图。在步骤82,访问如上所述的分层结构。在步骤84,按如上所述形成分层结构的模型。在步骤86,提供与焦点节点同在一层的节点表示的每个元素的呈现属性,其中焦点节点是表示具有焦点的元素的节点。在步骤88,提供在选定的高于焦点节点层的层中的一个节点表示的每个元素的呈现属性。
如上所述使用图4和图5描述的分枝隔音法以及使用图6和图7描述的观察深度法可以组合在一起(例如,提供的电子文档12的部分在客户机32的呈现能力之内)。参照图4,对于接收焦点的节点1A表示的元素,使用分枝隔离方法选定的文档12的部分可能包括由根节点0和子树44表示的元素。如上所述,输出装置24可以包括具有有限显示能力的相对小型的显示装置,并且子树44可以超过输出装置24的显示能力。
在此情况下,代码转换器代理28可以仅调用子树44的选定的一些层中的元素。例如选定的层数可以依据传递客户机22的能力(例如,存储器大小,处理能力、显示器大小等等)的客户数据。代码转换器代理可以首先实施分枝隔离方法,从而选择由根节点0和子树44表示的元素。代码转换器代理28然后可以对子树44实施观察深度法。如上所述,可以将代码转换器代理28配置成选择树30中包括表示接收焦点的元素的节点的层中的节点以及树30中层数大于包括表示接收焦点的元素的节点的层中的节点。在此情况下,对于树30中使用分枝隔离法选择的部分应用观察深度方法,代码转换器代理28选择层0中的节点0、层1中的节点1A以及层2中的节点2A-2C。
代码转换器代理28可以调用由节点0表示的元素,从而得到元素的值“<BODY>”。代码转换器代理28可以在脚本中包括或不包括“<BOOY>”值。
由节点1A表示的元素可以具有值为HTML标记“<TABLE>”。代码转换器代理28可以调用由节点1A表示的元素,从而获得元素的值“<TABLE>”。代码转换器代理28可以选择在脚本中包括“<TABLE>”值以向客户机22的用户表明文档12包括表。
由节点2A表示的元素可以具有值为HTML标记“<TR>”用于表行。代码转换器代理28可以调用节点2A表示的元素,从而获得元素的值“<TR>”。代码转换器28可以在脚本中包括值“<TR>”,以向客户机22的用户表明表元素包括第一行。
由节点2B表示的元素还可以具有值为HTML标记“<TR>”用于表行。代码转换器代理28可以调用由节点2B表示的元素,从而获得元素的值“<TR>”。代码转换器代理28可以在脚本中包括“<TR>”用于向客户机22的用户表明表元素包括第二行。
由节点2C表示的元素可能具有值“<HEADER>”用于表标题。代码转换器代理28可以调用由节点2C表示的元素,从而获得元素的值“<HEADER>”以向客户机22的用户表明表元素包括至少一个标题。
参照图6,对于由接收焦点的节点1A表示的元素,使用观察深度法选择的文档12的部分可以包括由层0中的根节点0、层1中的节点1A和1B以及层2中的节点2A-2F表示的元素。使用观察深度方法选择的文档12的部分可以超出输出装置24的显示能力。在此情况下,代码转换器代理28可以对使用观察深度法选择的文档12的部分应用分枝隔离方法。这样,代码转换器代理28可以选择由根节点0和子树44的节点1A和2A-2C表示的元素。代码转换器代理28可以如上所述地调用由这些节点表示的元素。
注意,通过对使用观察深度方法选择的文档12的部分应用分枝隔离法所取得的结果与通过对使用分枝隔离方法选择的文档12的部分应用观察深度方法所取得的结果是相同的。
图8是应用上述分枝隔离和/或观察深度法以提供分层结构的计算机系统90的第一实施例的方框图。计算机系统90包括耦合于客户应用94的主机应用92,主机应用92和客户应用94可以是在计算机系统90内同时执行(运行)的单独的软件程序。主机应用例如可以是Web浏览器。客户应用94例如可以是“辅助技术”接口。术语“辅助技术是用于描述帮助实际受到挑战的个体来访问计算机系统(例如计算机系统90)的技术。已知的各种辅助技术包括“屏幕阅读器”,将显示信息转换成语音或Braille,“屏幕强调器“,将显示屏幕上的部分内容的特征放大以及可以将语音转换成文本或命令的数字表示的语音识别软件。
在图8的实施例中,计算机系统90包括分层结构96。在其他实施例中,分层结构96可以在计算机系统90的外部,并且分层结构96可以连接用于接收或访问分层结构96。分层结构96包括多元素并定义元素之间的分层关系。分层结构96的每个元素具有呈现属性,并且单个元素具有焦点。分层结构96例如可以是诸如Web页的电子文档。分层文档96可以是交互式应用程序或划分成诸部分的地图。
主机应用92耦合到分层结构96,并访问分层结构96。主机应用92形成树98,其中树98是分层结构96的树模型。在图8的实施例中,树98驻留在主机应用92中。树98包括如上所述的节点和分枝。
为了表示分层结构96的一部分,客户应用94访问主机应用92内的树98。客户应用94可以实施如上所述的分枝隔离法。在此情况下,客户应用确定模型中从根节点至焦点节点的路径,其中焦点节点是表示具有焦点的元素的节点。客户应用94产生一组呈现特性。该组呈现特性可以包括或不包括根节点的呈现属性,如上所述。该组呈现属性包括由根节点以外的沿着从根节点到焦点节点的路径上的其他节点表示的每个元素的呈现属性。该组呈现属性还包括由低于焦点节点层的层中、并由一个或多个分枝连接于焦点节点的节点(即:树98的子树,其中焦点节点是子树的根节点)表示的每个元素的呈现属性。
替代地,客户应用94可以实施如上所述的观察深度方法。在此情况下,该组呈现属性包括与焦点节点在相同层中的节点表示的所有元素的呈现属性。该组呈现属性还可以包括高于焦点节点层的选定的一些层中的节点表示的所有元素的呈现属性。该组呈现属性还可以包括低于焦点节点层的选定的一些层中的节点表示的所有元素的呈现属性。客户应用94可以按如上所述实施分枝隔离和观察深度方法的组合。
客户应用94向计算机系统90的用户代理100提供该组呈现属性。客户应用94可以作为主机应用92和用户代理100之间的接口。用户代理100可以用作客户应用94和计算机系统90的输出装置102之间的接口。输出装置102例如可以是Braille显示或文本-语音转换器。用户代理100可以用作客户应用94与计算机系统的输入装置104之间的接口。输入装置104例如可以是语音-文本转换器。用户代理100使用该组呈现属性产生输出命令,并且输出装置提供输出命令。结果,显示希望的分层结构的部分或者由输出装置102提供输出。
图9是应用上述分枝隔离和/或观察深度法表示分层结构的计算机系统的第二实施例的方框图。在图9的实施例中,树98驻留在客户应用94内。客户应用94通过主机应用92访问分层结构96并形成树98。客户应用访问树98形成如上所述的呈现属性集,并向该组呈现属性提供给用户代理100。
正如本领域技术人员所理解的,本发明的方法和系统可用于表示分层结构,以下所附的权利要求书将函盖所有的修改和变型。
Claims (31)
1.一种呈现分层结构的方法,其特征在于包括:
访问分层结构,其中分层结构包括多个元素并且定义了元素之间的分层关系,并且其中每个元素具有一个呈现属性,并且其中单一元素具有焦点;
形成分层结构的模型,该模型包括多个相对于其他层排列的层,多个节点,以及至少一个分枝,其中每个节点表示单一元素,并且其中单个的一个节点为根节点并占据最高层,并且其中一给定的分枝将一个第一层中的第一节点连接于第一层的直接下一层中的第二节点,并且其中每个分枝表示由分枝连接的节点之间的分层关系;
确定模型中从根节点至焦点节点的路径,其中焦点节点是表示具有焦点的元素的节点;
有选择地呈现由根节点表示的元素的呈现属性;
呈现根节点之外的在从根节点至焦点节点的路径上的其他节点表示的每个元素的呈现属性;以及
呈现在低于焦点节点层的层中并且通过一个或多个分枝连接于焦点节点的节点所表示的每个元素的呈现属性。
2.如权利要求1的方法,其特征在于分层结构是电子文档。
3.如权利要求2所述的方法,其特征在于电子文档是Web页,交互式应用程序或地图。
4.如权利要求1所述的方法,其特征在于模型是树结构。
5.如权利要求1所述的方法,其特征在于路径是从根节点至焦点节点沿分枝形成的路由。
6.如权利要求5所述的方法,其特征在于在低于焦点节点层的层中并通过一个或多个分枝连接于焦点节点的节点包括树结构的一个子树,并且其中焦点节点是子树的根节点。
7.如权利要求1所述的方法,其特征在于给定节点的呈现属性或者是一值或者是一函数。
8.一种用于呈现分层结构的方法,其特征在于包括:
接收以第一数字格式表示的分层结构,其中分层结构包括多个元素并且定义元素之间的分层关系,并且其中每个元素具有一个呈现属性,并且其中单一元素具有焦点;
形成分层结构的树模型,该模型包括多个相对于其他层排列的层,多个节点,以及至少一个分枝,其中每个节点表示单一元素,并且其中单个的一个节点为树模型的根节点并占据了最高层,并且其中一给定的分枝将一个第一层中的第一节点连接于第一层的直接下一层中的第二节点上,并且其中每个分枝表示由分枝连接的节点之间的分层关系;
使用树模型产生以第二数字格式表示的原始脚本,其中原始脚本包括由以下节点表示的元素的至少一部分的呈现属性:沿着从根节点至原始焦点节点的第一路径上的节点,其中原始焦点节点是表示具有焦点的元素的节点;以及,在树模型的第一子树中的节点,其中原始焦点节点是第一子树的根节点;以及
提供原始脚本。
9.如权利要求8所述的方法,其特征在于第一数字格式是基于文本的置标语言。
10.如权利要求9所述的方法,其特征在于基于文本的置标语言是超文本置标语言HTML或扩展置标语言XML。
11.如权利要求8所述的方法,其特征在于第二数字格式是脚本语言。
12.如权利要求8的方法,其特征在于还包括:
接收一事件,其中事件表明在具有焦点的元素中产生了变化;
使用树模型产生新的以第二数字格式表示的脚本以响应所述事件,其中新的脚本包括由以下节点表示的元素的至少一部分的呈现属性:沿着从根节点至新的焦点节点的第二路径上的节点,其中新焦点节点是表示具有作为由事件表明的焦点中的变化的结果的焦点的元素的节点;和,第二子树中的节点,其中新焦点节点是第二子树的根节点,以及
提供新脚本。
13.一种用于呈现分层结构的方法,其特征在于,该分层结构包括多个元素并且定义元素之间的分层关系,并且其中每个元素具有一个呈现属性,并且其中单一元素具有焦点,所述方法包括:
接收以数字格式表示的原始脚本,其中该原始脚本来自于具有多层和多个节点的分层结构的树模型,多层彼此相对排列,并且其中每个节点表示单一元素,并且其中原始脚本包括由以下节点表示的元素的呈现属性:沿着从根节点至原始焦点节点的第一路径上的节点,其中原始焦点节点是表示具有焦点的元素的节点;以及,在树模型的第一子树中的节点,其中原始焦点节点是第一子树的根节点;以及
呈现原始脚本中的呈现属性。
14.如权利要求13的方法,其特征在于还包括:
响应用户的输入产生事件,其中事件表明具有焦点的元素中的变化;
提供事件;
接收以数字格式表示的从树模型中推导出来的新的脚本,其中新的脚本包括由以下节点表示的元素的至少一部分的呈现属性:沿着从根节点到新的焦点节点的第二路径上的节点,其中新的焦点节点是表示具有作为事件表明的焦点中的变化的结果的焦点的元素的节点;以及,在第二子树中的节点,其中新的焦点节点是第二子树的根节点;以及
呈现新的脚本内的呈现属性。
15.一种用于呈现分层结构的方法,其特征在于包括:
接收以第一数字格式表示的分层结构,其中分层结构包括多个元素并且定义元素之间的分层关系,并且其中每个元素有一呈现属性,并且其中单一元素具有焦点;
形成分层结构的树模型,该模型包括多个相对其他层排列的层,多个节点,以及至少一个分枝,其中每个节点表示单一元素,并且其中单个的一个节点是树模型的根节点并且占据了最高层,并且其中一给定的分枝将一个第一层中的一个第一节点连接到第一层的直接下一层的第二节点上,并且其中每个分枝表示由分枝连接的节点之间的分层关系;
使用树模型产生以第二数字格式表示的原始脚本,其中原始脚本包括由以下节点表示的元素的至少一部分的呈现属性,沿着从根节点至原始焦点节点的第一路径上的节点,其中原始焦点节点是表示具有焦点的元素的节点;以及,在树模型的一个第一子树内的节点,其中原始焦点节点是第一子树的根节点;
呈现原始脚本中的呈现属性;
响应用户输入产生事件,其中事件表明具有焦点的元素中的变化;
使用树模型响应事件产生以第二数字格式表示的新的脚本,其中新的脚本包括由以下节点表示的元素的至少一部分的呈现属性:沿着从根节点至新的焦点节点的第二路径上的节点,其中新焦点节点是表示具有作为由事件表明的焦点的变化的结果的焦点的元素的节点;以及,在第二子树内的节点,其中新的焦点节点是第二子树的根节点;以及
呈现新脚本内的呈现属性。
16.一种用于呈现分层结构的系统,其特征在于包括:
将代码转换器代理配置成:
接收以第一数字格式表示的分层结构,其中分层结构包括多个元素并且定义元素之间的分层关系,并且其中每个元素具有一个呈现属性,并且其中单一元素具有焦点;
形成分层结构的树模型,该模型包括多个相对于其他层排列的层,多个节点,以及至少一个分枝,其中每个节点表示单一元素,并且其中单个的一个节点为树模型的根节点并占据了最高层,并且其中一给定的分枝将一个第一层中的第一节点连接于第一层的直接下一层中的第二节点上,并且其中每个分枝表示由分枝连接的节点之间的分层关系;
使用树模型产生以第二数字格式表示的原始脚本,其中原始脚本包括由以下节点表示的元素的至少一部分的呈现属性:沿着从根节点至原始焦点节点的第一路径上的节点,其中原始焦点节点是表示具有焦点的元素的节点;以及,在树模型的第一子树中的节点,其中原始焦点节点是第一子树的根节点;以及
提供原始脚本,以及
与代码转换器代理相连接的客户机,其中客户机包括:
输出装置;以及
与输出装置相耦合的用户代理,并且被配置成:
接收原始脚本;
响应原始脚本形成呈现信息,其中呈现信息包括原始脚本内的呈现属性;
使用呈现信息产生输出命令;以及
向输出装置提供输出命令。
17.如权利要求16所述的系统,其特征在于客户机的用户代理配置成:
响应用户的输入产生事件,其中事件表明具有焦点的元素中的变化;以及
提供事件。
18.如权利要求17所述的系统,其特征在于代码转换器代理被进一步配置成:
接收事件;
使用树模型响应事件产生以第二数字格式表示的新的脚本,其中新的脚本包括由以下节点表示的元素的至少一部分的呈现属性:沿着从根节点至新的焦点节点的第二路径上的节点,其中新的焦点节点是表示具有作为由事件表明的焦点中的变化的结果的焦点的元素的节点;在第二子树内的节点,其中新焦点节点是第二子树的根节点;以及
提供新的脚本。
19.如权利要求18所述的系统,其特征在于客户机的用户代理被进一步配置成:
接收新的脚本;以及
响应新的脚本修改呈现信息。
20.一种用于呈现分层结构的方法,其特征在于包括:
访问分层结构,其中分层结构包括多个元素并且定义了元素之间的分层关系,并且其中每个元素具有一个呈现属性,并且其中单一元素具有焦点;
形成分层结构的模型,该模型包括多个相对其他层排列的层,多个节点,以及至少一个分枝,其中每个节点表示单一元素,并且其中单个的一个节点是根节点并且占据最高层,并且其中一给定的分枝将一个第一层中的第一节点连接到该第一层的直接下一层的第二节点上,并且其中每个分枝表示由分枝连接的节点之间的分层关系;
选择模型的第一部分,包括:
沿着模型中从根节点至焦点节点的路径上的节点,其中焦点节点是表示具有焦点的元素的节点;以及
在低于焦点节点层的层中并且由一个或多个分枝连接到焦点节点的节点;
选择模型的第二部分,包括:
与焦点节点同一层中的节点;以及
低于焦点节点层的选定数量的层中的节点;以及
呈现由模型的第一和第二部分内的节点表示的元素的呈现属性。
21.如权利要求20所述的方法,其特征在于路径是从根节点到焦点节点沿分枝形成的路由。
22.如权利要求20所述的方法,其特征在于根节点是在模型的第一和第二部分内,并且其中有选择地呈现由根节点表示的元素的呈现属性。
23.一计算机系统,包括:
访问分层结构,其中分层结构包括多个元素并且定义元素之间的分层关系,并且其中每个元素具有呈现属性,并且其中单一元素具有焦点;
形成分层结构的模型,该模型包括多个相对其他层排列的层,多个节点,以及至少一个分枝,其中每个节点表示单一元素,并且其中单个的一个节点是根节点并且占据最高层,并且其中一给定的分枝将一个第一层中的第一节点连接到该第一层的直接下一层的第二节点上,并且其中每个分枝表示由分枝连接的节点之间的分层关系;
耦合到主机应用的客户应用,并且配置成:
访问分层结构的模型;
确定从根节点至焦点节点的模型中的路径,其中焦点节点是表示具有焦点的元素的节点;
产生一组呈现属性,其中该组呈现属性包括:由从根节点至焦点节点的路径上的非根节点表示的每个元素的呈现属性;以及,由低于焦点节点层并且由一个或多个分枝连接到焦点节点的节点表示的每个元素的呈现属性;以及
提供该组呈现属性;
输出装置;以及
与输出装置相连接用于接收该组呈现属性的用户代理,其中用户代理被配置成:
使用该组呈现属性以产生输出命令;以及
向输出装置提供输出命令。
24.如权利要求23的计算机系统,其特征在于,主机应用是Web浏览器。
25.如权利要求23的计算机系统,其特征在于,客户应用是用作主机应用和用户代理之间接口的辅助技术。
26.如权利要求23的计算机系统,其特征在于,用户代理用作客户应用程序和输出装置之间的接口。
27.如权利要求23的计算机系统,其特征在于,输出装置是布莱叶显示或文本-语音转换器。
28.如权利要求23的计算机系统,其特征在于进一步包括与用户代理相耦合的输入装置。
29.如权利要求28的计算机系统,其特征在于,输入装置是语音-文本转换器。
30.如权利要求23的计算机系统,其特征在于,根节点的呈现属性被有选择地包括在呈现属性组中。
31.一种计算机系统,包括:
主机应用;
与主机应用相耦合的客户应用,并配置成:
通过主机应用访问分层结构,其中分层结构包括多个元素并且定义元素之间的分层关系,并且其中每个元素有一呈现属性,并且其中单一元素具有焦点;
形成分层结构的模型,该模型包括多个相对其他层排列的层,多个节点,以及至少一个分枝,其中每个节点表示单一元素,并且其中单个的一个节点为根节点并且占据最高层,并且其中一给定分枝将一个第一层中的第一节点连接到该第一层的直接下一层中的第二节点上,并且其中每个分枝表示了由分枝连接的节点之间的分层关系;
确定模型中从根节点至焦点节点的路径,并且其中焦点节点是表示具有焦点的元素的节点;
产生一组呈现属性,其中该组呈现属性包括:由从根节点至焦点节点的路径上的非根节点表示的每个元素的呈现属性;以及在低于焦点节点层并且由一个或多个分枝连接到焦点节点的节点表示的每个元素的呈现属性;以及
提供该组呈现属性;
输出装置;以及
与输出装置相耦合用于接收该组呈现属性的用户代理,其中用户代理被配置成:
使用该组呈现属性产生输出命令;以及
向输出装置提供输出命令。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/458,643 | 1999-12-09 | ||
US09/458,643 US6549221B1 (en) | 1999-12-09 | 1999-12-09 | User interface management through branch isolation |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1306256A CN1306256A (zh) | 2001-08-01 |
CN1148681C true CN1148681C (zh) | 2004-05-05 |
Family
ID=23821560
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB001350544A Expired - Fee Related CN1148681C (zh) | 1999-12-09 | 2000-12-07 | 呈现分层结构的方法和系统以及一个计算机系统 |
Country Status (3)
Country | Link |
---|---|
US (1) | US6549221B1 (zh) |
CN (1) | CN1148681C (zh) |
SG (1) | SG97980A1 (zh) |
Families Citing this family (81)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6879332B2 (en) * | 2000-05-16 | 2005-04-12 | Groxis, Inc. | User interface for displaying and exploring hierarchical information |
US20020003547A1 (en) * | 2000-05-19 | 2002-01-10 | Zhi Wang | System and method for transcoding information for an audio or limited display user interface |
US6888554B1 (en) | 2000-05-24 | 2005-05-03 | Groxis, Inc. | User interface for bicontextual exploration of a graph |
JP3822024B2 (ja) * | 2000-05-24 | 2006-09-13 | シャープ株式会社 | データ転送装置 |
US6801793B1 (en) * | 2000-06-02 | 2004-10-05 | Nokia Corporation | Systems and methods for presenting and/or converting messages |
US7036093B2 (en) * | 2000-06-05 | 2006-04-25 | Groxis, Inc. | User interface for exploring a graph of information |
US6874143B1 (en) | 2000-06-21 | 2005-03-29 | Microsoft Corporation | Architectures for and methods of providing network-based software extensions |
US7155667B1 (en) | 2000-06-21 | 2006-12-26 | Microsoft Corporation | User interface for integrated spreadsheets and word processing tables |
US7624356B1 (en) | 2000-06-21 | 2009-11-24 | Microsoft Corporation | Task-sensitive methods and systems for displaying command sets |
US7346848B1 (en) | 2000-06-21 | 2008-03-18 | Microsoft Corporation | Single window navigation methods and systems |
US7000230B1 (en) | 2000-06-21 | 2006-02-14 | Microsoft Corporation | Network-based software extensions |
US6948135B1 (en) | 2000-06-21 | 2005-09-20 | Microsoft Corporation | Method and systems of providing information to computer users |
US6883168B1 (en) | 2000-06-21 | 2005-04-19 | Microsoft Corporation | Methods, systems, architectures and data structures for delivering software via a network |
US7191394B1 (en) | 2000-06-21 | 2007-03-13 | Microsoft Corporation | Authoring arbitrary XML documents using DHTML and XSLT |
US7117435B1 (en) | 2000-06-21 | 2006-10-03 | Microsoft Corporation | Spreadsheet fields in text |
US20020065800A1 (en) * | 2000-11-30 | 2002-05-30 | Morlitz David M. | HTTP archive file |
US20040003028A1 (en) * | 2002-05-08 | 2004-01-01 | David Emmett | Automatic display of web content to smaller display devices: improved summarization and navigation |
AU2002258769A1 (en) * | 2001-04-09 | 2002-10-21 | America Online Incorporated | Server-based browser system |
US6895503B2 (en) * | 2001-05-31 | 2005-05-17 | Contentguard Holdings, Inc. | Method and apparatus for hierarchical assignment of rights to documents and documents having such rights |
US20030069881A1 (en) * | 2001-10-03 | 2003-04-10 | Nokia Corporation | Apparatus and method for dynamic partitioning of structured documents |
US7124358B2 (en) * | 2002-01-02 | 2006-10-17 | International Business Machines Corporation | Method for dynamically generating reference identifiers in structured information |
US7441194B2 (en) * | 2002-02-20 | 2008-10-21 | Microsoft Corporation | Calendar-based user interface system |
JP4224250B2 (ja) * | 2002-04-17 | 2009-02-12 | パイオニア株式会社 | 音声認識装置、音声認識方法および音声認識プログラム |
US20040015537A1 (en) * | 2002-07-15 | 2004-01-22 | Richard Doerksen | Handheld client framework system |
EP1387279B1 (en) * | 2002-07-31 | 2008-05-14 | Texas Instruments Inc. | Cache coherency in a multi-processor system |
US20040133853A1 (en) * | 2002-09-23 | 2004-07-08 | Colleen Poerner | System and method for navigating an HMI |
US20040104946A1 (en) * | 2002-09-23 | 2004-06-03 | Yufeng Li | System and method for automated positioning of graphic objects |
US7493603B2 (en) * | 2002-10-15 | 2009-02-17 | International Business Machines Corporation | Annotated automaton encoding of XML schema for high performance schema validation |
US7134089B2 (en) * | 2002-11-13 | 2006-11-07 | Microsoft Corporation | Directional focus navigation |
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 |
US7296017B2 (en) | 2003-03-28 | 2007-11-13 | Microsoft Corporation | Validation of XML data files |
US20040255301A1 (en) * | 2003-06-13 | 2004-12-16 | Andrzej Turski | Context association schema for computer system architecture |
US20050028168A1 (en) * | 2003-06-26 | 2005-02-03 | Cezary Marcjan | Sharing computer objects with associations |
US7197515B2 (en) * | 2003-06-30 | 2007-03-27 | Microsoft Corporation | Declarative solution definition |
US7451392B1 (en) | 2003-06-30 | 2008-11-11 | Microsoft Corporation | Rendering an HTML electronic form by applying XSLT to XML using a solution |
US8037082B2 (en) | 2003-07-22 | 2011-10-11 | International Business Machines Corporation | Isolated ordered regions (IOR) node order |
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 |
US8819072B1 (en) | 2004-02-02 | 2014-08-26 | Microsoft Corporation | Promoting data from structured data files |
US20050177578A1 (en) * | 2004-02-10 | 2005-08-11 | Chen Yao-Ching S. | Efficient type annontation of XML schema-validated XML documents without schema validation |
US7437374B2 (en) * | 2004-02-10 | 2008-10-14 | International Business Machines Corporation | Efficient XML schema validation of XML fragments using annotated automaton encoding |
US20050216484A1 (en) * | 2004-03-25 | 2005-09-29 | Firebaugh Joseph E | Accessability synopsis containers for large data sets |
US7496837B1 (en) | 2004-04-29 | 2009-02-24 | Microsoft Corporation | Structural editing with schema awareness |
US7281018B1 (en) | 2004-05-26 | 2007-10-09 | Microsoft Corporation | Form template data source change |
US7774620B1 (en) | 2004-05-27 | 2010-08-10 | Microsoft Corporation | Executing applications at appropriate trust levels |
US7692636B2 (en) | 2004-09-30 | 2010-04-06 | Microsoft Corporation | Systems and methods for handwriting to a screen |
CN100587673C (zh) * | 2004-10-01 | 2010-02-03 | 特博数据实验室公司 | 排列的生成方法以及排列生成装置 |
US8487879B2 (en) | 2004-10-29 | 2013-07-16 | Microsoft Corporation | Systems and methods for interacting with a computer through handwriting to a screen |
US7712022B2 (en) | 2004-11-15 | 2010-05-04 | Microsoft Corporation | Mutually exclusive options in electronic forms |
US7721190B2 (en) | 2004-11-16 | 2010-05-18 | Microsoft Corporation | Methods and systems for server side form processing |
US7636897B2 (en) * | 2004-11-19 | 2009-12-22 | Microsoft Corporation | System and method for property-based focus navigation in a user interface |
US7904801B2 (en) | 2004-12-15 | 2011-03-08 | Microsoft Corporation | Recursive sections in electronic forms |
US7937651B2 (en) | 2005-01-14 | 2011-05-03 | Microsoft Corporation | Structural editing operations for network forms |
US7725834B2 (en) | 2005-03-04 | 2010-05-25 | Microsoft Corporation | Designer-created aspect for an electronic form template |
US8010515B2 (en) | 2005-04-15 | 2011-08-30 | Microsoft Corporation | Query to an electronic form |
US8200975B2 (en) | 2005-06-29 | 2012-06-12 | Microsoft Corporation | Digital signatures for network forms |
US7870503B1 (en) * | 2005-08-30 | 2011-01-11 | Adobe Systems Incorporated | Technique for analyzing and graphically displaying document order |
US20070083853A1 (en) * | 2005-09-27 | 2007-04-12 | Bea Systems, Inc. | System and method for declarative validation rule editor |
US9336015B2 (en) * | 2005-09-27 | 2016-05-10 | Oracle International Corporation | System and method for action output/page input mismatch detection and resolution |
US8078954B2 (en) * | 2005-09-27 | 2011-12-13 | Oracle International Corporation | System and method for page flow editor |
US7895604B2 (en) * | 2005-11-17 | 2011-02-22 | Opera Software Asa | Method and device for event communication between documents |
US8001459B2 (en) | 2005-12-05 | 2011-08-16 | Microsoft Corporation | Enabling electronic documents for limited-capability computing devices |
US7779343B2 (en) | 2006-01-30 | 2010-08-17 | Microsoft Corporation | Opening network-enabled electronic documents |
CN101236550B (zh) * | 2007-02-01 | 2010-09-01 | 阿里巴巴集团控股有限公司 | 一种处理树型结构数据的方法及系统 |
US8650489B1 (en) * | 2007-04-20 | 2014-02-11 | Adobe Systems Incorporated | Event processing in a content editor |
US8135577B2 (en) * | 2007-06-09 | 2012-03-13 | Apple Inc. | Braille support |
JP5226588B2 (ja) * | 2008-04-14 | 2013-07-03 | キヤノン株式会社 | 情報処理装置及びその制御方法 |
US8126837B2 (en) * | 2008-09-23 | 2012-02-28 | Stollman Jeff | Methods and apparatus related to document processing based on a document type |
US8230357B2 (en) * | 2008-12-18 | 2012-07-24 | Microsoft Corporation | Visually processing instance data |
US8091016B2 (en) * | 2008-12-18 | 2012-01-03 | Microsoft Corporation | Visually manipulating instance collections |
US8639086B2 (en) | 2009-01-06 | 2014-01-28 | Adobe Systems Incorporated | Rendering of video based on overlaying of bitmapped images |
US8891111B2 (en) * | 2010-12-13 | 2014-11-18 | Microsoft Corporation | Adaptable printer driver |
US8904048B2 (en) | 2011-09-08 | 2014-12-02 | Microsoft Corporation | Bidi extension for connected devices |
US8607251B1 (en) * | 2011-09-21 | 2013-12-10 | Google Inc. | Dynamic accessibility behavior |
CN104360897B (zh) * | 2014-10-29 | 2017-09-22 | 百度在线网络技术(北京)有限公司 | 对话处理方法和对话管理系统 |
CN107103540A (zh) * | 2016-02-22 | 2017-08-29 | 易保网络技术(上海)有限公司 | 一种计算机执行的访问保险产品数据结构中的具体数据元素的方法和系统 |
US10769171B1 (en) * | 2017-12-07 | 2020-09-08 | Palantir Technologies Inc. | Relationship analysis and mapping for interrelated multi-layered datasets |
JP2019148859A (ja) * | 2018-02-26 | 2019-09-05 | 株式会社日立製作所 | フローダイアグラムを用いたモデル開発環境におけるデザインパターンの発見を支援する装置および方法 |
CN111228793B (zh) * | 2020-01-21 | 2021-11-19 | 腾讯科技(深圳)有限公司 | 交互界面的显示方法和装置、存储介质及电子装置 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4710763A (en) * | 1984-10-19 | 1987-12-01 | Texas Instruments Incorporated | Method for generating and displaying tree structures in a limited display area |
US5247651A (en) | 1990-04-17 | 1993-09-21 | At&T Bell Laboratories | Interactive computer program specification and simulation system |
US5610653A (en) | 1992-02-07 | 1997-03-11 | Abecassis; Max | Method and system for automatically tracking a zoomed video image |
US5619632A (en) * | 1994-09-14 | 1997-04-08 | Xerox Corporation | Displaying node-link structure with region of greater spacings and peripheral branches |
US5701137A (en) * | 1995-05-24 | 1997-12-23 | Microsoft Corporation | Method for separating a hierarchical tree control into one or more hierarchical child tree controls in a graphical user interface |
US5748186A (en) | 1995-10-02 | 1998-05-05 | Digital Equipment Corporation | Multimodal information presentation system |
US5893109A (en) | 1996-03-15 | 1999-04-06 | Inso Providence Corporation | Generation of chunks of a long document for an electronic book system |
US5805171A (en) | 1996-07-19 | 1998-09-08 | Van Houten Technologies, Inc. | Technical schematic display system utilizing preassigned component detail levels |
US6189019B1 (en) | 1996-08-14 | 2001-02-13 | Microsoft Corporation | Computer system and computer-implemented process for presenting document connectivity |
US5956736A (en) | 1996-09-27 | 1999-09-21 | Apple Computer, Inc. | Object-oriented editor for creating world wide web documents |
US6144962A (en) * | 1996-10-15 | 2000-11-07 | Mercury Interactive Corporation | Visualization of web sites and hierarchical data structures |
US6337702B1 (en) * | 1996-10-23 | 2002-01-08 | International Business Machines Corporation | Method and system for graphically indicating a valid input within a graphical user interface |
US5819243A (en) * | 1996-11-05 | 1998-10-06 | Mitsubishi Electric Information Technology Center America, Inc. | System with collaborative interface agent |
JP3636272B2 (ja) * | 1998-02-09 | 2005-04-06 | 富士通株式会社 | アイコン表示方法、その装置、及び記録媒体 |
US6356902B1 (en) * | 1998-07-28 | 2002-03-12 | Matsushita Electric Industrial Co., Ltd. | Method and system for storage and retrieval of multimedia objects |
US6340977B1 (en) * | 1999-05-07 | 2002-01-22 | Philip Lui | System and method for dynamic assistance in software applications using behavior and host application models |
-
1999
- 1999-12-09 US US09/458,643 patent/US6549221B1/en not_active Expired - Fee Related
-
2000
- 2000-11-22 SG SG200006806A patent/SG97980A1/en unknown
- 2000-12-07 CN CNB001350544A patent/CN1148681C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN1306256A (zh) | 2001-08-01 |
US6549221B1 (en) | 2003-04-15 |
SG97980A1 (en) | 2003-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1148681C (zh) | 呈现分层结构的方法和系统以及一个计算机系统 | |
CN1148680C (zh) | 显示分层结构的方法、系统以及一种计算机系统 | |
KR100461019B1 (ko) | 소형 화면 단말기를 위한 웹 컨텐츠 변환 시스템 및 방법 | |
CN1084498C (zh) | 通信互联网络 | |
US7607100B2 (en) | Method, system and program product for display management of web page phone/fax numbers by a data processing system | |
US20030029911A1 (en) | System and method for converting digital content | |
CN1196068C (zh) | 信息提供系统 | |
TW544595B (en) | System and method for nonstandard character access | |
CN1869980A (zh) | 实现页面灵活布局的装置和方法 | |
CN1752975A (zh) | 用于支持话音的自动填充的方法和系统 | |
CN1495640A (zh) | 存储在单个xml文件中的可被理解xml的应用程序处理的文字处理器文档 | |
CN1777886A (zh) | 使用资源有限的设备处理电子表单的方法和设备 | |
CN1855038A (zh) | 使用分离的任务和装置描述来描述消费电子的方法和系统 | |
CN1711522A (zh) | 图形用户接口建模系统 | |
CN1283297A (zh) | 音频地表示复杂信息的系统和方法 | |
CN1171579A (zh) | 信息处理设备和信息处理方法 | |
CN1113308C (zh) | 连接通用计算机与专用系统的方法和装置 | |
CN1808377A (zh) | 由非专属语言驱动的通用序列图生成器 | |
CN1855009A (zh) | 可搜索控制模板功能的基于任务的界面 | |
CN1719784A (zh) | 多模式对话处理方法 | |
KR20030090226A (ko) | 네트워크상의 고품질 거대 영상 전송 시스템 및 전송방법 | |
CN1600031A (zh) | 多媒体信息的分布处理、存储和传送 | |
CN1929655A (zh) | 一种可实现文本与语音转换的手机 | |
CN104714942A (zh) | 用于针对自然语言处理任务的内容可用性的方法和系统 | |
CN1991842A (zh) | 用于管理移动终端的图像的装置和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20040505 Termination date: 20100107 |