WO2007032912A1 - Initial server-side content rendering for client-script web pages - Google Patents
Initial server-side content rendering for client-script web pages Download PDFInfo
- Publication number
- WO2007032912A1 WO2007032912A1 PCT/US2006/033875 US2006033875W WO2007032912A1 WO 2007032912 A1 WO2007032912 A1 WO 2007032912A1 US 2006033875 W US2006033875 W US 2006033875W WO 2007032912 A1 WO2007032912 A1 WO 2007032912A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- script
- dom
- client
- web page
- server
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
-
- 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/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
Definitions
- BACKGROUND In a distributed computing system containing multiple entities such as a client component (“client”) and a server component (“server”), typically the server provides the client the layout of a Web page, and the client runs a script to produce the initial content for the Web page.
- the content of the Web page can be dynamic: often, after the initial content of the Web page is rendered by the client-side script, the content of the Web page may be subsequently re-rendered by the client-side script in response to user actions and input from other entities in the distributed computing system.
- FIGURE 1 illustrates an exemplary distributed computing system 100 including at least one client 102 and at least one server 104.
- the server 104 may send the client 102 an HTML file such as HTML A (106) and a script 108.
- HTML A (106) contains layout information and static content of the Web page.
- the execution of the script 108 generates initial content of the requested Web page.
- the HTML A (106) and the script 108 may be integrated in a same file.
- the client 102 upon receiving the HTML A (106) and the script 108, the client 102 executes the script 108 to dynamically generate the initial content for the Web page. Often, the script 108 may need specific data from the server 104 to generate the initial content. The client 102 thus sends a request 110 for the needed data from the server 104, which then returns the requested data 112 to the client 102. Upon receiving the data 112, the script 108 executes and uses the data 112 to modify HTML A (106) to obtain HTML B (114). HTML B (114) includes both the layout and the initial content for the Web page. The content of the Web page may change later, for example, based on input provided by a user. Such a client-side content rendering mechanism presents some problems.
- search engines usually do not run scripts. Therefore, when a search engine queries the client 102 for the Web page, the search engine obtains what is offered by HTML A (106), i.e., the layout information and static content of the Web page. The search engine cannot obtain the actual content of the Web page that is important for indexing purposes.
- a Web browser on the client 102 may not have the ability to run scripts or the Web browser's ability to run scripts is disabled. As a result, the Web browser on the client 102 cannot run the script 108 to generate HTML B (114) and hence the initial content for the Web page. While specific disadvantages of existing systems have been illustrated and described in this Background Section, those skilled in the art and others will recognize that the subject matter claimed herein is not limited to any specific implementation for solving any or all of the described disadvantages.
- aspects of the invention solve the above-identified problems by simulating and executing on the server a client-side script that renders initial content of a Web page.
- the simulation creates on the server a client-side execution environment for the script generating the initial content of the Web page.
- the initial rendering of the Web page sent to a client by a server already contains the initial content that is usually generated on the client.
- One aspect of the invention includes a distributed computing system containing at least one server and at least one client.
- the server provides one or more Web pages for the client to display.
- the server uses a document object model (DOM) simulator to model a file containing the source code of a Web page.
- Such a file can be an HTML file, for example.
- the server may further include a script engine (“server-side script engine”) that simulates or that is the same as the script engine used by the client.
- the server uses the DOM simulator to provide a DOM of the layout and static content of a Web page and of scripts for the Web page.
- the server then extracts from the DOM the script that is responsible for rendering the initial content of the Web page.
- Such a script may be generated by sequentially ordering contents extracted from the DOM that exist in script tags and scripting source code in the DOM.
- the server uses the server- side script engine to execute the extracted script on the DOM. As a result of executing the script, the DOM now contains the initial content of the Web page.
- the server extracts the initial content of the Web page from the DOM. Finally, the server sends the initial content of the Web page to the client for display.
- aspects of the invention enable a server in a distributed computing system to provide initial content of a Web page, wherein the initial content is usually rendered by a client-side script. Therefore, a client can display the initial content of the Web page even if the Web browser of. the client cannot run the client-side script to generate the initial content. As a result, search engines that generally do not run scripts still can obtain the initial content of a Web page for indexing purpose.
- FIGURE 1 is a block diagram illustrating an exemplary client-side rendering of initial content of a Web page
- FIGURE 2 is a block diagram illustrating an exemplary server-side rendering of initial content of a Web page
- FIGURE 3 is a block diagram illustrating an exemplary computer system for server-side rendering of initial content of a Web page.
- Embodiments of the invention may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer including at least a processor and a memory.
- program modules include routines, programs, widgets, objects, components, data structures, and the like that perform particular tasks or implement particular abstract data types.
- Embodiments of the invention may also be practiced in a distributed computing system including multiple entities. Each of the entities has the potential of functioning as a server providing a service as well as a client receiving the service provided by a server.
- the service can be, for example, providing a Web page.
- the entities may be local to a same computer system or are linked remotely through a communications network.
- program modules may be located on local and/or remote computer storage media.
- Exemplary embodiments of the invention utilize existing server-side technology to simulate on a server a client-side execution environment for a client-side script generating the initial content of a Web page.
- a document object model (“DOM") simulator is needed to generate a DOM modeling a file containing the source code of a Web page.
- Such a file may be an HTML file, for example.
- the DOM simulates the object model of the HTML.
- the DOM can also be an XML DOM, a technology that is available on almost any server platform.
- a server-side script engine is needed that simulates or functions the same as the client-side script engine. For example, if the client uses JavaScript as its script engine, the server needs to provide a script engine that is capable of executing JavaScript files.
- the server-side script engine may be a simulation of the client-side script engine or the client-side script engine itself. Once a DOM and a proper server-side script engine are available, the server-side script engine executes the client-side script such as the script 108 illustrated in FIGURE 1 against the DOM to generate initial content for the Web page.
- FIGURE 2 illustrates an exemplary implementation of a server-side process 200 for rendering an initial page such as the HTML B (114) for a Web page, wherein the initial page has all the initial content of the Web page.
- FIGURE 2 is illustrated with reference to the distributed computing system 100 illustrated in FIGURE 1.
- the server 104 starts with a traditional initial rendering, i.e., providing HTML A (106) that contains layout information and static content of a Web page. See block 202.
- a DOM 204 simulating HTML A (106) then is generated.
- the DOM 204 may be generated by injecting HTML A (106) into a DOM parser, which can be a full HTML parser or an XML parser if HTML A (106) is compliant with XHTML standard.
- a parser is a computer program that analyzes the grammatical structure of an input with respect to a given set of formal grammar.
- a parser transforms the input into a data structure that catches the implied hierarchy of the input.
- the data structure can be, for example, a tree or even a graph.
- the data structure can be used for code generation, semantic checking, or simply to ease the further understanding of the input.
- the DOM 204 also simulates scripts 205 for the Web page, including the script 108 for generating initial content of the Web page.
- the server 104 then extracts the script 108 from the DOM 204. See block 206.
- the script 108 is also called the client script because the script 108 was designed to run by the client 102.
- the server 104 then executes the script 108 on the DOM 204. See block 208.
- the script 108 is executed in an enriched execution environment where the DOM 204 is available to the script 108 as built-in objects, accessible through the same paths as if the script 108 were on the client 102.
- the DOM 204 appears to the script 108 almost exactly as if the DOM 204 were a client-side DOM of HTML A (106).
- the script 108 may send a request 110 for the data 112 to be rendered in the Web page.
- the requested data 112 usually is stored on the server 104 that provides the initial rendering of the Web page. Therefore, the request 110 typically travels through a network that connects the client 102 and the server 106.
- the server 104 is simulating the client-side script execution environment, it would not be efficient or required to still let the data request 110 sent by the script 108 travels on the network that connects the client 102 and the server 104. Therefore, an exemplary embodiment of the invention provides a redirection mechanism that queries local data storage on the server 104 directly instead of sending the data request 110 through the network.
- the query may be performed in a manner that is transparent to the script 108.
- a client 102 uses an XmlHttpRequest object for retrieving data for a Web page.
- Exemplary embodiments of the invention may implement a different XmlHttpRequest object that directs the request 110 for the data 112 on the server 104 to the right data object on the server 104 without making a network call.
- embodiments of the invention may stub out client-side functionalities in the script 108 that are no longer applicable on the server 104. For example, functionalities of a client-side timer in the script 108 may be muffled such that the timer does not raise any event when the script 108 is executed on the server 104.
- the execution of the script 108 modifies the DOM 204.
- the DOM 204 now contains both the layout information and the initial content for the Web page; i.e., the DOM 204 now simulates the HTML B (114) illustrated in FIGURE 1.
- the server 108 then extracts the text representation of the DOM 204 and sends it to the client 102. See block 210.
- the text representation forms the HTML B (114).
- the client 102 receives an initial rendering from the server 104 — HTML B (104) — that contains the full initial content of the Web page.
- the content of the Web page may be updated later on the client-side in response to, for example, user input.
- the client 102 and the server 104 may locate on the same computer or on different computers in the distributed computing system 100.
- FIGURE 3 depicts an exemplary computer system 300 for the server 104, suitable for use in implementing aspects of the invention.
- the server 104 connects to a network 301 using a network interface 302.
- the network interface 302 includes the necessary hardware and software to allow the server 104 to communicate with other computing devices connected to the network 302 by use of one or more suitable communication protocols, such as TCP/IP protocol.
- TCP/IP protocol suitable communication protocols
- the server 104 further includes a processor 304, memory 306, and an input/output interface 308, all communicatively connected together and to the network interface 302 by a communication bus 310.
- the processor 304 is configured to operate in accordance with computer program instructions stored in a memory, such as the memory 306.
- Program instructions may also be embodied in a hardware format, such as a programmed digital signal processor.
- the memory 306 may be comprised of any type of storage facility, and may include, by way of example, RAM, ROM, and/or removable computer-readable media.
- the memory 306 may store an operating system 312 for controlling the operation of the server 104.
- the operating system 312 may be a general-purpose operating system such as a Microsoft server operating system, UNDC, or LINUX, for example.
- the server 104 builds an environment to simulate and execute a client-side script 108 that generates the initial content of a Web page.
- the simulation environment may include a DOM simulator to simulate the object model of a file, such as an HTML file, containing the source code of a Web page.
- the simulation environment may further include a server-side script engine that functions the same as the script engine used by the client 102. Therefore, as shown in FIGURE 3, the memory 306 of the server 104 additionally stores program code and data that provide a DOM simulator 314 and a server-side script engine 316.
- the DOM simulator 314 comprises computer-executable instructions that, when executed by the processor 304, simulates the object models provided by a file such as an HTML that contains the source code of a Web page.
- the server-side script engine 316 comprises computer-executable instructions that, when executed by the processor 304, simulates or behaves the same as the script engine used by the client 102.
- FIGURE 3 does not show other typical components of a computing system, such as a video display adapter, power supply, computer monitor, etc.
- a computing system such as a video display adapter, power supply, computer monitor, etc.
- those skilled in the art of computers will recognize a wide selection of commercially-available components that can be used to construct and operate a computer system such as illustrated in FIGURE 3.
Abstract
Description
Claims
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008530100A JP4878627B2 (en) | 2005-09-12 | 2006-08-29 | Initial server-side content rendering for client script web pages |
AU2006291318A AU2006291318A1 (en) | 2005-09-12 | 2006-08-29 | Initial server-side content rendering for client-script web pages |
BRPI0615677-0A BRPI0615677A2 (en) | 2005-09-12 | 2006-08-29 | server-side initial content creating client script network pages |
CN2006800333520A CN101263471B (en) | 2005-09-12 | 2006-08-29 | Initial server-side content rendering for client-script web pages |
CA002619313A CA2619313A1 (en) | 2005-09-12 | 2006-08-29 | Initial server-side content rendering for client-script web pages |
EP06813958A EP1924925A4 (en) | 2005-09-12 | 2006-08-29 | Initial server-side content rendering for client-script web pages |
NO20080676A NO20080676L (en) | 2005-09-12 | 2008-02-07 | Initial content rendering on the client script server web page |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US71629905P | 2005-09-12 | 2005-09-12 | |
US60/716,299 | 2005-09-12 | ||
US11/317,973 US7814410B2 (en) | 2005-09-12 | 2005-12-23 | Initial server-side content rendering for client-script web pages |
US11/317,973 | 2005-12-23 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2007032912A1 true WO2007032912A1 (en) | 2007-03-22 |
Family
ID=37856758
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2006/033875 WO2007032912A1 (en) | 2005-09-12 | 2006-08-29 | Initial server-side content rendering for client-script web pages |
Country Status (11)
Country | Link |
---|---|
US (1) | US7814410B2 (en) |
EP (1) | EP1924925A4 (en) |
JP (1) | JP4878627B2 (en) |
KR (1) | KR20080053293A (en) |
CN (1) | CN101263471B (en) |
AU (1) | AU2006291318A1 (en) |
BR (1) | BRPI0615677A2 (en) |
CA (1) | CA2619313A1 (en) |
NO (1) | NO20080676L (en) |
RU (1) | RU2008109251A (en) |
WO (1) | WO2007032912A1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010000137A1 (en) * | 2008-07-03 | 2010-01-07 | Pang Xin | Mobile device application framework |
WO2010101790A2 (en) * | 2009-03-04 | 2010-09-10 | Microsoft Corporation | Content rendering on a computer |
US8892883B2 (en) | 2011-05-02 | 2014-11-18 | Crytek Ip Holding Llc | Render service for remote access to applications |
Families Citing this family (91)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7047033B2 (en) | 2000-02-01 | 2006-05-16 | Infogin Ltd | Methods and apparatus for analyzing, processing and formatting network information such as web-pages |
US20060190561A1 (en) * | 2002-06-19 | 2006-08-24 | Watchfire Corporation | Method and system for obtaining script related information for website crawling |
US20060248166A1 (en) * | 2005-04-29 | 2006-11-02 | Jovan Milosevic | System and method for client side rendering of a web page |
US8078952B2 (en) * | 2005-11-28 | 2011-12-13 | Microsoft Corporation | Site redirection |
US8739027B2 (en) * | 2006-03-01 | 2014-05-27 | Infogin, Ltd. | Methods and apparatus for enabling use of web content on various types of devices |
US20070220083A1 (en) * | 2006-03-17 | 2007-09-20 | Microsoft Corporation | Estimation of initial dynamic rendering control data |
US8682712B2 (en) * | 2006-05-22 | 2014-03-25 | Google Inc. | Monitoring landing page experiments |
US7831658B2 (en) * | 2006-05-22 | 2010-11-09 | Google Inc. | Generating landing page variants |
US7844894B2 (en) * | 2006-05-22 | 2010-11-30 | Google Inc. | Starting landing page experiments |
US8443346B2 (en) * | 2007-01-18 | 2013-05-14 | Aol Inc. | Server evaluation of client-side script |
US7945849B2 (en) | 2007-03-20 | 2011-05-17 | Microsoft Corporation | Identifying appropriate client-side script references |
US8065659B1 (en) * | 2007-05-30 | 2011-11-22 | Google Inc. | Method and apparatus for executing scripts within a web browser |
US20090070663A1 (en) * | 2007-09-06 | 2009-03-12 | Microsoft Corporation | Proxy engine for custom handling of web content |
US9906549B2 (en) * | 2007-09-06 | 2018-02-27 | Microsoft Technology Licensing, Llc | Proxy engine for custom handling of web content |
US7672938B2 (en) * | 2007-10-05 | 2010-03-02 | Microsoft Corporation | Creating search enabled web pages |
US7809725B1 (en) * | 2007-10-18 | 2010-10-05 | Google Inc. | Acquiring web page experiment schema |
US8296643B1 (en) | 2007-10-18 | 2012-10-23 | Google Inc. | Running multiple web page experiments on a test page |
US8914774B1 (en) | 2007-11-15 | 2014-12-16 | Appcelerator, Inc. | System and method for tagging code to determine where the code runs |
US8954989B1 (en) | 2007-11-19 | 2015-02-10 | Appcelerator, Inc. | Flexible, event-driven JavaScript server architecture |
US10244020B1 (en) * | 2007-11-21 | 2019-03-26 | Axway Inc. | System and method for auto-generating meta-proxies |
US8260845B1 (en) | 2007-11-21 | 2012-09-04 | Appcelerator, Inc. | System and method for auto-generating JavaScript proxies and meta-proxies |
US8719451B1 (en) | 2007-11-23 | 2014-05-06 | Appcelerator, Inc. | System and method for on-the-fly, post-processing document object model manipulation |
US8566807B1 (en) | 2007-11-23 | 2013-10-22 | Appcelerator, Inc. | System and method for accessibility of document object model and JavaScript by other platforms |
US8756579B1 (en) | 2007-12-03 | 2014-06-17 | Appcelerator, Inc. | Client-side and server-side unified validation |
US8806431B1 (en) | 2007-12-03 | 2014-08-12 | Appecelerator, Inc. | Aspect oriented programming |
US8819539B1 (en) | 2007-12-03 | 2014-08-26 | Appcelerator, Inc. | On-the-fly rewriting of uniform resource locators in a web-page |
US8938491B1 (en) | 2007-12-04 | 2015-01-20 | Appcelerator, Inc. | System and method for secure binding of client calls and server functions |
US8527860B1 (en) | 2007-12-04 | 2013-09-03 | Appcelerator, Inc. | System and method for exposing the dynamic web server-side |
US8335982B1 (en) | 2007-12-05 | 2012-12-18 | Appcelerator, Inc. | System and method for binding a document object model through JavaScript callbacks |
US8285813B1 (en) | 2007-12-05 | 2012-10-09 | Appcelerator, Inc. | System and method for emulating different user agents on a server |
US8639743B1 (en) | 2007-12-05 | 2014-01-28 | Appcelerator, Inc. | System and method for on-the-fly rewriting of JavaScript |
US8527868B2 (en) | 2008-02-22 | 2013-09-03 | International Business Machines Corporation | Systems and methods for document annotation |
US7895293B1 (en) | 2008-02-25 | 2011-02-22 | Google Inc. | Web page experiments with fragmented section variations |
US20090259934A1 (en) * | 2008-04-11 | 2009-10-15 | Go Hazel Llc | System and method for rendering dynamic web pages with automatic ajax capabilities |
US8291079B1 (en) | 2008-06-04 | 2012-10-16 | Appcelerator, Inc. | System and method for developing, deploying, managing and monitoring a web application in a single environment |
US8880678B1 (en) | 2008-06-05 | 2014-11-04 | Appcelerator, Inc. | System and method for managing and monitoring a web application using multiple cloud providers |
KR20100003537A (en) * | 2008-07-01 | 2010-01-11 | 주식회사 로직플랜트 | System and method for extracting information from a mobile device by a web page that is being executed on the mobile device and control method thereof |
US7596620B1 (en) | 2008-11-04 | 2009-09-29 | Aptana, Inc. | System and method for developing, deploying, managing and monitoring a web application in a single environment |
US9026997B2 (en) * | 2008-12-16 | 2015-05-05 | Sap Ag | Systems and methods for executing object-oriented programming code invoking pre-existing objects |
US9171097B2 (en) | 2009-03-31 | 2015-10-27 | Qualcomm Incorporated | Memoizing web-browsing computation with DOM-based isomorphism |
US9311425B2 (en) * | 2009-03-31 | 2016-04-12 | Qualcomm Incorporated | Rendering a page using a previously stored DOM associated with a different page |
US10826718B2 (en) | 2009-05-19 | 2020-11-03 | Xerox Corporation | System and method for coupling a digital appliance to a monitoring service |
US10135630B2 (en) | 2009-05-19 | 2018-11-20 | Xerox Corporation | System and method for coupling a wireless device to social networking services and a mobile communication device |
US10740745B2 (en) | 2009-05-19 | 2020-08-11 | Zipit Wireless, Inc. | System and method for coupling a wireless device to social networking services and a mobile communication device |
US9471704B2 (en) * | 2009-10-06 | 2016-10-18 | Telefonaktiebolaget Lm Ericsson (Publ) | Shared script files in multi-tab browser |
US8689117B1 (en) | 2009-10-30 | 2014-04-01 | Google Inc. | Webpages with conditional content |
JP5370131B2 (en) * | 2009-12-22 | 2013-12-18 | セイコーエプソン株式会社 | Image display apparatus and control method |
US10176270B2 (en) * | 2009-12-24 | 2019-01-08 | International Business Machines Corporation | Performance of template based javascript widgets |
US8407319B1 (en) | 2010-03-24 | 2013-03-26 | Google Inc. | Event-driven module loading |
US20110238653A1 (en) * | 2010-03-25 | 2011-09-29 | Microsoft Corporation | Parsing and indexing dynamic reports |
US20110282938A1 (en) * | 2010-05-12 | 2011-11-17 | Electronics And Telecommunications Research Institute | Method of providing seamless interoperability between web browser and application in single-threaded environment and apparatus for performing the same |
US8453049B1 (en) | 2010-05-19 | 2013-05-28 | Google Inc. | Delayed code parsing for reduced startup latency |
US20110289484A1 (en) * | 2010-05-19 | 2011-11-24 | Also Energy | Method and System for Script Processing for Web-Based Applications |
WO2011160139A1 (en) | 2010-06-18 | 2011-12-22 | Sweetlabs, Inc. | Systems and methods for integration of an application runtime environment into a user computing environment |
US8706803B1 (en) * | 2010-09-24 | 2014-04-22 | Imdb.Com, Inc. | Client-side generation of preliminary version of network page |
US8839036B2 (en) * | 2010-12-30 | 2014-09-16 | Schneider Electric It Corporation | System and method for root cause analysis |
US20120192063A1 (en) * | 2011-01-20 | 2012-07-26 | Koren Ziv | On-the-fly transformation of graphical representation of content |
US9691086B1 (en) * | 2011-05-13 | 2017-06-27 | Google Inc. | Adaptive content rendering |
US20120310913A1 (en) * | 2011-05-30 | 2012-12-06 | Jaimie Sirovich | System and method to access a plurality of document results pages |
US8706860B2 (en) * | 2011-06-30 | 2014-04-22 | Amazon Technologies, Inc. | Remote browsing session management |
US8577963B2 (en) * | 2011-06-30 | 2013-11-05 | Amazon Technologies, Inc. | Remote browsing session between client browser and network based browser |
US9621406B2 (en) | 2011-06-30 | 2017-04-11 | Amazon Technologies, Inc. | Remote browsing session management |
US9195768B2 (en) | 2011-08-26 | 2015-11-24 | Amazon Technologies, Inc. | Remote browsing session management |
US10089403B1 (en) | 2011-08-31 | 2018-10-02 | Amazon Technologies, Inc. | Managing network based storage |
US8627204B2 (en) * | 2011-10-18 | 2014-01-07 | Microsoft Corporation | Custom optimization of web pages |
JP2013168129A (en) * | 2012-01-18 | 2013-08-29 | Ricoh Co Ltd | Information processing system, data providing device, electronic apparatus, information processing method, data providing method, data acquiring method, and program |
US10366401B1 (en) | 2012-06-29 | 2019-07-30 | Google Llc | Content placement optimization |
US9442687B2 (en) * | 2012-07-23 | 2016-09-13 | Korea Advanced Institute Of Science And Technology | Method and apparatus for moving web object based on intent |
US20140053056A1 (en) * | 2012-08-16 | 2014-02-20 | Qualcomm Incorporated | Pre-processing of scripts in web browsers |
US20140053064A1 (en) | 2012-08-16 | 2014-02-20 | Qualcomm Incorporated | Predicting the usage of document resources |
US9898445B2 (en) | 2012-08-16 | 2018-02-20 | Qualcomm Incorporated | Resource prefetching via sandboxed execution |
US8775925B2 (en) | 2012-08-28 | 2014-07-08 | Sweetlabs, Inc. | Systems and methods for hosted applications |
US20140068005A1 (en) * | 2012-08-31 | 2014-03-06 | Microsoft Corporation | Identification, caching, and distribution of revised files in a content delivery network |
GB2507483A (en) | 2012-10-30 | 2014-05-07 | Ibm | Hybrid server side and client side portal aggregation and rendering |
KR101480214B1 (en) * | 2013-01-18 | 2015-01-08 | 한국과학기술원 | Method and system for web screen streaming based on dom mutation event |
US9645983B1 (en) * | 2013-06-18 | 2017-05-09 | Amazon Technologies, Inc. | Modifying a document at a script processing server using a client device's state information |
US8924850B1 (en) * | 2013-11-21 | 2014-12-30 | Google Inc. | Speeding up document loading |
US20150161087A1 (en) * | 2013-12-09 | 2015-06-11 | Justin Khoo | System and method for dynamic imagery link synchronization and simulating rendering and behavior of content across a multi-client platform |
US9749440B2 (en) | 2013-12-31 | 2017-08-29 | Sweetlabs, Inc. | Systems and methods for hosted application marketplaces |
US10019247B2 (en) | 2014-05-15 | 2018-07-10 | Sweetlabs, Inc. | Systems and methods for application installation platforms |
US10089098B2 (en) | 2014-05-15 | 2018-10-02 | Sweetlabs, Inc. | Systems and methods for application installation platforms |
RU2659481C1 (en) | 2014-06-26 | 2018-07-02 | Гугл Инк. | Optimized architecture of visualization and sampling for batch processing |
JP6386089B2 (en) * | 2014-06-26 | 2018-09-05 | グーグル エルエルシー | Optimized browser rendering process |
US10545749B2 (en) * | 2014-08-20 | 2020-01-28 | Samsung Electronics Co., Ltd. | System for cloud computing using web components |
CN106933890B (en) * | 2015-12-31 | 2021-08-06 | 北京冠群信息技术股份有限公司 | Method and device for processing static page |
US20180052809A1 (en) | 2016-08-16 | 2018-02-22 | Microsoft Technology Licensing, Llc | Inferring user interaction with an iframe |
US10282402B2 (en) | 2017-01-06 | 2019-05-07 | Justin Khoo | System and method of proofing email content |
US11102316B1 (en) | 2018-03-21 | 2021-08-24 | Justin Khoo | System and method for tracking interactions in an email |
US11226727B2 (en) * | 2018-11-12 | 2022-01-18 | Citrix Systems, Inc. | Systems and methods for live tiles for SaaS |
US11816177B2 (en) * | 2021-07-21 | 2023-11-14 | Yext, Inc. | Streaming static web page generation |
US11699024B2 (en) * | 2021-09-01 | 2023-07-11 | Salesforce, Inc. | Performance perception when browser's main thread is busy |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030131048A1 (en) | 2002-01-04 | 2003-07-10 | Najork Marc A. | System and method for identifying cloaked web servers |
US6704024B2 (en) * | 2000-08-07 | 2004-03-09 | Zframe, Inc. | Visual content browsing using rasterized representations |
US20040177327A1 (en) * | 2000-02-04 | 2004-09-09 | Robert Kieffer | System and process for delivering and rendering scalable web pages |
US20050027823A1 (en) * | 2001-04-09 | 2005-02-03 | Ahad Rana | Server-based browser system |
Family Cites Families (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5761683A (en) * | 1996-02-13 | 1998-06-02 | Microtouch Systems, Inc. | Techniques for changing the behavior of a link in a hypertext document |
US6189030B1 (en) * | 1996-02-21 | 2001-02-13 | Infoseek Corporation | Method and apparatus for redirection of server external hyper-link references |
US6035119A (en) * | 1997-10-28 | 2000-03-07 | Microsoft Corporation | Method and apparatus for automatic generation of text and computer-executable code |
US6470349B1 (en) * | 1999-03-11 | 2002-10-22 | Browz, Inc. | Server-side scripting language and programming tool |
US20010047394A1 (en) * | 1999-09-10 | 2001-11-29 | Kloba David D. | System, method, and computer program product for executing scripts on mobile devices |
US6578192B1 (en) * | 1999-10-20 | 2003-06-10 | International Business Machines Corporation | Method and system for supporting dynamic document content expressed in a component-level language |
US7054952B1 (en) * | 1999-12-09 | 2006-05-30 | International Business Machines Corp. | Electronic document delivery system employing distributed document object model (DOM) based transcoding and providing interactive javascript support |
AU2582401A (en) * | 1999-12-17 | 2001-06-25 | Dorado Network Systems Corporation | Purpose-based adaptive rendering |
US7747782B2 (en) * | 2000-04-26 | 2010-06-29 | Novarra, Inc. | System and method for providing and displaying information content |
US7519902B1 (en) * | 2000-06-30 | 2009-04-14 | International Business Machines Corporation | System and method for enhanced browser-based web crawling |
US20020054090A1 (en) * | 2000-09-01 | 2002-05-09 | Silva Juliana Freire | Method and apparatus for creating and providing personalized access to web content and services from terminals having diverse capabilities |
US20020091840A1 (en) * | 2000-11-28 | 2002-07-11 | Gregory Pulier | Real-time optimization of streaming media from a plurality of media sources |
JPWO2002044907A1 (en) * | 2000-11-29 | 2004-04-02 | 株式会社フレックス・ファーム | Content provision method |
US7139814B2 (en) * | 2000-12-01 | 2006-11-21 | Intel Corporation | Dynamic content delivery to static page in non-application capable environment |
US7596791B2 (en) * | 2000-12-19 | 2009-09-29 | Emc Corporation | Methods and techniques for delivering rich Java applications over thin-wire connections with high performance and scalability |
JP4644940B2 (en) * | 2001-01-17 | 2011-03-09 | ソニー株式会社 | Billing method, script conversion system and method |
US20030037021A1 (en) * | 2001-01-17 | 2003-02-20 | Prasad Krothappalli | JavaScript in a non-JavaScript environment |
US6988100B2 (en) * | 2001-02-01 | 2006-01-17 | International Business Machines Corporation | Method and system for extending the performance of a web crawler |
JP2003141018A (en) * | 2001-11-02 | 2003-05-16 | Fujitsu Ltd | Server, relay device, information providing method and program |
DE60110744D1 (en) * | 2001-03-23 | 2005-06-16 | Sun Microsystems Inc | Client query redirection |
US7877463B2 (en) * | 2001-04-10 | 2011-01-25 | Citrix Systems, Inc. | Method and systems for providing access to dynamic content via static pages |
US20030088639A1 (en) * | 2001-04-10 | 2003-05-08 | Lentini Russell P. | Method and an apparatus for transforming content from one markup to another markup language non-intrusively using a server load balancer and a reverse proxy transcoding engine |
US20030014478A1 (en) * | 2001-06-29 | 2003-01-16 | Noble Alan C. | Dynamically distributed client-server web browser |
US7120897B2 (en) * | 2001-07-10 | 2006-10-10 | Microsoft Corporation | User control objects for providing server-side code generation from a user-defined dynamic web page content file |
US20030050931A1 (en) * | 2001-08-28 | 2003-03-13 | Gregory Harman | System, method and computer program product for page rendering utilizing transcoding |
US6941512B2 (en) * | 2001-09-10 | 2005-09-06 | Hewlett-Packard Development Company, L.P. | Dynamic web content unfolding in wireless information gateways |
US7437663B2 (en) * | 2002-01-16 | 2008-10-14 | International Business Machines Corporation | Offline dynamic web page generation |
US7496636B2 (en) * | 2002-06-19 | 2009-02-24 | International Business Machines Corporation | Method and system for resolving Universal Resource Locators (URLs) from script code |
US20030236825A1 (en) * | 2002-06-20 | 2003-12-25 | Kulkarni Suhas Sudhakar | System, method and computer readable medium for transferring and rendering a web page |
US7716322B2 (en) * | 2002-09-23 | 2010-05-11 | Alcatel-Lucent Usa Inc. | Automatic exploration and testing of dynamic Web sites |
US7299411B2 (en) * | 2002-09-27 | 2007-11-20 | Liberate Technologies | Providing a presentation engine adapted for use by a constrained resource client device |
US7269633B2 (en) * | 2002-12-06 | 2007-09-11 | International Business Machines Corporation | Method and system for playback of dynamic HTTP transactions |
WO2004055647A2 (en) | 2002-12-13 | 2004-07-01 | Applied Minds, Inc. | Meta-web |
US20040168122A1 (en) * | 2003-02-21 | 2004-08-26 | Kobipalayam Murugaiyan Senthil Nathan | System, method and computer readable medium for transferring and rendering a web page |
US20050102611A1 (en) * | 2003-11-06 | 2005-05-12 | Danny Chen | Process for creating dynamic web pages driven from the server side |
US7458019B2 (en) * | 2004-01-20 | 2008-11-25 | International Business Machines Corporation | System and method for creating and rendering client-side user interfaces via custom tags |
US7574692B2 (en) * | 2004-11-19 | 2009-08-11 | Adrian Herscu | Method for building component-software for execution in a standards-compliant programming environment |
US9116998B2 (en) * | 2005-12-14 | 2015-08-25 | At&T Intellectual Property I, L.P. | Guest browser |
-
2005
- 2005-12-23 US US11/317,973 patent/US7814410B2/en not_active Expired - Fee Related
-
2006
- 2006-08-29 AU AU2006291318A patent/AU2006291318A1/en not_active Abandoned
- 2006-08-29 JP JP2008530100A patent/JP4878627B2/en not_active Expired - Fee Related
- 2006-08-29 RU RU2008109251/09A patent/RU2008109251A/en not_active Application Discontinuation
- 2006-08-29 KR KR1020087005892A patent/KR20080053293A/en not_active IP Right Cessation
- 2006-08-29 WO PCT/US2006/033875 patent/WO2007032912A1/en active Application Filing
- 2006-08-29 CA CA002619313A patent/CA2619313A1/en not_active Withdrawn
- 2006-08-29 BR BRPI0615677-0A patent/BRPI0615677A2/en not_active Application Discontinuation
- 2006-08-29 CN CN2006800333520A patent/CN101263471B/en not_active Expired - Fee Related
- 2006-08-29 EP EP06813958A patent/EP1924925A4/en not_active Withdrawn
-
2008
- 2008-02-07 NO NO20080676A patent/NO20080676L/en unknown
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040177327A1 (en) * | 2000-02-04 | 2004-09-09 | Robert Kieffer | System and process for delivering and rendering scalable web pages |
US6704024B2 (en) * | 2000-08-07 | 2004-03-09 | Zframe, Inc. | Visual content browsing using rasterized representations |
US20050027823A1 (en) * | 2001-04-09 | 2005-02-03 | Ahad Rana | Server-based browser system |
US20030131048A1 (en) | 2002-01-04 | 2003-07-10 | Najork Marc A. | System and method for identifying cloaked web servers |
Non-Patent Citations (1)
Title |
---|
See also references of EP1924925A4 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010000137A1 (en) * | 2008-07-03 | 2010-01-07 | Pang Xin | Mobile device application framework |
CN102057654A (en) * | 2008-07-03 | 2011-05-11 | 庞鑫 | Mobile device application framework |
CN102057654B (en) * | 2008-07-03 | 2014-09-24 | 空中(中国)有限公司 | Mobile device application framework |
WO2010101790A2 (en) * | 2009-03-04 | 2010-09-10 | Microsoft Corporation | Content rendering on a computer |
WO2010101790A3 (en) * | 2009-03-04 | 2011-01-13 | Microsoft Corporation | Content rendering on a computer |
US8347208B2 (en) | 2009-03-04 | 2013-01-01 | Microsoft Corporation | Content rendering on a computer |
US8892883B2 (en) | 2011-05-02 | 2014-11-18 | Crytek Ip Holding Llc | Render service for remote access to applications |
Also Published As
Publication number | Publication date |
---|---|
CA2619313A1 (en) | 2007-03-22 |
EP1924925A4 (en) | 2010-03-31 |
BRPI0615677A2 (en) | 2011-05-24 |
JP2009508220A (en) | 2009-02-26 |
CN101263471A (en) | 2008-09-10 |
KR20080053293A (en) | 2008-06-12 |
US7814410B2 (en) | 2010-10-12 |
US20070061700A1 (en) | 2007-03-15 |
NO20080676L (en) | 2008-04-07 |
JP4878627B2 (en) | 2012-02-15 |
RU2008109251A (en) | 2009-10-10 |
EP1924925A1 (en) | 2008-05-28 |
CN101263471B (en) | 2012-07-04 |
AU2006291318A1 (en) | 2007-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7814410B2 (en) | Initial server-side content rendering for client-script web pages | |
KR100843581B1 (en) | Extending markup of a browser using a plug-in framework | |
US9081463B2 (en) | Systems and methods for run-time editing of a web page | |
US7174506B1 (en) | Method and system for producing dynamic web pages | |
US8924943B2 (en) | Browser emulator system | |
US9575939B2 (en) | Linked code generation report | |
KR101908162B1 (en) | Live browser tooling in an integrated development environment | |
US9805009B2 (en) | Method and device for cascading style sheet (CSS) selector matching | |
JP2009508220A5 (en) | ||
US7805464B2 (en) | Web viewer setup dialog and grammar for generating web addresses | |
US20080010249A1 (en) | Relevant term extraction and classification for Wiki content | |
US8924867B2 (en) | Web interface for remote platform build | |
US20100229081A1 (en) | Method for Providing a Navigation Element in an Application | |
US8745485B2 (en) | Extensible remote tag markup system and method | |
CN111258578A (en) | Method for realizing equipment template primitive | |
US20220043546A1 (en) | Selective server-side rendering of scripted web page interactivity elements | |
CN110738024A (en) | Method for converting WebAPP into API service interface | |
US20030217334A1 (en) | Physical data blending system for updating live presentation documents | |
Salama | “Down With Regression!”–Generating Test Suites for the Web | |
CN117251231B (en) | Animation resource processing method, device and system and electronic equipment | |
Armstrong | Using HTTP Handlers: Request Processing, Image Generation, and Content Management | |
Hampton | XML Publishing with AxKit | |
EP1184795A1 (en) | Obtaining information about the contents of documents | |
Staudacher et al. | Web-Interface for Natural Language Parsers | |
Alonso | Web Structure Mining IKT407 Autumn 2006 Group |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 200680033352.0 Country of ref document: CN |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
ENP | Entry into the national phase |
Ref document number: 2619313 Country of ref document: CA |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2006813958 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2006291318 Country of ref document: AU |
|
WWE | Wipo information: entry into national phase |
Ref document number: MX/a/2008/003322 Country of ref document: MX |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2008109251 Country of ref document: RU Ref document number: 2008530100 Country of ref document: JP Ref document number: 1020087005892 Country of ref document: KR |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2130/DELNP/2008 Country of ref document: IN |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2006291318 Country of ref document: AU Date of ref document: 20060829 Kind code of ref document: A |
|
ENP | Entry into the national phase |
Ref document number: PI0615677 Country of ref document: BR Kind code of ref document: A2 Effective date: 20080305 |