BACKGROUND OF THE INVENTION1. Field of the Invention
The present invention relates to displaying information on a display screen, and more particularly to a web-browsing navigational tool for handheld computerized devices.
2. Related Art
With the advent of the Internet, it is increasingly common to display information, particularly Internet web pages, with connected, limited devices (“CLD's”) that are highly portable, and therefore limited in size and computational power. Typical examples of CLD's include small, handheld computerized devices such as a personal digital assistant (“PDA”) with or without built-in communication function, cellular telephone, and two-way pagers. Due to size and battery power constraints, the processor included in a CLD typically provides less computational power than a desktop computer, and therefore has limited resources for performing tasks such as processing instructions, and displaying information. Of course, the display screen for a CLD is typically smaller than the size of a desktop computer display screen. Therefore there is an increasing need to efficiently utilize the limited resources available to a CLD. Additionally, it may be desirable to provide a web-browsing tool for the small sized display screen of a CLD to navigate and display information efficiently in response to user inputs.
Referring toFIG. 1,information100 is shown, displayed in a single view, generated by a conventional web browser for adesktop display screen105. According to prior art, adisplay screen110, for aCLD190, is also shown, displaying aportion112 ofinformation100 displayed ondisplay screen105.Horizontal scroll bar115 andvertical scroll bar120 are used to control the relative position ofdisplay screen110 withininformation100. While it is possible to view all ofinformation100 ondisplay screen110 by movingsmall display screen110 around withininformation100, this arrangement is nevertheless problematic. For example, it may be difficult to correlate a first piece ofinformation100 displayed with indisplay screen110 in a first position with another piece ofinformation100 located several rows and/or columns away that is displayed with indisplay screen110 in a second position.
The World Wide Web Consortium (“W3C”) has developed standards for the world wide web (“WWW”) that promote further evolution of the WWW and ensure interoperability. W3C standards such as Extensible Markup Language (“XML”), Extensible Stylesheet Language (“XSL”) and XSL transformations (“XSLT”) are well known for generating information displayed by a browser.
As stated above, it is common to display information, such asinformation100, in a web page format. Referring toFIG. 2, aspects of such formatting are illustrated, according to prior art. As shown inFIG. 2, an XSLTprocessor220 adds styling information in the form of an XSLTstyle sheet file230 to an XMLsource document210, transformingsource document210 into a resulting HTMLdocument240. Alternatively, theresulting document240 may be prepared by using other presentation-oriented formats such as XHTML, PDF or scalable vector graphics (“SVG”). Although referred to as a “processor”, XSLTprocessor220 is a software program.
From the above it should be appreciated that there is an increasing need to format information for presentation on a device having a limited display size, and that it is particularly useful to do so in a manner that conforms to browser-related standards.
SUMMARY OF THE INVENTIONThe forgoing need is addressed by the present invention, according to one aspect of which a method is provided for creating multiple segments of source information for presentation on a device having a limited size display screen. The method includes generating a first derivative style sheet file describing first presentation material. The first derivative style sheet file is derived from a first copy of a master style sheet file. The master style sheet specifies a style of displaying the source information. The source information specified by the master style sheet exceeds an amount which the limited size display screen is capable of displaying in one view. The source information includes a plurality of attributes, out of which a first set of attributes are included in the first derivative style sheet file. A second derivative style sheet file describing second presentation material is derived from a second copy of the master style sheet file. A second set of attributes included in the source information are included in the second derivative style sheet file. The first presentation material is generated responsive to the source information and the first derivative style sheet file. The second presentation material is generated responsive to the source information and the second derivative style sheet file.
In another aspect, the source information specified by the master style sheet exceeds an amount of information capable of being displayed by the device in a single view. The source information includes a first segment of information associated with the first set of attributes and a second segment of information associated with the second set of attributes. The first presentation material is for generating a first view the first segment on the device and the second presentation material is for generating a second view of the second segment on the device. The device is capable of concurrently displaying, in the first view, all of the first segment of information, and is capable of concurrently displaying, in the second view, all of the second segment of information.
Additional aspects, objects, advantages and other forms of the invention will become apparent upon reading the following detailed description and upon reference to the accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGSFIG. 1, described above, is a web browser generated display, suitable for viewing on a large display screen, according to the prior art.
FIG. 2, described above, is a block diagram illustrating a method to generate a web display using XML and XSLT standards, according to the prior art.
FIG. 3 is a block diagram for generating a web display for a CLD having small display screen, according to an embodiment of the present invention.
FIG. 4 is a block diagram for deriving a derivative style sheet from a master style sheet, according to an embodiment of the present invention.
FIGS. 5A,5B and5C illustrate a series of optimized web pages, according to an embodiment of the present invention.
FIG. 6 is a flow chart illustrating a method for restyling a web page to an optimized web page is shown.
FIG. 7 illustrates a computerized device to implement method or apparatus aspects of the present invention, according to an embodiment.
DETAILED DESCRIPTION OF A PREFERRED EMBODIMENTThe claims at the end of this application set out novel features which applicant believes are characteristic of the invention. The invention, a preferred mode of use, objectives and advantages, will best be understood by reference to the following detailed description of an illustrative embodiment read in conjunction with the accompanying drawings.
Referring toFIG. 3, a block diagram is shown illustrating aspects of displaying information on a CLD having a display screen of limited size, in accordance with an embodiment of the present invention. In the embodiment, the CLD is enabled to perform web browsing. That is, a user is able to view portions of information100 (FIG. 1) formatted as HTML documents using a web browser program running on the CLD.
Referring toFIG. 1, for example, a CLD user may wish to access a remote web server to retrieve aservice request record140 from a database ofinformation100.Service request record140 may be defined to include relevant data and/or information describing a service request. In the illustrated example, eachservice request record140 has the following attributes:unique problem number130,status145, due date andtime150,severity155,group user160,location165, contact/company170 andproblem description175.Unique problem number130 attribute may also be described as a primary key to access the database.
Referring back toFIG. 3, in the embodiment information100 (FIG. 1) is segmented into multiple views. The number of views may be configured based on design considerations such as size of CLD display screen110 (FIG.1). In this embodiment, a first derivative XSLTstyle sheet file310, a second derivative XSLTstyle sheet file320 and an optional additional derivativeXSLT style sheet330 are derived from a master (also known as a “parent”) XSLT style sheet file230 (FIG. 2) describinginformation100. The process of deriving a derivative (also known as a “child) style sheet from a master style sheet may be implemented manually or may be automated by a computer program, and will be further described in connection withFIG. 4 below.
XMLsource document210 provides source information, e.g.,information100, which typically includes a number of tagged attributes. For example,information100 includes information having a number of tagged attributes such as in FIG.1—problem number130,status145, anddue date150 described inservice request record140.
In one aspect, master XSLTstyle sheet file230 specifies the styling and/or the layout of the HTML document240 (FIG.2), includinginformation100, optimized for display by a web browser on the display screen105 (FIG. 1) of a desktop computer. Accordingly, the information specified by the master XSLTstyle sheet file230 exceeds an amount which theCLD display screen110 is capable of displaying in one view. To optimize for theCLD display screen110, the information from thesource document210 is segmented byprocessor220, responsive tostyle sheets310,320 and330, intoHTML documents340,350 and360, which are optimized for viewing on theCLD display screen110. This advantageously provides improved navigation. It also conserves bandwidth, i.e., for downloading data to the CLD.
Referring toFIG. 4, in one embodiment, the process of deriving a derivative style sheet includes making a number ofcopies470 of the master XSLTstyle sheet file230. First derivative XSLTstyle sheet file310 is generated from a first one of thecopies470 of master XSLTstyle sheet file230, and specifies a first set ofattributes425 which is associated with a first portion (or segment) of the source information. Likewise, second derivativeXSLT style sheet320, is generated from a second one of the copies of master XSLTstyle sheet file230, and specifies a second set ofattributes435 associated with a second portion of the source information. Of course, additional derivative XSLT style sheets, such asstyle sheet330 may be generated from additional copies of the master style sheet, as shown in the embodiment.
As previously stated, the source information fromsource document210 and thederivative style sheets310, etc. are processed withXSLT processor220, which generates respective presentation-style, e.g., HTML,documents340,350, etc. for generating respective views of the information portions on the CLD. Note that the CLD is capable of concurrently displaying the entire first portion of the information, i.e., information specified by thefirst style sheet310, ondisplay screen110 in the first view, the entire second portion in the second view, etc.
The process of generating first derivative XSLTstyle sheet file310 includes deleting one set of theattributes440 from the first copy of the master style sheet and adding alink attribute450 referring to the second derivativeXSLT style sheet320, so that the first view ondisplay screen110 includes a link for navigating from the first portion of the information to the second portion of the information. Likewise, the process of generating second derivativeXSLT style sheet320 includes deleting a second set of theattributes460 from the second copy of the master style sheet and adding link attributes450 referring to first and third derivativeXSLT style sheets310 and330 so that the view ondisplay screen110 of the second portion of the information includes links for navigating from the second view to the first and third views.
Note that the two views associated withstyle sheets310 and320 have some information in common and some disparate information. That is, a certain key one of the attributes,problem #130, is included in both the first and second segments of the information, i.e., is not deleted in either copy of masterXSLT style sheet230, so that CLD displays the information for this key attribute in both the first and second views. This provides some context for the user tying the two views together. Note also that some of theattributes440, which are deleted in the process of generating first derivativeXSLT style sheet310, are included among attributes for second derivativeXSLT style sheet320. Likewise, some of theattributes460, which are deleted in the process of generating second derivativeXSLT style sheet320, are included among attributes for first derivativeXSLT style sheet310, so that the first and second views include some disparate information, i.e., information that is not in common between the two views.
Referring now toFIGS. 5A,5B and5C, a series of optimized web page displays are illustrated, according to an embodiment. Navigation among the displays is responsive to receiving scroll commands, as will be explained. Referring first toFIG. 5A, HTML document340 (FIGS. 3 and 4) is displayed onCLD display screen110 infirst view510. Included infirst view510 is a portion of the information100 (FIG.1). That is, a portion of theinformation100 associated with the first set of attributes425 (FIG. 4) is displayed inview510. This includes values for the attribute which each view has in common, i.e., the problem number, e.g., “00004706.” It also includes values for each of the attributes425 (FIG.4), i.e., status, date and severity.
For navigational purposes,first view510 also includes a current page number and a total number of pages, i.e., “page 1 of 3.” Theview510 also includes the link450 (FIG.4). In response to a CLD user clicking on a “forward,” i.e., “next,” arrow of thehorizontal scroll bar115, the link attribute450 (FIG. 4) is activated, calling upsecond view520. The “previous” arrow does not have a link in thefirst view510.
Referring toFIG. 5B, in response to thelink450 being activated from the first view510 (FIG.5A),HTML document350 is displayed on theCLD display screen110 in thesecond view520. Thisview520 does not show status, date and severity attributes which were included infirst view510. Likewise, the second set of attributes435 (FIG.4), which includes group user, location and contact, is displayed in thesecond view520, but not in thefirst view510.
Once again, in thesecond view520 for navigational purposes the value for the current page number and of total number of pages is displayed, i.e., “page 2 of 3.” Thesecond view520 includes links450 (FIG. 4) to the first and third views. In response to a CLD user clicking on the “next” arrow, one of the link attributes450 (FIG. 4) to style sheet330 (FIGS. 3 and 4) is activated, calling up thethird view530. In response to a CLD user clicking on the “previous” arrow, one of the link attributes450 (FIG. 4) to style sheet310 (FIGS. 3 and 4) is activated, calling up thefirst view510.
Referring toFIG. 5C, in response to thelink450 being activated from the second view520 (FIG.5B),HTML document360 is displayed on theCLD display screen110 in thesecond view530. In thisview530, a third set of attributes previously not displayed infirst view510 orsecond view520 are displayed along with the attributes common to the first andsecond views510 and520. For navigational purposes, in thethird view530 the value for the current page number and total number of pages is displayed, i.e., “page 3 of 3.” Theview530 also includes the link450 (FIG. 4) associated with the “previous” arrow to go back to thesecond view520.
Referring toFIG. 6, a flow chart illustrating a method for restyling a web page to an optimized web page is shown. In this embodiment, the web page prepared for display ondesktop display screen105 is used as an input to generate optimized web pages suitable for display on a CLD havingdisplay screen110.
Instep610, in response to receiving a request to restyle the web page, first derivative XSLTstyle sheet file310 describing firstpresentation style document340 is generated. First derivative XSLTstyle sheet file310 is derived from a first copy of Master XSLTstyle sheet file230. MasterXSLT style sheet230 specifies a style of displayinginformation100 included in the web page.Information100 includes a plurality of attributes, e.g.,unique problem number130,status145, due date andtime150,severity155,group user160,location165, contact/company170 andproblem description175. Out of the plurality of attributes, first set ofattributes425 are included in first derivative XSLTstyle sheet file310.
Instep620, second derivativestyle sheet file320 describing secondpresentation style document350 is derived from a second copy of master XSLTstyle sheet file230. Second set ofattributes435 included ininformation100 are included in second derivative XSLTstyle sheet file320.
Instep630, firstpresentation style document340 and secondpresentation style document350 are generated byXSLT processor220 on receivingXML source document210 describinginformation100, first derivativestyle sheet file310 and second derivativestyle sheet file320 as inputs.
Referring toFIG. 7, acomputer system710 is shown that is generally applicable for the various embodiment described according to the present invention. Thesystem710 includes aprocessor715, avolatile memory720, e.g., RAM, a keyboard725, apointing device730, e.g., a mouse, anonvolatile memory735, e.g., ROM, hard disk, floppy disk, CD-ROM, and DVD, and adisplay device705 having a display screen.Memory720 and735 are for storing a program instructions which are executable byprocessor715 to implement various embodiments of a method in accordance with the present invention. Components included insystem710 are interconnected by bus740. A communications device (not shown) may also be connected to bus740 to enable information exchange betweensystem710 and other devices.
Invarious embodiments system710 takes a variety of forms, including a personal computer system, mainframe computer system, workstation, Internet appliance, PDA, an embedded processor with memory, etc. That is, it should be understood that the term “computer system” is intended to encompass any device having a processor that executes instructions from a memory medium. The memory medium preferably stores instructions (also known as a “software program”) for implementing various embodiments of a method in accordance with the present invention. In various embodiments the one or more software programs are implemented in various ways, including procedure-based techniques, component-based techniques, and/or object-oriented techniques, among others. Specific examples include XML, C++ objects, Java and Microsoft Foundation Classes (MFC).
It should also be understood from the foregoing that in various embodiments the method for publishing a web page optimized for a device having a limited display screen is implemented in a variety of programming languages, such as XML and XSLT. In one embodiment, the method uses Java Server Pages (“JSP”), and, accordingly, a Java processor receives one or more .jsp style sheet files to generate HTML displays. In one embodiment, the method uses Visual Basic programming language.
The description of the present embodiments have been presented for purposes of illustration, but are not intended to be exhaustive or to limit the invention to the forms disclosed. Many additional aspects, modifications and variations are also contemplated and are intended to be encompassed within the scope of the following claims. For example, while certain aspects of the present invention have been described in the context of a fully functioning data processing system, those of ordinary skill in the art will appreciate that the processes of the present invention are capable of being distributed in the form of a computer readable medium of instructions in a variety of forms. The present invention applies equally regardless of the particular type of signal bearing media actually used to carry out the distribution. Examples of computer readable media include RAM, flash memory, recordable-type media such as a floppy disk, a hard disk drive, a ROM, CD-ROM, DVD and transmission-type media such as digital and/or analog communication links, e.g., the Internet.
Although the embodiment described above has first andsecond documents340 and350 for producing corresponding first and second views on the limited device, as shown inFIGS. 3,5A and5B, in an alternative, one document is produced having at least two frames. For example, frames are typically configured in a web display by using <FRAMESET>, </FRAMESET> commands. In this single-document embodiment, a first frame that is vertically scrollable but not horizontally scrollable displays problem number130 (FIGS. 1,5A,5B and5C). A second frame that is vertically scrollable in coordination with the first frame displays, and is also horizontally scrollable, displays additional attributes of service request records corresponding to the respectively displayed problem numbers. Accordingly, the terms “first presentation material” and “second presentation material” are used herein to refer to first and second documents for generating first and second views on the CLD, as in the first embodiment, and also to refer to a single document with the first and second frames, as in the single-document embodiment. Thus, for the single-document embodiment, “first presentation material” refers to the document with the first frame and a first instance of the second frame, and “second presentation material” refers to the document with the first frame and a second instance of the second frame.
Although certain aspects of the present invention have been described in the context of application to a “connected, limited device,” implying that the device is connected to a computer or network of computers, it should be understood that the invention applies equally to devices having limited size display screens but which are not connected to a computer or network.
To reiterate, many additional aspects, modifications and variations are also contemplated and are intended to be encompassed within the scope of the following claims. Moreover, it should be understood that in the following claims actions are not necessarily performed in the particular sequence in which they are set out.