WO2001050238A1 - A system and method for displaying data in a broadcasting window - Google Patents

A system and method for displaying data in a broadcasting window Download PDF

Info

Publication number
WO2001050238A1
WO2001050238A1 PCT/US2000/008120 US0008120W WO0150238A1 WO 2001050238 A1 WO2001050238 A1 WO 2001050238A1 US 0008120 W US0008120 W US 0008120W WO 0150238 A1 WO0150238 A1 WO 0150238A1
Authority
WO
WIPO (PCT)
Prior art keywords
content information
data
broadcasting window
window
client
Prior art date
Application number
PCT/US2000/008120
Other languages
French (fr)
Inventor
John Gilbert
Erhan Akin
Cihan Akin
Hakan Akin
Ali Kutay
Eliahu Albek
Original Assignee
Altoweb Systems, 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
Priority claimed from US09/475,711 external-priority patent/US20010043210A1/en
Application filed by Altoweb Systems, Inc. filed Critical Altoweb Systems, Inc.
Priority to CA002395972A priority Critical patent/CA2395972A1/en
Priority to AU39258/00A priority patent/AU3925800A/en
Priority to JP2001550532A priority patent/JP2003519427A/en
Priority to EP00918452A priority patent/EP1247164A1/en
Publication of WO2001050238A1 publication Critical patent/WO2001050238A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • 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/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/14Display of multiple viewports

Definitions

  • the present invention relates generally to the field of data representation and more specifically to the display of information items within a broadcasting window.
  • the so-called "information age” is characterized in that information users are being presented with ever-increasing volumes of information.
  • the presentation format of such information should ideally allow an information user quickly to assess the relevance of a large number of information items, and then efficiently to access information items that are deemed to the relevance and interest.
  • the broader acceptance of the Internet, specifically the World Wide Web, as an information source has dramatically increased the volume of information that is available to an information user. Information retrieval from this vast source is often facilitated through a search engine, which may present a large number of information items to a user.
  • navigation of the various web pages and other information resources that. constitute the web site may be confusing and disorientating. Specifically, the structure of a web site is typically hierarchical, and a user may become disoriented or "lost" within the web site.
  • a method and system for displaying data in a broadcasting window are described.
  • a pointer to content information is activated.
  • the content information is retrieved based upon associated data and displayed within the broadcasting window.
  • the content information is animated within the broadcasting window.
  • Figure 1 is a block diagram of one embodiment for a network broadcasting window system
  • Figure 2a is block diagram of one embodiment for an e-casting system
  • Figure 2b is a block diagram of one embodiment for a server of Figure 1;
  • Figure 2c is an exemplary diagram of a eta object structure
  • Figure 3 is a block diagram for one embodiment of a computer architecture for a server of Figure 2b;
  • Figure 4a is a block diagram of one embodiment for server routines of Figure 2b;
  • Figure 4b is a block diagram of one embodiment for client routines
  • Figure 5 is a block diagram of one embodiment for a meta object- Figure 6 is a block diagram of one embodiment for query results
  • Figure 7 illustrates an exemplary window for the display of meta objects from a banner advertisement
  • Figure 8 is a flow diagram of one embodiment for pulling e-casting information
  • Figure 9 is a flow diagram of one embodiment for pushing e-casting information
  • Figure 10 is a flow diagram of one embodiment for displaying e-advertising information.
  • a method and system for displaying data in a broadcasting window are described.
  • a pointer to content information is activated.
  • the content information is retrieved based upon associated data and displayed within the broadcasting window.
  • the content information is animated within the broadcasting window.
  • a method and system for displaying structured data in a broadcasting window are described.
  • a pointer to data content is activated.
  • Information based upon associated data is retrieved and the information is displayed within the broadcasting window.
  • Content of the information is animated within the broadcasting window.
  • the server may be used to transfer data from a relational database into extended markup language (XML) format and may be used through a application programming interface (API) without connecting the output of the server to a graphical representation.
  • XML extended markup language
  • API application programming interface
  • connections may also be created that contain a configurable query or queries.
  • a configurable query is programmed within a studio. If a configurable query exists for a meta object, when the meta object query is executed, the configurable query will be executed for that connection. If no configurable query exists for that connection, a server executes code for the query results based upon the original connection.
  • Meta objects and relationships are independently created and are distinct from their graphical representations.
  • a developer may develop meta object maps and build multiple client applications for the meta object maps. Multiple graphical user interfaces may be created from the same meta object or objects.
  • the meta object query results may be in a variety of formats such as, for example, HTML, XML, or other suitable format.
  • a developer may create meta objects, define relationships and save the meta objects and relationships. Another developer may identify data sources and save those identification. Some time later, another developer may load the identified data sources and saved meta objects and make the connections between the data sources and the meta objects.
  • the present invention also relates to a system or apparatus for performing the operations herein.
  • This system may be specially constructed for the required purposes, or it may include a general purpose computer selectively activated or reconfigured by a computer program stored in the computer.
  • a computer program may be stored in a computer readable storage medium, such as, for example, any type of disk including floppy disks, optical disks, CD-ROMs, and magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, or any type of media suitable for storing electronic instructions, and each coupled to a computer system bus.
  • FIG. 1 is a block diagram of one embodiment for a network broadcast window system 100.
  • system 100 consists of clients 106, 108 connected via wide area network (WAN) 112 to server 102.
  • Server 102 is connected to mass storage device 104.
  • Mass storage device 104 may be any suitable storage medium such as, for example, read only memory (ROM), random access memory (RAM), EPROM's, EEPROM's, magnetic optical discs, or any type of medium suitable for storing electronic data.
  • WAN read only memory
  • RAM random access memory
  • EPROM's EPROM's
  • EEPROM's electrically erasable programmable read-only memory
  • magnetic optical discs or any type of medium suitable for storing electronic data.
  • wide area network (WAN) 112 may be a local area network (LAN).
  • LAN local area network
  • FIG. 2a is a block diagram of one embodiment for an e-casting system 120.
  • a hub (or server) 122 may be connected to a number of clients 124, 126, 128, 130.
  • system 120 represents members of a community designed by an organization or corporate user.
  • the community 120 creates a closed loop system of select partners to concurrently run individual e-casting channels which enable the exchange of information between hub 122 and clients 124-130.
  • clients 124-130 may be connected to multiple hubs 122 or connected directly to one another.
  • the connection within the community may be by a local area network, wide area network, or any similar networking system.
  • Clients 124- 130 may be leaf clients (for example, client computers) or may be hubs to additional clients.
  • client 124 may configure its own e-casting channel which continuously searches out and returns information relevant to its needs.
  • the e-casting channel polls hub 122 for relevant information which is returned to client 124.
  • the returned information is dynamically rendered and may be further observed and acted upon.
  • hub 122 pushes information to the clients 124-130 based upon preexisting criteria.
  • the information polled by the client 124 may include, for example, pricing information, inventory information, delivery information, or product and other pieces of information.
  • the information is automatically updated in realtime. That is, once a channel is defined by a client 124, the user does not need to perform any further action to have the information automatically updated on client 124.
  • advertising information may be sent to the client 124 for display on the client screen.
  • interactive banner advertisement offerings which feature advertisement content that is driven by the advertiser's own web site content, is continuously updated and displayed on the client display.
  • the advertiser controls the content feed to the broadcasting window display, enabling time sensitive offers, regional offers, context sensitive offers, and other specialized offers to be displayed within the client broadcasting window.
  • Once an advertiser downloads information to hub 122 the advertiser does not need to actively access or update the information on hub 122.
  • the information is automatically downloaded from an advertiser's web site to hub 122 after a channel is set up between the hub 122 and the advertiser's server.
  • hub 122 may act as the advertiser's server.
  • the display of the advertisement information supports end user activity. This enables the user to navigate through a set of offerings by the advertiser to find the most relevant information that fits the user's needs.
  • the users may browse large volumes of items being displayed within the broadcasting window, depending on the merchandising specification of the advertiser and the interest of the potential buyer.
  • the display of advertising material is animated in a carousel-like fashion.
  • the advertising information is automatically updated in realtime.
  • FIG. 2b is a block diagram of one embodiment for server 102.
  • server 102 is connected to client 106 via bus 202.
  • server 102 may be connected via WAN 112 to client 106.
  • Client 106 includes studio module 205 and client module 210.
  • Server 102 includes server routines 220 and data source connectivity modules 225.
  • server 102 is connected to meta data 260, mass storage device 104, web server 235, file server 240, multimedia server 245, legacy systems 250, and enterprise resource planner 255.
  • server 102 may be connected to any of the variety of additional servers and data sources.
  • meta data 260 may be contained within mass storage device 104.
  • server 102 is connected via bus 204 to mass storage device 104 and the other servers. In alternate embodiments, server 102 may be connected via a LAN or WAN 112 to mass storage device 104 and the additional servers. In one embodiment, mass storage device 104 contains databases and other data sources.
  • Software routines contained within studio module 205 interact with server routines 220 to create data structures that are maintained within meta data 260.
  • Server routines 220 retrieve data from any of the variety of data sources such as mass storage device 104, file server 240, multimedia server 245, legacy systems 250, or enterprise resource planner 255. In an alternate embodiment, data may be retrieve from any of a number of additional servers.
  • Data source connectivity modules 225 interact with the connected servers to provide data to server routines 220.
  • Software routines within studio module 205 interact with the server routines 220, to create a number of meta objects from the accessed data.
  • Server routines 220 retrieve and parse the data to create a topographical or spatial representation of the data. Various types of data are extracted and parsed by unique connectivity modules 225.
  • the data is processed to create a standard form of data that may be used by server routines 220. For example, portions of a web page may be extracted between a set of HTML tags or by extracting hyperlinks within the page.
  • Server routines 220 invoke connectivity module 225 which, in turn, return data from the various sources. Connectivity modules 225 know to return the type of data from a given source.
  • the topographical representation is in the form of a tree structure.
  • Server routines 220 receive data such as, for example, HTML pages, from a data source such as, for example, web server 235.
  • Server routines 220 parse the HTML page into a topographical representation in the form of a hierarchical data structure of the data such as, for example, a tree structure.
  • the hierarchical data structure such as, for example, the HTML page, represents a topography or spatial representation of the links for a portion of the HTML page.
  • Studio module 205 manipulates the parsed data to create relationships (or tags) between various nodes within the hierarchical data structure to create meta objects.
  • the meta objects represent a new hierarchical representation of the tagged data.
  • the data is parsed on an individual basis (that is, each page of data is parsed separately).
  • multiple sources of data are parsed together to form a single parsed, hierarchical data structure.
  • the meta object is stored in meta data 260.
  • Client module 210 interacts with server routines 220 during run time to access the meta objects contained within meta data 260.
  • server routines 220 retrieve meta objects from meta data 260 and display the meta object on client 106.
  • the meta object is displayed by context and/or content. Routines within client module 210 interact with server routines 220 during run-time to create e-client channels and automatically search and return information relevant to client 210.
  • a meta object may have a logic component or a collection of logic components associated with it.
  • a logic component is executable program code that is executed on the meta object after a query is executed. The logic component may perform calculations on and manipulate the query results. For example, if a meta object has a "price change" field (a number), the logic component may check for the sign of that number. The logic component may then add a new field for the results of the query, for example "color”, that will have the value “red” if the price change field number is negative and the value "green” otherwise.
  • a developer may enter the logic component code in a suitable programming language. This entered code becomes the logic component that may be executed at runtime after the meta object query has been executed.
  • FIG. 2c is a diagram one embodiment for of a meta object structure 280.
  • meta object structure 280 includes a number of nodes 281 through 289. Each node 281-289 represents a meta object. The connections between nodes (solid lines) represent the relationships that are created between nodes of the meta objects. Nodes 281-289 may be nested meta objects.
  • meta object structure 280 may be viewed by its structure 290, context 292, or content (data linked to nodes 281-289).
  • Meta object structure 280 may be a tree structure, directional graph, bi-directional graph, or a graph with uni-directional and bi-directional relationships. The structure section of the view provides a high level representation of meta object structure 280 created by studio module 205.
  • the structure displays the name of meta object structure 280 and the names of the meta objects (represented by nodes 281- 289) created from the hierarchical data structure.
  • meta object structure 280 representation of a data base may be displayed as a list that displays the name of the data structure (root node 281) and a list that contains the names of the meta objects within the data structure that were previously tagged and linked to one another (for example, nodes 282, 286, 287, 288, and 289).
  • the nodes displayed will vary. For example, if the user accesses node 283, the structure view will display nodes 283, 286, 287, 288, and 289.
  • the context section of the view displays the meta objects as a relationship between the items.
  • the context section displays the name of the data structure at the center and all the meta objects created from the data structure displayed in a broadcasting window representation.
  • meta object nodes 287, 288, and 289 are used to create the representation display. As the user maneuvers between nodes 281-289, the representation changes.
  • the content section of the view displays detailed information concerning the content of a node 281-289 within meta object structure 280.
  • the content section may display what type of data the database contains and how a user may retrieve information from the database.
  • the content section may display details about node 288, such as the name of node 288, its price, availability, sample usage, and other information.
  • the content section may display a large number of document types, including hypertext markup language (HTML) and word processing documents, tabulated results of database queries, and advertising information.
  • HTML hypertext markup language
  • the content view may be generated by accessing either the structure or context meta object and will change depending upon the node accessed.
  • Meta object structure 280 may be viewed as a graph with a starting node as its root 281 and the subsequent levels beneath root node 281 as the children 282, 283, 284, grandchildren 285, 286, great grand children, 287, 288, 289, etc. Nodes (281-289) in the displayed tree on client module 210 may be collapsed and expanded to facilitate viewing.
  • Any node within the tree may be selected to represent the "root" for viewing the context of the data.
  • the context is built from the node and displayed by server routines 220 on client 106.
  • the corresponding "children" of the root node may be, for example, HTML page links. Children of the root node may be mapped to the representation on client 106 within a facet of the context display area.
  • Memory maps are constructed for parent/child node families to a certain user-specified depth within meta object structure 280.
  • raw data is received and parsed into a hierarchical data structure. Nodes from the hierarchical data structure are selected and stored as meta objects.
  • the meta objects are associated with one another by creating relationships between the meta objects and may be represented as meta object structure 280.
  • the selected meta objects are displayed within the structure display and the relationships are used to map the data to the representation.
  • the creation of meta objects is described in patent application Serial No. 09/475,711, herein incorporated by reference.
  • Each memory map includes "valid" memory locations to store data concerning a specific child node and "null" memory locations that are empty from the meta objects.
  • Each memory location within each memory map is potentially associated with a facet of the representation, but only facets that are associated with valid memory locations will appear on the representation to be associated with (and to be representative of) a child node.
  • Server routines 220 may continually operate in the background or may operate on request to map the meta objects of which only a portion may be represented by the display at any given time. Accordingly, server routines 220 may continually probe both laterally and vertically within the meta objects for the purpose of identifying links (ergo, hypertext links or other pointers) between nodes. In one embodiment, following links in this browser window area may be reflected with updates to the structure and context areas respectively.
  • Client module 210 displays a current parent/child node family, or at least a portion thereof, in accordance with the representation boundaries from the memory map representing the relevant child nodes of the meta objects.
  • Server routines 220 retrieve the memory maps generated offline as needed and send the memory maps, as query results, to client module 210 which displays a portion of a meta object in accordance with automatic or user inputs that direct navigation of the meta objects.
  • Figure 3 is a block diagram for one embodiment of a computer architecture for server 102. Referring to Figure 3, computer architecture 300 includes CPU 302, read only memory (ROM) 304, random access memory (RAM) 306, non-volatile memory 308, and input/output (I/O) 310. The components are connected via bus 315.
  • ROM read only memory
  • RAM random access memory
  • I/O input/output
  • Non-volatile memory 308 includes a stored set of instructions (i.e., software) embodying any one, or all, of the methodologies described herein.
  • the software may also reside completely or at least partially within ROM 304 or RAM 306.
  • the software may be further transmitted or received via a network interface device.
  • FIG 4a is a block diagram of one embodiment for server routines 220.
  • server routines 220 may be maintained within RAM 306 or nonvolatile memory 308 within server 102.
  • Server routines 220 includes developer 410, runtime query 420, and runtime data transformation modules 430.
  • Developer 410 interacts with studio module 205 to create the parsed hierarchical data structures and to create the meta objects from the hierarchical data structure.
  • Runtime query 420 contains software routines for retrieving raw data and meta data 260 and sending the data to client 106.
  • Runtime data transformation modules 430 transform a variety of data components such as, for example, HTML pages or word documents, into a form suitable for display on client 106.
  • Developer 410 identifies the nodes and structure of the hierarchical data structure and generates a memory mapped representation of the hierarchical data structure (meta objects) that is accessed and utilized by runtime query 420.
  • developer 410 retrieves data from an external source such as, for example, mass storage device 104.
  • Developer 410 creates a tree (hierarchical data structure) and sets the root as part of that tree.
  • developer 410 creates meta objects from the tree.
  • Runtime query 420 accesses meta data 260 to retrieve information (ergo, a memory mapped data) representative of a particular hierarchical data structure.
  • runtime query 420 accesses a display for the purpose of generating the relevant display data.
  • Runtime query 420 accesses the parsed and tagged meta objects as developed by developer 410 and displays the current parent/child node family, or at least a portion thereof, in accordance with the representation boundaries for a memory map representing the relevant child nodes.
  • Runtime query 420 retrieves the memory maps generated by developer 410 as needed to display a portion of a hierarchical data structure in accordance with automatic or user inputs that direct navigation of the hierarchical data structure.
  • Runtime data transformation modules 430 retrieve content data from a source, such as, for example, mass storage device 104, during operation of the runtime query 420.
  • Runtime data transformation module 430 transform the data from a source representation into a representation suitable for display on client 106.
  • FIG 4b is a block diagram of one embodiment for client routines.
  • client routines 450 include client applet 452 and client channel 454.
  • Client applet 452 configures client channel 454 and may be embedded within a web browser. In alternate embodiments, client applet 452 may be a micromedia flash or a downloadable plug-in routine.
  • Client channel 454 actively searches out and retrieves relevant information for the display of realtime information on the client 210 display screen.
  • Client channel 454 polls hub 122 for relevant information and receives the information back from the hub 122.
  • Client applet 452 displays the information on client 210.
  • client applet 452 receives information pushed by the hub 122.
  • client applet 452 is used to configure a user profile for the downloading and retrieval of information.
  • business rules and collaborative filtering capabilities may be used to define the information to be downloaded.
  • FIG. 5 is a block diagram of one embodiment for meta object 500.
  • meta object 500 includes meta object name 505, source 510, relationship 515, and content 520.
  • Meta object name 505 is a unique name given to meta object 500 by the user of studio module 205 during creation of meta object 500.
  • Source 510 indicates the source of the data utilized to create meta object 500.
  • Source 510 may be, for example, from web server 235, file server 240, mass storage device 104, or any suitable data source.
  • Relationship 515 contains the relationships developed between meta objects 500.
  • Meta object 500 may include content pointer 520 which points to optional content source for display on the content of the data identified by meta object 500.
  • Figure 6 is a block diagram of one embodiment for query 600.
  • query 600 includes layout 605 and a number of a query results 610.
  • Layout 605 contains information for displaying meta objects 500 on client 106.
  • Query result 610 contains information concerning the current state of the data to displayed on client 106.
  • Query results 610 are retrieved from the data source, such as mass storage 104, and combined with meta project 440 data to display the data on client 106.
  • Runtime query 420 retrieves a meta project 440 from meta data 260 after initialization by client module 210. Runtime query 420 retrieves meta objects 500 from meta project 440 and queries source 510 to return current data for the meta objects 500 into query results 610. Runtime query 420 retrieves meta layout 445 from the returned meta project 440 and places the information in layout 605. Query result 600 is then passed to client module 210 for display.
  • Figure 7 illustrates an exemplary window 700 for the display of content within a broadcasting window 706.
  • the user may access the broadcasting window 706 which moves the context of a particular data structure across the broadcasting window 706.
  • the user may access broadcasting window 706 by moving a pointing device (for example, a mouse) over window 706 and/or clicking on window 706.
  • a pointing device for example, a mouse
  • the content associated with the context being displayed within window 706 is displayed in content window 704.
  • any information may be downloaded and displayed within broadcast window 706.
  • a web page loads with a banner ad in it, several tasks may be performed in the background.
  • the viewer's browser is first enabled by an applet imbedded in the web page. This applet allows the end user to view the banner ad in its intended rendering without any user intervention or downloading of software.
  • the process continues with the activation of a content pointer to a site designated by the advertiser (this may be the advertiser's website, or a host site) and the server at the advertiser's site retrieves the information that the advertiser has designated to be viewed on this web page. The information retrieved depends on the content or context of the web page that the banner ad resides in and/or a user profile held by the advertiser or third party.
  • business rules and collaborative filtering capabilities would be an optional feature.
  • the content is determined by an advertising server, and is a realtime transaction. In this way, banner ad content may change at the discretion of the advertiser and not be subject to the administrative burden of contacting multiple agencies and target banner ad website owners.
  • Broadcast window 706 content may have a carrousel-like motion to it in which the content inside window 706 rotates in a horizontal direction, either from left to right, or right to left. In alternate embodiments, the content may move in any direction.
  • this content is delivered to the web site by the server of the advertiser or host, and may consist of large amounts of information in a visual format.
  • the information may be rendered in frames 708, each frame 708 representing a different advertising item such as, for example, a product, and these products would revolve across the viewer's web page within broadcasting window 706, without any interaction on the part of the end user.
  • Each frame 708 displays content of the meta object containing the advertisement data.
  • the context/ content displayed within window 706 is interactive, and if a frame 708 or image within frame 708 is accessed (for example, by a mouse click), a pop-up window 710 will appear, giving more information about a particular item.
  • a frame 708 or image within frame 708 is accessed (for example, by a mouse click)
  • a pop-up window 710 will appear, giving more information about a particular item.
  • new frames 708 of data may be displayed within broadcast window 706.
  • the view within frames 708 will change as different locations of the associated meta object will be accessed.
  • the user may "drill-down" through the associated meta object containing the advertising information by accessing the displayed frames 708. If a particular image is clicked upon, a new frame opens up in the end user's viewable screen, with content describing the clicked upon item.
  • Both the additional frame of information and the pop-up box are driven from the advertisement server, with content originating at the advertiser site or host site. Again this gives the advertiser the ability to change content and serve it up into a banner in realtime.
  • the new frame that opens with content on the clicked upon item is a live connection to the advertiser's site and is fully enabled to be clicked upon further for item configuration, more information, or purchasing functionality, depending on the intent of the advertiser. In this way, the advertiser gets the end user to the relevant site content, while the current page where the banner ad appears is still on the screen. The end user never leaves the site that has presented the ad banner, but has allowed the end user to visit and interact with the site of the banner advertiser.
  • the advertiser controls the content feed into broadcast window 706, enabling time sensitive offers, regional offers, context sensitive offers and other specialized offers to be displayed within window 706, depending upon the merchandising needs of the advertiser.
  • Figure 8 is a flow diagram of one embodiment for pulling e-casting information.
  • client 205 configures e-casting channel 454.
  • the channel contains the required information for hub 122 to retrieve information from various websites.
  • Client applet 452 may configure channel 454 in a number of ways such as, for example, a user profile, business rules and collaborative filtering capabilities, or the particular content and context of the web page being displayed on client 205.
  • channel 454 polls hub 122 for the associated content.
  • channel 454 actively polls information from hub 122.
  • hub 122 retrieves and sends the relevant content and context information to client 205.
  • the content is determined by the supplier of the information to be displayed within window 706 and is delivered and retrieved by hub 122 in a realtime transaction.
  • hub 122 retrieves meta-objects that are relevant to the information to be displayed.
  • the client receives the information from hub 122 and dynamically displays the content in broadcasting window 706.
  • Processing blocks 810- 820 are continuously processed so that the information displayed within broadcasting window 706 is continuously and automatically updated and displayed in realtime.
  • the information polled from hub 122 by client 205 is animated within broadcast window 706.
  • Figure 9 is a flow diagram of one embodiment for pushing e-casting information to a client 205.
  • client 205 configures e-casting channel 454 as described above in reference at processing block 805 of Figure 8.
  • the channel 454 information is transferred to hub 122.
  • hub 122 determines the relevant content information associated with channel 454 information.
  • hub 122 sends (or pushes) the returned, relevant content to client 205.
  • Hub 122 continuously determines and sends information to the client by re-processing blocks 910 and 915.
  • Client 205 displays the pushed content or context information from hub 122 within broadcasting window 706. In one embodiment, the information pushed by hub 122 is animated within broadcasting window 706.
  • Figure 10 is a flow diagram of one embodiment for displaying e-advertising information.
  • client 205 activates a content pointer to a site designated by an advertiser.
  • the pointer points to the site that may be the advertiser's web site.
  • the pointer may point to a host site different than the advertisers.
  • the server at the advertiser site or host site retrieves the information from the appropriate source based upon associated data.
  • the associated data may be, for example, the content of the associated web page containing broadcasting window 706, context of an associated web page containing broadcasting window 706, a user profile, a plurality of business rules, or a number of collaborated filtering rules.
  • the content to be downloaded is determined by the advertising server in realtime and is continuously and automatically updated by the advertising server.
  • client displays the content received from the advertising server within broadcasting window 706.
  • broadcast window 706 content may have a carousellike motion to it in which the content in broadcast window 706 rotates in a horizontal direction, either from left to right or right to left. In alternate embodiments, the content may move in any direction.
  • the content is delivered on the client 205 by the server and may consist of large amounts of information in visual format. In one embodiment, the information may be in the form of meta objects.

Abstract

A method and system for displaying data in a broadcasting window are described. In one embodiment, a pointer to content information is activated (1005). The content information is retrieved (1010) based upon associated data and displayed within the broadcasting window (1015). In an alternate embodiment, the content information is animated (1020) within the broadcasting window.

Description

A SYSTEM AND METHOD FOR DISPLAYING DATA IN A BROADCASTING
WINDOW
This application is a continuation-in-part of application No. 09/475,711, filed December 30, 1999.
FIELD OF THE INVENTION The present invention relates generally to the field of data representation and more specifically to the display of information items within a broadcasting window.
BACKGROUND OF THE INVENTION As networks and computers have been able to deliver information faster, users have begun to expect instantaneous information and information available from anywhere in the world. The vast amount of information available has created an overload of information for the user.
The so-called "information age" is characterized in that information users are being presented with ever-increasing volumes of information. The presentation format of such information should ideally allow an information user quickly to assess the relevance of a large number of information items, and then efficiently to access information items that are deemed to the relevance and interest. The broader acceptance of the Internet, specifically the World Wide Web, as an information source has dramatically increased the volume of information that is available to an information user. Information retrieval from this vast source is often facilitated through a search engine, which may present a large number of information items to a user. Further, once a user has access to a particular web site, navigation of the various web pages and other information resources that. constitute the web site may be confusing and disorientating. Specifically, the structure of a web site is typically hierarchical, and a user may become disoriented or "lost" within the web site.
To service user needs, product and service features, options, and rules governing valid selections for e-commerce product and service offerings need to change often in a dynamic web environment. However, building web pages to reflect product selections is a tedious, error-prone, and time-consuming process. In addition, updated information is not easily maintained. The nature of wide area networks such as, for example, the Internet, introduces unpredictable network delays in the communication between a browser on a client and a web server. This latency severely hampers the effectiveness of any e-commerce web application as the user is forced to wait for server validation as each selection is made. If a network timeout occurs, user interest may be lost and a potential sale may be lost.
SUMMARY OF THE INVENTION A method and system for displaying data in a broadcasting window are described. In one embodiment, a pointer to content information is activated. The content information is retrieved based upon associated data and displayed within the broadcasting window. In an alternate embodiment, the content information is animated within the broadcasting window.
BRIEF DESCRIPTION OF THE DRAWINGS
The present invention is illustrated by way of example, and not by way of limitation in the figures of the accompanying drawings in which like reference numerals refer to similar elements.
Figure 1 is a block diagram of one embodiment for a network broadcasting window system;
Figure 2a is block diagram of one embodiment for an e-casting system;
Figure 2b is a block diagram of one embodiment for a server of Figure 1;
Figure 2c is an exemplary diagram of a eta object structure;
Figure 3 is a block diagram for one embodiment of a computer architecture for a server of Figure 2b;
Figure 4a is a block diagram of one embodiment for server routines of Figure 2b;
Figure 4b is a block diagram of one embodiment for client routines;
Figure 5 is a block diagram of one embodiment for a meta object- Figure 6 is a block diagram of one embodiment for query results;
Figure 7 illustrates an exemplary window for the display of meta objects from a banner advertisement;
Figure 8 is a flow diagram of one embodiment for pulling e-casting information;
Figure 9 is a flow diagram of one embodiment for pushing e-casting information; and Figure 10 is a flow diagram of one embodiment for displaying e-advertising information.
DETAILED DESCRIPTION
A method and system for displaying data in a broadcasting window are described. In one embodiment, a pointer to content information is activated. The content information is retrieved based upon associated data and displayed within the broadcasting window. In an alternate embodiment, the content information is animated within the broadcasting window.
A method and system for displaying structured data in a broadcasting window are described. In one embodiment, a pointer to data content is activated. Information based upon associated data is retrieved and the information is displayed within the broadcasting window. Content of the information is animated within the broadcasting window.
Although the description that follows assumes that the results of the query are displayed within a broadcasting, animated window display, the embodiments are not so limited. The query results may be used in any suitable fashion depending upon a user's needs and wants. For example, the server may be used to transfer data from a relational database into extended markup language (XML) format and may be used through a application programming interface (API) without connecting the output of the server to a graphical representation.
In addition to creating connections by matching fields from meta objects, connections may also be created that contain a configurable query or queries. A configurable query is programmed within a studio. If a configurable query exists for a meta object, when the meta object query is executed, the configurable query will be executed for that connection. If no configurable query exists for that connection, a server executes code for the query results based upon the original connection.
Meta objects and relationships are independently created and are distinct from their graphical representations. A developer may develop meta object maps and build multiple client applications for the meta object maps. Multiple graphical user interfaces may be created from the same meta object or objects. The meta object query results may be in a variety of formats such as, for example, HTML, XML, or other suitable format. In one embodiment, a developer may create meta objects, define relationships and save the meta objects and relationships. Another developer may identify data sources and save those identification. Some time later, another developer may load the identified data sources and saved meta objects and make the connections between the data sources and the meta objects.
In the following detailed description of embodiments of the invention, reference is made to the accompanying drawings in which like references indicate similar elements, and in which is shown by way of illustration specific embodiments in which the invention may be practiced. Numerous specific details are set forth in order to provide a thorough understanding of the present invention. However, it will be apparent to one skilled in the art that the present invention may be practiced without these specific details. In some instances, well-known structures and devices are shown in block diagram form, rather than in detail, in order to avoid obscuring the present invention. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention, and it is to be understood that other embodiments may be utilized and that logical, mechanical, electrical, and other changes may be made without departing from the scope of the present invention.
Some portions of the detailed descriptions that follow are presented in terms of algorithms and symbolic representations of operations on data bits within a computer memory. These algorithmic descriptions and representations are the means used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. An algorithm is here, and generally, conceived to be a self-consistent sequence of acts leading to a desired result. The acts are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like.
It should be borne in mind, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise or as apparent from the following discussion, it is appreciated that throughout the description, discussions utilizing terms such as "processing" or "computing" or "calculating" or "determining" or "displaying" or the like, refer to the action and processes of a computer system, or similar electronic computing device, that manipulates and transforms data represented as physical (electronic) quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.
The present invention also relates to a system or apparatus for performing the operations herein. This system may be specially constructed for the required purposes, or it may include a general purpose computer selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a computer readable storage medium, such as, for example, any type of disk including floppy disks, optical disks, CD-ROMs, and magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, or any type of media suitable for storing electronic instructions, and each coupled to a computer system bus.
The algorithms and displays presented herein are not inherently related to any particular computer or other apparatus. Various general-purpose systems may be used with programs in accordance with the teachings herein, or it may prove convenient to construct more specialized apparatus to perform the required method. For example, any of the methods according to the present invention may be implemented in hardwired circuitry, by programming a general-purpose processor, or by any combination of hardware and software. One of skill in the art will immediately appreciate that the invention may be practiced with computer system configurations other than those described below, including hand-held devices, multiprocessor systems, microprocessor- based or programmable consumer electronics, network PCs, minicomputers, mainframe computers, and the like. The invention may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. The required structure for a variety of these systems will appear from the description below.
The methods of the invention are described in terms of computer software. If written in a programming language conforming to a recognized standard, sequences of instructions designed to implement the methods may be compiled for execution on a variety of hardware platforms and for interface to a variety of operating systems. In addition, the present invention is not described with reference to any particular programming language. It will be appreciated that a variety of programming languages may be used to implement the teachings of the invention as described herein. Furthermore, it is common in the art to speak of software, in one form or another (e.g., program, procedure, application...), as taking an action or causing a result. Such expressions are merely a shorthand way of saying that execution of the software by a computer causes the processor of the computer to perform an action or produce a result.
Reference in the specification to "one embodiment" or "an embodiment" means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the invention. The appearances of the phrase "in one embodiment" in various places in the specification are not necessarily all referring to the same embodiment.
Figure 1 is a block diagram of one embodiment for a network broadcast window system 100. Referring to Figure 1, system 100 consists of clients 106, 108 connected via wide area network (WAN) 112 to server 102. Server 102 is connected to mass storage device 104. Mass storage device 104 may be any suitable storage medium such as, for example, read only memory (ROM), random access memory (RAM), EPROM's, EEPROM's, magnetic optical discs, or any type of medium suitable for storing electronic data. In an alternate embodiment, wide area network (WAN) 112 may be a local area network (LAN).
Figure 2a is a block diagram of one embodiment for an e-casting system 120. Referring to Figure 2a, a hub (or server) 122 may be connected to a number of clients 124, 126, 128, 130. In one embodiment, system 120 represents members of a community designed by an organization or corporate user. The community 120 creates a closed loop system of select partners to concurrently run individual e-casting channels which enable the exchange of information between hub 122 and clients 124-130. In an alternate embodiment, clients 124-130 may be connected to multiple hubs 122 or connected directly to one another. The connection within the community may be by a local area network, wide area network, or any similar networking system. Clients 124- 130 may be leaf clients (for example, client computers) or may be hubs to additional clients. In one embodiment, client 124 may configure its own e-casting channel which continuously searches out and returns information relevant to its needs. The e-casting channel polls hub 122 for relevant information which is returned to client 124. The returned information is dynamically rendered and may be further observed and acted upon. In an alternate embodiment, hub 122 pushes information to the clients 124-130 based upon preexisting criteria. The information polled by the client 124 may include, for example, pricing information, inventory information, delivery information, or product and other pieces of information. The information is automatically updated in realtime. That is, once a channel is defined by a client 124, the user does not need to perform any further action to have the information automatically updated on client 124.
In one embodiment, advertising information may be sent to the client 124 for display on the client screen. In this embodiment, interactive banner advertisement offerings, which feature advertisement content that is driven by the advertiser's own web site content, is continuously updated and displayed on the client display. The advertiser controls the content feed to the broadcasting window display, enabling time sensitive offers, regional offers, context sensitive offers, and other specialized offers to be displayed within the client broadcasting window. Once an advertiser downloads information to hub 122, the advertiser does not need to actively access or update the information on hub 122. In one embodiment, the information is automatically downloaded from an advertiser's web site to hub 122 after a channel is set up between the hub 122 and the advertiser's server. In an alternate embodiment, hub 122 may act as the advertiser's server.
The display of the advertisement information supports end user activity. This enables the user to navigate through a set of offerings by the advertiser to find the most relevant information that fits the user's needs. The users may browse large volumes of items being displayed within the broadcasting window, depending on the merchandising specification of the advertiser and the interest of the potential buyer. In one embodiment, the display of advertising material is animated in a carousel-like fashion. The advertising information is automatically updated in realtime.
Figure 2b is a block diagram of one embodiment for server 102. Referring to Figure 2b, server 102 is connected to client 106 via bus 202. In an alternate embodiment, server 102 may be connected via WAN 112 to client 106. Client 106 includes studio module 205 and client module 210. Server 102 includes server routines 220 and data source connectivity modules 225. In addition, server 102 is connected to meta data 260, mass storage device 104, web server 235, file server 240, multimedia server 245, legacy systems 250, and enterprise resource planner 255. In alternate embodiments, server 102 may be connected to any of the variety of additional servers and data sources. In an alternate embodiment, meta data 260 may be contained within mass storage device 104. In one embodiment, server 102 is connected via bus 204 to mass storage device 104 and the other servers. In alternate embodiments, server 102 may be connected via a LAN or WAN 112 to mass storage device 104 and the additional servers. In one embodiment, mass storage device 104 contains databases and other data sources.
Software routines contained within studio module 205 interact with server routines 220 to create data structures that are maintained within meta data 260. Server routines 220 retrieve data from any of the variety of data sources such as mass storage device 104, file server 240, multimedia server 245, legacy systems 250, or enterprise resource planner 255. In an alternate embodiment, data may be retrieve from any of a number of additional servers. Data source connectivity modules 225 interact with the connected servers to provide data to server routines 220. Software routines within studio module 205 interact with the server routines 220, to create a number of meta objects from the accessed data. Server routines 220 retrieve and parse the data to create a topographical or spatial representation of the data. Various types of data are extracted and parsed by unique connectivity modules 225. The data is processed to create a standard form of data that may be used by server routines 220. For example, portions of a web page may be extracted between a set of HTML tags or by extracting hyperlinks within the page. Server routines 220 invoke connectivity module 225 which, in turn, return data from the various sources. Connectivity modules 225 know to return the type of data from a given source.
In one embodiment, the topographical representation is in the form of a tree structure. Server routines 220 receive data such as, for example, HTML pages, from a data source such as, for example, web server 235. Server routines 220 parse the HTML page into a topographical representation in the form of a hierarchical data structure of the data such as, for example, a tree structure. The hierarchical data structure, such as, for example, the HTML page, represents a topography or spatial representation of the links for a portion of the HTML page. Studio module 205 manipulates the parsed data to create relationships (or tags) between various nodes within the hierarchical data structure to create meta objects. The meta objects represent a new hierarchical representation of the tagged data. In one embodiment, the data is parsed on an individual basis (that is, each page of data is parsed separately). In an alternate embodiment, multiple sources of data are parsed together to form a single parsed, hierarchical data structure. The meta object is stored in meta data 260.
Client module 210 interacts with server routines 220 during run time to access the meta objects contained within meta data 260. Upon initiation by client module 210, server routines 220 retrieve meta objects from meta data 260 and display the meta object on client 106. In one embodiment, the meta object is displayed by context and/or content. Routines within client module 210 interact with server routines 220 during run-time to create e-client channels and automatically search and return information relevant to client 210.
A meta object may have a logic component or a collection of logic components associated with it. A logic component is executable program code that is executed on the meta object after a query is executed. The logic component may perform calculations on and manipulate the query results. For example, if a meta object has a "price change" field (a number), the logic component may check for the sign of that number. The logic component may then add a new field for the results of the query, for example "color", that will have the value "red" if the price change field number is negative and the value "green" otherwise.
Within studio module 205, a developer may enter the logic component code in a suitable programming language. This entered code becomes the logic component that may be executed at runtime after the meta object query has been executed.
Figure 2c is a diagram one embodiment for of a meta object structure 280. Referring to Figure 2c, meta object structure 280 includes a number of nodes 281 through 289. Each node 281-289 represents a meta object. The connections between nodes (solid lines) represent the relationships that are created between nodes of the meta objects. Nodes 281-289 may be nested meta objects. In one embodiment, meta object structure 280 may be viewed by its structure 290, context 292, or content (data linked to nodes 281-289). Meta object structure 280 may be a tree structure, directional graph, bi-directional graph, or a graph with uni-directional and bi-directional relationships. The structure section of the view provides a high level representation of meta object structure 280 created by studio module 205. The structure displays the name of meta object structure 280 and the names of the meta objects (represented by nodes 281- 289) created from the hierarchical data structure. For example, meta object structure 280 representation of a data base may be displayed as a list that displays the name of the data structure (root node 281) and a list that contains the names of the meta objects within the data structure that were previously tagged and linked to one another (for example, nodes 282, 286, 287, 288, and 289). As a user navigates through meta object structure 280 (either within the structure or context views), the nodes displayed will vary. For example, if the user accesses node 283, the structure view will display nodes 283, 286, 287, 288, and 289.
The context section of the view displays the meta objects as a relationship between the items. For example, for meta object structure 280 that represents a web site, at the top level, the context section displays the name of the data structure at the center and all the meta objects created from the data structure displayed in a broadcasting window representation. In the Figure 2c example, if a user accesses a meta object node 286, meta object nodes 287, 288, and 289 are used to create the representation display. As the user maneuvers between nodes 281-289, the representation changes.
The content section of the view displays detailed information concerning the content of a node 281-289 within meta object structure 280. For example, for meta object structure 280 representing a database, the content section may display what type of data the database contains and how a user may retrieve information from the database. For a node 288, such as, for example, an entry in a catalog database, the content section may display details about node 288, such as the name of node 288, its price, availability, sample usage, and other information. In one embodiment, the content section may display a large number of document types, including hypertext markup language (HTML) and word processing documents, tabulated results of database queries, and advertising information. The content view may be generated by accessing either the structure or context meta object and will change depending upon the node accessed.
Meta object structure 280 may be viewed as a graph with a starting node as its root 281 and the subsequent levels beneath root node 281 as the children 282, 283, 284, grandchildren 285, 286, great grand children, 287, 288, 289, etc. Nodes (281-289) in the displayed tree on client module 210 may be collapsed and expanded to facilitate viewing.
Any node within the tree may be selected to represent the "root" for viewing the context of the data. The context is built from the node and displayed by server routines 220 on client 106. The corresponding "children" of the root node may be, for example, HTML page links. Children of the root node may be mapped to the representation on client 106 within a facet of the context display area. Memory maps are constructed for parent/child node families to a certain user-specified depth within meta object structure 280. In one embodiment, raw data is received and parsed into a hierarchical data structure. Nodes from the hierarchical data structure are selected and stored as meta objects. The meta objects are associated with one another by creating relationships between the meta objects and may be represented as meta object structure 280. The selected meta objects are displayed within the structure display and the relationships are used to map the data to the representation. The creation of meta objects is described in patent application Serial No. 09/475,711, herein incorporated by reference.
Each memory map includes "valid" memory locations to store data concerning a specific child node and "null" memory locations that are empty from the meta objects. Each memory location within each memory map is potentially associated with a facet of the representation, but only facets that are associated with valid memory locations will appear on the representation to be associated with (and to be representative of) a child node. Server routines 220 may continually operate in the background or may operate on request to map the meta objects of which only a portion may be represented by the display at any given time. Accordingly, server routines 220 may continually probe both laterally and vertically within the meta objects for the purpose of identifying links (ergo, hypertext links or other pointers) between nodes. In one embodiment, following links in this browser window area may be reflected with updates to the structure and context areas respectively.
Client module 210 displays a current parent/child node family, or at least a portion thereof, in accordance with the representation boundaries from the memory map representing the relevant child nodes of the meta objects. Server routines 220 retrieve the memory maps generated offline as needed and send the memory maps, as query results, to client module 210 which displays a portion of a meta object in accordance with automatic or user inputs that direct navigation of the meta objects. Figure 3 is a block diagram for one embodiment of a computer architecture for server 102. Referring to Figure 3, computer architecture 300 includes CPU 302, read only memory (ROM) 304, random access memory (RAM) 306, non-volatile memory 308, and input/output (I/O) 310. The components are connected via bus 315. Non-volatile memory 308 includes a stored set of instructions (i.e., software) embodying any one, or all, of the methodologies described herein. The software may also reside completely or at least partially within ROM 304 or RAM 306. The software may be further transmitted or received via a network interface device.
Figure 4a is a block diagram of one embodiment for server routines 220. Referring to Figure 4a, server routines 220 may be maintained within RAM 306 or nonvolatile memory 308 within server 102. Server routines 220 includes developer 410, runtime query 420, and runtime data transformation modules 430. Developer 410 interacts with studio module 205 to create the parsed hierarchical data structures and to create the meta objects from the hierarchical data structure. Runtime query 420 contains software routines for retrieving raw data and meta data 260 and sending the data to client 106. Runtime data transformation modules 430 transform a variety of data components such as, for example, HTML pages or word documents, into a form suitable for display on client 106.
Developer 410 identifies the nodes and structure of the hierarchical data structure and generates a memory mapped representation of the hierarchical data structure (meta objects) that is accessed and utilized by runtime query 420. In one embodiment, developer 410 retrieves data from an external source such as, for example, mass storage device 104. Developer 410 creates a tree (hierarchical data structure) and sets the root as part of that tree. In addition, developer 410 creates meta objects from the tree.
Runtime query 420 accesses meta data 260 to retrieve information (ergo, a memory mapped data) representative of a particular hierarchical data structure. In one embodiment, runtime query 420 accesses a display for the purpose of generating the relevant display data. Runtime query 420 accesses the parsed and tagged meta objects as developed by developer 410 and displays the current parent/child node family, or at least a portion thereof, in accordance with the representation boundaries for a memory map representing the relevant child nodes. Runtime query 420 retrieves the memory maps generated by developer 410 as needed to display a portion of a hierarchical data structure in accordance with automatic or user inputs that direct navigation of the hierarchical data structure.
Runtime data transformation modules 430 retrieve content data from a source, such as, for example, mass storage device 104, during operation of the runtime query 420. Runtime data transformation module 430 transform the data from a source representation into a representation suitable for display on client 106.
Figure 4b is a block diagram of one embodiment for client routines. Referring to Figure 4b, client routines 450 include client applet 452 and client channel 454. Client applet 452 configures client channel 454 and may be embedded within a web browser. In alternate embodiments, client applet 452 may be a micromedia flash or a downloadable plug-in routine. Client channel 454 actively searches out and retrieves relevant information for the display of realtime information on the client 210 display screen. Client channel 454 polls hub 122 for relevant information and receives the information back from the hub 122. Client applet 452 displays the information on client 210. In an alternate embodiment, client applet 452 receives information pushed by the hub 122.
In addition, client applet 452 is used to configure a user profile for the downloading and retrieval of information. In alternate embodiments, business rules and collaborative filtering capabilities may be used to define the information to be downloaded.
Figure 5 is a block diagram of one embodiment for meta object 500. Referring to Figure 5, meta object 500 includes meta object name 505, source 510, relationship 515, and content 520. Meta object name 505 is a unique name given to meta object 500 by the user of studio module 205 during creation of meta object 500. Source 510 indicates the source of the data utilized to create meta object 500. Source 510 may be, for example, from web server 235, file server 240, mass storage device 104, or any suitable data source. Relationship 515 contains the relationships developed between meta objects 500. Meta object 500 may include content pointer 520 which points to optional content source for display on the content of the data identified by meta object 500.
Figure 6 is a block diagram of one embodiment for query 600. Referring to Figure 6, query 600 includes layout 605 and a number of a query results 610. Layout 605 contains information for displaying meta objects 500 on client 106. Query result 610 contains information concerning the current state of the data to displayed on client 106. Query results 610 are retrieved from the data source, such as mass storage 104, and combined with meta project 440 data to display the data on client 106.
Runtime query 420 retrieves a meta project 440 from meta data 260 after initialization by client module 210. Runtime query 420 retrieves meta objects 500 from meta project 440 and queries source 510 to return current data for the meta objects 500 into query results 610. Runtime query 420 retrieves meta layout 445 from the returned meta project 440 and places the information in layout 605. Query result 600 is then passed to client module 210 for display.
Figure 7 illustrates an exemplary window 700 for the display of content within a broadcasting window 706. The user may access the broadcasting window 706 which moves the context of a particular data structure across the broadcasting window 706. The user may access broadcasting window 706 by moving a pointing device (for example, a mouse) over window 706 and/or clicking on window 706. As the user accesses a particular eleme t 708, the content associated with the context being displayed within window 706 is displayed in content window 704. Although the description which follows is for the display of advertisements, any information may be downloaded and displayed within broadcast window 706.
In one embodiment, when a web page loads with a banner ad in it, several tasks may be performed in the background. The viewer's browser is first enabled by an applet imbedded in the web page. This applet allows the end user to view the banner ad in its intended rendering without any user intervention or downloading of software. The process continues with the activation of a content pointer to a site designated by the advertiser (this may be the advertiser's website, or a host site) and the server at the advertiser's site retrieves the information that the advertiser has designated to be viewed on this web page. The information retrieved depends on the content or context of the web page that the banner ad resides in and/or a user profile held by the advertiser or third party. In alternate embodiments, business rules and collaborative filtering capabilities would be an optional feature. The content is determined by an advertising server, and is a realtime transaction. In this way, banner ad content may change at the discretion of the advertiser and not be subject to the administrative burden of contacting multiple agencies and target banner ad website owners.
Once the content is delivered to client 205 on the target web page, the viewer may view the advertisement. Broadcast window 706 content may have a carrousel-like motion to it in which the content inside window 706 rotates in a horizontal direction, either from left to right, or right to left. In alternate embodiments, the content may move in any direction. As stated above, this content is delivered to the web site by the server of the advertiser or host, and may consist of large amounts of information in a visual format. The information may be rendered in frames 708, each frame 708 representing a different advertising item such as, for example, a product, and these products would revolve across the viewer's web page within broadcasting window 706, without any interaction on the part of the end user. Each frame 708 displays content of the meta object containing the advertisement data.
The context/ content displayed within window 706 is interactive, and if a frame 708 or image within frame 708 is accessed (for example, by a mouse click), a pop-up window 710 will appear, giving more information about a particular item. In one embodiment, as the user clicks on a particular frame 708, new frames 708 of data may be displayed within broadcast window 706. As the user navigates through the frames 708, the view within frames 708 will change as different locations of the associated meta object will be accessed. Thus, the user may "drill-down" through the associated meta object containing the advertising information by accessing the displayed frames 708. If a particular image is clicked upon, a new frame opens up in the end user's viewable screen, with content describing the clicked upon item. Both the additional frame of information and the pop-up box are driven from the advertisement server, with content originating at the advertiser site or host site. Again this gives the advertiser the ability to change content and serve it up into a banner in realtime. The new frame that opens with content on the clicked upon item is a live connection to the advertiser's site and is fully enabled to be clicked upon further for item configuration, more information, or purchasing functionality, depending on the intent of the advertiser. In this way, the advertiser gets the end user to the relevant site content, while the current page where the banner ad appears is still on the screen. The end user never leaves the site that has presented the ad banner, but has allowed the end user to visit and interact with the site of the banner advertiser. The advertiser controls the content feed into broadcast window 706, enabling time sensitive offers, regional offers, context sensitive offers and other specialized offers to be displayed within window 706, depending upon the merchandising needs of the advertiser. In one embodiment, there is no further need for the advertiser to interface with the advertisement tra fic agency nor with the actual web site owner whom is serving up the web page containing the advertisement, in order to update change the content offering to be displayed in window 706 after its original placement.
Figure 8 is a flow diagram of one embodiment for pulling e-casting information. Initially at processing block 805, client 205 configures e-casting channel 454. The channel contains the required information for hub 122 to retrieve information from various websites. Client applet 452 may configure channel 454 in a number of ways such as, for example, a user profile, business rules and collaborative filtering capabilities, or the particular content and context of the web page being displayed on client 205.
At processing block 810, channel 454 polls hub 122 for the associated content. In this embodiment, channel 454 actively polls information from hub 122.
At processing block 815, hub 122 retrieves and sends the relevant content and context information to client 205. The content is determined by the supplier of the information to be displayed within window 706 and is delivered and retrieved by hub 122 in a realtime transaction. In one embodiment, hub 122 retrieves meta-objects that are relevant to the information to be displayed.
At processing block 820, the client receives the information from hub 122 and dynamically displays the content in broadcasting window 706. Processing blocks 810- 820 are continuously processed so that the information displayed within broadcasting window 706 is continuously and automatically updated and displayed in realtime. In one embodiment, the information polled from hub 122 by client 205 is animated within broadcast window 706.
Figure 9 is a flow diagram of one embodiment for pushing e-casting information to a client 205. Initially at processing block 905, client 205 configures e-casting channel 454 as described above in reference at processing block 805 of Figure 8. The channel 454 information is transferred to hub 122.
At processing block 910, hub 122 determines the relevant content information associated with channel 454 information. At processing block 915, hub 122 sends (or pushes) the returned, relevant content to client 205. Hub 122 continuously determines and sends information to the client by re-processing blocks 910 and 915. Client 205 displays the pushed content or context information from hub 122 within broadcasting window 706. In one embodiment, the information pushed by hub 122 is animated within broadcasting window 706.
Figure 10 is a flow diagram of one embodiment for displaying e-advertising information. Initially at processing block 1005, client 205 activates a content pointer to a site designated by an advertiser. In one embodiment, the pointer points to the site that may be the advertiser's web site. In an alternate embodiment, the pointer may point to a host site different than the advertisers.
At processing block 1010, the server at the advertiser site or host site retrieves the information from the appropriate source based upon associated data. The associated data may be, for example, the content of the associated web page containing broadcasting window 706, context of an associated web page containing broadcasting window 706, a user profile, a plurality of business rules, or a number of collaborated filtering rules. The content to be downloaded is determined by the advertising server in realtime and is continuously and automatically updated by the advertising server.
At processing block 1015, client displays the content received from the advertising server within broadcasting window 706.
At processing block 1020, the client animates the content within the broadcasting window 706. In one embodiment, broadcast window 706 content may have a carousellike motion to it in which the content in broadcast window 706 rotates in a horizontal direction, either from left to right or right to left. In alternate embodiments, the content may move in any direction. The content is delivered on the client 205 by the server and may consist of large amounts of information in visual format. In one embodiment, the information may be in the form of meta objects.
The specific arrangements and methods herein are merely illustrative of the principles of this invention. Numerous modifications in form and detail may be made by those skilled in the art without departing from the true spirit and scope of the invention.

Claims

CLAIMS What is claimed is:
1. A method of displaying data in a broadcasting window comprising: activating (1005) a pointer to content information; retrieving (1010) the content information based upon associated data; and displaying (1015) the content information within the broadcasting window.
2. The method of claim 1 further comprising: animating (1020) the content information within the broadcasting window.
3. The method of claim 2 further comprising: activating a pop-up window by accessing the animated content information.
4. The method of claim 3 wherein the pop-up window contains added information about the content information.
5. The method of claim 3 further comprising: activating a new frame by accessing a frame of the animated content.
6. The method of claim 2 wherein animating further comprises rotating the content information with a carrousel-like motion.
7. The method of claim 2 wherein animating is automatic.
8. The method of claim 1 wherein the associated data is a content of an associated web page containing the broadcasting window, a context of an associated web page containing the broadcasting window, a user profile, a plurality of business rules, or a plurality of collaborative filtering rules.
9. The method of claim 1 wherein the content information is displayed as a plurality of frames of data.
10. The method of claim 9 wherein each frame of the plurality of frames represents a different data item.
11. The method of claim 1 further comprising: enabling at least one web page containing an associated broadcasting window.
12. A method of displaying data in a broadcasting window comprising: polling (810) a hub for content information based upon associated data; receiving (815) relevant content information from the hub; and displaying (820) the relevant content information within the broadcasting window.
13. The method of claim 12 further comprising: configuring a channel based upon the associated data.
14. The method of claim 12 further comprising: animating the relevant content information within the broadcasting window.
15. The method of claim 12 wherein the associated data is a content of an associated web page containing the broadcasting window, a context of an associated web page containing the broadcasting window, a user profile, a plurality of business rules, or a plurality of collaborative filtering rules.
16. The method of claim 12 wherein the content information is displayed as a plurality of frames of data.
17. The method of claim 16 wherein each frame of the plurality of frames represents a different data item.
18. The method of claim 12 further comprising: enabling at least one web page containing an associated broadcasting window.
19. A method of displaying data in a broadcasting window comprising: determining (910) relevant content information based upon associated data; and sending (915) the relevant content information to a client.
20. The method of claim 19 further comprising: displaying the relevant content information within the broadcasting window on the client.
21. The method of claim 20 further comprising: animating the relevant content information within the broadcasting window.
22. The method of claim 19 wherein the associated data is a content of an associated web page containing the broadcasting window, a context of an associated web page containing the broadcasting window, a user profile, a plurality of business rules, or a plurality of collaborative filtering rules.
23. The method of claim 20 wherein the content information is displayed as a plurality of frames of data.
24. The method of claim 23 wherein each frame of the plurality of frames represents a different data item.
25. The method of claim 20 further comprising: enabling at least one web page containing an associated broadcasting window.
26. A system for displaying data in a broadcasting window comprising: means for activating (1005) a pointer to content information; means for retrieving (1010) the content information based upon associated data; and means for displaying (1015) the content information within the broadcasting window.
27. A system for displaying data in a broadcasting window comprising: means for polling (810) a hub for content information based upon associated data; means for receiving (815) relevant content information from the hub; and means for displaying (820) the relevant content information within the broadcasting window.
28. A system for displaying data in a broadcasting window comprising: means for determining (910) relevant content information based upon associated data; and means for sending (915) the relevant content information to a client.
29. A computer readable medium comprising instructions, which when executed on a processor, perform a method for displaying data in a broadcasting window, comprising: activating (1005) a pointer to content information; retrieving (1010) the content information based upon associated data; and displaying (1015) the content information within the broadcasting window.
30. A computer readable medium comprising instructions, which when executed on a processor, perform a method for displaying data in a broadcasting window, comprising: polling (810) a hub for content information based upon associated data; receiving (815) relevant content information from the hub; and displaying (820) the relevant content information within the broadcasting window.
31. A computer readable medium comprising instructions, which when executed on a processor, perform a method for displaying data in a broadcasting window, comprising: determining (910) relevant content information based upon associated data; and sending (915) the relevant content information to a client.
32. A system for displaying data in a broadcasting window comprising: an applet (452) to activate a pointer to content information and to retrieve the content information based upon associated data; and a client (106) to display the content information within the broadcasting window.
33. The system of claim 32 wherein the client is further configured to animate the content information within the broadcasting window.
34. The system of claim 33 further comprising: means for activating a pop-up window by accessing the animated content.
35. The system of claim 34 further comprising: means for activating a new frame by accessing a frame of the animated content.
36. The system of claim 34 wherein the pop-up window contains added information about the data item.
37. The system of claim 33 wherein the client further rotates the content information with a carrousel-like motion.
38. The system of claim 33 wherein the client further automatically animates the content information.
39. The system of claim 32 wherein the associated data is a content of an associated web page containing the broadcasting window, a context of an associated web page containing the broadcasting window, a user profile, a plurality of business rules, or a plurality of collaborative filtering rules.
40. The system of claim 32 wherein the information is displayed as a plurality of frames of data.
41. The system of claim 40 wherein each frame of the plurality of frames represents a different data item.
42. The system of claim 32 further comprising: a browser to enable at least one web page containing an associated broadcasting window.
43. A system for displaying data in a broadcasting window comprising: a channel (454) configured to poll a hub for content information based upon associated data, and to receive relevant content information from the hub; and a client applet (452) configured to display the relevant content information within the broadcasting window.
44. The system of claim 43 wherein the client applet is further configured to initialize a channel based upon the associated data.
45. The system of claim 43 wherein the client applet is further configured to animate the relevant content information within the broadcasting window.
46. The system of claim 43 wherein the associated data is a content of an associated web page containing the broadcasting window, a context of an associated web page containing the broadcasting window, a user profile, a plurality of business rules, or a plurality of collaborative filtering rules.
47. The system of claim 43 wherein the client applet is further configured to display the content information as a plurality of frames of data.
48. The system of claim 47 wherein each frame of the plurality of frames represents a different data item.
49. The system of claim 43 wherein the client applet is further configured to enable at least one web page containing an associated broadcasting window.
50. A system for displaying data in a broadcasting window comprising: a hub configured to determine relevant content information based upon associated data, and to send the relevant content information to a client.
51. The system of claim 50 further comprising: a client applet to display the relevant content information within the broadcasting window.
52. The system of claim 51 wherein the client applet is further configured to animate the relevant content information within the broadcasting window.
53. The system of claim 50 wherein the associated data is a content of an associated web page containing the broadcasting window, a context of an associated web page containing the broadcasting window, a user profile, a plurality of business rules, or a plurality of collaborative filtering rules.
54. The system of claim 51 wherein the client applet is further configured to display the content information as a plurality of frames of data.
55. The system of claim 54 wherein each frame of the plurality of frames represents a different data item.
56. The system of claim 51 wherein the client applet is further configured to enable at least one web page containing an associated broadcasting window.
PCT/US2000/008120 1999-12-30 2000-03-27 A system and method for displaying data in a broadcasting window WO2001050238A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CA002395972A CA2395972A1 (en) 1999-12-30 2000-03-27 A system and method for displaying data in a broadcasting window
AU39258/00A AU3925800A (en) 1999-12-30 2000-03-27 A system and method for displaying data in a broadcasting window
JP2001550532A JP2003519427A (en) 1999-12-30 2000-03-27 System and method for displaying data in a broadcasting window
EP00918452A EP1247164A1 (en) 1999-12-30 2000-03-27 A system and method for displaying data in a broadcasting window

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US09/475,711 1999-12-30
US09/475,711 US20010043210A1 (en) 1999-01-14 1999-12-30 System and method for the construction of data
US50423200A 2000-02-15 2000-02-15
US09/504,232 2000-02-15

Publications (1)

Publication Number Publication Date
WO2001050238A1 true WO2001050238A1 (en) 2001-07-12

Family

ID=27044905

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2000/008120 WO2001050238A1 (en) 1999-12-30 2000-03-27 A system and method for displaying data in a broadcasting window

Country Status (5)

Country Link
EP (1) EP1247164A1 (en)
JP (1) JP2003519427A (en)
AU (1) AU3925800A (en)
CA (1) CA2395972A1 (en)
WO (1) WO2001050238A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5572643A (en) * 1995-10-19 1996-11-05 Judson; David H. Web browser with dynamic display of information objects during linking
US5905492A (en) * 1996-12-06 1999-05-18 Microsoft Corporation Dynamically updating themes for an operating system shell
US5959623A (en) * 1995-12-08 1999-09-28 Sun Microsystems, Inc. System and method for displaying user selected set of advertisements
US5959621A (en) * 1996-12-06 1999-09-28 Microsoft Corporation System and method for displaying data items in a ticker display pane on a client computer

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5572643A (en) * 1995-10-19 1996-11-05 Judson; David H. Web browser with dynamic display of information objects during linking
US5959623A (en) * 1995-12-08 1999-09-28 Sun Microsystems, Inc. System and method for displaying user selected set of advertisements
US5905492A (en) * 1996-12-06 1999-05-18 Microsoft Corporation Dynamically updating themes for an operating system shell
US5959621A (en) * 1996-12-06 1999-09-28 Microsoft Corporation System and method for displaying data items in a ticker display pane on a client computer

Also Published As

Publication number Publication date
AU3925800A (en) 2001-07-16
EP1247164A1 (en) 2002-10-09
JP2003519427A (en) 2003-06-17
CA2395972A1 (en) 2001-07-12

Similar Documents

Publication Publication Date Title
US6370537B1 (en) System and method for the manipulation and display of structured data
US10600084B2 (en) System and method for a modular user controlled search engine
US7076453B2 (en) System and method for designing and operating an electronic store
US6775675B1 (en) Methods for abstracting data from various data structures and managing the presentation of the data
US5987480A (en) Method and system for delivering documents customized for a particular user over the internet using imbedded dynamic content
US6931600B1 (en) Integrating into an application objects that are provided over a network
US20080255967A1 (en) System and method for comparison shopping
US20010049635A1 (en) User interface and associated data source
US20010043210A1 (en) System and method for the construction of data
WO2001037539A2 (en) Network-based sales system
US7546290B2 (en) Systems and methods for extracting and adapting data
KR20060094947A (en) Self-service catalog manager implemented on a communications network
WO2002003243A1 (en) Integration of third party sites into internet mall
EP1247164A1 (en) A system and method for displaying data in a broadcasting window
JP2012212471A (en) Web-pos system
JP2002108939A (en) Information managing system for web site for performing electronic commerce
US8190654B2 (en) Bulk selection electronic tool
EP1174802A2 (en) Method for global data and information transmission from directories and a language-image-synthesis processor for same
JP2001283086A (en) System and method for providing information and software storage medium
WO2001009773A1 (en) Dynamic data gathering markup language
EP1280073A1 (en) Integrating into an application objects that are provided over a network
JP2002056290A (en) Method for storing and providing advertisement information

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

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

AL Designated countries for regional patents

Kind code of ref document: A1

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

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

Ref document number: 2000918452

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: IN/PCT/2002/861/KOL

Country of ref document: IN

WWE Wipo information: entry into national phase

Ref document number: 2395972

Country of ref document: CA

ENP Entry into the national phase

Ref document number: 2001 550532

Country of ref document: JP

Kind code of ref document: A

WWP Wipo information: published in national office

Ref document number: 2000918452

Country of ref document: EP

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

WWW Wipo information: withdrawn in national office

Ref document number: 2000918452

Country of ref document: EP