GB2347329A - Converting electronic documents into a format suitable for a wireless device - Google Patents

Converting electronic documents into a format suitable for a wireless device Download PDF

Info

Publication number
GB2347329A
GB2347329A GB9930699A GB9930699A GB2347329A GB 2347329 A GB2347329 A GB 2347329A GB 9930699 A GB9930699 A GB 9930699A GB 9930699 A GB9930699 A GB 9930699A GB 2347329 A GB2347329 A GB 2347329A
Authority
GB
United Kingdom
Prior art keywords
markup language
document
elements
electronic document
wireless
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
GB9930699A
Other versions
GB2347329B (en
GB9930699D0 (en
Inventor
Kenneth F Carlino
Kenneth B Hohl
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Spyglass Inc
Original Assignee
Spyglass 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 Spyglass Inc filed Critical Spyglass Inc
Publication of GB9930699D0 publication Critical patent/GB9930699D0/en
Publication of GB2347329A publication Critical patent/GB2347329A/en
Application granted granted Critical
Publication of GB2347329B publication Critical patent/GB2347329B/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/04Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25808Management of client data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72445User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality for supporting Internet browser applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Multimedia (AREA)
  • Information Transfer Between Computers (AREA)
  • Document Processing Apparatus (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Communication Control (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

Electronic documents such as web pages requested from the Internet by a wireless device 12 are converted at a gateway 14 from a first markup language such as hypertext markup language (HTML) into a second markup language such as wireless markup language (WML) from a wireless application protocol (WAP). The electronic document is converted into a format suitable for display on the wireless device based on device type and preference information supplied by the wireless device. The electronic document is divided into textual elements and non-textual elements (e.g. images) before conversion. A converted document is created from the converted elements. Three separate methods of dividing and converting the original document are described. The invention is also applicable to wireline devices.

Description

2347329 Method and System for Converting Content of Electronic Data for
Wireless Devices
A portion of the disclosure of this patent document contains material, which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent disclosure, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all copyright rights whatsoever.
This invention relates to computer networks. More specifically, it relates to a method and system for converting the content of electronic data for wireless devices.
The Internet is a world-wide network of interconnected computers. The WorldWide-Web is an information system on the Internet designed for electronic document interchange. Electronic documents on the World-WideWeb are typically stored in files that include text, hypertext, references to graphics, animation, audio, video and other electronic data. The structure of hypertext documents is defined by document markup languages such as Standard Generalized Markup Language ("SGMU), Hyper Text Markup Language ("HTML"), Compact Hyper Text Markup Language, eXtensible Markup Language ("XMU), Virtual Reality Markup Language ("VRML"), Voice extensible Markup Language, ("VoxML") and others.
As is known in the art, a hypertext document includes markup codes called "tags." Tags define the structure of a hypertext document and typically includes at least a "begin" tag name enclosed by a delin-titer and, in many instances, an "end" tag name enclosed by a delimiter. For example, the markup tag "<Hl>" signifies the beginning of a Hyper Text Markup Language first level header, and the markup tag "</H I>" signifies the end of a Hyper Text Markup Language first level header. However, the Hyper Text Markup Language image tag "<IMG... >" ends with the closing tag delimiter ">" and does not use an end tag in the format "</IMG>". Other markup languages have similar tags used to create hypertext documents.
Markup languages allow references to additional content besides text including graphics, animation, audio, video and other electronic data. For example, the Hyper Text Markup Language allows use of graphical images in a hypertext document with an image 'I<IMG>" tag. An exemplary Hyper Text Markup Language image tag <IMG SRC="logo.jpg"> allows a graphical logo image stored in a Joint Pictures Expert Group file "logo. jpg," to be displayed.
Hypertext documents from the World-Wide-Web are typically displayed for a user with a software application called a "browser" such as Internet Explorer, by Microsoft Corporation of Redmond Washington, Netscape Navigator, by Netscape Communications of Mountain View, California, and others. A browser typically parses a hypertext document and converts hypertext, including markup tags, into a visual display of text, graphics, animation, audio, video, etc., for display on a device such as a personal computer display.
Additional content is retrieved in a hypertext document from other sources using "hyperlink" references within hypertext documents. For example, an exemplary Hyper Text Markup Language hyperlink tag I "<A HREF="http://www.spyglass.conVIogo.mov">" provides a hyperlink to a movie file "logo.mov." When a user selects the link (e.g., with a mouse click) in a hypertext document, the movie file "logo.mov" is located using a Uniform Resource Locator ("URL") from the location "www. spyglass. com." Hyper Text Transfer Protocol (e.g., "HTTP") is used as the transfer protocol.
Transfer protocols such as Hyper Text Transfer Protocol ("HTTP"), File Transfer Protocol ("FTP"), Gopher, and others provide a means for transferring hypertext documents or additional content from other locations on the World-Wide-Web. Hyper Text Transfer Protocol is one primary protocol used to transfer information on the WorldWide-Web. Hyper Text Transfer Protocol is a protocol that allows users to connect to a server, make a hypertext request, get a response, and then disconnect from the server.
File Transfer Protocol is a protocol that provides access to files on remote systems. Using File Transfer Protocol, a user logs onto a system, searches a directory structure and downloads or uploads a file. Gopher is a protocol similar to File Transfer Protocol. Gopher provides a series of menus linked to files containing actual hypertext.
Wireless devices, such as wireless phones, now have data capabilities in addition to voice capabilities. The data capabilities allow a wireless device to receive an electronic document from the World-Wide-Web. To optimize performance, and to provide an electronic document in a format useable on wireless devices, a Wireless Application Protocol ("WAP") is typically used. The Wireless Application Protocol includes several protocols and standards designed to provide wireless devices with access to an electronic document and was developed as an alternative to other markup languages and protocols developed for the World-Wide-Web. More information on the Wireless Application Protocol can be found on the World-Wide-Web at the URL "http://www.wapforum.org."
One component of the Wireless Application Protocol is a Wireless Markup Language ("WMU), which includes markup tags, and provides control over formatting and layout of an electronic document. The Wireless Markup Language is often more appropriate to use for wireless devices such as wireless phones than other markup languages such as Hyper Text Markup Language.
Wireless Markup Language data is structured as a collection of "cards." A single collection of cards is referred to as a "deck." Each card includes structured content and navigation specifications. Logically, a user of a wireless device navigates through a series of cards, reviews the content of each card, enters requested information, selects options, and navigates to and from other cards in a deck.
A user with a wireless device may request an electronic document on the WorldWide-Web. However, there are several problems associated with displaying the content of an electronic document from the World-Wide-Web on a smaller display on a wireless device.
First, most electronic documents developed for the World-Wide-Web are based on the assumption of viewing with standard "SuperVGA" resolution (e. g., 800x600 pixel resolution with 256 or more colors). A user with a wireless device, such as wireless phone, may desire to view electronic documents from the World-Wide-Web. However, most wireless devices have a display with a resolution that is less than SuperVGA (e.g., 100x200 monochrome pixel resolution) typically does not support color. In addition, a SuperVGA device is typically capable of displaying 24 lines or more of 80 character or -At - I I more of text. A wireless device display typically can display about two to five lines of 20 characters of text. Thus, the content of electronic documents will not be properly displayed and may be difficult to view based on the original hypertext content. However, an electronic document should communicate the same content to devices with a SuperVGA display as well as to the wireless devices with a smaller display that is less than SuperVGA in resolution.
One solution is to store several versions of the electronic document at a content provider site. For example, one version of the electronic document is stored in the Hyper Text Markup Language and another in the Wireless Markup Language. However, this solution requires a large amount of storage space and creates a very difficult maintenance problem to keep the various versions of the electronic document synchronized when changes are made.
Another problem is that displays on wireless devices may not be capable of displaying, or have enough memory to download and display a full page of text, graphical images, animation, video or other content included in an electronic document. Trying to display an electronic document with too much text, graphical images, animation or video may overload or otherwise adversely affect the wireless device leading to user frustration.
Yet another problem is that many users of wireless devices will not be using their wireless device for "general" browsing of the World-Wide Web. Instead, a wireless device user will typically be looking for specific information such as phone numbers, addresses, stock quotes, sports scores, current news, etc. Thus, such users may desire to have some types of electronic context from a hyper text document not displayed at all (e.g., no graphical images).
Thus, it is desirable to provide a method and system to convert an original electronic document into a converted electronic document useable on a wireless device such as a wireless phone. The method and system should allow virtually any electronic document on the World-Wide-Web to be converted and displayed in a format appropriate for a wireless device.
I In accordance with preferred embodiments of the present invention, some of the problems associated with displaying electronic documents on a wireless device are overcome. A method and system for converting content of electronic documents is provided. One aspect of the invention includes a method for converting content of electronic documents. The method includes receiving a request for an original electronic document on a second network device on a first network from a first wireless device on the first network. The request includes an indication of the type of wireless device. An original electronic document for a first markup language is divided into multiple document elements including textual elements and non-textual elements for conversion into a second wireless markup language. One or more original textual elements from the original electronic document in the first markup language are converted into converted textual elements for a second wireless markup language. One or more original nontextual elements are converted from an original nontextual format for the first markup language into a converted non-textual format for the second wireless markup language. A converted electronic document is created from the converted textual elements and the converted non-textual elements based on the device type for the first wireless device from the request. The converted electronic document is sent from the second network device to the first wireless device in response to the request for the original electronic document. The present invention is not limited to wireless devices, and other network devices could also be used in place of the first wireless device.
Another aspect of the invention includes a system for content conversion. The system includes a wireless gateway for accepting requests for original electronic documents from network devices such as wireless devices. A content converter application converts an original electronic document in a first markup language into a second converted document in a second wireless markup language suitable for display on a wireless device. A database stores conversion preferences for multiple wireless devices. The conversion preferences are used to further convert an original electronic document in a first markup language into a second converted document in a second wireless markup language suitable for display on a specific type of wireless device. However, more or fewer system components can also be used, and the present invention is not limited to the system components described. In addition, The system is not limited to wireless devices, and other network devices could also be used in place of the first wireless device.
In one exemplary preferred embodiment of the present invention, the method and system are used to allow a wireless device to request an original electronic document (e.g., a Hyper Text Markup Language document) and receive a converted electronic document (e.g., a Wireless Markup Language document) suitable for display on the wireless device. The converted electronic document suitable for display on a wireless device may provide increased satisfaction for a user of a wireless device.
For example, an original electronic document with the current weather may be requested from a wireless device. The original electronic document includes several graphical images of current weather maps and text for the current weather. The method and system may provide a converted electronic document including only the text for the current weather in a format suitable for display on the wireless device. However, the I present invention is not limited to wireless devices and other network devices could also be used.
Preferred embodiments of the invention will now be described, by way of example only, and with reference to the accompanying drawings in which:
FIG. I is a block diagram illustrating an exemplary content conversion system; FIG. 2 is a flow diagram illustrating a method for content conversion; FIG. 3 is a flow diagram illustrating a method for logical division of electronic document elements; FIG. 4 is a block diagram visually illustrating the method for logical division of electronic document elements of FIG. 3; FIG. 5 is a flow diagram illustrating a method for categorized division of electronic document elements; FIG. 6 is a block diagram illustrating a portion of an exemplary Document Object Model ("DOM") for Hyper Text Markup Language; FIG. 7 is a block diagram visually illustrating the method for categorized division of electronic document elements of FIG. 5; FIG. 8 is a flow diagram illustrating a method for targeted conversions of electronic document elements; FIG. 9 is block diagram visually illustrating the method for targeted conversion of electronic document elements of FIG. 8; FIG. 10 is screen display illustrating an exemplary electronic document from the World-Wide-Web; and I FIG. I I is a block diagram illustrating exemplary converted output from the screen display of FIG. 10 on an exemplary wireless device.
Exemplary content conversion system FIG. I is a block diagram illustrating an exemplary content conversion system 10 for one preferred embodiment of the present invention. Content conversion system 10 includes multiple components. A first wireless device 12 requests original electronic documents. The first wireless device 12 includes a display that is typically less that SuperVGA resolution (i.e., less than 8OOx6OO pixel resolution or less than 256 colors).
As is known in the art and is described above, an electronic document includes text, hypertext, graphical data or references to graphical data images, audio, video and other content. A hypertext document includes markup codes called "tags." The structure of hypertext documents is defined by document markup languages such as Standard Generalized Markup Language ("SGMU), Hyper Text Markup Language ("HTML"), compact HTML ("cHTMU), eXtensible Markup Language ("XMU), Virtual Reality Markup Language ("VRML"), and voice extensible Markup Language ("VoxMU), others. Markup languages also allow references to additional content besides text including graphics, animation, audio, video and other electronic data.
Also described above, electronic documents are typically displayed for a user with a software application called a "browser." A browser on a handheld device or wireless device may be a sub-set of a larger browser, and may not be capable of displaying complete content of a requested electronic document as stored on an electronic document server. A browser typically reads an electronic document and renders the electronic document content into a presentation of text, graphics, animation, audio, video, etc., for - kj - I I display on a device such as a personal computer. Most electronic documents developed for the World Wide Web assume that users will view the content of the electronic document with a browser on a desktop computer screen with a standard "SuperVGA" resolution (e.g., 8OOx6OO pixel resolution with 256 or more available colors).
Returning to FIG. 1, a wireless gateway 14 services requests for electronic documents from the first wireless device 12 and sends converted electronic documents back to the first wireless device 12. A content converter application 16 converts content of an electronic document to a format usable on the first wireless device 12 (e.g., a device with a smaller display). A database 18 stores wireless device conversion preferences. FIG. I illustrates a single database 18. However, multiple database components can also be used. A computer network 20 provides one or more electronic document servers for supplying electronic documents.
In a preferred embodiment of the present invention, the computer network 20 is the World-Wide-Web on the Internet. As is known in the art, the Internet is a world-wide network of interconnected computers. The WorldWide-Web is an information system on the Internet designed for electronic document interchange. However, other computer networks with electronic document servers could also be used (e.g., an intranet or other Local Area Network "LAN").
FIG. I illustrates the content converter application 16 as an individual component. However, the content converter 16 can also be integral to the wireless gateway 14 (not illustrated in FIG. 1). A preferred embodiment of the present invention is not limited to the network components shown in the content conversion system 10 and more or fewer network components may also be used. In addition, the content conversion system 10 illustrates a first wireless device 12. In another embodiment of the present invention, the first wireless device 12 can be replaced with a wireline network device (i.e., a network device connected to a network with a temporary or permanent connection using a wire or cable). The wireline network devices would be capable of using one or more wireless markup languages (e.g., Wireless Mark-up Language).
In one preferred exemplary a preferred embodiment of the present invention, the wireless gateway 14 and the content converter application 16 are software components on a proxy server. However, the functionality of components from FIG. I can also be provided with a combination of hardware and software components, or as hardware components.
In one preferred embodiment of the present invention, the functionality of components from FIG. I is provided with software using object-oriented programming techniques and the C++ programming language. However, other object-oriented programming languages besides C++ could also be used. In addition, in a preferred embodiment of the present invention, the functionality of components of FIG. I can also be provided with nonobject oriented programming languages (e.g., C programming language).
As is known in the art, object-oriented programming is used to design computer software including object-oriented objects that are easy to create, cost effective to modify, and reusable. Object-oriented objects include "object data" and "object services." Object services are provided through "object methods" (also called "object operations" or "object functions"). Object methods typically operate on private data such as "instance data" or "object state data" that an object owns. A collection of objects is - i4- I called an "object class" which is sometimes called an "object type." An object class acts as a template that describes the behavior of sets of objects. An object's implementation is typically encapsulated, and is hidden from public view. Object private instance data can only be accessed by object methods of an object class. Object public instance data is accessed through a public "object interface."
An operating environment for components of content conversion system 10 of a preferred embodiment the present invention includes a processing system with at least one high speed Central Processing Unit ("CPU") and a memory system. In accordance with the practices of persons skilled in the art of computer programming, the present invention is described below with reference to acts and symbolic representations of operations and instructions that are performed by the processing system, unless indicated otherwise. Such acts and operations are referred to as being "computer-executed" or "CPU executed." Although described with one CPU, alternatively multiple CPUs may be used for a preferred embodiment of the present invention.
The memory system may include main memory and secondary storage. The main memory is high-speed random access memory ("RAM"). Main memory can include any additional or alternative high-speed memory device or memory circuitry. Secondary storage takes the form of persistent long term storage, such as Read Only Memory ("ROM"), optical or magnetic disks, organic memory or any other volatile or non-volatile mass storage system. Those skilled in the art will recognize that the memory system can comprise a variety and/or combination of alternative components.
Acts and symbolically represented operations or instructions include the manipulation of electrical or biological signals by the CPU. The electrical or biological signals cause transformation of data bits. The maintenance of data bits at memory locations in a memory system thereby reconfigures or otherwise alters the CPU's operation. The memory locations where data bits are maintained are physical locations that have particular electrical, magnetic, optical, or organic properties corresponding to the data bits.
The data bits may also be maintained on a computer readable medium including magnetic disks, optical disks, organic disks and any other volatile or non-volatile mass storage system readable by the CPU. The computer readable medium includes cooperating or interconnected computer readable medium, which exist exclusively on the processing system or may be distributed among multiple interconnected processing systems that may be local or remote to the processing system.
Wireless network devices and other network devices for preferred embodiments of the present invention include wireless network devices that can interact with content conversion system 10 with based on standards proposed by the Institute of Electrical and Electronic Engineers ("IEEE"), International Telecommunications UnionTelecommunication Standardization Sector ("ITU"), Internet Engineering Task Force ("IETF'), Wireless Application Protocol Forum ("WAP") Forum, or others. IEEE standards can be found on the World Wide Web at the Universal Resource Locator ("URL") "www.ieee.org." The ITU, (formerly known as the CCITT) standards can be found at the URL "www.itu. ch." IETF standards can be found at the URL 44www.ietf org." The WAP Forum standards can be found at the URL "www.wapforum.org."
Content conversion for wireless devices I FIG. 2 is flow diagram illustrating a Method 24 for content conversion. The Method 24 includes receiving a request for an original electronic document on a second network device 14 on a first network from a first wireless device 12 on the first network at Step 26. The request indicates a device type for the first wireless device 12. At Step 28, the original electronic document for a first markup language is divided into multiple document elements including textual elements and non-textual elements for conversion into a second wireless markup language. At Step 30, one or more of the original the textual elements from the original electronic document in the first markup language are converted into converted textual elements for the second wireless markup language, At Step 32, one or more of the original the non-textual elements are converted from an original non-textual format for the first markup language into a converted non-textual format for the second wireless markup language. At Step 34, a converted electronic document is created from the converted textual elements and the converted non-textual elements. At Step 36, the converted electronic document is sent from the second network device to the first wireless device in response to the request for the original electronic document. However, the present invention is not limited to wireless devices and other wireline network device that are capable of using the WAP could also be used in place of the first wireless device.
In one exemplary preferred embodiment of the present invention, the content converter application 16 on the wireless gateway 14 receives the request for the original electronic document. In such an embodiment of the present invention, the content converter application 16 requests the original electronic document from the computer network 20 (e.g., the World-Wide-Web). In another embodiment of the present _117- invention, the content converter application 16 retrieves a copy of the original electronic document from storage (e.g., volatile or non- volatile) such as a cache, associated with the wireless gateway 14. In such an embodiment, a copy of an original electronic document is stored in storage associated with the wireless gateway 14 after a first request by the first wireless network device 12.
In one exemplary preferred embodiment of the present invention, the request received at step 26 is a Hyper Text Transfer Protocol ("HTTP") request. The request includes a device type (e.g., in an HTTP request header) for the first wireless device 12. However, other requests can also be used (e.g., File Transfer Protocol ("FTP"), etc.).
As is known in the art, HTTP is a transfer protocol used to transfer data from an electronic document server on the World-Wide-Web. For more information on HT'IT see Internet Engineering Task Force ("IETF") Request For Comments ("RFC") 2069, incorporated herein by reference.
At Step 28, the original electronic document is divided into multiple document elements including textual elements and non-textual elements for a first markup language for conversion into a second wireless markup language. In one exemplary preferred embodiment of the present invention, the first markup language is Hyper Text Markup Language ("HTML"). However, other markup languages could also be used, (e.g., XML, cHTML, SGML, VRML, VoxML, etc.). For more information on HTML see RFC-1866, incorporated herein by reference.
In one exemplary preferred embodiment of the present invention, the second wireless markup language is Wireless Markup Language ("WMU) from Wireless Application Protocol ("WAP"). However, other wireless markup languages could also be - IS- I used. The WAP includes the WML as well as protocols for converting non- textual elements (e.g., images). For more information on WML see "Wireless Application Protocol Specification", by the Wireless Application Protocol Forum, April 1998, incorporated herein by reference. The Wireless Application Protocol Specification can be found at the URL "www.wapforum.org." However, other markup languages could also be used for the second wireless markup language.
In preferred embodiments of the present invention, three separate methods are used to divide or divide and convert the original electronic document into multiple textual elements and non-textual elements in the first markup language for conversion into textual elements and non-textual elements in a second wireless markup language at Step 28. However, more or fewer methods can also be used to divide the original electronic document into multiple textual and non-textual elements. The three division methods include logical division of electronic document elements, categorized division of electronic document elements, and targeted conversion of electronic document elements. The three separate division methods used at Step 28 will be explained below.
Table I illustrates exemplary pseudo-code for pre-processing an original electronic document received at Step 26, before it is divided at Step 28 for certain exemplary preferred embodiments of the present invention. However, the present invention is not limited to the pre-processing pseudo-code illustrated and Table 1, and other methods can be used to preprocess an original electronic document. The exemplary pseudo-code produces a token list that can be used to divide and/or divide and convert the original electronic document into a converted electronic document at Step 28.
-144 - Exemplary data structures used with the exemplary pseudo-codemanipulate the token list from Table I at Step 28 are illustrated in below.
C 1998 by Spyglass, Inc.
Initialize a conversion as follows:
create a new tag actions dictionary and markup tag hash table for each item in tag translation data table insert the tag translation data table item into the tag actions dictionary for each item in attr whitelist table if pdor tag name is same as this item's tag name insert attr into new attr hash set else if prior tag name not empty insert the new attr hash set into the tag actions dictionary else create a new attr hash set insert attr into new attr hash set set prior tag name to this item's tag name insert the last new attr hash set into the tag actions dictionary Pre-process the original electronic document as follows:
parse the incoming document and create a linked list of tokens representing the document's data and original markup language elements modify the token list so that it represents syntactically correct and well-formed odginal markup language elements start at head of list while there are still more document elements in list if token is openStartTag copy token name to currentTag if currentTag is one of special content tags set corresponding special content flag to true lookup currentTag in tag actions dictionary if not found if currentTag not found in markup tag hash table set current token to prev token delete all tokens from next token through next closeStartTag token else delete all tokens (tag attributes) from next token through next closeStartTag token else if action for tag is removeWithoutContent I set current token to prev token delete all tokens from next token through next closeStartTag token else if action for tag is removeWithContent set current token to prev token delete all tokens from next token through matching endTag else if action for tag is replace if replacing end tag only set current token to prev token delete all tokens from next token through next closeStartTag token if replacing start tag only replace name of current token with replacement name delete all tokens from next token up to next closeStartTag token else if action for tag is remove all attrs except for white-list set current token to next token while token is not a closeStartTag copy token name to attr lookup attr in hash set for currentTag if not found set current token to prev token delete next token set current token to next token else if token is endTag copy token name to currentTag lookup currentTag in tag actions dictionary if not found set current token to prev token delete next token it found if action for tag is removeWithoutContent set current token to prev token delete next token if action for tag is replace if replacing start tag only set current token to prev token delete next token if replacing end tag only replace type of current token with openStartTag create a new closeStartTag token and insert it in list after current token replace name of current token Wth replacement name set current token to next token Table 1. At Step 30, one or more of the original textual elements from the original electronic document in the first markup language are converted into converted textual -21- elements for a second wireless markup language (e.g., using the token list created with the exemplary pseudo-code in Table 1). In one exemplary preferred embodiment of the present invention, the textual elements include text and hypertext, including hypertext markup codes. However, other textual elements could also be used and the present invention is not limited to text and hypertext elements.
Table 2 illustrates exemplary conversions used to convert textual elements for the first markup language into converted textual elements for the second wireless markup language at Step 30. However, more or fewer conversions could also be used, and the present invention is not limited to the conversions listed in Table 2. Not all of the conversions for Table 2 may be used for an original electronic document in a selected original markup language. Only a subset of the conversion operations may be supported for a selected original markup language.
Textual Conversion -Description - 2Z- I I Textual clipping The size of the original electronic document may not be suitable, even in a converted form, for delivery to a wireless device due to memory and bandwidth rest(ictions. To reduce the amount of text, the content converter application 16 will deliver a specified number of initial characters or paragraphs, with links to the clipped text. The links to the clipped text are accomplished with a virtual URL scheme. This conversion can be used conditionally for large blocks of text defined to be larger than a specified number of paragraph elements (e.g., HTML <P>).
Removing unsupported textual Elements in the first markup language (e.g., HTML) elements that are not supported in the second wireless markup language (e.g., WML) are removed (e.g., HTML APPLET, BGSOUND, STRIKE, etc.). Non essential elements in the first markup language (e.g., HTML COMMENTS and META elements, etc.) are removed to reduce the size of the converted document that will be created, since such elements are typically not essential to the structure or layout of the original content. This may be done during the preprocessing described in Table 1.
Removing unsupported textual Elements in the first markup languages that have element tags no equivalent in the second wireless markup language are removed (e.g., HTML BODY, ACRONYM, BANNER, etc.). Any content between removed start and end element tags is not removed. This may be done during the preproc ssing described in Table 1.
Replacing equivalent textual markup Elements and attributes of the first markup elements language that have equivalent elements and attributes in the second wireless markup language are replaced with the appropriate element and/or attribute. (e.g., HR in HMTL is replaced with BR in WML) Some elements and attributes of the first markup language may map into multiple elements in the second wireless markup language, and visa versa. Some elements and attributes of the first and second wireless markup language may also be identical (e.g., B, 1, U, for bold, italic or underline text respectively). This may be done during the preprocessing described in Table 1.
Adding textual markup elements Textual markup elements that are required by the second wireless markup language, but do not exist in the first markup language are added. (e.g., for HTML to WML conversion:
If a DOCTYPE element does not exist, one appropriate for WML is added. If one does exist, it is translated.
An ACCESS PUBLIC="TRUE" element is added to the WML so that other WML documents can be linked to the converted document.
Markup elements that divide a document into WML cards is added.) Removing unsupported attributes Attributes in the first markup language that have no equivalents in the second wireless markup language, or that are associated with elements that are replaced with elements for the second wireless markup language that have no equivalent attributes are removed (e.g., HTML IMG, ALIGN, BORDER, attributes). This may be done during the described in Table 1.
Converting form elements Only select form elements from the first markup language have equivalent form elements in the second wireless markup language. The equivalent form elements are converted. The remaining form elements are removed. (e.g., the HTML SELECT element, and text and password INPUT elements are converted to WML, other HTML form elements are removed). If input fields in the form cannot be converted, then the entire form may be deleted since most server-based programs that process forms require input from all the original input fields for the form element to be filled correctly.
- Vf- I Converting table elements Table related elements in the first markup language may not have equivalent table elements in the second wireless markup language. However, the relationship between rows and columns in the tables is preserved. Simple and complex tables are converted differently. Simple tables include only textual markup (e.g., HTML B, 1, U, EM, STRONG, BIG, SMALL, etc. elements) with Table Headers ("TH") and Table Data ("TD") elements.
For exemplary HTML to WML conversion, the following mapping is used for simple tables:
HTML <TABLE>content</TABLE> to:
WML <CARD>content</CARD> HTML <TBODY>content<fTBODY> to:
WML <CARD>content</CARD> HTML <CAPTION>content</CAPTION> to:
WML <BR ALIGN="CENTER'/>content<BR/> ALIGN="LEFT/> HMTL <TR>content</TR> to:
WML content<BR/> HTML <TD>content</TD> to:
WML content<TAB/> HTML <TH>content<fTH> to:
WML content<TAB/> Complex tables includes nested tables and are converted using table unrolling methods. The table unrolling methods indicate table cells in an output format, i.e., enclose table cells within brackets (e-g., "[" nd "I") and begins new rows on new lines.
Converting frame elements Frame elements in the first markup language are converted into markup in the second wireless markup language that preserves the general structure of frames (e.g., from an HTML FRAME ELEMENT, a WML card with links to the HTML frames, and a card with the content of the HTML NOFRAMES element if it exists. The value of the HTML SRC attribute for the FRAME element is mapped to a WML GO element. If it exists, the value of the HTML NAME attribute for the FRAME element is used to identify a link. Otherwise, a link is named "FrameN", where N is a sequential number. For example, the following HTML markup, <FRAME NAME="name" SRC="URL"> is mapped to the WML markup, <A TlTLE="name">name<G0 URL="URL"/></A>).
Converting link elements Link elements in the first markup language are converted into link elements in the second wireless markup language. For exemplary HTML to WML coversion, the following mapping is used for links:
HTML <A NAME="name" HREF="url">Iink text </A> to:
WML <A TITLE="name">Iink text<GO URL="url"/><A/> Table 2.
At Step 32, one or more of the original the non-textual elements are converted from an original non-textual fon-nat for the first markup language into a converted nontextual format for the second wireless markup language. In one preferred embodiment of the present invention, non-textual format such as graphical images and image maps are converted from their original format into a format useable with the second wireless markup language. For example, BitMaPed ("BMP") images and Joint Pictures Expert Group ("JPEG") images are converted into a Wireless Bit-MaPped ("WBMP") image format defined by the Wireless Application Protocol, and incorporated herein by reference. BMP and JPEG image format are known to those skilled in the art.
Table 3 illustrates exemplary conversions used to convert non-textual elements for the first markup language into non-textual elements for the second wireless markup language at Step 32. However, more or fewer nontextual conversions could also be used, and the present invention is not limited to the non-textual conversions listed in Table 3.
Non-textual conversion Description
Converting images Images in formats used by the first markup language are converted into a format useable by the second wireless markup language (e.g., JPEG images are converted to a WBMP format required by WAP). Images can also be replaced with links to the original image to improve performance and conserve display space.
Converting client-side image maps Client-side image maps in the first markup language are converted into markup for the second wireless markup language to allow users to access links mapped to an original image(e.g., for HTML IMG elements or OBJECT elements with USEMAP attributes that refer to MAP elements within an HTML document, a WML CARD element containing links for HTML AREA elements within the HTML MAP that contains a HTML HREF attribute, and the image or object itself is -216- I ---Fc-reated).
Table 3.
Table 3 illustrates only image conversion for non-textual elements. However, the present invention is not limited to image conversions and conversion for other nontextual elements (e.g., audio, video, animation, etc.) can also be used.
In one exemplary preferred embodiment of the present invention, the psuedo-code listing in Table 4 includes exemplary CIC++ data structures and interfaces for conversion functions for textual elements used at Step 30 and non-textual elements at Step 32 of Method 24. In one exemplary preferred embodiment of the present invention, the exemplary CIC++ data structures and interfaces from Table 4 are used with the exemplary psuedocode from Table I to divide an original document at Step 28 and convert original document elements at Steps 30 and 32.
However, the present invention is not limited to the CIC++ data structures or interfaces from Table 4, using the data structures and interfaces from Table 4 with the pre-processing pseudo-code from Table 1. More or fewer elements and element attributes and more or fewer conversion functions can also be used for preferred embodiments of the present invention. In addition, the present invention is not limited to object-oriented programming techniques (e.g., C++), and non-object oriented programming languages (e.g., the C programming language) could also be used for conversion functions.
1998 by Spyglass, Inc.
Convert elements and element attributes #Attribute list (i.e. keep these attributes in a conversion table and delete the rest) table H table fields:
HTML tagName, attributeName static tagAttrPair attrWhitelist[] ("A","HREF"), j"A',"NAME"), J'W, "TITLE"), ("AREA%"ALT"), ("AREA-,"HREF"J, ("BASE","HREF-), ("FIELDSET", "TITLE"), ("FORM", "ACTION"), ("FORM", "METHOD"), f-FRAME","NAME"), ("FRAME", "SRC"j, ("11VIG","ALT"), ("IMG%"SRC"), [9MG%"USEMAP'), ("INPUT", "MAXLENGTH"I, ("INPUT",'NAME'), ("IN PUT", "SIZE"), ("INPUT","TITLE"), ("IN PUT", "TYPE"), j"INPUT-,-VALUE"), ("LINK","HREF-J, ("MAP"," NAME"), ("OPTGROUP",-TITLE'), f'OPT 10 N%71TLE"), (-SELECT", "NAME"), ("SELECT", "TITLE"), ("SELECT', WULTIPLE), ("TEXTAREA','COLS'), ["TEXTAR EA", 'NAME")
HTML tag translation data table table fields: //tag, tagAction, replacementTag, repiStartOnlyFlag, replEndOnlyFlag static tagTrans tagTransDatao = ( J"APP", removeWithContent, "", FALSE, FALSE), ("APPLET", removeWithContent, "", FALSE, FALSE), {"COMMENT", removeWithContent, "", FALSE, FALSE), ("DEL", removeWithContent, "", FALSE, FALSE), ("PLAINTEXT", removeWithContent, "", FALSE, FALSE), ("S", removeWithContent, "", FALSE, FALSE), {"SCRIPT", removeWithContent, FALSE, FALSE), ("STRIKE", removeWithContent, FALSE, FALSE), ["STYLE", removeWithContent, FALSE, FALSE), ("ABBR", removeWithoutContent, "", FALSE, FALSE), ("ABBREV", removeWithoutContent, "', FALSE, FALSE), I"ACRONYM", removeWithoutContent, "', FALSE, FALSE), {"AU", removeWithoutContent, "', FALSE, FALSE), {"BANNER", removeWithoutContent, "', FALSE, FALSE), ("BASEFONT, removeWithoutContent, "", FALSE, FALSE), ("BDO", removeWithoutContent, "", FALSE, FALSE), {"BGSOUND", removeWithoutContent, "", FALSE, FALSE), -2S- I i I ("COL", removeWithoutContent, "", FALSE, FALSE), f"COLGROUP", removeWithoutContent, "", FALSE, FALSE), {"DIR", removeWithoutContent, FALSE, FALSE), ("DIV", removeWithoutContent, FALSE, FALSE), j"DL", removeWithoutContent, FALSE, FALSE), ("FIG", rem oveW ithoutCo ntent, FALSE, FALSEJ, ("W', removeWithoutContent, FALSE, FALSE), ("FONT", removeWithoutContent, "", FALSE, FALSE), 1"INS", removeWithoutContent, "", FALSE, FALSEJ, ("ISINDEX", removeWithoutContent, "", FALSE, FALSE), ("LABEL", rem oveW ithoutContent, FALSE, FALSE), ("LANG", removeWithoutContent, FALSE, FALSE), 1"Ll-l", removeWithoutContent, "", FALSE, FALSE), ("META", removeWithoutContent, FALSE, FALSE), ("MENU", removeWithoutContent, FALSE, FALSE), ("NEXTID", removeWithoutContent, "", FALSE, FALSE), ("NOTE", removeWithoutContent, "", FALSE, FALSE), {"OL", removeWithoutContent, "", FALSE, FALSE), ("OVERLAY", removeWithoutContent, "", FALSE, FALSE), J"PARAM', removeWithoutContent, "", FALSE, FALSE), {"PERSON", rem oveWithoutContent, "", FALSE, FALSE), J"Q", removeWithoutContent, "", FALSE, FALSE), ("SOUND", removeWithoutContent, ", FALSE, FALSE), ("SPAN", removeWithoutContent, "", FALSE, FALSE),' 17BODY", removeWithoutContent, FALSE, FALSE), 17FOOT", removeWithoutContent, FALSE, FALSE), ("THEAD", removeWithoutContent, FALSE, FALSE), j"UL", removeWithoutContent, "', FALSE, FALSE), ("WBR", removeWithoutContent, "", FALSE, FALSE), ("NOSCRIPT", removeWithoutContent, "", FALSE, FALSE), ("XMP", removeWithoutContent, "", FALSE, FALSE), ("ADDRESS", replace, "I", FALSE, FALSE), ("BLINK", replace, "STRONG", FALSE, FALSE), ("KBD", replace, "B", FALSE, FALSE), ("MARQUEE", replace, "STRONG", FALSE, FALSE), ("SAMP", replace, "I", FALSE, FALSE), ("SUB", replace, "SMALL", FALSE, FALSE), ("SUP', replace, "SMALL", FALSE, FALSE), ("TAB", replace, "TAB/", FALSE, FALSE), ("VAR", replace, "I", FALSE, FALSE), ["BLOCKQUOTE", replace, "BR", FALSE, TRUE), ("130", replace, "BR", FALSE, TRUE), {"CAPTION", replace, "BR', FALSE, TRUE), ("CENTER', replace, "1311", FALSE, TRUE), ("CITE", replace, "I", FALSE, FALSE), ("CODE", replace, "I", FALSE, FALSSE), ("CREDIT", replace, "BR", FALSE, TRUE), J"DD', replace, "BR", FALSE, TRUE), f'DFN", replace, "I", FALSE, FALSE), f"DT", replace, "BR", FALSE, TRUE), j"HR", replace, "BR", FALSE, TRUE), J"Hl ", replace, "BR", FALSE, TRUE), ("1-12% replace, "BR", FALSE, TRUE), _ ("1-13", replace, "BR", FALSE, TRUE), {"I-14", replace, "BR", FALSE, TRUEJ, ("l-15", replace, "BR", FALSE, TRUE), ("l-16", replace, "BR", FALSE, TRUE), ("LEGEND", replace, "BR", FALSE, TRUE), ("Ll", replace, "BR", FALSE, TRUE), ("LISTING", replace, "BR", FALSE, TRUE), ("NOBR", replace, "BR", FALSE, TRUE), ["PRE", replace, "BR", FALSE, TRUE), j"TR", replace, "BR", FALSE, TRUE), {"TT", replace, "BR", FALSE, TRUE) Table 4. As is illustrated in Table 4, the first data structure includes a list of element attributes that will be retained during preprocessing in Table 1. Other attributes will be removed. The second data structure determines how the element tags will be converted. As is illustrated in the second data structure, a tag action routine 11 removeWithoutContent" removes an element tag and saves its content (e.g., corresponding text, etc). A tag routine "removeWithContent" removes an element tag and does not save its content. A tag routine "replace" replaces an element tag in a first markup language with an element in a second markup language (e.g., an HTML element is replaced with a WML element). Two replacement flags, "replStartOnlyFlag" and cc replEndonlyFlag" indicate how an element tag is to be replaced. However, the present invention is not limited to the element tag list or element tag conversion data structures and related conversion routines, and other lists, data structures and conversion elements could also be used. In addition, more or fewer elements could also be used for conversion. In one exemplary preferred embodiment of the present invention, the C/C++ psuedo-code listing in Table 5 includes exemplary routines for conversion functions for non-textual elements used at Step 32 of Method 24. Table 5 illustrates conversions - 3D- I specifically for converting a JPEG image format to WBMP image format. In Table 5, the variable "data" includes the original image data which is modified by the routine and the variable "metaData" includes HTTP header data. Other similar functions would be used to convert other non-textual elements (e.g., other image formats, audio, video, animation, etc.). However, the present invention is not limited to the routines listed in Table 5 for converting JPEG images into NVBMP images, and more or fewer conversion functions for other image formats can also be used.
In another exemplary preferred embodiment of the present invention, JPEG images are converted directly into WBMP images without the intermediate steps of converting the JPEG image into an internal format, converting the internal format into BMP image, and converting the BMP image into a WBMP image. In such an embodiment, a single conversion function is used (e.g., JPEGToWBMP( data)).
0 1998 by Spyglass, Inc.
// Convert JPEG images to WML WBMP //Convert JPEG format images to WBMP images //Convert JPEG to an internal format Convert JPEG-TointernalFormat(char data, char metaData); HConverl from an internal format to BMP format //In this routine, data is translated from internal format to BMP format HmetaData is changed as follows: //Content- Length" is updated HContent-Type" is change to "image/bmp" ConvertlnternalFormatToBMP(char data, char metaData) HConvert from BMP format to WBMP format HmetaData is changed as follows: HContent-Length" is updated //Content-Type" is change to "image/x-wap. wbmp" ConvertBMP-ToWBMP(char 'data, char metaData) Table 5.
At Step 34, a converted electronic document is created from the converted textual elements and the converted non-textual elements. In one exemplary preferred embodiment of the present invention, the converted electronic document is an electronic document converted with the WAP including WML and protocols from the WAP (e.g., WBMP for images) from an original HMTL document. However, the original electronic document may include other markup languages beside HTML (e.g., cHTML, XML, SGML, VRML, VoxML, etc.), and the converted electronic document may include other wireless markup languages.
In addition, in one exemplary preferred embodiment of the present invention, Step 34 includes querying database 18 for wireless device preferences before the converted electronic document is created. In such an embodiment, the converted textual and nontextual elements may be further modified to meet specific device preferences. For example, a first wireless device 12 may be of a first device type that has a display of 5lines of 30 characters for textual display. Another wireless device may be of a second device type that has a display with 2-lines of 20characters for textual display. The converted textual and non-textual elements may be further modified at Step 34 to take into account the wireless device type before creating a final version of a converted electronic document.
At Step 36, the converted electronic document is sent from the second network device 14 to the first wireless device 12 in response to the request for the original electronic document. In one preferred embodiment of the present invention, a WAP document including WML and other WAP protocols (e.g., Y;BMP for images) is sent from the second network device 14 to the first wireless device 12 in response to the I request for an original HTML document. However, other original electronic document and converted document types could also be used and the present invention is not limited to HTML-to-WAP conversions.
In one exemplary preferred embodiment of the present invention, Step 36 includes determining if the first wireless device has enough memory to store the whole converted document (e.g., from the device type in the request header). If not, the converted document is split into multiple sub-documents that are sent one, or a few at a time. For example, a WML deck with N-number of cards could be split into two WML decks, the first deck, including N-X-number of cards, and the second deck including the remaining WML cards. Method 26 allows a wireless device to request virtually any original electric document from the world-wide-web and receive a converted document suitable for display on the wireless device. Division of an original electronic document As was discussed above, there are three separate methods used to divide or divide and convert an original electronic document into the textual elements and non-textual elements from the first markup language to be converted into textual elements and nontextual elements in a second wireless markup language at Step 28 of Method 24 (FIG. 2). The three methods include logical division of electronic document elements, categorized division of electronic document elements, and targeted conversion of electronic document elements, However, more or fewer division methods can also be used and the present invention is not limited to three methods described. Logical division of electronic document elements - 3; - This division method preserves as much of the structure of the original electronic document as possible when it is converted into a converted electronic document. The converted document is displayed in a same logical sequence as the original electronic document.
FIG. 3 is a flow diagram illustrating a Method 40 for logical division of electronic document elements. At Step 42, a first set of document elements in a first markup language is selected for dividing an original electronic document into multiple logical sub-documents in a second wireless markup language (e.g., see Table 6). The first set of document elements includes textual elements and non-textual elements from the first markup language. At Step 44, the original electronic document is parsed for document elements from the first set of elements (e.g., see Table 1). At Step 46, the original electronic document is divided into multiple of sub-documents for a second wireless markup language using parsed document elements from the first set of elements. The multiple of sub-documents for the second wireless markup language maintain a logical sequencing associated with the parsed document elements from the original electronic document.
In one exemplary preferred embodiment of the present invention, the first markup language is HTML and the second wireless markup language is WML. However, other markup languages can also be used and the present invention is not limited to HTML and WML, another other markup languages could also be used (e.g., cHTML, SGML, XML, VRML, VoxML, etc.). In such an embodiment, at Step 42 a first set of elements in HTML is selected for dividing an original electronic document into logical cards in I I WML. The first set of elements includes textual elements and non-textual elements from HTML.
Table 6 illustrates exemplary document elements selected for HTML that are used for an exemplary first set of elements. However, the present invention is not limited to the exemplary documents elements illustrated in Table 6, and more or fewer document elements can also be used. In addition, the present invention is not limited to HTML elements and document elements from other markup languages (e.g., cHTML, SGML, XML, VRML, VoxML, etc.) can also be used.
WML card breaks are inserted before the following HTML elements: TABLE elements IMG elements that contain a USEMAP attribute FIELDSET elements FRAME elements NOSCRIPT elements TBODY elements NOFRAMES elements FRAME elements
Table 6.
At Step 44, the original electronic document is parsed for document elements from the first set of elements such as those illustrated in Table 6. At Step 46, the original electronic document is divided into multiple WML cards using the parsed document elements. The multiple WML cards maintain a logical sequencing associated with the parsed document elements from the original electronic document.
FIG. 4 is a block diagram 48 visually illustrating the Method 40 for logical division of electronic document elements. An original HTML electronic document 50 is divided into multiple WML cards 51,54, 56 that create a WML deck 58. The individual WML cards 52, 54, 56 are linked together with WML links 60 and 60'. The logical sequencing associated with the HTML document 50 is maintained in the WML deck 58.
For example, using the exemplary HTML elements illustrated in Table 6, a HTML TABLE element is the first element parsed from the HTML document 50. A first WML card 52 is created to include the table data associated with the HTML TABLE element. The second HTML element parsed is a HTML IMG element with a USEMAP attribute. The second WML card 54 includes an image associated with the HTML MG element with the USEMAP attribute. The third HTML element parsed is a HTML FRAME element. The third WML card 56 includes the frame data associated with the HTML FRAME element. Thus, using Method 40 to create the WML deck 60, preserves the logicalsequencing associated with document elements from the original HTML document 52. Method 40 (FIG. 3) can be used at Step 28 of Method 24 (FIG. 2) to divide an original electronic document into multiple document elements. Categorized division of electronic document elements This method divides an original electronic document into general categories of document elements used to create an original electronic document (e.g., text, links, images, tables, etc.). The categories are displayed in a list that allows navigation to the individual categories.
FIG. 5 is a flow diagram illustrating a Method 62 for categorized division of electronic document elements. At Step 64, a first set of categories for a first markup language for dividing an original electronic document into sub-documents in a second wireless markup language is selected. An individual category in the first set of categories is associated with one or more document elements from the first markup language. At Step 66, a structured model is created for the original electronic document (e.g., from the token list created in Table 1). At Step 68, a loop is entered to parse the structured model I for one or more document elements from the original electronic document that are included in the first set of categories. At Step 70, an individual category is added to a first list associated with a first sub- document for a second wireless markup language. At Step 72, parsed one or more document elements are added to a next list associated with the individual category on a next sub-document for the second wireless markup language. At Step 74, an association between the first sub-document and the next sub-document is created. The association includes state information. Steps 68, 70, 72 and 74 are repeated until the end of the structured model for the original electronic document to divide the original electronic document into a plurality of sub-documents for the second wireless markup language. In addition, Step 72 can be repeated to create further sub-documents associated with the next sub-document.
In one exemplary preferred embodiment of the present invention, the first markup language is HTML and the second wireless markup language is WML. However, other markup languages can also be used and the present invention is not limited to HTML and WML, another other markup languages could also be used (e.g., cHTML, SGML, XML, VRML, VoxML, etc.). In such an embodiment, at Step 64 a first set of categories for dividing an original HTML electronic document into WML cards in a WML card deck is selected. HTML (e.g. the HTML IMG element is associated with an image category, the HTML TABLE element is associated with a table category, etc. ). An individual category in the first set of categories is associated with one or more document elements from the original HTML electronic document.
Table 7 illustrates exemplary categories selected for HTML elements used for an exemplary first set of categories. However, the present invention is not limited to the - 377- exemplary categories illustrated in Table 7, and more or fewer categories can also be used. In addition, the present invention is not limited to HTML categories and categories from other markup languages (e.g., cHTML, SGML, XML, VRML, VoxML, etc.) can also be used.
WML cards are created from HTML elements associated with following categories: Links Text Tables Input Fields Page Sections Links from Images Images Navigation
Table 7.
At Step 66, a structured model is created for the original electronic document. In one exemplary preferred embodiment of the present invention, a Document Object Model ("DOM") is created for the original electronic document at Step 68. The DOM defines a logical structure of hypertext electronic documents and illustrates how hypertext electronic documents are accessed and manipulated, However, other structured models can also be used and the present invention is not limited to the DOM. Table 8 illustrates exemplary routines for creating a DOM at Step 66. However, more or fewer routines could also be used.
Conversion Operation Description
DOM-CREATE Creates a Document Object Model ("DOM") from an electronic document.
DOM-EVAL Evaluates one or more expressions that select one or more hypertext elements from a DOM.
Table 8.
FIG. 6 is a block diagram illustrating a portion of an exemplary Document Object Model ("DOM") 76 for HTML. For more information on the DOM for HTML see the World-Wide-Web Consortium ("WK") Document Object Model, incorporated herein by -343- I reference. The W3C DOM can be found on the World-Wide-Web at the URL "http://www.w3.org." Dynamic HTML by Microsoft was also one immediate ancestor of the W3C Document Object Model. More information on Dynamic HMTL ("DHTML") can be found at the URL "http://www.microsoft.com." However, the present invention is not limited to a DOM for HTML, or DHTML, and a DOM can also be created for other markup languages (e.g., cHTML, SGML, XML, VRML, VoxML, etc.).
Returning to FIG. 6, the exemplary DOM 76 for HTML includes a document type of HTML 78, an HTML element HEAD 80, a HTML HEAD sub-element TITLE 82, and a sub-element text 84 for the sub-element TITLE 82. The HTML element BODY 86 includes a sub-element HEADING 88 and text 90. The BODY 86 sub-element PARAGRAPH 92 includes text 94. The BODY 86 sub-element TABLE 96 includes subelements ROWS 98, 100. Sub-element ROW 98 includes sub-element CELL 102. Subelement CELL 102 includes text 104. Additional HTML BODY 86 sub-elements are included in the DOM 76 beginning at 106. Other HTML elements, sub-elements attributes and text are also added to the DOM 76 for HTML, but are not illustrated in FIG. 6.
Returning to FIG. 5 at Step 68, a loop is entered to parse the DOM 76 for one or more document elements (e.g., HTML TABLE element 96 (FIG. 6)) from the original HTML electronic document that are included in categories from the first set of categories illustrated in Table 7.
At Step 70, an individual category (e.g., table) is added to a first list associated with a first WML card. At Step 72, the parsed one or more document elements (e.g., _319- HTML TABLE text) are added to a next list associated with the individual category (e.g., table) on a next WML card. At Step 74, a WML link is created between the first WML card and the next WML card. The WML link includes state information that allows other WML cards to be accessed. Steps 68, 70, 72 and 74 are repeated until the end of the DOM for the original electronic document. A deck of WML cards is created.
In addition, Step 72 can be repeated to create further sub-documents associated with the next sub-document. For example, the first WML card may contain a first list including a category for links. A next WML card may contain a second list including a list of links from the HTML document. WML cards next-sub+l through next-sub+N may include content associated with links from the second list of links.
FIG. 7 is a block diagram 110 visually illustrating the Method 62 for categorized division of electronic documents of FIG. 5. A first WML card 112 includes a first list of categories (e.g., text, links, and tables). A next WML card 114 includes text. A next+1 WN4L card 116 includes a second list of I inks. A next+2 WML card 118 includes a table data. WMI_ links (i.e., associations), 120, 120', 120" are created between the first WN4L card 112 and the next WML, cards 114, 116, and 118. The WML cards 112, 114, 116 and 118 form a WML card deck 122. Method 62 (FIG. 5) can also be used at Step 28 of Method 24 (FIG. 2) to divide an original electronic document into multiple electronic documents.
In one exemplary preferred embodiment of the present invention, a first WML card in a WMI, deck created with Method 62 includes a first list with general category choices (e.g., those illustrated in Table 7). This first list is a scrollable list. The first seven list items (e.g., links, text, tables, input fields, page selections, links from images,
I and images) are WML links to information from the original HTML electronic document. The WML links contain state information for a category. The eighth item allows further navigation among the first seven items.
The content converter application 16 populates as many WML cards as possible. For wireless device with enough memory to display one deck of WML cards, the first WML card is linked to other WML cards in the same deck. If the wireless device does not have enough memory to display a single deck of WML cards, the content converter application 16 uses state information and creates another deck and links the decks to present the HTML information. For example, if the original HTML electronic document is at the URL "http://www.abc.com," the link represented by a list item in a first list on the first WML card for the category links is a virtual URL "http://www.abc.com-spyg-(SPYGA-HTML2WML-STATE=Ll)," where, (-spyg(SPYGA-HTML2WML-STATE=Ll), is the state information. A wireless device selecting the "http://www.abc.com-spyg-(SPYGA-HTML2WML-STATE=Ll)" virtual URL is requesting that the content converter application 16 display a first WML deck of cards. A next WML deck of cards would include state information, (-spyg-(SPYGAHTML2WML-STATE=L2), where the L2 indicates a second state after the first state Ll. The content converter application 16 decodes the virtual URLS.
The wireless device can also have wireless device preferences retrieved from the database 18 (FIG. 1) to limit the amount of lines displayed on a wireless device display. The state information is then used in a similar manner based on the wireless device preferences.
Table 9 illustrates exemplary WML actions for the category choices illustrated in Table 6. However, other actions could also be provided for the category choices, and the present invention is not limited to the actions listed in Table 9.
HTML Category WIVIL Action Links Provide a list of links from an original HTML document, Text Provide text from an original HTML document without the HTML markup tags.
Tables Provide the table data from an original HTML table.
Input Fields Provide an input element used to represent
HTML input fields in HTML forms.
Page Selections Provide a selection list of links to frames.
Links from Images Provides a selection list of links as defined by a client-side image map.
Images Provides a selection list of links to the images for wireless devices with graphics capabilities.
Navigation Provide an entry WML card that takes as input a state index. With the entry card and state index, provide navigation to other WML cards.
Table 9.
The actual amount of infon-nation displayed on a wireless display is dependent upon the resolution of the wireless display (e.g., 5-lines of 18-characters). The amount of information (e.g., WML cards) sent to a wireless device is dependent on the amount of memory on the wireless device. State information is used to connect multiple decks of WML cards.
Targeted conversion of electronic document elements This method allows expressions to be created that specify which document elements to extract from an original electronic document. The expressions allow specific document elements at specific locations to be extracted from an original electronic document (e.g., a specific stock quote from a list of stock quotes, or a specific score from a list of sports score).
7 I i I FIG. 8 is a flow diagram illustrating a Method 124 for targeted conversions of electronic document elements. At Step 126, a set of extraction expressions is created to extract one or more document elements from an original electronic document. The document elements include textual and non-textual elements. At Step 128, the set of extraction expressions is applied to the original electronic document to extract one or more document elements. At Step 130, the original electronic document is divided into a plurality of sub-documents for a second wireless markup language using the extracted document elements.
In one exemplary preferred embodiment of the present invention, the content converter application 16 converts the extracted HTML elements into WML elements either by dynamically generating the WML based on characteristics of the extracted HTML elements, or by writing the extracted HTML elements to a WML template. The WML template is a predetermined set of WML cards in one or more WML decks. In one exemplary preferred embodiment of the present invention, the extraction expressions are applied at Step 128 to a DOM 76 (FIG. 6) created from the original electronic document. In another exemplary preferred embodiment of the present invention, the extraction expressions are applied to list of document elements created from the original electronic document.
For example, suppose a user is a baseball fan and desires to see only a box score for his/her favorite team on a day-to-day basis. In one preferred embodiment of the present invention, a user can select a desired box score from a sports page on an electronic document server on the World-Wide-Web (e.g., from a newspaper sports page) for daily display on a wireless device. An exemplary baseball box score fon-nat from an exemplary sports page is illustrated in Table 10.
Final: Fri. April 17, 1998 1 2 3 4 5 6 7 8 9 R H E Chicago-C 0 0 0 0 0 0 0 2 0 2 5 0 New York -M 0 1 0 0 0 0 0 0 0 1 3 1 Table 10.
One exemplary preferred embodiment of the present invention allows a user the capability not only to select one or more desired hypertext elements to use on a wireless device, but also the capability to alter the content to a format suitable for the user. Suppose the user only desires to determine if his/her favorite team has won or lost a game and has only enough display space on a wireless device to display a summary of a game. Table 10 illustrates a desired box score format suitable for a wireless device. Table I I illustrates an abbreviated summary of the original baseball box score suitable for display on a wireless device. In one embodiment of the present invention, the abbreviated summary of the original baseball box score suitable for display on a wireless device would be sent to the wireless device in WML after extracting the appropriate information from HTML.
Final: Fri. April 17,1998 Runs Hits Errors Chicago-C 2 5 0 New York-M 1 3 1 Table 11.
In one preferred embodiment of the present invention, the extraction expressions and operations are from a data mining conversion language. However, other extraction expressions can also be used and the present invention is not limited to extraction expression from a data mining language. The data mining conversion language is a set of i I object-oriented methods that can be used to identify one or more hypertext elements in a hypertext electronic document. They can also be used to obtain text and change attribute values for the hypertext elements. However, non-object-oriented methods can also be used.
Table 12 illustrates exemplary data mining object-oriented methods for an exemplary data mining conversion language. However, more or fewer objectoriented methods could also be used in the exemplary data mining conversion language. The object-oriented methods provide component names used to create data mining expressions.
Hypertext Element Desired Method A hypertext electronic document. document All hypertext elements in a hypertext electronic all document.
The n-th hypertext element in a list. item (n-1) (Since zero based indexes are used, n-1 returns the nth item).
Hypertext elements with a specified tag. tags ("tag") Hypertext elements that contain an attribute attributeMatch(name=value[, name=value]) name/value pair.
Search for elements with the specified text. grep("text") Table 12.
Table 13 illustrates exemplary object-oriented methods used for subelements for an exemplary data mining conversion language. However, more or fewer object-oriented methods could also be used.
Element Sub-Element Method table One or all rows of a table. rows(m) or rows table row One or all cells in a table row. cells(m) or cells image map One or all areas defined in an areas(m) or areas image map.
form One or all elements in a form. elements(m) or elements form select One or all options in a select options(m) or options list.
other (e.g., lists and frames) One or all sub-elements of an children(m) or children element.
Table 13.
The data mining conversion language also includes, for example, methods for getting the text of a hypertext element, getting a value of an attribute for an element, and for searching for text of an element. Exemplary object-oriented methods for getting the text of an element are illustrated with exemplary data mining expressions in Table 14.
Task Sample data mining expression Get the text of a bullet list item. document.all.tags("BL"). item (n). ch ildre n (m).text - docu me nt.all.tags ("TABLE").item (n). rows (rown Get the text from a table cell.
um).cells(colnum).text Get the text from all cells in a row. The text is document. all. tags("TABLE").item (n). rows(rown concatenated into one string. um).text Get the text from all cells in a column. The text doc u ment.all. tags("TABLE"). item (n). rows. (rown is concatenated into one string. uml.cellsLcellnum).text Get options from a SELECT element. Text is document.all.tags("FORM"). item(n).elements.ta concatenated into one string. _gs("SELEC ").item(n).options.text Table 14.
As an example, to get the text of a table list item-n with the exemplary data mining expression "docu m ent. a[ I.tags ("TABLE"). item (n). children (m).text," the object-oriented method "document" (Table 12) is combined with the methods "all" (Table 12), "tags" (Table 12), for the HTML table list tag "TABLE..... item" (Table 12), "children" (Table 13) and "text" (Table 14). The data mining language expression (e.g., Table 14) obtains text from all HTML bullet list tags, including nested tags in a HTML document. Other data mining expressions in Table 14 are created in a similar manner to obtain text from HTML tables and forms.
Object-oriented methods for getting a value for an attribute of hypertext element using data mining expressions are illustrated with exemplary data mining expressions in Table 15. The exemplary data mining expressions combine object-oriented methods from Table 12 and Table 13.
4'6- Task Sample data mining expression Get the color of visited hyperlinks Document.all.tags("BOD '). getAttribute("Aink") Get the URL of an anchor Docu ment. all.tags("A"). item (n). getAttri uteC 1 1 1 Get the URL associated with an Document.all.tags.("MAP").areas(areanum). getAttirbute("href") area in an image map Get the URL of a form Document.al l.tags. ("FORM"). item (n).getAttribute ("action") Table 15.
One object-oriented method for searching for text of a hypertext element using data mining expressions are illustrated with an exemplary data mining expression in Table 16. The text search method searches for a specified string and returns all elements that contain it. As a result, duplicate text information may be returned if the text search method is not used at the bottom of the element hierarchy in the DOM 76 (FIG. 6).
Task Sample data mining expression Search in a frame for an element containing Document.all.tags("FRAME"). grep("CONTENTS") the text "Contents."
Table 16.
The exemplary data missing expressions can be used to extract information for display on wireless device. Exemplary extraction expressions may be stored in database 18. (FIG. 1). FIG. 9 is a block diagram 132 visually illustrating the Method 124 for targeted conversion of electronic document elements of FIG. 8. An original HTML electronic document 134 includes a table 136 including a sports score (e.g., Table 10). An extraction expression 138 is applied to the table 136 to create a WML card 140 in a WML deck 142 that includes a subset of data from the original table 136 (e.g., Table 11). Method 128 (FIG. 8) can also be used at Step 28 of Method 24 (FIG. 2) to divide an original electronic document into multiple document elements. Illustrative uses of preferred embodiments of the present invention FIGS. 10 and 11 visually illustrate use of preferred embodiments of the present invention. However, FIGS. 10 and I I are exemplary only, and the present invention is not limited to the displays illustrated. FIG. 10 is screen display 142 illustrating visual output from an exemplary HTML electronic document from the World-Wide-Web. The exemplary electronic document includes target text 144 in a "Latest News" section of the screen display 142. Table 17 Illustrates a portion of exemplary HTML used to display the screen display 142 from FIG. 10. In the exemplary HTML illustrated in Table 17, the text 144 from the "Latest News" section is stored in an HTML table. However, target text 144 could also be stored with other HTML elements, and Table 17 is exemplary only.
@ 1998 by Spyglass, Inc.
<HTML> <!-Copyright 1998 Spyglass --> <HEAD> <T ITL E;>Spyg lass, Inc. I Making Devices Work with the Web<fTITLE> <meta name="Description" content= "Spyglass is the leading provider of Internet expertise, software and services for making devices work with the Web. Spyglass solutions allow our customers to unleash the power of the Internet."> <meta name=" Keywords" content=" Spyglass Spyglass, SurfWatch, Professional Services, NASDAQ:SPYG, SPYG, Device Mail, DeviceMail, ThinGUI Library, Device Mosaic, Remote Mosaic, MicroServer, Prism, embedded server, NetHopper, Mobile Forms Database for Windows CE, strategic internet consulting, product service design, implementation, planning, custom application development, diagnostics, content services, porting, integration, QA, Quality Assurance, testing, training, installation, support services, internet software, consulting, software engineering, solutions provider, custom product development, RTOS, real time Real-time operating systems, embedded systems, content conversion, web device, browsers, internet appliance, internet television, wirelesss data services, email, email, content filtering, non-PC devices, scalable embedded browsers servers, Java, p-Java, personal Java, Windows CE development "> <meta hftp-equiv=Window-target" Content="_top"> <STYLE TYPE="text1css"> SIDEBAR (font-size: 11 px; text-deco rat ion:no ne; font-weight:medium; font-family:
verdana, arial, helvetica, sans-serif;) </STYLE> </head> <table border=O cellpadding=0 cellspacing=O width=580> <tr> <! row 1> <td width=200 valign=top> <img width=200 height=45 src="/imagesAogo.gif"> <br> </td> <td width=380 valign=top rowspan=2> <img border=O width=380 height=24 src="Amages/tag.giP><br> -4S- I I <img usemap="#mainnavmap" border=O width=380 height=51 src="Amages1navhome.gif"><br> </td> </tr> <tr> <! row 2> <td width=200 valign=top> <img width=200 height=60 s rc="Amages/leftc u rve home. gif "> <br> </td> </tr> <tr> <! row 3> <td width=200 valign=top> <table cellspacing=O cellpadding=O border=O width=200> <tr> <! row 4> <td width=1 0 valign=top bgcolor='#003366"> <! item 1 > <img width=1 0 height=1 src='images/clear.gif"><br> </td> <td width=10 valign=top> <! item 2> <img width=1 0 height=1 src="images/clear.gif"><br> </td> <td width=145 valign=top align=right> <! item 3> <img width=145 height=25 src="imagesAatestnews.gif"><br> Latest News items here - limit 3 --><DIV ID="news"> <font face="Verdana, Arial, Helvetica" size="2"> <! cell 11> <a href="/newsflash/releases/1 13098swwin98.html" class=SIDEBAR>Afga To Partner with Spyglass on Advanced TV Font Rendering <IMG SRC="images/Arrow-rt2.gif"WIDTH=9 HEIGHT=9 BORDER=O hspace=3 align=middle ALT2Go"></a><br><br> <a href="/newsflash/releases/1 11998swpccomputing.html" class=S I DEBAR > Spyglass Ships New Version of Device Mosaic<IMG SRC="images/Arrow,_rt2. gif" WIDTH=9 HEIGHT=9 BORDER=O hspace=3 align=middle ALT="Go"></a><br><br> <a href="/newsflash/releases/i 1 169&wince.htm1" class=SIDEBAR>Device Mail 3.1 Embedded Email Client Announced<IMG SRC='images/Arrow_rt2.gif" WIDTH=9 HEIGHT=9 BORDER=O hspace=3 align=middle ALT="Go"></a><br><br> </font> </DIV> <!-- end Latest News items --> </td> <td width=35 valign=top> <img width=35 height=1 src='images/cIear.gif"><br> </td> </tr> <tr> <td width=200 valign=top colspan=4> <img width=200 height=35 src=rimages/bottomnavhome.gif"><br> <img width=165 height=128 src="Amages/bottombunhome4.gif" border="O" use map="# uti litymap><br> </td> </tr> </table> </html> Table 17.
FIG. I I is a block diagram 146 illustrating exemplary converted output from the screen display of FIG. 10 on an exemplary first wireless device 12. The text 144 from the "Latest News" section of the screen display 142 (FIG. 10) is displayed on a wireless display 148 on the exemplary first wireless device 12 (FIG. 11). The exemplary electronic document displayed in FIG. 10 is the exemplary HTML document from Table 17. The exemplary converted output displayed on the wireless display 148 is a WML card from a WML document. The HTML document used to create the screen display 142 from FIG. 10 is converted with the one or more of the methods and the system of preferred embodiments of the present invention and displayed on the wireless display 148 as a WML card on first wireless device 12. Other text from the "Latest News" section of the screen display 142 may be displayed with additional WML cards.
As an example, a user desires to see text 144 from the "Latest News" section of the screen display 142 (FIG. 10). The text 144 (FIG. 10) from the "Latest News" section is part of a table, and a table element was from a first set of selected document elements from a first original electronic document. Method 24 (FIG. 2) could be used with Method 40 (FIG. 3) at Step 28 of Method 24 to produce the output on the wireless display 148 of FIG. 11. In such an embodiment, the output on the wireless display 148 of FIG. 11 may be the first WML card 52 (FIG. 4) displayed including text from the original table since the HTML TABLE element appeared a first element the first set of selected document elements (e.g., Table 6). Thus, a logical sequencing associated with the original HTML document (e. g., Table 17) is maintained.
As another example, a user desires to see text 144 from the "Latest News" section of the screen display 142 (FIG. 10). Since the text 144 (FIG. 10) from the "Latest News" I section is part of a table, Method 24 (FIG. 3) could be used with Method 62 (FIG. 5) at Step 28 of Method 24 to produce the output on the wireless display 148 of FIG. 11. A DOM would be created and multiple WML cards are created, using the DOM including a WML card for tables (Table 6). In such an embodiment, the output on the wireless display 148 of FIG. 11 may be the next+2 WML card 118 (FIG. 7) for tables, after a user has already selected the item "3. TABLES" from the first WML card 112 (FIG. 7).
As yet another example, a user desires to see text 144 from a first item from the "Latest News" section of the screen display 142 (FIG. 10). Since the text 144 (FIG. 10) from the "Latest News" section is part of a table, Method 24 (FIG. 2) could be used with Method 124 (FIG. 8) at Step 28 of Method 24 to produce the output on the wireless display 148 of FIG. 11. An appropriate extraction expression 138 (FIG. 9) (e.g., document. a] I. tags. ("TABLE"). item(3).rows (4). cel Is (1). text) would be created at Step 126 of Method 124 (FIG. 8) to extract text from the first item from the "Latest News" section of the screen display 142 from the original table (e.g., Table 17). The first item would appear on the first WML card 140 (FIG. 9). Similar expressions could also be created to extract other items (e.g., 2 "d or 3 d items) from the "Latest News" table. Such items would be displayed on other WML cards in the WML card deck 142 (FIG. 9).
Preferred embodiments of the present invention were illustrated with three examples for text from an exemplary table. However, the output on the wireless display 148 of FIG. 11 could also be produced using preferred embodiments of the present invention for other than table data, and the present invention is not limited to displaying table data. In exemplary preferred embodiments of the present invention, the methods
and system are used to allow a wireless device to request an original electronic document (e.g., a Hyper Text Markup Language document) and receive a converted electronic document (e.g., a Wireless Markup Language document) suitable for display on the wireless device. The converted electronic document suitable for display on the wireless device may provide increased satisfaction for a user of a wireless device. Preferred embodiment of the present invention are described with respect to wireless devices. However, the present invention is not limited to wireless devices, and other network devices, that are capable of using the WAP or other wireless markup languages, including those network devices connected to a network with a wire or cable, could also be used to practice the present invention.
In view of the wide variety of embodiments to which the principles of the present invention can be applied, it should be understood that the illustrated embodiments are exemplary only, and should not be taken as limiting the scope of the present invention. For example, the steps of the flow diagrams may be taken in sequences other than those described, and more or fewer elements may be used in the block diagrams.
The claims should not be read as limited to the described order or elements unless stated to that effect. Therefore, all embodiments that come within the scope of the following claims and equivalents thereto are claimed as the invention.
- 5Z- I

Claims (43)

WE CLAIM:
1. In a network with a plurality of network devices, a method of content conversion, comprising the following steps:
receiving a request for an original electronic document on a second network device on a first network, from a first wireless device on the first network, wherein the request includes a device type for the first wireless device; dividing the original electronic document into a plurality of document elements, including textual elements and non-textual elements for a first markup language used to create the original electronic document, for converting the-first markup language into a second wireless markup language; converting one or more of the original textual elements from the original electronic document in the first markup language into converted textual elements for the second wireless markup language; converting one or more of the non-textual elements from an original non- textual format for the first markup language into a converted non-textual format for the second wireless markup language; creating a converted electronic document from the converted textual elements and the converted non-textual elements based on the device type for the first wireless device from the request; and sending the converted electronic document from the second network device to the first wireless device in response to the request for the original electronic document.
2. A computer readable medium having stored therein instructions for causing a central processing unit to execute the method of Claim 1.
3. The method of Claim 1 wherein the first wireless device is a wireless telephone and the second network device is a Wireless Application Protocol gateway.
4. The method of Claim I wherein the first markup language is Hyper Text Markup Language and the second wireless markup language is Wireless Markup Language.
5. The method of Claim I wherein the step of dividing the original electronic document into a plurality of document elements includes dividing the original electronic document into a plurality of subdocument elements for a second wireless markup language, wherein the plurality of sub-document elements for the second wireless markup language maintain a logical sequencing associated with the plurality of document elements from the original electronic document.
6. - The method of Claim I wherein step of dividing the original electronic document into a plurality of document elements includes dividing the original electronic document into a plurality of documents elements using a Document Object Model.
7. The method of Claim I wherein the step of dividing the original electronic document into a plurality of document elements includes dividing the original electronic 11 I document into a plurality of sub-documents for a second wireless markup language using a set of document element categories for the first markup language.
8. The method of Claim I wherein the step of dividing the original electronic document into a plurality of document elements includes dividing the original electronic document into a plurality of subdocuments for a second wireless markup language using extraction expressions from a data mining language.
9. The method of Claim I wherein the step of converting one or more of the nontextual elements from an original non-textual format for the first markup language into a converted non-textual format for the second wireless markup language includes converting original image formats in the original electronic document into a Wireless Application Protocol image format for Wireless Markup Language.
10. The method of Claim I wherein the step of creating a converted electronic document from the converted textual elements and the converted non-textual elements includes creating a Wireless Markup Language electronic document with a plurality of cards comprising a Wireless Markup Language deck of cards for display on the first wireless device.
11. The method of Claim I further comprising:
sending the request for the original electronic document from the second network device to a third network device on a second network to retrieve the original electronic document; and receiving the original electronic document on the second network device on the first network from the third network device on the second network.
12. The method of Claim I wherein the step of creating a converted electronic document from the converted textual elements and the converted non-textual elements includes: consulting a database associated with the second network device to deten-nine device preferences for the first wireless network device; and modifying the converted textual elements and the converted non-textual elements, based on the device preferences for the first wireless network device.
13. The method of Claim I wherein the request is a Hyper Text Transfer Protocol request.
14. The method of Claim I wherein the step of converting one or more of the original textural elements includes converting at least one but less than all of the original textural elements.
I
15. The method of Claim 1, wherein the step of converting one or more of the original non-textural elements includes converting at least one but less than all of the original non-textural elements.
16. The method of claim I wherein the step of sending the converted document includes determining if the first wireless device has enough memory to store for the whole converted document, and if not, splitting the converted electronic document into a plurality of sub-documents; and sending the plurality of sub-documents instead of the whole converted document.
17. In a network with a plurality of network devices, a method of electronic document division, comprising the following steps: selecting a first set of document elements in a first markup language for dividing an original electronic document into logical sub-documents in a second wireless markup language, wherein the first set of document elements includes textual elements and nontextual elements from the first markup language; parsing the original electronic document for document elements from the first set of elements; dividing the original electronic document into a plurality of sub-documents for a second wireless markup language using parsed document elements from the first set of elements, wherein the plurality of sub-documents for the second wireless markup language maintain a logical sequencing associated with the parsed document elements from the original electronic document.
18. A computer readable medium having stored therein instructions for causing a central processing unit to execute the method of Claim 17.
19. The method of Claim 17 wherein the first markup language includes Hyper Text Markup Language and the second wireless markup language includes Wireless Markup Language.
20. The method of Claim 17 wherein the plurality of sub-documents for the second wireless markup language includes a plurality of Wireless Markup Language cards.
2 1. The method of Claim 17 wherein the first set of elements in a first markup language is any of an IN4G and OBJECT elements with a USEMAP attribute, NOFRAMES element, FRAME element, FIELDSET element, IFRAME element, NOSCRIPT element, TBODY element, or a TABLE element, from Hyper Text Markup Language.
I
22. In a network with a plurality of network devices, a method of electronic document division, comprising the following steps:
(a) selecting a first set of categories for a first markup language for dividing an original electronic document into a plurality of subdocuments in a second wireless markup language, wherein an individual category in the first set of categories is associated with one or more document elements from the first markup language; (b) creating a structured model for the ofiginal electronic document; (c) parsing the structured model for one or more document elements from the original electronic document that are included in the first set of categofies; (d) adding an individual category to a first list associated with a first subdocument for a second wireless markup language; (e) adding parsed one or more document elements to a next list associated with the individual category on a next sub-document for the second wireless markup language; (f) creating an association between the first sub-document and the next subdocument, wherein the association includes state inforrnation; and (g) repeating steps (c) through (f) until the end of the structured model for the original electronic document to divide the ofiginal electronic document into a plurality of sub-documents for the second wireless markup language.
23. A computer readable medium having stored therein instructions for causing a central processing unit to execute the method of Claim 22.
-5.1-
24. The method of Claim 22 wherein the first set of categories for a first markup language includes a category for any of links, text, tables input fields, page selections, links from images, images or navigation.
25. The method of Claim 22 wherein the first markup language is Hyper Text Markup Language and the second wireless markup language is Wireless Markup Language.
26. The method of Claim 22 wherein step (b) creating a structured model for the original electronic document includes creating a document object model for the original electronic document.
27. The method of Claim 22 wherein step (d) adding an individual category to a first list associated with a first sub-document for a second wireless markup language includes adding an individual category to a first list associated with the a first card for Wireless Markup Language.
28. The method of Claim 22 wherein step (e) adding the parsed one or more document elements to a next'list associated with the individual category on a next subdocument for the second wireless markup language includes adding parsed one or more document elements to a next list associated with the individual category on a next card for Wireless Markup Language.
I
29. The method of Claim 22 wherein step (f) creating an association between the first sub-document and the next sub-document includes creating a Wireless Markup Language link between a first card and a next card in a Wireless Markup Language deck of cards.
30. In a network with a plurality of network devices, a method of electronic document division, comprising the following steps:
creating a set of extraction expressions to extract one or more document elements from an original electronic document; applying the set of extraction expressions to the original electronic document to extract one or more document elements wherein the one or more document elements include textual and non-textual document element; and dividing the original electronic document into a plurality of sub- documents for a second wireless markup language using the extracted document elements.
3 1. A computer readable medium having stored therein instructions for causing a central processing unit to execute the method of Claim 30.
32. The method of Claim 30 wherein the step of applying the set of extraction expressions to the original electronic document includes applying the set of extraction expressions to a document object model constructed for the original electronic document.
33. The method of Claim 31 wherein the set of extraction expression are expressions from a data mining language.
34. A system for content conversion, comprising in combination: a wireless gateway for accepting requests for original electronic documents from a wireless device; a content converter application for converting an original electronic document in a first markup language into a second converted document in a second wireless markup language suitable for display on a wireless device; and a database for storing device preferences for a plurality of wireless device types, wherein the device preferences are used to further convert an original electronic document in a first markup language into a second converted document in a second wireless markup language suitable for display on a specific type of wireless device.
35. Software for causing a central processing unit to execute the method of claim 1.
36. Software for causing a central processing unit to execute the method of claim 17.
37. Software for causing a central processing unit to execute the method of claim 22.
38. Software for causing a central processing unit to execute the method of claim 30.
39. A method of content conversion substantially as herein described and with reference to the accompanying drawings.
40. A method of electronic document division substantially as herein described and with reference to the accompanying drawings.
41. A system for content conversion substantially as herein described and with reference to the accompanying drawings.
42. A computer readable medium substantially as herein described and with reference to the accompanying drawings.
43. Software substantially as herein described and with reference to the accompanying drawings.
I
GB9930699A 1998-12-28 1999-12-24 Method and system for converting content of electronic data for wireless devices Expired - Lifetime GB2347329B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US22175098A 1998-12-28 1998-12-28

Publications (3)

Publication Number Publication Date
GB9930699D0 GB9930699D0 (en) 2000-02-16
GB2347329A true GB2347329A (en) 2000-08-30
GB2347329B GB2347329B (en) 2004-04-07

Family

ID=22829208

Family Applications (1)

Application Number Title Priority Date Filing Date
GB9930699A Expired - Lifetime GB2347329B (en) 1998-12-28 1999-12-24 Method and system for converting content of electronic data for wireless devices

Country Status (6)

Country Link
JP (1) JP2000194612A (en)
DE (1) DE19962192A1 (en)
FI (1) FI19992746A (en)
GB (1) GB2347329B (en)
SE (1) SE524391C2 (en)
WO (1) WO2000039666A1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001078351A2 (en) * 2000-04-10 2001-10-18 British Telecommunications Public Limited Company Provision of secure access for telecommunications system
EP1211860A1 (en) * 2000-12-01 2002-06-05 BRITISH TELECOMMUNICATIONS public limited company Provision of secure access for telecommunications system
GB2370450A (en) * 2000-12-19 2002-06-26 Voxsurf Ltd Messaging protocol
GB2371896A (en) * 2000-09-26 2002-08-07 Volantis Systems Ltd Web Server
GB2376115A (en) * 2001-05-29 2002-12-04 Alien Dog Star Invest Ltd Indicator driven by wireless link from computer
GB2376317A (en) * 2001-06-04 2002-12-11 Gordon Ross Methods of iterative cycles of categorisation with persistent connectivity for information exchange and transactions within multi-device environments
GB2400472A (en) * 2001-10-15 2004-10-13 Nec Corp Mobile telephone system providing a web site created using a mobile phone

Families Citing this family (137)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2347822B (en) * 1999-02-22 2003-09-03 Nokia Mobile Phones Ltd Display function in a mobile telephone
EP1071024A3 (en) * 1999-07-23 2002-07-17 Phone.Com Inc. Method and apparatus for splitting markup flows into discrete screen displays
FI110983B (en) * 1999-08-30 2003-04-30 Sonera Oyj Publication of service content
FI19991845A (en) * 1999-08-31 2001-02-28 Nokia Corp Content filtering in the wireless system gateway
US6950881B1 (en) 1999-11-02 2005-09-27 Mshift, Inc. System for converting wireless communications for a mobile device
EP1232625A1 (en) * 1999-11-09 2002-08-21 Nokia Corporation Transferring fitted content for a user from a server
AU1293501A (en) * 1999-11-24 2001-06-04 Jean-Francois Beuchat Telecommunication interface
CA2327222A1 (en) * 1999-12-03 2001-06-03 Research In Motion Limited Virtual machine web browser
US9781257B2 (en) 2000-01-19 2017-10-03 Sony Mobile Communications Ab Technique for obtaining caller-originated alert signals in IP-based communication sessions
US8400946B2 (en) 2000-01-19 2013-03-19 Sony Corporation System and method for sharing common location-related information between communication devices
US8548010B2 (en) 2000-01-19 2013-10-01 Sony Corporation Method and apparatus for event-based synchronization of information between communication devices
SG99886A1 (en) * 2000-02-24 2003-11-27 Ibm System and method for collaborative multi-device web browsing
US6311180B1 (en) * 2000-03-28 2001-10-30 Linx Data Terminals, Inc. Method for mapping and formatting information for a display device
US7072984B1 (en) 2000-04-26 2006-07-04 Novarra, Inc. System and method for accessing customized information over the internet using a browser for a plurality of electronic devices
US7747782B2 (en) 2000-04-26 2010-06-29 Novarra, Inc. System and method for providing and displaying information content
US20040049737A1 (en) * 2000-04-26 2004-03-11 Novarra, Inc. System and method for displaying information content with selective horizontal scrolling
US7500188B1 (en) 2000-04-26 2009-03-03 Novarra, Inc. System and method for adapting information content for an electronic device
JP3822024B2 (en) 2000-05-24 2006-09-13 シャープ株式会社 Data transfer device
EP1305690B1 (en) * 2000-06-05 2009-03-25 Unipier Mobile Ltd. Method of navigating through content of cellular network
KR100460276B1 (en) * 2000-06-10 2004-12-04 유미특허법인 An internet service apparatus and service method
EP1172722A3 (en) * 2000-07-12 2003-08-06 Matsushita Electric Industrial Co., Ltd. Display device
KR20020006403A (en) * 2000-07-12 2002-01-19 구자관 The method of dowment conversion maked use of handphone at that time real-time connection of internet
KR20020006402A (en) * 2000-07-12 2002-01-19 구자관 Auto-System of internet real-time connection maked use of handphone
KR20020006722A (en) * 2000-07-13 2002-01-26 권혁 Method of reformatting webpage and method of providing webpage using the same
JP2002032293A (en) * 2000-07-18 2002-01-31 Sun Corp Game information supply device
KR20020010227A (en) * 2000-07-28 2002-02-04 정석현 A method for making phone page of wireless internet
KR20020010429A (en) * 2000-07-28 2002-02-04 정석현 A reformatting system and method for wireless internet site
AU2001277660A1 (en) 2000-08-04 2002-02-18 Mobileaware Technologies Limited An e-business mobility platform
GB2366689A (en) * 2000-08-11 2002-03-13 Nokia Mobile Phones Ltd Server image display on a mobile
JP2002063193A (en) * 2000-08-15 2002-02-28 Kurisutaruuddo:Kk Device and method for converting program language, and recording medium with program language conversion program recorded thereon
WO2002017136A1 (en) * 2000-08-23 2002-02-28 Unisys Limited System and method for digital information acquisition and distribution according to user profiles
GB2366633A (en) * 2000-09-06 2002-03-13 Argo Interactive Group Plc Analysing hypertext documents
KR20020020396A (en) * 2000-09-08 2002-03-15 정규석 A Method for HTML to xHTML Conversion and Tranmission in Mobile Communication Circumstances
KR100369891B1 (en) * 2000-09-08 2003-01-29 (주) 엘지텔레콤 system and management method thereof for wireless internet contents service in differnt communcation company network
DE60001941T2 (en) 2000-09-11 2004-02-12 Mediabricks Ab Process for providing media content over a digital network
EP1187481B1 (en) 2000-09-11 2008-04-02 Handmark Europe AB A method for dynamic caching
US6826403B1 (en) 2000-09-12 2004-11-30 Phonepages Of Sweden Ab Method and system for identifying a user
US6938087B1 (en) 2000-09-12 2005-08-30 Hewlett-Packard Development Company, L.P. Distributed universal communication module for facilitating delivery of network services to one or more devices communicating over multiple transport facilities
JP3773770B2 (en) * 2000-09-13 2006-05-10 シャープ株式会社 Hypertext display device
EP1317851A2 (en) * 2000-09-15 2003-06-11 Siemens Aktiengesellschaft Method and device for the control of multimedia information and communication services
DE10046339C2 (en) * 2000-09-19 2002-11-07 Siemens Ag Method of operating a communication system
US7613810B2 (en) 2000-09-27 2009-11-03 Nokia Inc. Segmenting electronic documents for use on a device of limited capability
EP1330723A4 (en) * 2000-09-27 2009-04-01 Nokia Inc Configurable transformation of electronic documents
KR100418200B1 (en) * 2000-09-29 2004-02-11 트라이콤텍 주식회사 Gateway/server integration system for servicing an wap based mobile wireless internet service
US7190976B2 (en) * 2000-10-02 2007-03-13 Microsoft Corporation Customizing the display of a mobile computing device
ES2178567B1 (en) * 2000-10-04 2004-09-16 Lanetro, S.A. SYSTEM FOR COMMUNICATION OF MOBILE TERMINALS WITH INTERNET OR OTHER NETWORKS.
DE10049940A1 (en) * 2000-10-06 2002-04-18 Plecto Ag Transformation connector for converting data from a proprietary format to a commercial format before it is transmitted over a network, where typically the transfer format is an XML language, so data can easily be transmitted
US6834297B1 (en) 2000-10-06 2004-12-21 Redline Networks, Inc. Web resource transfer acceleration system and method
US7260536B1 (en) 2000-10-06 2007-08-21 Hewlett-Packard Development Company, L.P. Distributed voice and wireless interface modules for exposing messaging/collaboration data to voice and wireless devices
JP2004511869A (en) * 2000-10-10 2004-04-15 エムシフト インコーポレイテッド System for converting wireless communication of a mobile device
US20020161928A1 (en) * 2000-10-10 2002-10-31 Awele Ndili Smart agent for providing network content to wireless devices
SE517166C2 (en) * 2000-10-10 2002-04-23 Print Dreams Europe Ab Mobile system for accessing and visualizing standard internet content and services
JP4025498B2 (en) 2000-10-18 2007-12-19 日本電気株式会社 Object filtering method and client device using the same
JP2002135438A (en) * 2000-10-19 2002-05-10 Japan Science & Technology Corp Computer network remote supervisory system by mobile phone terminal
JP2002132645A (en) * 2000-10-27 2002-05-10 Nippon Telegr & Teleph Corp <Ntt> Information providing method and information providing system
US7801958B1 (en) * 2000-10-30 2010-09-21 Nokia Corporation Content converter portal
DE10054905A1 (en) * 2000-11-06 2002-05-08 Fileants Com Ag Method for exchanging data between a first data processing device and a second data processing device, device for carrying out the method, computer program for carrying it out and data carrier on which one is stored
KR20020036447A (en) * 2000-11-09 2002-05-16 정창우 Web-page converter and method for mobile web clients using semantic database
US7246084B1 (en) * 2000-11-14 2007-07-17 E-Centives, Inc. Approach for processing electronic orders
US20020086706A1 (en) * 2000-11-15 2002-07-04 Ming-Feng Chen Mobile device server
MY127113A (en) * 2000-11-17 2006-11-30 Intel Corp Customizing tabular data for wireless handset units
FI113898B (en) * 2000-11-21 2004-06-30 Nokia Corp Process for producing content in a wireless communication device
US20020099829A1 (en) * 2000-11-27 2002-07-25 Richards Kenneth W. Filter proxy system and method
JPWO2002045408A1 (en) * 2000-11-29 2004-04-08 株式会社フレックス・ファーム Content provision method
JP2002202936A (en) * 2000-12-18 2002-07-19 Kizna Corp Information collecting server, information collecting method and recording medium
US6407680B1 (en) 2000-12-22 2002-06-18 Generic Media, Inc. Distributed on-demand media transcoding system and method
SG90203A1 (en) * 2000-12-29 2002-07-23 Yongzhong Wang Method and system for browsing hypertext content from a wap device by means of a server-side application
SE519936C2 (en) * 2001-01-24 2003-04-29 Ericsson Telefon Ab L M Device and procedure related to session management in a portal structure
SE0100191L (en) * 2001-01-24 2002-07-25 Ericsson Telefon Ab L M An apparatus and method relating to accessing applications / services
SE0100188L (en) * 2001-01-24 2002-07-25 Ericsson Telefon Ab L M A device and method relating to access of end-user stations in a portal structure
SE0100190L (en) * 2001-01-24 2002-07-25 Ericsson Telefon Ab L M An arrangement and method for presentation customer customization in a portal structure.
AU2002226550A1 (en) * 2001-01-26 2002-08-06 Pogo Mobile Solutions Limited A method of data compression
WO2002061974A1 (en) * 2001-01-31 2002-08-08 Net Time Corporation Data communication system, data communication method, data transmission device, personal digital assistant and portable device
US7305697B2 (en) 2001-02-02 2007-12-04 Opentv, Inc. Service gateway for interactive television
US7017175B2 (en) 2001-02-02 2006-03-21 Opentv, Inc. Digital television application protocol for interactive television
US7669212B2 (en) 2001-02-02 2010-02-23 Opentv, Inc. Service platform suite management system
US20020112009A1 (en) * 2001-02-12 2002-08-15 Capers Karen L. Method and system for providing data applications for a mobile device
US7546527B2 (en) 2001-03-06 2009-06-09 International Business Machines Corporation Method and apparatus for repurposing formatted content
EP1241856A1 (en) * 2001-03-12 2002-09-18 März, Christian Method and device for wireless communications
WO2002076058A2 (en) * 2001-03-21 2002-09-26 Research In Motion Limited Method and apparatus for providing content to media devices
JP2004527041A (en) 2001-03-23 2004-09-02 アリザン コーポレイション System and method for content delivery over a wireless communication medium to a portable computing device
US7039643B2 (en) * 2001-04-10 2006-05-02 Adobe Systems Incorporated System, method and apparatus for converting and integrating media files
JP2003030039A (en) * 2001-04-12 2003-01-31 Matsushita Electric Ind Co Ltd Structured document distribution device and structured document distribution system
JP4465577B2 (en) * 2001-04-19 2010-05-19 ソニー株式会社 Information processing apparatus and method, information processing system, recording medium, and program
US20020156921A1 (en) * 2001-04-19 2002-10-24 International Business Machines Corporation Automatic backup of wireless mobile device data onto gateway server while device is idle
JP2002342220A (en) * 2001-05-18 2002-11-29 Flex-Firm Inc Method of providing contents
EP1260914A1 (en) 2001-05-23 2002-11-27 Mediabricks Ab A method for optimizing utilization of client capacity
KR20020093162A (en) * 2001-05-29 2002-12-16 박미숙 The Multi-Browser Support Meta Mark-up Language and Its Browser System
EP1271877B1 (en) * 2001-06-22 2008-11-05 Microsoft Corporation Wireless browser
US20030093565A1 (en) * 2001-07-03 2003-05-15 Berger Adam L. System and method for converting an attachment in an e-mail for delivery to a device of limited rendering capability
KR100442524B1 (en) * 2001-07-10 2004-07-30 (주) 엘지텔레콤 A mobile telecommunication system of transmitting java file
DE10134095A1 (en) * 2001-07-13 2003-01-30 Siemens Ag Provision of web page information to mobile phone and PDA users via a spoken interface by transcoding voice information into mark-up language so that a web page can be selected and returned to the mobile phone
DE10136439A1 (en) * 2001-07-26 2003-02-13 Bosch Gmbh Robert information system
KR100466436B1 (en) * 2001-10-31 2005-01-14 (유)엔와이텔 System and Method for converting and transmitting data
KR100438554B1 (en) * 2001-11-30 2004-07-03 엘지전자 주식회사 Wml card rayout method of wireless terminal
US20040110490A1 (en) 2001-12-20 2004-06-10 Steele Jay D. Method and apparatus for providing content to media devices
KR20030057241A (en) * 2001-12-28 2003-07-04 유비퀵스(주) Web-page converter and method for mobile web clients considering repeated grammatical pattern
KR20030063559A (en) * 2002-01-22 2003-07-31 주식회사 엠넷소프트 Method for converting data through extensible markup language
IES20030062A2 (en) * 2002-02-04 2003-08-06 Mobileaware Technologies Ltd Document transformation
US20040024580A1 (en) * 2002-02-25 2004-02-05 Oak Technology, Inc. Server in a media system
JP2003271508A (en) * 2002-03-14 2003-09-26 Ntt Comware Corp Contents conversion system for portable terminal and contents conversion method
KR100467005B1 (en) * 2002-03-15 2005-01-24 김영신 Wireless Application Service Provider system
JP2003271892A (en) * 2002-03-18 2003-09-26 Nippon Telegraph & Telephone East Corp Automatic scenario production system, automatically scenario producing method, computer program, and recording medium with the program recorded thereon
KR100425428B1 (en) * 2002-03-29 2004-04-03 보라테크 주식회사 Processing method of office document for information terminal
KR20030088928A (en) * 2002-05-15 2003-11-21 정보통신연구진흥원 Custom made information providing system and method thereof
KR20030095868A (en) * 2002-06-15 2003-12-24 (주) 고미드 Web-contents display apparatus and method in mobile communication terminal such as pda
KR20040011000A (en) * 2002-07-26 2004-02-05 주식회사 미디어플래닛 Image conversion system for providing optimized image for display terminal
KR20040037482A (en) * 2002-10-28 2004-05-07 주식회사 엘지텔레콤 System and method for searching cable contents on wireless using contents reformatter
KR100461019B1 (en) * 2002-11-01 2004-12-09 한국전자통신연구원 web contents transcoding system and method for small display devices
EP1422637A1 (en) * 2002-11-25 2004-05-26 Culture Com. Technology (Macau) Ltd. Data display method and system
US8484553B2 (en) * 2003-05-05 2013-07-09 Arbortext, Inc. System and method for defining specifications for outputting content in multiple formats
US7356332B2 (en) 2003-06-09 2008-04-08 Microsoft Corporation Mobile information system for presenting information to mobile devices
US7788681B1 (en) 2003-09-16 2010-08-31 Vignette Software, LLC System and method for incorporating web services in a web site
DE102004005188A1 (en) * 2004-02-02 2005-09-01 Vodafone Holding Gmbh Transmission and reproduction of messages in mobile networks
JP2006126890A (en) * 2004-10-26 2006-05-18 Programmers' Factory Inc Content providing system, its method, and browser program
US7610400B2 (en) 2004-11-23 2009-10-27 Juniper Networks, Inc. Rule-based networking device
DE102005013639A1 (en) * 2005-03-24 2006-11-16 Dynetic Solutions Gmbh Method and system for outputting data
US7725813B2 (en) 2005-03-30 2010-05-25 Arizan Corporation Method for requesting and viewing a preview of a table attachment on a mobile communication device
EP1708098A1 (en) * 2005-03-30 2006-10-04 Arizan Corporation Method for Requesting and Viewing a Preview of a Table Attachment on a Mobile Communication Device
KR100638224B1 (en) 2005-06-20 2006-10-27 엘지전자 주식회사 Mobile communication terminal exchanging form of xml and its operating method
EP1896973A1 (en) * 2005-06-30 2008-03-12 Onmobile Global Limited Method and server system for transferring an object to a wireless device from a predetermined web page
KR100835652B1 (en) * 2005-09-07 2008-06-09 에스케이 텔레콤주식회사 Method and System for Customizing User Interface by Editing Multimedia Content
CA2679345A1 (en) * 2006-02-27 2007-08-30 Dream To Reality Co., Ltd A document delivery system and method there of
WO2008023392A2 (en) * 2006-08-25 2008-02-28 Ajay Rajasekhar A method and system for providing access of documents to one or more mobile devices
KR20080024734A (en) 2006-09-14 2008-03-19 삼성전자주식회사 Apparatus and method for composing web document and apparatus for setting web document array
US10452756B2 (en) * 2006-09-29 2019-10-22 Oath Inc. Platform for rendering content for a remote device
KR100817580B1 (en) 2006-10-27 2008-03-31 에스케이 텔레콤주식회사 System and method for providing media contents
FR2908578B1 (en) * 2006-11-10 2011-05-06 Archos METHOD AND SYSTEM FOR PERFORMING TRANSACTIONS FROM PORTABLE ELECTRONIC DEVICES CONNECTED TO A COMMUNICATION NETWORK, AND ASSOCIATED PORTABLE ELECTRONIC APPARATUS
KR100817582B1 (en) 2006-11-29 2008-03-31 에스케이 텔레콤주식회사 Mobile web service method, proxy server and mobile terminal for the same
KR100859270B1 (en) * 2006-11-30 2008-09-19 건국대학교 산학협력단 Providing method and system with web contents using web page division based on mobile internet
US8181107B2 (en) * 2006-12-08 2012-05-15 Bytemobile, Inc. Content adaptation
DE102007063011B4 (en) 2007-12-21 2023-10-12 Volkswagen Ag Navigation system for a vehicle
CA2671626C (en) 2008-07-09 2013-09-24 Research In Motion Limited Optimizing the delivery of formatted email messages
GB2483633A (en) * 2010-09-06 2012-03-21 Mobank Ltd Transaction processing using a proxy
DE102010056093A1 (en) * 2010-10-22 2012-04-26 Txtr Gmbh System and method for displaying digital readable content on a mobile display
JP2013065153A (en) * 2011-09-16 2013-04-11 Fujitsu Marketing Ltd Document data providing device and program thereof
US9521176B2 (en) 2014-05-21 2016-12-13 Sony Corporation System, method, and computer program product for media publishing request processing

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0718783A1 (en) * 1994-12-20 1996-06-26 Sun Microsystems, Inc. A computer implemented method and system for information retrieval
WO1998036344A2 (en) * 1997-01-30 1998-08-20 Lextron Systems, Inc. Simplified-file hyper text protocol
WO1999035595A2 (en) * 1997-12-31 1999-07-15 Sonera Oyj Method and system for browsing hypertext pages using a mobile station
WO1999061984A1 (en) * 1998-05-29 1999-12-02 Palm, Inc. Method and apparatus for wireless internet access
EP0969389A2 (en) * 1998-06-30 2000-01-05 International Business Machines Corporation Method for generating display control information and computer

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04181337A (en) * 1990-11-15 1992-06-29 Hokkaido Nippon Denki Software Kk File transfer processing system
JPH05274229A (en) * 1992-03-25 1993-10-22 Toshiba Corp Data converting system for network system and network system for the data converting system
US5870549A (en) * 1995-04-28 1999-02-09 Bobo, Ii; Charles R. Systems and methods for storing, delivering, and managing messages
US5742762A (en) * 1995-05-19 1998-04-21 Telogy Networks, Inc. Network management gateway
US6011546A (en) * 1995-11-01 2000-01-04 International Business Machines Corporation Programming structure for user interfaces
US5809415A (en) * 1995-12-11 1998-09-15 Unwired Planet, Inc. Method and architecture for an interactive two-way data communication network
US5918013A (en) * 1996-06-03 1999-06-29 Webtv Networks, Inc. Method of transcoding documents in a network environment using a proxy server
JPH10143403A (en) * 1996-11-12 1998-05-29 Fujitsu Ltd Information management device and information management program storage medium
US5848415A (en) * 1996-12-18 1998-12-08 Unisys Corporation Selective multiple protocol transport and dynamic format conversion in a multi-user network
US5937041A (en) * 1997-03-10 1999-08-10 Northern Telecom, Limited System and method for retrieving internet data files using a screen-display telephone terminal
US5895471A (en) * 1997-07-11 1999-04-20 Unwired Planet, Inc. Providing a directory of frequently used hyperlinks on a remote server
US5968117A (en) * 1998-01-20 1999-10-19 Aurora Communications Exchange Ltd. Device and system to facilitate accessing electronic mail from remote user-interface devices

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0718783A1 (en) * 1994-12-20 1996-06-26 Sun Microsystems, Inc. A computer implemented method and system for information retrieval
WO1998036344A2 (en) * 1997-01-30 1998-08-20 Lextron Systems, Inc. Simplified-file hyper text protocol
WO1999035595A2 (en) * 1997-12-31 1999-07-15 Sonera Oyj Method and system for browsing hypertext pages using a mobile station
WO1999061984A1 (en) * 1998-05-29 1999-12-02 Palm, Inc. Method and apparatus for wireless internet access
EP0969389A2 (en) * 1998-06-30 2000-01-05 International Business Machines Corporation Method for generating display control information and computer

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001078351A3 (en) * 2000-04-10 2002-03-14 British Telecomm Provision of secure access for telecommunications system
WO2001078351A2 (en) * 2000-04-10 2001-10-18 British Telecommunications Public Limited Company Provision of secure access for telecommunications system
GB2371896B (en) * 2000-09-26 2005-11-09 Volantis Systems Ltd Web server
GB2371896A (en) * 2000-09-26 2002-08-07 Volantis Systems Ltd Web Server
US7739658B2 (en) 2000-09-26 2010-06-15 Volantis Systems Limited Web server for remote user devices service and web page generation
EP1211860A1 (en) * 2000-12-01 2002-06-05 BRITISH TELECOMMUNICATIONS public limited company Provision of secure access for telecommunications system
GB2370450A (en) * 2000-12-19 2002-06-26 Voxsurf Ltd Messaging protocol
GB2370450B (en) * 2000-12-19 2004-07-07 Voxsurf Ltd Messaging protocol
GB2376115A (en) * 2001-05-29 2002-12-04 Alien Dog Star Invest Ltd Indicator driven by wireless link from computer
GB2376115B (en) * 2001-05-29 2003-04-16 Alien Dog Star Invest Ltd Indicator driven by wireless link to computer
GB2376317A (en) * 2001-06-04 2002-12-11 Gordon Ross Methods of iterative cycles of categorisation with persistent connectivity for information exchange and transactions within multi-device environments
GB2400472B (en) * 2001-10-15 2006-03-15 Nec Corp Mobile telephone system
GB2400472A (en) * 2001-10-15 2004-10-13 Nec Corp Mobile telephone system providing a web site created using a mobile phone

Also Published As

Publication number Publication date
JP2000194612A (en) 2000-07-14
SE9904687L (en) 2000-06-29
WO2000039666A1 (en) 2000-07-06
DE19962192A1 (en) 2000-07-06
SE9904687D0 (en) 1999-12-21
SE524391C2 (en) 2004-08-03
FI19992746A (en) 2000-06-28
GB2347329B (en) 2004-04-07
GB9930699D0 (en) 2000-02-16

Similar Documents

Publication Publication Date Title
GB2347329A (en) Converting electronic documents into a format suitable for a wireless device
US6925595B1 (en) Method and system for content conversion of hypertext data using data mining
US7155672B1 (en) Method and system for dynamic font subsetting
CA2292336C (en) Systems, methods and computer program products for tailoring web page content in hypertext markup language format for display within pervasive computing devices using extensible markup language tools
US7747782B2 (en) System and method for providing and displaying information content
US7739658B2 (en) Web server for remote user devices service and web page generation
US7076534B1 (en) Server-side scripting that enables creation of customized documents for clients
US20030011631A1 (en) System and method for document division
GB2344197A (en) Content conversion of electronic documents
US20040049737A1 (en) System and method for displaying information content with selective horizontal scrolling
US20010042081A1 (en) Markup language paring for documents
JP5056523B2 (en) Display control apparatus, display control method, and display control program
KR100903528B1 (en) Segmenting electronic documents for use on a device of limited capability
US20080172396A1 (en) Retrieving Dated Content From A Website
WO2002044937A2 (en) Content conditioning method and apparatus
US20020107866A1 (en) Method for compressing character-based markup language files including non-standard characters
US20020107887A1 (en) Method for compressing character-based markup language files
US20010056497A1 (en) Apparatus and method of providing instant information service for various devices
WO2001073562A1 (en) Content server device
JP2002116983A (en) Method and system for converting web contents
KR20020041331A (en) Contents providing system
US20040179035A1 (en) Group administration of universal resource identifiers with asynchronous playback
KR20020041330A (en) Contents server device
TW452712B (en) Off-line reading method for hyperlink selection on Internet
Beszteri et al. Layout adaptation with XFrames and CSS

Legal Events

Date Code Title Description
732E Amendments to the register in respect of changes of name or changes affecting rights (sect. 32/1977)

Free format text: REGISTERED BETWEEN 20110915 AND 20110921

PE20 Patent expired after termination of 20 years

Expiry date: 20191223