System, method and apparatus for creating and using a virtual layer within a web browsing environment
A system and a method for configuring a user-editable layer within a network are disclosed. The system includes a client computing system including a web browser. The web browser further includes a loaded webpage configured to obtain web content from a universal network server through a web address. The system further includes an application object model to collect objects from the client computing system and the universal network server. The system for configuring the user-editable layer within the network further includes a plug-in unit coupled to a layer definition server and an authenticating server for authenticating user credential information. The user-editable layer may include at least one of a virtual layer, an emulating layer, an upgradable layer and the like.
This application claims priority to U.S. Provisional Application No. 61/058,792 filed on Jun. 4, 2008.
BACKGROUND AND FIELD OF THE INVENTIONThe present invention generally relates to a technique for enabling interactive capabilities between users of the World Wide Web and content providers of the World Wide Web. More particularly, the present invention relates to a system and a method for configuring a user interface comprised of an editable layer within a network.
Description of Related ArtTypically, users interact with the internet through World Wide Web (WWW) servers and World Wide Web (WWW) pages which offer hypertext capabilities. Hyper Text Markup Language (HTML) is a scripting or programming language which enables the content providers or developers of World Wide Web pages to place hyperlinks within World Wide Web pages which then link to related content or data present in other World Wide Web pages. The content or data present in each web page can be navigated by the end users of World Wide Web using a Graphical User Interface (GUI).
Conventionally, the end users of the World Wide Web are able to read and gather the content or data present in World Wide Web pages placed by the content providers. Furthermore, the end users of the World Wide Web are able to interact with the web page, as well as other end users, based on the type of functionality offered by the content providers of the World Wide Web.
In general, the conventional technologies as described above have not advanced significantly relative to the growth of internet. Moreover, the conventional techniques lack the ability of editing or modifying existing World Wide Web pages virtually by the end. The conventional techniques also lack the ability of retrieving and accumulating data from multiple web pages that the end user is not currently viewing. Further, they do not allow for simultaneously manipulating and reposting the retrieved data on to a layer present over another World Wide Web page. The World Wide Web pages that can be manipulated or interacted by the end users are the pages that have been created by the World Wide Web content providers.
Hence, there is need for an application or a program running on the end users network device that enables the end user to virtually edit the appearance or functionality of an existing World Wide Web page by making the modifications on a virtual layer that is superimposed onto the World Wide Web page.
SUMMARYA system and a method are disclosed for configuring a user-editable layer within a network. In accordance with exemplary embodiments of the present invention, according to a first aspect of the invention, a system for configuring a user-editable layer within a network includes a client computing system further including a web browser including a loaded web page configured to obtain web content from a universal network server through a web address. The user-editable layer may include at least one of a virtual layer, an emulating layer, an upgradable layer and the like. A Graphical User Interface (GUI) is adaptable to a domain of the web browser for enabling a visual access to the loaded web page and the user-editable layer.
According to the first aspect, the system for configuring a user-editable layer within a network includes a layer definition server including an application object model to collect objects from the client computing system and the universal network server to enable a comparison between the objects of the application object model and the web address and displaying the web content on the user-editable layer responsive to a match generated following the comparison.
According to the first aspect, the system for configuring a user-editable layer within a network includes a layer definition server including an application object model for displaying a visual resolution enabled superimposed form of the web content on the user-editable layer adaptable to the loaded web page. Once generated, the user-editable layer generated using a layer markup language may be included in the layer definition server. The layer markup language includes built-in logical nodes for avoiding a need of writing scripts for enabling objects for executing events.
According to the first aspect, the system for configuring a user-editable layer within a network includes a plug-in unit coupled to the layer definition server and an authentication server for: 1) authenticating user credential information, 2) transferring the web content pertaining to the user-editable layer to the plug-in unit responsive to the authentication and 3) rendering the transferred web content on the client computing system while enabling an edit feature for the user-editable layer. The plug-in unit includes a logical simulator sub-unit further including a license key for enabling a user-editable layer configuration in the client computing system. The plug-in unit includes a client software sub-unit further including a license key for enabling a user-editable layer configuration in the client computing system. The application object model includes a document object model unit for posting to the plug-in unit information, indexes and references pertaining to downloaded object in the client computing system further pertaining to markup languages.
According to the first aspect, the system for configuring a user-editable layer within a network includes the authentication server coupled to the layer definition server for verifying a need for authenticating a user credential information, transferring the web content pertaining to at least one user-editable layer to the plug-in unit from the layer definition server if minimal authentication is needed for the user credential information and rendering the transferred web content to the client computing system through the plug-in unit including a client software module.
According to the first aspect, the system for configuring a user-editable layer within a network includes the authentication server coupled to the layer definition server for verifying a need for authenticating a user credential information, transferring the web content pertaining to at least one user-editable layer to the plug-in unit from the layer definition server if minimal authentication is needed for the user credential information and rendering the transferred web content to the client computing system through the web browser. The layer definition server sends an authentication request to the plug-in unit including the client software sub-unit, wherein an authentication is required for user credentials, wherein a user enters credentials into a message box in the client software sub-unit, wherein the entered credentials are sent to the server for verification, wherein the authentication server sends an authentication verified signal to the client software sub-unit further sending the authentication verified signal to the layer definition server, and wherein the layer definition server sends an authenticated version of the web content to the client software sub-unit for loading onto the client computing system.
According to a second aspect, a method for configuring an editable virtual layer in an internet browsing environment is disclosed. The method includes a user opening a predetermined web browser through a client computing system to reach a universal network server including a World Wide Web domain.
According to the second aspect, the method for configuring an editable virtual layer in an internet browsing environment includes triggering a virtual layer software sub-unit responsive to the user opening the web browser for enabling a visual access permission for the editable virtual layer through the predetermined web browser.
According to the second aspect, the method for configuring an editable virtual layer in an internet browsing environment includes navigating to a uniform resource locator (URL) through the predetermined web browser responsive to triggering the virtual layer software sub-unit. The virtual layer software sub-unit includes a license key for enabling an editable virtual layer configuration in the client computing system.
According to the second aspect, the method for configuring an editable virtual layer in an internet browsing environment includes transferring the URL information to a server unit configured to store a plurality of layer extensions and configured to render the plurality of layer extensions while collecting objects from the client computing system and universal network server through an application object model for enabling a comparison between objects of the application object model and the URL, displaying a plurality of layer extensions on the editable virtual layer in an overlying manner while maintaining visual resolution between a web page loaded through the URL and the plurality of layer extensions, the rendering being responsive to a match generated following the comparison. The server unit includes a content server unit adaptable to the application object model.
According to the second aspect, the method for configuring an editable virtual layer in an internet browsing environment includes aggregating objects corresponding to the plurality of layer extensions and corresponding to the URL using a layer markup language. The step of aggregating the objects is executed through a layer definition server unit adaptable to the layer markup language including a plurality of built-in logical tags for avoiding a need of writing scripts for enabling objects for executing events. The step of aggregating objects includes rendering a menu user interface (UI) at a predetermined location in a page for the predetermined web browser, executing an event in the layer markup language following a user triggered signal through the client computing system and enabling a series of editing modules on to the editable virtual layer responsive to the execution of the event. In absence of a user triggered signal asking the user whether the user has triggered any signal and returning to the page after a predetermined delay in absence of further response.
According to the second aspect, the method for configuring an editable virtual layer in an internet browsing environment further includes loading a pre-rendered layer markup language module, returning the layer markup language to the virtual layer software sub-unit including a plurality of layer extensions present on the URL and having the virtual layer software sub-unit executing initialization routines in the layer markup language.
According to a third aspect, a computer readable medium including a plurality of computer readable instructions is disclosed. The computer readable medium including a plurality of computer readable instructions which when executed by at least one computer causes configuring a client computing system further includes a web browser including a loaded web page for obtaining a web content from a universal network server through a web address.
According to the third aspect, the computer readable medium including a plurality of computer readable instructions which when executed by at least one computer causes: 1) configuring a layer definition server including an application object model for collecting objects from the client computing system and the universal network server to enable a comparison between objects of the application object model and the web address; 2) displaying the web content on the user-editable layer responsive to a match generated following the comparison; 3) displaying a visual resolution enabled superimposed form of the web content on the user-editable layer adaptable to visual environment of the loaded web page, wherein the user-editable layer is generated using a layer markup language included in a layer definition server.
According to the third aspect, the computer readable medium may include a plurality of computer readable instructions which when executed by at least one computer causes: 1) authenticating user credential information, 2) transferring the web content pertaining to the user-editable layer to the plug-in unit responsive to the authentication; and 3) rendering the transferred web content on the client computing system while enabling an edit feature for the user-editable layer.
Other objects and advantages of the present invention will become apparent to those skilled in the art upon reading the following detailed description of the preferred embodiments, in conjunction with the accompanying drawings, wherein like reference numerals have been used to designate like elements, and wherein:
Exemplary embodiments of the present invention are directed to a system and a method for configuring a user-editable layer within a network. The present technique describes a method for enabling interactive capabilities between users of the World Wide Web as well as between content providers and users of World Wide Web.
In accordance with exemplary embodiments of the present invention, according to a first aspect of the invention, a system for configuring a user-editable layer within a network includes a client computing system further including a web browser including a loaded web page configured to obtain web content from a universal network server through a web address. The user-editable layer may include at least one of a virtual layer, an emulating layer, an upgradable layer and the like. A Graphical User Interface (GUI) is adaptable to a domain of the web browser for enabling a visual access to the loaded web page and the user-editable layer.
According to the first aspect, the system for configuring a user-editable layer within a network includes a layer definition server including an application object model to collect objects from the client computing system and the universal network server to enable a comparison between the objects of the application object model and the web address and displaying the web content on the user-editable layer responsive to a match generated following the comparison.
According to the first aspect, the system for configuring a user-editable layer within a network includes a layer definition server including an application object model for displaying a visual resolution enabled superimposed form of the web content on the user-editable layer adaptable to the loaded web page, the user-editable layer generated using a layer markup language included in a layer definition server. The layer markup language includes built-in logical tags for avoiding a need of writing scripts for enabling objects for executing events.
According to the first aspect, the system for configuring a user-editable layer within a network includes a plug-in unit coupled to the layer definition server and an authentication server for authenticating user credential information, transferring the web content pertaining to the user-editable layer to the plug-in unit responsive to the authentication and rendering the transferred web content on the client computing system while enabling an edit feature for the user-editable layer. The plug-in unit includes a logical simulator sub-unit further including a license key for enabling a user-editable layer configuration in the client computing system. The plug-in unit includes a client software sub-unit further including a license key for enabling a user-editable layer configuration in the client computing system. The application object model includes a document object model unit for posting to the plug-in unit information, indexes and references pertaining to downloaded object in the client computing system further pertaining to markup languages.
According to the first aspect, the system for configuring a user-editable layer within a network includes the authentication server coupled to the layer definition server for verifying a need for authenticating a user credential information, transferring the web content pertaining to at least one user-editable layer to the plug-in unit from the layer definition server if minimal authentication is needed for the user credential information and rendering the transferred web content to the client computing system through the plug-in unit including a client software module.
According to the first aspect, the system for configuring a user-editable layer within a network includes the authentication server coupled to the layer definition server for verifying a need for authenticating a user credential information, transferring the web content pertaining to at least one user-editable layer to the plug-in unit from the layer definition server if minimal authentication is needed for the user credential information and rendering the transferred web content to the client computing system through the web browser. The layer definition server sends an authentication request to the plug-in unit including the client software sub-unit, wherein an authentication is required for user credentials, wherein a user enters credentials into a message box in the client software sub-unit, wherein the entered credentials are sent to the server for verification, wherein the authentication server sends an authentication verified signal to the client software sub-unit further sending the authentication verified signal to the layer definition server, and wherein the layer definition server sends an authenticated version of the web content to the client software sub-unit for loading on to the client computing system.
According to a second aspect, a method for configuring an editable virtual layer in an internet browsing environment is disclosed. The method includes a user opening a predetermined web browser through a client computing system to reach a universal network server including a World Wide Web domain.
According to the second aspect, the method for configuring an editable virtual layer in an internet browsing environment includes triggering a virtual layer software sub-unit responsive to the user opening the web browser for enabling a visual access permission for the editable virtual layer through the predetermined web browser.
According to the second aspect, the method for configuring an editable virtual layer in an internet browsing environment includes navigating to a uniform resource locator (URL) through the predetermined web browser responsive to triggering the virtual layer software sub-unit. The virtual layer software sub-unit includes a license key for enabling an editable virtual layer configuration in the client computing system.
According to the second aspect, the method for configuring an editable virtual layer in an internet browsing environment includes transferring the URL information to a server unit configured to store a plurality of layer extensions and configured to render the plurality of layer extensions while collecting objects from the client computing system and universal network server through an application object model for enabling a comparison between objects of the application object model and the URL, displaying a plurality of layer extensions on the editable virtual layer in an overlying manner while maintaining visual resolution between a web page loaded through the URL and the plurality of layer extensions, the rendering being responsive to a match generated following the comparison. The server unit includes a content server unit adaptable to the application object model.
According to the second aspect, the method for configuring an editable virtual layer in an internet browsing environment includes aggregating objects corresponding to the plurality of layer extensions and corresponding to the URL using a layer markup language. The step aggregating objects is executed through a layer definition server unit adaptable to the layer markup language including a plurality of built-in logical nodes for avoiding a need of writing scripts for enabling objects for executing events. The step of aggregating objects includes rendering a menu user interface (UI) at a predetermined location in a page for the predetermined web browser for no layer applications present for the page, executing an event in the layer markup language following a user triggered signal through the client computing system and enabling a series of editing modules on to the editable virtual layer responsive to the execution of the event. In absence of a user triggered signal asking the user whether the user has triggered any signal and returning to the page after a predetermined delay in absence of further response from the user and in presence of a true signal to a page unloading query returning to the page immediately. According to the second aspect, the method for configuring an editable virtual layer in an internet browsing environment further includes loading a pre-rendered layer markup language module, returning the layer markup language to the virtual layer software sub-unit including a plurality of layer extensions present on the URL and the virtual layer software sub-unit executing initialization routines in the layer markup language.
According to a third aspect, a computer readable medium including a plurality of computer readable instructions is disclosed. The computer readable medium includes computer readable instructions which when executed by at least one computer causes configuring a client computing system and web browser to obtain web content from a universal network server through a web address.
According to the third aspect, the computer readable medium including a plurality of computer readable instructions which when executed by at least one computer causes configuring a layer definition server comprising an application object model for collecting objects from the client computing system and the universal network server to enable a comparison between objects of the application object model and the web address and displaying the web content on the user-editable layer responsive to a match generated following the comparison, for displaying a visual resolution enabled superimposed form of the web content on the user-editable layer adaptable to visual environment of the loaded web page, the user-editable layer generated using a layer markup language included in a layer definition server.
According to the third aspect, the computer readable medium including a plurality of computer readable instructions which when executed by at least one computer causes: 1) authenticating user credential information, 2) transferring the web content pertaining to the user-editable layer to the plug-in unit responsive to the authentication and 3) rendering the transferred web content on the client computing system while enabling an edit feature for the user-editable layer.
According to an exemplary embodiment of the present invention, the virtual layer is superimposed onto web sites within the client's web browser and includes functionality that can be added to a user's interactive capabilities with and within the World Wide Web. In accordance with an example of the invention, the system is preferably implemented through a new XML schema called YLML (Yontoo Layer Markup Language). This new language contains executable programming tags, referenceable data tags, renderable UI tags and the like. Unlike HTML, which is a document markup language that is sometimes used as an application markup language simply because it is widely supported and the industry norm, YLML is a true application markup language that is different from HTML in that it has executable nodes and does not follow the same DOM structure that HTML does. YLML is also different from other XML languages in that it does not use code-behind. YLML does not require a separate file with logic source code, nor does it have imbedded logic using external languages. While other dynamic versions of XML require the use of code-behind or require the addition of external languages such as JavaScript and VBScript to be imbedded into script tags, YLML has native executable logic tags that eliminate the requirement for other languages to be imbedded into tags or used for code-behind.
According to an exemplary embodiment of the present invention, a new object model that works in conjunction with YLML is disclosed. This object model is called a YOM (Yontoo Object Model). A DOM can use only the information that exists in the document it is referencing to create a set of objects that are used to access the data within the HTML. The YOM on the other hand, is a single template that has an established structure that enables access to any information, data or content accessible through a computer system, including, but not restricted to the World Wide Web, databases, data stores, a client's computer or other content sources. This implies that unlike a DOM, which only creates objects for tags for content that exists in whole within the HTML document that it references, the YOM's established structure enables it to access specific content that exists on the World Wide Web, a database, a data store or any other location connected to a networked computer system without requiring content beyond the scope of exactly what is needed to be loaded. This enables the YOM to create objects within the model using a JIT (just in time) method, as opposed to creating the entirety of the model when the incoming file is parsed as is the case with the use of a DOM. The advantage of using the YOM over the DOM is that it gives access to a much broader range of content, including the World Wide Web, databases, data stores, a client's computer or other sources of content, according to an example of the present invention. For a DOM to provide this access, it would need to first load the entirety of the content that exists within these sources which is performance prohibitive.
In accordance with an exemplary embodiment of the present invention, the combination of the YLML, the YOM and the layer system makes it possible to provide users with the ability to add content from many different sources to the virtual layer. It will also enable users to use specific functionalities of web pages, applications and services without having to load the entirety of these web pages, applications, services and the like, according to an example of the present invention. In accordance with an exemplary embodiment of the present invention, the users create new web sites with YLML and YOM structure as used in the layer system.
With reference now to
According to an exemplary embodiment of the present invention, if authentication is required to display the content listed in the Layer Definition Server 106 then the Layer Definition Server 106 will send an authentication request back to the Client Software 112. The user will type credentials into a message box in the Client Software 112 and the login information will be sent to the Authentication Server 108 for verification. If the credentials are correct, the Authentication Server 108 sends the authentication back to the Client Software 112 which then sends it back to the Layer Definition Server 106, according to an exemplary embodiment of the present invention. Once the Layer Definition Server 106 receives the authentication, it will send a file containing the data needed to display or load the content for the Client Software 112, according to an exemplary embodiment of the present invention.
In accordance with an exemplary embodiment of the present invention, many different tools and functionalities that work through the technology of the present invention are provided. These different tools will be extensions (Layer Apps) that users can choose to avail themselves the desired functionality. A menu for the separate layer apps as well as other functionalities available for each website will be accessible through a clickable icon in the bottom corner of the browser, according to an example of the present invention. When the icon is clicked, it will bring up the menu for the user to choose the desired tool or functionality. This Menu User Interface (UI) resembles existing menus such as the Start Menu for the Microsoft Windows OS, according to an example of the present invention.
According to an exemplary embodiment of the present invention, the users are enabled to place images, text, widgets, applications and like content onto the virtual layer such that they will appear to be within the web page itself. The content that has been placed on the virtual layer can be viewed by anyone running the software needed to display the virtual layer and its content. This will be possible when the web page that is being overlaid, with additional content from the user, is one that the user has the right and permission to edit, for instance, on a user's personalized social network page, personal home page, personal blog page and the like according to an example of the present invention. Information about the edits placed on the virtual layer are preferably stored on servers that will interact with client computers. When users running the software needed to view the virtual layer's content browse to a web page that has content placed on a designated virtual layer, the software will receive information from the servers where the edits or augmentations are stored and display the edits or augmentations that have been made to that specific web page. According to an example of the present invention, every user running the client software can access the content within the virtual layer simultaneously while viewing a given designated web page.
In accordance with an exemplary embodiment of the present invention, the system may provide restricted access to the content placed on the virtual layer. In this regard, the content placed on to the virtual layer may be viewed only by a predefined user who has placed the content on the virtual layer. This would enable the user to put widgets, applications, text, pictures and the like onto the virtual layer for their own personal use without allowing access to other parties. In this way, the virtual layer could be personalized for each user that might be on the same web site at the same time running the software. An example of this would be a user adding a stock ticker widget to the virtual layer superimposed over The Washington Post homepage on their computer. The stock ticker widget would appear only on the virtual layer of the specific user that placed the content on the virtual layer.
According to an exemplary embodiment of the present invention, users can place the content onto the virtual layer of every web site they view. This would provide the users with the ability to place content on the virtual layer that does not change as they navigate from one web site to another. In accordance with an example of the present invention, users can place a stock ticker widget onto the virtual layer of a web site and the stock ticker widget remains on the virtual layer as the user browses from one web site to another. Further, this functionality would have no effect or impact on any users running the software on any other computer.
Referring now to
Referring to
Referring to
Referring to
Referring now to
Referring now to
According to an exemplary embodiment of the present invention, the users are provided with the ability to add content to a virtual layer having restricted access. In accordance with an exemplary embodiment of the present invention, one way that permission may be granted is the establishment of a relationship between the poster of the content and the viewer of the content within a proprietary social graph. Another way that permission can be granted may be through the establishment of a relationship between the poster of the content and the viewer of the content within a social graph outside the system of the invention, but the system outside of the invention has access to the system of the present invention. An example of this would be two people that have a connection through the social graph of an existing social network site or an email address contacts list. Preferably, this relationship would not be established by default or simply by the existence of a connection within a social graph but would need to be opted into by both the content poster and the content viewer.
In accordance with an exemplary embodiment of the present invention, another way that permission could be granted would be through the use of a shared key or password technique. In this situation, a poster could add or change content within the virtual layer over a web site and then create a shared key or password that would enable any viewer running the software to view content on the virtual layer.
According to an exemplary embodiment of the present invention, another way that permission can be granted is through the establishment of a relationship between the poster of the content and the viewer of the content by embedding the permission needed to view the poster's content into a hyperlink. These hyperlinks could be placed in an email, instant message, onto a web site that the poster has the ability and permission to edit or anywhere else that a hyperlink can be placed.
In accordance with an exemplary embodiment of the present invention, the users may be provided with an ability to save shared keys or passwords that provide access to content on the virtual layer within the system. This technique would prevent the need for a viewer to type in the shared key or password each time they view a page. An example of this would be a viewer being able to see daily updated comments or editorials on the virtual layers over web pages without having to remember and re-enter the shared key or password every day.
According to an exemplary embodiment of the present invention, users may set a password or a shared key to expire between one and thirty days. The user could renew the password or shared key for an additional one to thirty days, for example, at any point before it has expired. The user can renew the password or shared key as many times as desired, in accordance with an exemplary embodiment of the present invention.
According to an exemplary embodiment of the present invention, the users may create a social graph within the system that can be used to tie users together or connect users in different ways. One example of this would be a friends list that existed within the invention's software system. This will allow users to have pre-set lists where the content placed on the virtual layer by specific people can be viewed simply by the association between the poster and the viewer on the social graph.
Referring now to
In accordance with an exemplary embodiment of the present invention, the users can collect desired content from one web page and put it onto the virtual layer over another web page. This would enable the users with an ability to create “MashUps”. The ability to use content from other web pages will provide users with many more customization choices.
Further in accordance with an exemplary embodiment of the present invention, the system and the method may allow users to drag the content present on the virtual layer onto the desktop of the client computing system. This would involve a “tear off” function that will place the content being removed from the virtual layer onto a separate application window.
According to an exemplary embodiment of the present invention, the system and the method may enable users to conglomerate the content onto the invention's servers, create and use new applications that pull content from multiple web sites and compile the multi-source data into one application. In this way, users could use a single application to view email and receive instant messages from multiple sources. Further, users could simultaneously be able to view and interact with multiple social network web sites and the like.
In accordance with an exemplary embodiment of the present invention, the users can post the content that is tied to a specific object on the underlying web page on the virtual layer. The content posted onto the virtual layer may appear as though it is actually attached to the underlying web page i.e. when the user scrolls down on the web page, the content on the virtual layer will scroll as well. This placement method will involve “Pegs” that show the location of where different objects within the underlying web page are placed and attaching the content on the virtual layer to the same “pegged” location. Because the “Pegs” will be attached to existing objects within a web page, if a user has placed content on the virtual layer that is associated with an underlying object that can be moved within the web site itself, as in some personal home pages where the placement of objects can be changed by the user, the content on the virtual layer will move with it. Users will also be able to place content on the virtual layer that is placed in relation to the browser window so that it does not scroll when the users scrolls up or down on the underlying web page, in accordance with an exemplary embodiment of the present invention.
Referring now to
Referring now to
According to an exemplary embodiment of the present invention, the system and the methods described above may enable users to log into their account from any computer so that the modifications they have made to the virtual layer over web sites and the tools that they have added to their accounts for use are available from any computer.
In accordance with an exemplary embodiment of the present invention, additional tools and functionalities may be added. The additional tools or functionalities may include, but are not limited to, the following: a switch that can enable users to appear to turn off edits that have been made to MySpace.com pages and the like; tools to quickly and easily add images, widgets, and links to a social networking page and the like; tools for bloggers or editorialists that would enable them to post comments or editorials directly onto a web page, such as an article from another publication that they were discussing, these tools could also be used by teachers or professors that could have students view articles with teacher's notes or highlights added.
According to an exemplary embodiment of the present invention, additional tools may also include a “sniper” tool that places a last second bid on an online auction site that would actually be integrated into the auction site; a video grabber tool that will download and save streaming video from web sites such as YouTube.com; and a hyperlink integrator that would overlay existing text with text that was hyperlinked and tied to a different web site. An example of this tool would be overlaying the title of a book within an article with hyperlinked text that when clicked on would take the user to an online merchant where the book could be purchased. This may involve a search aggregator tool that would be integrated with existing search engines, but will augment the return results by adding the return results of other search engines or queries. An example of this would be a tool that was integrated with Google such that when a search was done, the content returned would be not only the Google search results, but also any information on the terms searched from Wikipedia.org, Dictionary.com and the like.
In accordance with an exemplary embodiment of the present invention, the additional tools and functionalities further may include a communication aggregation tool that will allow users to communicate through whatever means they choose from one application. This application will enable users to use different instant message accounts, different email accounts, different social network accounts, text messaging to telephones and the like. The additional tools may further include a virtual pet that can roam around on the browser window is also provided. The virtual pet will create the appearance of depth on the browser window by its z-order changing so that it walks around in front of some images, objects and text while walking behind others, according to an example of the present invention. The tools may further include:
-
- a tool that would keep track of a user's credentials and hook into the API of sites so that the user is automatically logged into sites they visit without having to log in manually each time they visit;
- a virtual gift tool that will enable users to send content such as images or applications to other users;
- an alert tool that will alert a user when an update of a web site has been made or when a new article on a specific topic has been found based on specific terms or key words that the user has saved into the tool;
- a tool that will be integrated into existing web sites that will enable businesses such as restaurants to have real time updates of waiting times for tables, or movie theaters to show real time information about how many seats are currently available for a specific movie showing;
- a scheduling tool that a company can have integrated into their web site that employees can log into to see when they are scheduled to work;
- a tool that will show “pop-ups” letting the user know when a new email has come into an online mail account, this tool will work like the new mail pop-ups currently work for Microsoft Outlook, but for online email accounts such as G-Mail, Yahoo Mail, Hotmail and the like;
- a tool that will search the contents of a user's computer and use algorithms to detect what information the user is interested in and alert the user when there is new information or content on the World Wide Web that matches topics, people or key words that the algorithm has deemed important to the user;
- a tool that integrates web sites such as travel sites with sites such as Craigslist.org or Yelp.com and the like to give travelers more information about the area they will be traveling to;
- a tool that will enable users to highlight text on a web page and then click on integrated buttons to bring up search results from different sites such as Dictionary.com, Wikipedia.org, Google.com and the like.
In accordance with an exemplary embodiment of the present invention, the additional tools may further includes a tool that will enable users to search for specific words or text within a web page, a tool that will enable users to do “smart searches” where the user could search for quotes from specific people in an article and the like, a tool that will enable users a kind of picture in picture functionality where they can leave one window or application “on top” while they click on or interact with a window or application that is actually behind the top one and a tool that will take an existing web page and put a copy of it onto the virtual layer so that the components of the site can be rearranged and organized the way that the user wants them.
While the present invention has been described in conjunction with preferred embodiments thereof, many modifications and variations will be apparent to those of ordinary skill in the art. While the present invention has been described in particular embodiments, it should be appreciated that the present invention should not be construed as limited by such embodiments, but rather construed according to the following claims.
Claims
1. A method for configuring an editable virtual layer in an internet browsing environment, the method comprising:
- transferring URL information to a server unit configured to store a plurality of layer extensions;
- selecting a layer extension based on the transferred URL information; and
- providing display data to arrange the display of the selected layer extension on a virtual layer superimposed over a selected web-page.
2. The method of claim 1, wherein the method further comprises: aggregating objects corresponding to the selected layer extension and the URL information using a layer markup language; wherein, the aggregation is executed through a layer definition server unit adaptable to the layer markup language including a plurality of built-in logical nodes.
3. The method of claim 1, wherein the method further comprises: aggregating objects corresponding to the selected layer extension and URL information using a layer markup language; wherein the layer markup language contains native executable logic tags.
4. The method of claim 1, wherein the display data includes Peg mapping data.
5. A system for configuring a user-editable layer for display, the system comprising:
- a content server comprising an application object model to collect objects from a client computing system and a universal network server;
- a processing element for comparing objects of the application object model and a web address;
- a data element for providing display data for a user-editable layer responsive to the comparison of the processing element, wherein the display data may be used to create a superimposed image to be displayed over a selected web page.
6. The system of claim 5, wherein the user-editable layer is generated using a layer markup language included in a layer definition server.
7. The system of claim 6 wherein the system further includes:
- a plug-in unit coupled to the layer definition server and an authentication server, wherein the system is configured to: authenticate user credential information; transfer web content pertaining to the user-editable layer to the plug-in unit responsive to the authentication; and render the transferred web content on the client computing system.
8. The system of claim 7, wherein the authentication server is coupled to the layer definition, and wherein the system is further configured to: verify a need for authenticating a user; transfer web content pertaining to at least one user-editable layer to the plug-in unit from the layer definition server; and render the transferred web content.
9. The system of claim 8, wherein authentication is granted based on the establishment of a relationship between the poster of the content and the viewer of the content within a proprietary social graph.
10. The system of claim 6, wherein the layer markup language comprises built-in logical nodes.
11. A method for configuring an editable virtual layer in an internet browsing environment having at least one client computer, the method comprising:
- storing virtual layer data paired with URL information;
- selecting virtual layer data for display based on selected URL information; and
- aggregating objects corresponding to the virtual layer data and corresponding to the selected URL information.
12. The method of claim 11, wherein the step of aggregating objects is executed through a layer definition server unit adaptable to a layer markup language including a plurality of built-in logical nodes.
13. The method of claim 12, wherein the step of aggregating objects comprises:
- rendering a menu user interface at a predetermined location relative to a displayed web-page;
- executing an event in the layer markup language following a user triggered signal through a client computing system.
14. One or more computer-readable storage media having computer-executable instructions for performing a method, wherein the method comprises
- configuring a content server comprising an application object model for collecting objects from a client computing system;
- enabling a comparison between objects of the application object model and a web address; and
- displaying web content on the user-editable layer responsive to a match generated following the comparison, wherein the display is comprised of a superimposed form of the web content on the user-editable layer adaptable to visual environment of the loaded web page, the user-editable layer generated using a layer markup language included in a layer definition server;
- authenticating user credential information;
- transferring the web content pertaining to the user-editable layer to the plug-in unit responsive to the authentication;
- and rendering the transferred web content on the client computing system.
Type: Application
Filed: Jun 8, 2009
Publication Date: Dec 9, 2010
Inventor: Erie Trouw (Fallbrook, CA)
Application Number: 12/455,797
International Classification: H04L 9/32 (20060101); G06F 3/00 (20060101);