EXHIBIT 7 

Case 6:20-cv-00245-ADA Document 48-5 Filed 11/09/21 Page 1 of 16
c12) United States Patent 

Moehrle 

(54) ACTIVE PATH MENU NAVIGATION 

SYSTEM 

(76) Inventor: Armin Moehrle, 1824 N. Milwaukee 

Ave., Chicago, IL (US) 60647 

( *) Notice: Subject to any disclaimer, the term of this 

patent is extended or adjusted under 35 

U.S.C. 154(b) by 489 days. 

This patent is subject to a terminal disclaimer. 

(21) Appl. No.: 10/444,359 

(22) Filed: May 23, 2003 

(65) Prior Publication Data 

US 2004/0128275 Al Jul. 1, 2004 

Related U.S. Application Data 

(63) Continuation-in-part of application No. 10/164,520, 

filed on Jun. 6, 2002. 

(51) Int. Cl. 

G06F 3/048 (2006.01) 

G06F 17130 (2006.01) 

G06F 3/033 (2006.01) 

(52) U.S. Cl. ...................... 715/811; 715/738; 715/739; 

715/855 

(58) Field of Classification Search ................ 715/513, 

715/713, 737,739,738,841,811,855 

See application file for complete search history. 

(56) References Cited 

U.S. PATENT DOCUMENTS 

6,236,400 Bl* 5/2001 Guerrero .................... 715/841 

6,462,762 Bl* 10/2002 Ku et al. .................... 715/853 

6,597,377 Bl* 7/2003 MacPhail .................... 715/738 

I 1111111111111111 11111 111111111111111 111111111111111 111111111111111 IIII IIII 

EP 

US007216301B2 

(IO) Patent No.: 

(45) Date of Patent: 

US 7,216,301 B2 

*May 8, 2007 

6,990,638 B2 * 1/2006 Barksdale et al. .......... 715/853 

FOREIGN PATENT DOCUMENTS 

0947921 A 10/1999 

OTHER PUBLICATIONS 

Bowler D et al: "Navigation Bars for Hierarchical Web Sites" 

Student HCI Online Research Experiments, Online! 2001, pp. 1-23, 

XP002286023 University of Maryland, U.S. 

Sun Microsystems Inc: "Quick Start to Using OpenStep Desktop", 

Online Sep. 1996, XP002286024, pp. 5-1 to 5-9. 

IBM: "Fully Navigatable Breadcurm Trails" Research Disclosure, 

Kenneth Mason Publications, Hampshire, GB, vol. 461, No. 130, 

Sep. 2002, XP007131244, ISSN:0374-4353. 

* cited by examiner 

Primary Examiner-Raymond J. Bayerl 

Assistant Examiner-Namitha Pillai 

(74) Attorney, Agent, or Firm-Johnathan Feuchtwang 

(57) ABSTRACT 

A method for navigating within a multi-level hierarchical 

collapsing menu structure is disclosed. Each level in the 

menu structure contains plural items, each item being at least 

one of a function, a pointer to a location, and a pointer to 

another level. The method of the present invention includes 

a step of providing a graphical user menu system displaying 

the items of a given level and enabling selection thereof, 

wherein access of the given level requires sequential access 

of each of the levels preceding the given level in the 

hierarchy. An Active Path is dynamically constructed as a 

sequence of active liuks as items are selected using the 

graphical user menu system, with one active liuk corresponding to each of the items selected. The active links 

provide direct access to a function corresponding level or 

menu item without the need to navigate using the graphical 

user menu system. 

9 Claims, 8 Drawing Sheets 

/102a 103 

/ 

11.0 \ 1.2 1.2.3 1.2.3.4 

1.2.1 

1.2.2 

1 .2.4 1.2.4.1 

1.2.5 1 .2.4.2 

1.2.6 1.2.4.3 

1 .2.4.4 \.. 

1.2.4.5 '\\._ 50 

Case 6:20-cv-00245-ADA Document 48-5 Filed 11/09/21 Page 2 of 16
U.S. Patent May 8, 2007 Sheet 1 of 8 US 7,216,301 B2 

10 10 10 

File 

1 . 1 

~~ 12 

1.2 

1 .3 

1.4 

1 .5 

50 

FIG. 1A Prior Art 

File vlOa 

1 . 1 v10b 

1.2 1 .2.1 

1.3 1.2.2 

1.4 1.2.3 1.2.3.1 ~ 

lOc 

1.5 1 .2.4 1.2.3.2 

1.2.5 1.2.3.3 

1.2.6 1 .2.3.4 

1.2.3.5 " ~ 50 

1.2.3.6 

FIG. 1B Prior Art 

Case 6:20-cv-00245-ADA Document 48-5 Filed 11/09/21 Page 3 of 16
U.S. Patent May 8, 2007 

/20 

c:\windows \applications \temp\help.doc 

FIG. 2A Prior Art 

/22 

Sheet 2 of 8 

http://www. us pto.gov /pa tents/applications 

FIG. 2B Prior Art 

US 7,216,301 B2 

/32 

.- --.. --.... ---. -... ---------.. -... -.. -------..... -----. -.. ---- ---, 

r-1 display 

44 

~ keyboard 

46 

pointing device 

48 

FIG. 3 

38 38a 

RAM 

BUS 

36 

34 

40 

ROM 

processor 

mass 

storage 

42 

' ·---------------------------·-·--------·-----------------

Case 6:20-cv-00245-ADA Document 48-5 Filed 11/09/21 Page 4 of 16
U.S. Patent May 8, 2007 Sheet 3 of 8 US 7,216,301 B2 

/ 

101, 102, 103 

I 1-0 I 

FIG. 4A 

I 1 .0 1 . 1 /10c 

10a/ 

1.2 1 .2.1 

1.3 1.2.2 

1.4 1.2.3 1.2.3.1 

/10d 

1.5 1.2.4 1.2.3.2 

1.2.5 1.2.3.3 

1.2.6 1.2.3.4 .. 

1.2.3.5 ~ 

"' 50 

F JG. 4 B 1.2.3.6 

/101 /102a /102b 103 

/ !1.0 ~ 1, .2 i 1.2.3 1, .2.3.4 1 

'---

-v--

_./ 

100 

FIG. 4C 

Case 6:20-cv-00245-ADA Document 48-5 Filed 11/09/21 Page 5 of 16
U.S. Patent May 8, 2007 Sheet 4 of 8 US 7,216,301 B2 

103 

/ 

11.0 I, .2 1.2.3 1.2.3.4 I. I 

1.2. 1 lit, 

I'. so 

1.2.2 

1 .2.4 

1.2.5 

1.2.6 

FIG. SA 

/102a 103 

/ I, .a I 1.2 1.2.3 1.2.3.4 

1.2.1 

1.2.2 

1 .2.4 1 .2.4.1 

1.2.5 1.2.4.2 

1.2.6 1.2.4.3 

1.2.4.4 I. 

FIG. SB 1 .2.4.5 ~ 

\_ 50 

/101 /102a 102b 103 

/ / 

j1.o I, .2 , , .2.3 1, .2.4.4 I 

'--

-------v-

_.,I 

100 

FIG. SC 

Case 6:20-cv-00245-ADA Document 48-5 Filed 11/09/21 Page 6 of 16
U.S. Patent May 8, 2007 Sheet 5 of 8 US 7,216,301 B2 

/101 /102a /102b 103 

/ 

1.0 11.2 11.2.3 1,.2.3.4 

~. 

~50 

1.2.3.4 

FIG. SD 

103 

/ 

1 .0 1, .2 1 , .2.3 I 

1.2.3 

FIG. SE 

Case 6:20-cv-00245-ADA Document 48-5 Filed 11/09/21 Page 7 of 16
U.S. Patent May 8, 2007 Sheet 6 of 8 US 7,216,301 B2 

10 10 10 

File 

/ ~ ~ View 

1. 1 

1.2 1 .2. l 

1.3 1.2.2 

1.4 1.2.3 1 .2.3.1 

1 .5 1.2.4 1.2.3.2 

1.2.5 1.2.3.3 

1.2.6 1.2.3.4 . 1.2.3.5 ~ 

"' 50 

1.2.3.6 

FIG. 6A 

10 10 10 

~ 

/101 

.--E-d-it__.__ __ 

~ 103 

/ 

IF ile 11.2 11.2.3 , 1.2.3.4 

'---------- ________ __..! --v,,-

100 

FIG. 6B 

Case 6:20-cv-00245-ADA Document 48-5 Filed 11/09/21 Page 8 of 16
U.S. Patent May 8, 2007 Sheet 7 of 8 US 7,216,301 B2 

101 

/ 200 

.--1-. 0 ----.--1 s ( 

FIG. 7A 

I 1 .0 Is 1 . 1 s 

1.2 s 1.2. 1 s 

1.3 s 1.2.2 s 

1 .4 s 1.2.3 5t. ,. 1.5 s 1.2.4 s \..so 

1.2.5 s 

1.2.6 s 

FIG. 7B 

search 1 .2.3.x 

text entry search term I> 

FIG. 7C 

Case 6:20-cv-00245-ADA Document 48-5 Filed 11/09/21 Page 9 of 16
U.S. Patent May 8, 2007 Sheet 8 of 8 US 7,216,301 B2 

http://www. us pto. gov/Patents/Patenting lvl 

FIG. 8A 

I uspto.gov 

FIG. 8B 

I uspto.gov I> About 

How to ... Services 

Patents Guides 

Trademarks Patenting • 

Check Status International' i\_ 50 

Resources 

F I G. BC Help 

103 

/ I uspto.gov I > I P ate nts I Patenting 

'------------ ________ _,! ---v100 

FIG. 8D 

Case 6:20-cv-00245-ADA Document 48-5 Filed 11/09/21 Page 10 of 16
US 7,216,301 B2 

1 

ACTIVE PATH MENU NAVIGATION 

SYSTEM 

2 

the collapsing menu system is that navigation must always 

commence from the root level. Consequently more experienced users are unable to take advantage of their knowledge 

This application is a continuation-in-part (CIP) of U.S. 

application Ser. No. 10/164,520 entitled Active Path Menu 5 

Navigation System, filed Jun. 6, 2002. 

of the hierarchical structure to directly access a given level. 

FIG. 2A shows a conventional path menu system 20 used 

to navigate through the directory structure of a disk. Similarly, FIG. 2B shows a conventional universal resource 

locator (URL) command 22 which operates similarly to the 

DOS path command of FIG. 2A. The conventional disk 

FIELD OF THE INVENTION 

The present invention generally relates to a navigation 

system used to find, enter, or edit data or launch an application within a hierarchical information system. The navigation system of the present invention may be implemented 

in software executing on a standalone software program or 

on a client server application. More particularly, the navigation system of the present invention allows a user to 

access different levels in a hierarchical information system 

without retracing back to the top level of the hierarchy. 

BACKGROUND OF THE INVENTION 

Hierarchical information systems are used to organize 

items by function or theme in order to facilitate efficient 

locating of functions or locations. Hierarchical systems are 

used to organize documents into directories or folders and to 

organize functions into pull-down menus. 

10 operating system (DOS) uses a path menu system 20 to 

navigate between various folders. Each folder represents a 

different level in the hierarchy. A given folder may contain 

one or more sub-folders. To access a target or destination 

level the user must know the path, i.e., the names of the each 

15 of the folders from the root folder to the target folder. A 

system of displaying the contents of each folder is provided 

to guide the user through the hierarchy. Namely, by typing 

a command such as DIRECTORY (DIR) the user is provided 

with the contents of the present folder and the path leading 

20 to the present folder. The user may proceed to a sub-level in 

the hierarchy or may retrace his/her steps to a preceding 

level by knowing the path. 

Navigation using the path menu system requires the user 

to memorize and enter complex hierarchical sequences. This 

25 method of navigation is time consuming not suitable for 

users who have not memorized the path. Moreover, this 

method becomes extremely cumbersome as the number of 

Conventionally one of two navigation systems are used to levels increases. 

navigate through the various levels of a menu tree. By far the 

most popular menu navigation system is the so-called collapsing menu system which, for example, is used by many 

traditional personal computer applications. The distinguishing characteristics of this system are that the navigation 

always commences from the initial or root level and that the 

menu collapses back to the root level after a selection is 35 

made. 

Accordingly, one object of the present invention is to 

30 provide a more efficient way of navigating hierarchical 

menu systems. 

SUMMARY OF THE INVENTION 

A method for navigating within a multi-level hierarchical 

collapsing menu structure is disclosed. Each level in the 

menu structure contains plural items, each item representing 

a function such as the function of launching an application, 

accessing a database location, or pointing to a subordinate 

Computer software frequently includes dozens of functions. The sheer number of features makes it desirable to 

organize the functions into a hierarchy of categories to 

facilitate efficient searching. In a collapsing menu system 

each level in the hierarchy is presented as a level in the 

pull-down menu. 

40 level. 

FIG. lA shows a top or root level 10 of a hypothetical 

menu. Each level 10 of the menu provides a list of menu 

choices 12. Each menu choice 12 could be an end node such 45 

The method of the present invention includes a step of 

providing a graphical user menu system displaying the items 

of a given level and enabling selection thereof, wherein 

access of the given level requires sequential access of each 

of the levels preceding the given level in the hierarchy. An 

Active Path is dynamically constructed as a sequence of 

active links as items are selected using the graphical user 

menu system, with one active link correspond to each of the 

items selected. The active links provide direct access to a 

as a function whose selection initiates some action, or the 

menu choice 12 could lead (point) to another level 10 

providing a further list of menu choices 12. Selection of an 

end node will cause the pull-down menu to collapse back to 

the root level. 

FIG. lB shows the pull-down menu of FIG. lA with 

several levels of the hierarchical menu expanded. The menu 

structure of FIG. lB collapses back to the root level shown 

in FIG. lA once an end node is selected. The defining 

characteristic of such a conventional navigation system is 

that navigation is one-way, and always starts from the root 

level to an end node. This method of navigation becomes 

cumbersome if the desired function or destination is buried 

several levels down from the root directory. 

To address this shortcoming, conventional operating systems such as Microsoft Windows® provide short-cuts in the 

form of pre-defined function keys or icons. Such short-cuts 

enable the user to directly access the desired function 

associated with the short-cut. 

In the absence of a pre-defined short-cut, the user must 

resort to navigating the menu structure. The problem with 

50 function corresponding level or menu item without the need 

to navigate using the graphical user menu system. 

According to a further aspect of the invention, pre-defined 

short-cuts are provided which enable direct access to a given 

menu item. The Active Path is dynamically constructed and 

55 displayed when one of the pre-defined short-cuts are 

executed, with one active link corresponding to each of the 

menu items necessary to access the given menu item using 

the graphical user menu system. 

Navigation using the Active Path is accomplished by 

60 rolling over an active link with a pointing device or selecting 

an active link using a pointing device. Rolling over a given 

active link triggers the display of sibling menu items on the 

level associated with the given active link. Selecting a given 

active link triggers the execution of a function associated 

65 with the given active link. 

These and other aspects of the present invention will be 

explained with reference to the drawings. 

Case 6:20-cv-00245-ADA Document 48-5 Filed 11/09/21 Page 11 of 16
US 7,216,301 B2 

3 

BRIEF DESCRIPTION OF THE DRAWINGS 

4 

to communicate with an operator, such as display 44, 

keyboard 46, and pointing device (mouse) 48. 

FIGS. lA and lB are views of a conventional collapsing 

menu system; 

FIG. 2A is a view of a conventional path menu system; 

FIG. 2B is a view of a conventional universal resource 

locator address; 

In operation, operating system software such as Microsoft 

Windows® executes on the computer 32, and the user 

5 interacts with the operating system using the display 44, 

keyboard 46, and pointing device (mouse) 48. 

FIG. 3 is a block diagram of a conventional computer 

architecture; 

FIGS. 4A-4C are views showing how the Active Path of 10 

the present invention is assembled as the user browses and 

selects a menu item; 

FIGS. SA-SE are views showing how an active link is 

used to redirect the path; 

FIGS. 6A-6B are views showing the Active Path in 15 

combination with a traditional menu system to support the 

user's sense for orientation; 

FIGS. 7A-7C are views showing the Active Path with 

search functionality for subordinate layers and content; and 

20 FIGS. SA-SD are views showing the Active Path replacing the address bar in a browser. 

FIG. 4A shows the initial view of the Active Path menu 

system 100 of the present invention. 

In the initial view (FIG. 4A), the Active Path Active Path 

100 comprises a single active link 102 termed a root link 

101. Since the initial view includes only one active link 102, 

it is both the root link 101 and the end link 103. 

FIG. 4B shows how the user browses the hierarchical 

structure from the initial view (FIG. 4A) in order to arrive 

at an expanded view the Active Path 100 (FIG. 4C). Multiple 

hierarchical levels are displayed in FIG. 4B. Menu items 1.1, 

1.2, 1.3 and 1.4 are termed siblings because they all fall 

within the same hierarchical level 10b. Moreover, menu 

items 1.1, 1.2, 1.3 and 1.4 are all hierarchically subordinate 

to root menu item 1.0. Similarly, menu item 1.2 is hierarchically superior to menu items 1.2.4.1, 1.2.4.2. Still further, 

menu item 1.0 is the parent of menu items 1.1, 1.2, 1.3 and 

1.4. DETAILED DESCRIPTION OF THE 

PREFERRED EMBODIMENTS FIG. 4C is a view ofan expanded Active Path Active Path 

25 100 including active links 1.0, 1.2, 1.2.3, and 1.2.3.4. 

FIG. 3 is a block diagram of a computer 32 on which the 

software of the present invention operates. In the preferred 

embodiment, the main logic of the computer 32 is embodied 

The Active Path 100 consists of a sequential listing of 

active links 102, each active link 102 providing direct access 

to a corresponding level in the hierarchical structure and to 

all of the menu items on the same hierarchical level (sibling by a general-purpose, programmable microprocessor 34, 

which in conventional practice will have an on-board 

memory cache (not shown) and which may be associated 

with one or more mathematics or other special-purpose 

coprocessors (not shown). 

30 menu items). 

The processing logic generally represented by processor 35 

34 is connected by a bus structure 36 to the various other 

components of the computer 32. The schematic representation of bus 36 is shown in FIG. 3 as a simple and unitary 

structure, but in conventional practice, as is known to those 

in the art, there usually are several buses and communication 40 

pathways 36, operating at different speeds and having different purposes. Further, bus 36 may be segmented and 

controlled by respective bus controllers, as is also known in 

the art. 

It should be noted that whereas the conventional DOS 

path is merely a passive display of the hierarchical levels, 

the Active Path 100 is an interactive graphical user interface. 

As will become evident the Active Path 100 has several 

significant advantages over conventional menu trees used to 

navigate hierarchical information structures. 

The Active Path 100 has distinct browsing and selection 

processes. The user browses by "rolling-over" (provisionally selecting) an element with a pointing device such as a 

mouse, causing the children to be displayed without hiding 

the siblings of the parent (and siblings of the grandparents 

etc). This quality of navigation supports the user's sense of 

orientation and is maintained until the user makes a selection. 

As used herein, the term "selecting" is distinguished from 

the term "browsing". Selecting means actively choosing a 

menu item. Using a conventional pointing device 48 such as 

a mouse, selection of a menu item (or active link) is 

accomplished when the user depresses and releases the 

Computer 32 will also have a random access memory unit 45 

or units 38 connected to the bus 36. RAM 38 (which may be 

DRAM, SD RAM or other known types) typically has loaded 

into it the operating system of the computer 32 and executable instructions for one or more special applications 

designed to carry out the invention. Computer 32 also has 

electronic read-only memory 40 for storing those programs 

such as the BIOS which are non-volatile and persist after the 

computer 32 is shut down. 

50 mouse key (mouse-up operation). 

In alternative embodiments of the invention, one or more 

components of the invention's logic may be "hard-wired" 55 

into the ROM 40 instead of loaded as software instructions 

into RAM 38. ROM 40 can consist of or comprise electrically programmable read-only memory (EPROM), electrically erasable and programmable read-only memory (EEPROM) of either flash or nonflash varieties, or other sorts of 60 

read-only memory such as programmable fuse or antifuse 

arrays. 

In a typical architecture, a computer program suitable for 

carrying out the invention will be stored on a mass storage 

device 42, such as an optical disk or magnetic hard drive. 65 

Bus 36 connects mass storage device 42 to RAM 38. The 

computer 32 is connected to various peripheral devices used 

Browsing means that the user has "rolled over" a menu 

item or active link 102 in order to view the siblings of the 

menu item or active link, i.e., all of the menu items on the 

same hierarchical level as the browsed link. The user may 

continue browsing the hierarchical data structure by browsing (rolling over) the sibling menu items. The Active Path 

100 is not affected by the user's browsing. The displayed 

Active Path 102 changes only when the user selects a menu 

item or active link 102. 

The present invention is not limited to any particular 

pointing device, and may be implemented in various ways 

without affecting the functionality of the invention. For 

example, separate mouse keys could be used for browsing 

and navigating. 

The user may directly access any hierarchically superior 

level in the hierarchical data structure by selecting the 

corresponding active link 102. In other words, the user 

Case 6:20-cv-00245-ADA Document 48-5 Filed 11/09/21 Page 12 of 16
US 7,216,301 B2 

5 

directly jumps to a given hierarchical level, and is not forced 

to sequentially navigate through each of the hierarchical 

levels of data structure to reach a desired level. 

Referring to FIG. 4C, the user may directly access different hierarchical levels by selecting 101, 102a, 102b. 

When the user selects any active link 102, the Active Path 

100 responds by executing a function. Functions may 

include the launch of a software application or the display of 

the subordinate links with a detailed description. 

6 

buttons 48-a, 48-b. Selection of an active link 102 causes 

different results depending on whether or not the selected 

active link 102 is the end link 103 in the Active Path 100. If 

the selected active link 102 is not the end link 103, then 

5 selection will cause a folder with subordinate levels and 

content to be displayed. For example, the folder may contain 

a list of the sibling menu items 12 (subordinate levels or 

links) on a given level of the hierarchical data structure, and 

a brief description (content) of each of the menu items. 

Moreover, if the selected active link 102 is not the end link 

103, then selection will trigger the construction of a new 

Active Path 100. FIG. SD shows a user selecting active link 

102b (1.2.3). As shown, the last executed function (end link 

103) was 1.2.3.4. After selecting 102b the Active Path is 

The user may alternatively browse the Active Path 100 10 

and any of the sibling menu items along a given branch in 

the data hierarchy. Browsing does not affect the active patch 

100, which continues to be displayed until the user selects an 

active link 102 or one of the sibling menu items of an active 

link. 15 truncated, and 1.2.3 becomes the end link 103. 

Moreover, the Active Path 100 enables the user to directly 

re-execute the last function without the need to navigate to 

the function through the menu system, and without the need 

for a pre-defined short-cut. This is accomplished by selecting the last active link (end link) 103. 

In operation, the Active Path 102 starts with a special 

active link termed a root link 101 displayed (FIG. 4A). No 

other elements on the same or subordinate hierarchical level 

are displayed until the root link 101 is browsed (rolling over) 

Selection of an end link 103 will cause the immediate 

re-execution of the associated function (last function 

executed). Thus, the last executed function may be reexecuted by simply selecting the end link 103 in the Active 

20 Path 100. Moreover, selection of an end link 103 will not 

affect the Active Path 100. 

According to a further aspect of the present invention, the 

Active Path 100 may be used to define a short-cut on-the-fly. 

or the expert user enters a shortcut to any point in the 25 

hierarchy. 

Once the Active Path 100 has been constructed the user may 

store the end link 103 as a shortcut within a lookup table 38a 

(FIG. 3). According to a presently preferred embodiment, 

FIG. 4B shows a user browsing the Active Path 100 

shown in FIG. 4A. More particularly, FIG. 4B shows the 

user browsing by rolling over the active link 1.2.3 resulting 

in the display of the siblings of 1.2.3.1, 1.2.3.2, 1.2.3.3, 30 

1.2.3.6. Rolling over (browsing) an active link 102 results in 

the display of the siblings and children of the active link. 

this is accomplished by a combination of commands. Thus, 

for example, the user could be prompted to define a short-cut 

identifier by clicking mouse button 48-b over end link 103. 

The Active Path 100 then stores the association between the 

function (or location) and the user-selected shortcut in the 

rewriteable table 38a. 

According to a preferred embodiment, there is a slight 

distinction between browsing an active link 102 and browsing a menu item. In browsing an active link 102, it is 35 

desirable to initially display only the siblings of the active 

link (FIG. SA), and display the children after a slight time 

delay (FIG. SB). The time delay in displaying the children 

The Active Path 100 of the present invention may similarly be used to navigate to a location such as a location in 

a database or a web page. Notably, the Active Path 100 is 

created in the same manner regardless of whether the menu 

items 12 represent functions or locations. In the case of 

navigating to a location, selecting an active link 102 (other 

of the browsed active link facilitates the user's sense of than the end link 103) triggers the access of the associated 

orientation. 

FIG. SC shows the Active Path 100 created after the user 

selected 1.2.4.4 in FIG. SB. 

Another aspect of the invention relates to the user's ability 

to immediately re-execute the last executed function by 

selecting the end link 103. In this manner, the Active Path 

100 defines on-the-fly a short-cut to the last function. 

In contrast, conventional short-cuts such as a function 

keys, icons, or the like are static in that it only provides 

access to a single pre-defined item (function/database location). 

In operation, the active links 102 of Active Path 100 are 

accessed using the mouse 48 and mouse buttons 48a, 48-b 

(FIG. 3). 

As described above, each of the active links 102 in the 

Active Path 100 may be browsed by rolling over the active 

link 102 with the pointer 50 of the pointing device 48, or 

accessed by selecting the active link 102. As shown in FIG. 

SB rolling over the active link 102 simply entails manipulating the mouse 48 to position the software pointer 50 over 

the active link 102. Rolling over an active link 102-b causes 

the sibling menu items on the level corresponding the active 

link 102-b to be displayed. It should be noted that simply 

rolling over an active link 102 does not alter the Active Path 

100; it merely causes the sibling menu items to be displayed. 

40 database location. In contrast, when navigating to a class of 

functions, selection of an active link 102 ( other than the end 

link 103) merely triggers the display of the sibling menu 

items on the associated level. One of ordinary skill in the art 

will appreciate that the Active Path 100 of the present 

45 invention may be used in standalone applications such as 

operating systems, word processors, spreadsheets or the like. 

Moreover, the Active Path 100 may also be used in a 

client-server environment. Notably, the Active Path 100 may 

be used to navigate functions provided on a web site or to 

50 navigate between different web addresses. 

In standalone applications, a range of Microsoft® Windows Application Programming Interface functions such as 

"CreateWindow" and other graphics library function calls 

may be used to create the graphic components of the Active 

55 Path. Any combination of mainstream programming languages such as Visual Basic, Java, C, or Delphi may be used 

to create the dynamic components and rollover effects. 

In client server applications, the code for the Active Path 

may be part of the initial HTML file in form of a JavaScript/ 

60 DHTML combination or separate JavaScript files (.js) containing the arrays describing the Active Path 100 and Cascading Style Sheets files (.css) containing the graphic 

attributes of the Active Path 100. This data may be cached 

locally after the initial server call. 

Selection of an active link 102 is accomplished by, for 65 

example, positioning the software pointer 50 over the active 

link 102 and actuating (and releasing) one of the mouse 

For internet browser applications, such as Internet 

Explorer or Mozilla the preferred embodiment foresees a 

replacement of the address bar with the Active Path 100 to 

Case 6:20-cv-00245-ADA Document 48-5 Filed 11/09/21 Page 13 of 16
US 7,216,301 B2 

7 

avoid redundancy, allow the user to focus on the content and 

make browsing more efficient. For Microsoft® Internet 

Explorer, this would involve utilizing its custom Explorer 

Bars integration feature. 

8 

As described above, the Active Path 100 is dynamically 

constructed as the user navigates the collapsing menu system, and is subsequently retained after the menu tree collapses back to the root level. In addition, the Active Path 100 

In standalone applications, a range of Windows Application Programming Interface functions such as "Create Window" and other graphics library function calls may be used 

to create the graphic components of the Active Path. Any 

combination of mainstream programming languages such as 

Visual Basic, Java, C, or Delphi may be used to create the 

dynamic components and rollover effects. 

5 may optionally be constructed each time a short-cut such as 

a function key or the like is used. It should be noted that a 

shortcut may be defined for any point in the hierarchical 

structure. This requires the use of a look-up table 38a (FIG. 

3) stored in RAM 38. The look-up table 38a stores each of 

10 the pre-defined shortcuts and the associated data necessary 

to create the Active Path 100. According to a presently 

preferred embodiment, the Active Path 100 constructed is 

the same as would be constructed by accessing the function 

Windows Explorer may replace the Address Bar with the 

Active Path 100. This could make the display of the folder 

window redundant. The user may better take advantage of 

the screen real-estate by rolling over and "browsing" 15 

through the levels of the collapsing menu system. 

The Active Path 100 of the present invention may also be 

used to navigate audio interfaces. A preferred embodiment 

for audio interfaces would allow users to navigate to the end 

point of a path. A certain input command, such as pressing 20 

a certain key, would read the sequence and level of the 

selected path. Users can then select any level of the path and 

navigate to a new endpoint. 

The Active Path 100 may also be used in conjunction with 

a conventional navigation system such as the above-de- 25 

scribed collapsing menu system or path menu system. 

The Active Path 100 is dynamically assembled and displayed as the user navigates using the conventional menu 

screens. The Active Path 100 is assembled automatically 

without the need for any additional user interaction as the 30 

user navigates using the collapsing menu system. 

FIGS. 6A-6B show how the Active Path 100 may be used 

to navigate to classes of functions. In the embodiment 

depicted in FIGS. 6A-6B the Active Path 100 is used in 

conjunction with a conventional collapsing menu system 10. 35 

One of ordinary skill in the art will appreciate that the 

location of the Active Path 100 in relation to the collapsing 

menu system 10 and its graphical representation are not 

critical to the operation of the Active Path 100. 

through the collapsing menu system. 

In operation, the look-up table 38a would originally be 

created by the software developer during initial definition of 

each of the pre-defined short-cuts (function keys). Moreover, as will be explained, the look-up table 38a may be 

updated by the user to reference newly created short-cuts. 

Additional Pointers on Menu Item 

A further aspect of the invention will now be described 

with reference to FIGS. 7A-7C. Each menu item may 

contain additional pointers to functions such as a search 

entry field 200 used for searching folders, files or content of 

the subordinate information hierarchy. 

FIG. 7A shows an initial (root level) view of the Active 

Path 100 with root link 101, and the search field 200. 

Selecting search field 200 in FIG. 7A will enable the user to 

search the entire hierarchical structure from the highest 

(root) level to the lowest level. 

FIG. 7B shows an expanded view of the Active Path 100. 

Selecting search field 200 in FIG. 7B will enable the user to 

search the hierarchical structure from 1.2.3 and all hierarchically subordinate levels (along the same branch). 

FIG. 7C shows a sample of the search entry interface 

displayed when the user selects the search field 200. 

The functionality of the search entry field 200 may also be 

implemented by, for example, using a special button on the 

pointing device 48 or special key stroke on the keyboard. 

As noted above, the Active Path 100 of the present 

invention may be used to navigate directories, with the 

internet being just one example of a directory. 

FIG. 6A shows an initial view of the conventional col- 40 

lapsing menu system 10. The Active path 100 is absent from 

FIG. 6A because no menu item has been selected. As the 

user rolls over a given menu item, the children of the menu 

item are displayed. In FIG. 6A the user has successively 

rolled over 1.2, 1.2.3, and 1.2.3.4.Again, the Active path 100 

Moreover, the Active Path may be used to enhance the 

functionality of the address bar in an internet browser such 

45 as Internet Explorer or Mozilla. 

is absent from FIG. 6A because no menu item has yet been 

selected. 

FIG. 6B shows the Active Path 100 after the user selected 

menu item 1.2.3.4. As shown, the conventional collapsing 

menu system collapses once the user has selected a menu 50 

item. Each active link 102 in the Active Path 100 represents 

the sequence of implicit selections by an explicit selection of 

the menu item. More particularly, the Active Path 100 shown 

in FIG. 6A includes active links 101, 102a, 102b, and 103 

corresponding to menu items FILE, 1.2, 1.2.3, and 1.2.3.4. 55 

Active link 101 corresponds to menu item FILE selected 

from the initial or root level. Likewise, active link 102-a 

corresponds to menu item 1.2 selected, and active link 102-b 

corresponds to menu item 1.2.3. Construction of the Active 

Path 100 occurs automatically as the user navigates through 60 

the menu system 10. It should be noted that active link 102-c 

is the end link 103 in the Active Path 100. 

FIG. SA shows a conventional address bar of an internet 

browser. 

FIG. SB shows the root level 101 of the Active Path 100 

as a text entry field. Once a user has entered a location 

(destination) the Active Path 100 will search for a data file 

representing the information hierarchy of the location. This 

data file will enable the user to browse the entire information 

hierarchy of the location without fetching additional information from the server each time a new hierarchical level is 

browsed. This enables a user to quickly locate and directly 

access the desired ( content) level with the hierarchy without 

having to sequentially access the various levels of the 

hierarchy. 

FIG. SC shows a user browsing an information hierarchy. 

This aspect of the Active Path does not require the user to 

memorize the entire URL to access a location. Moreover, the 

data file merely contains a representation of the structure of 

the information hierarchy and does not contain the actual 

contents of the location. For this reason, the data file is 

It should be noted that the menu system (pull-down menu 

tree) 10 collapses when the user selects end node 1.2.3.4 

whereupon the Active Path 100 appears. The user may 

directly access different hierarchical levels simply by selecting different active links 102. 

65 relatively small. 

Once the user has accessed a given location (FIG. SD), the 

Active Path 100 includes a series of active links 101, 102, 

Case 6:20-cv-00245-ADA Document 48-5 Filed 11/09/21 Page 14 of 16
US 7,216,301 B2 

9 

103 each active link pointing to a different level in the 

hierarchical structure. The user may then directly access any 

level along the path without having to resort to pressing the 

"go back" button on the browser. 

10 

2. The method for navigating according to claim 1, further 

comprising: 

providing pre-defined short-cuts enabling direct access to 

a given item; and 

dynamically constructing the Active Path when a predefined short-cut is executed, with one said active link 

corresponding to each of the items necessary to access 

said given item using said graphical user menu system. 

If a data file representing the information hierarchy of the 5 

location is not located, the Active Path Menu Navigation 

System will dynamically create the file from the directory 

structure and the hypertext markup language (HTML) available on the server and client files. 3. The method for navigating according to claim 1, 

10 wherein rolling over a selected active link triggers the 

display of sibling items on the hierarchically subordinate 

levels associated with said selected active link. 

According to another aspect of the invention, the Active 

Path 100 may be used to as a method for navigating websites 

including a plurality of hierarchically organized web pages. 

The method of the present invention eliminates the need for 

providing hyperlinks and navigational elements on the individual web pages. 

4. The method for navigating according to claim 1, 

wherein selecting a given active link triggers the execution 

15 of a function associated with said given active link. 

According to the present invention, a data file representing the hierarchical structure of the multi-level hierarchical 

website is either constructed or retrieved from the server. As 

noted above, the data file representing the information 

hierarchy of the location may be dynamically created from 20 

the directory structure and the hypertext markup language 

(HTML) available on the server and client files. 

Using the Active Path, the user browses the data file 

representing the information hierarchy of the location, and 

selects a desired location. This eliminates the need to 25 

provide hyperlinks and navigational elements on the individual web pages. 

A new Active Path is dynamically constructed each time 

the user navigates to a new location (web page) within the 

hierarchical website. Again, each active link corresponds to 30 

a level in the hierarchical structure, and a user may directly 

access any given level of the hierarchical structure by 

selecting a given active link. Moreover, the active links 

provide the user the ability to directly browse all items on 

any given level of the hierarchical menu structure including 35 

all hierarchically subordinate items without affecting the 

Active Path. 

Although a preferred embodiment of the Active Path 

navigation system of the present invention has been specifically described and illustrated, it is to be understood that 40 

variations or alternative embodiments apparent to those 

skilled in the art are within the scope of this invention. Since 

many such variations may be made, it is to be understood 

that within the scope of the following claims, this invention 

may be practiced otherwise than specifically described. 45 

The invention claimed is: 

1. A method for navigating within a multi-level hierarchical information structure where each level in the information structure contains plural items, each said item being 50 

at least one of a function, a pointer to a location, and a 

pointer to another level, said method comprising the steps 

of: 

providing a graphical user menu system displaying the 

items of a given level of the hierarchical information 55 

structure and enabling selection thereof; and 

5. The method for navigating according to claim 1, 

wherein selecting a given active link triggers display of 

information associated with said given active link. 

6. The method according claim 1, wherein a user-defined 

short-cut is defined on-the-fly by storing a short-cut identifier and said Active Path in a look-up table. 

7. A method for navigating websites including a plurality 

of hierarchically organized web pages, said method eliminating the need for providing hyperlinks and navigational 

elements on the individual web pages, comprising: 

constructing a data file representing the hierarchical structure of the multi-level hierarchical website; 

providing a means for browsing the data file representing 

the hierarchical structure; 

dynamically constructing an Active Path as a sequence of 

active links as the user navigates the multi-level hierarchical website, wherein each said active link corresponds to a level in the hierarchical structure; 

wherein a user may directly access any given level of the 

hierarchical structure by selecting a given said active 

link; 

each said active link providing the user to directly browse 

all items on any given level of the hierarchical structure 

including all hierarchically subordinate items without 

affecting the Active Path. 

8. A method for navigating websites including a plurality 

of hierarchically organized web pages, said method eliminating the need for providing hyperlinks and navigational 

elements on the individual web pages, comprising: 

retrieving a data file representing the hierarchical structure of the multi-level hierarchical website; 

providing a means for browsing the data file representing 

the hierarchical structure; 

dynamically constructing an Active Path as a sequence of 

active links as the user navigates the multi-level hierarchical website, wherein each said active link corresponds to a level in the hierarchical structure; 

wherein a user may directly access any given level of the 

hierarchical structure by selecting a given said active 

link; each said active link providing the user to directly 

browse all items on any given level of the hierarchical 

structure including all hierarchically subordinate items 

without affecting the Active Path. 

dynamically constructing an Active Path as a sequence of 

active links as items are selected using the graphical 

user menu system, with one said active link corresponding to each of the items selected, said active links 

providing direct access to one of a function, corresponding level and menu item without the need to 

navigate using said graphical user menu system; 

9. A method for navigating within a multi-level hierar60 chi cal information structure where each level in the structure 

each said active link enabling the user to directly browse 

all items on any given level of the hierarchical infor- 65 

mation structure including all hierarchically subordinate items without affecting the Active Path. 

contains plural items, each said item being at least one of a 

function, a pointer to a location, and a pointer to another 

level, said method comprising the steps of: 

displaying a graphic element representing a root of the 

hierarchical information structure; 

browsing the hierarchical information structure by rolling 

over said graphic element using a pointing device, 

Case 6:20-cv-00245-ADA Document 48-5 Filed 11/09/21 Page 15 of 16
US 7,216,301 B2 

11 

wherein browsing results in the display of sibling items 

or hierarchically subordinate items; 

selecting one of the displayed items; 

dynamically constructing an Active Path as a sequence of 

active links as items are selected, with one said active 5 

link corresponding to each of the items selected, said 

active links providing direct access to one of a function, 

corresponding level and item without the need to 

12 

navigate from the root of the hierarchical information 

structure; 

each said active link enabling the user to directly browse 

all items on any given level of the hierarchical information structure including all hierarchically subordinate items without affecting the Active Path. 

* * * * * 

Case 6:20-cv-00245-ADA Document 48-5 Filed 11/09/21 Page 16 of 16