WO2001063481A2 - System and method for dynamically publishing xml-compliant documents - Google Patents

System and method for dynamically publishing xml-compliant documents Download PDF

Info

Publication number
WO2001063481A2
WO2001063481A2 PCT/US2001/004676 US0104676W WO0163481A2 WO 2001063481 A2 WO2001063481 A2 WO 2001063481A2 US 0104676 W US0104676 W US 0104676W WO 0163481 A2 WO0163481 A2 WO 0163481A2
Authority
WO
WIPO (PCT)
Prior art keywords
document
client
cached
content
stylesheet
Prior art date
Application number
PCT/US2001/004676
Other languages
French (fr)
Other versions
WO2001063481A3 (en
Inventor
Alan F. Mccartney
Matthew S. Funk
Julien Mercay
Herve Marmy
Original Assignee
Sun Microsystems, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sun Microsystems, Inc. filed Critical Sun Microsystems, Inc.
Priority to EP01909207A priority Critical patent/EP1290580A2/en
Priority to AU2001236987A priority patent/AU2001236987A1/en
Publication of WO2001063481A2 publication Critical patent/WO2001063481A2/en
Publication of WO2001063481A3 publication Critical patent/WO2001063481A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • G06F16/986Document structures and storage, e.g. HTML extensions

Definitions

  • the invention relates generally to dynamically publishing extensible Markup Language (XML) compliant documents for different clients, such as web browsers More specifically, this invention relates to dynamically publishing XML-compliant documents using an extensible Stylesheet Language (XSL) stylesheet that is dynamically selected by the system based on the capabilities of the client requesting the information BACKGROUND OF THE INVENTION
  • XML extensible Markup Language
  • XSL extensible Stylesheet Language
  • Web browsers or browsers, are commonly used to retrieve information from the World Wide Web (“WWW”)
  • WWW World Wide Web
  • a browser is a software application used to locate and display Web pages
  • Popular browsers include Netscape Navigator, Microsoft Internet Explorer, and HotJavaTM HotJava is a trademark or registered trademark of Sun Microsystems, Inc , in the United States and other countries
  • web browsers are software applications that use a Hypertext Transfer Protocol (HTTP) link to communicate graphics and text with network-connected web server software
  • a client connecting to a network, such as the Internet, over a T-1 connection may be able to receive information at a rate of 1.544 Mbits per second, while a client connecting to the same network over a high-speed dial-up connection is limited to a transfer rate of 56 Kilobits per second.
  • client capabilities For purposes of this application, the browser type, browser version, available data transfer rate, display capabilities, and terminal device specifications are referred to collectively as client capabilities.
  • a web site developer is responsible for determining various web site parameters. For example, the web site developer must determine which functions to include in a web page, which implicitly determines which browsers may effectively use the web page. If a web site developer creates a web site optimized for clients with extensive client capabilities, then clients with minimal client capabilities will not be able to access the content. On the other hand, if the developer creates a web site optimized for clients with minimal client capabilities, many of the powerful and/or entertaining functions available to clients with extensive client capabilities are not used.
  • the web site developer may create a plurality of web pages to present the same content, each optimized for different client capabilities. These pages can be served based on information received about the client capabilities of a requesting client.
  • maintaining a plurality of different web pages that present the same content may be time consuming.
  • creating a plurality of web pages that are optimized for different, constantly evolving client capabilities can be difficult.
  • a system dynamically generates web pages using XML content documents and XSL stylesheets that are optimized for a client's capabilities.
  • an XML- compliant document is dynamically published when a system in accordance with the present invention receives a request for a document from a client.
  • the system determines a set of client capabilities and selects an XSL stylesheet based on the set of client capabilities. Additionally, the system selects an XML content document based on the requested document.
  • the system then merges the selected XML content document and the selected XSL stylesheet to dynamically publish an XML-compliant document.
  • a client capability matrix is created.
  • the matrix distinguishes between clients based on one or more parameters, such as browser type, browser version, available data transfer rate, display capabilities, and terminal device specifications.
  • a plurality of XSL stylesheets are created. Each type of client is associated with one XSL stylesheet, but one XSL stylesheet may be associated with one or more type of client.
  • the system determines the client capabilities and selects an associated XSL stylesheet. This selected XSL stylesheet is then merged with an XML content document that is associated with the requested document. The merged document is then transmitted to the client as an XML-compliant document, such as an XHTML document.
  • the system may allow XSL stylesheets and XML compliant documents to be created and maintained independently.
  • the system may include administrative accounts and author accounts.
  • the administrator accounts may allow a user to create, delete and modify XSL stylesheets and author accounts. Additionally, the administrator accounts may allow a user to associate a stylesheet with a type of client.
  • the author accounts may allow a user to create, delete and modify XML compliant documents through a graphical user interface (GUI), such as an XHTML form. A form may be transmitted by the system in response to a valid author log-in.
  • GUI graphical user interface
  • FIG. 1 is schematic diagram of a network in accordance with the present invention
  • FIG. 2 is a schematic diagram of the formation of XHTML documents in accordance with the prior art
  • FIG. 3 is a schematic diagram of the formation of XHTML documents in accordance with the present invention
  • FIG. 4 is a high level flow chart of an XSL mapping function
  • FIG. 5 is a high-level flow chart of dynamically publishing a document
  • FIG. 6 is a detailed flow chart of dynamically publishing a document.
  • FIG. 7 is a graphical user interface for an author client.
  • FIG. 1 is schematic diagram of a network in accordance with the present invention.
  • a system 100 is provided for transmitting optimized documents across a network 105 to a plurality of clients 101-104 having different capabilities.
  • network 105 comprises the Internet.
  • a web server 106 receives HTTP requests from clients 101-104 and, in response to these requests, retrieves content from content database 108.
  • Web server 106 determines which one of a plurality of XSL stylesheets to use based on at least one client capability. After retrieving the content and the XSL stylesheets, web server 106 merges the content and XSL stylesheet into one or more documents, such as one or more XHTML documents, that may be transmitted to one or more of the plurality of clients 101-104.
  • FIG. 2 is a schematic diagram of the formation of XHTML document
  • XML document 201 is a content document.
  • XHTML is an XML compliant markup language that is similar to HTML and readable by HTML browsers.
  • XML document 201 like an HTML document, uses tags to contain information about the information, or meta- information. However, unlike an HTML document, XML document 201 does not use tags to control the presentation of information on a client output device. XML document 201 uses tags only to indicate the type of information that is contained between the tags.
  • XSL stylesheet 202 provides the presentation information that XML document 201 does not provide.
  • Publishing server 203 merges XML document 201 and XSL document 202 to produce XHTML document 204.
  • XHTML document 204 integrates the presentation information provided by XSL document 202 and the content information provided by XML document 201.
  • FIG. 3 is a schematic diagram of the formation of XHTML documents in accordance with the present invention.
  • Client 301 submits a request to publishing server 302.
  • Publishing server 302 may be collocated with web server 106.
  • publishing server software may reside on the same physical server as the web server software. As depicted in FIG. 1 , the request may be submitted across a network such as the Internet.
  • the request includes information relating to at least one client capability.
  • the request may include information relating to the type of browser type and browser version that a client is using to render the requested content.
  • the client capability information may indicate whether the client has additional plug-ins and/or programs, such as multimedia plug-in Macromedia Flash and document exchange application Adobe Acrobat.
  • This client capability information may be provided in a packet header or a packet body of a TCP packet transmitted across the Internet, or stored as a cookie on the client device, for example.
  • client categories may be established for handheld devices, dial-up connected computers, and high-speed networked computers. Other categories may be established using administrator 107.
  • various client capabilities may be communicated to the client individually instead of or in addition to being communicated as part of a client category.
  • the following capabilities may be communicated to publishing server 302: a processor speed of the client's processor; a supported language capability that identifies the objects, methods and properties that the client can use; a comprehended language capability that identifies in which language a user wants to receive the content; an amount of bandwidth available to the client; and physical parameter capability identifying a screen size, a screen resolution capability, and a screen color capability.
  • Some or all of this information may be maintained on an Internet service provider or application service provider server (not shown) that serves as an intermediary between client 301 and publishing server 302.
  • a profile server as disclosed in U.S.
  • publishing server 302 selects one of the plurality of XSL stylesheets 320-322.
  • publishing server 302 may select an XSL stylesheet 320 that is optimized for iBrowser Plus clients.
  • Stylesheet 320 may include only small graphics, no dropdown menus, no audio content, but allow secure communications in accordance with the browser's capabilities.
  • XSL stylesheet 321 may be an Internet Explorer 4.0 and above browser, meaning that it can support ActiveX controls, Cascading Stylesheet (CSS) positioning, data binding, and all features supported by 3.0 browsers.
  • XSL stylesheet 322 may be a primitive stylesheet that efficiently presents information to a robot or search engine. Other stylesheets may be used to accommodate as many different client capabilities as an administrator determines is appropriate for the system.
  • XML documents 310-312 may be retrieved from a content database 108 or from another data store.
  • This content may be static, such as a bus schedule, or generated, such as a personalized bus schedule. Additionally, the content may be a combination of static and generated content, such as a personalized bus schedule (generated) and a disclaimer that the bus schedules are only accurate to within 5 minutes (static).
  • Generated content may be generated using conventional programming techniques for generating content, such as Java Script Applets.
  • publishing server 302 processes the XML and XSL into an output that can be delivered to and rendered by the client.
  • the output is XHTML 1.0, however it is anticipated that any XML-compliant output may be used.
  • FIG. 4 is a high-level flow chart of an XSL mapping function.
  • This mapping function may be implemented using administrator 107 of FIG. 1 .
  • the XSL mapping function may use a client capability table.
  • the client capability table is created.
  • An administrator may use administrator 107 to create a record for each client capability set to which a stylesheet is matched.
  • a separate record may be created for iBrowser, iBrowser Plus, all Mozilla versions, Scooter, Internet Explorer4.0, Internet Explorer 5.0, and all Navigator versions.
  • one or more XSL stylesheets may be created.
  • a separate XSL stylesheet is created for each client capability set that will access information from the system.
  • an XSL stylesheet is preferably created that optimizes output for handheld devices.
  • a default XSL stylesheet is created that is at least viewable for all possible client capability sets, even if the XSL stylesheet is not optimized.
  • a generic XSL stylesheet for outputting requested information as a text file may be created.
  • each record is mapped to one XSL stylesheet.
  • each record can only be mapped to one stylesheet, but two or more records may be mapped to the same XSL stylesheet. For example, if an administrator has not created an XSL stylesheet that optimizes Internet Explorer 5.0, the 5.0 record may be mapped to a 4.0 record until a new XSL stylesheet is developed.
  • FIG. 5 is a high level flow chart showing steps involved in dynamically publishing a document.
  • the dynamic publishing process starts at step 501. For example, a user may select a hyperlink.
  • the client submits a request to the system, such as by transmitting an HTTP request across network 105.
  • a stylesheet selector determines a set of client capabilities and selects an XSL stylesheet based on the set of client capabilities.
  • a content agent selects an XML content document based on the requested document at step 504.
  • an XSL processor then merges the selected XML content document and the selected XSL stylesheet.
  • a publishing server then publishes an XML compliant document, such as an XHTML document, at step 506.
  • the client renders the XML compliant document.
  • the dynamic publish process terminates at step 508.
  • One embodiment of this process is described in greater detail below in relation to FIG. 6.
  • FIG. 6 is a detailed flow chart of dynamically publishing a document.
  • This flow chart includes a caching analysis that is performed by a preferred embodiment of the invention. Because there may be an extensive number of XSL stylesheets and an extensive number of XML documents, a cache may be used to expedite transmission of recently requested information.
  • This cache may be maintained on web server 106, content database 108 (both shown in FIG. 1 ), publishing server 302 (FIG. 3), or other data store.
  • the size of the cache may be established via administrator 107 (FIG. 1 ) or a client (not shown).
  • the dynamic publishing process starts at step 601 .
  • a user clicking on an icon, hyperlink, or other control on a web page may initiate the process.
  • the client sends a request to the system.
  • the system determines whether the request is proper at step 603. For example, the system may determine whether the requested information exists on the system, whether the client has access to the requested information, or other determine whether other criteria has been satisfied. If the request is not proper, an error message is transmitted to the user at step 604 and the dynamic publish process is terminated at step 613.
  • the system determines whether the XSL and XML documents that correspond to the request currently reside in cache.
  • the XSL sheet is selected based on at least one client capability communicated with the request.
  • the XML document may be a static document, a generated document, or a hybrid document as described above.
  • the system may establish whether a corresponding XHTML document is retained in cache that was generated based on the corresponding XSL and XML documents.
  • step 605 determines that XSL stylesheet "A” and XML document “F" correspond to the requested information
  • the system may determine whether the cache contains a corresponding XHTML document that was generated from the merging of XSL stylesheet "A” and XML document "F.”
  • step 607 the system determines whether the corresponding XSL stylesheet exists in cache. Using the above example, if an XHTML document does not exist in cache that was generated from the merging of XSL stylesheet "A" and XML document "F,” the system may then determine whether XSL stylesheet "A" exists in cache. If the corresponding XSL stylesheet is in cache, the cached copy is used and the system proceeds to step 609. If the corresponding XSL stylesheet is not in cache, the XSL stylesheet is retrieved from an associated data store and the system proceeds to step 609.
  • a retrieved XSL stylesheet is maintained in the cache and may cause one or more cached XSL stylesheets to be expunged from the cache.
  • the system determines whether the corresponding XML document exists in cache. Using the above example, if an XHTML document does not exist in cache that was generated from the merging of XSL stylesheet "A" and XML document "F,” the system may then determine whether XML document "F" exists in cache. If the corresponding XML document is in cache, the cached copy is used and the system proceeds to step 61 1 . If the corresponding XML document is not in cache, the XML document is retrieved from an associated data store and the system proceeds to step 61 1 . A retrieved XML document is maintained in the cache and may cause one or more cached XML documents to be expunged from the cache. Step 609 may be performed prior to or during step 607 without departing from the present invention.
  • FIG. 7 is an example of a graphical user interface (GUI) for providing content to a content database 108 (shown in FIG. 1 ) by an author client.
  • GUI 700 graphical user interface
  • GUI 700 is presented to an author client 104 (shown in FIG. 1 ).
  • Labels 701 -703 may identify the type of content that is to be entered in the associated text boxes 704-707.
  • Labels 701 -703 may be XML data type names. If the XML data type name is not sufficiently informative, another label may be used. Regardless of whether labels 701-703 are XML data type names, each of the associated data types is mapped to an XML data type.
  • the content of associated text boxes 704-707 is transmitted to the content database 108 along with the tags of the associated XML data type.
  • the text in text box 704 is submitted to the web server as " ⁇ TITLE>XML Dynamic Publishing System ⁇ /TITLE>.”
  • content providers submit XML-compliant content to a content database 108 via a browser.
  • the labels, number of associated boxes, and associated XML data type for each of the associated boxes are determined by the administrator or other entity that creates the GUIs.
  • An author may select between a plurality of different GUIs based on the type of content the author intends to provide. Similarly, an author may update content within the author's authorization scheme in accordance with the present invention.
  • the cache is checked to determine whether either an XML document or an XHTML document based on the XML document are maintained therein. If either the updated XML document or an XHTML document based on the XML document are in cache, the document is updated and remains in cache or is deleted from cache without updating.

Abstract

A system dynamically generates web pages that are optimized for a client's capabilities. In one embodiment, a client capability matrix is created. The matrix distinguishes between clients based on one or more parameters, such as browser type, browser version, available data transfer rate, display capabilities, and terminal device specifications. Additionally, a plurality of XSL stylesheets are created. Each type of client is associated with one XSL stylesheet, but one XSL stylesheet may be associated with one or more type of client. When a client requests a document from the system, the system determines the client capabilities and selects an associated XSL stylesheet. This selected stylesheet is then merged with an XML content document that is associated with the requested document. The merged document is then transmitted to the client as an XML compliant document, such as an XHTML document.

Description

SYSTEM AND METHOD FOR DYNAMICALLY PUBLISHING XML-COMPLIANT DOCUMENTS
FIELD OF THE INVENTION
The invention relates generally to dynamically publishing extensible Markup Language (XML) compliant documents for different clients, such as web browsers More specifically, this invention relates to dynamically publishing XML-compliant documents using an extensible Stylesheet Language (XSL) stylesheet that is dynamically selected by the system based on the capabilities of the client requesting the information BACKGROUND OF THE INVENTION
Web browsers, or browsers, are commonly used to retrieve information from the World Wide Web ("WWW") A browser is a software application used to locate and display Web pages Popular browsers include Netscape Navigator, Microsoft Internet Explorer, and HotJava™ HotJava is a trademark or registered trademark of Sun Microsystems, Inc , in the United States and other countries Generally, web browsers are software applications that use a Hypertext Transfer Protocol (HTTP) link to communicate graphics and text with network-connected web server software Some variation exists in functionality between various browser products Furthermore, there are different versions of each of these browsers and browsers are designed for different operating systems Additionally, there are plug-ins that can be added to a browser, which cause further differentiation between the functions performed by different browsers
In addition to different types and versions of software on a device, there are different performance characteristics for the devices themselves For example, palm-sized devices, cellular phones, copy and fax machines, and household appliances, referred to collectively as network appliances, are now able to receive information via the Internet The functionality available to these network appliances is limited by many factors including processing capability, resolution, color depth and screen size Additionally, the browsers available for many network appliances, such as portable devices, do not support commonly used web features, such as JavaScript™ scripts. JavaScipt is a trademark or registered trademark of Sun Microsystems, Inc., in the United States and other countries Another constraint on the system is the data transfer rate available to a requesting device, referred to hereinafter as a client. A client connecting to a network, such as the Internet, over a T-1 connection may be able to receive information at a rate of 1.544 Mbits per second, while a client connecting to the same network over a high-speed dial-up connection is limited to a transfer rate of 56 Kilobits per second. For purposes of this application, the browser type, browser version, available data transfer rate, display capabilities, and terminal device specifications are referred to collectively as client capabilities.
Currently, a web site developer is responsible for determining various web site parameters. For example, the web site developer must determine which functions to include in a web page, which implicitly determines which browsers may effectively use the web page. If a web site developer creates a web site optimized for clients with extensive client capabilities, then clients with minimal client capabilities will not be able to access the content. On the other hand, if the developer creates a web site optimized for clients with minimal client capabilities, many of the powerful and/or entertaining functions available to clients with extensive client capabilities are not used.
To optimize the web site for clients having different client capabilities, the web site developer may create a plurality of web pages to present the same content, each optimized for different client capabilities. These pages can be served based on information received about the client capabilities of a requesting client. However, maintaining a plurality of different web pages that present the same content may be time consuming. Furthermore, creating a plurality of web pages that are optimized for different, constantly evolving client capabilities can be difficult. These problems are compounded when a web site developer does not know how to optimize pages for clients having different client capabilities. These and other drawbacks exist with other systems.
SUMMARY OF THE INVENTION
According to one embodiment of the invention, a system dynamically generates web pages using XML content documents and XSL stylesheets that are optimized for a client's capabilities. In one embodiment, an XML- compliant document is dynamically published when a system in accordance with the present invention receives a request for a document from a client. The system determines a set of client capabilities and selects an XSL stylesheet based on the set of client capabilities. Additionally, the system selects an XML content document based on the requested document. The system then merges the selected XML content document and the selected XSL stylesheet to dynamically publish an XML-compliant document.
In one embodiment, a client capability matrix is created. The matrix distinguishes between clients based on one or more parameters, such as browser type, browser version, available data transfer rate, display capabilities, and terminal device specifications. Additionally, a plurality of XSL stylesheets are created. Each type of client is associated with one XSL stylesheet, but one XSL stylesheet may be associated with one or more type of client. When a client requests a document from the system, the system determines the client capabilities and selects an associated XSL stylesheet. This selected XSL stylesheet is then merged with an XML content document that is associated with the requested document. The merged document is then transmitted to the client as an XML-compliant document, such as an XHTML document.
According to another embodiment, the system may allow XSL stylesheets and XML compliant documents to be created and maintained independently. In a preferred embodiment, the system may include administrative accounts and author accounts. The administrator accounts may allow a user to create, delete and modify XSL stylesheets and author accounts. Additionally, the administrator accounts may allow a user to associate a stylesheet with a type of client. The author accounts may allow a user to create, delete and modify XML compliant documents through a graphical user interface (GUI), such as an XHTML form. A form may be transmitted by the system in response to a valid author log-in. Other features and advantages of the invention will be apparent to one of ordinary skill in the art upon reviewing the detailed description of the invention.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is schematic diagram of a network in accordance with the present invention;
FIG. 2 is a schematic diagram of the formation of XHTML documents in accordance with the prior art;
FIG. 3 is a schematic diagram of the formation of XHTML documents in accordance with the present invention; FIG. 4 is a high level flow chart of an XSL mapping function;
FIG. 5 is a high-level flow chart of dynamically publishing a document;
FIG. 6 is a detailed flow chart of dynamically publishing a document; and
FIG. 7 is a graphical user interface for an author client.
DETAILED DESCRIPTION FIG. 1 is schematic diagram of a network in accordance with the present invention. According to one embodiment of the invention, a system 100 is provided for transmitting optimized documents across a network 105 to a plurality of clients 101-104 having different capabilities. In a preferred embodiment, network 105 comprises the Internet. A web server 106 receives HTTP requests from clients 101-104 and, in response to these requests, retrieves content from content database 108. Web server 106 determines which one of a plurality of XSL stylesheets to use based on at least one client capability. After retrieving the content and the XSL stylesheets, web server 106 merges the content and XSL stylesheet into one or more documents, such as one or more XHTML documents, that may be transmitted to one or more of the plurality of clients 101-104.
Administrator 107 is used to establish and update the XSL stylesheets that are mapped to the various client capabilities. Additionally, administrator 107 is used to establish and update what content is to be retrieved based on the received request. Administrator 107 may also be used to control web server 106 and content database 108 in other ways as explained in greater detail below. FIG. 2 is a schematic diagram of the formation of XHTML document
204 in accordance with the prior art. XML document 201 is a content document. XHTML is an XML compliant markup language that is similar to HTML and readable by HTML browsers. XML document 201 , like an HTML document, uses tags to contain information about the information, or meta- information. However, unlike an HTML document, XML document 201 does not use tags to control the presentation of information on a client output device. XML document 201 uses tags only to indicate the type of information that is contained between the tags.
XSL stylesheet 202 provides the presentation information that XML document 201 does not provide. Publishing server 203 merges XML document 201 and XSL document 202 to produce XHTML document 204. XHTML document 204 integrates the presentation information provided by XSL document 202 and the content information provided by XML document 201. FIG. 3 is a schematic diagram of the formation of XHTML documents in accordance with the present invention. Client 301 submits a request to publishing server 302. Publishing server 302 may be collocated with web server 106. Additionally, publishing server software may reside on the same physical server as the web server software. As depicted in FIG. 1 , the request may be submitted across a network such as the Internet. In a preferred embodiment, the request includes information relating to at least one client capability. For example, the request may include information relating to the type of browser type and browser version that a client is using to render the requested content. Additionally, the client capability information may indicate whether the client has additional plug-ins and/or programs, such as multimedia plug-in Macromedia Flash and document exchange application Adobe Acrobat. This client capability information may be provided in a packet header or a packet body of a TCP packet transmitted across the Internet, or stored as a cookie on the client device, for example.
In addition to distinguishing based on browser type, browser version, and client plug-ins, other parameters may be used to indicate client capabilities. For example, different client categories may be established for handheld devices, dial-up connected computers, and high-speed networked computers. Other categories may be established using administrator 107.
Furthermore, various client capabilities may be communicated to the client individually instead of or in addition to being communicated as part of a client category. For example, the following capabilities may be communicated to publishing server 302: a processor speed of the client's processor; a supported language capability that identifies the objects, methods and properties that the client can use; a comprehended language capability that identifies in which language a user wants to receive the content; an amount of bandwidth available to the client; and physical parameter capability identifying a screen size, a screen resolution capability, and a screen color capability. Some or all of this information may be maintained on an Internet service provider or application service provider server (not shown) that serves as an intermediary between client 301 and publishing server 302. In one embodiment, a profile server as disclosed in U.S. Patent Application 09/314,375 entitled EXTERNAL DATA STORE LINK FOR A PROFILE SERVER, filed May 19, 1999, serves as an intermediary. Based on the at least one client capability received, publishing server 302 selects one of the plurality of XSL stylesheets 320-322. For example, based on the fact that the client is using an iBrowser Plus client, publishing server 302 may select an XSL stylesheet 320 that is optimized for iBrowser Plus clients. Stylesheet 320 may include only small graphics, no dropdown menus, no audio content, but allow secure communications in accordance with the browser's capabilities. XSL stylesheet 321 may be an Internet Explorer 4.0 and above browser, meaning that it can support ActiveX controls, Cascading Stylesheet (CSS) positioning, data binding, and all features supported by 3.0 browsers. XSL stylesheet 322 may be a primitive stylesheet that efficiently presents information to a robot or search engine. Other stylesheets may be used to accommodate as many different client capabilities as an administrator determines is appropriate for the system.
Once a stylesheet has been selected, the content is retrieved in the form of XML documents 310-312. XML documents 310-312 may be retrieved from a content database 108 or from another data store. This content may be static, such as a bus schedule, or generated, such as a personalized bus schedule. Additionally, the content may be a combination of static and generated content, such as a personalized bus schedule (generated) and a disclaimer that the bus schedules are only accurate to within 5 minutes (static). Generated content may be generated using conventional programming techniques for generating content, such as Java Script Applets.
Once both the requested XML document and the requested XSL stylesheet have been detected and retrieved, publishing server 302 processes the XML and XSL into an output that can be delivered to and rendered by the client. In one embodiment, the output is XHTML 1.0, however it is anticipated that any XML-compliant output may be used.
FIG. 4 is a high-level flow chart of an XSL mapping function. This mapping function may be implemented using administrator 107 of FIG. 1 . In one embodiment, the XSL mapping function may use a client capability table. At step 401 , the client capability table is created. An administrator may use administrator 107 to create a record for each client capability set to which a stylesheet is matched. For example, a separate record may be created for iBrowser, iBrowser Plus, all Mozilla versions, Scooter, Internet Explorer4.0, Internet Explorer 5.0, and all Navigator versions. At step 402, one or more XSL stylesheets may be created. In a preferred embodiment, a separate XSL stylesheet is created for each client capability set that will access information from the system. For example, if a system is intended to support handheld devices, an XSL stylesheet is preferably created that optimizes output for handheld devices. Preferably, a default XSL stylesheet is created that is at least viewable for all possible client capability sets, even if the XSL stylesheet is not optimized. For example, if an XSL stylesheet optimized for handheld devices is not developed, a generic XSL stylesheet for outputting requested information as a text file may be created. At step 403, each record is mapped to one XSL stylesheet. In a preferred embodiment, each record can only be mapped to one stylesheet, but two or more records may be mapped to the same XSL stylesheet. For example, if an administrator has not created an XSL stylesheet that optimizes Internet Explorer 5.0, the 5.0 record may be mapped to a 4.0 record until a new XSL stylesheet is developed.
FIG. 5 is a high level flow chart showing steps involved in dynamically publishing a document. The dynamic publishing process starts at step 501. For example, a user may select a hyperlink. At step 502, the client submits a request to the system, such as by transmitting an HTTP request across network 105. At step 503, a stylesheet selector determines a set of client capabilities and selects an XSL stylesheet based on the set of client capabilities. A content agent selects an XML content document based on the requested document at step 504. At step 505, an XSL processor then merges the selected XML content document and the selected XSL stylesheet. A publishing server then publishes an XML compliant document, such as an XHTML document, at step 506. At step 507, the client renders the XML compliant document. The dynamic publish process terminates at step 508. One embodiment of this process is described in greater detail below in relation to FIG. 6.
FIG. 6 is a detailed flow chart of dynamically publishing a document. This flow chart includes a caching analysis that is performed by a preferred embodiment of the invention. Because there may be an extensive number of XSL stylesheets and an extensive number of XML documents, a cache may be used to expedite transmission of recently requested information. This cache may be maintained on web server 106, content database 108 (both shown in FIG. 1 ), publishing server 302 (FIG. 3), or other data store. The size of the cache may be established via administrator 107 (FIG. 1 ) or a client (not shown).
The dynamic publishing process starts at step 601 . For example, a user clicking on an icon, hyperlink, or other control on a web page may initiate the process. At step 602, the client sends a request to the system. The system determines whether the request is proper at step 603. For example, the system may determine whether the requested information exists on the system, whether the client has access to the requested information, or other determine whether other criteria has been satisfied. If the request is not proper, an error message is transmitted to the user at step 604 and the dynamic publish process is terminated at step 613.
At step 605, the system determines whether the XSL and XML documents that correspond to the request currently reside in cache. As explained above, the XSL sheet is selected based on at least one client capability communicated with the request. The XML document may be a static document, a generated document, or a hybrid document as described above. At step 606, the system may establish whether a corresponding XHTML document is retained in cache that was generated based on the corresponding XSL and XML documents. For example, if step 605 determines that XSL stylesheet "A" and XML document "F" correspond to the requested information, the system may determine whether the cache contains a corresponding XHTML document that was generated from the merging of XSL stylesheet "A" and XML document "F."
If a corresponding XHTML document exists in cache, the system proceeds to step 612. If there is no corresponding XHTML document currently in cache, the system proceeds to step 607. At step 607, the system determines whether the corresponding XSL stylesheet exists in cache. Using the above example, if an XHTML document does not exist in cache that was generated from the merging of XSL stylesheet "A" and XML document "F," the system may then determine whether XSL stylesheet "A" exists in cache. If the corresponding XSL stylesheet is in cache, the cached copy is used and the system proceeds to step 609. If the corresponding XSL stylesheet is not in cache, the XSL stylesheet is retrieved from an associated data store and the system proceeds to step 609. A retrieved XSL stylesheet is maintained in the cache and may cause one or more cached XSL stylesheets to be expunged from the cache. At step 609, the system determines whether the corresponding XML document exists in cache. Using the above example, if an XHTML document does not exist in cache that was generated from the merging of XSL stylesheet "A" and XML document "F," the system may then determine whether XML document "F" exists in cache. If the corresponding XML document is in cache, the cached copy is used and the system proceeds to step 61 1 . If the corresponding XML document is not in cache, the XML document is retrieved from an associated data store and the system proceeds to step 61 1 . A retrieved XML document is maintained in the cache and may cause one or more cached XML documents to be expunged from the cache. Step 609 may be performed prior to or during step 607 without departing from the present invention.
FIG. 7 is an example of a graphical user interface (GUI) for providing content to a content database 108 (shown in FIG. 1 ) by an author client. Upon authentication, GUI 700 is presented to an author client 104 (shown in FIG. 1 ). Labels 701 -703 may identify the type of content that is to be entered in the associated text boxes 704-707. Labels 701 -703 may be XML data type names. If the XML data type name is not sufficiently informative, another label may be used. Regardless of whether labels 701-703 are XML data type names, each of the associated data types is mapped to an XML data type. Accordingly, when submit button 708 is selected, the content of associated text boxes 704-707 is transmitted to the content database 108 along with the tags of the associated XML data type. For example, when submit button 708 is selected in FIG. 7, the text in text box 704 is submitted to the web server as "<TITLE>XML Dynamic Publishing System</TITLE>." In this way, content providers submit XML-compliant content to a content database 108 via a browser. The labels, number of associated boxes, and associated XML data type for each of the associated boxes are determined by the administrator or other entity that creates the GUIs.
An author may select between a plurality of different GUIs based on the type of content the author intends to provide. Similarly, an author may update content within the author's authorization scheme in accordance with the present invention. In a preferred embodiment, any time that a document is updated, the cache is checked to determine whether either an XML document or an XHTML document based on the XML document are maintained therein. If either the updated XML document or an XHTML document based on the XML document are in cache, the document is updated and remains in cache or is deleted from cache without updating.
Other embodiments of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. The specification and examples should be considered exemplary only. The scope of the invention is only limited by the claims appended hereto.

Claims

CLAIMS What is claimed is:
1 . A method for dynamically publishing a document in response to a request comprising the steps: receiving a request for at least one element of content; identifying at least one client capability attribute associated with the request; selecting an XSL stylesheet based on the at least one client capability; selecting a requested XML document based on the request; merging the XML document and the selected XSL stylesheet to generate the document; and transmitting the document.
2. The method of claim 1 , wherein the request for at least one element of content comprises a request for a web page.
3. The method of claim 1 , wherein the request for at least one element of content comprises a request for a dynamically generated web page.
4. The method of claim 1 comprising the further step: caching the requested optimized document as a cached document, the selected XSL stylesheet as a cached XSL stylesheet and the requested XML document as a cached XML document.
5. The method of claim 4 comprising the further step: selectively transmitting the cached document when a subsequently selected XSL stylesheet corresponds to the cached XSL stylesheet and a subsequently requested XML document corresponds to the cached XML document.
6. The method of claim 5 comprising the further step: selectively selecting the cached XSL stylesheet if the cached XSL stylesheet corresponds to the subsequently selected XSL stylesheet.
7. The method of claim 5 comprising the further step: selectively selecting the cached XML document if the cached XML document corresponds to the subsequently requested XML document.
8. The method of claim 7 comprising the further step: selectively selecting the cached XSL stylesheet if the cached XSL stylesheet corresponds to the subsequently selected XSL stylesheet.
9. The method of claim 1 , wherein the document is an XHTML document.
10. A publishing system for dynamically publishing a document comprising: a styles sheet chooser that selects a stylesheet based on at least one capability associated with a requesting client; a content agent that provides at least one element of content to a processor based on a received request; a processor that accepts and merges the provided stylesheet and the provided content into the document; and a transmission agent for transmitting the document to the requesting client.
1 1 . The publishing system of claim 10, wherein the content agent selects a predetermined set of content from a database.
12. The publishing (claims 13-20 as well) system of claim 10 wherein the content agent dynamically generates sets of content from a database.
13. The system of claim 10 further comprising: a cache, wherein the cache maintains a copy of previously transmitted documents as cached documents, previously selected stylesheets as cached stylesheets, and previously requested content as cached content.
14. The system of claim 13, wherein the cache selectively provides a cached document to the transmission agent if the cached document corresponds to the at least one capability associated with the client and the at least one element of content.
15. The system of claim 10, wherein the at least one capability associated with a requesting client is whether the client is a network appliance, a dial-up connected device or a high-speed networked device.
16. The system of claim 10, wherein the at least one capability associated with a requesting client is a browser type and a browser version.
17. The system of claim 10, wherein the at least one capability associated with a requesting client is a supported language capability that identifies the objects, methods and properties that the client can use.
18. The system of claim 10, wherein the at least one capability associated with a requesting client is an amount of bandwidth available to the client.
19. The system of claim 10, wherein the at least one capability associated with a requesting client is a set of physical properties associated with an output device associated with the client.
20. The system of claim 19, wherein the physical properties associated with the output device comprise a screen size, a screen resolution capability, and a screen color capability.
PCT/US2001/004676 2000-02-24 2001-02-12 System and method for dynamically publishing xml-compliant documents WO2001063481A2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP01909207A EP1290580A2 (en) 2000-02-24 2001-02-12 System and method for dynamically publishing xml-compliant documents
AU2001236987A AU2001236987A1 (en) 2000-02-24 2001-02-12 System and method for dynamically publishing xml-compliant documents

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US18481200P 2000-02-24 2000-02-24
US60/184,812 2000-02-24
US09/772,038 2001-01-29
US09/772,038 US20020010716A1 (en) 2000-02-24 2001-01-29 System and method for dynamically publishing XML-compliant documents

Publications (2)

Publication Number Publication Date
WO2001063481A2 true WO2001063481A2 (en) 2001-08-30
WO2001063481A3 WO2001063481A3 (en) 2002-12-27

Family

ID=26880491

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2001/004676 WO2001063481A2 (en) 2000-02-24 2001-02-12 System and method for dynamically publishing xml-compliant documents

Country Status (4)

Country Link
US (1) US20020010716A1 (en)
EP (1) EP1290580A2 (en)
AU (1) AU2001236987A1 (en)
WO (1) WO2001063481A2 (en)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002075604A2 (en) * 2001-03-15 2002-09-26 Kodak Polychrome Graphics Web page color accuracy using color-customized style sheets
WO2003032151A2 (en) * 2001-10-04 2003-04-17 Koninklijke Philips Electronics N.V. Method of styling a user interface and device with adaptive user interface
FR2831688A1 (en) * 2001-10-30 2003-05-02 Canon Kk Multimedia digital data request processing method for television, involves considering request being processed similar to earlier request, when two requests have only certain request descriptors in common
GB2382173A (en) * 2001-11-20 2003-05-21 Hewlett Packard Co Document markup for mobile internet devices
GB2382174A (en) * 2001-11-20 2003-05-21 Hewlett Packard Co Data formatting in a platform independent manner
EP1318493A1 (en) * 2001-12-07 2003-06-11 Niam-Tms B.V. System and method for generating an interactive course via Internet
WO2004090748A2 (en) * 2003-04-08 2004-10-21 Abb Research Ltd. Method and system for producing web pages adapted to a client character
EP1500015A2 (en) * 2002-04-30 2005-01-26 Sap Ag Customer interaction reporting
EP2040179A1 (en) * 2007-09-17 2009-03-25 Xerox Corporation Optimization method for storing and delivering minimum set of cascading style sheet classes
WO2009130108A1 (en) 2008-04-22 2009-10-29 Wincor Nixdorf International Gmbh Method and system for preparation of accounting data
US7685513B2 (en) 2006-04-18 2010-03-23 Xerox Corporation Optimization of storage and delivery of markup language files

Families Citing this family (99)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7203491B2 (en) 2001-04-18 2007-04-10 Space Data Corporation Unmanned lighter-than-air safe termination and recovery methods
US7356390B2 (en) 1999-06-29 2008-04-08 Space Data Corporation Systems and applications of lighter-than-air (LTA) platforms
US7003571B1 (en) * 2000-01-31 2006-02-21 Telecommunication Systems Corporation Of Maryland System and method for re-directing requests from browsers for communication over non-IP based networks
US8090856B1 (en) 2000-01-31 2012-01-03 Telecommunication Systems, Inc. Intelligent messaging network server interconnection
TWI221383B (en) * 2000-03-30 2004-09-21 Sony Corp Profit feedback device, method and system thereof, contents providing device, method and system and program storage media
US7134073B1 (en) * 2000-06-15 2006-11-07 International Business Machines Corporation Apparatus and method for enabling composite style sheet application to multi-part electronic documents
US6948117B2 (en) * 2000-10-04 2005-09-20 Microsoft Corporation Methods and systems for generating a viewable document using view descriptors and generic view stylesheets
US8176296B2 (en) 2000-10-26 2012-05-08 Cypress Semiconductor Corporation Programmable microcontroller architecture
US8160864B1 (en) 2000-10-26 2012-04-17 Cypress Semiconductor Corporation In-circuit emulator and pod synchronized boot
US7765095B1 (en) 2000-10-26 2010-07-27 Cypress Semiconductor Corporation Conditional branching in an in-circuit emulation system
US6724220B1 (en) 2000-10-26 2004-04-20 Cyress Semiconductor Corporation Programmable microcontroller architecture (mixed analog/digital)
US8103496B1 (en) 2000-10-26 2012-01-24 Cypress Semicondutor Corporation Breakpoint control in an in-circuit emulation system
US8149048B1 (en) 2000-10-26 2012-04-03 Cypress Semiconductor Corporation Apparatus and method for programmable power management in a programmable analog circuit block
US7483983B1 (en) 2000-11-13 2009-01-27 Telecommunication Systems, Inc. Method and system for deploying content to wireless devices
JP4824266B2 (en) * 2001-02-05 2011-11-30 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ How to transfer objects that conform to the format
CN1309272C (en) * 2001-02-22 2007-04-04 塞尔蒂克技术有限公司 Internet session initiation on personal cellular telecommunications device, and customization protocol therefor
US7971138B2 (en) * 2001-03-23 2011-06-28 Oracle International Corporation Common design for web pages through employment of master specifications
US9632503B2 (en) 2001-04-18 2017-04-25 Space Data Corporation Systems and applications of lighter-than-air (LTA) platforms
US9643706B2 (en) 2001-04-18 2017-05-09 Space Data Corporation Systems and applications of lighter-than-air (LTA) platforms
US9908608B2 (en) 2001-04-18 2018-03-06 Space Data Corporation Systems and applications of lighter-than-air (LTA) platforms
FI113302B (en) * 2001-05-25 2004-03-31 Metso Automation Oy Using snapshots in an industrial automation process control system
US20020184340A1 (en) * 2001-05-31 2002-12-05 Alok Srivastava XML aware logical caching system
US20040205539A1 (en) * 2001-09-07 2004-10-14 Mak Mingchi Stephen Method and apparatus for iterative merging of documents
JP3937778B2 (en) * 2001-09-14 2007-06-27 キヤノン株式会社 Information processing apparatus and method
US7191233B2 (en) * 2001-09-17 2007-03-13 Telecommunication Systems, Inc. System for automated, mid-session, user-directed, device-to-device session transfer system
US7406674B1 (en) 2001-10-24 2008-07-29 Cypress Semiconductor Corporation Method and apparatus for generating microcontroller configuration information
US8078970B1 (en) 2001-11-09 2011-12-13 Cypress Semiconductor Corporation Graphical user interface with user-selectable list-box
US8042093B1 (en) 2001-11-15 2011-10-18 Cypress Semiconductor Corporation System providing automatic source code generation for personalization and parameterization of user modules
US7844437B1 (en) 2001-11-19 2010-11-30 Cypress Semiconductor Corporation System and method for performing next placements and pruning of disallowed placements for programming an integrated circuit
US8069405B1 (en) 2001-11-19 2011-11-29 Cypress Semiconductor Corporation User interface for efficiently browsing an electronic document using data-driven tabs
US7770113B1 (en) * 2001-11-19 2010-08-03 Cypress Semiconductor Corporation System and method for dynamically generating a configuration datasheet
US6971004B1 (en) 2001-11-19 2005-11-29 Cypress Semiconductor Corp. System and method of dynamically reconfiguring a programmable integrated circuit
US7774190B1 (en) 2001-11-19 2010-08-10 Cypress Semiconductor Corporation Sleep and stall in an in-circuit emulation system
US8103497B1 (en) 2002-03-28 2012-01-24 Cypress Semiconductor Corporation External interface for event architecture
US7308608B1 (en) 2002-05-01 2007-12-11 Cypress Semiconductor Corporation Reconfigurable testing system and method
DE10219894A1 (en) * 2002-05-03 2003-11-20 Siemens Ag Method for creating a representation of at least one multimedia message, associated radio communication network and subsystem
US7761845B1 (en) 2002-09-09 2010-07-20 Cypress Semiconductor Corporation Method for parameterizing a user module
US7130893B2 (en) 2003-05-19 2006-10-31 International Business Machines Corporation System and method for representing MFS control blocks in XML for MFS-based IMS applications
US7421701B2 (en) 2002-09-16 2008-09-02 International Business Machines Corporation System for facilitating transactions between thin-clients and message format service (MFS)-based information management system (IMS) applications
US20040054969A1 (en) * 2002-09-16 2004-03-18 International Business Machines Corporation System and method for generating web services definitions for MFS-based IMS applications
US20040103370A1 (en) * 2002-11-27 2004-05-27 International Business Machines Corporation System and method for rendering MFS XML documents for display
US7426535B2 (en) * 2002-10-08 2008-09-16 Telecommunication Systems, Inc. Coordination of data received from one or more sources over one or more channels into a single context
EP1416397A1 (en) * 2002-10-29 2004-05-06 Sap Ag A method for selecting a renderer based on the browser type of the client, using scores
FR2846769B1 (en) * 2002-11-06 2005-04-15 France Telecom METHOD AND SYSTEM FOR DYNAMIC IMAGE ENABLING
JP2004185541A (en) * 2002-12-06 2004-07-02 Minolta Co Ltd Device management device
US7873706B2 (en) * 2003-03-19 2011-01-18 Cgi Communications, Inc. System and method for seamlessly providing video content to client systems over a network
US7331018B2 (en) * 2003-07-10 2008-02-12 Computer Associates Think, Inc. System and method for customizing a data display using a presentation profile
US20050066273A1 (en) * 2003-09-23 2005-03-24 Charles Zacky Document creation using a template
US7370280B2 (en) * 2003-09-23 2008-05-06 International Business Machines Corporation Apparatus, system, and method for defining a web services interface for MFS-based IMS applications
DE102004003416A1 (en) * 2004-01-23 2005-08-11 Robert Bosch Gmbh Method for transmitting and executing applications on terminals
US7418508B2 (en) 2004-01-26 2008-08-26 International Machines Corporation System and method to facilitate XML enabled IMS transactions between a remote client and an IMS application program
US7617459B2 (en) 2004-01-28 2009-11-10 International Business Machines Corporation Apparatus, system, and method for automatically generating a web interface for an MFS-based IMS application
US7295049B1 (en) 2004-03-25 2007-11-13 Cypress Semiconductor Corporation Method and circuit for rapid alignment of signals
US20070043837A1 (en) * 2004-04-07 2007-02-22 Abb Research Ltd Method and system for producing web pages matched to client properties
US8069436B2 (en) 2004-08-13 2011-11-29 Cypress Semiconductor Corporation Providing hardware independence to automate code generation of processing device firmware
US8286125B2 (en) 2004-08-13 2012-10-09 Cypress Semiconductor Corporation Model for a hardware device-independent method of defining embedded firmware for programmable systems
US7555532B2 (en) * 2004-09-23 2009-06-30 Orbital Data Corporation Advanced content and data distribution techniques
US7707498B2 (en) * 2004-09-30 2010-04-27 Microsoft Corporation Specific type content manager in an electronic document
US7730394B2 (en) * 2005-01-06 2010-06-01 Microsoft Corporation Data binding in a word-processing application
US7617234B2 (en) * 2005-01-06 2009-11-10 Microsoft Corporation XML schema for binding data
US7945590B2 (en) * 2005-01-06 2011-05-17 Microsoft Corporation Programmability for binding data
US7343364B2 (en) * 2005-02-04 2008-03-11 Efunds Corporation Rules-based system architecture and systems using the same
US7332976B1 (en) 2005-02-04 2008-02-19 Cypress Semiconductor Corporation Poly-phase frequency synthesis oscillator
US7668873B2 (en) 2005-02-25 2010-02-23 Microsoft Corporation Data store for software application documents
US7752224B2 (en) 2005-02-25 2010-07-06 Microsoft Corporation Programmability for XML data store for documents
US7400183B1 (en) 2005-05-05 2008-07-15 Cypress Semiconductor Corporation Voltage controlled oscillator delay cell and method
US8089461B2 (en) * 2005-06-23 2012-01-03 Cypress Semiconductor Corporation Touch wake for electronic devices
US7953696B2 (en) * 2005-09-09 2011-05-31 Microsoft Corporation Real-time synchronization of XML data between applications
US8085067B1 (en) 2005-12-21 2011-12-27 Cypress Semiconductor Corporation Differential-to-single ended signal converter circuit and method
US7886222B2 (en) * 2006-02-09 2011-02-08 Sap Ag Converter-tool for a non-programmer user, to generate a web based application
US8067948B2 (en) 2006-03-27 2011-11-29 Cypress Semiconductor Corporation Input/output multiplexer bus
US8645816B1 (en) * 2006-08-08 2014-02-04 Emc Corporation Customizing user documentation
US20080085032A1 (en) * 2006-10-06 2008-04-10 Cerosaletti Cathleen D Supplying digital images from a collection
US20080201667A1 (en) * 2006-11-28 2008-08-21 Drayer Phillip M Interactive computer graphical user interface method and system
US20080215966A1 (en) * 2007-03-01 2008-09-04 Microsoft Corporation Adaptive server-based layout of web documents
US8040266B2 (en) 2007-04-17 2011-10-18 Cypress Semiconductor Corporation Programmable sigma-delta analog-to-digital converter
US8516025B2 (en) * 2007-04-17 2013-08-20 Cypress Semiconductor Corporation Clock driven dynamic datapath chaining
US8130025B2 (en) * 2007-04-17 2012-03-06 Cypress Semiconductor Corporation Numerical band gap
US9564902B2 (en) 2007-04-17 2017-02-07 Cypress Semiconductor Corporation Dynamically configurable and re-configurable data path
US8026739B2 (en) 2007-04-17 2011-09-27 Cypress Semiconductor Corporation System level interconnect with programmable switching
US7737724B2 (en) 2007-04-17 2010-06-15 Cypress Semiconductor Corporation Universal digital block interconnection and channel routing
US8266575B1 (en) 2007-04-25 2012-09-11 Cypress Semiconductor Corporation Systems and methods for dynamically reconfiguring a programmable system on a chip
US8065653B1 (en) 2007-04-25 2011-11-22 Cypress Semiconductor Corporation Configuration of programmable IC design elements
US9720805B1 (en) 2007-04-25 2017-08-01 Cypress Semiconductor Corporation System and method for controlling a target device
US7895598B2 (en) * 2007-06-15 2011-02-22 Microsoft Corporation Page and device-optimized cascading style sheets
US8049569B1 (en) 2007-09-05 2011-11-01 Cypress Semiconductor Corporation Circuit and method for improving the accuracy of a crystal-less oscillator having dual-frequency modes
US20090089667A1 (en) * 2007-09-28 2009-04-02 At&T Knowledge Ventures, Lp Application Content Format Based on Display Resolution
US20090119415A1 (en) * 2007-11-02 2009-05-07 Chiang Chenhuei J System and method for representing mfs control blocks in xml for mfs-based ims applications
US8683325B1 (en) * 2008-11-13 2014-03-25 Emc Corporation Indexed approach for delivering multiple views of an XML document from a single XSLT file
US9448964B2 (en) 2009-05-04 2016-09-20 Cypress Semiconductor Corporation Autonomous control in a programmable system
US10402472B2 (en) * 2014-07-30 2019-09-03 Bluebeam, Inc. Optimized rendering of shared documents on client devices with document raster representations
BR112017013836B1 (en) 2014-12-24 2022-05-24 Space Data Corporation Detachment of a platform by pending collision
MX2017008552A (en) 2014-12-24 2018-03-15 Space Data Corp Techniques for intelligent balloon/airship launch and recovery window location.
US10059421B2 (en) 2014-12-30 2018-08-28 Space Data Corporation Multifunctional balloon membrane
US10423711B2 (en) * 2015-10-23 2019-09-24 Oracle International Corporation Generating style sheets during runtime
RU2640635C2 (en) * 2015-10-30 2018-01-10 Общество С Ограниченной Ответственностью "Яндекс" Method, system and server for transmitting personalized message to user electronic device
US11238220B1 (en) * 2015-11-13 2022-02-01 Wells Fargo Bank, N.A. Dynamic user interface framework
US10534587B1 (en) 2017-12-21 2020-01-14 Intuit Inc. Cross-platform, cross-application styling and theming infrastructure
US11157259B1 (en) 2017-12-22 2021-10-26 Intuit Inc. Semantic and standard user interface (UI) interoperability in dynamically generated cross-platform applications

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6226675B1 (en) * 1998-10-16 2001-05-01 Commerce One, Inc. Participant server which process documents for commerce in trading partner networks
US6605120B1 (en) * 1998-12-10 2003-08-12 International Business Machines Corporation Filter definition for distribution mechanism for filtering, formatting and reuse of web based content
US6463447B2 (en) * 1998-12-16 2002-10-08 Rstar Corporation Optimizing bandwidth consumption for document distribution over a multicast enabled wide area network
US6589291B1 (en) * 1999-04-08 2003-07-08 International Business Machines Corporation Dynamically determining the most appropriate location for style sheet application
US6313835B1 (en) * 1999-04-09 2001-11-06 Zapa Digital Arts Ltd. Simplified on-line preparation of dynamic web sites
US6826727B1 (en) * 1999-11-24 2004-11-30 Bitstream Inc. Apparatus, methods, programming for automatically laying out documents

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JOHNSON D: "CONVERTING PC GUIS FOR NON PC DEVICES" CIRCUIT CELLUR INK, VERNON, CT, US, vol. 91, February 1998 (1998-02), pages 40-42,44-45, XP000852859 ISSN: 0896-8985 *
MICHAEL FLOYD: "Building an XML Workbench" NEW ARCHITECT MAGAZINE, [Online] May 1999 (1999-05), XP002208575 Retrieved from the Internet: <URL:http://www.webtechniques.com/archives /1999/05/beyo/> [retrieved on 2002-08-02] *

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002075604A3 (en) * 2001-03-15 2003-11-27 Kodak Polychrome Graphics Co Web page color accuracy using color-customized style sheets
WO2002075604A2 (en) * 2001-03-15 2002-09-26 Kodak Polychrome Graphics Web page color accuracy using color-customized style sheets
WO2003032151A2 (en) * 2001-10-04 2003-04-17 Koninklijke Philips Electronics N.V. Method of styling a user interface and device with adaptive user interface
WO2003032151A3 (en) * 2001-10-04 2004-01-15 Koninkl Philips Electronics Nv Method of styling a user interface and device with adaptive user interface
FR2831688A1 (en) * 2001-10-30 2003-05-02 Canon Kk Multimedia digital data request processing method for television, involves considering request being processed similar to earlier request, when two requests have only certain request descriptors in common
US7647549B2 (en) 2001-10-30 2010-01-12 Canon Kabushiki Kaisha Method and device for processing a request for obtaining multimedia data
GB2382173A (en) * 2001-11-20 2003-05-21 Hewlett Packard Co Document markup for mobile internet devices
GB2382174A (en) * 2001-11-20 2003-05-21 Hewlett Packard Co Data formatting in a platform independent manner
EP1318493A1 (en) * 2001-12-07 2003-06-11 Niam-Tms B.V. System and method for generating an interactive course via Internet
EP1500015A2 (en) * 2002-04-30 2005-01-26 Sap Ag Customer interaction reporting
WO2004090748A2 (en) * 2003-04-08 2004-10-21 Abb Research Ltd. Method and system for producing web pages adapted to a client character
WO2004090748A3 (en) * 2003-04-08 2005-02-24 Abb Research Ltd Method and system for producing web pages adapted to a client character
DE10315953A1 (en) * 2003-04-08 2004-10-28 Abb Research Ltd. Method and system for generating web pages adapted to client properties
US7685513B2 (en) 2006-04-18 2010-03-23 Xerox Corporation Optimization of storage and delivery of markup language files
EP2040179A1 (en) * 2007-09-17 2009-03-25 Xerox Corporation Optimization method for storing and delivering minimum set of cascading style sheet classes
WO2009130108A1 (en) 2008-04-22 2009-10-29 Wincor Nixdorf International Gmbh Method and system for preparation of accounting data
US20120150702A1 (en) * 2008-04-22 2012-06-14 Wincor Nixdorf International Gmbh Method and system for preparation of accounting data

Also Published As

Publication number Publication date
EP1290580A2 (en) 2003-03-12
US20020010716A1 (en) 2002-01-24
WO2001063481A3 (en) 2002-12-27
AU2001236987A1 (en) 2001-09-03

Similar Documents

Publication Publication Date Title
US20020010716A1 (en) System and method for dynamically publishing XML-compliant documents
US6647531B2 (en) Customization of network documents
US9158845B1 (en) Reducing latencies in web page rendering
US5978828A (en) URL bookmark update notification of page content or location changes
AU772598B2 (en) Selecting a cache
US6571295B1 (en) Web page annotating and processing
US7085817B1 (en) Method and system for modifying requests for remote resources
US8352854B2 (en) Dynamic page generator
US6065048A (en) Method and system to create, transmit, receive and process information, including an address to further information
US20010016845A1 (en) Method and apparatus for receiving information in response to a request from an email client
US20020188631A1 (en) Method, system, and software for transmission of information
US20020065910A1 (en) Method, system, and program for providing access time information when displaying network addresses
US20040221006A1 (en) Method and apparatus for marking of web page portions for revisiting the marked portions
WO2002069196A2 (en) System for logging on to servers through a portal computer
WO2001020510A1 (en) Method and apparatus for restructuring of personalized data for transmission from a data network to connected and portable network appliances
EP1811747A1 (en) Method and apparatus for storing and restoring state information of remote user interface
US20010047397A1 (en) Method and system for using pervasive device to access webpages
JPH1063596A (en) Method and device for acquiring and displaying network server information
US6408296B1 (en) Computer implemented method and apparatus for enhancing access to a file
EP1360816B1 (en) Network conduit for providing access to data services
US20020138621A1 (en) System and method for displaying remotely stored content on a web page
US7424522B2 (en) Method of processing data from a submission interface
US20040162873A1 (en) Method and apparatus of wrapping an existing service
US7047483B1 (en) Computer implemented method and apparatus for providing a logical point of access to one or more files
US20030046259A1 (en) Method and system for performing in-line text expansion

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
WWE Wipo information: entry into national phase

Ref document number: 2001909207

Country of ref document: EP

AK Designated states

Kind code of ref document: A3

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A3

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

WWP Wipo information: published in national office

Ref document number: 2001909207

Country of ref document: EP

WWW Wipo information: withdrawn in national office

Ref document number: 2001909207

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: JP