Chapter 9
Case Study: Creating a Customizable Browser Portal
"The web of today, the
vast unstructured mass of information, may in the future be transformed into
something more manageable - and thus something far more useful." - Ora
Lassila, "Introduction to RDF Metadata", W3C Note 1997-11-13.
Many Web sites allow members to customize their pages. Through a Web interface, users can add their favorite stock quotes and program "intelligent agents" to look for the news items of their interest. Such a web site is sometimes called an information portal, and the customization logic resides on the server. There are many examples of these portals today - "My Yahoo!" and "My Netscape" are two examples. Usually, the server recognizes the user with a "cookie", and the web site displays the user's information when the web page is visited. Users with multiple accounts need to visit one web site at a time to see their customized information.
By using a technology like XUL, information from web portals could be embedded in the application of the browser itself. We could certainly use XUL to create a facility for fast access to multiple information portals. In Chapter 6, we showed that XUL content could automatically be generated from RDF datasources. We also showed throughout this book that the architecture of the Netscape browser is flexible enough to accommodate maximum customizability. The case study in this chapter will present one example of inserting an information portal in an application, using the facilities that already exist in the Netscape 6 browser. Throughout our example, we will apply the concepts presented throughout this book, we will present an in-depth look at the browser components we are customizing, and we will present a step-by-step tutorial on creating a solution.
In this case study, we will define the problem that we will address, and we will discuss our approach to the solution. This case study will focus on existing XUL code in the web browser, and we will focus on how that code will address the solution to our problem. The case study in this chapter highlights virtually every XUL-related technology that we have discussed in this book - CSS, JavaScript, RDF, XUL Templates, XUL Overlays, and XBL. This chapter will show you how all of these technologies work together to present a real-world solution.