CN1606300B - 数据处理系统中分配图像的方法与系统 - Google Patents
数据处理系统中分配图像的方法与系统 Download PDFInfo
- Publication number
- CN1606300B CN1606300B CN2004100562772A CN200410056277A CN1606300B CN 1606300 B CN1606300 B CN 1606300B CN 2004100562772 A CN2004100562772 A CN 2004100562772A CN 200410056277 A CN200410056277 A CN 200410056277A CN 1606300 B CN1606300 B CN 1606300B
- Authority
- CN
- China
- Prior art keywords
- image
- server page
- dynamic server
- client
- dynamic
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- 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/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- 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/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
用于在数据处理系统中分配图像的方法、系统、以及产品,包括接收对一个具有多个相关图像的动态服务器页的请求,每一图像在动态服务器页中具有一个由图像资源定位器所标识的存储位置;向动态服务器页插入一个图像的图像组标识符;向动态服务器页插入图像的客户机数据名。典型的实施例还包括从客户机接收一个对一组图像的请求,其中,该请求包括图像组标识符;从存储器检索图像组标识符所标识的图像;以及把所检索的图像发送到客户机。
Description
技术领域
本发明的领域为数据处理,或更具体地讲,为在数据处理系统中用于为动态服务器页(dynamic server pages)分配图像的方法、系统以及产品。
背景技术
在数据处理系统上分配图像的过程中,具有许多图像的文档加载到客户机方的过程很缓慢,而且对于服务器方的管理员来说,图像也是非常麻烦的。考察下列HTML段:
<HTML>
<HEAD>
<TITLE>Business Partner support from IBM PartnerWorld</TITLE>
</HEAD>
<BODY>
<table width=“760”border=“0”cellspacing=“0”cellpadding=“0”>
<img src=“//www.ibm.com/i/vl1/m/en/mast_logo.gif”border=“0”
alt=“IBM”width=“150”height=“47”/></td>
<td width=“310”class=“tbg”><a href=“#main”>
<img src=“//www.ibm.com/i/c.gif”border=“0”width=“1”height=“1”
alt=“Skip to main content”/></a></td>
<table border=“0”cellpadding=“0”cellspacing=”0”>
<from name=“Search”method=“get”<input type=“bidden”name=“v”
value=“11”size=“15”/><tr>
<img src=“http://t1d.www-l.cacheibm.com/printcr.ggif”width=“23”
height=“19”alt=“Link to printable version ofpage”></td>
<trvalign=“middle”><td>
<img src=“http://tld.www-l.cacheibm.com/pwhome.jpg”width=“610”
height==“52”alt=“IBM PartnerWorld home header graphic”/></td>
<td><input maxlength=“100”class=“input”size=“15”name=“q”
value=““type=”text”/></td><td>
<img src=“//www.ibm.com/i/v11/icons/fw.gif”width=“ 16”
height=“16”alt=“”/></td>
</BODY>
</HTML>
这一示例HTML片段是从IBM网址http://www.developer.ibm.com摘录的。注意<img>元素的重复使用。这一段包含5个<img>元素,从中摘录这一示例的文档,在其编写时,包含156个<img>元素。对每一个这样的元素,显示该文档的浏览器都打开一个与服务器相连的独立的TCP/IP连接,并且传输一条请求在<img>元素的‘scr’属性中所标识的图像文件的HTTP请求消息。这样的请求通常导致通过另一个TCP/IP连接的、来自该服务器的相应的HTTP应答消息。另外,每一TCP/IP连接请求系统调用以建立套接口(sockets),并传输TCP/IP‘send’消息,其中的每一条消息都要求在CPU一级上的一个全面的上下文转换(context switch),这一领域的熟练技术人员将这一点视为沉重的计算机处理负担。显示从中摘录这一示例的文档,仅对图像传送而言,就需要312个TCP/IP连接。而且,这尚非典型的情况。目前的web页通常包括众多的图像。
还应该加以注意的是,‘scr’属性标识在多个文件系统单元(file systemlocation)中的图像文件。事实上,‘scr’属性仅可标识存储在文件系统单元中的文件。服务器方的系统管理员必须以相当麻烦的方式存储和管理图像文件,而且图像文件通常会散布在不同服务器上的不同文件系统单元中。在文件系统中,追踪更新、定位、以及删除废弃的图像也都是非常繁琐的。鉴于所有这些原因,目前,存在着对数据处理系统中的更好的分配图像的方式的需求。
发明内容
本说明书公开了用于动态服务器页的分配图像的方法、系统以及产品的示范性实施例,其优点在于,以新的、标识图像组和客户机方存储位置的图像元素取代了现有技术图像元素,以致于通常可以在几乎同一时间把预定的组中的所有图像下载到浏览器或其它客户机中,从而显著缓解了传送那些将通过动态服务器页显示的图像的数据通信连接负担。
更具体地讲,公开和解释了用于在数据处理系统中分配图像的方法、系统以及产品的示范性实施例,包括接收对具有繁多的相关图像的动态服务器页的请求,其中每一个图像具有由图像资源定位器所标识的存储位置。
典型的实施例还包括向动态服务器页插入一个图像的图像组标识符。可以通过插入一个包括图像组标识符的标示元素(markup element),实现图像的图像组标识符的插入。在向服务器的一个单一的通信连接期间,这样的标示元素通常代表指示客户机检索由图像组标识符所标识的所有图像的指令。
典型的实施例还包括向动态服务器页插入图像的客户机数据名。通常,通过向动态服务器页插入相应的内容,即插入被描述为代表指示把图像显示在客户机显示位置的指令的标示元素的内容,实现客户机数据名的插入。针对每一图像插入客户机数据名,可以包括用客户机数据名取代图像资源定位器。在许多实施例中,在动态服务器页中的HTML<img>元素中给出图像资源定位器,用客户机数据名取代图像资源定位器包括用含有客户机数据名的标示元素取代<img>元素。
典型的实施例还包括从客户机接收一个对一组图像的请求,其中,该请求包括图像组标识符;从存储器检索图像组标识符所标识的图像;以及把所检索的图像发送到客户机。典型的实施例包括把所有与动态服务器页相关的所有图像作为一个组存储在服务器上,包括随图像存储图像组标识符、动态服务器页名、以及图像的客户机数据名。
通过以下参照附图进行说明对本发明的示范性实施例的更具体的描述,本发明的上述及其它目的、特性与优点,将会变得十分明显,其中在所有这些附图中,以相同的参照数字表示本发明的这些示范性实施例的相同的部分。
附图说明
图1描述了一个其中可实现本发明的各种实施例的数据处理系统的体系结构。
图2给出了一个自动计算机器(machinery)的框图。
图3给出了一个数据流图,说明了一个用于在数据处理系统中分配图像的示范性方法。
图4给出了一个数据流图,说明了另一个在数据处理系统中分配图像的示范性方法。
图5给出了一个数据库关系图,说明了在代表图像和图像组的记录之间的关系。
图6给出了一个数据流图,说明了又一种在数据处理系统中分配图像的示范性方法。
图7说明了其中可以实现用于动态服务器页的分配图像的改进的方法的计算体系结构。
图8给出了一个数据流图,说明了再一种在数据处理系统中分配图像的示范性方法。
具体实施方式
引言
在本说明书中,一般根据在数据处理系统中对动态服务器页分配图像的方法来描述示范性实施例。然而,这一领域中的熟练技术人员将会意识到:任何包括适合用于根据所公开的方法进行操作的编程装置的计算机系统,也均落入本发明的范围。
适合的编程装置包括任何用于指导计算机系统执行本发明的方法的步骤的手段。例如,适合的编程装置包括由连接于计算机存储器的处理单元和算术逻辑电路构成的系统。这样的系统通常具有这样的能力:把根据示范性实施例的方法的编程的步骤存储在计算机存储器中,用于由处理单元执行。一般在这样的系统中,可以按这一领域中的熟练技术人员将会意识到的多种方式实现计算机存储器,包括磁媒体、光媒体、以及被配置成可存储数据和程序指令的电子电路。
而且,也可以把实施例作为一个计算机程序产品加以实现,以随任何适合的数据处理系统一起使用。可以把计算机程序产品的实施例作为一个用于存储机器可读的信息的软盘、CD ROM、EEPROM(闪速)卡或其它这一领域中的熟练技术人员将会意识到的磁或光记录媒体加以实现。这一领域中的熟练技术人员将会马上认识到:任何具有适当编程装置的计算机系统,将能够执行作为包括在一个计算机程序产品中的、根据示范性实施例的方法的步骤。然而,这一领域中的熟练技术人员将会马上认识到:尽管本说明书中所描述的许多示范性实施例是面向安装在计算机硬件上的软件的,然而,作为选择,按固件或其它计算机器所实现的实施例,也在本发明的范围内。
定义
“BLOB”代表“二进制大对象(Binary Large OBject)”,即作为一个单一实体存储在数据库中的二进制数据的集合。BLOB用于保存诸如视频和音频剪辑的多媒体内容,虽然它们也用于存储软件,甚至是可执行二进制代码。图像通常以二进制编码的例如JPEG和GIF来表示,而BLOB用于存储根据本发明的各实施例的图像。并非所有数据库都支持BLOB。
“浏览器”意指一个web浏览器,其是一个通信应用,用于定位和显示web页。浏览器通常包括一个标示语言解释器、web页显示规程(routine)以及一个HTTP通信客户机。典型的浏览器可以显示文本、图形图像、音频与视频。浏览器操作在能够访问网络(network-enabled)的设备,包括能够访问网络的无线设备,例如能够访问网络PAD和移动电话。通常能够访问网络的无线设备中的浏览器为缩小尺寸的(downsized)浏览器,称为“微浏览器(microbrowser)”。能够访问网络的无线设备中的微浏览器通常支持除HTML以外的标示语言,包括例如WML,无线标示语言。
“CGI”意指“公共网关接口”,即一种针对web服务器和web客户机之间的资源的数据通信的标准技术。CGI提供了服务器之间的一个标准接口,并且服务器方‘网关’程序实际上管理向文件系统和数据库写数据和从文件系统和数据库读数据。
“客户机”、“客户机设备”、“客户机机器”、或“客户机计算机”意味着任何使用一个协议请求另一个计算机系统或过程的服务的计算机系统或过程。例如,客户机包括个人计算机、大型机、PDA、移动电话、膝上型计算机、能够进行无线与有线通信的设备以及任何能够管理搜寻查询和搜寻结果或应答的仪器。客户机还可以包括建立与服务器的数据通信并发布对文档、图像以及其它资源的请求的通信软件应用。
“通信应用”为任何能够发送和接收针对数据处理系统中的文档或其它数据流所分配的图像的数据通信软件。例子包括浏览器、微浏览器、专用数据通信系统、服务器应用以及这一领域中的熟练技术人员将会意识到的其它通信应用。
“CPU”意指‘中央处理器’。术语“CPU’,如在这一公开说明中对其的使用,包括任何形式的计算机器中的任何形式的计算机处理系统,无论是单一的、多重的、中央的、外围的、还是远程的,其中计算机器包括客户机设备、服务器等等。
“数据处理系统”意味着一个或多个计算机、外部设备以及执行数据处理的软件。数据处理系统与‘计算机系统’、‘计算系统’以及‘信息处理系统’同步。
“数据流”为通过标示对其内容进行组织的任何数据处理系统上的任何资源。例如,数据流包括标示语言形式的静态文件,诸如静态HTML文件或静态HDML文件。数据流还包括动态生成的内容,诸如查询结果和来自CGI脚本的输出、JavaTM小服务程序、动态服务器页(“APS”)、Java服务器页(“JSP”,)以及这一领域中的熟练技术人员将会意识到的其它类型的动态生成的内容。
“GUI”意指‘图形用户接口’。
“HDML”代表‘便携设备标示语言’,即一种用于格式化能够访问web的移动电话的内容。HDML为Openwave Systems公司拥有专利(proprietary),并且仅可操作在使用Openwave浏览器的电话上。HDML操作在Openwave的便携式设备传输协议(“HDTP”)上,而不是WAP。
“HTML”代表‘超文本标示语言’,即一种用于在浏览器上显示web页的标准标示语言。
“HTTP”代表‘超文本传输语言’,即一种World Wide Web的标准数据通信协议。
“超级链接”,也称为“链接”或“web链接”,是对允许被访问的指定的(named)资源或网络地址的资源名或网络地址的一个访问(reference)。更具体地讲,根据本发明,对超级链接的调用,实现了访问一个资源、一般为一个文档的请求。通常,超级链接标识一个存储有诸如web页或其它文档的资源的网络地址。超级链接通常作为文档中的标示中的锚点元素(anchorelement)来实现。然而,如在本说明书中使用的术语,超级链接包括通过锚点所影响的链接以及不涉及锚点的通过浏览器上的‘back’按钮调用的URI。超级链接包括键入浏览器上的地址字段中的URI,以及由也不调用锚点的‘Go’按钮所调用的URI。另外,尽管存在着把超级链接视为检索web页的自然的倾向,然而,它们的应用不仅如此。事实上,超级链接访问通过超级链接通常可用的“资源”,不仅包括web页,而且还包括许多其它类型的数据以及动态生成的来自Java小服务程序的服务器方输出、CGI脚本以及这一领域中的熟练技术人员将会意识到的其它资源。
“图像”是通过感测来自图片或由图片反射的光、声、电子辐射或其它辐射扰动(foment),所产生的该图片的一种电子表示。也可以在不参照存在的图片的情况下,由软件直接生成图像。图像包括景象图片以及在计算机屏幕上显示的图形元素的图片。通常以数字形式,诸如以JPEG、GIF、PNG、TIFF、BIFF、bmp、Clear、FITS、IFF、NFF、OFF、PCX、TGA以及XBM形式表示图像。“JPEG”是“联合图像专家组(Joint Photographic Experts Group)”的缩写,是编写这一标准的委员会的最初的名称。“GIF”代表“(可交换图形格式Graphics Interchange Format)”,一种其压缩算法为Unisys拥有专利的格式。“PNG”代表“可移植网络图形(Portable Network Graphics)”,作为对GIF的一种非专利(non-proprietary)取代而开发的格式。
“Internet”是一个全球网络,利用各种协议,包括作为它们的网络协议栈的网络层的Internet协议或‘IP’,连接着上百万的计算机。可通过设计可以实现Internet的非集中化,例如一个数据处理系统。“internet”(非大写的)指的是用路由器互连的任意组网络。
“LAN”是“Local Area Network(局域网)”的缩写。LAN是一种跨越一个相对小的区域的计算机网络。
“标示”是添加在一个文档上的、以使人或系统能够对文档进行处理的信息。标示由添加于文档的数据以表示其结构的依照句法划分的字符构成。标示信息可以描述文档的特性,或者它可以指出将要进行的实际处理。标示由标示“元素”构成,每一个标示元素由一个或多个标签加以定义。所定义的标示元素可具有一个或多个“属性”。每一属性具有一个名称和一个值。例如,人们所熟悉的HTML锚点元素包括一个开始标签<a>和一个结束标签<a>。例如,锚点元素属性还包括用于标识超级链接的URI的HREF属性以及用于使锚点可用作超级链接的NAME属性。锚点元素的一个例子是:
<a href=“http://www.SomeWebSite.com/index.html”>Home</a>
这个例子把字“Home”建立为到位于通过HREF元素“http://www.SomeWebSite.com/index.html”所标识的URI处的index.html文档的一个超级链接的锚点。例子:
<img src=“//www.ibm.com/i/mast_logo.gif”width=“150”height=“47”/>是一个HTML图像元素<img>。HTML图像元素通过由它们的SRC属性中的URI所定义的超级链接来访问图像。这一例子具有一个SRC属性,该属性具有<“//www.ibm.com/i/mast_logo.gif”的URI。另外,这个例子<img>元素还具有定义图像宽度和高度的属性。该图像元素是一个“empty”元素在其中的例子,并不是具有全部开始标签和结束标签,而其仅由单一的标签<img>构成。
“标示语言(Markup Language)”是一种语言,用于定义添加在文档的内容中作为辅助以对文档进行处理的信息(标示)。标示语言的例子包括HDML、HTML、WML、XML及其它。在某些标示语言中,标示元素由该语言的标准来定义,例如HDML、HTML以及WML就属于这种情况。在其它标示语言中表示元素是用户定义的,总体上讲XML和SGML(标准的一般化标示语言)属于这种情况,XML基于该语言。
“PDA”指的是个人数字助手,即一种根据本发明的实施例的用作客户机的便携式计算机。
“资源”指的是根据本发明的实施例的数据处理系统中所管理的信息的任何集合。网络通信协议,例如HTTP等,一般传输资源,而不只是文件。资源是能够由URI或URL标识的信息的一个集合。事实上,‘URI’中的‘R’代表‘资源’。最普通的一类资源是文件,然而资源还包括动态生成的查询结果、CGI脚本的输出、动态服务器页等。认为资源与文件相似,但实质上更为一般化,有时是有益的。作为资源的文件,包括web页、图形图像文件、视频剪辑文件、音频剪辑文件、具有任何MIME类型的数据的文件等。作为一种实践问题,当前大多数HTTP资源、WAP资源等为文件或服务器方脚本输出。服务器方脚本输出包括来自CGI程序的输出、Java小服务程序、动态服务器页、Java服务器页等。
“服务器”是一种在网络上向其它计算机提供共享服务的计算机。服务器的例子包括文件服务器、打印机服务器、电子邮件服务器、web服务器等。服务器包括在网络上管理包括文档的资源并响应对这样的资源的访问的请求的任何计算机或计算机器。‘web服务器’是这样一种服务器:通过诸如浏览器或微浏览器的数据通信应用程序,使用诸如HTTP、WAP或HDTP的超级链接协议,与其它计算机进行通信,以管理并使网络计算机文档、图像、以及其它资源可用。
“SQL”代表‘结构化查询语言’,即一种用于从数据库请求信息的标准化查询语言。尽管存在对SQL的ANSI标准,但作为一种实践问题,SQL的大多数版本倾向于包括众多的扩展。本说明书提供了对基于语义的、表示为伪代码SQL的搜寻索引的数据库查询的例子。把这样的例子称为‘伪代码’,因为没有把它们写入SQL的任何特定的版本中,而且还因为它们的提出仅仅是为了便于解释,而不是作为实际的工作模式。
“Java小服务程序(Java Servlet)”是一种程序,将其设计为从另一个程序而不是直接从一个操作系统加以运行。“小服务程序”特别是为了从一个针对小服务程序的传统的Java接口,在服务器上加以运行而设计的。小服务程序是一些模块,这些模块扩展了面向请求/响应的服务器,例如能够使用Java(Java-enabled)web服务器。Java小服务程序是对CGI程序的一种替代。
“TCP/IP”是指标准OSI数据通信协议栈的两个层。使用Internet Protocol(Internet协议),此处将其按首字母缩写为‘IP’,实现网络层。使用传输控制协议(Transport Control Protocol),将其称为‘TCP’,实现传输层。如此频繁地把这两个协议一起加以使用,以致于常常把它们称为TCP/IP组,或更简单地,只将它们称为‘TCP/IP’。TCP/IP是对称为‘Internet’的人们所熟悉的世界范围的计算机网络的标准数据传输组。
“URI”,即“通用资源标识符(Universal Resource Identifier)”,是可以通过网络访问的在任何名字空间(namespace)中的命名的对象的标识符。URI对任何访问方案都起作用,例如,包括文件传输协议(File Transfer Protocol)或“FTP”、Gopher(因特网的菜单式查询工具)以及Web。用于本发明的典型的实施例中的URI通常包括一个internet协议地址,或一个转换为internet协议地址的域名,并标识位于网络、通常是Internet上的资源、特别是文件、web页、CGI脚本或小服务程序的位置。指向诸如特定文档、HTML文件、CGI脚本或小服务程序的特定资源的URI,通常包括一个路径名或文件名,这一路径名或文件名定位和标识在通过服务器连接到网络的文件系统中的一个特定的资源。对可执行的诸如CGI文件、小服务程序、或动态web页的特定资源来说,例如,可存储或检索数据,URI通常包括以编码到URI中的数据的形式的查询参数、或要存储的数据。这样的参数或要存储的数据称为‘URI编码的数据’,有时也称为‘表格数据(form data)’。
“URI编码的数据”或“表格数据”是包装在用于数据通信的URI中的数据,是在诸如Internet的数据处理系统中用于通信变量名和值的有用的方法。通常,按照超级链接协议,例如按HTTP等来通信表格数据,HTTP使用GET和POST功能来传输URI编码的数据。在这一情况下,要记住URI比仅仅是请求文件传送要做的多得多。URI标识服务器上的资源。这样的资源可以是具有文件名的文件,但由URI所标识的资源还包括,例如,对数据库的查询,其包括对根据本发明的实施例的搜寻引擎的查询。这样的查询的结果不必驻留在文件中,但它们是可由URI加以识别以及可由搜寻引擎加以识别的数据资源,并且可以为产生这样的资源的查询数据。URI编码的数据的一个例子是:
http://www.foo.com/cgi-bin/MyScrip.cgi?rield1=value 1&field2=value2
这一例子说明了一个承载编码的数据的URI。这一编码的数据为字符串“field1=value1&rield2=value2”。编码方法是,用‘+’表示的空格,用‘&’和“=”分隔字段名和字段值串起来(string)。字符串中不存在引号或空格。没有引号,用‘+’对空格进行编码,用escape字符对‘&’进行编码,在这一例子中,为‘%26’。例如,如果把一个HTML表格数据具有一个被设置成“Lucy”的称为“name”的字段和一个被设置成“Fred&Ethel”的称为“neighbors”的字段,则对这一表格进行编码的数据串将为:
name=Lucy&neighbors=Fred+%26+Ethel
“URL”,即“通用资源定位器(Universal Resource Locator)”,包括URI的一类子集,以致于每一个URL都可以转换为一个网络地址。URI和URL的区别在于,URI标识名字空间中命名的对象,其中名字可以转换或可以不转换为地址,而URL不转换为地址。尽管现在的标准是在URI的基础上编写的,但对于与web相关的标识符,即用于数据通信的具有网络地址的web数据位置的称为“URL”的标识符,这些标准是共同的。本说明书把术语URI和URL基本上作为同义词使用。
“WAN”意指‘广域网(Wide AreaNetwork)’。WAN的一个例子是Internet。
“WAP”指的是无线应用协议(Wireless Application Protocol),即一种随便携式无线设备一起使用的协议。随WAP一起使用的无线设备的例子包括移动电话、传呼机、双向无线电设备、便携式计算机以及PDA。WAP支持许多无线网络,而且许多操作系统支持WAP。WAP支持HTML、XML、特别是WML(无线标示语言,Wireless Markup Language),WAP是一种特别针对没有键盘或鼠标的小屏幕和单手导航(one-hand navigation)而设计的语言。专门为便携设备而设计的操作系统包括PalmOS、EPOC、Windows CE、FLEXOS、OS/9、以及JavaOS。那些使用显示器并访问Internet的WAP设备运行“微浏览器”。微浏览器使用小文件规格(small file sizes),小文件规格可以调和便携式设备低存储器限制与无线网络的低带宽限制。
“WML”代表‘无线标示语言(Wireless Markup Language)’,是一种用作标示语言的XML语言,用于实现WAP的可以连接到web的无线设备的web内容。有一个WAP论坛为WML提供DTD。DTD是一种XML‘文档类型定义’。
“World Wide Web”,或简称为“Web”指的是一个internet协议(“IP”)服务器的系统,其中的服务器支持特定格式的超级链接文档、按诸如按HTML、XML、WML、以及HDML标示语言格式化的文档。本说明书中所使用的术语“web”也指实现诸如HTTP、WAP、HDTP等的超级链接协议、支持标示语言格式的URI和文档的任何服务器或连接的(connected)服务器组或互相连接的(interconnected)服务器组,而不管是否把这样的服务器或服务器组本身连接到World Wide Web。
“XML”代表‘可扩展标示语言(eXtensible Markup Language)’,是一种支持包括用户定义的元素、标签、以及属性的用户定义的标示语言。XML的可扩展性不同于与大多数与web相关的标示语言,例如HTML,大多数与web相关的标示语言是不可扩展的,而是使用了标准定义的元素、标签、以及属性组。XML的可扩展性使其成为定义其它语言的良好基础。例如,WML,无线标示语言,是一种基于XML的标示语言。现代浏览器以及其它通信客户机倾向于支持除HTML之外的标示语言,例如包括XML。
数据处理系统
现在,从图1开始,参照附图,解释数据处理系统中用于图像分配的示范性方法、系统以及产品。图1描述了一个其中可实现本发明的各实施例的数据处理系统的体系结构。图1的数据处理系统包括许多用于在网络中数据通信的连接的计算机。图1的数据处理系统包括网络(102,104)。网络(102,104)可以作为LAN、WAN、内部网(intranet)、互联网(internet)、因特网(the Internet)、web、World Wide Web本身、或这一领域中的熟练技术人员将会意识到的其它连接。,这样的网络是可用于一起连接到数据处理系统中的各种设备和计算机之间提供数据通信连接的媒体。
在图1中,服务器128和104以及存储器单元132连接于网络102。另外,连接包括PDA 106、工作站108、以及移动电话110的若干示范性客户机设备用于与网络102进行数据通信。能够连接到网络的移动电话110通过无线链路116连接网络102,PDA 106通过无线链路114连接网络102。在图1的例子中,服务器128直接连接于客户机工作站130和网络104(其可以为LAN)。网络104并入了支持到膝上型计算机126的无线连接的通信链路。网络104还并入了支持到客户机工作站112的有线连接的有线线路协议。
一般使用术语‘客户机’和‘服务器’来解释根据这里公开的示范性实施例的数据通信。然而,术语‘客户机’和‘服务器’的使用并不排除对等(peer to peer)通信。
图1中所说明的特定的服务器和客户机是解释性的,而不是用于限制的。根据本发明的各实施例的可用的数据处理系统可以包括未在图1中描述的附加的服务器、客户机、这一领域中的熟练技术人员将会意识到的其它设备、以及对等体系结构(peer-to-peer architecture)。在这样的数据处理系统中的网络可以支持许多数据通信协议,例如TCP/IP、HTTP、WAP、HDTP、以及这一领域中的熟练技术人员将会意识到的其它协议。除了图1中所说明的,可以在各种硬件平台上实现本发明的各实施例。
图2给出了计算机器的一个框图,该计算机器包括一个计算机106,例如客户机或服务器,用于在根据本发明的各实施例的数据处理系统中用于图像分配的系统中。图2的计算机106至少包括一个计算机处理器156或‘CPU’,以及随机存取存储器168(“RAM”)。存储在RAM 168中的是应用程序152。用于实现本发明的创造性的方法的应用程序包括运行在服务器上的小服务程序和CGI脚本,以及诸如运行在客户机上的浏览器或微浏览器的数据通信程序。另外,存储在RAM中的还有操作系统154。用于根据本发明的各实施例的计算机中的操作系统,包括AIXTM、Linux、Microsoft、NTTM、以及这一领域中的熟练技术人员将会意识到的许多其它操作系统。
图2的计算机106包括通过一条系统总线160连接于处理器156以及计算机其它部件的计算机存储器166。可以作为硬盘驱动器170、光盘驱动器172、电可擦除可编程只读存储器空间(‘EEPROM’或‘闪速’存储器)174、RAM驱动器(未示出)、或这一领域中的熟练技术人员将会意识到的任何其它种类的计算机存储器,来实现计算机存储器166。
图2的示例计算机106包括实现与其它计算机182、服务器、客户机、或网络连接的数据通信连接184的通信适配器167。通信适配器实现了数据通信连接的硬件级,客户机计算机和服务器通过通信适配器直接互相进行数据通信以及通过网络互相进行数据通信。通信适配器的例子包括有线拨号连接的调制解调器、有线LAN连接的Ethernet(IEEE 802.3)适配器、以及无线LAN连接的802.11b适配器。
图2的示例计算机包括一个或多个输入/输出接口适配器178。计算机中的输入/输出接口适配器通过例如软件驱动器和用于控制向诸如计算机显示屏幕的显示器设备180的输出的计算机硬件,以及从诸如键盘和鼠标的用户输入设备181的用户输入,实现了面向用户的输入/输出。
接收和显示图像
图3给出了一个数据流图,说明了一个在数据处理系统中用于分配图像的示范性方法,该方法包括在一个客户机(302)中接收(304)用于显示的数据流(例如,文档306),文档(306)具有根据标示语言的标示(308),该文档还具有标识一组图像(312)的图像组标识符(310)。在Web作为数据处理系统的情况下,之所以会出现接收一个文档的操作,是由于用户通过一个例如一个浏览器或微浏览器的数据通信应用,调用了一个超级连接,而且该应用向超级链接中所标识的服务器发送根据web上所支持的例如HTTP、WAP等的通信协议的请求消息,作为响应接收到超级链接中所标识的文档,其通常为一个以例如HTML或WML的标示语言表示的web页(在服务器上静态或动态生成的)。
在这一例子中,文档包括一个标识一组图像(312)的图像组标识符(310)。图像组标识符(310)可以包含在由如下面的示范性标示中的<IMGDB>元素所示的一个文档中:
<HTML>
<HEAD>
<TITLE>Business Partner support from IBM Partner World</TITLE>
</HEAD>
<BODY>
<IMGDB
src=“http://www.ibm.com/cgibin/retrieve.cgi?imageGroupID=myGr
oup”/>
<table width=“760”border=“0”cellspacing=“0”cell padding=“0”>
<IMGID src=“myGroup.mast_logo.gif”border=“0”alt=“IBM”
width=“150”height=“47”/></td>
<td width=“310”class=“tbg”><a href=“#main”>
<IMGID src=“myGroup.c.gif”border=“0”width=“1”height=“1”
alt=“Skip to main content”/></a></td>
<table border=“0”ceI 1 padding=“0”cellspacing=“0”>
<form name=“Search”method=“get”<input type=“hidden”
name=“v”value=“11”size=“15”/><tr>
<IMGID src=“myGroup.printer.gif” width=“23” height=“19”
alt=“Link to printable version ofpage”></td>
<tr valign=“middle”><td>
<IMGID src=“myGroup.pwhome.jpg”width=“610”height=“52”
alt=“IBM PartnerWorld home header graphic”/></td>
<td><input maxlength=“100” class=“input” size=“15” name=“q”
value=“”type=“text”/></td><td>
<IMGID src=”myGroup.fw.gif’width=“16”height=“16”alt=“”/></td>
</BODY>
</HTML>
这一例子是从上面的现有技术例子中导出的。然而,这一例子包含一个新的标示元素:<IMGDB>。这一新的标示元素<IMGDB>代表一条指令,用于在向服务器的单一通信连接期间,检索由一个图像组标识符所标识的所有图像,这一图像组标识符是在以上所描述的新标示元素中的‘src’属性中给出的。在这一例子中,图像组标识符为被编码为“myGroup”的URI。
因为<IMGDB>是新的,可以采用诸如浏览器或微浏览器的数据通信应用以适用于使用诸如Java小应用程序的可下载的插件程序、其它客户机方脚本工具、或按这一领域中的熟练技术人员将会意识到的其它方式,通过源代码级的改变来响应新的元素。新标示元素<IMGDB>的名字仅仅是一个示例,而不是对本发明的一个限制。可以为新这一元素起任何名字,例如<IMG-DOWNLOAD>、<GET-IMG>、<GET-GROUP>、以及这一领域中的熟练技术人员将会意识到的其它名字,而且所有这样的名字也均落入本发明的范围。
图3的方法包括根据图像组标识符(310)从数据处理系统中的一个服务器(314)检索(316)图像。在根据本发明的典型的服务器中,根据图像的相应的图像组标识符,把图像存储在文件系统或数据库中。即,把每一个图像与一个图像组标识符相关联,以致于可以在大约相同的时间检索、收集、以及返回一个组中的所有图像,只要服务器知道所希望的图像组标识符即可。因此,根据图像组标识符(310)检索(316)图像通常是通过从客户机向标示中所标识的一个服务器传输一个以数据通信协议所表示的、并承载一个图像组标识符的请求消息进行的。在所讨论的这一例子中,标示为:
<IMGDB
src=“http://www.ibm.com/cgi-bin/retrieve.cgi?imageGroupID=myGroup”/>
由域名“www.ibm.com”标识目标服务器,把协议标识为“http:”,并且把图像组标识符表示为“myGroup”。因此,根据图像组标识符(310)检索(316)图像是通过从一个客户机浏览器向“www.ibm.com”处的服务器传输一个承载被编码为“myGroup”的图像组标识符URI的HTTP请求消息进行的。在这一例子中,请求消息实际上请求被标识为“/cgi-bin/retrieve.cgi”的资源,这一资源是取得图像组标识符的一个调用参数(call parameter)的服务器所调用的一个CGI脚本,从一个数据库中检索与该图像组标识符相关的图像,并且把图像返回给发出调用的服务器,接下来服务器在HTTP应答消息中把它们返回到发出请求的客户机。
CGI脚本“retrieve.cgi”是用于检索图像的服务器方功能性(functionality)。然而,CGI脚本的使用仅仅是为了便于说明,并不是对本发明的一种限制。在支持IBM的BD2数据库管理系统的服务器上,可以作为DB2‘存储的程序’来实现用于检索图像的服务器方功能性。作为进一步的一个例子,在一个Java服务器上,可以作为一个小服务程序,并且使用一个URI,例如使用src=“http://www.ibm.com/servlets/retrieve?imageGroupID=myGroup”来调用,实现用于检索图像的服务器方功能性。
有利的做法是,组中的所有图像在大约同一时间返回,即通常通过一个单一的请求/应答序列来完成。事实上,在图3的方法的许多实现中,在显示任何图像之前,通过检索由图像组标识符(310)所标识的所有图像来进行检索(316)图像(312)。文档可以包括请求图像组的一个以上的标示元素,即,在当前的例子中,一个以上的<IMGDB>元素。然而,在仅有一个<IMGDB>元素的文档中,同时下载一个组中的所有图像把HTTP请求/应答的通信量从每个图像一次往返行程(one round trip)减少为每个文档一次往返行程。
通常,根据图3的例子,检索(316)图像包括把图像聚集在客户机上的一个数据结构中。例如,通过使用一个C中的数组结构、C++中的两元素容器(container)对象、Java中的hash表、以及这一领域中的熟练技术人员将会意识到的其它方法,来实现把图像聚集在客户机上的一个数据结构中。这样的一个聚集的例子是,针对图像组标识符的命名为“myGroup”的表,该表具有两列,一列存储标识符,另一列存储图像:
myGroup | |
图像ID | 图像 |
mast_logo.gif | --- |
c.gif | --- |
printer.gif | --- |
pwhome.jpg | --- |
fw.gif | --- |
这一例子,使用一张针对一个图像组标识符命名为“myGroup”的表以及一个含有来自上面示范性HTML段的图像标识符的列,支持对groupImageID.imageID形式的图像的参照(reference),以致于可以通过一个浏览器或其它通信应用来使用对myGroup.mast_logo.gif的参照,以便从表中检索第一个图像。对myGroup.c.gif的参照返回表中的第二个图像,对myGroup.printer.gif的参照返回表中的第三个图像。这一表中的图像仅用虚线加以表示,因为在本例中,图像本身类似BLOB,即实际的原始(raw)二进制图像本身,存储在计算机存储器客户机方,准备通过浏览器加以显示。
在图3的方法的典型的实现中,标示(308)包括代表指示在一个显示位置显示图像的指令的标示元素。在本例中,标示元素包括客户机上的一个数据结构中的图像的标识,该方法还包括根据标示(308)在客户机(302)上显示(318)图像。例如,所讨论的HTML段不仅包括新的标示元素<IMGDB>,而且还包括另一个新的标示元素<IMGID>。新的标示元素<IMGID>代表指示在这样的一个显示位置显示图像的指令:即在相应于在文档的逻辑结构中的元素的位置的一个显示位置显示图像,其中,文档的逻辑结构即为标示本身所提供的结构,例如HTML表、HTML段落标记、HTML行标记、HTML格式等。新的标示元素<IMGID>包括客户机上的一个数据结构中的图像的标识,在本例中,客户机上的一个数据结构中的图像的标识采用以上所描述的形式:groupImageID.imageID。更具体地讲,这一示例HTML段给出了5个<IMGID>元素:
<IMGID src=“myGroup.mast_logo.gif”border=“0”alt=“IBM”width=“150”
height=“47”/>
<IMGID src=“myGroup.c.gif”border=“0”width=“1”height=“1”alt=“Skip
to main content”/>
<IMGID src=“myGroup.printer.gif”width=“23”height=“19”alt=“Link to
printable version ofpage”/>
<IMGID src=“myGroup.pwhome.jpg”width=“610”height=“52”alt=“IBM
PartnerWorld home header graphic”/>
<IMGID src=“myGroup.fw.gif”width=“16”height=“16”alt=“”/>
这些例子中的‘src’属性不像现有技术的情况中那样,跨越一个数据处理系统来标识定位在远程服务器上的远程文件系统中的图像,而现在指向了客户机机器本身上的一个数据结构中的图像,从而为快速检索和显示做好了准备。在第一示例<IMGID>元素中,属性src=“myGroup.mast_logo.gif”标识与命名为“myGroup”的客户机上的数据结构中的图像标识符“mast_logo.gif”相关的一个图像。在第二示例<IMGID>元素中,属性src=“myGroup.c.gif”标识与命名为“myGroup”的客户机上的数据结构中的图像标识符“c.gif”相关的一个图像。在第三示例<IMGID>元素中,属性src=“Group.printer.gif”标识与命名为“myGroup”的客户机上的数据结构中的图像标识符“printer.gif”相关的一个图像。
存储和发送图像
图4给出了一个数据流图,说明了另一个在数据处理系统中分配图像的示范性方法,该方法包括在一个服务器314上存储402图像312,而且在存储图像的过程中,把每一图像与至少一组由图像组标识符412所标识的图像相关联404。
在根据图4的方法的一些实现中,通过把图像作为BLOB存储在数据库中,实现对图像312的存储。在这样的实现中,把每一图像与至少一组图像相关联404,是通过针对每一文件为每一个与图像组标识符相关的BLOB存储一个图像标识符得以完成的。在其它一些实现中,通过把图像作为文件存储在一个文件系统上来进行存储402图像。在这样的实现中,把每一图像与至少一组图像相关联404,是通过针对每一文件存储与图像组标识符相关的每一个文件的路径名来完成的。总之,相对现有技术的方法,数据库管理工具、自动查询、插入、删除、更新、报告等的可得性,明显缓解了服务器方的管理负担,并加快了应答时间。
现在,参照图5,进一步解释用于存储(402)图像(312)以及把图像与组相关联(404)的方法。图5给出了一个数据库关系图,说明了在代表图像和图像组的记录之间的关系。在名为“Image Groups”的表512中,每一个记录代表一组图像,而且每一个记录包括一个图像组标识符412和一个文本描述字段514。在名为“Image”的表502中,每一个记录代表一个图像,而且每一个记录包括一个图像标识符504,图像标识符504通常为一个作为例如一个图像文件名或一个整数代码的字符串实现的标识码。图5中的Images表502还包括以BLOB 506的形式存储在表中的图像。而且,Images表502还说明了图像存储的又一个可供选择的形式,其中,图像本身存储在文件系统上,而且Images表502为每一个图像存储一个路径名,这一路径名指出:在文件系统中的什么地方可以找到一个图像文件中的图像。
一个路径名为一个标识一个文件的子目录序列名。文件系统中的每一个文件通常具有一个称为文件名的名字,因此,最简单类型的路径名仅为一个文件名。当仅作为一个文件名指出一个路径名时,操作系统在当前目录中寻找该文件。然而,如果文件驻留在一个不同的文件目录中,要想找到这一文件,操作系统需要更多的信息。通过指出一个操作系统必须彻查(followthrough)一个文件系统以找到该文件的路径,提供这样的附加信息。路径名总是从工作目录或从一个根目录开始。每一个操作系统具有其自己的指出路径的规则。例如,在DOS中,根目录被命名为\,并由另外的反斜杠在路径名中分隔子目录。在UNIX中,根目录被命名为/,并由另外的斜杠在路径名中分隔子目录。Macintosh操作系统中,由冒号分隔路径名中的子目录。
阅读本说明书的这一领域中的熟练技术人员将会明显意识到:有利的做法是,Images表502和图像组512将具有多对多的关系,因为每一个图像可以处于多个组中,每一个组中可以具有多个图像。多对多关系是有利的,因为这一关系有助于‘归一化(normalize)’数据库,从而避免了多次存储同样的图像或同样的图像组定义。图5中命名为“Junctions”的表510是一张与实现了多对多的关系的Images表502和Images Group表502相联结的联接表。联接表510包括针对图像和图像组的每一组合的记录。即,联接表510中的每一记录代表一个图像和一个图像组的关联,而且联接表510中的每一记录包含一个图像标识符504和一个图像组标识符412。联接表510中的图像ID字段504是Images表502的一个外键(foreign key),形成了Images表502和联接表510之间的一对多的关系。联接表510中的组ID字段412是Images Group表502的一个外键,形成了Images Group表502和联接表510之间的一对多的关系。因此,通过联接表510所实现的Images表502和Images Group表502的关系是多对多的。
图4的示范性方法包括从一个客户机(302)接收(406)一个对一组图像的请求(414),这一请求包括一个图像组标识符(310)。接收一个包括一个图像组标识符的请求,通常是通过在服务器中从一个客户机浏览器接收一条承载有图像组标识符URI的HTTP请求消息,例如承载有被编码为“imageGroupID=myGroup”的图像组标识符URI的HTTP请求消息,而得以完成的。这样的一条请求消息通常响应标示,类似先前由
<IMGDB
src=“http://www.ibm.com/cgi-bin/retrieve.cgi?imageGroupID=myGroup”
/>
所说明的标示,创建于一个客户机中。
在这一例子中,如以上所描述的,请求消息实际请求的是被标识为“/cgi-bin/retrieve.cgi”的资源,服务器所调用的一个CGI脚本,该CGI脚本取图像组标识符的一个调用参数(在这一情况中为“myGroup”),从一个数据库或一个文件系统中检索与该图像组标识符相关的图像,并且把图像返回给发出调用的服务器,接下来服务器在HTTP应答消息中把它们返回到发出请求的客户机。
图4的方法还包括从存储器检索(408)图像组标识符(310)所标识的图像(416)。在根据本发明的实施例的把图像作为BLOB存储在数据库记录中的典型的服务器中,通过把请求消息解析(parse)为数据库查询以进行图像的检索,例如:
SELECT imageBLOB FROM images,junctions
WHERE junction.groupID=“myGroup”
AND images.imageID=junctions.imageID;
这是一个具有类似下列形式的示例SQL查询:
SELECT imageBLOB FROM image,junctions
WHERE junction.groupID=“/*insert image group identifier here*/”
AND images.imageID=junctions.imageID;
已知一条承载有URI编码的图像标识符“myGroup”的请求消息,解析该请求消息包括从请求消息提取图像标识符,并将其插入SQL查询表格。针对图5中所示的表格的数据库所声明(asserting)的示例SQL查询,从该数据库提取在指派为“myGroup”的图像组中的所有图像。
图4的方法还包括把所检索的图像发送(410)到客户机。在这一例子中,发送所检索的图像,是通过把它们编组成一条HTTP请求消息,并将这一请求消息传输到请求该图像的客户,得以实现的。有利的是,使用这一方法,可以通过一个单一的数据通信连接,例如通过一个TCP/IP连接,同时发送这对一个文档的所有图像,与现有技术相比,这表明了数据通信资源的使用和时间方面的明显的高效率。
图6给出了一个数据流图,说明了又一个在数据处理系统中分配图像的示范性方法。图6的方法包括存储(402)图像(312)、接收(406)对图像的请求、检索(408)图像、发送(410)所检索的图像等,这些操作都如上面针对图4的方法所进行的描述。
图6的方法还包括把多组图像(groups of images)与一个图像检索规程(420)相关联,其中检索图像是通过调用(422)该图像检索规程来实现的。在典型的实施例中,图像检索规程是用于图像检索的服务器方的功能性,即以上所描述的作为一个CGI脚本、Jave小服务程序、或DB2存储的过程加以实现的服务器方的功能性。在这样的实施例中,把组与规程相关联,是通过把脚本、小服务程序、或存储的过程名插入一个标示元素中的一个HTML文档得以实现的,其中,该标示元素是为这一目的而建立的例如上述<IMGDB>元素。
图6的方法还包括把包含根据标示语言的标示的文档存储(402)在服务器(314)上,其中,每一文档还包括至少一个包含标识一组图像的一个图像组标识符的标示元素,以及一个这样一些标示元素:包括客户机上一个数据结构中的各个图像的标识,并代表在特定的显示位置显示各个图像的指令。在典型的实施例中,一个包含一个标识一组图像的图像组标识符的标示元素,是通过上述针对示范性<IMGDB>元素的方式得以实现的。
用于动态服务器页的图像分配
阅读本说明书的这一领域中的熟练技术人员将会明显意识到:在世界各地的计算机存储器中的动态服务器页中具有现有技术的图像元素。现有技术图像元素的一个人们十分熟悉的例子是HTML元素<IMG>。根据本发明的实施例的改进现存动态服务器页的一种方法是,使用一个字处理器或一个自动工具彻底扫描它们,用上述<imgid>元素或类似的元素取代图像元素,把每一动态服务器页的图像作为由一个图像组标识符所标识的组关联起来,并把图像组标识符插入动态服务器页。然而,这一方案是十分费力的,而且容易出现错误,因为动态服务器页的特性是每当客户机请求一个页时,与该页的一个特定的绘制(rendering)相关联的图像可能会改变。有利的做法是,改进的用于动态服务器页的分配图像的方法。
动态服务器页是包括除了静态内容的动态内容的web资源。静态内容为通常的文本和构造文本的标示。在这一所讨论的环境中的动态内容是通常由服务器方的脚本功能所表示的可执行程序内容。例如,在World Wide Web的情况下,web页内容包括通常的静态内容,例如显示文本、标示标签、以及可执行程序内容。例如,可执行程序内容包括Java、VBScript、CGI网关脚本处理、PHP脚本、以及Perl代码。
动态内容不同于静态内容之处在于,它是由标示根据动态内容的类型嵌入的。例如,标识JSP动态内容中Java脚本程序(scriplets)和在ASP动态内容中的VB脚本的标示为标准的语法:<%%>。
由任何特定的动态服务器页支持的可执行程序内容的类型,依赖于想要提交(render)可执行程序内容的动态服务器页引擎的种类。例如,Java通常用于针对Java的服务器页引擎(在本公开说明中,有时称为“JSP引擎”)的Java服务器页(“JSP”);VBScript通常用于针对Microsoft动态服务器页引擎(在本公开说明中,有时称为“ASP引擎”)的动态服务器页(“ASP”);PHP脚本,基于C、C++、Perl、以及Java的语言,用于针对PHP超级链接预处理器引擎的PHP页。
存在着多种类型的动态服务器页引擎,每一种通常只能够提交一种动态服务器页。在每一种情况中,由某一特定动态服务器页引擎所表现的动态内容的种类是该引擎首先为其开发的动态服务器页的特定种类。JSP引擎提交JSP。ASP引擎提交ASP。PHP引擎提交PHP页等。
一个web服务器,当接收到用于特定动态服务器页的请求时,将该动态服务器页发送到一个动态服务器页引擎,以便提交。动态服务器页引擎通过执行其可执行程序内容,‘提交’这一动态服务器页,并通常随其中嵌入动态内容的静态内容,把可联线的(in-line)执行程序内容的执行的输出结果放置在动态服务器页引擎的标准输出上。
一个web服务器可以支持多种类型的动态服务器页。即,一个web服务器可以支持多个动态服务器页引擎,通常,每一个支持一种动态服务器。当接收到对一个特定动态服务器页的请求时,web服务器通过参照动态服务器页引擎的位置,或参照动态服务器页引擎的文件名,或更具体地讲,参照文件名的扩展,确定由哪一种动态服务器页引擎提交该动态服务器页。例如,因为动态服务器页someCGIScript.cgi位于一个已知用于容纳CGI脚本的子目录cgi-bin中,或因为文件名扩展‘cgi’标识someCGIScript.cgi为一个CGI脚本,所以可以把URI请求:
http://www.foo.com/cgi-bin/someCGIScript.cgi
导向一个CGI引擎(“一个公共网关接口”)。相类似,因为位于JSP子目录/jspPages/中,或因为其文件名扩展‘jsp’,为了向一个JSP引擎提交而发送URI请求:
http://www.foo.com/jspPages/someJSPPage.jsp
相类似,把由这样一个URI:
http://www.foo.com/aspPages/someASPPage.asp
所标识的动态服务器页发送于一个ASP引擎,以及由这样一个URI:
http://www.foo.com/phpPages/somePHPPage.php
所标识的动态服务器页发送于一个PHP引擎。
图7说明了其中可以实现用于动态服务器页的分配图像的改进的方法的计算体系结构。图7的体系结构包括一个存储与一个动态服务器页808相关的图像312的web服务器314。动态服务器页708包括把动态服务器页708与图像312关联的图像资源定位器710。通过下列HTML图像元素说明了图像资源定位器的一个示例:
<img src=“//www.ibm.corn/i/v11/m/en/mast_logo.gif”border=“0”,
其中,‘src’属性的值“//www.ibm.com/i/v11/m/en/mast_logo.gif”是一个URI,该URI标识了一个名为‘mast_logo.gif’的图像文件的存储位置。由动态服务器页中给出图像的存储位置的<img>元素,把如此表示的图像与动态服务器页相关联。可以把所关联的图像存储在服务器314上或存储在信息空间(cyberspace)的其它存储位置。
图7的计算体系结构包括动态服务器页引擎724。通过网络318,把服务器314连接于客户机302。通常,服务器314从客户机302接收对动态服务器页的请求。例如,这样的请求以HTTP请求消息、WML请求消息、HDML请求消息等的形式到达。当服务器314接收到对动态服务器页708的一个请求时,如以上所描述的,服务器314确定哪一个动态服务器页引擎724将提交该动态服务器页,并把该动态服务器页发送到那一引擎,以便提交。服务器314反过来从所选择的动态服务器页引擎724接收所表现的动态服务器页内容720。所表现的动态服务器页内容720为原始静态内容,包括所表现的动态内容的插入、运行动态内容的输出。然后,服务器314将动态服务器内容所表现返回给发出请求的客户机。
图8给出了一个数据流图,说明了一种在数据处理系统中分配图像的方法,这一方法包括接收702对动态服务器页708的请求704。动态服务器页708具有多个关联的图像312。在每一图像的存储位置都通过图像资源定位器710标识在动态服务器页中的意义上,每一个图像都与动态服务器页708相关联。通常,由图像标示元素,例如由HTML<IMG>元素中的URI在动态服务器页中表示图像资源定位器710。
在图8的例子中,请求704是一条来自一个客户机302的HTTP请求消息。这一请求消息实现了一个标识所请求的动态服务器页708的URI 706。服务器314把动态服务器页708发送到一个动态服务器页引擎712,这里,动态服务器页708被提交711到所表现的动态服务器页内容720中。
图8的方法还包括在动态服务器页中插入图像的图像组标识符。如以上较详细描述的,图像组标识符为表示图像组标识码的数据元素,例如,在图5的示例数据结构中的参照504处的图像ID。插入714图像组标识符通常包括插入包括该图像组标识符的标示元素,这里,标示元素代表指示客户机在与服务器的一个单一的通信连接期间检索由该图像组标识符所标识的所有图像的指令。例如,这样的标示元素可以表示为:
<IMGDB
src=“http://www.ibm.com/cgi-bin/retrieve.cgi?imageGroupID=myGroup”
/>
在这一例子中,如以上所描述的,请求消息实际请求的是被标识为“/cgi-bin/retrieve.cgi”的资源,即服务器所调用的一个CGI脚本,该CGI脚本取图像组标识符(在这一情况中为“myGroup”)的一个调用参数,从一个数据库或一个文件系统中检索与该图像组标识符相关的图像,并且把图像返回给发出调用的服务器,接下来,服务器在HTTP应答消息中把它们返回到发出请求的客户机。
尽管插入714图像组标识符712可以在动态服务器页本身中作为一个文字插入来实现,但较佳的做法是把图像组标识符插入所表现的动态服务器页内容中。本发明的典型实施例的优点在于,对于基础(underlying)动态服务器页的结构和操作来说,这些典型实施例的操作是清楚的。因此,较佳的做法是不让基础页本身受到干扰,并且由动态服务器页引擎712把图像组标识符插入所表现的动态服务器页内容720中。
图8的方法还包括把图像的客户机数据名718插入714动态服务器页中。图像的客户机数据名为图像的客户机方存储位置的数据元素名,即客户机方计算机存储器中的存储器。插入716客户机数据名718通常包括在所表现的动态服务器页内容720中插入代表指示在客户机显示位置显示图像的指令的标示元素。如以上较详细描述的,可以把这样的标示元素表示为:
<IMGID src=“myGroup.mast_logo.gif”border=“0”alt=“IBM”width=“150”
height=“47”/>
这一例子中的‘src’属性不像现有技术的情况中那样,跨越数据处理系统,标识位于远程服务器上的远程文件系统中的图像,而现在指向了客户机方数据结构中的图像。在这一示例<IMGID>元素中,属性src=“myGroup.mast_logo.gif”标识在与名为“myGroup”的客户机数据结构中的图像标识符“mast_logo.gif”相关的一个图像。
在根据本发明的许多实施例中,针对每一图像插入716客户机数据名718是通过用客户机数据名取代图像标识符得以实现的。考察以下所表现的动态服务器页内容的示例:
<HTML>
<HEAD>
<TITLE>Business Partner support from IBM PartnerWorld</TITLE>
</HEAD>
<BODY>
<img src=”//www.ibm.com/i/vll/m/en/mast_logo.gif”
clientDataName=“clientImages.image 1”>
<img src=“//www.ibm.com/i/c.gif’>
clientDataName=“clientImages.image2”>
<img src=“http://tld.www-l.cacheibm.corn/printer.gif”>
clientDataName=“clientImages.image3”>
</BODY>
</HTML>
在这一例子中,已经把名为‘clientImage’的客户机方数据结构中的客户机数据名‘image1’、‘image2’、以及‘image3’插入所表现的动态服务器页内容中。这一插入是在标准的HTML图像元素<img>中。然而,这一插入是使用一个新的标示元素‘clientDataName’实现的。这一方案把标准的标示元素放置在适当的位置上,并添加新的属性,改进的浏览器可以使用这一新的属性从客户机方存储器检索图像,而现有技术浏览器忽视了这一属性。作为选择,可以由新的元素完全取代现有技术图像元素,如此处所示:
<HTML>
<HEAD>
<TITLE>Business Partner support from IBM PartnerWorld</TITLE>
</HEAD>
<BODY>
<imgid src=“clientImages.image 1”/>
<imgid src=“clientImages.image 2”/>
<imgid src=“clientlmages.image 3”/>
</BODY>
</HTML>
在这一例子中,完全由新的<imgid>元素取代现有技术HTML图像元素,把现有技术‘img’改成用来标识图像的客户机方存储位置,而不是像现有技术那样用来为图像给出一个URI。除了此处所描述的方法外,这一领域中的熟练技术人员将会意识到把图像的客户机数据名插入动态服务器页中的其它方法,所有这样的方法都在本发明的范围内。
尽管插入716客户机数据名718可以在动态服务器页本身中的一个文字插入的来实现,但较佳的做法是把客户机数据名插入所表现的动态服务器页内容中。把客户机数据名直接插入动态服务器页同样容易出现错误,因为每当客户机请求一个页时,与该页的特定的提交相关联的图像可能会改变。因此,有利的做法是,由动态服务器页引擎712把客户机数据名718插入所表现的动态服务器页内容中。
图8的方法包括把所表现的动态服务器页内容720返回722到发出请求的客户机(requesting client)302,包括图像组标识符和多个客户机数据名,每一个都针对与所表现的动态服务器页内容相关联的每一个图像。在显示所表现的动态服务器页内容的过程中,此时所表现的动态服务器页内容作为一个标示文档出现于(appearto)客户机,客户机记录(note)图像组标识符,并发送对图像组的一个请求。
从服务器的角度来看的处理然后进行到上面结合图4所解释的过程。即,该方法包括从客户机302接收406对一组图像的请求414,其中,这一请求包括图像组标识符310。请求本身是作为一条通信协议消息,例如作为一条HTTP请求消息,得以实现的。该方法包括从存储器检索408由图像组标识符310所标识的图像312。该方法还包括把所检索的图像发送410发送于客户机302。
图8的方法还包括把图像作为一个组728存储726在一个服务器上。在典型的实施例中,作为一个组存储图像,包括随图像一起存储一个图像组标识符、一个动态服务器页名、以及图像的客户机数据名。如以上所描述的,可以把图像作为BLOB存储在一个支持BLOB的数据库系统中,或可以把图像作为图像文件随同它们的存入数据库的与图像标识码相关的路径名一起存储在一个文件系统中,例如,如在图5的示范性数据结构中所示。图5的结构包括针对一个图像组标识符412、一个动态服务器页名550、以及一个针对每一的图像的客户机数据名552的存储器。随同图像组512一起存储动态服务器页名550,使根据本发明的实施例的服务器能够根据对一个特定动态服务器页的相继的请求,确定先前是否已经存储了针对那个动态服务器页的一组图像,因而可以提高存储针对那个动态服务器页的一组图像的过程的效率,尽管存在着这样的情况:由于动态服务器页的动态特性,不能存储完全相同的图像组。
从以上的描述,将可意识到:在不脱离本发明的基本构思的情况下,可以对本发明进行修改与变更。本说明书中的描述仅为说明性的,不应将其视为对本发明的限制。本发明的范围仅通过以下权利要求的言语加以限制。
Claims (14)
1.一种用于在数据处理系统中分配图像的方法,该方法包括:
接收对一个具有多个相关图像的动态服务器页的请求,每个图像在动态服务器页中具有一个由图像资源定位器所标识的存储位置;
向动态服务器页插入一个图像的图像组标识符;
向动态服务器页插入图像的客户机数据名。
2.根据权利要求1所述的方法,在向动态服务器页插入图像的客户机数据名的步骤之后还包括:
从客户机接收一个对一组图像的请求,其中,该请求包括该图像组标识符;
从服务器存储器检索由图像组标识符所标识的图像;以及
把所检索的图像发送到客户机。
3.根据权利要求1所述的方法,其中,插入一个图像组标识符包括插入一个包括该图像组标识符的标示元素,其中,标示元素代表一个指示在到服务器的一个单一的通信连接期间检索由该图像组标识符所标识的所有图像的指令。
4.根据权利要求1所述的方法,其中,插入客户机数据名还包括在所表现的动态服务器页内容中插入代表指示在客户机显示位置显示图像的指令的标示元素。
5.根据权利要求1所述的方法,还包括把图像作为一个组存储在服务器上,包括随图像一起存储一个图像组标识符、一个动态服务器页名、以及图像的客户机数据名。
6.根据权利要求1所述的方法,其中,针对每一图像插入一个客户机数据名还包括用客户机数据名取代图像资源定位器。
7.根据权利要求6所述的方法,其中,在动态服务器页中的HTML<img>元素中给出图像资源定位器,用客户机数据名取代图像资源定位器包括用含有客户机数据名的标示元素取代<img>元素。
8.一种用于在数据处理系统中分配图像的系统,该系统包括:
用于接收对一个具有多个相关图像的动态服务器页的请求的装置,每个图像在动态服务器页中具有一个由图像资源定位器所标识的存储位置;
用于向动态服务器页插入一个图像的图像组标识符的装置;
用于向动态服务器页插入图像的客户机数据名的装置。
9.根据权利要求8所述的系统,还包括:
用于从客户机接收一个对一组图像的请求的装置,其中,该请求包括图像组标识符;
用于从服务器存储器检索由图像组标识符所标识的图像的装置;以及
用于把所检索的图像发送到客户机的装置。
10.根据权利要求8所述的系统,其中,用于插入图像组标识符的装置包括用于插入一个包括该图像组标识符的标示元素的装置,其中,标示元素代表一个指示在与服务器的一个单一的通信连接期间检索由该图像组标识符所标识的所有图像的指令。
11.根据权利要求8所述的系统,其中,用于插入客户机数据名的装置还包括用于在所表现的动态服务器页内容中插入代表指示在客户机显示位置显示图像的指令的标示元素的装置。
12.根据权利要求8所述的系统,还包括用于把图像作为一个组存储在服务器上的装置,包括用于随图像一起存储一个图像组标识符、一个动态服务器页名、以及图像的客户机数据名的装置。
13.根据权利要求8所述的系统,其中,用于针对每一图像插入一个客户机数据名的装置还包括用于用客户机数据名取代图像资源定位器的装置。
14.根据权利要求13所述的系统,其中,在动态服务器页中的HTML<img>元素中给出图像资源定位器,并且用于用客户机数据名取代图像资源定位器的装置包括用于用含有客户机数据名的标示元素取代<img>元素的装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/682,394 US8156248B2 (en) | 2003-10-09 | 2003-10-09 | Image distribution for dynamic server pages |
US10/682,394 | 2003-10-09 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1606300A CN1606300A (zh) | 2005-04-13 |
CN1606300B true CN1606300B (zh) | 2010-12-08 |
Family
ID=34422513
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2004100562772A Active CN1606300B (zh) | 2003-10-09 | 2004-08-06 | 数据处理系统中分配图像的方法与系统 |
Country Status (2)
Country | Link |
---|---|
US (3) | US8156248B2 (zh) |
CN (1) | CN1606300B (zh) |
Families Citing this family (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004178472A (ja) * | 2002-11-29 | 2004-06-24 | Sanyo Electric Co Ltd | プログラム取得方法およびその方法を利用可能なパケット転送装置 |
US7359395B2 (en) * | 2003-06-16 | 2008-04-15 | Packeteer, Inc. | Pre-fetch communication systems and methods |
US8156248B2 (en) | 2003-10-09 | 2012-04-10 | International Business Machines Corporation | Image distribution for dynamic server pages |
US9219729B2 (en) | 2004-05-19 | 2015-12-22 | Philip Drope | Multimedia network system with content importation, content exportation, and integrated content management |
WO2006017198A2 (en) * | 2004-07-08 | 2006-02-16 | Actuality Systems, Inc. | Architecture for rendering graphics on output devices |
US10192279B1 (en) | 2007-07-11 | 2019-01-29 | Ricoh Co., Ltd. | Indexed document modification sharing with mixed media reality |
US8868555B2 (en) | 2006-07-31 | 2014-10-21 | Ricoh Co., Ltd. | Computation of a recongnizability score (quality predictor) for image retrieval |
US9171202B2 (en) | 2005-08-23 | 2015-10-27 | Ricoh Co., Ltd. | Data organization and access for mixed media document system |
US8825682B2 (en) | 2006-07-31 | 2014-09-02 | Ricoh Co., Ltd. | Architecture for mixed media reality retrieval of locations and registration of images |
US7702673B2 (en) | 2004-10-01 | 2010-04-20 | Ricoh Co., Ltd. | System and methods for creation and use of a mixed media environment |
US8176054B2 (en) | 2007-07-12 | 2012-05-08 | Ricoh Co. Ltd | Retrieving electronic documents by converting them to synthetic text |
US8856108B2 (en) | 2006-07-31 | 2014-10-07 | Ricoh Co., Ltd. | Combining results of image retrieval processes |
US8156116B2 (en) | 2006-07-31 | 2012-04-10 | Ricoh Co., Ltd | Dynamic presentation of targeted information in a mixed media reality recognition system |
US7812986B2 (en) | 2005-08-23 | 2010-10-12 | Ricoh Co. Ltd. | System and methods for use of voice mail and email in a mixed media environment |
US9530050B1 (en) | 2007-07-11 | 2016-12-27 | Ricoh Co., Ltd. | Document annotation sharing |
US8838591B2 (en) | 2005-08-23 | 2014-09-16 | Ricoh Co., Ltd. | Embedding hot spots in electronic documents |
US8965145B2 (en) | 2006-07-31 | 2015-02-24 | Ricoh Co., Ltd. | Mixed media reality recognition using multiple specialized indexes |
US8949287B2 (en) | 2005-08-23 | 2015-02-03 | Ricoh Co., Ltd. | Embedding hot spots in imaged documents |
US9373029B2 (en) | 2007-07-11 | 2016-06-21 | Ricoh Co., Ltd. | Invisible junction feature recognition for document security or annotation |
US9405751B2 (en) | 2005-08-23 | 2016-08-02 | Ricoh Co., Ltd. | Database for mixed media document system |
US9384619B2 (en) | 2006-07-31 | 2016-07-05 | Ricoh Co., Ltd. | Searching media content for objects specified using identifiers |
US20060135190A1 (en) * | 2004-12-20 | 2006-06-22 | Drouet Francois X | Dynamic remote storage system for storing software objects from pervasive devices |
CN1303520C (zh) * | 2005-04-12 | 2007-03-07 | 威盛电子股份有限公司 | 计算机多重显示的视频信号切换控制方法及系统 |
US7788577B2 (en) * | 2005-09-23 | 2010-08-31 | Google Inc. | Displaying information on a mobile device |
US7890858B1 (en) * | 2005-10-11 | 2011-02-15 | Google Inc. | Transferring, processing and displaying multiple images using single transfer request |
JP2007323544A (ja) * | 2006-06-05 | 2007-12-13 | Sony Corp | 情報処理システム、情報処理装置、および方法、並びにコンピュータ・プログラム |
US8489987B2 (en) | 2006-07-31 | 2013-07-16 | Ricoh Co., Ltd. | Monitoring and analyzing creation and usage of visual content using image and hotspot interaction |
US9020966B2 (en) | 2006-07-31 | 2015-04-28 | Ricoh Co., Ltd. | Client device for interacting with a mixed media reality recognition system |
US8201076B2 (en) | 2006-07-31 | 2012-06-12 | Ricoh Co., Ltd. | Capturing symbolic information from documents upon printing |
US9063952B2 (en) | 2006-07-31 | 2015-06-23 | Ricoh Co., Ltd. | Mixed media reality recognition with image tracking |
US9176984B2 (en) * | 2006-07-31 | 2015-11-03 | Ricoh Co., Ltd | Mixed media reality retrieval of differentially-weighted links |
KR100898454B1 (ko) * | 2006-09-27 | 2009-05-21 | 야후! 인크. | 통합 검색 서비스 시스템 및 방법 |
US20080104203A1 (en) * | 2006-10-31 | 2008-05-01 | Microsoft Corporation | Viewing Digital Information Over a Network |
KR101366803B1 (ko) * | 2007-04-16 | 2014-02-24 | 삼성전자주식회사 | Http를 이용한 통신 방법 및 장치 |
US20080301146A1 (en) * | 2007-05-31 | 2008-12-04 | Research In Motion Limited | System and method for efficient dynamic and connectivity aware web page rendering |
CN102375846A (zh) * | 2010-08-20 | 2012-03-14 | 上海弘视通信技术有限公司 | 事后报警图片的搜索方法 |
US9058331B2 (en) | 2011-07-27 | 2015-06-16 | Ricoh Co., Ltd. | Generating a conversation in a social network based on visual search results |
US9473668B2 (en) * | 2011-11-01 | 2016-10-18 | Siemens Industry, Inc. | Distributed storage and processing of mail image data |
CN102970522B (zh) * | 2012-12-12 | 2016-09-07 | 四川省电力公司信息通信公司 | 一种利用客户端访问浏览前端摄像机回传视频图像的方法 |
US9390076B2 (en) | 2013-06-06 | 2016-07-12 | Microsoft Technology Licensing, Llc | Multi-part and single response image protocol |
US10116726B2 (en) * | 2013-07-09 | 2018-10-30 | Usablenet Inc. | Methods for bundling images and devices thereof |
US20150149888A1 (en) * | 2013-11-27 | 2015-05-28 | Moboom Ltd. | Systems and methods for executing aspects of a document |
US20180095604A1 (en) * | 2016-09-30 | 2018-04-05 | Microsoft Technology Licensing, Llc | Rendering components based on screen size |
CN107169135B (zh) * | 2017-06-12 | 2021-03-19 | 阿里巴巴(中国)有限公司 | 图像处理方法、装置和电子设备 |
CN110148024B (zh) * | 2019-05-21 | 2023-01-24 | 北京字节跳动网络技术有限公司 | 一种用于提供评论输入模式的方法与装置 |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5784610A (en) * | 1994-11-21 | 1998-07-21 | International Business Machines Corporation | Check image distribution and processing system and method |
US5796952A (en) * | 1997-03-21 | 1998-08-18 | Dot Com Development, Inc. | Method and apparatus for tracking client interaction with a network resource and creating client profiles and resource database |
US6202061B1 (en) | 1997-10-24 | 2001-03-13 | Pictra, Inc. | Methods and apparatuses for creating a collection of media |
US6901400B2 (en) | 1998-07-28 | 2005-05-31 | Northrop Grumman Corporation | Method and apparatus for retrieving and converting remotely stored non-standard graphic images and storing the converted images in a database |
US6438597B1 (en) * | 1998-08-17 | 2002-08-20 | Hewlett-Packard Company | Method and system for managing accesses to a data service system that supports persistent connections |
US6363418B1 (en) | 1998-10-16 | 2002-03-26 | Softbook Press, Inc. | On-line image caching control for efficient image display |
DE69932147T2 (de) * | 1999-02-17 | 2007-06-21 | Sony Deutschland Gmbh | Kommunikationseinheit und Kommunikationsverfahren mit Profilverwaltung |
US6650831B1 (en) * | 1999-10-15 | 2003-11-18 | James Thompson | Method of providing access to photographic images over a computer network |
US6591295B1 (en) * | 1999-11-05 | 2003-07-08 | Oracle International Corp. | Methods and apparatus for using multimedia data stored in a relational database in web applications |
US7103357B2 (en) | 1999-11-05 | 2006-09-05 | Lightsurf Technologies, Inc. | Media spooler system and methodology providing efficient transmission of media content from wireless devices |
US20020047856A1 (en) | 2000-02-07 | 2002-04-25 | Baker Ronald K. | Web based stacked images |
US6859909B1 (en) * | 2000-03-07 | 2005-02-22 | Microsoft Corporation | System and method for annotating web-based documents |
US6854018B1 (en) * | 2000-03-20 | 2005-02-08 | Nec Corporation | System and method for intelligent web content fetch and delivery of any whole and partial undelivered objects in ascending order of object size |
US7082476B1 (en) * | 2000-05-24 | 2006-07-25 | Cisco Technology, Inc. | System and method of optimizing retrieval of network resources by identifying and substituting embedded symbolic host name references with network addresses in accordance with substitution policies |
US7054508B2 (en) * | 2000-08-03 | 2006-05-30 | Canon Kabushiki Kaisha | Data editing apparatus and method |
CA2422780A1 (en) | 2000-08-17 | 2002-02-21 | Innotive Corporation | System and method for displaying large images with reduced capacity buffer, file format conversion, user interface with zooming and panning, and broadcast of different images |
US6961731B2 (en) * | 2000-11-15 | 2005-11-01 | Kooltorch, L.L.C. | Apparatus and method for organizing and/or presenting data |
US7493315B2 (en) * | 2000-11-15 | 2009-02-17 | Kooltorch, L.L.C. | Apparatus and methods for organizing and/or presenting data |
US6823360B2 (en) | 2000-12-18 | 2004-11-23 | International Business Machines Corp. | Cofetching in a command cache |
US20020089549A1 (en) | 2001-01-09 | 2002-07-11 | Munro James A. | Image having a hierarchical structure |
GB2377518B (en) * | 2001-02-12 | 2003-10-22 | Altio Ltd | Client software enabling a client to run a network based application |
US7171443B2 (en) * | 2001-04-04 | 2007-01-30 | Prodigy Communications, Lp | Method, system, and software for transmission of information |
US7421443B2 (en) | 2003-01-29 | 2008-09-02 | Microsoft Corporation | Filestream data storage attribute |
US7369164B2 (en) | 2003-04-11 | 2008-05-06 | Eastman Kodak Company | Using favorite digital images to organize and identify electronic albums |
US20040250205A1 (en) | 2003-05-23 | 2004-12-09 | Conning James K. | On-line photo album with customizable pages |
US20050028079A1 (en) | 2003-07-31 | 2005-02-03 | International Business Machines Corporation | Image distribution in data processing systems |
US8156248B2 (en) * | 2003-10-09 | 2012-04-10 | International Business Machines Corporation | Image distribution for dynamic server pages |
-
2003
- 2003-10-09 US US10/682,394 patent/US8156248B2/en active Active
-
2004
- 2004-08-06 CN CN2004100562772A patent/CN1606300B/zh active Active
-
2012
- 2012-02-13 US US13/372,200 patent/US8769114B2/en not_active Expired - Fee Related
-
2014
- 2014-05-28 US US14/289,280 patent/US9420069B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US20050080871A1 (en) | 2005-04-14 |
CN1606300A (zh) | 2005-04-13 |
US8156248B2 (en) | 2012-04-10 |
US20140310338A1 (en) | 2014-10-16 |
US9420069B2 (en) | 2016-08-16 |
US8769114B2 (en) | 2014-07-01 |
US20120143909A1 (en) | 2012-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1606300B (zh) | 数据处理系统中分配图像的方法与系统 | |
CA2610208C (en) | Learning facts from semi-structured text | |
US6658476B1 (en) | Client-server protocol support list for standard request-response protocols | |
US6523062B1 (en) | Facilitating memory constrained client devices by employing deck reduction techniques | |
US7712027B2 (en) | Method for document page delivery to a mobile communication device | |
US7475341B2 (en) | Converting the format of a portion of an electronic document | |
JP5520856B2 (ja) | 携帯用計算デバイスへの無線通信媒体を介するコンテンツ送達のためのシステムおよび方法 | |
US7606840B2 (en) | Version control in a distributed computing environment | |
CN1170230C (zh) | 内容转换系统以及自动样式表选择方法 | |
US7219350B2 (en) | Dynamic server page meta-engines with data sharing for dynamic content and non-JSP segments rendered through other engines | |
US20020032775A1 (en) | System and method for transmitting and retrieving data via a distributed persistence framework | |
US20060004780A1 (en) | Scheme for constructing database for user system from structured documents using tags | |
US20120023181A1 (en) | Method for viewing document information on a mobile communication device | |
US20040177159A1 (en) | Systems for uploading and automatically processing computer files | |
US7562286B2 (en) | Apparatus, system, method and computer program product for document management | |
KR101104039B1 (ko) | 파일 전송 장치 및 방법, 및 파일 수신 장치 및 방법 | |
US20010002471A1 (en) | System and program for processing special characters used in dynamic documents | |
US7085807B2 (en) | System and method for providing links to available services over a local network by a thin portal service configured to access imaging data stored in a personal imaging repository | |
US8559764B2 (en) | Editing an image representation of a text | |
CN100504862C (zh) | 查看移动通信设备的文件信息的方法 | |
de Carvalho Moura et al. | A survey on metadata for describing and retrieving Internet resources | |
US20020184305A1 (en) | System and method for printing from a web application | |
US20050028079A1 (en) | Image distribution in data processing systems | |
CN106959975A (zh) | 一种转码资源缓存处理方法、装置及设备 | |
US7792855B2 (en) | Efficient storage of XML in a directory |
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 |